65 lines
1.6 KiB
Plaintext
65 lines
1.6 KiB
Plaintext
==========================================
|
|
VIRTUAL MACHINE TEXT DOCUMENTATION
|
|
==========================================
|
|
|
|
INTRODUCTION
|
|
Commands coding with use 2 bytes.
|
|
|
|
|
|
COMMANDS
|
|
----------------------------
|
|
[0x00] - FUNCTIONS
|
|
----------------------------
|
|
*0x00 {MODE:1} {FUNCT_CODE:4}
|
|
MODE : 0x00 - Default; 0x1F - Cached.
|
|
Main function is 0x00 0x00 0x00 0x00 0x00 0x00.
|
|
--
|
|
*0x01 {FUNCT_CODE:4}
|
|
Ender of function
|
|
--
|
|
0xF0 {MODE:1} {FUNCT_CODE:4}
|
|
MODE : 0x00 - Not write result in stack; 0xFF - Write return result into stack
|
|
Call function.
|
|
----------------------------
|
|
[0x01] - STACK
|
|
----------------------------
|
|
0x00 {MODE:1}
|
|
MODE : 0x00 - Ignore errors if stack size is 0; 0xFF - Raising error if stack size is 0.
|
|
Remove item from stack.
|
|
--
|
|
*0x01 {SIZE:1} {DATA:(SIZE)}
|
|
Add N (256 max) bytes in stack.
|
|
--
|
|
0x02 {SIZE:1} {DATA:(SIZE)}
|
|
Edit stack data with resize stack.
|
|
--
|
|
0x03 {SIZE:1} {DATA:(SIZE)}
|
|
Edit first N bytes on needs data. If stack is overflowed, raising error.
|
|
|
|
|
Example:
|
|
0x01 0x03 0x02 0x8C 0xA1 (Replace first 2 bytes of hightly stack data on (8C A1))
|
|
----------------------------
|
|
[0x02] - HEAP CONTROL
|
|
----------------------------
|
|
|
|
----------------------------
|
|
[0x04] - SYSTEM INPUT-OUTPUT
|
|
----------------------------
|
|
|
|
----------------------------
|
|
[0x05] - CALL LIBRARIES
|
|
----------------------------
|
|
|
|
----------------------------
|
|
[0x06] - LOCAL_VARIABLES
|
|
----------------------------
|
|
0x00 {IGNORE_ERRORS:1}
|
|
IGNORE_ERRORS : 0x00 - Ignore 0xFF - Not ignore
|
|
Create new local variable (link to current sp)
|
|
--
|
|
0x01 {VARS_COUNT}
|
|
Allocate variable area
|
|
----------------------------
|
|
[0xFF] - EXTENSIONS OF COMMANDS
|
|
----------------------------
|