Following, are the Max-FORTH V3.5 Words List and the Max-FORTH V3.5 additional words descriptions. 1 F88F TASK EBE3 ( FE22 @ FDFC C@ FDEF ! FDE2 C! FA0A 2@ F9F4 2! E7C4 : E7DA ; FDCB + FDC0 - FA9B 1-! FA8C 1+! FA7D +! F887 * F87D / FD43 >< FD4E SWA_ F9DC 2OV__ F9E8 2SW__ FD8B DUP F9D4 2DU_ FD3B OVE_ FD27 ROT F9C6 2RO_ FA6F PIC_ FA29 ROL_ FA49 -R___ FD7F DRO_ F9C4 2DR__ FD76 >R FD6F R> FC05 = FC36 NOT FC24 0= F966 D0= FC1B 0> FC12 0< FBF9 U< FBE4 < F976 DU< F96E D< F95E D= FBDC > FDAF AND FDA1 OR FD93 XOR EF4F IF EF43 THE_ EF2D ELS_ EF23 BEG__ EF15 UNT__ EF03 REP___ EEFB WHI__ EEED AGA__ EF15 END EE55 DO EE82 LOO_ EE61 +LO__ FAE2 K FADA J FAD2 I FAD2 R@ EEA3 LEA__ FEB6 EXI_ F8F8 KEY F8F0 EMI_ F8E8 ?T_______ FBD4 S->_ FBC5 ABS F93E DAB_ FBA9 MIN F92A DMI_ FB99 MAX F918 DMAX F75F SPA___ FA19 DEP__ F6DA CR F6BA TYP_ F6AE COU__ F686 -TR______ FC7C 1+ FC71 2+ FC66 1- FC5B 2- FC4C 2/ FC41 2* F9A4 D+ F97E D- F903 D2/ F839 /MO_ F831 MOD F825 */M__ F81B */ FB35 UM* FB01 UM/___ FAF6 NEG___ F952 DNEG___ E802 CON_____ E7F2 VAR_____ E810 2C_______ E7E8 2V_______ DCA0 SF! DC39 SF@ DC2B FTAN DC21 FCOS DBD3 FSIN DBAD FATA__ DB79 FATA_ DAC2 F? DAAE FSQR_ DAA4 F2/ DA9A F2* DA63 F.S DA0F FNUM___ DA05 E. D9FB F. D9E1 (E.) D9B9 (F.) D93F F** D92F FALO_ D91F FEXP D8DB 2**X D88E FLN D87E FLOG D851 LOG2 D7EA ODD- ____ D7CA POLY D7C4 FLOO_ D739 FROU__ D729 FLIT____ D6B8 PI D6AE e D6A6 PLAC__ D684 FLOAT+ D67B FLOATS D66E FVAR_____ D662 FCON_____ D655 F, D632 F! D60B F@ D5FC FABS D5E6 FMIN D5D0 FMAX D5C8 F< D5AC F0< D590 F0= D583 FNEG___ D516 F>D D50E S>F D4BD D>F D39E F/ D288 F* D279 F- D20D F+ D0A5 FDRO_ D070 FSWA_ D057 FOVE_ D03E FDUP D023 FNIP D006 FDEP__ D003 FSP D000 FSP0 FB8A TO____ F57C SP! FD5F RP@ F573 RP! F521 UAB___ F52D WAR____ F4E2 R0 EC48 SMU___ EA9F DL______ EB59 MES____ EB2D ERR__ EA69 ?ER___ EA5C ?CO__ EA51 ?EX__ EA46 ?PA___ EA35 ?CS_ 2 EA81 ?ST___ FE13 @! FE07 @@ FAEA EXE____ FD66 SP@ F7B5 CMO___ F7DF CMO__ FEB6 ;S E846 COD_____ E83A COD_ E82A END-C___ E81C USE_ F596 . F5A8 .R F5B4 D. F58E U. F59E U.R F5BE D.R F615 #S F623 # F604 SIG_ F5F4 #> F5EA <# F586 ? F6E8 EXP___ E70E QUE__ F646 BL F554 STA__ F551 CUR____ F54E CONT___ F54B SCR F548 BLK F506 DP F52A OFF___ F53F FLD F53C DPL F533 >IN F4FA BAS_ F4E5 S0 F4EE TIB F539 #T__ F536 SPA_ F56B C/L F1C8 FIR__ F1C0 LIM__ F563 PAD EF83 HER_ EF7B ALL__ EF6F , EF63 C, F777 SPA__ FD81 ?D__ EDF5 TRA_____ EF5B LAT___ EC65 COM____ EC5D [ EC52 ] F4CB HEX F4C2 DEC____ EC3A ;CO__ E896 M___ EF83 R______ EE27 BO__ EE1F CFA EE10 NFA EDE8 PFA___ E738 LO__ E728 TH__ EFB7 --> F186 UPD___ F16C EM___________ F0B2 SA__________ F0B2 FL___ F09A (L____ F090 .L___ F06D >L F122 BUF___ F0D2 BLO__ F394 B/B__ EDB2 H/C ED00 HW___ ECEA AU_______ E936 UN__ E943 FO____ F1EC DUM_ F353 .S ECB2 WO___ EFFD TR___ EFCE IND__ F02B LI__ E6EF QU__ EBFE AB____ E6E5 AB___ FEBC COL_ FD17 BR____ FD05 ?BR____ FAA7 AT__ ED44 EEW___ F398 EEM___ F3C0 EEC_ F88F FORTH-83 OK 3 NAME : (E.) PRONOUNCIATION : paren-E-dot-paren VERSION : NMI ANSI STACK NOTATION : (F:r -- )( -- addr +n) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 2 RETURN STACK : DICTIONARY : PAD : string stored below PAD INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Convert the top number on the floating-point stack to its character string representation using the scientific notation. Addr is the address of the location where the character string representation of r is stored, and +n is the number of bytes. LONG DEFINITION: Convert the top number on the floating-point stack to its character string representation using the scientific notation. The character string produced will be exactly the same as that generated by the floating-point operator E.. Scientific notation has the format [-]mantissa e[-] exponent where the man- tissa contains a radix point with the most sigificant digit to the left the point, zero or more trailing digits, and the ex- ponent with one or more trailing digits. The exact number of digits to the right of the radix place in the mantissa is deter- mined by PLACES. The exponent consists of an optional sign and enough decimal digits to represent the exponent. An exception exists if the system basis is not DECIMAL. EXAMPLE 123e-2 (E.) TYPE 1.230000e0 OK 4 NAME : (F.) PRONOUNCIATION : paren-F-dot-paren VERSION : NMI ANSI STACK NOTATION : (F:r -- )( -- addr +n) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 2 RETURN STACK : DICTIONARY : PAD : string stored below PAD INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Convert the top number on the floating-point stack to its character string representation using the fixed- point notation. Addr is the address of the location where the character string representation of r is stored, and +n is the num- ber of bytes. LONG DEFINITION: Convert the top number on the floating-point stack to its character string representation using the fixed- point notation. The character string produced will be exactly the same as that generated by the floating-point operator F.. The exact number of digits to the right of the radix place in the man- tissa is determined by PLACES. An exception exists if the system basis is not DECIMAL. Very large numbers are represented using scientific notation. EXAMPLE 123e-4 (F.) TYPE 0.012300 OK 5 NAME : ?COMP PRONOUNCIATION : question-compile VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : interpreter ATTRIBUTE : STANDARD : SHORT DEFINITION: Checks for compilation mode, gives error if not. LONG DEFINITION: Checks for compilation mode, gives error if not. 6 NAME : ?CSP PRONOUNCIATION : question-c-s-p VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : interpreter ATTRIBUTE : STANDARD : SHORT DEFINITION: Checks for stack integrity through defining process, gives error if not. LONG DEFINITION: Checks for stack integrity through defining process, gives error if not. 7 NAME : ?ERROR PRONOUNCIATION : question-error VERSION : STACK NOTATION : (flag n -- ) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : operating system ATTRIBUTE : STANDARD : SHORT DEFINITION: If flag is true, error n is initiated. LONG DEFINITION: If flag is true, error n is initiated. EXAMPLE User may generate his/her own error message using ?ERROR 1 24 ?ERROR ?ERROR ? MSG# 24 0 24 ?ERROR OK 8 NAME : ?EXEC PRONOUNCIATION : question-execute VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : interpreter ATTRIBUTE : STANDARD : SHORT DEFINITION: Checks for interpretation mode, gives error if not. LONG DEFINITION: Checks for interpretation mode, gives error if not. 9 NAME : ?PAIRS PRONOUNCIATION : question-pairs VERSION : STACK NOTATION : (n1 n2 -- ) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : interpreter ATTRIBUTE : STANDARD : SHORT DEFINITION: Checks for matched structure pairs, gives error if not. LONG DEFINITION: Checks for matched structure pairs, gives error if not. EXAMPLE 1 1 ?PAIRS OK 1 2 ?PAIRS ?PAIRS ? MSG# 19 10 NAME : ?STATE PRONOUNCIATION : question-state VERSION : STACK NOTATION : ( -- flag) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : interpreter ATTRIBUTE : STANDARD : SHORT DEFINITION: Returns flag, true if compiling, false if not. LONG DEFINITION: Returns flag, true if compiling, false if not. 11 NAME : 2**X PRONOUNCIATION : 2-double-star-x VERSION : STACK NOTATION : (F: r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Raise 2 to the r1 power giving r2. LONG DEFINITION: Raise 2 to the r1 power giving r2. EXAMPLE 3e 2**X F. 8.000000 OK 12 NAME : D>F PRONOUNCIATION : d-to-f VERSION : STACK NOTATION : (d -- )(F: -- r) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R is the floating-point equivalent of d. LONG DEFINITION: R is the floating-point equivalent of d. A double number can be exactly represented by the 32 bit manissa of the internal representation. EXAMPLE 1234. .S 0 1234 OK D>F F. 1234.000000 OK 13 NAME : e PRONOUNCIATION : e VERSION : STACK NOTATION : (F: -- r1) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Put natural value e (=2.718282) on the floating-point stack as r1. LONG DEFINITION: Put natural value e (=2.718282) on the floating- point stack as r1. EXAMPLE e F. 2.718282 OK 14 NAME : E. PRONOUNCIATION : e-dot VERSION : STACK NOTATION : ( -- )(F:r -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Convert the top number on the floating-point stack to its character string representation using the scientific notation. LONG DEFINITION: Convert the top number on the floating-point stack to its character string representation using the scientific notation. The character string produced will be exactly the same as that generated by the floating-point operator E.. Scientific notation has the format [-]mantissa e[-] exponent where the man- tissa contains a radix point with the most sigificant digit to the left the point, zero or more trailing digits, and the ex- ponent with one or more trailing digits. The exact number of digits to the right of the radix place in the mantissa is deter- mined by PLACES. The exponent consists of an optional sign and enough decimal digits to represent the exponent. An exception exists if the system basis is not DECIMAL. EXAMPLE 4 PLACES 123.0e0 E. 1.2300e2 OK 15 NAME : ERROR PRONOUNCIATION : error VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : operating system ATTRIBUTE : STANDARD : SHORT DEFINITION: Begins error processing. LONG DEFINITION: Execute error notification and restart of sys- tem. WARNING is first examined. If 1, the text of line n, rela- tive to screen 4 of drive 0 is printed. This line number may be positive or negative, and beyond just screen 4. If WARNING=0, n is just printed as a message number (non disc installation). If WARNING is -1, the definition (ABORT) is executed, which executes the system ABORT. The user may cautiously modify this execution by altering (ABORT). The contents of IN and BLK are saved to as- sist in determining the locationof the error. Final action is execution of QUIT. 16 NAME : F! PRONOUNCIATION : f-store VERSION : STACK NOTATION : (addr -- )(F:r -- ) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Store r at addr. LONG DEFINITION: Store r at addr using the 6 byte internal for- mat. (Also see SF!) EXAMPLE 123e-2 1000 F! 1000 F@ F. 1.230000 OK 17 NAME : F. PRONOUNCIATION : f-dot VERSION : STACK NOTATION : (F:r --)( -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Print the top number on the floating-point stack on the screen using fixed-point notation. LONG DEFINITION: Convert the top number on the floating-point stack to its character string representation using the fixed- point notation. EXAMPLE 123e-2 F. 1.230000 OK 18 NAME : F.S PRONOUNCIATION : f-dot-s VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Display the contents of the floating-point stack without modifying the stack. LONG DEFINITION: Display the contents of the floating-point stack wothout modifying the stack. EXAMPLE 123e-2 456e-3 F.S 1.230000 0.456000 > 2 OK 19 NAME : F? PRONOUNCIATION : f-question VERSION : STACK NOTATION : (addr -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Display the floating-point contents stored at addr. LONG DEFINITION: Display the floating-point contents stored at addr. EXAMPLE 123e-2 1000 F! 1000 F? 1.230000 OK 20 NAME : F, PRONOUNCIATION : f-comma VERSION : STACK NOTATION : (F:r -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Store r as a floating-point number in the next available dictionary location. LONG DEFINITION: Store r as a floating-point number in the next available dictionary location using the 6 byte internal format. EXAMPLE 123e-2 F, HERE 6 - F? 1.230000 OK 21 NAME : F* PRONOUNCIATION : f-star VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Multiply r1 by r2 giving r3. LONG DEFINITION: Multiply r1 by r2 giving r3. EXAMPLE 2e 3e F* F. 6.000000 OK 22 NAME : F** PRONOUNCIATION : f-double-star VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Raise r1 to the r2 power giving r3. LONG DEFINITION: Raise r1 to the r2 power giving r3. EXAMPLE 2e 3e F** F. 8.000000 OK 23 NAME : F+ PRONOUNCIATION : f-plus VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Add r1 to r2, giving r3. LONG DEFINITION: Add r1 to r2, giving r3. EXAMPLE 2e 3e F+ F. 5.000000 OK 24 NAME : F- PRONOUNCIATION : f-minus VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Subtract r2 from r1, giving r3. LONG DEFINITION: Subtract r2 from r1, giving r3. EXAMPLE 2e 3e F- F. -1.000000 OK 25 NAME : F/ PRONOUNCIATION : f-slash VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Divide r1 by r2, giving r3. LONG DEFINITION: Divide r1 by r2, giving r3. EXAMPLE 2e 3e F/ F. 0.666667 OK 26 NAME : F0< PRONOUNCIATION : f-zero-less-than VERSION : STACK NOTATION : (F:r -- )( -- flag) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: flag is true if r is less than zero. LONG DEFINITION: flag is true if r is less than zero. EXAMPLE 2e F0< . 0 OK -2e F0< . -1 OK 27 NAME : F0= PRONOUNCIATION : f-zero-equals VERSION : STACK NOTATION : (F:r -- )( -- flag) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: flag is true if r is equal to zero. LONG DEFINITION: flag is true if r is equal to zero. The test is performed by checking the most significant bit of the mantissa. Any non-zero number will have this bit set. EXAMPLE 2e F0= . 0 OK 0e F0= . -1 OK 28 NAME : F< PRONOUNCIATION : f-less-than VERSION : STACK NOTATION : (F:r1 r2 -- )( -- flag) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: flag is true if r1 is less than r2. LONG DEFINITION: flag is true if r1 is less than r2. EXAMPLE 2e 3e F< . -1 OK 4e 3e F< . 0 OK 29 NAME : F>D PRONOUNCIATION : f-to-d VERSION : STACK NOTATION : (F:r -- )( -- d) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Convert r to d. LONG DEFINITION: d is the double-cell signed integer equivelent of the integer portion of r; the fractional portion of r is dis- carded. An exception exists if the integer portion of r cannot be represented as a double-cell signed integer and the maximum value for a double-cell (with correct sign) is returned. EXAMPLE 1234567e F>D D. 1234567 OK 1234567e-3 F>D D. 1234 OK 30 NAME : F@ PRONOUNCIATION : f-fetch VERSION : STACK NOTATION : (addr -- )(F: -- r) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: r is the value stored at addr. LONG DEFINITION: r is the value stored at addr in the 6 byte in- ternal format. (Also see SF@) EXAMPLE 123e-2 1000 F! 1000 F@ F. 1.230000 OK 31 NAME : F2* PRONOUNCIATION : f-2-star VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Multiply r1 by 2 giving r2. LONG DEFINITION: Multiply r1 by 2 giving r2. EXAMPLE 3e F2* F. 6.000000 OK 32 NAME : F2/ PRONOUNCIATION : f-2-slash VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Divide r1 by 2 giving r2. LONG DEFINITION: Divide r1 by 2 giving r2. EXAMPLE 3e F2/ F. 1.500000 OK 33 NAME : FABS PRONOUNCIATION : f-abs VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the absolute value of r1. LONG DEFINITION: R2 is the absolute value of r1. EXAMPLE -123e-2 FABS F. 1.230000 OK 34 NAME : FALOG PRONOUNCIATION : f-a-log VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Raise 10 to the power r1, giving r2. LONG DEFINITION: Raise 10 to the power r1, giving r2. EXAMPLE 2e FALOG F. 100.000000 OK 5e-1 FALOG F. 3.162278 OK 35 NAME : FATAN PRONOUNCIATION : f-a-tan VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the principal radian whose tangent is r1. LONG DEFINITION: R2 is the principal radian whose tangent is r1. EXAMPLE 1e FATAN F. 0.785398 OK 36 NAME : FATAN2 PRONOUNCIATION : f-a-tan-two VERSION : STACK NOTATION : (F:r1 r2 -- r3 ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R3 is the radian angle whose tangent is r1/r2. LONG DEFINITION: R3 is the radian angle whose tangent is r1/r2. The signs of r1 and r2 determine which quadrant contains r3. EXAMPLE 3e FSQRT 1e FATAN2 F. 1.047198 OK 37 NAME : FCOS PRONOUNCIATION : f-cos VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: r2 is the cosine of the radian angle r1. LONG DEFINITION: r2 is the cosine of the radian angle r1. EXAMPLE PI 3e F/ F.S 1.047198 > 1 OK FCOS F. 0.500000 OK 38 NAME : FCONSTANT PRONOUNCIATION : f-constant VERSION : STACK NOTATION : (F:r -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : is removed from the input stream. OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Define a constant with value r. LONG DEFINITION: Parse delimited by a space, ignoring lead- ing delimiters. Create a dictionary entry for as defined below. is refered to as an "f-constant." Execution semantics for : (--) (F:--r) Place r on the floating-point stack. EXAMPLE 123e-2 FCONSTANT VALUE VALUE F. 1.230000 OK 39 NAME : FDEPTH PRONOUNCIATION : f-depth VERSION : STACK NOTATION : ( -- +n) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: +n is the number of values contained on separate floating point stack. LONG DEFINITION: +n is the number of values contained on separate floating point stack. EXAMPLE 2e 3e 4e FDEPTH . 3 OK 40 NAME : FDROP PRONOUNCIATION : f-drop VERSION : STACK NOTATION : (F:r-- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Remove r from the floating-point stack. LONG DEFINITION: Remove r from the floating-point stack. EXAMPLE 2e 3e F.S 2.000000 3.000000 > 2 OK FDROP F.S 2.000000 > 1 OK 41 NAME : FDUP PRONOUNCIATION : f-dupe VERSION : STACK NOTATION : (F:r -- r r) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 2 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Duplicate r. LONG DEFINITION: Duplicate r. EXAMPLE 2e FDUP F.S 2.000000 2.000000 > 2 OK 42 NAME : FEXP PRONOUNCIATION : f-exp VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Raise e to the power r1, giving r2. LONG DEFINITION: Raise e to the power r1, giving r2. EXAMPLE 2e FEXP F. 7.389056 OK 43 NAME : FLITERAL PRONOUNCIATION : f-literal VERSION : STACK NOTATION : (F:r -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : compiler ATTRIBUTE : I C STANDARD : ANSI basis 13 SHORT DEFINITION: Compile r as a floating point literal. LONG DEFINITION: Compile r as a floating point literal. Syntax: [ r ] FLITERAL Compilation semantics; Compile floating-point number as a floating-point literal Execution semantics: Place r on the floating-point stack. 44 NAME : FLN PRONOUNCIATION : f-l-n VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the natural logarithm of r1. LONG DEFINITION: R2 is the natural logarithm of r1. EXAMPLE 100e FLN F. 4.605170 OK 45 NAME : FLOAT+ PRONOUNCIATION : float-plus VERSION : STACK NOTATION : (addr1 -- addr2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Add 6 to addr1. LONG DEFINITION: Add the size of a floating-point number to the address on top of the data stack. This should not be used for IEEE single format storage. EXAMPLE 1000 FLOAT+ . 1006 OK 46 NAME : FLOATS PRONOUNCIATION : floats VERSION : STACK NOTATION : (n1 -- n2) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: n2 is the size, in bytes, of n1 floating-point numbers. LONG DEFINITION: n2 is 6 * n1, where 6 is the size, in bytes, of a floating point number in internal format. This should not be used for IEEE single format storage. EXAMPLE 10 FLOATS . 60 OK 47 NAME : FLOG PRONOUNCIATION : f-log VERSION : STACK NOTATION : (F:r1 -- r2 ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the base 10 logarithm of r1. LONG DEFINITION: R2 is the base 10 logarithm of r1. EXAMPLE 100e FLOG F. 2.000000 OK 48 NAME : FLOOR PRONOUNCIATION : floor VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Round r1 using the "round to negative infinity" rule, giving r2. LONG DEFINITION: Round r1 using the "round to negative infinity" rule, giving r2. (Also see FROUND) EXAMPLE 123500000e-6 FLOOR F. 123.000000 OK 123500001e-6 FLOOR F. 124.000000 OK 49 NAME : FMAX PRONOUNCIATION : "f-max" VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: r3 is the maximum of r1 and r2. LONG DEFINITION: r3 is the maximum of r1 and r2. EXAMPLE 2e 3e FMAX F. 3.000000 OK 50 NAME : FMIN PRONOUNCIATION : fmin VERSION : STACK NOTATION : (F:r1 r2 -- r3) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: r3 is the minimum of r2 and r3. LONG DEFINITION: r3 is the minimum of r2 and r3. EXAMPLE 2e 3e FMIN F. 2.000000 OK 51 NAME : FNEGATE PRONOUNCIATION : f-negate VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: r2 is the negation of r1. LONG DEFINITION: r2 is the negation of r1. EXAMPLE 123e-1 FNEGATE F. -12.300000 OK 52 NAME : FNIP PRONOUNCIATION : f-nip VERSION : STACK NOTATION : (F:r1 r2 -- r2) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Remove second number down from floating-point stack. LONG DEFINITION: Remove second number down from floating-point stack. EXAMPLE 1e 2e 3e F.S 1.000000 2.000000 3.000000 > 3 OK FNIP F.S 1.000000 3.000000 > 2 OK 53 NAME : FNUMBER PRONOUNCIATION : f-number VERSION : STACK NOTATION : (+d1 addr1 -- +d2 addr2) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 2 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Converts an input string into a number. LONG DEFINITION: Converts an input string into a number. 54 NAME : FOVER PRONOUNCIATION : f-over VERSION : STACK NOTATION : (F:r1 r2 -- r1 r2 r1) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 3 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Place a copy of r1 on top of the floating-point stack. LONG DEFINITION: Place a copy of r1 on top of the floating-point stack. EXAMPLE 2e 3e F.S 2.000000 3.000000 > 2 OK FOVER F.S 2.000000 3.000000 2.000000 > 3 OK 55 NAME : FROT (missing) PRONOUNCIATION : f-rote VERSION : STACK NOTATION : (F:r1 r2 r3 -- r2 r3 r1) # ARGUMENTS IN : 3 # ARGUEMENTS OUT: 3 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Rotate the top three floating-point stack entries. LONG DEFINITION: Rotate the top three floating-point stack entries. 56 NAME : FROUND PRONOUNCIATION : f-round VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Round r1 using the "round to even" rule, giving r2. LONG DEFINITION: Round r1 using the "round to even" rule, giving r2. EXAMPLE 123500000e-6 FROUND F. 124.000000 OK 123499999e-6 FROUND F. 123.000000 OK 57 NAME : FSIN PRONOUNCIATION : f-sin VERSION : STACK NOTATION : (F:r1 -- r2 ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the sine of the radian angle r1. LONG DEFINITION: R2 is the sine of the radian angle r1. EXAMPLE PI 6e F/ F.S 0.523599 OK FSIN F. 0.500000 OK 58 NAME : FSP PRONOUNCIATION : f-s-p VERSION : STACK NOTATION : ( -- addr) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: User variable holds floating-point stack pointer. LONG DEFINITION: User variable holds floating-point stack pointer. EXAMPLE FSP HEX . 74 OK 59 NAME : FSP0 PRONOUNCIATION : f-s-p-zero VERSION : STACK NOTATION : ( -- addr) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: User variable holds initial value of floating- point stack pointer. LONG DEFINITION: User variable holds initial value of floating- point stack pointer. EXAMPLE FSP0 HEX . 76 OK 60 NAME : FSQRT PRONOUNCIATION : f-square-root VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : SHORT DEFINITION: R2 is the square root of r1. LONG DEFINITION: R2 is the square root of r1. EXAMPLE 2e FSQRT F. 1.414214 OK 61 NAME : FSWAP PRONOUNCIATION : f-swap VERSION : STACK NOTATION : (F:r1 r2 -- r2 r1) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 2 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Exchange the top two floating-point stack items. LONG DEFINITION: Exchange the top two floating-point stack items. EXAMPLE 2e 3e F.S 2.000000 3.000000 > 2 OK FSWAP F.S 3.000000 2.000000 > 2 OK 62 NAME : FTAN PRONOUNCIATION : f-tan VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: R2 is the tangent of the radian angle r1. LONG DEFINITION: R2 is the tangent of the radian angle r1. EXAMPLE PI 4e F/ F.S 0.785398 > 1 OK FTAN F. 1.000000 OK 63 NAME : FVARIABLE PRONOUNCIATION : f-variable VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : is removed from input stream OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Create a floating-point variable. Reserve 6 bytes of data memory in the dictionary. LONG DEFINITION: Parse delimited by a space, ignoring lead- ing delimiters. Create a dictionary entry for . is refered to as an "f-variable." Reserve 1 FLOATS bytes of data memory in the dictionary. Execution semantics for name: ( -- addr ) The application is reponsible for initializing the contents of the reserved memory. EXAMPLE FVARIABLE REAL-NUMBER 1234e-2 REAL-NUMBER F! REAL-NUMBER F@ F. 12.340000 OK 64 NAME : LOG2 PRONOUNCIATION : log-2 VERSION : STACK NOTATION : (F:r1 -- r2) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : SHORT DEFINITION: R2 is the base 2 logarithm of r1. LONG DEFINITION: R2 is the base 2 logarithm of r1. EXAMPLE 8e LOG2 F. 3.000000 OK 65 NAME : MESSAGE PRONOUNCIATION : message VERSION : STACK NOTATION : (n -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : operating system ATTRIBUTE : STANDARD : SHORT DEFINITION: Prints error message # n. LONG DEFINITION: Prints on the selected output device the text of line n relative to screen 4 of device 0. n may be positive or negative. MESSAGE may be used to print incidental text such as report headers. If WARNING is zero, the message will simply be printed as a number (disc un-available). EXAMPLE 1 MESSAGE STACK EMPTY OK 25 MESSAGE MSG# 25 OK 66 NAME : ODD-POLY PRONOUNCIATION : odd-poly VERSION : STACK NOTATION : (F: -- r1)(addr -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Evaluate odd-polynomial giving r1. LONG DEFINITION: Evaluate odd-polynomial giving r1. 67 NAME : PI PRONOUNCIATION : PI VERSION : STACK NOTATION : (F: -- r1) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : SHORT DEFINITION: Put the numerical value of pi on the floating- point stack as r1. LONG DEFINITION: Put the numerical value of pi on the floating- point stack as r1. EXAMPLE PI F. 3.141593 OK 68 NAME : PLACES PRONOUNCIATION : places VERSION : STACK NOTATION : (n -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Set the number of decimal places (digits to the right of the radix point) displayed by E. and F. LONG DEFINITION: Set the number of decimal places (digits to the right of the radix point) displayed by E. and F. The length, n, is stored in a user variable named #PLACES. EXAMPLE 2 PLACES 1234e-2 E. 1.23e1 OK 4 PLACES 1234e-2 E. 1.2340e1 OK 69 NAME : POLY PRONOUNCIATION : poly VERSION : STACK NOTATION : (F: -- r1)(addr -- ) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: Evaluate polynomial giving r1. LONG DEFINITION: Evaluate polynomial giving r1. 70 NAME : R0 PRONOUNCIATION : r-zero VERSION : STACK NOTATION : ( -- addr) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: Returns the address of the variable containing the initial value of the bottom of the return stack. LONG DEFINITION: Returns the address of the variable containing the initial value of the bottom of the return stack. EXAMPLE R0 HEX . E OK 71 NAME : RP@ PRONOUNCIATION : r-p-fetch VERSION : STACK NOTATION : ( -- addr) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: addr is the address of the top of the return stack just before RP@ was executed. LONG DEFINITION: addr is the address of the top of the return stack just before RP@ was executed. 72 NAME : RP! PRONOUNCIATION : r-p-store VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: Initializes the bottom of the return stack. LONG DEFINITION: Initializes the bottom of the return stack. 73 NAME : S>F PRONOUNCIATION : s-to-f VERSION : STACK NOTATION : (n--)(F: -- r) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point ATTRIBUTE : STANDARD : SHORT DEFINITION: R is the floating-point equivalent of n. LONG DEFINITION: R is the floating-point equivalent of n. EXAMPLE 23 S>F F. 23.000000 OK 74 NAME : SF! PRONOUNCIATION : s-f-store VERSION : STACK NOTATION : (addr -- )(F:r -- ) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Store the floating point number r as a 32 bit IEEE single precision number at addr. LONG DEFINITION: Store the floating point number r as a 32 bit IEEE single precision number at addr. The mantissa will be rounded using the "round to even" rule. An exception exists if the exponent of r is too latge to be accommodated by the IEEE single precision format, and the largest available number, cor- rectly signed, will be stored instead. EXAMPLE 1234e 1000 SF! 1000 SF@ F. 1234.000000 OK 75 NAME : SF@ PRONOUNCIATION : s-f-fetch VERSION : STACK NOTATION : ( addr -- ) (F: -- r) # ARGUMENTS IN : 1 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : floating-point extension ATTRIBUTE : STANDARD : ANSI basis 13 SHORT DEFINITION: Fetch the 32-bit IEEE single precision number stored at addr to the floating-point stack as r in the internal representation. LONG DEFINITION: Fetch the 32-bit IEEE single precision number stored at addr to the floating-point stack as r in the internal representation. EXAMPLE Refer to the example of SF! 76 NAME : SMUDGE PRONOUNCIATION : smudge VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : dictionary ATTRIBUTE : STANDARD : SHORT DEFINITION: Toggles visibility bit in head, enabling defini- tions to be found. LONG DEFINITION: Used during word definition to toggle the "smudge bit" in a definition's name field. This prevents an un- completed definition from being found during dictionary searches, until compiling is completed without error. 77 NAME : SP! PRONOUNCIATION : s-p-store VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : stack ATTRIBUTE : STANDARD : SHORT DEFINITION: Initializes the bottom of the parameter stack. LONG DEFINITION: Initializes the bottom of the parameter stack. 78 NAME : TOGGLE PRONOUNCIATION : toggle VERSION : STACK NOTATION : (addr b -- ) # ARGUMENTS IN : 2 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : memory ATTRIBUTE : STANDARD : SHORT DEFINITION: Toggles setting of bits with mask b at addr. LONG DEFINITION: Complement the contents of addr by the bit pat- tern b. EXAMPLE HEX FF 1000 C! 1000 12 TOGGLE 1000 C@ . ED OK 79 NAME : UABORT PRONOUNCIATION : u-abort VERSION : STACK NOTATION : ( -- addr) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 1 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : operating system ATTRIBUTE : STANDARD : SHORT DEFINITION: User variable points to ABORT routine. LONG DEFINITION: User variable points to ABORT routine. EXAMPLE HEX UABORT . 4C OK User may define his/her own ABORT routine and store CFA of the routine at UABORT. ' NEW-ABORT-RTN CFA UABORT ! 80 NAME : WARNING PRONOUNCIATION : warning VERSION : STACK NOTATION : ( -- ) # ARGUMENTS IN : 0 # ARGUEMENTS OUT: 0 RETURN STACK : DICTIONARY : PAD : INPUT : OUTPUT : GROUP : operating system ATTRIBUTE : STANDARD : SHORT DEFINITION: User variable controls error handling. LONG DEFINITION: User variable controls error handling. (Refer to the definition of ERROR). EXAMPLE HEX WARNING . 54 81