The Action Replay is a device originally made by Datel. It came in two versions from Datel, the Pro Action Replay and the Action Replay Plus(which included 1 Megabyte of additional RAM onboard).
EMS later cloned the Action Replay and produced their own Pro Action Replay, Action Replay Plus, as well as a revised version of the Action Replay Plus called the Action Replay 4M Plus(which had 4 Megabytes of RAM instead of 1 Megabyte). EMS later removed the DB-25 connector, and even later the chips and logic that drives the DB-25 connector. Flash has also been increased to 512KB.
Regular Code Types
|0??????? abcd||16 bit word write at bootup.|
|1??????? abcd||Continuous 16 bit word write.|
|3??????? 00ab||Continuous 8 bit byte write.|
|D??????? abcd||Activate all other codes only when address 0??????? contains the value 'abcd'|
Master Code Types
|B??????? 0000||Specify address for Action Replay handler code and cached cheat codes|
|F??????? abcd||Patch address 0??????? with abcd as part of initial code setup.|
- This code just specifies where the actual action replay handler and codes are located. If this code isn't present, the default location will be 0x060FF000.
- What this code is meant for is to patch the address specified with an instruction that's used to call the action replay handler when running a game. So for example, the default master code "F6000914 C305" writes 0xC305 to 0x06000914. 0xC305 is a "trapa #5" instruction(basically it causes the interrupt function at vector 0x5 to be run). 0x06000914 is the location of the default interrupt handler. So basically we're patching the interrupt handler so it'll call the action replay handler every time there's an interrupt.