| Word | Type | Stack Signature | Description | Location |
| dup | CODEWORD | ( x -- x x ) | duplicate TOS | arm/words/dup.s:2 | |
| ?dup | CODEWORD | ( x -- x x | 0 ) | duplicate TOS if it is not zero | arm/words/q-dup.s:2 | |
| swap | CODEWORD | ( x1 x2 -- x2 x1 ) | swap top 2 cells on the stack | arm/words/swap.s:2 | |
| over | CODEWORD | ( x1 x2 -- x1 x2 x1 ) | copy NOS to the top | arm/words/over.s:2 | |
| drop | CODEWORD | ( x -- ) | drop TOS | arm/words/drop.s:2 | |
| rot | CODEWORD | (x1 x2 x3 -- x2 x3 x1) | rotate top 3 cells on stack left, 3OS becomes TOS | arm/words/rot.s:3 | |
| -rot | CODEWORD | (x1 x2 x3 -- x3 x1 x2) | rotate top 3 cells on stack right, TOS becomes 3OS | arm/words/m-rot.s:1 | |
| tuck | CODEWORD | ( x1 x2 -- x2 x1 x2 ) | insert TOS below 2nd cell of the stack | arm/words/tuck.s:2 | |
| nip | CODEWORD | ( x1 x2 -- x2 ) | drop NOS | arm/words/nip.s:2 | |
| pick | CODEWORD | ( xu .. x1 x0 u -- xu ... x1 x0 xu ) | copy u-th stack cell to the top | arm/words/pick.s:2 | |
| 2dup | CODEWORD | ( d - d d ) | duplicate top 2 cells on the stack | arm/words/2dup.s:1 | |
| 2swap | CODEWORD | ( d1 d2 -- d2 d1 ) | swap top two cell pairs on the stack | arm/words/2swap.s:1 | |
| 2over | CODEWORD | ( d1 d2 -- d1 d2 d1 ) | copy 2nd cell pair to the top of the stack | arm/words/2over.s:1 | |
| 2drop | CODEWORD | ( d -- ) | drop top cell pair from the stack | arm/words/2drop.s:1 | |
| 2rot | CODEWORD | (d1 d2 d3 -- d2 d3 d1) | rotate top 3 cell pairs on stack left, 3rd pair becomes top pair | arm/words/2rot.s:2 | |
| 2nip | CODEWORD | ( d2 d1 -- d1 ) | remove 2nd cell pair from the stack | arm/words/2nip.s:1 | |
| depth | CODEWORD | ( -- n ) | n is current dept of the data stack | arm/words/stack.s:2 | |
| ?stack | COLON | ( -- ) | throw if stack depth is negative | core/words/q-stack.s:2 | |
| sp0 | USER | ( -- addr ) | storage address of initial data stack pointer | arm/words/sp.s:20 | |
| sp | USER | ( -- addr ) | storage address of data stack pointer | arm/words/sp.s:17 | |
| sp! | CODEWORD | ( addr -- ) | set data stack pointer to addr | arm/words/sp.s:10 | |
| sp@ | CODEWORD | ( -- addr ) | addr is current data stack pointer | arm/words/sp.s:2 | |
| rdrop | CODEWORD | (R: x -- ) | drop top of the return stack | arm/words/stack.s:19 | |
| rdepth | CODEWORD | ( -- n ) | n is current dept of the return stack | arm/words/stack.s:10 | |
| rp | USER | ( -- addr ) | storage address of return stack pointer | arm/words/rp.s:17 | |
| rp! | CODEWORD | ( addr -- ) | set return stack pointer to addr | arm/words/rp.s:10 | |
| rp@ | CODEWORD | ( -- addr ) | addr is current return stack pointer | arm/words/rp.s:2 | |
| r@ | CODEWORD | (R: x -- x )( -- x ) | copy top of return stack to data stack | arm/words/r-fetch.s:2 | |
| r> | CODEWORD | (R: x -- )( -- x ) | move top of return stack to data stack | arm/words/r-from.s:2 | |
| >r | CODEWORD | ( x -- )(R: -- x) | move TOS to return stack | arm/words/to-r.s:2 | |
| nr> | CODEWORD | (R: xu .. x1 u -- )( -- xu .. x1 u ) | move u items from return stack to data stack | arm/words/n_r_from.s:1 | |
| n>r | CODEWORD | ( xu .. x1 u -- ) (R: -- xu .. x1 u) | move u items from data stack to return stack | arm/words/n_to_r.s:1 | |
| 2r> | CODEWORD | (R: d -- )( -- d ) | move top 2 cells from return stack to data stack | arm/words/2r-from.s:1 | |
| 2>r | CODEWORD | ( d -- )(R: -- d ) | move top two cells from data stack to return stack | arm/words/2to-r.s:1 | |
| 2r@ | CODEWORD | (R: d -- d )( -- d ) | copy top 2 cells from return stack to data stack | arm/words/2r-fetch.s:1 | |
| ldrop | COLON | (L: x -- ) | remove TOS from leave stack | core/words/lstack.s:37 | |
| ldepth | COLON | ( -- n ) | n is current depth of the leave stack | core/words/lstack.s:45 | |
| l@ | COLON | ( -- x ) (L: x -- x ) | copy TOS from leave stack to data stack | core/words/lstack.s:20 | |
| l> | COLON | ( -- x ) (L: x -- ) | move TOS from leave stack to data stack | core/words/lstack.s:9 | |
| >l | COLON | ( x -- )(L: -- x ) | move TOS from data stack to leave stack | core/words/lstack.s:27 | |
| 2l@ | COLON | ( -- x2 x1 ) (L: x1 x2 -- x1 x2 ) | copy cell pair from top of leave stack to data stack | core/words/lstack.s:63 | |
| 2l> | COLON | ( -- x2 x1 ) (L: x1 x2 -- ) | move cell pair from top of leave stack to data stack | core/words/lstack.s:53 | |
| 2>l | COLON | ( x1 x2 -- )(L: -- x2 x1 ) | move cell pair from top of data stack to leave stack | core/words/lstack.s:74 | |
| lp | VARIABLE | | leave stack pointer | core/words/lstack.s:6 | |
| lp0 | VALUE | RAM_upper_leavestack | start of the leave stack | core/words/lstack.s:3 | |
| Word | Type | Stack Signature | Description | Location |
| ! | CODEWORD | ( x addr -- ) | [addr] = x; store word x at addr | arm/words/store.s:2 | |
| @ | CODEWORD | (addr -- x) | x = [addr]; load word at addr | arm/words/fetch.s:2 | |
| h! | CODEWORD | ( x addr -- ) | [addr] = half(x); store halfword x to addr | arm/words/memory.s:54 | |
| h@ | CODEWORD | ( addr -- x ) | x = half([addr]); load halfword at addr | arm/words/memory.s:47 | |
| c! | CODEWORD | ( c addr -- ) | [addr] = byte(c); store byte c to addr | arm/words/memory.s:38 | |
| c@ | CODEWORD | ( addr -- c ) | c = byte([addr]); load byte at addr | arm/words/memory.s:31 | |
| +! | CODEWORD | ( n addr -- ) | [addr] = [addr] + n; add n to the word at addr | arm/words/memory.s:20 | |
| fill | CODEWORD | ( addr n c -- ) | fill n bytes from addr with c | arm/words/memory.s:3 | |
| move | CODEWORD | ( addr1 addr2 n -- ) | copy n bytes from addr1 to addr2 | arm/words/move.s:2 | |
| 2@ | COLON | ( a -- x1 x2 ) | x1 = [a+cellsize], x2 = [a] | core/words/2fetch.s:2 | |
| 2! | COLON | ( x1 x2 a -- ) | [a] = x2, [a+cellsize] = x1 | core/words/2store.s:2 | |
| char+ | CODEALIAS | 1PLUS | | core/words/char-plus.s:11 | |
| chars | IMMED | ( n1 -- n2 ) | n2 = n1 * char-size (1) | core/words/chars.s:2 | |
| cells | CODEWORD | ( n1 -- n2 ) | n2 = n1 * cellsize | arm/words/cells.s:1 | |
| cell | CONSTANT | cellsize | | core/words/num-constants.s:11 | |
| cell- | CODEWORD | ( n1 -- n2 ) | n2 = n1 - cellsize | arm/words/cell-minus.s:1 | |
| cell+ | CODEWORD | ( n1 -- n2 ) | n2 = n1 + cellsize | arm/words/cell-plus.s:1 | |
| align | COLON | | align RAM space to cell size | core/words/align.s:4 | |
| here | COLON | | return address of next free space in RAM | core/words/here.s:3 | |
| allot | COLON | ( u -- ) | allocate u bytes in RAM | core/words/allot.s:3 | |
| aligned | COLON | | | core/words/aligned.s:12 | |
| >ram | COLON | | compile new words to RAM | core/words/here.s:40 | |
| >flash | COLON | | compile new words to flash | core/words/here.s:27 | |
| memmode | VALUE | 0 | 0 compile to RAM, -1 compile to FLASH | core/words/memmode.s:3 | |
| valign | COLON | ( -- ) | align VP to cell boundary in variable RAM pool | core/words/valign.s:3 | |
| vhere | COLON | ( -- addr ) | return variable pool pointer VP | core/words/vhere.s:3 | |
| vallot | COLON | ( u -- ) | allocate u bytes from the variable RAM pool | core/words/vallot.s:3 | |
| vp | PVALUE | vp0 | RAM pool pointer | core/words/ramhere.s:7 | |
| vp.max | CONSTANT | vp.max | end of the RAM pool | core/words/ramhere.s:5 | |
| vp0 | CONSTANT | vp0 | start of the RAM pool | core/words/ramhere.s:3 | |
| dalign | COLON | ( -- ) | cell align dp | core/words/dalign.s:21 | |
| dhere | COLON | ( -- addr ) | return dictionary pointer | core/words/dhere.s:3 | |
| dallot | DEFER | XT_CARETDALLOT | | core/words/dallot.s:3 | |
| dp | VALUE | dp0.ram | dictionary pointer | core/words/here.s:23 | |
| dp0.ram | CONSTANT | dp0.ram | start of RAM dictionary | core/words/here.s:10 | |
| dp.ram | VALUE | dp0.ram | RAM dictionary pointer | core/words/here.s:12 | |
| dp.ram.max | CONSTANT | dp.ram.max | end of RAM dictionary | core/words/here.s:14 | |
| dp0.flash | CONSTANT | dp0.flash | initial flash dictionary pointer | core/words/here.s:17 | |
| dp.flash | VALUE | dp0.flash | flash dictionary pointer | core/words/here.s:20 | |
| up! | CODEWORD | ( addr -- ) | set the user area pointer to addr | arm/words/up.s:8 | |
| up@ | CODEWORD | ( -- addr ) | addr is the user area pointer | arm/words/up.s:2 | |
| Word | Type | Stack Signature | Description | Location |
| ." | IMMED | (C: "ccc" -- )( -- ) | compiles string into dictionary to be printed at runtime | core/words/dot-quote.s:3 | |
| s" | IMMED | (C: "ccc" -- )( -- addr u ) | compiles a string to dictionary, at runtime leaves its addr/len on stack | core/words/squote.s:3 | |
| sub-string? | COLON | ( s1 s2 -- f ) | f is true if s1 found in s2 | core/words/search.s:32 | |
| number | COLON | (addr len -- [n|d size] f) | convert a string at addr to a number | core/words/number.s:2 | |
| >number | COLON | ( ud1 c-addr1 u1 -- ud2 c-addr2 u2 ) | convert a string to a number c-addr2/u2 is the unconverted string | core/words/to-number.s:3 | |
| digit? | COLON | ( c -- [ number | ] flag ) | tries to convert a character to a number, set flag accordingly | core/words/digit-q.s:3 | |
| toupper | COLON | ( c -- C ) | if c is a lowercase letter convert it to uppercase | core/words/to-upper.s:3 | |
| /string | COLON | ( addr1 u1 n -- addr2 u2 ) | adjust string from addr1 to addr1+n, reduce length from u1 to u2 by n | core/words/slash-string.s:3 | |
| parse | COLON | ( char "ccc" -- c-addr u ) | parse string from the input buffer delimited by char | core/words/parse.s:3 | |
| parse-name | COLON | ( "name" -- s ) | parse whitespace delimited string from SOURCE | core/words/parse-name.s:3 | |
| cskip | COLON | ( addr1 n1 c -- addr2 n2 ) | skips leading occurrences of c in s1, s2 starts at the 1st non-c character | core/words/cskip.s:3 | |
| cscan | COLON | ( ca1 u1 c -- ca1 u2 ) | s2 is the longest prefix of s1 without c | core/words/cscan.s:3 | |
| search | COLON | ( s1 s2 -- s3 f ) | search s1 for s2 leaving flag and tail string s3. No match s3==s1 | core/words/search.s:3 | |
| sift | COLON | ( s1 s2 -- s3 f ) | find s1 in s2 leaving flag and tail string s3 | core/words/search.s:39 | |
| bounds | COLON | ( addr len -- addr+len addr ) | convert a string to an address range | core/words/bounds.s:2 | |
| compare | CODEWORD | ( addr1 n1 addr2 n2 -- f ) | f is true if the strings are different (based on WANT_IGNORECASE) | arm/words/compare.s:2 | |
| count | COLON | ( addr -- addr+1 n ) | get count information out of a counted string | core/words/count.s:3 | |
| cfg-recognizer | DATA | | | core/words/forth-recognizer.s:5 | |
| forth-recognizer | VALUE | PFA_CFG_RECOGNIZER | | core/words/forth-recognizer.s:3 | |
| split | COLON | | | core/words/rec-split.s:11 | |
| rectype-split | DATA | | | core/words/rec-split.s:6 | |
| rec-split | COLON | | | core/words/rec-split.s:2 | |
| rec-num | COLON | | | core/words/rec-intnum.s:13 | |
| rectype-dnum | DATA | | | core/words/rec-intnum.s:8 | |
| rectype-num | DATA | | | core/words/rec-intnum.s:3 | |
| rectype-xt | DATA | | | core/words/rec-find.s:15 | |
| rec-find | COLON | | | core/words/rec-find.s:3 | |
| rectype-null | DATA | | | core/words/rec-null.s:3 | |
| recognize | COLON | (addr len recstack -- i*x rectype-? | rectype-null ) | walk the recognizer stack | core/words/recognize.s:3 | |
| Word | Type | Stack Signature | Description | Location |
| ' | COLON | ( "name" -- xt ) | leave xt of "name" on stack | core/words/tick.s:3 | |
| c, | DEFER | ( c -- ) | append c to the dictionary | core/words/ccomma.s:3 | |
| , | DEFER | ( x -- ) | append x to the dictionary | core/words/comma.s:3 | |
| h, |
| (c,) |
| (,) |
| s, | COLON | ( addr u -- ) | append string at addr to the dictionary (with count prefix) | core/words/scomma.s:11 | |
| chkdalign | COLON | ( -- ) | check DP for cell alignment, throw if not | core/words/chkdalign.s:3 | |
| reveal | COLON | ( -- ) | makes the newest word entry visible in its wordlist | core/words/reveal.s:3 | |
| newest | DVARIABLE | | newest word created, FFA[0] and WID[1] | core/words/newest.s:3 | |
| latest | VARIABLE | | CFA/XT of the latest word being defined | core/words/latest.s:3 | |
| value | COLON | ( x "name" -- ) | create value "name" with initial of x | core/words/value.s:3 | |
| to | IMMED | ( x "name" -- ) | set value "name" to x | core/words/alto.s:10 | |
| is | IMMED | ( xt "name" -- ) | set deferred action "name" to xt | core/words/is.s:3 | |
| variable | COLON | ( "<spaces>name" -- ) | create variable definition for name | core/words/variable.s:3 | |
| constant | COLON | ( -- x )(C: x "name" -- ) | create constant "name" with value x | core/words/constant.s:3 | |
| :noname | COLON | ( -- ) | start an unnamed colon word | core/words/colon-noname.s:3 | |
| header | COLON | ( addr u wid -- ffa ) | creates header (without CF/PF) for name at addr, in wordlist wid | core/words/header.s:4 | |
| find | COLON | ( c-addr -- 0 | xt -1 | xt 1 ) | search for word matching counted string, return xt if found | core/words/find.s:3 | |
| find-xt | COLON | ( c-addr u -- 0 | xt -1 | xt 1 ) | search for word s1, return xt if found | core/words/find-xt.s:3 | |
| forget | COLON | ( "subs" -- ) | Remove most recent word matching substring from the RAM wordlist | core/words/forget.s:117 | |
| words | COLON | ( -- ) | list words visible in current search order | core/words/words.s:11 | |
| execute | CODEWORD | ( xt -- ) | execute XT at the top of the stack | arm/words/execute.s:2 | |
| evaluate | IMMED | ( a u -- ) | interpret a Forth string of length u starting at address a | core/words/evaluate.s:49 | |
| nfa>string | COLON | ( nfa -- c-addr u ) | Given NFA leave c-addr u string | core/words/dictopt-newb.s:211 | |
| nfa>xt | COLON | ( nfa -- xt ) | Given NFA find XT | core/words/dictopt-newb.s:165 | |
| lfa>ffa | COLON | ( lfa -- ffa ) | Given LFA find FFA | core/words/dictopt-newb.s:216 | |
| ffa>nfa | COLON | ( ffa -- nfa ) | Given FFA find NFA | core/words/dictopt-newb.s:226 | |
| xt>string | COLON | ( xt -- c-addr u ) | leave string associated with name of xt | core/words/xt2string.s:54 | |
| >body | COLON | ( xt -- pfa ) | given xt return pfa | core/words/to-body.s:3 | |
| ffa>string | COLON | ( ffa -- caddr u ) | Given FFA leave c-addr u string | core/words/dictopt-newb.s:238 | |
| ffa2cfa | COLON | ( ffa -- xt ) | Given FFA find XT | core/words/dictopt-newb.s:205 | |
| ffa>lfa | COLON | ( ffa -- lfa ) | Given FFA find LFA | core/words/dictopt-newb.s:221 | |
| xt>ffa | COLON | ( xt -- ffa ) | Given XT find FFA | core/words/dictopt-newb.s:231 | |
| xt>nfa | COLON | ( xt -- nfa | 0 ) | Given XT find NFA , 0 if not found, [NFA]==3 if NONAME|HEADLESS | core/words/dictopt-newb.s:94 | |
| xt>lfa | COLON | ( xt -- lfa ) | Given XT find LFA | core/words/dictopt-newb.s:247 | |
| ?ip | COLON | ( a -- f ) | is a likely to be a valid IP address | core/words/debugger.s:151 | |
| ?nfa | COLON | ( nfa -- nfa ) | nfa when nfa!=0 and [nfa]!=3 | core/words/dictopt-newb.s:182 | |
| anybranch? |
| branch? |
| colon? | COLON | ( a -- f ) | f is true if a contains XT of DOCOLON | core/words/dicthelp.s:83 | |
| codeword? |
| compile? |
| condbranch? |
| exit? | COLON | ( a -- f ) | f is true if [a] is XT of EXIT | EXITI | core/words/dicthelp.s:98 | |
| literal? |
| loop? |
| sliteral? | COLON | ( a -- f ) | f is true if a contains XT of DOSLITERAL | core/words/dicthelp.s:38 | |
| value? |
| variable? |
| xliteral? |
| ip2name | COLON | ( a -- u s true | u a false ) | convert IP a to the name of its containing word, u = a - xt (in cells) | core/words/debugger.s:211 | |
| ip2xt | COLON | ( a -- xt u true | a false ) | convert IP to the XT of its containing word, u = a - xt (in cells) | core/words/debugger.s:181 | |
| flag.table | CONSTANT | 0x100 | | core/words/flag.s:24 | |
| flag.init | CONSTANT | 0x080 | | core/words/flag.s:22 | |
| flag.defer | CONSTANT | 0x040 | | core/words/flag.s:20 | |
| flag.value | CONSTANT | 0x020 | | core/words/flag.s:18 | |
| flag.pvalue | CONSTANT | 0x200 | | core/words/flag.s:26 | |
| flag.immed | CONSTANT | 0x010 | | core/words/flag.s:16 | |
| flag.con | CONSTANT | 0x008 | | core/words/flag.s:14 | |
| flag.colon | CONSTANT | 0x004 | | core/words/flag.s:12 | |
| flag.dvar | CONSTANT | 0x002 | | core/words/flag.s:10 | |
| flag.var | CONSTANT | 0x001 | | core/words/flag.s:8 | |
| flag.code | CONSTANT | 0x000 | | core/words/flag.s:6 | |
| flag.child | CONSTANT | 0x400 | | core/words/flag.s:28 | |
| flag.header | VALUE | 0x00 | | core/words/flag.s:2 | |
| Word | Type | Stack Signature | Description | Location |
| empty.flash | COLON | ( -- ) | empty the flash dictionary | core/words/empty.s:50 | |
| empty.ram | COLON | ( -- ) | empty the RAM dictionary | core/words/empty.s:29 | |
| wordlist | COLON | ( -- wid ) | create a new, empty wordlist | core/words/wordlist.s:3 | |
| forth-wordlist | VALUE | | FFA of last word; system default wordlist | core/macros.inc | |
| ram-wordlist | VALUE | 0 | FFA of last word; words compiled into RAM at runtime | core/words/ramwordlist.s:3 | |
| core-wordlist | CONSTANT | | FFA of last word; core words compiled at build time | core/macros.inc | |
| environment | VALUE | | FFA of last word; standard environment search list | core/macros.inc | |
| arch-wordlist | VALUE | | FFA of last word; architecture specific words | core/macros.inc | |
| current | VALUE | XT_RAM_WORDLIST | current compilation wordlist | core/words/current.s:3 | |
| get-current | COLON | ( -- wid ) | get current compilation word list | core/words/current.s:6 | |
| set-current | COLON | ( wid -- ) | set current compilation word list to wid | core/words/current.s:10 | |
| wlscope | DEFER | XT_GET_CURRENT | | core/words/wlscope.s:3 | |
| search-wordlist | COLON | ( c-addr len wid -- [ 0 ] | [ xt [-1|1]] ) | searches the word list wid for the word at c-addr/len | core/words/search-wordlist.s:3 | |
| show-wordlist | COLON | ( wid -- ) | list words in wordlist wid | core/words/show-wordlist.s:3 | |
| traverse-wordlist | COLON | ( xt wid -- ) | execute xt (addr -- f) with FFA of each word in wordlist wid | core/words/traverse-wordlist.s:3 | |
| order | COLON | ( -- ) | show currently configured search order | core/words/order.s:78 | |
| cfg-order | DEFER | XT_ORDERDOTONLY | currently configured search order | core/words/order.s:16 | |
| only | COLON | ( -- ) | set search order to RAM dictionary mode | core/words/order.s:59 | |
| core | COLON | ( -- ) | set search order to core words only mode | core/words/order.s:51 | |
| forth | COLON | ( -- ) | set search order to FLASH dictionary mode | core/words/order.s:43 | |
| order.forth | DATA | | FLASH dictionary mode search order | core/words/order.s:36 | |
| order.core | DATA | | core words only search order | core/words/order.s:29 | |
| order.only | DATA | | RAM dictionary mode search order | core/words/order.s:19 | |
| previous | COLON | ( -- ) | drop first wordlist from the search order | core/words/order.s:183 | |
| set-order | COLON | ( widn ... wid1 n -- ) | set search order to the list of wids on stack | core/words/order.s:147 | |
| get-order | COLON | ( -- widn ... wid1 n ) | put wids of the search order on stack | core/words/order.s:108 | |
| order.table | NVARIABLE | 9 | | core/words/order.s:133 | |
| top> | COLON | | | core/words/order.s:10 | |
| >top | COLON | | | core/words/order.s:5 | |
| top | VALUE | 0 | | core/words/order.s:2 | |
| Word | Type | Stack Signature | Description | Location |
| : | COLON | ( "name" -- ) | create a colon word entry in the dictionary | core/words/colon.s:3 | |
| ; | IMMED | ( -- ) | finish colon word definition | core/words/semicolon.s:3 | |
| ;i | IMMED | ( -- ) | finish interrupt colon word definition | core/words/semicoloni.s:3 | |
| ( | IMMED | ( "ccc" -- ) | skip everything up to the closing bracket on the same line | core/words/l-paren.s:3 | |
| \# | IMMED | ( "ccc" -- ) | skip everything up to the end of the current line | core/words/backslash.s:12 | |
| \ | IMMED | ( "ccc" -- ) | skip everything up to the end of the current line | core/words/backslash.s:3 | |
| recurse | IMMED | (C: -- ) | compile the XT of the word currently being defined into the dictionary | core/words/recurse.s:3 | |
| postpone | IMMED | (C: "name" -- ) | append the compilation semantics of "name" to the dictionary | core/words/postpone.s:3 | |
| immediate | COLON | ( -- ) | set FFA of last created word to immediate (RAM words only) | core/words/immediate.s:40 | |
| state | VARIABLE | | true when in compilation state, false otherwise | core/words/state.s:3 | |
| create | COLON | (C: "name" -- )( -- a-addr ) | create dictionary header for name (DATA) | core/words/create.s:3 | |
| <builds | COLON | (C: "name" -- )( -- ) | build dictionary header for name | core/words/builds.s:3 | |
| builds> | COLON | (C: "name" -- )( -- ) | add exit <builds ... builds> ... does> ... ; (so SEE will work) | core/words/builds.s:79 | |
| does> | IMMED | () | compiles (does) followed by a jump and link to xdodoes | arm/words/does.s:3 | |
| char | COLON | ( "name" -- c ) | parse name return first letter | core/words/char.s:3 | |
| [ | IMMED | ( -- ) | enter interpreter mode | core/words/left-bracket.s:2 | |
| ] | COLON | ( -- ) | enter compiler mode | core/words/right-bracket.s:3 | |
| ['] | IMMED | (C: "name" -- xt ) | parse "name" to XT at compile time | core/words/brackettick.s:3 | |
| [compile] | IMMED | ( -- )(C: "name" -- ) | compile code that will append XT of "name" to the dictionary | core/words/bracketcompile.s:3 | |
| [char] | IMMED | ( -- )(C: "ccc" -- ) | compile first letter of "ccc" as literal | core/words/bracketchar.s:3 | |
| compile | COLON | ( -- ) | append the XT that follows in the calling word to the dictionary | core/words/compile.s:3 | |
| xliteral | IMMED | | | core/words/xliteral.s:3 | |
| literal | IMMED | (C: x -- ) | compile code that will append x as a literal to the dictionary | core/words/literal.s:3 | |
| 2literal | IMMED | (C: d -- ) | compile code that will append cell pair literal to the dictionary | core/words/2literal.s:3 | |
| sliteral | IMMED | (C: s -- ) | compile code that will append s as a literal to the dictionary | core/words/sliteral.s:3 | |
| Udefer! | COLON | | | core/words/udefer.s:7 | |
| Udefer@ | COLON | | | core/words/udefer.s:3 | |
| defer! | COLON | ( xt1 xt2 -- ) | stores xt1 as the xt to be executed when xt2 is called | core/words/defer-store.s:2 | |
| defer@ | COLON | ( xt1 -- xt2 ) | returns the XT associated with defer xt1 | core/words/defer-fetch.s:2 | |
| defer | COLON | ( "name" -- ) | create deferred word "name" | core/words/defer.s:3 | |
| Word | Type | Stack Signature | Description | Location |
| ?abort | COLON | ( f s -- ) | abort and type string s if f true | core/words/q-abort.s:3 | |
| abort" | IMMED | ( f -- ) | abort with the enclosed string if f is true | core/words/abort-string.s:3 | |
| abort | COLON | ( i*x -- )(R: j*x -- ) | throw EABRT exception (-1) | core/words/abort.s:3 | |
| trap.base | CONSTANT | ram_vector_base | beginning of Forth interrupt table | core/words/traps.s:5 | |
| trap! | COLON | ( xt n -- ) | TRAP: store xt at trap number n in RAM vector | core/words/traps.s:8 | |
| throw | COLON | ( n -- ) | throw exception n if n != 0 | core/words/throw.s:2 | |
| catch | COLON | ( i*x xt -- j*x 0 | i*x n ) | execute XT and check for exceptions | core/words/catch.s:6 | |
| handler | USER | USER_HANDLER | used by catch/throw | core/words/catch.s:3 | |
| exit | CODEWORD | (R: addr -- ) | loads addr into IP; compiled by exit | arm/words/exit.s:6 | |
| ahead | IMMED | ( -- )(C: -- a ) | unconditional jump past then | core/words/ahead.s:3 | |
| if | IMMED | ( f -- )(C: -- a ) | if f is false jump past else or then | core/words/if.s:3 | |
| else | IMMED | ( -- )(C: a1 -- a2 ) | jump past then | core/words/else.s:3 | |
| then | IMMED | ( -- )(C: a -- ) | ends an if, target of forward jumps | core/words/then.s:3 | |
| begin | IMMED | ( -- )(C: -- a ) | start of while/repeat, until or again loop | core/words/begin.s:3 | |
| until | IMMED | ( f -- )(C: a -- ) | if f is true jump back to begin, otherwise leave the loop | core/words/until.s:3 | |
| again | IMMED | ( -- )(C: a -- ) | unconditional jump back to begin | core/words/again.s:3 | |
| while | IMMED | ( f -- )(C: a1 -- a2 a1 ) | if f is false jump past repeat | core/words/while.s:3 | |
| repeat | IMMED | ( -- )(C: a1 a2 -- ) | unconditional jump back to begin (over while) | core/words/repeat.s:3 | |
| do | IMMED | ( n1 n2 -- )(R: -- loop-sys )(C: -- a )(L: -- 0 ) | n1=limit, n2=start do .. [+]loop | core/words/do.s:3 | |
| ?do | IMMED | ( n1 n2 -- )(R: -- | loop-sys )(C: -- a1 )(L: -- 0 a2 ) | n1=limit, n2=start ?do .. [+]loop | core/words/qdo.s:3 | |
| i | CODEWORD | ( -- n) | inner-most loop index | arm/words/i.s:2 | |
| j | CODEWORD | ( -- n) | second loop index | arm/words/j.s:2 | |
| unloop | CODEWORD | (R: loop-sys -- ) | remove loop-sys, required if you want exit the word rather then leave the loop | arm/words/unloop.s:1 | |
| leave | IMMED | ( -- )(R: loop-sys -- ) | immediately leave the current DO..LOOP | core/words/leave.s:2 | |
| loop | IMMED | ( -- )(R: loop-sys -- loop-sys | )(C: a -- )(L: i*a -- ) | update loop-sys and jump back to do/?do or exit loop | core/words/loop.s:3 | |
| +loop | IMMED | ( n -- )(R: loop-sys -- loop-sys | )(C: a -- )(L: i*a -- ) | update loop-sys with n and jump back to do/?do or exit loop | core/words/plusloop.s:3 | |
| endloop | IMMED | (C: a -- )(L: i*a -- ) | resolve all the jumps of the do..loop | core/words/endloop.s:3 | |
| match | IMMED | ( x -- x ) | test value x for match..act..end..endmatch | core/words/match.s:3 | |
| act | IMMED | ( x xt -- | x ) | apply test xt ( x -- f ) if f is t then do body | core/words/match.s:8 | |
| end | IMMED | ( -- ) | close for act in match..act..end..endmatch | core/words/match.s:21 | |
| endmatch | IMMED | ( x -- ) | close for match in match..act..end..endmatch | core/words/match.s:28 | |
| case | IMMED | ( x -- x ) | test value x for case..of..endof..endcase | core/words/case.s:3 | |
| of | IMMED | ( x n -- | x ) | if x equals n do body of..endof else leave x on stack | core/words/case.s:8 | |
| endof | IMMED | ( -- ) | close for of in of..endof | core/words/case.s:20 | |
| endcase | IMMED | ( x -- ) | close for case in case..of..endof..endcase | core/words/case.s:27 | |
| Word | Type | Stack Signature | Description | Location |
| serial-emit? |
| serial-emit |
| serial-key? |
| serial-key |
| emit? | DEFER | ( -- f ) | ready for emission? | core/words/emitq.s:2 | |
| serial-emit-pause | COLON | ( c -- ) | emit c on serial connection, pause until able | core/words/emit.s:5 | |
| emit | DEFER | ( c -- ) | emit single character, pause until able | core/words/emit.s:2 | |
| key? | DEFER | ( -- f ) | character ready to be received? | core/words/keyq.s:2 | |
| serial-key-pause | COLON | ( -- c ) | receive single character, pause until available | core/words/key.s:5 | |
| key | DEFER | ( -- c ) | receive single character, pause until available | core/words/key.s:2 | |
| tib | CODEWORD | ( -- addr ) | terminal input buffer address | arm/words/tib.s:5 | |
| #tib | VARIABLE | ( -- addr ) | [addr] is number of characters stored in TIB | arm/words/tib.s:2 | |
| >in | VARIABLE | | holds current read position in TIB | core/words/to-in.s:2 | |
| source-tib | COLON | ( -- s ) | contents of TIB | core/words/source.s:6 | |
| source | DEFER | ( -- s ) | contents of current source | core/words/source.s:3 | |
| accept | COLON | ( ca u1 -- u2 ) | receive up to u1 bytes or up to newline, store at ca; u2 is count of bytes received. | core/words/accept.s:3 | |
| refill-tib | COLON | ( -- f ) | refills TIB | core/words/refill.s:9 | |
| refill | DEFER | ( -- f ) | refills current source | core/words/refill.s:3 | |
| refill-buf-size | CONSTANT | refill_buf_size | | core/words/refill.s:6 | |
| ?crlf | COLON | ( c -- f ) | true if c is CR or LF | core/words/accept.s:44 | |
| bs | COLON | ( -- ) | emit backspace | core/words/accept.s:34 | |
| Word | Type | Stack Signature | Description | Location |
| . | COLON | ( n -- ) | print n as signed number | core/words/dot.s:3 | |
| u. | COLON | ( u -- ) | print u as unsigned | core/words/u-dot.s:3 | |
| u.r | COLON | ( u u2 -- ) | print u as unsigned, right aligned at width u2 | core/words/u-dot-r.s:3 | |
| d. | COLON | ( d -- ) | print d as signed number | core/words/d-dot.s:3 | |
| d.r | COLON | ( d u -- ) | print d as signed number, right aligned at width u | core/words/d-dot-r.s:3 | |
| ud. | COLON | ( ud -- ) | print ud as unsigned double | core/words/ud-dot.s:3 | |
| ud.r | COLON | ( ud u -- ) | print ud as unsigned number, right aligned at width u | core/words/ud-dot-r.s:3 | |
| r. | COLON | ( n -- ) | output n as 32 bit binary with crib | core/words/dump.s:95 | |
| r.. | COLON | ( n -- ) | output n as 32 bit binary | core/words/dump.s:102 | |
| hex. | COLON | ( u -- ) | output u as unsigned 32 bit hex | core/words/dump.s:82 | |
| 8x. | COLON | ( u -- ) | display u as 8 digit hex no space | core/words/dump.s:69 | |
| 2x. | COLON | ( u -- ) | display u as 2 digit hex | core/words/dump.s:59 | |
| x. | COLON | ( u -- ) | display u without trailing space | core/words/dump.s:51 | |
| .8hex | COLON | ( u -- ) | display u as 8 digit hex | core/words/dump.s:42 | |
| spaces | COLON | ( u -- ) | emit u spaces | core/words/spaces.s:3 | |
| space | COLON | ( -- ) | emit a space | core/words/space.s:3 | |
| bl | CONSTANT | 32 | space character | core/words/bl.s:3 | |
| cr | COLON | ( -- ) | emit CR then emit LF | core/words/cr.s:2 | |
| type | COLON | ( s -- ) | emit string s | core/words/type.s:3 | |
| itype | COLON | ( s -- ) | emit string s | core/words/type.s:14 | |
| base | USER | ( -- a ) | holds the number conversion radix | core/words/base.s:2 | |
| binary | COLON | ( -- ) | set base to binary | core/words/binary.s:3 | |
| hex | COLON | ( -- ) | set base to hexadecimal | core/words/hex.s:3 | |
| decimal | COLON | ( -- ) | set base to decimal | core/words/decimal.s:3 | |
| <# | COLON | ( -- ) | PNO: initialize HLD to PAD | core/words/sharp.s:3 | |
| sign | COLON | ( n -- ) | PNO: place minus at HLD if n is negative | core/words/sign.s:3 | |
| #s | COLON | ( d -- 0 ) | PNO: convert all digits until 0 (zero) is reached | core/words/sharp.s:24 | |
| # | COLON | ( d1 -- d2 ) | PNO: convert one digit | core/words/sharp.s:8 | |
| hold | COLON | ( c -- ) | PNO: prepend character to HLD, move HLD | core/words/hold.s:6 | |
| #> | COLON | ( d -- s ) | PNO: convert PNO buffer into a string | core/words/sharp.s:30 | |
| hld | VARIABLE | | PNO: holds current write position in PNO buffer | core/words/hold.s:3 | |
| pad | COLON | ( -- a ) | temporary scratch buffer (256B); a is the end | core/words/pad.s:8 | |
| Word | Type | Stack Signature | Description | Location |
| cold | CODEWORD | ( i*x -- )(R: j*y -- ) | assembler part of startup sequence, booting the VM | arm/words/cold.s:1 | |
| warm | COLON | ( -- ) | high level part of the boot sequence, VM is running | arm/words/warm.s:2 | |
| init-ram | COLON | ( -- ) | startup/reset RAM initialization | core/words/init-ram.s:3 | |
| turnkey | DEFER | ( -- i*x ) | startup/reset action | core/words/turnkey.s:3 | |
| appl-turnkey | COLON | | | arm/mcu/linux/words/appl-turnkey.s:2 | |
| quit | COLON | ( -- ) | top level frame of the VM, endless loop | core/words/quit.s:2 | |
| pause | DEFER | ( -- ) | multitasking: task switch point | core/words/pause.s:2 | |
| interpret | COLON | ( i*x -- j*x ) | interpret SOURCE word by word | core/words/interpret.s:3 | |
| ms |
| .ver | COLON | ( -- ) | show amforth version | core/words/ver.s:3 | |
| .build | ENVIRONMENT | ( -- ) | show build information | arm/mcu/linux/words/build-info.s:15 | |
| build.rev | ENVIRONMENT | ( -- addr u ) | string with build revision | arm/mcu/linux/words/build-info.s:7 | |
| build.time | ENVIRONMENT | ( -- addr u ) | string with build time | arm/mcu/linux/words/build-info.s:2 | |
| build.config | ENV_CONSTANT | ( -- u ) | build configuration flags | arm/mcu/linux/words/build-info.s:12 | |
| arch | ENV_CONSTANT | ( -- u ) | cpu architecture, 1=ARM/2=RV | arm/words/env-arch.s:1 | |
| cpu | ENVIRONMENT | ( -- addr u ) | string with cpu identifier | arm/mcu/linux/words/env-cpu.s:2 | |
| board | ENVIRONMENT | | | arm/mcu/linux/words/env-board.s:2 | |
| version | ENVIRONMENT | ( -- u ) | amforth version number | core/words/env-forthversion.s:2 | |
| name | ENVIRONMENT | ( -- s ) | amforth name | core/words/env-forthname.s:2 | |
| /user | ENVIRONMENT | ( -- u ) | size of the user area | core/words/env-usersize.s:2 | |
| set-base | COLON | | | core/words/set-base.s:6 | |
| bases | DATA | | | core/words/set-base.s:3 | |
| .ready | DEFER | XT_PROMPTREADYDEFAULT | | core/words/prompt-ready.s:3 | |
| .ok | DEFER | XT_PROMPTOKDEFAULT | | core/words/prompt-ok.s:3 | |
| .input | DEFER | XT_PROMPTINPUT_DEFAULT | | core/words/prompt-input.s:3 | |
| .error | DEFER | XT_PROMPTERROR_DEFAULT | | core/words/prompt-error.s:3 | |
| first-boot.done | COLON | ( -- ) | mark first-boot as completed | core/words/first-boot.s:11 | |
| ?first-boot | COLON | ( -- f ) | booting fresh uploaded amforth for the first time? | core/words/first-boot.s:7 | |
| first-boot.marker | CONSTANT | first_boot_marker | initial content of the first-boot page | core/words/first-boot.s:4 | |
| first-boot.start | CONSTANT | first_boot | address of the first-boot page | core/words/first-boot.s:1 | |
| Word | Type | Stack Signature | Description | Location |
| .s | COLON | ( -- ) | show data stack non-destructively | core/words/dot-s.s:3 | |
| .k | COLON | ( nN..n1 -- ) | delete all entries in stack | core/words/dot-k.s:8 | |
| .rs | COLON | ( u -- ) | print return stack (top first) skipping top u cells, use raw IP addresses | core/words/debugger.s:299 | |
| .bt | COLON | ( u -- ) | print return stack (top first) skipping top u cells, use word names | core/words/debugger.s:250 | |
| .itc | COLON | ( u1 u2 -- ) | dump u1 XTs starting from current IP u2 cells down the return stack | core/words/debugger.s:329 | |
| dump | COLON | ( a u -- ) | dump u lines of 16 bytes including [a] | core/words/dump.s:125 | |
| ?ascii | COLON | ( c -- f ) | f is true if c is printable character | core/words/dump.s:13 | |
| vdump | COLON | ( addr u -- ) | dump u bytes from addr as words | core/words/vdump.s:1 | |
| break | CODEWORD | ( -- ) | activate the debugger (if enabled) | arm/interpreter.s:41 | |
| debug+ | COLON | ( -- ) | enable debugger, break will interrupt execution | core/words/debugger.s:500 | |
| debug- | COLON | ( -- ) | disable debugger, break will do nothing | core/words/debugger.s:508 | |
| || | IMMED | ( -- ) | code after || is ignored during compilation if debugger is disabled | core/words/barbar.s:3 | |
| show | COLON | ( "name" -- ) | SHOW: List words containing substring name | core/words/show.s:254 | |
| Word | Type | Stack Signature | Description | Location |
| flash.cell | CONSTANT | flash_cell | size of the flash write cell (bytes) | core/words/flash-common.s:8 | |
| flash.page | CONSTANT | flash_page | size of the flash erase page (bytes) | core/words/flash-common.s:6 | |
| flash.erased | CONSTANT | flash_erased | value of an erased flash cell (4 bytes) | core/words/flash-common.s:10 | |
| flash.start | CONSTANT | flash.start | start of the FLASH memory region | core/words/flash-common.s:12 | |
| flash.low | CONSTANT | flash.low | start of the core dictionary in FLASH | core/words/flash-common.s:14 | |
| flash.max | CONSTANT | flash.max | end of the FLASH memory region | core/words/flash-common.s:16 | |
| flash.erase | DEFER | ( addr -- ) | erase flash page at addr | core/words/flash-common.s:28 | |
| flush | COLON | ( -- ) | force flush (write) of flash.cache | core/words/flash-common.s:57 | |
| naligned | CODEWORD | ( n a1 -- a2 ) | n = 2**u; a2 is a1 aligned (up) at n bytes | arm/words/naligned.s:3 | |
| !i | DEFER | ( x addr -- ) | write x at addr in flash | core/words/flash-common.s:21 | |
| pv.do | COLON | ( xt -- ) | run xt ( pv-xt -- f ) for every pvalue in forth-wordlist | core/words/pvalue.s:444 | |
| pv.init | COLON | ( -- ) | replay pvarena records, set pvp | core/words/pvalue.s:303 | |
| vaddr | COLON | ( "name" -- addr ) | RAM address of value "name" | core/words/pvalue.s:232 | |
| pv.store | COLON | ( x addr -- ) | update pvalue identified by RAM addr to value x | core/words/pvalue.s:204 | |
| pvp | VALUE | ( -- addr ) | address of the next free cell in active arena | core/words/pvalue.s:196 | |
| pv.reset-hard | COLON | ( -- ) | erase entire pvflash and reinitialize pvalue system | core/words/pvalue.s:457 | |
| 2!pvf | DEFER | ( x1 x2 addr -- ) | [addr] = x2, [addr+cellsize] = x1 (in the PV flash) | core/words/pvalue.s:188 | |
| pvflash.start | CONSTANT | pvflash.start | start address of PV flash | core/words/pvalue.s:183 | |
| pvflash.size | CONSTANT | pvflash.size | total size of PV flash | core/words/pvalue.s:180 | |
| pvflash.page | CONSTANT | pvflash.page | size of PV flash page (erase size) | core/words/pvalue.s:171 | |
| pvflash.cell | CONSTANT | pvflash.cell | size of PV flash cell (write size) | core/words/pvalue.s:174 | |
| pvflash.erased | CONSTANT | pvflash.erased | value of a cell in erased flash | core/words/pvalue.s:177 | |
| pvflash.erase | DEFER | ( addr -- ) | erase PV flash page at addr | core/words/pvalue.s:191 | |
| pvarena.size | CONSTANT | pvarena.size | size of pvalue arena | core/words/pvalue.s:168 | |
| pvarena.init | COLON | ( -- ) | set pvarena to whichever arena should be current | core/words/pvalue.s:241 | |
| pvarena.swap | COLON | ( -- ) | write fresh pvalues into the dormant arena and swap arenas | core/words/pvalue.s:386 | |
| pvarena.erase | COLON | ( addr -- ) | erase arena at addr | core/words/pvalue.s:348 | |
| pvarena | VALUE | ( -- addr ) | start address of the active arena | core/words/pvalue.s:199 | |
| pvarena.dormant | COLON | ( -- addr ) | start address of the dormant arena | core/words/pvalue.s:333 | |
| pvarena1 | CONSTANT | pvarena1_lower | address of pvalue arena 1 | core/words/pvalue.s:162 | |
| pvarena2 | CONSTANT | pvarena2_lower | address of pvalue arena 2 | core/words/pvalue.s:165 | |
| Word | Type | Stack Signature | Description | Location |
| argv | VARIABLE | | | arm/mcu/linux/words/linux.s:86 | |
| bye | CODEWORD | | | arm/mcu/linux/words/linux.s:66 | |
| cache-end | CONSTANT | dp.ram.max | | arm/mcu/linux/words/appl-turnkey.s:15 | |
| cache-start | CONSTANT | dp0.ram | | arm/mcu/linux/words/appl-turnkey.s:12 | |
| cacheflush | CODEWORD | ( -- ) | | arm/mcu/linux/words/linux.s:44 | |
| count0 | COLON | | | arm/mcu/linux/words/type0.s:13 | |
| hostname | ENVIRONMENT | | | arm/mcu/linux/words/linux.s:107 | |
| stdin | CODEWORD | | | arm/mcu/linux/words/linux.s:20 | |
| stdin? | COLON | | | arm/mcu/linux/words/linux.s:40 | |
| stdout | CODEWORD | | | arm/mcu/linux/words/linux.s:3 | |
| stdout? | COLON | | | arm/mcu/linux/words/linux.s:15 | |
| syscall | CODEWORD | ( r0 r1 r2 r3 r4 r5 Syscall# -- r0 ) | | arm/mcu/linux/words/linux.s:72 | |
| type0 | COLON | | | arm/mcu/linux/words/type0.s:2 | |
| uname | COLON | | | arm/mcu/linux/words/linux.s:99 | |
| Word | Type | Stack Signature | Description | Location |
| (aligned) | CODEWORD | ( c-addr -- a-addr ) | | arm/words/do-aligned.s:2 | |
| (create) | COLON | (C: "name" -- ) | parse name, write header, set newest | core/words/do-create.s:3 | |
| (does) | COLON | (R: addr -- ) | addr of the synthetic jump after (does), stored in child's CFA | arm/words/does.s:41 | |
| (exit) | CODEWORD | (R: addr -- ) | loads addr into IP; compiled by semicolon | arm/words/exit.s:1 | |
| (exitd) | CODEWORD | ( -- ) | exit from a debugger word | arm/interpreter.s:31 | |
| (exiti) | CODEWORD | | return from interrupt handler; compiled by ;i. | arm/words/exiti.s:4 | |
| (pp) | COLON | | | core/words/alto.s:71 | |
| (qdocheck) | COLON | | | core/words/qdo.s:13 | |
| (xdoes) | CODEWORD | ( -- u) | prepares interpreter state for execution of the DOES> wordlist, u is child's PFA | arm/words/does.s:79 | |
| .char | COLON | | | core/words/mlc.s:128 | |
| :immed | COLON | ( -- ) | define an immediate word (for mcu that's can't use immediate) | core/words/immediate.s:26 | |
| ;d | IMMED | | | core/words/debugger2.s:18 | |
| REGABI | CONSTANT | REGABI | | core/words/dicthelp.s:268 | |
| REGITC | CONSTANT | REGITC | | core/words/dicthelp.s:269 | |
| REGNUM | CONSTANT | REGNUM | | core/words/dicthelp.s:267 | |
| XT.DONEXT | CONSTANT | DO_NEXT | | core/words/dicthelp.s:9 | |
| [defined] | IMMED | ( "name" -- f ) | f is true if name defined | core/words/immediate.s:56 | |
| [undefined] | IMMED | ( "name -- f ) | f is true if name undefined | core/words/immediate.s:71 | |
| ^, | COLON | ( x -- ) | append x to RAM dictionary | core/words/comma.s:5 | |
| ^c, | COLON | | | core/words/ccomma.s:5 | |
| ^dallot | COLON | | | core/words/dallot.s:5 | |
| ccount | VARIABLE | | | core/words/mlc.s:109 | |
| cimag | VARIABLE | | | core/words/mlc.s:106 | |
| count_and_test? | COLON | | | core/words/mlc.s:144 | |
| creal | VARIABLE | | | core/words/mlc.s:105 | |
| debug.break | USER | USER_DEBUG_BREAK | XT of debugger, invoked when BREAK is reached | core/words/debugger2.s:5 | |
| debug.next | USER | USER_DEBUG_NEXT | next debug action, 0 if none | core/words/debugger2.s:2 | |
| debug.rdepth | CONSTANT | 2 | step until rdepth, argument is desired rdepth | core/words/debugger.s:388 | |
| debug.step | CONSTANT | 1 | single step, no argument | core/words/debugger.s:385 | |
| debug_buf | CODEWORD | ( -- addr ) | debugger input buffer address | arm/interpreter.s:53 | |
| dec. | COLON | ( n -- ) | print n in base 10 | core/words/output.s:11 | |
| docell | COLON | | | core/words/mlc.s:211 | |
| doescape | COLON | | | core/words/mlc.s:177 | |
| dorow | COLON | | | core/words/mlc.s:221 | |
| escapes? | COLON | | | core/words/mlc.s:139 | |
| flag.alias | CONSTANT | 0x800 | | core/words/flag.s:30 | |
| init.dp.flash | COLON | ( -- ) | set dp.flash to the first erased cell after end of flash dictionary | core/words/here.s:87 | |
| init_vars | COLON | | | core/words/mlc.s:155 | |
| mandelbrot | COLON | | | core/words/mlc.s:237 | |
| maxiter | CONSTANT | 20 | | core/words/mlc.s:100 | |
| maxval | CONSTANT | 20 | | core/words/mlc.s:102 | |
| minval | CONSTANT | -19 | | core/words/mlc.s:101 | |
| pp | IMMED | | | core/words/alto.s:59 | |
| qnop | COLON | | | core/words/qnop.s:3 | |
| rescale | CONSTANT | 640 | | core/words/mlc.s:103 | |
| s_escape | CONSTANT | 2560 | | core/words/mlc.s:104 | |
| show.flash | COLON | | | core/words/show.s:278 | |
| show.page | COLON | | | core/words/show.s:288 | |
| show.ram | COLON | | | core/words/show.s:268 | |
| synonym | COLON | ( "<spaces>new-name" "name" -- ) | create alias of existing word | core/words/synonym.s:19 | |
| tpile | VARIABLE | ( -- f ) | transpiling status | core/words/tpile.s:13 | |
| tpile+ | COLON | ( -- ) | enable transpiling during compilation | core/words/tpile.s:16 | |
| tpile- | COLON | ( -- ) | disable transpiling during compilation | core/words/tpile.s:20 | |
| zi_sq | COLON | | | core/words/mlc.s:120 | |
| zimag | VARIABLE | | | core/words/mlc.s:108 | |
| zr_sq | COLON | | | core/words/mlc.s:112 | |
| zreal | VARIABLE | | | core/words/mlc.s:107 | |
| ~!i | COLON | | | core/words/flash.s:5 | |
| ~, | COLON | | | core/words/flash.s:66 | |
| ~c!i | COLON | | | core/words/flash.s:13 | |
| ~c, | COLON | | | core/words/flash.s:50 | |
| ~dallot | COLON | | | core/words/flash.s:58 | |
| ~flash.erase | COLON | ( addr -- ) | erase (fake) flash page at addr | core/words/flash.s:21 | |
| ~pvflash.erase | COLON | ( addr -- ) | erase PV flash page at addr | core/words/flash.s:39 | |
| symbol | meaning |
| n | signed number, single cell |
| u | unsigned number, single cell |
| d | signed number, double cell ( low high ) |
| ud | unsigned number, double cell ( low high ) |
| x | single cell |
| f | logical flag, 0 is false, not 0 is true |
| a | cell aligned address |
| ca | character aligned address |
| fa | cell aligned address in FLASH |
| xt | execution token (XT) |
| c | character (byte) |
| s | string = ( address length ) cell pair |
| i*x | some unknown number of cells |
| "name" | name consumed from input buffer |
| "ccc" | string consumed from input buffer |
| wid | XT of a wordlist word |
| ffa | flag field address |
| lfa | link field address |
| nfa | name field address |
| cfa | code field address (same as XT) |
| pfa | parameter field address |
| loop-sys | do..loop index/limit state |