Thunder Force IV


 * note: ROM addresses, data, and patch codes apply to the Japanese ROM

Hidden, possibly dummy, options
If word $FF8CA4 is nonzero, two new options are shown on the option screen: STAGE (0:NORMAL GAME)		00 MUTEKIHA NAIYO!

There does not immediately appear to be a cheat to enable this. The first option replaces the play voice sample option.

The first option can be selected normally by scrolling to it; the code for the first option (shared with the play voice sample option) at $10184. The range of values for this option goes from 00 to 10; the code sets the word at $FF8C9E to the BCD value shown.

The second option cannot be selected normally (code at $FB38 skips it and goes to EXIT); you must force it selected by setting word $FF8C8E to $0007, then removing the code once it is selected. There is code for this option, at $1021A. Hitting left/right will show OFF and ON! options.

The first option does not appear to do anything; the second option's text translates to "there is no invincibility" and thus does nothing.

Demo recording?
5B88:4E71 skips over a jump that changes the text PRESS START in the demo gameplay to JOY REC. The jump takes effect if word $FFF2FE <= 0; there is code to clear and a lot of other tests of that value...

Debug printing?
The code at $3D56 checks word $FFF066; if it's nonzero, it prints some strings TEKI: MAP: SAX: SAY: EASY NORM HARD MANI.

Miscellanea

 * On boot, if the word at $420 is nonzero, a different sound driver is loaded; this sound driver starts at $17940. This sound driver does nothing: it sets up the environment as the regular one would but does not make any writes to the sound chips, and then just sits eating up anything fed to it (by overwriting the processing command byte with zero). Its interrupt mode 1 vector (38h) executes di/nop/ei/ret. After that is the three ASCII bytes making up 'Z80', which is immediately followed by (at $17A00) data used by another part of the game.