- 566
- Posts
- 5
- Years
- Seen yesterday
Some of you may or may not know that Gen 1 pokemon games actually have slightly different Save jingles between most of the versions. See SatoMew's video here for a comparison of the japanese versions: https://www.youtube.com/watch?v=Qv_ypGs8Mjc
Note that the jingle exists in two audio engines for each version of the game: Save_1 is played on overworld maps, and Save_3 is played on dungeon-like maps.
The code for pokemon red, blue, and yellow are known due to the pret disassemblies. But what about the JP versions? Say you are an aspiring gen-1 rom hacker wanting to use the pokered disassembly to recreate the Green, RedJP, and BlueJP versions to exacting detail. What are you to do? Do you try to recreate the unique changes in the save jingle by ear?
Well you don't have to. Just read this post. I reversed-engineered the hex values you need to recreate the save jingles for any version of gen 1 pokemon. Just for you. Yes you! That desperate googler who will find this post years from now looking for any shred of information only to find dead links. This one's for you, buddy.
Save Jingle SFX Format
Channel 4 starts here
Line 1: 2 bytes for the duty cycle
Intermediate Lines: 4 bytes for a square wave note
Last Line: 1 byte set to FF as a termination value
Channel 5 starts here
Line 1: 2 bytes for the duty cycle
Intermediate Lines: 4 bytes for a square wave note
Last Line: 1 byte set to FF as a termination value
REDJP
Save_1 begins at ROM offset 0000B3A3
SFX_Save_1_Ch4
EC 02
22 F4 00 07
22 E4 00 06
22 E4 80 06
22 E4 C0 06
22 E4 00 07
22 E4 C0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
22 08 00 00
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 C1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007F31D
SFX_Save_3_Ch4
;same data as Save_1
SFX_Save_3_Ch5
;same data as Save_1
GREEN
Save_1 begins at ROM offset 0000B3A3
SFX_Save_1_Ch4
EC 02
24 F4 00 07
22 E4 80 06
22 E4 00 07
22 E4 C0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
22 08 00 00
24 D4 01 07
22 C4 81 06
22 C4 01 07
22 C4 C1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007F31D
SFX_Save_3_Ch4
;same data as Save_1
SFX_Save_3_Ch5
;same data as Save_1
BLUE and BLUEJP
Save_1 begins at ROM offset 00008475
SFX_Save_1_Ch4
EC 02
24 F4 00 07
22 E4 00 06
22 E4 80 06
22 E4 C0 06
22 E4 00 07
22 E4 A0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
24 08 00 00
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 A1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007C45E
SFX_Save_3_Ch4
EC 02
23 E4 00 06
23 E4 80 06
23 E4 C0 06
23 E4 00 07
2F F2 E0 07
FF
SFX_Save_3_Ch5
EC 02
23 08 00 00
23 C4 01 06
23 C4 81 06
23 C4 C1 06
23 C4 01 07
2F D2 E1 07
FF
RED
Save_1 begins at ROM offset 00008475
SFX_Save_1_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_1_Ch5
;Same data as contained in BLUE & BLUEJP
Save_3 begins at ROM offset 0007C45E
SFX_Save_3_Ch4
EC 02
24 F4 20 07
22 E4 20 06
22 E4 80 06
22 E4 C0 06
22 E4 20 07
22 E4 A0 07
2F F2 E0 07
FF
SFX_Save_3_Ch5
EC 02
24 08 20 20
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 A1 07
2F D2 E1 07
FF
YELLOW
Save_1 begins at ROM offset 00008413
SFX_Save_1_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_1_Ch5
;Same data as contained in BLUE & BLUEJP
Save_3 begins at ROM offset 0007C3F9
SFX_Save_3_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_3_Ch5
;Same data as contained in BLUE & BLUEJP
Note that the jingle exists in two audio engines for each version of the game: Save_1 is played on overworld maps, and Save_3 is played on dungeon-like maps.
The code for pokemon red, blue, and yellow are known due to the pret disassemblies. But what about the JP versions? Say you are an aspiring gen-1 rom hacker wanting to use the pokered disassembly to recreate the Green, RedJP, and BlueJP versions to exacting detail. What are you to do? Do you try to recreate the unique changes in the save jingle by ear?
Well you don't have to. Just read this post. I reversed-engineered the hex values you need to recreate the save jingles for any version of gen 1 pokemon. Just for you. Yes you! That desperate googler who will find this post years from now looking for any shred of information only to find dead links. This one's for you, buddy.
Save Jingle SFX Format
Channel 4 starts here
Line 1: 2 bytes for the duty cycle
Intermediate Lines: 4 bytes for a square wave note
Last Line: 1 byte set to FF as a termination value
Channel 5 starts here
Line 1: 2 bytes for the duty cycle
Intermediate Lines: 4 bytes for a square wave note
Last Line: 1 byte set to FF as a termination value
REDJP
Save_1 begins at ROM offset 0000B3A3
SFX_Save_1_Ch4
EC 02
22 F4 00 07
22 E4 00 06
22 E4 80 06
22 E4 C0 06
22 E4 00 07
22 E4 C0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
22 08 00 00
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 C1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007F31D
SFX_Save_3_Ch4
;same data as Save_1
SFX_Save_3_Ch5
;same data as Save_1
GREEN
Save_1 begins at ROM offset 0000B3A3
SFX_Save_1_Ch4
EC 02
24 F4 00 07
22 E4 80 06
22 E4 00 07
22 E4 C0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
22 08 00 00
24 D4 01 07
22 C4 81 06
22 C4 01 07
22 C4 C1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007F31D
SFX_Save_3_Ch4
;same data as Save_1
SFX_Save_3_Ch5
;same data as Save_1
BLUE and BLUEJP
Save_1 begins at ROM offset 00008475
SFX_Save_1_Ch4
EC 02
24 F4 00 07
22 E4 00 06
22 E4 80 06
22 E4 C0 06
22 E4 00 07
22 E4 A0 07
2F F2 E0 07
FF
SFX_Save_1_Ch5
EC 02
24 08 00 00
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 A1 07
2F D2 E1 07
FF
Save_3 begins at ROM offset 0007C45E
SFX_Save_3_Ch4
EC 02
23 E4 00 06
23 E4 80 06
23 E4 C0 06
23 E4 00 07
2F F2 E0 07
FF
SFX_Save_3_Ch5
EC 02
23 08 00 00
23 C4 01 06
23 C4 81 06
23 C4 C1 06
23 C4 01 07
2F D2 E1 07
FF
RED
Save_1 begins at ROM offset 00008475
SFX_Save_1_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_1_Ch5
;Same data as contained in BLUE & BLUEJP
Save_3 begins at ROM offset 0007C45E
SFX_Save_3_Ch4
EC 02
24 F4 20 07
22 E4 20 06
22 E4 80 06
22 E4 C0 06
22 E4 20 07
22 E4 A0 07
2F F2 E0 07
FF
SFX_Save_3_Ch5
EC 02
24 08 20 20
22 D4 01 07
22 C4 01 06
22 C4 81 06
22 C4 C1 06
22 C4 01 07
22 C4 A1 07
2F D2 E1 07
FF
YELLOW
Save_1 begins at ROM offset 00008413
SFX_Save_1_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_1_Ch5
;Same data as contained in BLUE & BLUEJP
Save_3 begins at ROM offset 0007C3F9
SFX_Save_3_Ch4
;Same data as contained in BLUE & BLUEJP
SFX_Save_3_Ch5
;Same data as contained in BLUE & BLUEJP