All FORTH-83-Standard words are included here that are not in the dpANS already. Though most of the "uncontrolled reference words" are omitted.
2+ ( i -- i )
2- ( i -- i )
?TERMINAL ( -- flag )
COMPILE word ( )
INVERT ( value -- value' )
VOCABULARY name ( -- )
<MARK ( -- DP-mark )
compile-only
<RESOLVE ( DP-mark -- )
compile-only
MARK> ( -- DP-mark )
compile-only
RESOLVE> ( DP-mark -- )
compile-only
((ELSE)) ( -- )
?BRANCH
CONTEXT
CURRENT
--> ( -- )
no-return
INTERPRET
K ( -- counter-val )
OCTAL ( -- )
SP@ ( -- )
!BITS ( bits addr mask -- )
@BITS ( addr mask -- value )
>< ( a -- a' )
>MOVE< ( from-addr to-addr count -- )
** ( a b -- r )
DPL
SEAL ( -- )
BODY> ( pfa -- cfa )
>LINK ( cfa -- lfa )
LINK> ( lfa -- cfa )
>NAME ( cfa -- nfa )
NAME> ( nfa -- cfa )
L>NAME ( lfa -- nfa )
N>LINK ( nfa -- lfa )
>FFA ( nfa -- ffa )
FFA> ( ffa -- nfa )
CASE-SENSITIVE-VOC ( -- )
SEARCH-ALSO-VOC ( -- )
2+ ( i -- i )
simulate: : 2+ 2 + ;
reference: p4_two_plus in ../src/forth-83.c:0044, export CO 2+
2- ( i -- i )
simulate: : 2- 2 - ;
reference: p4_two_minus in ../src/forth-83.c:0054, export CO 2-
?TERMINAL ( -- flag )
KEY
reference: p4_key_question in ../src/facility.c:0060, export CO ?TERMINAL
COMPILE word ( )
[COMPILE]
POSTPONE
simulate: : COMPILE R> DUP @ , CELL+ >R ; ( not immediate !!! )
reference: p4_compile in ../src/forth-83.c:0067, export CS COMPILE
INVERT ( value -- value' )
NEGATE
reference: p4_invert in ../src/core.c:1344, export CO NOT
VOCABULARY name ( -- )
((VOCABULARY))
CASE-SENSITIVE-VOC
SEARCH-ALSO-VOC
simulate: : VOCABULARY CREATE ALLOT-WORDLIST DOES> ( the ((VOCABULARY)) runtime ) CONTEXT ! ; IMMEDIATE
reference: p4_vocabulary in ../src/forth-83.c:0096, export CO VOCABULARY
<MARK ( -- DP-mark )
compile-only DP
<RESOLVE
BEGIN
AHEAD
simulate: : <MARK ?COMP HERE ;
reference: p4_backward_mark in ../src/forth-83.c:0165, export CO <MARK
<RESOLVE ( DP-mark -- )
compile-only <MARK
BRANCH
?BRANCH
UNTIL
simulate: : <RESOLVE ?COMP , ;
reference: p4_backward_resolve in ../src/forth-83.c:0179, export CO <RESOLVE
MARK> ( -- DP-mark )
compile-only RESOLVE>
BRANCH
?BRANCH
IF
ELSE
simulate: : MARK> ?COMP HERE 0 , ;
reference: p4_forward_mark in ../src/forth-83.c:0198, export CO MARK>
RESOLVE> ( DP-mark -- )
compile-only MARK>
THEN
simulate: : RESOLVE> ?COMP HERE SWAP ! ;
reference: p4_forward_resolve in ../src/forth-83.c:0210, export CO RESOLVE>
((ELSE)) ( -- )
ELSE
BRANCH
reference: p4_else_execution in ../src/forth-83.c:0156, export CO BRANCH
?BRANCH
reference: p4_if_execution in ../src/forth-83.c:0155, export CO ?BRANCH
CONTEXT
SEARCH
ORDER
VOCABULARY
ALSO
DEFINITIONS
reference: context in ../src/forth-83.c:0482, export DV CONTEXT
CURRENT
SEARCH
ORDER
VOCABULARY
ALSO
DEFINITIONS
reference: current in ../src/forth-83.c:0483, export DV CURRENT
--> ( -- )
no-return BLK
INCLUDE
reference: p4_next_block in ../src/forth-83.c:0231, export CI -->
INTERPRET
INTERPRET
EVALUATE
QUIT
example: : QUIT (COLD) BEGIN CR QUERY INTERPRET ?STACK OK REPEAT ;
reference: p4_interpret in doc-pfe.cdoc:0072, export CO INTERPRET
K ( -- counter-val )
I
J
reference: p4_k in ../src/forth-83.c:0240, export CO K
OCTAL ( -- )
BASE
HEX
DECIMAL
simulate: : OCTAL 8 BASE ! ;
reference: p4_octal in ../src/forth-83.c:0250, export CO OCTAL
SP@ ( -- )
: DUP SP@ @ ;
reference: p4_s_p_fetch in ../src/forth-83.c:0260, export CO SP@
!BITS ( bits addr mask -- )
simulate: : !BITS >R 2DUP @ R NOT AND SWAP R> AND OR SWAP ! DROP ;
reference: p4_store_bits in ../src/forth-83.c:0277, export CO !BITS
@BITS ( addr mask -- value )
!BITS
simulate: : @BITS SWAP @ AND ;
reference: p4_fetch_bits in ../src/forth-83.c:0339, export CO @BITS
>< ( a -- a' )
reference: p4_byte_swap in ../src/forth-83.c:0302, export CO ><
>MOVE< ( from-addr to-addr count -- )
MOVE
reference: p4_byte_swap_move in ../src/forth-83.c:0318, export CO >MOVE<
** ( a b -- r )
reference: p4_power in ../src/forth-83.c:0290, export CO **
DPL
DPL
>NUMBER
reference: dpl in doc-pfe.cdoc:0063, export DV DPL
SEAL ( -- )
reference: p4_seal in ../src/forth-83.c:0353, export CO SEAL
BODY> ( pfa -- cfa )
implementation-specific simulation: : BODY> CELL - ;
reference: p4_body_from in ../src/forth-83.c:0392, export CO BODY>
>LINK ( cfa -- lfa )
reference: p4_to_link in ../src/forth-83.c:0381, export CO >LINK
LINK> ( lfa -- cfa )
reference: p4_link_from in ../src/forth-83.c:0412, export CO LINK>
>NAME ( cfa -- nfa )
implementation-specific simulation: : >NAME >LINK L>NAME ;
reference: p4_to_name in ../src/forth-83.c:0372, export CO >NAME
NAME> ( nfa -- cfa )
implementation-specific simulation: : NAME> N>LINK LINK> ;
reference: p4_name_from in ../src/forth-83.c:0403, export CO NAME>
L>NAME ( lfa -- nfa )
reference: p4_l_to_name in ../src/forth-83.c:0421, export CO L>NAME
N>LINK ( nfa -- lfa )
implementation-specific configure-dependent simulation: : N>LINK C@ + ;
reference: p4_n_to_link in ../src/forth-83.c:0432, export CO N>LINK
>FFA ( nfa -- ffa )
implementation-specific configure-dependent simulation: : FFA 1- ;
reference: p4_to_ffa in ../src/forth-83.c:0444, export CO >FFA
FFA> ( ffa -- nfa )
implementation-specific configure-dependent simulation: : FFA 1+ ;
reference: p4_ffa_from in ../src/forth-83.c:0458, export CO FFA>
CASE-SENSITIVE-VOC ( -- )
CONTEXT
VOCABULARY
example: VOCABULARY MY-VOC MY-VOC CASE-SENSITIVE-VOC
reference: p4_case_sensitive_voc in ../src/forth-83.c:0109, export CO CASE-SENSITIVE-VOC
SEARCH-ALSO-VOC ( -- )
CONTEXT
CURRENT
CURRENT
VOCABULARY
CONTEXT
FIND
CURRENT_DELETED
CURRENT
VOCABULARY
example:MY-VOC DEFINITIONS MY-VOC-PRIVATE SEARCH-ALSO-VOC
reference: p4_search_also_voc in ../src/forth-83.c:0124, export CO SEARCH-ALSO-VOC