[][src]Crate codebreaker

Encrypt and decrypt cheat codes for all versions of CodeBreaker PS2.

Uses cb1 and cb7 under the hood to support both CB v1 and v7 codes.

Quick Start

use codebreaker::Codebreaker;

let input: Vec<(u32, u32)> = vec![
    (0x2043AFCC, 0x2411FFFF),
    (0x2A973DBD, 0x00000000),
    (0xB4336FA9, 0x4DFEFB79),
    (0x973E0B2A, 0xA7D4AF10),
];
let output: Vec<(u32, u32)> = vec![
    (0x2043AFCC, 0x2411FFFF),
    (0x201F6024, 0x00000000),
    (0xBEEFC0DE, 0x00000000),
    (0x2096F5B8, 0x000000BE),
];

let mut cb = Codebreaker::new();
for (i, code) in input.iter().enumerate() {
    assert_eq!(output[i], cb.auto_decrypt_code(code.0, code.1));
}

Modules

cb1

Encrypt and decrypt cheat codes for CodeBreaker PS2 v1 - v6.

cb7

Encrypt and decrypt cheat codes for CodeBreaker PS2 v7+.

Structs

Codebreaker

A processor for CB v1 and v7 codes.