diff --git a/execute.go b/execute.go index e69de29..44db7aa 100644 --- a/execute.go +++ b/execute.go @@ -0,0 +1,40 @@ +package main + +type state struct { + register r, + memory m +} + +func step(state *S) { + +} + +const modeNone = -1 +const modeImmediate = 0 +const modeZeroPage = 1 +const modeAbsolute = 2 + +type opcode struct { + name string + code int8 + bytes int + cycles int + mode int +} + +// https://www.masswerk.at/6502/6502_instruction_set.html + +func opA1LDA(state *, opcode) { + value := s->memory + s->register.setRegister(regA, value) + +} + +func opLDA(state *s, reg, mode, arg) { +} + +opcodes := []Opcode{ + 0: opcode('BRK', 0x0, 1, 7, modeImmediate) + 1: +} + diff --git a/memory.go b/memory.go index e69de29..b2a1091 100644 --- a/memory.go +++ b/memory.go @@ -0,0 +1,4 @@ +package main + +type memory [65536]uint8 +