Virtual CPU with assembler tool chain, emulator and Forth compiler included
forth | ||
lib | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
hence
Registers
Name | Description | Size |
---|---|---|
pc |
Program counter | |
opc |
||
Opcodes
Index | Name | Description | Arguments |
---|---|---|---|
0x00 |
nop |
No operation | |
0x01 |
push |
Push to stack | |
0x02 |
pop |
Pops top of stack | |
0x03 |
ts |
Store value into tmp |
|
0x04 |
tsr |
Store register's value into tmp |
|
0x05 |
tss |
Stores top of stack into tmp |
|
0x06 |
tlr |
Load tmp 's value into register |
|
0x07 |
tlrc |
Same as tlr but only executes if register a 's first bit is 1 |
|
0x08 |
tls |
Push value of tmp to stack |
|
0x09 |
ld |
Loads top of stack into register | |
0x0a |
dbg |
Debug | |
0x0b |
alu |
Runs ALU with tmp 's value as operator |
|
0x0c |
get |
Sets tmp to memory at address in tmp |
|
0x0d |
set |
Sets memory to value at specific address |