Guides:Mail Writer Codes: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
Line 1,828: | Line 1,828: | ||
===Setting up an OAM DMA hijack=== |
===Setting up an OAM DMA hijack=== |
||
Every frame, the game will execute an OAM DMA routine. The instructions for this routine is kept in HRAM, in the area between $FF80 and $FF89. By removing the final return instruction and inserting a custom jump instruction, the game will execute up to 15 bytes of custom code. |
Every frame, the game will execute an OAM DMA routine. The instructions for this routine is kept in HRAM, in the area between $FF80 and $FF89. By removing the final return instruction and inserting a custom jump instruction, the game will execute up to 15 bytes of custom code. |
||
In addition, the OAM DMA hijack for Crystal contains additional logic to prevent custom code from being executed when the current active WRAM bank isn't WRAM bank 01. |
|||
This code only enables the OAM DMA hijack and will not have any immediately visible effects on gameplay. After executing this code, another code needs to be used to insert a custom byte code so that it can be executed on every frame. Codes that do this can be found further on in this section. |
This code only enables the OAM DMA hijack and will not have any immediately visible effects on gameplay. After executing this code, another code needs to be used to insert a custom byte code so that it can be executed on every frame. Codes that do this can be found further on in this section. |
||
Line 1,840: | Line 1,842: | ||
|| |
|| |
||
01 03 00 11 8A FF 21 6B DD CD 1A 31 3E C9 EA 21 |
01 03 00 11 8A FF 21 6B DD CD 1A 31 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 9A D2 CD 26 30 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row" | French |
! scope="row" | French |
||
|| |
|| |
||
01 03 00 11 8A FF 21 6B DD CD 2C 31 3E C9 EA 21 |
01 03 00 11 8A FF 21 6B DD CD 2C 31 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 9A D2 CD 13 30 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row"| German |
! scope="row"| German |
||
|| |
|| |
||
01 03 00 11 8A FF 21 6B DD CD 47 31 3E C9 EA 21 |
01 03 00 11 8A FF 21 6B DD CD 47 31 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 9A D2 CD 10 30 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row"| Italian |
! scope="row"| Italian |
||
|| |
|| |
||
01 03 00 11 8A FF 21 6B DD CD 3F 31 3E C9 EA 21 |
01 03 00 11 8A FF 21 6B DD CD 3F 31 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 9A D2 CD 14 30 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row"| Spanish |
! scope="row"| Spanish |
||
|| |
|| |
||
01 03 00 11 8A FF 21 6B DD CD 3E 31 3E C9 EA 21 |
01 03 00 11 8A FF 21 6B DD CD 3E 31 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 9A D2 CD 10 30 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row"| Japanese |
! scope="row"| Japanese |
||
|| |
|| |
||
01 03 00 11 8A FF 21 DC DC CD D6 30 3E C9 EA 21 |
01 03 00 11 8A FF 21 DC DC CD D6 30 3E C9 EA 21 |
||
DF AF EA 89 FF C9 C3 01 DF |
DF AF EA 89 FF C9 C3 01 DF |
||
|| |
|| |
||
01 |
01 0A 00 11 F4 FF 21 CB D2 CD F2 2F 3E C9 EA 20 |
||
C0 |
C0 3E 6B E0 88 3E 18 E0 87 C9 20 90 F0 70 D6 F9 |
||
C0 C3 00 C0 |
|||
|- |
|- |
||
! scope="row"| Korean |
! scope="row"| Korean |
||
|| |
|| |
||
01 03 00 11 8A FF 21 68 DE CD C2 31 3E C9 EA 12 |
01 03 00 11 8A FF 21 68 DE CD C2 31 3E C9 EA 12 |
||
D8 AF EA 89 FF C9 C3 F2 D7 |
D8 AF EA 89 FF C9 C3 F2 D7 |
||
|} |
|} |
||