├── .gitignore ├── Makefile ├── README.md ├── _programs ├── Makefile ├── README.md ├── ascii.asm ├── ascii.bin ├── brush.asm ├── brush.bin ├── me.asm ├── me.bin ├── screenshots │ ├── ascii.png │ ├── brush.png │ ├── me.png │ └── text-writer.png ├── text-writer.asm └── text-writer.bin ├── alu ├── alu.go └── alu_test.go ├── asm ├── assembler.go ├── instructions.go ├── instructions_test.go ├── markers.go ├── parse_test.go └── parser.go ├── circuit ├── gates.go ├── gates_test.go └── wires.go ├── cmd ├── assembler │ ├── README.md │ └── main.go ├── generator │ ├── common.go │ └── main.go └── simulator │ ├── glfw_io.go │ └── main.go ├── components ├── adder.go ├── adder_test.go ├── big_gates.go ├── big_gates_test.go ├── bus.go ├── components.go ├── components_test.go ├── decoders.go ├── decoders_test.go ├── iobus.go ├── register.go ├── register_test.go ├── stepper.go ├── stepper_test.go ├── storage.go └── storage_test.go ├── computer └── computer.go ├── cpu ├── cpu.go └── cpu_test.go ├── go.mod ├── go.sum ├── io ├── display.go ├── display_ram.go ├── keyboard.go ├── keyboard_test.go └── peripheral.go ├── memory ├── memory.go └── memory_test.go └── utils └── common.go /.gitignore: -------------------------------------------------------------------------------- 1 | bin/ 2 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/README.md -------------------------------------------------------------------------------- /_programs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/Makefile -------------------------------------------------------------------------------- /_programs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/README.md -------------------------------------------------------------------------------- /_programs/ascii.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/ascii.asm -------------------------------------------------------------------------------- /_programs/ascii.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/ascii.bin -------------------------------------------------------------------------------- /_programs/brush.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/brush.asm -------------------------------------------------------------------------------- /_programs/brush.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/brush.bin -------------------------------------------------------------------------------- /_programs/me.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/me.asm -------------------------------------------------------------------------------- /_programs/me.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/me.bin -------------------------------------------------------------------------------- /_programs/screenshots/ascii.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/screenshots/ascii.png -------------------------------------------------------------------------------- /_programs/screenshots/brush.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/screenshots/brush.png -------------------------------------------------------------------------------- /_programs/screenshots/me.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/screenshots/me.png -------------------------------------------------------------------------------- /_programs/screenshots/text-writer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/screenshots/text-writer.png -------------------------------------------------------------------------------- /_programs/text-writer.asm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/text-writer.asm -------------------------------------------------------------------------------- /_programs/text-writer.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/_programs/text-writer.bin -------------------------------------------------------------------------------- /alu/alu.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/alu/alu.go -------------------------------------------------------------------------------- /alu/alu_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/alu/alu_test.go -------------------------------------------------------------------------------- /asm/assembler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/assembler.go -------------------------------------------------------------------------------- /asm/instructions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/instructions.go -------------------------------------------------------------------------------- /asm/instructions_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/instructions_test.go -------------------------------------------------------------------------------- /asm/markers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/markers.go -------------------------------------------------------------------------------- /asm/parse_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/parse_test.go -------------------------------------------------------------------------------- /asm/parser.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/asm/parser.go -------------------------------------------------------------------------------- /circuit/gates.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/circuit/gates.go -------------------------------------------------------------------------------- /circuit/gates_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/circuit/gates_test.go -------------------------------------------------------------------------------- /circuit/wires.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/circuit/wires.go -------------------------------------------------------------------------------- /cmd/assembler/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/assembler/README.md -------------------------------------------------------------------------------- /cmd/assembler/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/assembler/main.go -------------------------------------------------------------------------------- /cmd/generator/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/generator/common.go -------------------------------------------------------------------------------- /cmd/generator/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/generator/main.go -------------------------------------------------------------------------------- /cmd/simulator/glfw_io.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/simulator/glfw_io.go -------------------------------------------------------------------------------- /cmd/simulator/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cmd/simulator/main.go -------------------------------------------------------------------------------- /components/adder.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/adder.go -------------------------------------------------------------------------------- /components/adder_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/adder_test.go -------------------------------------------------------------------------------- /components/big_gates.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/big_gates.go -------------------------------------------------------------------------------- /components/big_gates_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/big_gates_test.go -------------------------------------------------------------------------------- /components/bus.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/bus.go -------------------------------------------------------------------------------- /components/components.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/components.go -------------------------------------------------------------------------------- /components/components_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/components_test.go -------------------------------------------------------------------------------- /components/decoders.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/decoders.go -------------------------------------------------------------------------------- /components/decoders_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/decoders_test.go -------------------------------------------------------------------------------- /components/iobus.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/iobus.go -------------------------------------------------------------------------------- /components/register.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/register.go -------------------------------------------------------------------------------- /components/register_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/register_test.go -------------------------------------------------------------------------------- /components/stepper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/stepper.go -------------------------------------------------------------------------------- /components/stepper_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/stepper_test.go -------------------------------------------------------------------------------- /components/storage.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/storage.go -------------------------------------------------------------------------------- /components/storage_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/components/storage_test.go -------------------------------------------------------------------------------- /computer/computer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/computer/computer.go -------------------------------------------------------------------------------- /cpu/cpu.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cpu/cpu.go -------------------------------------------------------------------------------- /cpu/cpu_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/cpu/cpu_test.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/go.sum -------------------------------------------------------------------------------- /io/display.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/io/display.go -------------------------------------------------------------------------------- /io/display_ram.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/io/display_ram.go -------------------------------------------------------------------------------- /io/keyboard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/io/keyboard.go -------------------------------------------------------------------------------- /io/keyboard_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/io/keyboard_test.go -------------------------------------------------------------------------------- /io/peripheral.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/io/peripheral.go -------------------------------------------------------------------------------- /memory/memory.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/memory/memory.go -------------------------------------------------------------------------------- /memory/memory_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/memory/memory_test.go -------------------------------------------------------------------------------- /utils/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/djhworld/simple-computer/HEAD/utils/common.go --------------------------------------------------------------------------------