Virtual CPU with assembler tool chain, emulator and Forth compiler included
Find a file
2023-03-31 15:13:01 +02:00
examples Fix some instructions starting with digits being lexed as numbers 2023-03-31 15:13:01 +02:00
hence Make 'pop' operation safe 2023-03-31 14:36:00 +02:00
henceforth Fix some instructions starting with digits being lexed as numbers 2023-03-31 15:13:01 +02:00
presentation Update after a long time! 2023-03-23 17:59:10 +01:00
.gitignore Update after a long time! 2023-03-23 17:59:10 +01:00
Cargo.lock Fix some instructions starting with digits being lexed as numbers 2023-03-31 15:13:01 +02:00
Cargo.toml Update after a long time! 2023-03-23 17:59:10 +01:00
README.md Add README.md 2023-03-24 21:35:06 +01:00

hence

Virtual CPU with Assembler and Emulator.

Architecture

Memory mapping

Start End Name Description
0x0000 0x8000 PRG (Program) ROM of program binary
0x8000 0x9fff ST (Stack) RAM used as stack
0xa000 0xbfff MEM (Memory) Generic RAM
0xc000 OUT (Out) Writes value as decimal number to standard output when trying to be overwritten
0xc001 CHR (Char) Writes value as UTF-8 char to standard output when trying to be overwritten
0xc002 KEY (Key) Waits for key press and returns UTF-8 value of it when trying to be read from

Registers

Hex Name Description
0x1 PC (Program counter) Address of current instruction
0x2 OPC Opcode of current instruction

TODO