Sonic and Sega Retro Message Board: Natsumi - Viewing Profile - Sonic and Sega Retro Message Board

Jump to content

Hey there, Guest!  (Log In · Register) Help

Tech Member: Tech Members
Active Posts:
174 (0.1 per day)
Most Active In:
Engineering & Reverse Engineering (106 posts)
08-February 12
Profile Views:
Last Active:
User is offline 43 minutes ago

My Information

Member Title:
Don't look! Its the Sonic community!
19 years old
October 14, 1997
Female Female
Broomrape Lane

Contact Information

Skype  thegreensnakey

Previous Fields

Other Contact Info:
IRC; Natsumi/Notsumi
hax0r pr0j3kt
National Flag:
SA2 Emblems:

Latest Visitors

Posts I've Made

  1. In Topic: MegaCD development kit video on Computerphile

    19 January 2017 - 01:33 PM

    I am curious about how is developing games in inferior PC hardware compared to nowadays specs, how long does assembly take, and how much tool automation you can afford to do without making the assembly process way too slow?
  2. In Topic: MD Music Player

    31 December 2016 - 10:18 PM

    Long time no see, but I am here to release yet another version! This time, I did a few major changes, which hopefully you can see as improvements;


    + Revised the SMPS2ASM format and definitions (to be more accurate and simpler)
    + Added an external tool to assemble all music data.
    + Because of MusicTool, we have also now ditched the s2e_[driver]_ suffix from macro names!
    + Now channels show the tempo in addition to other fields
    * smps2asm.txt and mdmusicplayer.txt updated to have actually up-to-date information
    * Sound drivers are defined in separate file now, to allow MusicTool to work
    * Fixed Sonic 1 volume envelopes; VolEnv_00 is hardcoded!
    * Reconverted all files to match the new format
    * Updated all smps2asm scripts and definition files to match the new format
    * Filenames can now have spaces and other special symbols that was not possible earlier
    s+ Wrote a completely new UI for defining conversion parameters
    s+ You can decide if the program pauses or produces debug output from the UI
    s+ Replaced =comment with the builtin comment feature for macros
    s+ Added subscript importing
    s* Argument equates are now parsed to exist like normal Equates, and can be referenced later in the program
    s* Program warns if required subscripts are found, rather than just crashing
    s* Improved error reporting for Dictionary invocation
    s- Removed smpsHeaderStartSong hack, now each script can define it by themselves!

    The link in the original post has been updated. There may still be some odd bugs introduced by the changes. If you do find any, please report them!
    Download earlier versions: 0.0 - 0.1
  3. In Topic: General Project Screenshot/Video Thread

    20 December 2016 - 08:10 AM

    Hah! This is hilarious. Indeed, the spring code, for whatever reason, tries to keep the value in d0, in this case the subtype, to a reasonable range. However, this code not only allows for odd numbers, but numbers way beyond the spring power list. A lot of Sonic Team's code is actually like this. Just half-assed together. Never assume the code is safe to use, EVER. It's not, you have to be delicate with it.
  4. In Topic: FW-KENSC Windows Shell Extension

    09 December 2016 - 02:57 AM

    This is great that this is finally released; Too often I'd have to recompress one or few files to another format or uncompress, edit, and recompress. So much time wasted with crappy quick batch scripts and finding the file paths, etc.. Finally I can be actually efficient about this!
  5. In Topic: Basic Questions & Answers thread

    01 November 2016 - 12:56 AM

    The difference mostly between address registers and data registers, is that data registers allows for way more different instructions, whilst data registers allow for less, but they have the advantage of being able to read from arbitrary location inside the address space. Say, you have an art file at location 0x8AA00. You can stash that number inside an address register, then use (aN) to read from there. Until later models of the CPU, you could not do this at all with data registers. The another difference of address register is, that you can NOT do byte manipulation in them, and any word operations to it will be automatically sign-extended. So something like 0xFF00 (which is actually also -0x100) becomes 0xFFFFFF00. However many times, you can actually use address registers to sort of manipulate just any values like data registers, if you keep these limitations and quirks in mind. Data registers are designed to hold sort of quick variables, like local variables in high level languages. Data registers are more designed to hold pointers. Now we could go into some really technical stuff, but I am sure you will get some idea of how this works based on that, and can experiment yourself based on this.