Homepage: Github
The 6502 instance used by default during execution.
A 6502 CPU with an extra slot for tracking the cycle count/clock ticks.
Assemble SOURCE into a bytevector and return it.
Return a list representing the current instruction. If PRINT-P is non-nil, print the current address and instruction and return NIL.
Disassemble memory from START to END.
Disassemble a given region of memory into a sexp-based format.
Call DISASM with the provided args and return its output as a string.
Step the CPU until a BRK instruction.
Get a byte from RAM at the given ADDRESS.
Set ADDRESS in *ram* to NEW-VAL.
Get a range of bytes from RAM, starting from START and stopping at END if provided.
Replace the contents of RAM, starting from START with BYTEVECTOR.
Get a word from RAM starting at the given ADDRESS.
Set ADDRESS and (1+ ADDRESS) in *ram* to NEW-VAL, little endian ordering.
If the current block has been JIT compiled, run it, otherwise JIT compile it.
Generate a non-maskable interrupt. Used for vblanking in NES.
Reset the OBJ to an initial state.
Step the CPU through the next OPCODE.