- ☒ Completed
- ☑ Partial (TODO)
- kernel.f
create
immediate
compile
(non-standard)interact
(non-standard);
pushx
(non-standard)popx
(non-standard)literal
,
'
(
- bootstrap.f
:
x
(non-standard, register number)d
(non-standard, register number)zero
(non-standard, register number)y
(non-standard, register number)z
(non-standard, register number)[
]
cp,
(non-standard, assembly)popxy
(non-standard)pushxy
(non-standard)xor,
(non-standard, assembly)swap
ldc,
(non-standard, assembly)ld,
(non-standard, assembly)st,
(non-standard, assembly)in,
(non-standard, assembly)out,
(non-standard, assembly)inc,
(non-standard, assembly)dec,
(non-standard, assembly)add,
(non-standard, assembly)sub,
(non-standard, assembly)mul,
(non-standard, assembly)div,
(non-standard, assembly)mod,
(non-standard, assembly)and,
(non-standard, assembly)or,
(non-standard, assembly)not,
(non-standard, assembly)shl,
(non-standard, assembly)shr,
(non-standard, assembly)beq,
(non-standard, assembly)bne,
(non-standard, assembly)bgt,
(non-standard, assembly)bge,
(non-standard, assembly)blt,
(non-standard, assembly)ble,
(non-standard, assembly)jump,
(non-standard, assembly)call,
(non-standard, assembly)exec,
(non-standard, assembly)ret,
(non-standard, assembly)halt,
(non-standard, assembly)read,
(non-standard, assembly)write,
(non-standard, assembly)+
-
*
/
mod
2*
2/
and
or
xor
invert
1+
1-
execute
halt
(non-standard)read
(non-standard)write
(non-standard)drop
dup
over
nip
tuck
-rot
(non-standard)rot
true
false
key
emit
cr
space
@
!
here
_dp+6
(non-standard, internal)constant
variable
allot
if
else
then
=
<>
>
<
>=
(non-standard)<=
(non-standard)negate
(duplicated in prelude)abs
(duplicated in prelude)2dup
(duplicated in prelude)/mod
(duplicated in prelude)_sign
(non-standard, internal)_dig
(non-standard, internal)_digemit
(non-standard, internal).
begin
until
again
>r
r>
r@
_do
(non-standard, internal)do
_loop0
(non-standard, internal)_loop1
(non-standard, internal)loop
i
j
[:
(non-standard):]
(non-standard)call
(non-standard)
- prelude-interpreter.f & prelude-machine.f
2dup
(duplicated in bootstrap)2drop
min
max
within
negate
(duplicated in bootstrap)abs
(duplicated in bootstrap)+!
/mod
(duplicated in bootstrap)factorial
(non-standard)
- ☑
CREATE
(TODO: return data field address) - ☒
IMMEDIATE
- ☒
;
- ☒
LITERAL
- ☒
,
- ☒
'
- ☒
(
- ☒
:
- ☒
[
- ☒
\]
- ☒
SWAP
- ☒
+
- ☒
-
- ☒
*
- ☒
/
- ☒
MOD
- ☒
2*
- ☒
2/
- ☒
AND
- ☒
OR
- ☒
XOR
- ☒
INVERT
- ☒
1+
- ☒
1-
- ☒
EXECUTE
- ☒
DROP
- ☒
2DROP
- ☒
DUP
- ☒
OVER
- ☒
2DUP
- ☒
ROT
- ☑
KEY
(TODO: Interactive keys) - ☒
EMIT
- ☒
CR
- ☒
SPACE
- ☒
@
- ☒
!
- ☒
HERE
- ☒
CONSTANT
- ☒
VARIABLE
- ☒
ALLOT
- ☒
IF
- ☒
ELSE
- ☒
THEN
- ☒
=
- ☒
<
- ☒
>
- ☒
NEGATE
- ☒
ABS
- ☒
/MOD
- ☒
.
- ☒
BEGIN
- ☒
UNTIL
- ☒
>R
- ☒
R>
- ☒
R@
- ☒
DO
- ☒
LOOP
- ☒
I
- ☒
J
- ☒
MIN
- ☒
MAX
- ☒
+!
- ☒
0<
- ☒
0=
- ☐
#
- ☐
#>
- ☐
#S
- ☐
*/
- ☐
*/MOD
- ☐
+LOOP
- ☐
."
- ☐
2!
- ☐
2@
- ☐
2OVER
- ☐
2SWAP
- ☐
<#
- ☐
>BODY
- ☐
>IN
- ☐
>NUMBER
- ☐
?DUP
- ☐
ABORT
- ☐
ABORT"
- ☐
ACCEPT
- ☐
ALIGN
- ☐
ALIGNED
- ☐
BASE
- ☐
BL
- ☐
C!
- ☐
C,
- ☐
C@
- ☐
CELL+
- ☐
CELLS
- ☐
CHAR
- ☐
CHAR+
- ☐
CHARS
- ☐
COUNT
- ☐
DECIMAL
- ☐
DEPTH
- ☐
DOES>
- ☐
ENVIRONMENT?
- ☐
EVALUATE
- ☐
EXIT
- ☐
FILL
- ☐
FIND
- ☐
FM/MOD
- ☐
HOLD
- ☐
LEAVE
- ☐
LSHIFT
- ☐
M*
- ☐
MOVE
- ☐
POSTPONE
- ☐
QUIT
- ☐
RECURSE
- ☐
REPEAT
- ☐
RSHIFT
- ☐
S"
- ☐
S>D
- ☐
SIGN
- ☐
SM/REM
- ☐
SOURCE
- ☐
SPACES
- ☐
STATE
- ☐
TYPE
- ☐
U.
- ☐
U<
- ☐
UM*
- ☐
UM/MOD
- ☐
UNLOOP
- ☐
WHILE
- ☐
WORD
- ☐
[']
- ☐
[CHAR]
-
☒
NIP
-
☒
TUCK
-
☒
TRUE
-
☒
FALSE
-
☒
<>
-
☒
0<>
-
☒
0>
-
☒
AGAIN
-
☒
WITHIN
-
☐ [
.(](https://forth-standard.org/standard/
core/Dotp) -
☐
.R
-
☐
2>R
-
☐
2R>
-
☐
2R@
-
☐
:NONAME
-
☐
?DO
-
☐
BUFFER:
-
☐
C"
-
☐
CASE
-
☐
COMPILE,
-
☐
DEFER
-
☐
DEFER!
-
☐
DEFER@
-
☐
ENDCASE
-
☐
ENDOF
-
☐
ERASE
-
☐
HEX
-
☐
HOLDS
-
☐
IS
-
☐
MARKER
-
☐
OF
-
☐
PAD
-
☐
PARSE
-
☐
PICK
-
☐
REFILL
-
☐
ROLL
-
☐
S\"
-
☐
TO
-
☐
U.R
-
☐
U>
-
☐
UNUSED
-
☐
VALUE
-
☐
\