[Download Here!][1]
About 7 years a go, drx released a few prototypes for Panzer Dragoon Saga. The earliest one (9/16/97) is the most interesting of the bunch. While it does have a debugger activated by default on the second controller while in game, the prototype only has that much enabled which left a lot of the game unexplored. It was reported that the game had a sound test but as far as I know no one has figured out how to access it until now. It turns out that the game has two sets of title screen selections, one for retail release and one for development (the former is activated by default in this prototype). The two arrays contain the string for the entry on the title screen, some padding data (although it might be data relating to where it’s printed on the screen?), and a loading subroutine for that option. See the code below:
ROM:0603E4D0 title_select_list:.data.l h’1FFFB ; DATA XREF: ROM:loc_6023174o
ROM:0603E4D0 ; ROM:off_60231E0o
ROM:0603E4D4 .data.l aNewGame ; “NEW GAME”
ROM:0603E4D8 .data.l loc_60235D6
ROM:0603E4DC .data.l h’1FFFC
ROM:0603E4E0 .data.l aContinue ; “CONTINUE”
ROM:0603E4E4 .data.l loc_60235E0
ROM:0603E4E8 title_select_list_debug:.data.l h’1FFF8 ; DATA XREF: ROM:0602316Co
ROM:0603E4E8 ; ROM:off_60231DCo
ROM:0603E4EC .data.l aNewGame ; “NEW GAME”
ROM:0603E4F0 .data.l loc_60235D6
ROM:0603E4F4 .data.l h’1FFF9
ROM:0603E4F8 .data.l aContinue ; “CONTINUE”
ROM:0603E4FC .data.l loc_60235E0
ROM:0603E500 .data.l h’1FFFA
ROM:0603E504 .data.l aTown ; “TOWN”
ROM:0603E508 .data.l loc_60235EA
ROM:0603E50C .data.l h’1FFFB
ROM:0603E510 .data.l aField ; “FIELD”
ROM:0603E514 .data.l loc_60235F2
ROM:0603E518 .data.l h’1FFFC
ROM:0603E51C .data.l aBattle ; “BATTLE”
ROM:0603E520 .data.l loc_60235FA
ROM:0603E524 .data.l h’1FFFD
ROM:0603E528 .data.l aSound ; “SOUND”
ROM:0603E52C .data.l loc_6023602
ROM:0603E530 .data.l h’1FFFE
ROM:0603E534 .data.l aMovie ; “MOVIE”
ROM:0603E538 .data.l loc_602361C
In 1ST_READ.PRG, the game will do the following to determine which list to load:
ROM:06023160 loc_6023160: ; CODE XREF: ROM:06023154j
ROM:06023160 mov.w #h’F6, r4 ; Move Immediate Word Data
ROM:06023162 mov.l #sub_601DC88, r3 ; Move Immediate Long Data
ROM:06023164 jsr @r3 ; sub_601DC88 ; Jump to Subroutine
ROM:06023166 nop ; No Operation
ROM:06023168 tst r0, r0 ; Test Logical
ROM:0602316A bt loc_6023174 ; Branch if True
ROM:0602316C mov.l #title_select_list_debug, r3 ; Move Immediate Long Data
ROM:0602316E mov.l r3, @(8,r14) ; Move Structure Long Data
ROM:06023170 bra loc_602317A ; Branch
ROM:06023172 mov #7, r0 ; Move Immediate Byte Data
ROM:06023174 ; ---------------------------------------------------------------------------
ROM:06023174
ROM:06023174 loc_6023174: ; CODE XREF: ROM:0602316Aj
ROM:06023174 mov.l #title_select_list, r2 ; Move Immediate Long Data
ROM:06023176 mov #2, r0 ; Move Immediate Byte Data
ROM:06023178 mov.l r2, @(8,r14) ; Move Structure Long Data
To fix this issue, I simply changed the branch if true to a branch if false and it worked just fine. I know I could’ve released a patch/code for this instead of just uploading the game again, but I wasn’t sure if the release was still floating around or not so I figured I should put it up again just in case. I’m sure that this still exists in all release of Saga, so I could potentially come up with a patch/code for all the other releases as well.
Enjoy!
PS: Select Town -> EVENT059 and watch the cutscene. All the voices are using the motion capture actor scratch voices. Pretty neat.
EDIT: I noticed SSF doesn’t want to load the ISO for me. Here’s a savestate instead (tested with the latest test version).
mediafire.com/download/rka9urku1gw9js6/Panzer_Dragoon_Saga_9-17-1997_Title_Test_Menus.7z
[1]: https://mega.co.nz/#!RZAVzYBA!OT1eq91dNhWTLo-gopVNXZD7KYVyZJZsUUEsrVCwYHw “Download Here!”