Crate disasm6502[][src]

Disasm6502 - a 6502 disassembler crate.

A crate providing functionality to disassemble 6502 binary code. Supports decoding of forbidden instructions, provides information about cycle count, which registers the instruction accesses and which status flags are affected. Acceptable data input can be either an array of bytes, a vector of bytes or a binary file.

Quick Start

extern crate disasm6502;

fn main()
{
    let bytes = vec![0x05, 0x0B, 0x6C, 0x01, 0x02,
                     0x0A, 0xA2, 0xFF, 0x20, 0x02,
                     0xFD, 0x78, 0xD0, 0xFC, 0x1D,
                     0x05, 0x1E, 0x04, 0x15, 0x02,
                     0x96, 0xAB, 0x58, 0x61, 0x01,
                     0x91, 0xFB];

    // disassemble...
    let instructions = disasm6502::from_array(&bytes).unwrap();

    // ...and print!
    for i in instructions.iter() {
        println!("{}", i);
    }
}

Modules

error

Error type for disasm6502 crate.

instruction

Decoded 6502 instruction.

Functions

from_addr_array

Disassembles data from array of bytes using a custom start address.

from_addr_file

Disassembles data from binary file using a custom start address.

from_array

Disassembles data from array of bytes using $0000 as start address.

from_file

Disassembles data from binary file using $0000 as start address.