eForth1
v2.4
|
Functions | |
void | _init () |
void | _yield () |
More... | |
void | _qrx () |
More... | |
void | _txsto () |
More... | |
void | _ummod () |
(udl udh u – ur uq) unsigned double divided by a single More... | |
void | _out (U16 p, U16 v) |
U8 | BGET (U16 d) |
U16 | GET (U16 d) |
void | SET (U16 d, U16 v) |
void EfVM::_init | ( | ) |
Forth Virtual Machine primitive functions
virtual machine initializer
setup control variables
FORTH_UVAR_ADDR; 'TIB console input buffer pointer BASE current radix for numeric ops CP, top of dictionary, same as HERE CONTEXT name field of last word LAST, same as CONTEXT 'MODE eval mode (interpreter or compiler) 'ABORT exception rescue handler (QUIT) tmp storage (alternative to return stack)
setup Forth user variables
fetch cold boot vector
display init prompt
void EfVM::_yield | ( | ) |
yield to interrupt service
serve interrupt routines
void EfVM::_qrx | ( | ) |
( – c ) fetch a char from console
console IO functions
fetch from IO stream
void EfVM::_txsto | ( | ) |
(c – ) send a char to console
void EfVM::_ummod | ( | ) |
(udl udh u – ur uq) unsigned double divided by a single
CC: auto variable uses C stack
remainder
quotient
IU EfVM::IP |
instruction pointer, IU is 16-bit, opcode is 8-bit
IU EfVM::W |
work register, IU is 16-bit
DU* EfVM::DS |
data stack pointer, Dr. Ting's stack
DU* EfVM::RS |
return stack pointer, Dr. Ting's rack
DU EfVM::top |
ALU (i.e. cached top of stack value)
DU EfVM::rtop |
cached loop counter on return stack
IU EfVM::IR |
interrupt service routine
PGM_P EfVM::_rom |
ROM, Forth word stored in Arduino Flash Memory.
U8 * EfVM::_ram |
RAM, memory block for user define dictionary.
U8* EfVM::_pre |
Pre-built/embedded Forth code.
Stream * EfVM::io |
Stream IO interface.