StarTropics: StarTropics (Music Fix) Nintendo Entertainment System

  • ~
  • Share
Two of the music tracks in StarTropics are slightly broken, the island map music, and one of the ending tunes. This patch fixes them both.

I've also created a fully labelled disassembly, and complete description of the StarTropics music format. For anyone looking to hack new music into StarTropics, this will be a good guide.


  • http://rainwarrior.ca/projects/nes/startropics_music_fix.ips" target="_blank" rel="nofollow">
    http://rainwarrior.ca/projects/nes/startropics_music_fix.nsf" target="_blank" rel="nofollow">
    http://rainwarrior.ca/projects/nes/startropics_music_fix.zip" target="_blank" rel="nofollow">


  • Some emulators, notably Nestopia, do not support modifications to the StarTropics ROM due to a conflation of the MMC3 and MMC6 mappers as iNES mapper 4. If the emulator has to use a CRC check to select MMC6, it may have problems running the patched ROM (e.g. audio will be silent, and name registration will fail). Newer emulators may instead support or require updated ROM headers for Startropics. To fix this, you can try one of these two patches (but not both):

  • https://www.romhacking.net/hacks/4871/ - iNES 2 header for newer emulators." target="_blank" rel="nofollow">
    https://www.romhacking.net/hacks/5187/ - Converts MMC6 to MMC3, for older emulators." target="_blank" rel="nofollow">


  • StarTropics music disassembly and bugfix.
    Brad Smith
    11/19/2014
    http://rainwarrior.ca


    This is a complete annotated disassembly of the music engine and data from StarTropics,
    originally released by Nintendo in 1990.

    I started this project because I noticed the broken accomaniment pattern in the
    island map music (track 1), and I wanted to find out what went wrong with it. In the
    process I discovered and fixed a broken bassline in another tune (track 30).


    If you are interested in the music data format, or the music engine source code,
    you will find the details in: st_music.s

    If you would like to see how the track was fixed, and for an annotated example of how to
    understand and insert music data into StarTropics, see: stf_music.s


    If you have questions or comments, you may contact me at: brad@rainwarrior.ca




    Steps to create the disassembly from scratch:

    1. Install python 3 if you do not have it. https://www.python.org/

    2. Place a copy of cc65 in a folder in this directory called "cc65". http://cc65.github.io/cc65/

    3. Place a ROM called "startropics.nes" in this directory,

    4. Create a folder called "temp" in this directory.

    5. Run "split.py" to create "temp/combo.bin" from the ROM.

    6. Run "disassemble.bat" to create the raw disassembly: "st_music_raw2.s"

    7. Clean up "st_music_raw2.s" by hand and save as "st_music.s"

    8. Run "compile_st_nsf.bat" to create "temp/st_nsf.nsf"



    Other files:

    startropics_music_fix.ips
    - IPS patch to fix the music in the NES ROM

    stf_nsf.s
    stf_music.s
    compile_stf_nsf.bat
    - creates NSF with "fixed" tracks 1 and 30

    analyze_cdl.py
    - displays information from a FCEUX code data log run on the NSF

    st_nsf.cfg
    - linker configuration file used by ld65 when building st_nsf.nsf

    disassemble.py
    - script for disassembly

    fceux_symbols.py
    - creates FCEUX debugging symbols when building st_nsf.nsf

    orders.py
    - creates a table of orders for use in disasm_info.txt

    st_disasm_info.txt
    - disassembly annotation file used for automated labelling during disassembly

    apply_patch.py
    - copies the patched NSF into the NES ROM



    Brad Smith
    11/19/2014
    http://rainwarrior.ca


    Startropics (U).nes
    CRC32 a02323b3
    MD5 f7033465443b9c21cdc128d281b14af5
    SHA-1 ce4daff535a847e5b47aff49381f3b0e76eb3295
    SHA-256 dbdde8f9c73188fadaf6482111b085cfc91aa22f61a71e844fbf1fc99466a11a
    -
    Startropics (Europe).nes
    CRC32 3fc29044
    MD5 fcd4c76357c780a01093a9e199d94089
    SHA-1 7f78375d7ecf05e9c177b33e36e34addd3daed44
    SHA-256 3a48ffe57f8a7501a8f4cd4efdb8070c8cec39d91dfaa9c468d7c2b9f0e1ebc9
    Release Date
    Nov 19, 2014
    9 years ago
    Similar Games
    Popular Nintendo Entertainment System Games

    Play StarTropics: StarTropics (Music Fix) Game

    Experience StarTropics: StarTropics (Music Fix) Game (USA) online exclusivly at PastGames.net. Get StarTropics: StarTropics (Music Fix) ROM and use it with an emulator of your choice. StarTropics: StarTropics (Music Fix) can be played on PC, Mac, iOS and Android using our high quality downloads. PastGames is Americas #1 choice for Retro Games like StarTropics: StarTropics (Music Fix).