The Structure of I-Code: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 1,181: | Line 1,181: | ||
|Becomes SQRT() in the Code | |Becomes SQRT() in the Code | ||
|- | |- | ||
! AC |INT() |I-Code/Editor |Byte/Integer | ! AC | ||
|INT() | |||
|I-Code/Editor | |||
|Byte/Integer | |||
|- | |- | ||
! AD |INT() |I-Code/Editor |Real | ! AD | ||
|INT() | |||
|I-Code/Editor | |||
|Real | |||
|- | |- | ||
! AE |FIX() |I-Code/Editor |Byte/Integer | ! AE | ||
|FIX() | |||
|I-Code/Editor | |||
|Byte/Integer | |||
|- | |- | ||
! AF |FIX() |I-Code/Editor |Real | ! AF | ||
|FIX() | |||
|I-Code/Editor | |||
|Real | |||
|- | |- | ||
! B0 |FLOAT() |I-Code/Editor |Byte/Integer | ! B0 | ||
|FLOAT() | |||
|I-Code/Editor | |||
|Byte/Integer | |||
|- | |- | ||
! B1 |FLOAT() |I-Code/Editor |Real | ! B1 | ||
|FLOAT() | |||
|I-Code/Editor | |||
|Real | |||
|- | |- | ||
! B2 |SQ() |I-Code/Editor |Byte/Integer | ! B2 | ||
|SQ() | |||
|I-Code/Editor | |||
|Byte/Integer | |||
|- | |- | ||
! B3 |SQ() |I-Code/Editor |Real | ! B3 | ||
|SQ() | |||
|I-Code/Editor | |||
|Real | |||
|- | |- | ||
! B4 |PEEK() |I-Code/Editor | | ! B4 | ||
|PEEK() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! B5 |LNOT() |I-Code/Editor |Logical NOT | ! B5 | ||
|LNOT() | |||
|I-Code/Editor | |||
|Logical NOT | |||
|- | |- | ||
! B6 |VAL() |I-Code/Editor | | ! B6 | ||
|VAL() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! B7 |LEN() |I-Code/Editor | | ! B7 | ||
|LEN() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! B8 |ASC() |I-Code/Editor | | ! B8 | ||
|ASC() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! B9 |LAND() |I-Code/Editor |Logical AND | ! B9 | ||
|LAND() | |||
|I-Code/Editor | |||
|Logical AND | |||
|- | |- | ||
! BA |LOR() |I-Code/Editor |Logical OR | ! BA | ||
|LOR() | |||
|I-Code/Editor | |||
|Logical OR | |||
|- | |- | ||
! BB |LXOR() |I-Code/Editor |Logical XOR | ! BB | ||
|LXOR() | |||
|I-Code/Editor | |||
|Logical XOR | |||
|- | |- | ||
! BC |TRUE |I-Code/Editor | | ! BC | ||
|TRUE | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! BD |FALSE |I-Code/Editor | | ! BD | ||
|FALSE | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! BE |EOF() |I-Code/Editor | | ! BE | ||
|EOF() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! BF |TRIM$() |I-Code/Editor | | ! BF | ||
|TRIM$() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C0 |MID$() |I-Code/Editor | | ! C0 | ||
|MID$() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C1 |LEFT$() |I-Code/Editor | | ! C1 | ||
|LEFT$() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C2 |RIGHT$() |I-Code/Editor | | ! C2 | ||
|RIGHT$() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C3 |CHR$() |I-Code/Editor | | ! C3 | ||
|CHR$() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C4 |STR$() |I-Code/Editor |Byte/Integer | ! C4 | ||
|STR$() | |||
|I-Code/Editor | |||
|Byte/Integer | |||
|- | |- | ||
! C5 |STR$() |I-Code/Editor |Real | ! C5 | ||
|STR$() | |||
|I-Code/Editor | |||
|Real | |||
|- | |- | ||
! C6 |DATE$ |I-Code/Editor | | ! C6 | ||
|DATE$ | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C7 |TAB |I-Code/Editor | | ! C7 | ||
|TAB | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! C8 |<ritc> |I-Code/Editor |Real->Byte/Integer Type Conversion | ! C8 | ||
|<ritc> | |||
|I-Code/Editor | |||
|Real->Byte/Integer Type Conversion | |||
|- | |- | ||
! C8 |<fix1> |I-Code/Editor |Fix Top of Stack | ! C8 | ||
|<fix1> | |||
|I-Code/Editor | |||
|Fix Top of Stack | |||
|- | |- | ||
! C9 |<fix2> |I-Code/Editor |Fix Second on Stack | ! C9 | ||
|<fix2> | |||
|I-Code/Editor | |||
|Fix Second on Stack | |||
|- | |- | ||
! CA |<fix3> |I-Code/Editor |Fix Third on Stack | ! CA | ||
|<fix3> | |||
|I-Code/Editor | |||
|Fix Third on Stack | |||
|- | |- | ||
! CB |<irtc> |I-Code/Editor |Byte/Integer->Real Type Conversion | ! CB | ||
|<irtc> | |||
|I-Code/Editor | |||
|Byte/Integer->Real Type Conversion | |||
|- | |- | ||
! CB |<flt1> |I-Code/Editor |Float Top of Stack | ! CB | ||
|<flt1> | |||
|I-Code/Editor | |||
|Float Top of Stack | |||
|- | |- | ||
! CC |<flt2> |I-Code/Editor |Float Second on Stack | ! CC | ||
|<flt2> | |||
|I-Code/Editor | |||
|Float Second on Stack | |||
|- | |- | ||
! CD |NOT() |I-Code/Editor | | ! CD | ||
|NOT() | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! CE |- |I-Code/Editor |(Monadic) Negate Byte/Integer | ! CE | ||
| - | |||
|I-Code/Editor | |||
|(Monadic) Negate Byte/Integer | |||
|- | |- | ||
! CF |- |I-Code/Editor |(Monadic) Negate Real | ! CF | ||
| - | |||
|I-Code/Editor | |||
|(Monadic) Negate Real | |||
|- | |- | ||
! D0 |AND |I-Code/Editor | | ! D0 | ||
|AND | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! D1 |OR |I-Code/Editor | | ! D1 | ||
|OR | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! D2 |XOR |I-Code/Editor | | ! D2 | ||
|XOR | |||
|I-Code/Editor | |||
| | |||
|- | |- | ||
! D3 |> |I-Code/Editor |Byte/Integer Comparison Operator | ! D3 | ||
|> | |||
|I-Code/Editor | |||
|Byte/Integer Comparison Operator | |||
|- | |- | ||
! D4 |> |I-Code/Editor |Real Comparison Operator | ! D4 | ||
|> | |||
|I-Code/Editor | |||
|Real Comparison Operator | |||
|- | |- | ||
! D5 |> |I-Code/Editor |String Comparison Operator | ! D5 | ||
|> | |||
|I-Code/Editor | |||
|String Comparison Operator | |||
|- | |- | ||
! D6 |< |I-Code/Editor |Byte/Integer Comparison Operator | ! D6 | ||
|< | |||
|I-Code/Editor | |||
|Byte/Integer Comparison Operator | |||
|- | |- | ||
! D7 |< |I-Code/Editor |Real Comparison Operator | ! D7 | ||
|< | |||
|I-Code/Editor | |||
|Real Comparison Operator | |||
|- | |- | ||
! D8 |< |I-Code/Editor |String Comparison Operator | ! D8 | ||
|< | |||
|I-Code/Editor | |||
|String Comparison Operator | |||
|- | |- | ||
! D9 |<> |I-Code/Editor |Byte/Integer Comparison Operator >< is converted to <> in the code | ! D9 | ||
|<> | |||
|I-Code/Editor | |||
|Byte/Integer Comparison Operator >< is converted to <> in the code | |||
|- | |- | ||
! DA |<> |I-Code/Editor |Real Comparison Operator >< is converted to <> in the code | ! DA | ||
|<> | |||
|I-Code/Editor | |||
|Real Comparison Operator >< is converted to <> in the code | |||
|- | |- | ||
! DB |<> |I-Code/Editor |String Comparison Operator >< is converted to <> in the code | ! DB | ||
|<> | |||
|I-Code/Editor | |||
|String Comparison Operator >< is converted to <> in the code | |||
|- | |- | ||
! DC |<> |I-Code/Editor |Boolean Comparison Operator >< is converted to <> in the code | ! DC | ||
|<> | |||
|I-Code/Editor | |||
|Boolean Comparison Operator >< is converted to <> in the code | |||
|- | |- | ||
! DD |= |I-Code/Editor |Byte/Integer Comparison Operator | ! DD | ||
|= | |||
|I-Code/Editor | |||
|Byte/Integer Comparison Operator | |||
|- | |- | ||
! DE |= |I-Code/Editor |Real Comparison Operator | ! DE | ||
|= | |||
|I-Code/Editor | |||
|Real Comparison Operator | |||
|- | |- | ||
! DF |= |I-Code/Editor |String Comparison Operator | ! DF | ||
|= | |||
|I-Code/Editor | |||
|String Comparison Operator | |||
|- | |- | ||
! E0 |= |I-Code/Editor |Boolean Comparison Operator | ! E0 | ||
|= | |||
|I-Code/Editor | |||
|Boolean Comparison Operator | |||
|- | |- | ||
! E1 |>= |I-Code/Editor |Byte/Integer Greater/Equal Operator | ! E1 | ||
|>= | |||
|I-Code/Editor | |||
|Byte/Integer Greater/Equal Operator | |||
|- | |- | ||
! E2 |>= |I-Code/Editor |Real Greater/Equal Operator | ! E2 | ||
|>= | |||
|I-Code/Editor | |||
|Real Greater/Equal Operator | |||
|- | |- | ||
! E3 |>= |I-Code/Editor |String Greater/Equal Operator | ! E3 | ||
|>= | |||
|I-Code/Editor | |||
|String Greater/Equal Operator | |||
|- | |- | ||
! E4 |<= |I-Code/Editor |Byte/Integer Less/Equal Operator | ! E4 | ||
|<= | |||
|I-Code/Editor | |||
|Byte/Integer Less/Equal Operator | |||
|- | |- | ||
! E5 |<= |I-Code/Editor |Real Less/Equal Operator | ! E5 | ||
|<= | |||
|I-Code/Editor | |||
|Real Less/Equal Operator | |||
|- | |- | ||
! E6 |<= |I-Code/Editor |String Less/Equal Operator | ! E6 | ||
|<= | |||
|I-Code/Editor | |||
|String Less/Equal Operator | |||
|- | |- | ||
! E7 |+ |I-Code/Editor |Byte/Integer Add Operator | ! E7 | ||
|+ | |||
|I-Code/Editor | |||
|Byte/Integer Add Operator | |||
|- | |- | ||
! E8 |+ |I-Code/Editor |Real Add Operator | ! E8 | ||
|+ | |||
|I-Code/Editor | |||
|Real Add Operator | |||
|- | |- | ||
! E9 |+ |I-Code/Editor |String Concantenate Operator | ! E9 | ||
|+ | |||
|I-Code/Editor | |||
|String Concantenate Operator | |||
|- | |- | ||
! EA |- |I-Code/Editor |Byte/Integer Subtract Operator (Dyadic) | ! EA | ||
| - | |||
|I-Code/Editor | |||
|Byte/Integer Subtract Operator (Dyadic) | |||
|- | |- | ||
! EB |- |I-Code/Editor |Real Subtract Operator (Dyadic) | ! EB | ||
| - | |||
|I-Code/Editor | |||
|Real Subtract Operator (Dyadic) | |||
|- | |- | ||
! EC |* |I-Code/Editor |Byte/Integer Multiply Operator | ! EC | ||
|* | |||
|I-Code/Editor | |||
|Byte/Integer Multiply Operator | |||
|- | |- | ||
! ED |* |I-Code/Editor |Real Multiply Operator | ! ED | ||
|* | |||
|I-Code/Editor | |||
|Real Multiply Operator | |||
|- | |- | ||
! EE |/ |I-Code/Editor |Byte/Integer Divide Operator | ! EE | ||
|/ | |||
|I-Code/Editor | |||
|Byte/Integer Divide Operator | |||
|- | |- | ||
! EF |/ |I-Code/Editor |Real Divide Operator | ! EF | ||
|/ | |||
|I-Code/Editor | |||
|Real Divide Operator | |||
|- | |- | ||
! F0 |^ |I-Code/Editor |Exponent Operator | ! F0 | ||
|^ | |||
|I-Code/Editor | |||
|Exponent Operator | |||
|- | |- | ||
! F1 |** |I-Code/Editor |Exponent Operator | ! F1 | ||
|** | |||
|I-Code/Editor | |||
|Exponent Operator | |||
|- | |- | ||
! F2 |varm/p |I-Code/Editor |Instruction, Simple/Record, Parameter Variable Mirror | ! F2 | ||
|varm/p | |||
|I-Code/Editor | |||
|Instruction, Simple/Record, Parameter Variable Mirror | |||
|- | |- | ||
! F3 |vectorm/p |I-Code/Editor |Instruction, 1 Dimensional Array, Parameter 1 Dimensional Array Mirror | ! F3 | ||
|vectorm/p | |||
|I-Code/Editor | |||
|Instruction, 1 Dimensional Array, Parameter 1 Dimensional Array Mirror | |||
|- | |- | ||
! F4 |tablem/p |I-Code/Editor |Instruction, 2 Dimensional Array, Parameter 2 Dimensional Array Mirror | ! F4 | ||
|tablem/p | |||
|I-Code/Editor | |||
|Instruction, 2 Dimensional Array, Parameter 2 Dimensional Array Mirror | |||
|- | |- | ||
! F5 |matrixm/p |I-Code/Editor |Instruction, 3 Dimensional Array, Parameter 3 Dimensional Array Mirror | ! F5 | ||
|matrixm/p | |||
|I-Code/Editor | |||
|Instruction, 3 Dimensional Array, Parameter 3 Dimensional Array Mirror | |||
|- | |- | ||
! F6 |field |I-Code/Editor |Instruction, Field Variable | ! F6 | ||
|field | |||
|I-Code/Editor | |||
|Instruction, Field Variable | |||
|- | |- | ||
! F7 |UPDATE |Editor | | ! F7 | ||
|UPDATE | |||
|Editor | |||
| | |||
|- | |- | ||
! F7 |fvector |I-Code/Editor |Instruction, Field 1 Dimensional Array | ! F7 | ||
|fvector | |||
|I-Code/Editor | |||
|Instruction, Field 1 Dimensional Array | |||
|- | |- | ||
! F8 |EXEC |Editor | | ! F8 | ||
|EXEC | |||
|Editor | |||
| | |||
|- | |- | ||
! F8 |ftable |I-Code/Editor |Instruction, Field 2 Dimensional Array | ! F8 | ||
|ftable | |||
|I-Code/Editor | |||
|Instruction, Field 2 Dimensional Array | |||
|- | |- | ||
! F9 |DIR |Editor | | ! F9 | ||
|DIR | |||
|Editor | |||
| | |||
|- | |- | ||
! F9 |fmatrix |I-Code/Editor |Instruction, Field 3 Dimensional Array | ! F9 | ||
|fmatrix | |||
|I-Code/Editor | |||
|Instruction, Field 3 Dimensional Array | |||
|- | |- | ||
! FA | |Unused | | ! FA | ||
| | |||
|Unused | |||
| | |||
|- | |- | ||
! FB | |Unused | | ! FB | ||
| | |||
|Unused | |||
| | |||
|- | |- | ||
! FC | |Unused | | ! FC | ||
| | |||
|Unused | |||
| | |||
|- | |- | ||
! FD | |Unused | | ! FD | ||
| | |||
|Unused | |||
| | |||
|- | |- | ||
! FE | |Unused | | ! FE | ||
| | |||
|Unused | |||
| | |||
|- | |- | ||
! FF |" |I-Code/Editor |STRING Constant - Terminator | ! FF | ||
|" | |||
|I-Code/Editor | |||
|STRING Constant - Terminator | |||
|} | |} | ||
Revision as of 21:37, 27 June 2013
The 'I' in I-Code stands for Intermediate. Intermediate code is code that is a step between interpreted source statements and fully compiled machine code. Typically, intermediate code uses tokens to represent the instructions to be executed. Basic09 I-Code goes a step further by re-arranging the source code instructions in post-fix notation (also known as Reverse Polish Notation) order.
The tokens used by Basic09 are a single byte ranging from $00 to $FF. The table below defines the tokens.
I-Code Token List
| Token | Name | Used In | Description |
|---|---|---|---|
| 00 | GLOBAL | Reserved | Global Variable |
| 01 | PARAM | Editor | |
| 01 | READ | I-Code | File Mode |
| 02 | TYPE | Editor | |
| 02 | WRITE | I-Code | File Mode |
| 03 | DIM | Editor | |
| 03 | UPDATE | I-Code | File Mode |
| 04 | DATA | I-Code/Editor | |
| 04 | EXEC | I-Code | File Mode |
| 05 | STOP | I-Code/Editor | |
| 05 | READ+EXEC | I-Code | File Mode |
| 06 | BYE | I-Code/Editor | |
| 06 | WRITE+EXEC | I-Code | File Mode |
| 07 | TRON | I-Code/Editor | |
| 07 | UPDATE+EXEC | I-Code | File Mode |
| 08 | TROFF | I-Code/Editor | |
| 09 | PAUSE | I-Code/Editor | |
| 0A | DEG | I-Code/Editor | |
| 0B | RAD | I-Code/Editor | |
| 0C | RETURN | I-Code/Editor | |
| 0D | LET | I-Code/Editor | |
| 0E | <cva> | I-Code/Editor | Complex Variable Assignment |
| 0F | POKE | I-Code/Editor | |
| 10 | IF | I-Code/Editor | |
| 11 | ELSE | I-Code/Editor | |
| 12 | ENDIF | I-Code/Editor | |
| 13 | FOR | I-Code/Editor | |
| 14 | NEXT | I-Code/Editor | |
| 15 | WHILE | I-Code/Editor | |
| 16 | ENDWHILE | I-Code/Editor | |
| 17 | REPEAT | I-Code/Editor | |
| 18 | UNTIL | I-Code/Editor | |
| 19 | LOOP | I-Code/Editor | |
| 1A | ENDLOOP | I-Code/Editor | |
| 1B | EXITIF | I-Code/Editor | |
| 1C | ENDEXIT | I-Code/Editor | |
| 1D | ON | I-Code/Editor | |
| 1E | ERROR | I-Code/Editor | |
| 1F | GOTO | Editor | Unbound |
| 20 | GOTO | I-Code/Editor | Bound |
| 21 | GOSUB | Editor | Unbound |
| 22 | GOSUB | I-Code/Editor | Bound |
| 23 | RUN | I-Code/Editor | |
| 24 | KILL | I-Code/Editor | |
| 25 | INPUT | I-Code/Editor | |
| 26 | I-Code/Editor | ? Becomes PRINT in the Editor | |
| 27 | CHD | I-Code/Editor | |
| 28 | CHX | I-Code/Editor | |
| 29 | CREATE | I-Code/Editor | |
| 2A | OPEN | I-Code/Editor | |
| 2B | SEEK | I-Code/Editor | |
| 2C | READ | I-Code/Editor | |
| 2D | WRITE | I-Code/Editor | |
| 2E | GET | I-Code/Editor | |
| 2F | PUT | I-Code/Editor | |
| 30 | CLOSE | I-Code/Editor | |
| 31 | RESTORE | I-Code/Editor | |
| 32 | DELETE | I-Code/Editor | |
| 33 | CHAIN | I-Code/Editor | |
| 34 | SHELL | I-Code/Editor | |
| 35 | BASE 0 | I-Code/Editor | |
| 36 | BASE 1 | I-Code/Editor | |
| 37 | REM | Editor | ! Becomes REM in the Editor |
| 38 | (* | Editor | |
| 39 | END | I-Code/Editor | |
| 3A | <ulrf> | I-Code/Editor | Unbound Line Reference |
| 3B | <blrf> | I-Code/Editor | Bound Line Reference |
| 3C | <dex> | I-Code/Editor | Direct Execution |
| 3D | PROCEDURE | Editor | Procedure start |
| 3D | <erl> | Editor/Debug | Error Line |
| 3E | \ | I-Code/Editor | End-of-Instruction, Continue Line |
| 3F | <eol> | I-Code/Editor | End-of-Instruction and Line |
| 40 | BYTE | Editor | |
| 40 | fbyte | I-Code/Editor | VDT Entry, Field Byte Variable |
| 41 | INTEGER | Editor | |
| 41 | finteger | I-Code/Editor | VDT Entry, Field Integer Variable |
| 42 | REAL | Editor | |
| 42 | freal | I-Code/Editor | VDT Entry, Field Real Variable |
| 43 | BOOLEAN | Editor | |
| 43 | fboolean | I-Code/Editor | VDT Entry, Field Boolean Variable |
| 44 | STRING | Editor | |
| 44 | fstring | I-Code/Editor | VDT Entry, Field String Variable |
| 45 | THEN | I-Code/Editor | |
| 45 | frecord | I-Code/Editor | VDT Entry, Field Record Variable |
| 46 | TO | I-Code/Editor | |
| 47 | STEP | I-Code/Editor | |
| 48 | DO | I-Code/Editor | |
| 48 | fvectorb | I-Code/Editor | VDT Entry, Field 1 Dimensional Byte Array |
| 49 | USING | I-Code/Editor | |
| 49 | fvectori | I-Code/Editor | VDT Entry, Field 1 Dimensional Integer Array |
| 4A | : | I-Code/Editor | File Mode Operator |
| 4A | fvectorr | I-Code/Editor | VDT Entry, Field 1 Dimensional Real Array |
| 4B | , | I-Code/Editor | Comma Separator |
| 4B | fvectorl | I-Code/Editor | VDT Entry, Field 1 Dimensional Boolean Array |
| 4C | : | I-Code/Editor | Colon |
| 4C | fvectors | I-Code/Editor | VDT Entry, Field 1 Dimensional String Array |
| 4D | ( | I-Code/Editor | Left Parenthesis |
| 4D | fvectoru | I-Code/Editor | VDT Entry, Field 1 Dimensional Record Array |
| 4E | ) | I-Code/Editor | Right Parenthesis |
| 4F | [ | I-Code/Editor | Left Bracket |
| 50 | ] | I-Code/Editor | Right Bracket |
| 50 | ftableb | I-Code/Editor | VDT Entry, Field 2 Dimensional Byte Array |
| 51 | ; | I-Code/Editor | Semi-colon |
| 51 | ftablei | I-Code/Editor | VDT Entry, Field 2 Dimensional Integer Array |
| 52 | := | I-Code/Editor | Assignment Operator |
| 52 | ftabler | I-Code/Editor | VDT Entry, Field 2 Dimensional Real Array |
| 53 | = | I-Code/Editor | Assignment Operator |
| 53 | ftablel | I-Code/Editor | VDT Entry, Field 2 Dimensional Boolean Array |
| 54 | # | I-Code/Editor | Channel (Path) Number Operator |
| 54 | ftables | I-Code/Editor | VDT Entry, Field 2 Dimensional String Array |
| 55 | <ivgt> | I-Code/Editor | Invisible GOTO (used with IF) |
| 55 | ftableu | I-Code/Editor | VDT Entry, Field 2 Dimensional Record Array |
| 56 | Unused | ||
| 57 | Unused | ||
| 58 | fmatrixb | I-Code/Editor | VDT Entry, Field 3 Dimensional Byte Array |
| 59 | fmatrixi | I-Code/Editor | VDT Entry, Field 3 Dimensional Integer Array |
| 5A | fmatrixr | I-Code/Editor | VDT Entry, Field 3 Dimensional Real Array |
| 5B | fmatrixl | I-Code/Editor | VDT Entry, Field 3 Dimensional Boolean Array |
| 5C | fmatrixs | I-Code/Editor | VDT Entry, Field 3 Dimensional String Array |
| 5D | fmatrixu | I-Code/Editor | VDT Entry, Field 3 Dimensional Record Array |
| 5E | Unused | ||
| 5F | Unused | ||
| 60 | byte | I-Code/Editor | VDT entry, Byte Variable |
| 61 | integer | I-Code/Editor | VDT entry, Integer Variable |
| 62 | real | I-Code/Editor | VDT entry, Real Variable |
| 63 | boolean | I-Code/Editor | VDT entry, Boolean Variable |
| 64 | string | I-Code/Editor | VDT entry, String Variable |
| 65 | record | I-Code/Editor | VDT entry, Record Variable |
| 66 | Unused | ||
| 67 | Unused | ||
| 68 | vectorb | I-Code/Editor | VDT Entry, 1 Dimensional Byte Array |
| 69 | vectori | I-Code/Editor | VDT Entry, 1 Dimensional Integer Array |
| 6A | vectorr | I-Code/Editor | VDT Entry, 1 Dimensional Real Array |
| 6B | vectorl | I-Code/Editor | VDT Entry, 1 Dimensional Boolean Array |
| 6C | vectors | I-Code/Editor | VDT Entry, 1 Dimensional String Array |
| 6D | vectoru | I-Code/Editor | VDT Entry, 1 Dimensional Record Array |
| 6E | Unused | ||
| 6F | Unused | ||
| 70 | tableb | I-Code/Editor | VDT Entry, 2 Dimensional Byte Array |
| 71 | tablei | I-Code/Editor | VDT Entry, 2 Dimensional Integer Array |
| 72 | tabler | I-Code/Editor | VDT Entry, 2 Dimensional Real Array |
| 73 | tablel | I-Code/Editor | VDT Entry, 2 Dimensional Boolean Array |
| 74 | tables | I-Code/Editor | VDT Entry, 2 Dimensional String Array |
| 75 | tableu | I-Code/Editor | VDT Entry, 2 Dimensional Record Array |
| 76 | Unused | ||
| 77 | Unused | ||
| 78 | matrixb | I-Code/Editor | VDT Entry, 3 Dimensional Byte Array |
| 79 | matrixi | I-Code/Editor | VDT Entry, 3 Dimensional Integer Array |
| 7A | matrixr | I-Code/Editor | VDT Entry, 3 Dimensional Real Array |
| 7B | matrixl | I-Code/Editor | VDT Entry, 3 Dimensional Boolean Array |
| 7C | matrixs | I-Code/Editor | VDT Entry, 3 Dimensional String Array |
| 7D | matrixu | I-Code/Editor | VDT Entry, 3 Dimensional Record Array |
| 7E | Unused | ||
| 7F | Unused | ||
| 80 | byte | I-Code/Editor | Instruction, Simple Byte Variable |
| 80 | pbyte | I-Code/Editor | VDT Entry, Parameter Byte Variable |
| 80 | DIR | I-Code | File Mode |
| 81 | integer | I-Code/Editor | Instruction, Simple Integer Variable |
| 81 | pinteger | I-Code/Editor | VDT Entry, Parameter Integer Variable |
| 81 | READ+DIR | I-Code | File Mode |
| 82 | real | I-Code/Editor | Instruction, Simple Real Variable |
| 82 | preal | I-Code/Editor | VDT Entry, Parameter Real Variable |
| 82 | WRITE+DIR | I-Code | File Mode |
| 83 | boolean | I-Code/Editor | Instruction, Simple Boolean Variable |
| 83 | pboolean | I-Code/Editor | VDT Entry, Parameter Boolean Variable |
| 83 | UPDATE+DIR | I-Code | File Mode |
| 84 | string | I-Code/Editor | Instruction, Simple String Variable |
| 84 | pstring | I-Code/Editor | VDT Entry, Parameter String Variable |
| 84 | EXEC+DIR | I-Code | File Mode |
| 85 | record/p | I-Code/Editor | Instruction, Record, Parameter (Simple/Record) Variable |
| 85 | vector/p | I-Code/Editor | Instruction, 1 Dimensional Array, Parameter 1 Dimensional Array Variable |
| 85 | table/p | I-Code/Editor | Instruction, 2 Dimensional Array, Parameter 2 Dimensional Array Variable |
| 85 | matrix/p | I-Code/Editor | Instruction, 3 Dimensional Array, Parameter 3 Dimensional Array Variable |
| 85 | precord | I-Code/Editor | VDT Entry, Parameter Record Variable |
| 85 | READ+EXEC+DIR | I-Code | File Mode |
| 86 | vector/p | I-Code/Editor | Instruction, 1 Dimensional Array |
| 86 | WRITE+EXEC+DIR | I-Code | File Mode |
| 87 | table/p | I-Code/Editor | Instruction, 2 Dimensional Array |
| 87 | UPDATE+EXEC+DIR | I-Code | File Mode |
| 88 | matrix/p | I-Code/Editor | Instruction, 3 Dimensional Array |
| 88 | pvectorb | I-Code/Editor | VDT Entry, Parameter 1 Dimensional Byte Array |
| 89 | varm | I-Code/Editor | Instruction, Simple/Record Variable Mirror |
| 89 | pvectori | I-Code/Editor | VDT Entry, Parameter 1 Dimensional Integer Array |
| 8A | fvectorm | I-Code/Editor | VDT Entry, Field 1 Dimensional Array Mirror |
| 8A | pvectorr | I-Code/Editor | VDT Entry, Parameter 1 Dimensional Real Array |
| 8B | ftablem | I-Code/Editor | VDT Entry, Field 2 Dimensional Array Mirror |
| 8B | pvectorl | I-Code/Editor | VDT Entry, Parameter 1 Dimensional Boolean Array |
| 8C | fmatrixm | I-Code/Editor | VDT Entry, Field 3 Dimensional Array Mirror |
| 8C | pvectors | I-Code/Editor | VDT Entry, Parameter 1 Dimensional String Array |
| 8D | <blit> | I-Code/Editor | BYTE Constant (Literal) |
| 8D | pvectoru | I-Code/Editor | VDT Entry, Parameter 1 Dimensional Record Array |
| 8E | <ilit> | I-Code/Editor | INTEGER Constant (Literal) |
| 8F | <rlit> | I-Code/Editor | REAL Constant (Literal) |
| 90 | " | I-Code/Editor | STRING Constant - Beginning (Literal) |
| 90 | ptableb | I-Code/Editor | VDT Entry, Parameter 2 Dimensional Byte Array |
| 91 | $ | I-Code/Editor | Hexadecimal Constant (Literal) |
| 91 | ptablei | I-Code/Editor | VDT Entry, Parameter 2 Dimensional Integer Array |
| 92 | ADDR() | I-Code/Editor | |
| 92 | ptabler | I-Code/Editor | VDT Entry, Parameter 2 Dimensional Real Array |
| 93 | <addr> | I-Code/Editor | Second Byte of ADDR() |
| 93 | ptablel | I-Code/Editor | VDT Entry, Parameter 2 Dimensional Boolean Array |
| 94 | SIZE() | I-Code/Editor | |
| 94 | ptables | I-Code/Editor | VDT Entry, Parameter 2 Dimensional String Array |
| 95 | <size> | I-Code/Editor | Second Byte of SIZE() |
| 95 | ptableu | I-Code/Editor | VDT Entry, Parameter 2 Dimensional Record Array |
| 96 | POS() | I-Code/Editor | |
| 97 | ERR() | I-Code/Editor | |
| 98 | MOD() | I-Code/Editor | Byte/Integer |
| 98 | pmatrixb | I-Code/Editor | VDT Entry, Parameter 3 Dimensional Byte Array |
| 99 | MOD() | I-Code/Editor | Real |
| 99 | pmatrixi | I-Code/Editor | VDT Entry, Parameter 3 Dimensional Integer Array |
| 9A | RND() | I-Code/Editor | |
| 9A | pmatrixr | I-Code/Editor | VDT Entry, Parameter 3 Dimensional Real Array |
| 9B | PI | I-Code/Editor | |
| 9B | pmatrixl | I-Code/Editor | VDT Entry, Parameter 3 Dimensional Boolean Array |
| 9C | SUBSTR() | I-Code/Editor | |
| 9C | pmatrixs | I-Code/Editor | VDT Entry, Parameter 3 Dimensional String Array |
| 9D | SGN() | I-Code/Editor | |
| 9D | pmatrixu | I-Code/Editor | VDT Entry, Parameter 3 Dimensional Record Array |
| 9E | SGN() | I-Code/Editor | |
| 9F | SIN() | I-Code/Editor | |
| A0 | COS() | I-Code/Editor | |
| A0 | <subr> | I-Code/Editor | Called Subroutine Name |
| A1 | TAN() | I-Code/Editor | |
| A2 | ASN() | I-Code/Editor | |
| A3 | ACS() | I-Code/Editor | |
| A4 | ATN() | I-Code/Editor | |
| A5 | EXP() | I-Code/Editor | |
| A6 | ABS() | I-Code/Editor | |
| A7 | ABS() | I-Code/Editor | |
| A8 | LOG() | I-Code/Editor | |
| A9 | LOG10() | I-Code/Editor | |
| AA | SQRT() | I-Code/Editor | |
| AB | SQR() | I-Code/Editor | Becomes SQRT() in the Code |
| AC | INT() | I-Code/Editor | Byte/Integer |
| AD | INT() | I-Code/Editor | Real |
| AE | FIX() | I-Code/Editor | Byte/Integer |
| AF | FIX() | I-Code/Editor | Real |
| B0 | FLOAT() | I-Code/Editor | Byte/Integer |
| B1 | FLOAT() | I-Code/Editor | Real |
| B2 | SQ() | I-Code/Editor | Byte/Integer |
| B3 | SQ() | I-Code/Editor | Real |
| B4 | PEEK() | I-Code/Editor | |
| B5 | LNOT() | I-Code/Editor | Logical NOT |
| B6 | VAL() | I-Code/Editor | |
| B7 | LEN() | I-Code/Editor | |
| B8 | ASC() | I-Code/Editor | |
| B9 | LAND() | I-Code/Editor | Logical AND |
| BA | LOR() | I-Code/Editor | Logical OR |
| BB | LXOR() | I-Code/Editor | Logical XOR |
| BC | TRUE | I-Code/Editor | |
| BD | FALSE | I-Code/Editor | |
| BE | EOF() | I-Code/Editor | |
| BF | TRIM$() | I-Code/Editor | |
| C0 | MID$() | I-Code/Editor | |
| C1 | LEFT$() | I-Code/Editor | |
| C2 | RIGHT$() | I-Code/Editor | |
| C3 | CHR$() | I-Code/Editor | |
| C4 | STR$() | I-Code/Editor | Byte/Integer |
| C5 | STR$() | I-Code/Editor | Real |
| C6 | DATE$ | I-Code/Editor | |
| C7 | TAB | I-Code/Editor | |
| C8 | <ritc> | I-Code/Editor | Real->Byte/Integer Type Conversion |
| C8 | <fix1> | I-Code/Editor | Fix Top of Stack |
| C9 | <fix2> | I-Code/Editor | Fix Second on Stack |
| CA | <fix3> | I-Code/Editor | Fix Third on Stack |
| CB | <irtc> | I-Code/Editor | Byte/Integer->Real Type Conversion |
| CB | <flt1> | I-Code/Editor | Float Top of Stack |
| CC | <flt2> | I-Code/Editor | Float Second on Stack |
| CD | NOT() | I-Code/Editor | |
| CE | - | I-Code/Editor | (Monadic) Negate Byte/Integer |
| CF | - | I-Code/Editor | (Monadic) Negate Real |
| D0 | AND | I-Code/Editor | |
| D1 | OR | I-Code/Editor | |
| D2 | XOR | I-Code/Editor | |
| D3 | > | I-Code/Editor | Byte/Integer Comparison Operator |
| D4 | > | I-Code/Editor | Real Comparison Operator |
| D5 | > | I-Code/Editor | String Comparison Operator |
| D6 | < | I-Code/Editor | Byte/Integer Comparison Operator |
| D7 | < | I-Code/Editor | Real Comparison Operator |
| D8 | < | I-Code/Editor | String Comparison Operator |
| D9 | <> | I-Code/Editor | Byte/Integer Comparison Operator >< is converted to <> in the code |
| DA | <> | I-Code/Editor | Real Comparison Operator >< is converted to <> in the code |
| DB | <> | I-Code/Editor | String Comparison Operator >< is converted to <> in the code |
| DC | <> | I-Code/Editor | Boolean Comparison Operator >< is converted to <> in the code |
| DD | = | I-Code/Editor | Byte/Integer Comparison Operator |
| DE | = | I-Code/Editor | Real Comparison Operator |
| DF | = | I-Code/Editor | String Comparison Operator |
| E0 | = | I-Code/Editor | Boolean Comparison Operator |
| E1 | >= | I-Code/Editor | Byte/Integer Greater/Equal Operator |
| E2 | >= | I-Code/Editor | Real Greater/Equal Operator |
| E3 | >= | I-Code/Editor | String Greater/Equal Operator |
| E4 | <= | I-Code/Editor | Byte/Integer Less/Equal Operator |
| E5 | <= | I-Code/Editor | Real Less/Equal Operator |
| E6 | <= | I-Code/Editor | String Less/Equal Operator |
| E7 | |||
| I-Code/Editor | Byte/Integer Add Operator | ||
| E8 | |||
| I-Code/Editor | Real Add Operator | ||
| E9 | |||
| I-Code/Editor | String Concantenate Operator | ||
| EA | - | I-Code/Editor | Byte/Integer Subtract Operator (Dyadic) |
| EB | - | I-Code/Editor | Real Subtract Operator (Dyadic) |
| EC | * | I-Code/Editor | Byte/Integer Multiply Operator |
| ED | * | I-Code/Editor | Real Multiply Operator |
| EE | / | I-Code/Editor | Byte/Integer Divide Operator |
| EF | / | I-Code/Editor | Real Divide Operator |
| F0 | ^ | I-Code/Editor | Exponent Operator |
| F1 | ** | I-Code/Editor | Exponent Operator |
| F2 | varm/p | I-Code/Editor | Instruction, Simple/Record, Parameter Variable Mirror |
| F3 | vectorm/p | I-Code/Editor | Instruction, 1 Dimensional Array, Parameter 1 Dimensional Array Mirror |
| F4 | tablem/p | I-Code/Editor | Instruction, 2 Dimensional Array, Parameter 2 Dimensional Array Mirror |
| F5 | matrixm/p | I-Code/Editor | Instruction, 3 Dimensional Array, Parameter 3 Dimensional Array Mirror |
| F6 | field | I-Code/Editor | Instruction, Field Variable |
| F7 | UPDATE | Editor | |
| F7 | fvector | I-Code/Editor | Instruction, Field 1 Dimensional Array |
| F8 | EXEC | Editor | |
| F8 | ftable | I-Code/Editor | Instruction, Field 2 Dimensional Array |
| F9 | DIR | Editor | |
| F9 | fmatrix | I-Code/Editor | Instruction, Field 3 Dimensional Array |
| FA | Unused | ||
| FB | Unused | ||
| FC | Unused | ||
| FD | Unused | ||
| FE | Unused | ||
| FF | " | I-Code/Editor | STRING Constant - Terminator |