aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--6502.h16
1 files changed, 6 insertions, 10 deletions
diff --git a/6502.h b/6502.h
index 0ef18fe..3b68ac5 100644
--- a/6502.h
+++ b/6502.h
@@ -127,9 +127,9 @@ typedef enum
} C6502FlagRegister;
-/* Disassembly label -- only useful if ENABLE_DISASSEMBLER is set.
- Labels are stored as an array, where a NULL in the label field marks
- the end of the list.
+/* Labels are stored as an array, where a NULL in the label field marks
+ the end of the list. Each entry in the list is simply a mapping from
+ an address to a symbolic name.
*/
typedef struct
{
@@ -144,13 +144,9 @@ typedef struct
/* Initialises the processor.
*/
-#ifdef ENABLE_ARRAY_MEMORY
-C6502 *C6502Init(void);
-#else
C6502 *C6502Init(C6502ReadMemory read_memory,
C6502WriteMemory write_memory,
C6502ReadMemory read_for_disassem);
-#endif
/* Resets the processor.
@@ -209,11 +205,11 @@ void C6502SetTimer(C6502 *cpu, C6502Timer timer, C6502Val cycles);
/* Set address to label mappings for the disassembler
*/
-void C6502SetLabels(C6502Label labels[]);
+void C6502SetLabels(C6502 *cpu, C6502Label labels[]);
-/* Simple disassembly of memory accessed through read_for_disassem, or
- C6502_MEMORY as appropriate. addr is updated on exit.
+/* Simple disassembly of memory accessed through read_for_disassem.
+ addr is updated on exit with the next opcode to disassemble.
*/
const char *C6502Disassemble(C6502 *cpu, C6502Word *addr);