CodeBreaker Code Info ID: 0000xxxx 000y x: ROM CRC y: 2 disables IRQs, 8 indicates CRC Exists Hook: 1xxxxxxx 000y x: ROM offset y: Code handler store address 0-7 (0x8000100+(y<<22)) OR: 2xxxxxxx yyyy x: RAM address y: Value 8-bit: 3xxxxxxx 00yy x: RAM address y: New value Slide: 4xxxxxxx yyyy x: Starting RAM address y: New value YYYYzzzz XXXX X: Address increment Y: Value increment z: Number of writes MemWrite: 5xxxxxxx zzzz x: Starting RAM address z: Number of writes yyyyyyyy yyyy y: New 8-bit values AND: 6xxxxxxx yyyy x: RAM address y: Value If =: 7xxxxxxx yyyy x: RAM address y: Value 16-bit: 8xxxxxxx yyyy x: RAM address y: New value If !=: Axxxxxxx yyyy x: RAM address y: Value If >: Bxxxxxxx yyyy x: RAM address y: Value If <: Cxxxxxxx yyyy x: RAM address y: Value If Input: D0000020 yyyy y: Input value 001 A 002 B 004 Select 008 Start 010 Right 020 Left 040 Up 080 Down 100 R 200 L Plus: Exxxxxxx yyyy x: RAM address y: Signed value If AND: Fxxxxxxx yyyy x: RAM address y: Value Action Replay v3 Code Info EOF: 00000000 00000000 ID: xxxxxxxx 001DC0DE x: ROM ID (AGB-xxxx in ASCII) Slowdown: 00000000 0800xx00 x: Number of AR loops EndIf 00000000 40000000 Else 00000000 60000000 8-bit fill: 00xxxxxx zzzzzzyy x: Start RAM address y: New value z: Number of writes 16-bit fill: 02xxxxxx zzzzyyyy x: Start RAM address y: New value z: Number of writes 32-bit: 04xxxxxx yyyyyyyy x: RAM address y: New value Indirect 8-bit fill: 40xxxxxx zzzzzzyy x: Start RAM address y: New value z: Number of writes Indirect 16-bit fill: 42xxxxxx zzzzyyyy x: Start RAM address y: New value z: Number of writes Indirect 32-bit: 44xxxxxx yyyyyyyy x: RAM address y: New value 8-bit plus: 80xxxxxx 000000yy x: RAM address y: Value 16-bit plus: 82xxxxxx 0000yyyy x: RAM address y: Value 32-bit plus: 84xxxxxx yyyyyyyy x: RAM address y: Value Hook: C4xxxxxx 00000abc x: ROM address a: If set, AR switch must be off when game starts b: Number of codes AR processes at once c: If set, push r14 when BL'ing 16-bit I/O: C6xxxxxx 0000yyyy x: I/O offset y: New value 32-bit I/O: C7xxxxxx yyyyyyyy x: I/O offset y: New value If: zzxxxxxx yyyyyyyy x: RAM Address y: Value z: [Size]+[Operand]+[Action] [Size] [Operand] [Action] 00 8-bit 08 = 00 Execute next code 02 16-bit 10 != 40 Execute next two codes 04 32-bit 18 < signed 80 Execute following codes until Else or EndIf 06 0-bit 20 > signed C0 Execute following codes 28 < 30 > 38 AND 8-bit AR button: 00000000 10xxxxxx x: RAM address 000000yy 00000000 y: New value 16-bit AR button: 00000000 12xxxxxx x: RAM address 0000yyyy 00000000 y: New value 32-bit AR button: 00000000 14xxxxxx x: RAM address yyyyyyyy 00000000 y: New value ROM patch 0: 00000000 18xxxxxx x: ROM offset>>1 0000yyyy 00000000 y: New value ROM patch 1: 00000000 1Axxxxxx x: ROM offset>>1 0000yyyy 00000000 y: New value ROM patch 2: 00000000 1Cxxxxxx x: ROM offset>>1 0000yyyy 00000000 y: New value ROM patch 3: 00000000 1Exxxxxx x: ROM offset>>1 0000yyyy 00000000 y: New value 8-bit slide: 00000000 80xxxxxx x: Starting RAM address 000000yy YYzzXXXX X: Address increment y: New value Y: Value increment z: Number of writes 16-bit slide: 00000000 82xxxxxx x: Starting RAM address 0000yyyy YYzzXXXX X: Address increment y: New value Y: Value increment z: Number of writes 32-bit slide: 00000000 84xxxxxx x: Starting RAM address yyyyyyyy YYzzXXXX X: Address increment y: New value Y: Value increment z: Number of writes