The CodeBreaker has gone through more major versions than most other devices, but there is only one starkly distinct division starting with Version 7. CodeBreaker Versions 1 - 6 were based on Fire's Xploder software and use a fairly simple encryption, and a fairly standard code set. From version 7 onward, Pelican, the company that distributes the CodeBreaker had the software written in-house. It uses a much more complex encryption, and a slightly expanded code set.
All versions of the CodeBreaker support unencrypted codes. It is not necessary for you to encrypt codes for use with. However, you cannot mix inputs if there are codes using the Version 7+ encryption in the list. You can mix unencrypted and Version 1+ encryption all you want, but Version 7 must be used exclusively if it is to be used at all. (There is an off-code that will allow you to use unencrypted or Version 1 encrypted codes in the list, but its functionality can be shaky.)
The CodeBreaker submenu
The CodeBreaker has two distinct encryptions. You can use the simplest one, available since Version 1, by selecting the Version 1+ (All v7 Keys) from the CodeBreaker submenu. This will encrypt or decrypt the codes using the old encryption, unless a key code is in the list. CodeBreaker key codes begin with the value BEEFC0DE followed by a set of seed values. The most common one used is BEEFC0DE 00000000.
In most cases, you'll be selecting this menu item to encrypt or decrypt to and from the older encryption, unless you have a master code in the list. Typically, the master code contains the key code, and the key code will be encrypted using the Version 1 encryption. Remaining codes in the list will use the Version 7 encryption specified by the key code.
CodeBreaker 7+ (Common Key)
Currently, there is only one key code in use with version 7, and choosing the Version 7+ (Common Key) menu item sets up Omniconvert to decrypt or encrypt using this key, without requiring a key code in the list. This is just a shortcut that allows you to decrypt codes without needing to enter the key code every time. If you need complete freedom with the key code, select the All v7 Keys option instead.
CodeBreaker's Supported Code Types
When codes are translated to and from CodeBreaker, it assumed you have at least a version 7 device. Version 7+ supports the greatest number of code types, allowing for the best compatibility. However, this does mean that if you still own a version 6 or lower device, some codes still may not work properly in your device, even after translation. The ideal solution is to upgrade your device, but for the vast majority of codes, it is not necessary.
Code Type | Version 1-6 | Version 7+ | Comment |
8-bit write (0) | Yes | Yes | Single address only. |
16-bit write (1) | Yes | Yes | Single address only. |
32-bit write (2) | Yes | Yes | Single address only. |
Increment/Decrement (3) | Yes | Yes | 8, 16, or 32-bits indicated by type switch. |
32-bit Multi-Address Write (4) | Partial | Yes | Until version 7, a value increment was not supported. Also, some early versions have a bug with values higher than EFFFFFFF. |
Copy Bytes (5) | Yes | Yes | |
Pointer Write (6) | Partial | Yes | 8, 16, or 32-bits indicated by type switch. Until version 7, only one pointer was supported, and the command had a different format, and only 16 or 32-bit writes were supported. |
Bitwise Operations (7) | No | Yes | Size and operation, OR, XOR, AND, indicated by type switch. |
Master Test Command (8) | Unknown | Yes | |
Conditional Hook (9) | Version 6 | Yes | |
Master Write (A) | No | Yes | |
Timer (B) | Yes | Yes | |
Enable All Test (C) | Unknown | Yes | Equality only. |
Single Line Test (D) | Partial | Yes | Version 1-6 supports equal, unequal, less than, and greater than tests. Version 7 adds AND tests to check specific bits. |
Multi-Line Test (E) | Partial | Yes | See Single-Line Test. |
Unconditional Hook (F) | Yes | Yes | Version 7 requires entrypoint address. |