I want to make this a big post, but there really isn't much to say. It might not be news to some, but Sega (of Japan?) seems to actually patch their games before they release them - either by disassembly or with the source code right next to them. The Genesis/Megadrive roms are also in their proprietary format - SGD (trivia: some of the games in drx's big proto release last year were in .SGD format). But that isn't really interesting, what is interesting is that Sega does try to patch some things in their games before releasing them on the Virtual Console. One of these games that are heavily patched is Phantasy Star IV. All the comments in this patch file are in Japanese with no clear distinction as to who might've done it. The patches seem to fix some color, but most importantly, the imfamous lvl99 bug in the game. Check it out (this was taken from the EU release of the game/wad, but the patch seems to be universal): Code (Text): >0x120 string "PHANTASY STAR The end of the millennium" # # colorup_r1??????(jue??) # 0x2fff00: beshort 0x7600 # moveq.l #$00,d3 beshort 0x0c78,0x0100,0xec28 # cmpi.w #$0100,$ec28.w beshort 0x6d0e # blt.s 1f beshort 0x0c78,0x0108,0xec28 # cmpi.w #$0108,$ec28.w beshort 0x6e06 # bgt.s 1f beshort 0x4a38,0xee69 # tst.b $ee69.w beshort 0x6624 # bne.s 4f #1: beshort 0x41f8,0xfb02 # lea.l $fb02.w,a0 beshort 0xd0c0 # adda.w d0,a0 beshort 0x7e0c # moveq.l #$0c,d7 #2: beshort 0x3a10 # move.w (a0),d5 beshort 0xe67d # ror.w d3,d5 beshort 0x3405 # move.w d5,d2 beshort 0x5445 # addq.w #2,d5 beshort 0x3205 # move.w d5,d1 beshort 0x0c41,0x000c # cmpi.w #$000c,d1;?????(??$000e) beshort 0x6f04 # ble.s 3f beshort 0x3a3c,0x000c # move.w #$000c,d5;?????(??$000e) #3: beshort 0xe77d # rol.w d3,d5 beshort 0x30c5 # move.w d5,(a0)+ beshort 0x51cf,0xffe6 # dbra.w d7,2b #4: beshort 0x4e75 # rts # # lvl99?????(jue??) # 0x2ffe00: beshort 0x3028,0x0008 # move.w $0008(a0),d0 beshort 0x0c40,0x0063 # cmpi.w #$0063,d0;lvl99? beshort 0x6608 # bne 1f beshort 0x323c,0x0000 # move.w #$0000,d1;not99 = false beshort 0x5c8b # addq.l #$06,a3;??????99????lvupdata?????(a3)????? beshort 0x4e75 # rts #1: beshort 0x323c,0xffff # move.w #$ffff,d1;not99 = true beshort 0x4e75 # rts # # jp # >0x180 string "GM G-5524 -00" # ????? 0x035ca2: beshort 0x0888 # player critical hit flash color(??0x0eee) 0x0359da: beshort 0x0888 # boss damage flash color(??0x0eee) 0x03fdd6: beshort 0x0eec # destruction cyan color(??0x0ec6) 0x02dfa4: beshort 0x000f # last boss megido ??????????(0x0008/(n+1)) 0x02dfb0: beshort 0x0002 # last boss megido ??????????(?4?) 0x02e0e1: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02e101: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02dba4: beshort 0x002f,0xff00 # jsr colorup_r1????????? 0x02dc36: beshort 0x000c # last boss dead action ????????????? # ??????? 0x071700: beshort 0x0061 # ??0x0060(??????)????????? # lvl99???? 0x003e66: beshort 0x4eb9,0x002f,0xfe00 # jsr 0x2ffe00;lvl99????lvupdata?????(a3)???????????? beshort 0x4a41 # tst.w d1;check not99 #### ??????????????? ###0x002f34: ### beshort 0x223c,0x0020,0x0000 # move.l #$00200000,d1 # # us # >0x180 string "GM MK-1307 -00" # ????? 0x00c06c: beshort 0x117c,0x0004 # move.b btdmg_tim+1(a4),colch_tim(a0) -> move.b #$0004,colch_tim(a0);????????????????????????? 0x035cb8: beshort 0x0888 # player critical hit flash color(??0x0eee) 0x0359f0: beshort 0x0666 # boss damage flash color(??0x0eee) 0x03fdec: beshort 0x0eee # destruction cyan color(??0x0ec6) 0x02dfb2: beshort 0x000f # last boss megido ??????????(0x0008/(n+1)) 0x02dfbe: beshort 0x0002 # last boss megido ??????????(?4?) 0x02e0ef: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02e10f: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02dbaa: beshort 0x002f,0xff00 # jsr colorup_r1????????? 0x02dc3c: beshort 0x000c # last boss dead action ????????????? # lvl99???? 0x003f4c: beshort 0x4eb9,0x002f,0xfe00 # jsr 0x2ffe00;lvl99????lvupdata?????(a3)???????????? beshort 0x4a41 # tst.w d1;check not99 # # eu # >0x180 string "GM MK -1307 " # ????? 0x00c074: beshort 0x117c,0x0004 # move.b btdmg_tim+1(a4),colch_tim(a0) -> move.b #$0004,colch_tim(a0);????????????????????????? 0x035cc0: beshort 0x0888 # player critical hit flash color(??0x0eee) 0x0359f8: beshort 0x0666 # boss damage flash color(??0x0eee) 0x03fdf4: beshort 0x0eee # destruction cyan color(??0x0ec6) 0x02dfba: beshort 0x000f # last boss megido ??????????(0x0008/(n+1)) 0x02dfc6: beshort 0x0002 # last boss megido ??????????(?4?) 0x02e0f7: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02e117: byte 0x01 # last boss megido ???????n+1(?3+1?) 0x02dbb2: beshort 0x002f,0xff00 # jsr colorup_r1????????? 0x02dc44: beshort 0x000c # last boss dead action ????????????? # lvl99???? 0x003f54: beshort 0x4eb9,0x002f,0xfe00 # jsr 0x2ffe00;lvl99????lvupdata?????(a3)???????????? beshort 0x4a41 # tst.w d1;check not99 There are some other games that have these patch files. If I find a WAD of an interesting game, I'd be happy to look for some patch notes (some master system games have some). I can already say that none of the Sonic games that I know of have any. But I'm very interested in the recently released "Japan-Only" stuff - most notably Pulseman. Hope this topic was interesting. Ninja Edit: I have some patch notes from Phantasy Star II. As some of you know, Yuji Naka programmed that game. And it's been reported recently that he does assist in patching the old games he's worked on. Anyone interested?
Wasn't there a few minor bug fixes applied to the Sonic 2 Master System game? I think it was to do with the camera.
Yep, but I'm not sure if it had to do with the camera: Code (Text): >0x7ff0 string "TMR SEGA" # # 7-3??????????????????????????? ?????????? #?????????????????????????? # ??????????????????????????? ?????? # rev. A(MPR-15159A) >>0x7ffc belong 0x15900140 0x07af31: byte 0x10 # ??0x3e 0x07af3e: byte 0x0e # ??0x00 # normal(MPR-15159) >>0x7ffc belong 0x15900040 0x07afb1: byte 0x10 # ??0x3e 0x07afbe: byte 0x0e # ??0x00 Also I got my hands on Pulseman, no patch file there - but it's using some sort of new emulator w/ sound driver and all. You can download it here. Phantasy Star III also has some patches too: <div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'># jp >0x180 string "GM 5503-00 " >>0x1f0 string "J" 0x0002b8: beshort 0x6050 # bra.s 0x00030a 0x00867a: beshort 0x8554 # ??????????????????????????? ?????? # VDP #5 register (SPR AT) $a000 -> $a800? # us >0x180 string "GM 1303-01 " >>0x1f0 string "UE" 0x0002b8: beshort 0x604a # bra.s 0x000304 0x0256b6: # ???CG????????? beshort 0x05e0 # ?????? beshort 0x0004 # ??????cgexp -> cgnormal? belong 0x0007f000 # ???CG??????????????? # (??cgexp????0xa47b8) 0x07f000: byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x44,0x66,0x44,0x44,0x44,0x65,0x44,0x45,0x44,0x65,0x44,0x55,0x44,0x65,0x45,0x56 byte 0x44,0x65,0x55,0x64,0x44,0x66,0x56,0x44,0x44,0x65,0x64,0x74,0x44,0x65,0x46,0x74 byte 0x66,0x64,0x44,0x44,0x56,0x44,0x44,0x65,0x64,0x44,0x45,0x55,0x44,0x44,0x55,0x55 byte 0x44,0x45,0x55,0x55,0x44,0x55,0x55,0x55,0x45,0x55,0x55,0x55,0x45,0x55,0x55,0x55 byte 0x66,0x66,0x66,0x66,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55 # byte 0x55,0x55,0x55,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x5e,0xe5,0x55,0x55 byte 0x55,0x55,0x55,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x55,0x55 byte 0x66,0x66,0x66,0x66,0x55,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x55,0x55 byte 0x66,0x66,0x66,0x66,0x55,0x55,0x56,0x66,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x55 byte 0x66,0x66,0x66,0x79,0x55,0x56,0x66,0x67,0x55,0x56,0x66,0x67,0x56,0x66,0x66,0x56 byte 0x66,0x66,0x66,0x56,0x66,0x66,0x65,0x66,0x66,0x65,0x55,0x66,0x66,0x66,0x66,0x56 byte 0xa8,0x88,0x88,0x88,0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98,0x79,0x99,0x99,0x98 byte 0x79,0x99,0x99,0x98,0x79,0x99,0x99,0x98,0x79,0x99,0x99,0x98,0x7a,0xaa,0xaa,0xaa byte 0xa8,0x88,0x88,0x88,0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98 byte 0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98,0xaa,0xaa,0xaa,0xaa byte 0x44,0x65,0x44,0x64,0x44,0x65,0x47,0x64,0x44,0x65,0x47,0x64,0x44,0x65,0x47,0x64 byte 0x44,0x65,0x47,0x64,0x44,0x65,0x47,0x64,0x44,0x65,0x47,0x64,0x44,0x65,0x47,0x64 byte 0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x65,0x55,0x55,0x66,0x55 byte 0x55,0x55,0x56,0x55,0x55,0x55,0x65,0x55,0x65,0x56,0x55,0x55,0x66,0x56,0x55,0x55 # byte 0x5e,0xe5,0xee,0x55,0x55,0xee,0xe5,0x55,0x5e,0xee,0x55,0x55,0xee,0x5e,0xe5,0x56 # byte 0x55,0x5e,0x55,0xdd,0x55,0x55,0xdd,0xda,0x5d,0xdd,0xdd,0xf9,0xdd,0xdd,0xfa,0xa9 byte 0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x56 byte 0x55,0x55,0x55,0xdd,0x55,0x55,0xdd,0xda,0x5d,0xdd,0xdd,0xf9,0xdd,0xdd,0xfa,0xa9 byte 0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x66,0x66,0x66,0x6d,0xdd,0xdf,0xdd byte 0xdd,0xdd,0xdd,0xdd,0xf9,0xad,0xdd,0xdd,0x9f,0x9a,0xbd,0xfb,0x99,0xff,0xba,0xaa byte 0x66,0x66,0x66,0x67,0x66,0x66,0x66,0x67,0x66,0x66,0x66,0x67,0xf6,0x66,0x66,0x66 byte 0xdf,0xff,0x66,0x66,0xdd,0xff,0xff,0xff,0xdd,0xdf,0xff,0xff,0xad,0xdd,0xff,0xff byte 0xa8,0x88,0x88,0x88,0xa9,0x99,0x99,0x98,0xa9,0x99,0x99,0x98,0x79,0x99,0x99,0x98 byte 0x79,0x99,0x99,0x98,0x79,0x99,0x99,0x98,0x79,0x99,0x99,0x98,0xff,0xaa,0xaa,0xaa byte 0x44,0x65,0x44,0x45,0x44,0x65,0x44,0x56,0x44,0x65,0x45,0x66,0x44,0x65,0x56,0x64 byte 0x44,0x65,0x66,0x47,0x44,0x65,0x64,0x77,0x44,0x65,0x44,0x77,0x44,0x65,0x44,0x77 byte 0x46,0x55,0x55,0x5d,0x64,0x46,0x55,0x5d,0x44,0x44,0x66,0xdd,0x44,0x44,0x45,0xdd byte 0x67,0x74,0xdd,0xdd,0x67,0x45,0xdd,0xdd,0x64,0x56,0xdd,0xdd,0x45,0x64,0xdd,0xdd byte 0xdf,0xfd,0xfa,0x98,0xdf,0xad,0xfa,0x98,0xdf,0xad,0xfa,0x98,0xdf,0xad,0xff,0x98 byte 0xdf,0xba,0xda,0x98,0xda,0xaa,0xa9,0x98,0xfa,0xb4,0x44,0x98,0xda,0xa4,0x45,0x49 byte 0x8b,0x99,0x44,0x44,0x89,0x94,0x64,0x44,0x89,0x46,0x64,0x54,0x89,0xa5,0x54,0x44 byte 0x89,0x9a,0x56,0x48,0x88,0x99,0x99,0x88,0x88,0x88,0x88,0x89,0x88,0x88,0x88,0x89 byte 0xaa,0xdd,0xff,0xff,0xaa,0xad,0xfa,0xff,0xaa,0xad,0xfa,0xff,0x99,0xad,0xda,0xaf byte 0x99,0x9a,0xfa,0xaf,0x99,0x9a,0xfa,0x9f,0x99,0x9a,0xfa,0x9f,0x99,0x9a,0xf9,0xfd byte 0xff,0x88,0x88,0x88,0xff,0x99,0x99,0x98,0xff,0xf9,0x99,0x98,0xff,0xf9,0x99,0x98 byte 0xff,0xf9,0x99,0x98,0xff,0xf9,0x99,0x98,0xff,0xf9,0x99,0x98,0xff,0xfa,0xaa,0xaa byte 0x44,0x65,0x44,0x74,0x44,0x65,0x44,0x45,0x44,0x65,0x44,0x56,0x44,0x65,0x45,0x64 byte 0x44,0x65,0x56,0x47,0x67,0x65,0x55,0x55,0x66,0x66,0x66,0x66,0x77,0x77,0x77,0x77 byte 0x56,0x44,0xdf,0xdd,0x64,0x74,0xdf,0xfd,0x47,0x74,0xdd,0xff,0x67,0x74,0x4d,0xff byte 0x67,0x74,0x4d,0x44,0x55,0x55,0x5d,0x44,0x66,0x66,0x66,0xd4,0x77,0x77,0x77,0x77 byte 0xd7,0x45,0x44,0x49,0xdd,0xaa,0x54,0x99,0xdd,0xaa,0xa9,0x88,0xff,0xba,0x98,0x88 byte 0xff,0xba,0xa9,0x88,0x4f,0xfb,0xaa,0x99,0x44,0x44,0xba,0xa9,0x77,0x77,0x4b,0xaa byte 0x88,0x88,0x88,0x89,0x98,0x88,0x88,0x88,0x98,0x88,0x88,0x88,0xa8,0x88,0x88,0x88 byte 0xaa,0x88,0x98,0x88,0x99,0x8c,0xe9,0x88,0x99,0xec,0xa8,0x89,0x99,0x9a,0xa8,0x89 byte 0x99,0x9a,0xab,0xdd,0x99,0x9a,0xab,0xdd,0x99,0x9a,0xbb,0xdd,0x99,0x9a,0xbb,0xdd byte 0x99,0xaa,0xbb,0xdd,0x99,0xab,0xaa,0xdd,0x9a,0xba,0xaf,0xdd,0xaa,0xba,0xff,0xfd byte 0xff,0xf8,0x88,0x88,0xdf,0xf9,0x99,0x98,0xdf,0xf9,0x99,0x98,0xdf,0xf9,0x99,0x98 byte 0xdf,0xf9,0x99,0x98,0xdf,0xf9,0x99,0x98,0xff,0x99,0x99,0x98,0xff,0xaa,0xaa,0xaa byte 0x66,0x77,0x66,0x66,0x66,0x77,0x55,0x55,0x66,0x77,0x55,0x55,0x66,0x77,0x55,0x55 byte 0x77,0x77,0x55,0x55,0x77,0x77,0x77,0x77,0x67,0x77,0x76,0x66,0x75,0x77,0x77,0x77 byte 0x66,0x66,0x66,0x66,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55 byte 0x54,0x44,0x44,0x55,0x77,0x77,0x77,0x77,0x66,0x66,0x66,0x66,0x77,0x77,0x76,0x66 byte 0x66,0x66,0x7b,0xba,0x55,0x56,0x74,0xbb,0x55,0x56,0x74,0x44,0x55,0x56,0x74,0x44 byte 0x55,0x56,0x74,0x44,0x77,0x77,0x74,0x44,0x66,0x66,0x64,0x44,0x66,0x66,0x76,0x44 byte 0xaa,0x99,0x89,0x99,0xba,0xa9,0x99,0xaa,0xbb,0xba,0xaa,0xbb,0x46,0x44,0xbb,0xbb byte 0x46,0x44,0xbb,0xba,0x46,0x66,0x55,0x56,0x46,0x65,0x55,0x55,0x46,0x65,0x66,0x5d byte 0xab,0xaa,0xdf,0xfd,0xba,0xaa,0xdd,0xfd,0xaa,0xdd,0xdd,0xdf,0xad,0xff,0xdd,0xdf byte 0xad,0xff,0xdf,0xff,0x5d,0xdf,0xff,0xf5,0x6d,0xdf,0xff,0x55,0xfd,0xdd,0xff,0x65 byte 0xff,0xbb,0xbb,0xbb,0xff,0xaa,0xaa,0xaa,0xff,0xbb,0xbb,0xbb,0xf6,0x64,0x44,0x66 byte 0x66,0x66,0x56,0x55,0x66,0x65,0x55,0x55,0x66,0x55,0x55,0x55,0x56,0x55,0x55,0x55 byte 0xbb,0xbb,0xbb,0xbb,0xaa,0xaa,0xaa,0xaa,0x66,0x6b,0xbb,0xbb,0x55,0x66,0x64,0x44 byte 0x55,0x55,0x64,0x44,0x55,0x55,0x56,0xbb,0x55,0x55,0x56,0x6b,0x55,0x55,0x55,0x6b byte 0x77,0x57,0x97,0x77,0x77,0x99,0x9a,0x77,0x79,0x9a,0xaa,0x57,0x99,0xab,0xaa,0x55 byte 0x9a,0xa9,0x9a,0x55,0xba,0x99,0xab,0xff,0x99,0x9b,0x99,0xaf,0x99,0xa9,0xaa,0x7f byte 0x77,0x77,0x65,0x65,0x77,0x76,0x65,0x55,0x77,0x66,0x55,0x55,0x76,0x65,0x55,0x55 byte 0x57,0x55,0x55,0x55,0xdf,0x75,0x55,0x55,0xfd,0xf7,0x55,0x55,0xff,0x56,0x75,0x55 byte 0x55,0x56,0x66,0x66,0x55,0x55,0x55,0x66,0x55,0x55,0x55,0x56,0x55,0x56,0x55,0x55 byte 0x55,0x56,0x55,0x55,0x55,0x65,0x65,0x55,0x56,0x66,0x55,0x55,0x66,0x65,0x55,0x55 byte 0x66,0x55,0x66,0xfd,0x65,0x55,0x55,0xdd,0x65,0x55,0x6c,0xcc,0x65,0x55,0x6c,0xcc byte 0x55,0x55,0xdd,0xdf,0x55,0x5f,0xdd,0xff,0x55,0x5d,0xdd,0xff,0x56,0x6d,0xdf,0xff byte 0xfd,0xff,0xf6,0x55,0xff,0xff,0x66,0x55,0xff,0xf6,0x65,0x55,0xbf,0xf6,0x55,0x55 byte 0xbb,0x65,0x55,0x55,0xb6,0x65,0x55,0x55,0xf6,0x65,0x55,0x55,0xf6,0x55,0x55,0x55 byte 0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55 byte 0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x65,0x55,0x55,0x56,0x55,0x55,0x55 byte 0x55,0x55,0x55,0x6b,0x56,0x55,0x55,0x6b,0x56,0x65,0x55,0x56,0x55,0x65,0x55,0x56 byte 0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56 byte 0x9b,0x99,0xa7,0x47,0x99,0x9a,0x77,0x74,0x99,0x9a,0x77,0x67,0x99,0x9a,0x77,0x66 byte 0x99,0xa7,0x77,0x66,0x99,0xa7,0x77,0x66,0x9a,0x77,0x77,0x66,0xa7,0x77,0x77,0x76 byte 0xf5,0x55,0x67,0x56,0x76,0x55,0x56,0x76,0x47,0x65,0xa9,0x99,0x74,0xa9,0x99,0x99 byte 0x67,0xbb,0xaa,0xab,0x6b,0xaa,0xa9,0x99,0xaa,0xba,0xba,0xb9,0xbb,0xa9,0x99,0x99 byte 0x66,0x65,0x55,0x55,0x66,0x55,0x55,0x55,0x95,0x55,0x55,0x55,0x99,0x95,0x55,0x55 byte 0x99,0x99,0x95,0x55,0x99,0x99,0x99,0x95,0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99 byte 0x56,0x6d,0xdd,0xff,0x55,0x5d,0xdd,0xff,0x55,0x5d,0xdd,0xfd,0x66,0x5d,0xdd,0xdd byte 0x66,0x5d,0xdd,0xd5,0x55,0x55,0xdd,0xd5,0x95,0x55,0x55,0x55,0x99,0x66,0x66,0x66 byte 0xf6,0x55,0x55,0x55,0xf6,0x55,0x55,0x56,0x66,0x55,0x55,0x56,0x65,0x55,0x55,0x56 byte 0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x55,0x55,0x55,0x56,0x66,0x66,0x66,0x66 byte 0x66,0x55,0x55,0x55,0x66,0x55,0x55,0x55,0x65,0x55,0x55,0x55,0x65,0x55,0x55,0x55 byte 0x65,0x55,0x55,0x55,0x65,0x55,0x55,0x65,0x65,0x55,0x66,0x65,0x66,0x66,0x66,0x66 byte 0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56,0x55,0x66,0x55,0x56 byte 0x56,0x65,0x55,0x56,0x56,0x66,0x55,0x66,0x66,0x66,0x65,0x66,0x66,0x66,0x66,0x66</div>
These patches are different files from the actual rom? How comes the original comments are actually there?
All companies have applied various fixes or changes to the games' code. Wave Race 64's the best example - due to sponsorship changes and whatnot, some of the advertising seen within the tracks in game were changed into plug the Wii/DS. And of course there's been some translation work with some of the imports. It doesn't really surprise me they took some time to fix a few bugs (or at least tweak things so that their emulator would render it correctly), though what does surprise me is that Sega bothered - they didn't bother to make PAL games run in 60Hz and I'd have thought that was more important.
Wait, what? Level 99 bug fixed? I think that now many people are gonna buy the game on the Virtual Console just for that (all those who play Phantasy Star IV constantly even after they finished the story eventually hit level 100). And some other people will attempt to apply those patches on the original ROM too, for those using emulators. Also what changes does Pulseman have? I mean, sure, it's graphics looked like seizurefest and such, but from the hardware point it's an extremely simple game, to the point that Genecyst is able to emulate it perfectly o_O So the emulation shouldn't be a problem, and as far as I know, the game doesn't have any game-breaking bug either, so I really have no idea why you'd want to patch it, with the exception of translating the Japanese text into English.
What would be a very interesting idea would be creating a website that was dedicated to demonstrating all the known changes between original games and their VC counterparts, possibly with the VC ROMs downloadable... Who's up for it? :v:
Config.zlib from Pulseman: Code (Text): console.brightness="68" console.machine_arch="md" console.machine_country="jp" console.volume="+6.0" modules="emu_m68kbase tsdevp md se_vc" romfile="Pulseman.SGD" snd.snddrv="tsdev+" That makes things much easier :P Already checked the ROM by the way and works in Fusion, but didn't look for any differences yet. EDIT: what
Speaking of Pulseman, does anyone actually remember playing the game on Sega Channel? You know, if the game's only Japanese text was translated (Stage Select screens)? You might also get some *brand new* dumps of roms. Does anyone know what PakiFix means in terms of Puyo Puyo 2? This game was released as an import, so this is a Japanese rom. Code (Text): country="eu" romfile="PuyoPuyo2_PakiFix.SGD" Also, unlike the file extension for other Mega Drive games, Street Fighter II: Special Champion Edition (EU) seems to be specially compiled? Not sure: Code (Text): country="eu" romfile="ST2DASH_EU_080322.BIN" March 22nd, 2008. Oh, and here's the patch file for Phantasy Star II: Code (Text): # jp >0x180 string "GM 00005501-00" >>0x1f0 string " " 0x00021c: beshort 0x6020 # bra.s 0x00023e # no check sum # ue >0x180 string "GM 00005501-02" >>0x1f0 string "UE" 0x000232: beshort 0x6020 # bra.s 0x000254 # no check sum # ??????????CG????????????? 0x02ee81: byte 0x22,0x22 #???0xdd,0xdd 0x02ef24: byte 0x22 #???0xdd 0x02ef2f: byte 0x22 #???0xdd 0x02ef31: byte 0x22 #???0xdd # ???????????? >>>0x0bfff0 string "GREEN CROSS FIX" 0x009094: beshort 0x4eb9,0x000b,0xff00,0x4e71,0x4e71,0x4e71,0x4e71 # move.l #$40000000,$00c00004; bsr.w L0060ac_bitdev -> jsr 0xbff00; nop; nop; nop 0x0bff00: beshort 0x23fc,0x4000,0x0000,0x00c0,0x0004 # move.l #$40000000,$00c00004; beshort 0xb1fc,0x0003,0xdfe4 # cmpa.l #$0003dfe4,a0; city map? beshort 0x6706 # beq.s +6 beshort 0x4ef9,0x0000,0x60ac # jsr L0060ac_bitdev; rts beshort 0x41f9,0x000c,0x0000 # lea.l 0x0c0000,a0 beshort 0x4ef9,0x0000,0x5e8e # jsr L005e8e_cgopen; rts # # 0x0c0000????CG????cgopen?????????????? ??? # 0x0c04e7: # ????32????????????? # ????? # byte 0x55,0x55,0x55,0x55, 0x53,0x33,0x33,0x33, 0x53,0x22,0x22,0x22, 0x53,0x22,0x22,0x77, 0x53,0x22,0x22,0x77, 0x53,0x22,0x22,0x77, 0x53,0x27,0x77,0x77, 0x53,0x27,0x77,0x77 # ???? # byte 0x55,0x55,0x55,0x55, 0x53,0x33,0x33,0x33, 0x53,0x22,0x22,0x22, 0x53,0x22,0x22,0xdd, 0x53,0x22,0x22,0xdd, 0x53,0x22,0x22,0xdd, 0x53,0x2d,0xdd,0xdd, 0x53,0x2d,0xdd,0xdd # ??? byte 0x55,0x55,0x55,0x55, 0x53,0x33,0x33,0x33, 0x53,0x22,0x22,0x22, 0x53,0x27,0x77,0x22, 0x53,0x27,0x77,0x22, 0x53,0x27,0x77,0x22, 0x53,0x27,0x77,0x77, 0x53,0x27,0x77,0x77 Another strange thing is that this rom was compiled just so this fix could work. What this fix is, I haven't got a clue: Code (Text): country="eu" romfile="PhantasyStar2_UE_GreenCrossFix.SGD" save_sram="1" You can download the rom here. To play the games, just rename the extension to .bin and you can play them in any emulator you like. Byte compares would be good for these three to see what's up. I'll keep searching for more VC games to check, and I found more patch notes (everything so far has been in Japanese - Sega of Japan kicks ass) for some more games - which I don't think anyone would even recognize (except for Shining Force 2, oddly enough SF(1) doesn't have a patch). Now are we interested? :P
It's identical to rev 01 except for one byte. From what it looks like, they changed Pakista's name that is displayed when playing (the 4 letter abbriviation) from PAKI to PAK. It's a Paki fix indeed :v:
Incidentally, since it wasn't outright stated (although evilhamwizard sort of implied it at one point), it's been confirmed that the VC version of Pulseman was, in fact, NOT translated. So no, it's not a long-lost Sega Channel copy or anything. The main plot of the game was translated and summarized on the game's VC page, but in-game, it's all Japanese text, just as it is if you emulated it (without using the existing translation patch).
For the record, here's the patch made for the USA version of Alien Soldier, as seen here: Code (Text): # # $Id: patch-AlienSoldier,v 1.2 2007-10-09 13:31:00 m2 Exp $ >0x183 string "MK-01186-00" 0x350: beshort 0x4e71 x 0x8e # >>0x1f0 string "A" 0xf062: beshort 0x4e71 # nop beshort 0x4e71 # nop 0xf076: beshort 0x4eb9,0x001f,0xff00 # jsr $1fff00.l beshort 0x4e71 # nop 0x1fff00: beshort 0x4eb9,0x0000,0xf65e # jsr $00f65e.l beshort 0x5478,0xa950 # addq.w #$02,$ffffa950.w beshort 0x42b8,0x8240 # clr.l $ffff8240.w beshort 0x4e75 # rts
And for those playing at home and don't realise WHY this has been done, Paki is a common racial slur in the UK against Pakistanis (who it bothers), and Indians (who are much higher in number in the UK and DESPISE Pakistan =P)
Here's a patch file for Shining Force 2 (none for Shining Force though): Code (Text): # all >0x120 string "SHINING FORCE 2 " # # ??????? # 0x01a2a6: beshort 0x4ef9,0x001f,0xff80 # jmp $1fff80 beshort 0x4e71 # nop 0x1fff80: beshort 0x3c00 # move.w d0,d6 beshort 0x48e7,0x0780 # movem.l d5-d7/a0,-(a7) beshort 0x41f8,0xd000 # lea.l $d000.w,a0 beshort 0x3e06 # move.w d6,d7 beshort 0xe44f # lsr.w #2,d7 beshort 0x0247,0x0333 # andi.w #$0333,d7 beshort 0x6154 # bsr.s 0x1fffe8 beshort 0x3e06 # move.w d6,d7 beshort 0xe24f # lsr.w #1,d7 beshort 0x0247,0x0777 # andi.w #$0777,d7 beshort 0x614a # bsr.s 0x1fffe8 beshort 0x3e06 # move.w d6,d7 beshort 0xe24f # lsr.w #1,d7 beshort 0x0247,0x0777 # andi.w #$0777,d7 beshort 0x2a07 # move.l d7,d5 beshort 0xe24d # lsr.w #1,d5 beshort 0x0245,0x0333 # andi.w #$0333,d5 beshort 0xde85 # add.l d5,d7 beshort 0x6136 # bsr.s 0x1fffe8 beshort 0x2e06 # move.l d6,d7 beshort 0x6132 # bsr.s 0x1fffe8 beshort 0x3e06 # move.w d6,d7 beshort 0xe24f # lsr.w #1,d7 beshort 0x0247,0x0777 # andi.w #$0777,d7 beshort 0x2a07 # move.l d7,d5 beshort 0xe24d # lsr.w #1,d5 beshort 0x0245,0x0333 # andi.w #$0333,d5 beshort 0xde85 # add.l d5,d7 beshort 0x611e # bsr.s 0x1fffe8 beshort 0x3e06 # move.w d6,d7 beshort 0xe24f # lsr.w #1,d7 beshort 0x0247,0x0777 # andi.w #$0777,d7 beshort 0x6114 # bsr.s 0x1fffe8 beshort 0x3e06 # move.w d6,d7 beshort 0xe44f # lsr.w #2,d7 beshort 0x0247,0x0333 # andi.w #$0333,d7 beshort 0x610a # bsr.s 0x1fffe8 beshort 0x7e00 # moveq.l #$00,d7 beshort 0x6106 # bsr.s 0x1fffe8 beshort 0x4cdf,0x01e0 # movem.l (a7)+,d5-d7/a0 beshort 0x4e75 # rts 0x1fffe8: beshort 0x3087 # move.w d7,(a0) beshort 0x3147,0x0044 # move.w d7,$0044(a0) # # ??????? # ???????RGB??????????????? # jp >>0x180 string "GM G-5521 00" 0x000b2a: byte 0x03,0x03,0x02,0x02,0x01,0x01,0x00,0x80 # ???????????? 0x000b32: byte 0x01,0x01,0x02,0x02,0x03,0x03,0x04,0x80 # ??????????? 0x000b4a: byte 0x02,0x02,0x02,0x02,0x01,0x01,0xfe,0xfe # ?????? 0x000b6a: # byte 0x06,0xfe,0x06,0xfe,0x06,0xfe,0x80,0x00 # ?????????????(?????) # byte 0x01,0x01,0x00,0x00,0xff,0xff,0xfe,0x80 # ?????????????(2008/05/01) byte 0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe,0x80 # ?????????????(2008/05/08) # ??????????? 0x1fffee: beshort 0x4eb8,0x0c7c # jsr $0c7c.w beshort 0x7004 # moveq.l #$04,d0 beshort 0x4ef8,0x0f00 # jmp $0f00.w # us & eu >>0x180 string "GM MK-1315 -00" 0x000b2e: byte 0x03,0x03,0x02,0x02,0x01,0x01,0x00,0x80 # ???????????? 0x000b36: byte 0x01,0x01,0x02,0x02,0x03,0x03,0x04,0x80 # ??????????? 0x000b4e: byte 0x02,0x02,0x02,0x02,0x01,0x01,0xfe,0xfe # ?????? 0x000b6e: byte 0xff,0xff,0xff,0xff,0xfe,0xfe,0xfe,0x80 # ????????????? # ??????????? 0x1fffee: beshort 0x4eb8,0x0c80 # jsr $0c80.w beshort 0x7004 # moveq.l #$04,d0 beshort 0x4ef8,0x0f04 # jmp $0f04.w # # eu????????? # # eu >>>0x1f0 string "E" 0x044c3e: beshort 0x4868,0x0014 # pea $0014(a0) 0x044c4e: beshort 0x205f # movea.l (sp)+,a0 beshort 0x2089 # move.l a1,(a0) beshort 0x4eb9,0x000f,0xfc80 # jsr $0ffc80.l 0x0ffc80: beshort 0x06b8,0x0000,0x002a,0xb1a0 # addi.l #$0000002a,$ffffb1a0.w beshort 0x4e75 # rts What's the deal with the EU only hang patch? I probably have one or two more patch files, but they aren't really interesting. What's interesting to note is that a lot of games have empty patch files, meaning that they might've had patches at some point - but it turned out they never needed it. PS: ?? has multiple meanings. Update/Revision/Retouch/Correction/etc. Just a FYI because it doesn't make sense with a translator.
Mega Turrican has one empty patch file, but the game's been certainly altered from the original release (no SONY logo at startup, current Factor 5 address in the ending). This could mean these games were actually recompiled from the original source, rather than altered in their already compiled form. It would be quite interesting to have these documented somewhere, by the way.
Where have you all been finding these VC downloads? Could that SF2 patch fix the battle search bug, by any chance?
So it turns out that Spider-Man was replaced with some pink guy in Revenge of Shinobi, thus ruining my childhood memories. Does anybody have access to this ROM? I'm just curious to see if they actually made a new build/version of this game.
I'm on the case (have to go on usenet for something anyway). Watch this post. edit: nevermind ill just post something else
I'm back, and I got some stuff to show. First before I begin, let me just upload the entire extracted ccf file so you can check it out too. As it turns out, no, they didn't recompile the rom. All they did was do a simple palette change to the sprite. Here's the patch file: <div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>>0x180 string "GM 00001105-03" 0x000322: beshort 0x6020 # no sum check 0x009456: # title transfer hook1 beshort 0x4eb9,0x0002,0xeb00 # jsr $0074ac -> jsr $02eb00 0x0096a6: # title transfer hook2 beshort 0x4eb9,0x0002,0xeb00 # jsr $0074ac -> jsr $02eb00 0x02c2c2: # man color fix beshort 0x0c8e,0x084a,0x0406 0x02c2d8: beshort 0x0c8e,0x084a,0x0428 0x02ea48: # copyright string fix byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00 0x02eb00: # new title image transfer routine beshort 0x4eb9,0x0000,0x74ac # jsr L0074ac beshort 0x4e71 # nop beshort 0x4e71 # nop beshort 0x4e71 # nop beshort 0x48e7,0x01c0 # movem.l d7/a0-a1,-(a7) beshort 0x43f9,0x00c0,0x0000 # lea.l $00c00000,a1 beshort 0x23fc,0x60e0,0x0000,0x00c0,0x0004 # move.l #$60e00000,$00c00004 beshort 0x41fa,0x001e # lea.l L02eb40(pc),a0 beshort 0x7e3f # moveq.l #$3f,d7 #1: beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x2298 # move.l (a0)+,(a1) beshort 0x51cf,0xffee # dbra.w d7,1b beshort 0x4cdf,0x0380 # movem.l (a7)+,d7/a0-a1 beshort 0x4e75 # rts 0x02eb40: # new title image byte 0x00,0x00,0xce,0xff,0x00,0x00,0x1c,0xef,0x00,0x00,0x1c,0xef,0x00,0x00,0x31,0xce byte 0x00,0x00,0x61,0xce,0x00,0x00,0x61,0xce,0x00,0x00,0x61,0xce,0x00,0x06,0x31,0xce byte 0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x0f,0xf0,0x00,0x00,0x0f,0xff,0x00,0x00,0x0f byte 0xff,0x00,0x00,0x0f,0xff,0xf0,0x00,0x0f,0xff,0xf0,0x00,0x0f,0xff,0xf0,0x00,0x0f byte 0xa4,0x43,0x33,0x22,0xa4,0x44,0x33,0x21,0xa6,0x44,0x43,0x32,0xa6,0x54,0x44,0x43 byte 0xa7,0x76,0x64,0x53,0xaa,0x87,0x76,0x67,0xa0,0x0a,0xa8,0x77,0xa0,0x00,0x0a,0x98 byte 0x32,0x33,0x33,0x44,0x11,0x11,0x11,0x12,0x11,0x11,0x11,0x22,0x22,0x11,0x22,0x22 byte 0x32,0x22,0x34,0x43,0x64,0x46,0x77,0x76,0x77,0x77,0x88,0x77,0xaa,0x00,0xaa,0x88 byte 0x55,0x55,0x66,0x66,0x11,0x23,0x22,0x34,0x11,0x12,0x31,0x23,0x11,0x11,0x21,0x12 byte 0x22,0x11,0x22,0x12,0x32,0x21,0x22,0x43,0x66,0x43,0x22,0x64,0x87,0x76,0x64,0x67 byte 0x77,0x77,0x88,0x88,0x67,0x66,0x67,0x77,0x66,0x64,0x66,0x87,0x46,0x74,0x46,0x88 byte 0x46,0x74,0x46,0x98,0x37,0x86,0x46,0x99,0x37,0x87,0x46,0x99,0x67,0x88,0x66,0x89 byte 0x77,0x78,0x98,0x78,0x44,0x55,0x66,0x43,0x44,0x45,0x75,0x42,0x64,0x46,0x76,0x42 byte 0x74,0x47,0x87,0x64,0x86,0x78,0x87,0x87,0x87,0x89,0x88,0x97,0x98,0x89,0x98,0x98 byte 0x88,0x88,0x99,0x99,0x22,0x22,0x22,0x46,0x11,0x12,0x11,0x24,0x11,0x12,0x33,0x25 byte 0x21,0x24,0x66,0x46,0x43,0x46,0x77,0x88,0x66,0x78,0x88,0x9a,0x88,0x99,0x9a,0xa0 byte 0xaa,0xa0,0x00,0x00,0x78,0x9a,0x00,0x00,0x67,0x89,0xa0,0x00,0x68,0x9a,0x00,0x00 byte 0x89,0xa0,0x00,0x00,0xaa,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x60,0x00 byte 0x00,0x00,0x80,0x00,0x00,0x00,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x06,0x31,0xce,0x00,0x08,0x31,0xce,0x00,0x08,0x31,0xce,0x00,0xa6,0x31,0xce byte 0x00,0xa6,0x31,0xce,0x00,0x08,0x31,0xcf,0x00,0x08,0x31,0xcf,0x00,0x08,0x31,0xce byte 0xff,0xf0,0x00,0x0f,0xff,0x00,0x00,0x0f,0xff,0x00,0x00,0x0f,0xff,0x00,0x00,0x0f byte 0xf0,0x00,0x00,0x0f,0xf0,0x00,0x00,0x0f,0xf0,0x00,0x00,0x0f,0xf0,0x00,0x00,0xff byte 0xa0,0x00,0x0a,0x98,0xaa,0xaa,0xa9,0x98,0xa6,0x77,0x77,0x77,0xa5,0x66,0x67,0x76 byte 0xa4,0x56,0x66,0x66,0xa4,0x45,0x66,0x55,0xa5,0x44,0x55,0x57,0xa7,0x55,0x56,0xaa byte 0x98,0x78,0x99,0x9a,0x97,0x78,0x89,0x9a,0x87,0x78,0x89,0x9a,0x77,0x78,0x89,0x9a byte 0x77,0x77,0x88,0x9a,0x77,0x78,0x88,0x9a,0x77,0x77,0x88,0x89,0x77,0x77,0x78,0x89 byte 0xa9,0x9a,0xa0,0x00,0x0a,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x0a,0x31,0xce,0x00,0x0a,0x31,0xce,0x00,0x00,0x31,0xce,0x00,0x00,0x31,0xce byte 0x00,0x00,0x61,0xce,0x00,0x00,0x63,0x1c,0x00,0x00,0x63,0x1c,0x00,0x00,0x63,0x1c byte 0xf0,0x00,0x00,0xfa,0xf0,0x00,0x00,0xfa,0xf0,0x00,0x00,0xfa,0xf0,0x00,0x00,0xfa byte 0xf0,0x00,0x00,0xfa,0xf0,0x00,0x00,0xfa,0xef,0x00,0x00,0xfa,0xef,0x00,0x00,0xfa byte 0x77,0x65,0x68,0x77,0x77,0x76,0x77,0x77,0x77,0x54,0x45,0x77,0x75,0x54,0x14,0x45 byte 0x75,0x43,0x13,0x44,0x65,0x43,0x11,0x34,0x65,0x43,0x21,0x13,0x65,0x54,0x32,0x12 byte 0x66,0x77,0x78,0x89,0x66,0x67,0x78,0x89,0x65,0x67,0x78,0x89,0x54,0x66,0x78,0x89 byte 0x54,0x56,0x78,0x80,0x43,0x56,0x78,0x90,0x32,0x56,0x78,0x90,0x32,0x36,0x78,0x90 byte 0x00,0x00,0x00,0x00,0xa0,0x00,0x00,0x00,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x8a,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0xa8,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x86,0x66,0x66,0x8a,0x00,0x00,0x00,0x03 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x66,0x00,0x00 byte 0x00,0x00,0x63,0x1c,0x00,0x00,0x63,0x1c,0x00,0x0a,0x63,0x1c,0x00,0x0a,0x63,0x1c byte 0x00,0x08,0x31,0xce,0x00,0x06,0x31,0xce,0x00,0x06,0x31,0xcf,0x00,0xa3,0x1c,0xef byte 0xef,0x00,0x00,0xff,0xef,0x00,0x00,0xff,0xef,0x00,0x00,0x00,0xf0,0x00,0x00,0x00 byte 0xf0,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0xa6,0x55,0x44,0x23,0xfa,0x76,0x55,0x44,0xff,0xaa,0x77,0x66,0x00,0xff,0xaa,0x77 byte 0x00,0x00,0xff,0xa7,0x00,0x00,0x00,0xfa,0x00,0x00,0x00,0x0f,0x00,0x00,0x00,0x00 byte 0x45,0x67,0x77,0x88,0x56,0x66,0x78,0x88,0x66,0x77,0x77,0x78,0x77,0x77,0x77,0x88 byte 0x77,0x77,0x77,0x88,0xaa,0x77,0x78,0x88,0xff,0xaa,0xaa,0x99,0x00,0xff,0xff,0xa9 byte 0x89,0x9a,0xaa,0xaa,0x89,0x99,0x9a,0xa8,0x88,0x88,0x99,0x87,0x88,0x88,0x98,0x76 byte 0x88,0x88,0x87,0x64,0x89,0x87,0x76,0x64,0x98,0x77,0x66,0x43,0x87,0x77,0x66,0x44 byte 0x86,0x43,0x12,0x34,0x64,0x32,0x13,0x33,0x43,0x31,0x23,0x33,0x43,0x32,0x32,0x33 byte 0x33,0x33,0x23,0x32,0x33,0x33,0x33,0x32,0x32,0x34,0x43,0x31,0x33,0x34,0x43,0x21 byte 0x22,0x36,0x78,0x90,0x22,0x36,0x78,0x00,0x12,0x36,0x78,0x00,0x12,0x37,0x89,0x00 byte 0x12,0x37,0x89,0x00,0x12,0x47,0x89,0x00,0x12,0x47,0x89,0x00,0x12,0x47,0x80,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x83,0x1c,0xef,0x00,0x63,0x1c,0xff,0x0a,0x31,0xce,0xf0,0x08,0x31,0xce,0xf0 byte 0x06,0x31,0xcf,0x00,0xa3,0x1c,0xef,0x00,0x31,0xce,0xf0,0x00,0x6c,0xef,0x00,0x00 byte 0x00,0x00,0x00,0xfa,0x00,0x00,0x00,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0xaa,0xa7,0x66,0x44,0xff,0xfa,0xaa,0xaa,0x00,0x0f,0xff,0xff,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x43,0x45,0x43,0x21,0x44,0x55,0x43,0x11,0xaa,0xa5,0x42,0x11,0xff,0xfa,0x42,0x11 byte 0x00,0x0f,0xa1,0x12,0x00,0x00,0xfa,0x22,0x00,0x00,0x0f,0xff,0x00,0x00,0x00,0x00 byte 0x12,0x47,0x80,0x00,0x12,0x58,0x90,0x00,0x22,0x58,0x90,0x00,0x23,0x58,0x90,0x00 byte 0x23,0x68,0x90,0x00,0x35,0x68,0x00,0x00,0x56,0x68,0x00,0x00,0xff,0xf0,0x0f,0xf0 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0x00,0xff,0xf0,0x00,0x00,0x00,0x00,0x00 byte 0x90,0x00,0x00,0x0a,0x8a,0x00,0x00,0x00,0x78,0x9a,0xa0,0x00,0x66,0x77,0x89,0xaa byte 0x55,0x68,0x99,0x99,0x55,0x56,0x67,0x77,0x99,0x76,0x77,0x80,0x86,0x42,0x47,0x01 byte 0xa9,0x99,0x88,0x88,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x99,0xaa,0xaa,0xaa,0x88,0x89,0xaa,0xa8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x87,0x88,0x76,0x79,0x88,0x88,0x87,0x78,0x0a,0xa8,0x88,0x77,0x00,0xa9,0x88,0x87 byte 0xa9,0x98,0x98,0x77,0x88,0x99,0x88,0x77,0x87,0x89,0x78,0x67,0x97,0x79,0x77,0x66 byte 0x72,0x11,0x18,0x0a,0x72,0x11,0x15,0x00,0x47,0x21,0x11,0x70,0x44,0x62,0x11,0x16 byte 0x43,0x33,0x77,0x42,0x33,0x44,0x46,0x77,0x33,0x34,0x66,0x68,0x45,0x46,0x67,0x78 byte 0x00,0x00,0x0a,0x0a,0xa9,0x99,0xa0,0x08,0x00,0x00,0x00,0x84,0x8a,0xaa,0x84,0x48 byte 0x22,0x22,0x47,0x78,0x77,0x78,0x88,0x88,0x88,0x88,0x99,0x9a,0x99,0x9a,0xaa,0xaa byte 0x98,0x78,0x76,0x66,0x89,0x77,0x76,0x66,0x99,0x76,0x76,0x56,0x97,0x74,0x65,0x46 byte 0x78,0x64,0x65,0x46,0x99,0x64,0x54,0x35,0xa9,0x64,0x43,0x35,0xa8,0x54,0x32,0x34 byte 0x90,0x00,0x00,0x0a,0x8a,0x00,0x00,0x00,0x78,0x9a,0xa0,0x00,0x66,0x77,0x89,0xaa byte 0x55,0x68,0x99,0x99,0x55,0x56,0x67,0x77,0x99,0x60,0x00,0x00,0x86,0x01,0x00,0x00 byte 0xa9,0x99,0x88,0x88,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x99,0xaa,0xaa,0xaa,0x88,0x89,0xaa,0xa8,0x00,0x0a,0xa9,0x99,0x00,0xa7,0x88,0x99 byte 0x87,0x88,0x76,0x79,0x88,0x88,0x87,0x78,0x0a,0xa8,0x88,0x77,0x00,0xa9,0x88,0x87 byte 0xa9,0x98,0x98,0x77,0x88,0x99,0x88,0x77,0x87,0x89,0x78,0x67,0x97,0x79,0x77,0x66 byte 0x72,0x0a,0x00,0x00,0x72,0x00,0xaa,0x99,0x47,0x20,0x00,0x00,0x44,0x62,0xaa,0xaa byte 0x43,0x33,0x77,0x42,0x33,0x44,0x46,0x77,0x33,0x34,0x66,0x68,0x45,0x46,0x67,0x78 byte 0xa0,0xa3,0x34,0x79,0x00,0x82,0x12,0x34,0x08,0x41,0x11,0x24,0x84,0x11,0x12,0x78 byte 0x22,0x24,0x77,0x88,0x77,0x78,0x88,0x88,0x88,0x88,0x99,0x9a,0x99,0x9a,0xaa,0xaa byte 0x98,0x78,0x76,0x66,0x89,0x77,0x76,0x66,0x99,0x76,0x76,0x56,0x97,0x74,0x65,0x46 byte 0x78,0x64,0x65,0x46,0x99,0x64,0x54,0x35,0xa9,0x64,0x43,0x35,0xa8,0x54,0x32,0x34 byte 0x00,0xa0,0x00,0x88,0x0a,0x00,0x08,0x32,0xa0,0x00,0x82,0x11,0x00,0x88,0x53,0x21 byte 0x88,0x88,0x55,0x31,0x78,0x78,0x87,0x55,0x77,0x67,0x88,0x77,0x86,0x66,0x88,0x88 byte 0xa0,0x10,0x00,0x00,0x70,0xa0,0x00,0x00,0x4a,0x0a,0xa0,0x00,0x17,0xa0,0x00,0x00 byte 0x11,0x37,0xaa,0xaa,0x31,0x12,0x23,0x44,0x55,0x44,0x44,0x45,0x77,0x76,0x66,0x78 byte 0x00,0x00,0x00,0x00,0x00,0xa0,0x00,0x00,0x0a,0x88,0xaa,0x00,0xa8,0x78,0x8a,0xa0 byte 0x77,0x77,0x8a,0x00,0x55,0x78,0xa0,0x00,0x68,0x89,0x00,0x00,0x99,0x90,0x00,0x00 byte 0x07,0x66,0x78,0x87,0x08,0x67,0x67,0x88,0x00,0x77,0x77,0x78,0x00,0x87,0x87,0x88 byte 0x00,0x09,0x88,0x88,0x00,0x00,0x98,0x88,0x00,0x00,0xa9,0x88,0x00,0x00,0x00,0xa9 byte 0x87,0x66,0x33,0x46,0x77,0x76,0x66,0x68,0x87,0x77,0x76,0x88,0x88,0x78,0x88,0x80 byte 0x88,0x88,0x80,0x00,0x88,0x89,0x90,0x00,0x88,0x88,0x89,0x00,0x98,0x88,0x90,0x00 byte 0x00,0xa0,0x00,0x10,0x0a,0x00,0x00,0xa0,0xa0,0x00,0x8a,0x0a,0x00,0x87,0x57,0xa0 byte 0x88,0x88,0x55,0x78,0x78,0x78,0x87,0x55,0x77,0x67,0x88,0x77,0x86,0x66,0x88,0x88 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0xa0,0x00,0x0a,0x88,0x00,0x00,0xa8,0x76 byte 0xaa,0xa8,0x74,0x45,0x31,0x12,0x23,0x34,0x55,0x44,0x44,0x56,0x77,0x76,0x66,0x78 byte 0x00,0x00,0x00,0x00,0xaa,0xa0,0x00,0x00,0x89,0x99,0xaa,0x00,0x67,0x88,0x9a,0xa0 byte 0x55,0x78,0x9a,0x00,0x57,0x89,0xa0,0x00,0x78,0x99,0x00,0x00,0x99,0x90,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 byte 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00</div> As you can see, it doesn't look like anyone from Japan did the patch file. Though they might've created patch files for each region, but one thing's for sure they didn't use a different rom: Code (Text): console.brightness="87" console.machine_arch="md" console.machine_country="eu" console.volume="+6.0" modules="emu_m68kbase tsdevp md se_vc" romfile="TheSuperShinobi_JUE.SGD" snd.snddrv="tsdev+" They're starting to use this new emulator though. But besides all of this, there's not a lot worth mentioning. :\