diff view
color-dirk2.f color-dirk4b.f
end of diff view
1. 0 [IF]
2.    Forth to HTML converter
3.  
1. 0 [IF]
2.    Forth to HTML converter
3.  
4.    Written by Brad Eckert
5.    Modifications by Dirk Busch
6.  
7.    Revision 3. See bottom for revision history.
4.    Main contributors: Brad Eckert, Ed Beroset & Dirk Busch
5.    Revision 4b. See bottom for revision history.
8.  
9.    This ANS Forth program is public domain. It translates ANS Forth to colorized 
10.    HTML. Hyperlinks to the ANS Forth draft standard are inserted for all ANS 
11.    standard words. Hyperlinks to user definitions are included. 
12.  
6.  
7.    This ANS Forth program is public domain. It translates ANS Forth to colorized 
8.    HTML. Hyperlinks to the ANS Forth draft standard are inserted for all ANS 
9.    standard words. Hyperlinks to user definitions are included. 
10.  
13.    Usage: HTML FileName       Generates HTML file from Forth source 
14.                               output file is Filename with .HTM extension 
11.    Usage: HTML FileName    Generates HTML file from Forth source.
12.                            Output file is Filename with .HTM extension.
15.           Q [forth code]      Outputs HTML for 1 line to screen 
16.  
17.    Q is used for debugging. You can use "linenum ?" to show the line number if an 
18.    ABORT occurs. The HTML is about 10 times as big as the Forth source because of 
19.    all the links, color changes and whitespace. 
20.  
21.    INCLUDEd files produce corresponding HTML pages. Most browsers get severely 
22.    bogged down with large files. If you're converting a large Forth program to 
23.    HTML, try to keep the source files under 500 lines each by splitting long
13.           Q [forth code]      Outputs HTML for 1 line to screen 
14.  
15.    Q is used for debugging. You can use "linenum ?" to show the line number if an 
16.    ABORT occurs. The HTML is about 10 times as big as the Forth source because of 
17.    all the links, color changes and whitespace. 
18.  
19.    INCLUDEd files produce corresponding HTML pages. Most browsers get severely 
20.    bogged down with large files. If you're converting a large Forth program to 
21.    HTML, try to keep the source files under 500 lines each by splitting long
24.    source into multiple INCLUDE files. HTML pages are best viewed with Internet 
25.    Explorer or Netscape 4.7. Netscape 6 is more sluggish with large files.
22.    source into multiple INCLUDE files.
26.  
23.  
27.    When you INCLUDE this file some redefinition complaints will occur. That's
24.    When you INCLUDE this file some redefinition complaints may occur. That's
28.    okay since you won't be loading an application on top of this.
25.    okay since you won't be loading an application on top of this.
 
26. 
27.    Users of specific Forths can extend the hyperlink table to point to words
28.    in a glossary for that particular Forth.
29. [THEN]
30.  
31. ONLY FORTH ALSO DEFINITIONS
32.  
33. \ ------------------------------------------------------------------------------
29. [THEN]
30.  
31. ONLY FORTH ALSO DEFINITIONS
32.  
33. \ ------------------------------------------------------------------------------
34. \ Configuration:
35.  
36. \ Hyperlink to the original file, or not.
37. \ Output at the TOP of the HTML-File
38.  
39. 1 VALUE LINK-TO-ORG-FILE
40.  
41.  
42. \ Copyright string.
43. \ Output at the BOTTOM of the HTML-File
44.  
45. \ create COPYRIGHT ," "
46. create COPYRIGHT ," Copyright  2003-2004 by Dirk Busch"
47.  
48.  
49. \ path to the ANS-Files
50.  
51. \ create DPANS-PATH ," ./"
52. create DPANS-PATH ," .\win32forth-defs\"
53.  
34. \ Configuration - You can change the options:
35. 0 VALUE bold                                      \ T if bold text
36. 1 VALUE italic                                    \ T if italic comments
37. 1 VALUE nestable                                  \ T if INCLUDE nested files
38. 1 VALUE linksource                                \ T link to the org. file /4a/
39. create  dpanspath ," ./AnsForth/"                 \ path to the ANS-Files   /4a/
40. create  footer ," "                               \ footer to output at  /4a/
41.                                                   \ the bottom of the HTML-file
54. \ ------------------------------------------------------------------------------
55.  
42. \ ------------------------------------------------------------------------------
43.  
56.  
57. : [undef] ( <name> -- f ) BL WORD FIND NIP 0= ;
58.   [undef] +PLACE [IF] : +PLACE 2DUP 2>R COUNT CHARS + SWAP MOVE 2R> C+! ; [THEN]
59.   [undef] PLACE  [IF] : PLACE  0 OVER C! +PLACE ;                         [THEN]
60.   [undef] FDROP  [IF] : FDROP ;                                           [THEN]
61.   [undef] >FLOAT [IF] : >FLOAT DROP C@ [CHAR] 0 [CHAR] 9 1+ WITHIN ;      [THEN]
44. : undefined ( <name> -- f ) BL WORD FIND NIP 0= ;
45. undefined C+!    [IF] : C+! SWAP OVER C@ + SWAP C! ;                      [THEN]
46. undefined BOUNDS [IF] : BOUNDS OVER + SWAP ;                              [THEN]
47. undefined SCAN   [IF] : SCAN
48.    >R
49.    BEGIN DUP WHILE OVER C@ R@ <> WHILE 1 /STRING REPEAT THEN
50.    R> DROP ;                                                              [THEN]
51. undefined SKIP   [IF] : SKIP
52.    >R
53.    BEGIN DUP WHILE OVER C@ R@ = WHILE 1 /STRING REPEAT THEN
54.    R> DROP ;                                                              [THEN]
55. undefined NOOP   [IF] : NOOP ;                                            [THEN]
56. undefined +PLACE [IF] : +PLACE 2DUP 2>R COUNT CHARS + SWAP MOVE 2R> C+! ; [THEN]
57. undefined PLACE  [IF] : PLACE  0 OVER C! +PLACE ;                         [THEN]
58. undefined FDROP  [IF] : FDROP ;                                           [THEN]
59. undefined >FLOAT [IF] : >FLOAT DROP C@ [CHAR] 0 [CHAR] 9 1+ WITHIN ;      [THEN]
62.  
63. 0 VALUE outf                                    \ output to file
64. 1 VALUE screen-only                             \ screen is for testing
65. : werr  ABORT" Error writing file" ;
66. : out   screen-only IF type    ELSE outf WRITE-FILE werr THEN ;
67. : outln screen-only IF type cr ELSE outf WRITE-LINE werr THEN ;
68.  
69. WORDLIST CONSTANT hyperlinks
70. VARIABLE attrib
71. : /a      ( -- )         attrib @ IF S" </a>" out THEN 0 attrib ! ;
60.  
61. 0 VALUE outf                                    \ output to file
62. 1 VALUE screen-only                             \ screen is for testing
63. : werr  ABORT" Error writing file" ;
64. : out   screen-only IF type    ELSE outf WRITE-FILE werr THEN ;
65. : outln screen-only IF type cr ELSE outf WRITE-LINE werr THEN ;
66.  
67. WORDLIST CONSTANT hyperlinks
68. VARIABLE attrib
69. : /a      ( -- )         attrib @ IF S" </a>" out THEN 0 attrib ! ;
72. : (,$)    ( a len -- )   DUP C, BOUNDS ?DO I C@ C, LOOP ; \ text to dictionary
73. : text    ( <text> -- )  -1 WORD COUNT -TRAILING (,$) ;
70. : ,$      ( a len -- )   DUP C, BOUNDS ?DO I C@ C, LOOP ; \ text to dictionary
71. : text    ( <text> -- )  -1 WORD COUNT -TRAILING ,$ ;
74. : line    ( a line# -- ) 0 ?DO COUNT + LOOP COUNT out ;   \ output one string
75. : boiler  ( addr -- )    BEGIN COUNT DUP WHILE 2DUP + >R outln R> REPEAT 2DROP ;
72. : line    ( a line# -- ) 0 ?DO COUNT + LOOP COUNT out ;   \ output one string
73. : boiler  ( addr -- )    BEGIN COUNT DUP WHILE 2DUP + >R outln R> REPEAT 2DROP ;
 
74. : ital(   ( -- )         italic IF S" <i>" out THEN ;
75. : )ital   ( -- )         italic IF S" </i>" out THEN ;
76.  
77. CREATE misctext                                 \ various attribute strings
76.  
77. CREATE misctext                                 \ various attribute strings
78.    text <a style="text-decoration:none" href=
79.    text <a name="
80.    text ">
81.    text <a href="#
82.    text " style="text-decoration:none">
83.    text <font color="#
84.    text <font color="#000000"><center><hr><h1>
85.    text </h1><hr></center>
86.    text "
 
87.    text <a href="
78.    text <a href="
 
79.    text <a name="x
80.    text ">
81.    text <a href="#x
82.    text ">
83.    text <span style="color:#
84.    text <hr /><h1>
85.    text </h1><hr /><p>
86.    text </span>
88.    text </a>
89.    0 c,
90.  
91. VARIABLE color                                  \ current color
87.    text </a>
88.    0 c,
89.  
90. VARIABLE color                                  \ current color
92. VARIABLE active-color                           \ active color
91. VARIABLE infont                                 \ within <font> tag
93.  
92.  
94. : fontcolor ( color -- ) \ change font color (only if needed)
95.    dup active-color @ <>
96.    if   dup active-color !
97.         BASE @ >R
93. : fontcolor ( color -- ) BASE @ >R              \ change font color
94.    1 infont !
98.         misctext 5 line 0 HEX <# # # # # # # #> out
95.         misctext 5 line 0 HEX <# # # # # # # #> out
99.         misctext 2 line
100.         R> BASE !
101.    else drop
102.    then ;
96.    misctext 2 line       R> BASE ! ;
103.  
97.  
104. : fcol ( color <name> -- )                       \ define a font color
98. : col ( color <name> -- )                       \ define a font color
105.    CREATE , DOES> @ color ! ;
106.  
107. HEX
99.    CREATE , DOES> @ color ! ;
100.  
101. HEX
108. 808080 fcol unknown
109. 008000 fcol commentary
110. CC0000 fcol numeric
111. 990080 fcol values
112. 000000 fcol userwords
113. 009999 fcol userdefiner
114. CC00CC fcol variables
115. 0000FF fcol core_ws
116. 0000FF fcol core_ext_ws
117. 0000FF fcol block_ws
118. 0000FF fcol double_ws
119. 0000FF fcol exception_ws
120. 0000FF fcol facilities_ws
121. 0000FF fcol file_ws
122. 0000FF fcol fp_ws
123. 0000FF fcol local_ws
124. 0000FF fcol malloc_ws
125. 0000FF fcol progtools_ws
126. 0000FF fcol searchord_ws
127. 0000FF fcol string_ws
102. 808080 col unknown
103. 008000 col commentary
104. CC0000 col numeric
105. 990080 col values
106. 000000 col userwords
107. 009999 col userdefiner
108. CC00CC col variables
109. 0000FF col core_ws
110. 0000FF col core_ext_ws
111. 0000FF col block_ws
112. 0000FF col double_ws
113. 0000FF col exception_ws
114. 0000FF col facilities_ws
115. 0000FF col file_ws
116. 0000FF col fp_ws
117. 0000FF col local_ws
118. 0000FF col malloc_ws
119. 0000FF col progtools_ws
120. 0000FF col searchord_ws
121. 0000FF col string_ws
128. DECIMAL
129.  
130. CREATE begin_header                             \ begin of HTML file part 1
122. DECIMAL
123.  
124. CREATE begin_header                             \ begin of HTML file part 1
131.    text <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
132.    text <html><head>
133.    text <meta http-equiv="Content-Type" content="text/html;">
134.    text <meta name="GENERATOR" content="Forth2HTML 0.3">
125.    text <?xml version="1.0"?>
126.    text <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
127.    text     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
128.    text <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
129.    text <head>
130.    text <meta http-equiv="Content-Type" content="text/xml; charset=iso-8859-1" />
131.    text <meta name="GENERATOR" content="Forth2HTML 0.4" />
132.    text <style type="text/css">
133.    text body {background: #FFFFEE;}
134.    text h1 {color: #000000;}
135.    text p {font-family: monospace;}
136.    text a {text-decoration:none;}
137.    text </style>
135.    text <title>
136.    0 C,
137.  
138. \ body defaults: the most common link color (blue) is made the default color
139. \ the most common plain text color (green) is made default.
140.  
141. CREATE mid_header                               \ begin of HTML file part 2
142.    text </title></head>
138.    text <title>
139.    0 C,
140.  
141. \ body defaults: the most common link color (blue) is made the default color
142. \ the most common plain text color (green) is made default.
143.  
144. CREATE mid_header                               \ begin of HTML file part 2
145.    text </title></head>
143.    text <body bgcolor="#FFFFEE" link="0000FF" vlink="0000FF" alink="0000FF">
144.    text <pre><p>
146.    text <body>
147.    0 C,
148. 
149. CREATE end_header_part1                         \ end of HTML file part 1 /4a/
150.    text <hr />
151.    text <h4 style="color:black">
152.    0 C,
153. 
154. CREATE end_header_part2                      \ end of HTML file part 2 /4a/ /4b/
155.    text </h4>
156.    text </body></html>
145.    0 C,
146.  
147. HEX
148. : setcolor ( -- )                               \ select next color
149.    attrib @ 1 = color @ 0000FF = AND 0=         \ blue link: don't color
157.    0 C,
158.  
159. HEX
160. : setcolor ( -- )                               \ select next color
161.    attrib @ 1 = color @ 0000FF = AND 0=         \ blue link: don't color
 
162.    DROP TRUE                                    \ /4/ vlinks are still purple
150.    IF color @ fontcolor THEN ;
151. DECIMAL
152.  
163.    IF color @ fontcolor THEN ;
164. DECIMAL
165.  
 
166. : closefont ( -- )
167.    infont @ IF misctext 8 line 0 infont ! THEN ;
168. 
169. VARIABLE bltally
153. : outh    ( a n -- )                            \ HTMLized text output
170. : outh    ( a n -- )                            \ HTMLized text output
 
171.    999 bltally !
154.    BOUNDS ?DO I C@ CASE
155.       [CHAR] & OF S" &amp;"  out ENDOF
156.       [CHAR] < OF S" &lt;"   out ENDOF
157.       [CHAR] > OF S" &gt;"   out ENDOF
158.       [CHAR] " OF S" &quot;" out ENDOF
172.    BOUNDS ?DO I C@ CASE
173.       [CHAR] & OF S" &amp;"  out ENDOF
174.       [CHAR] < OF S" &lt;"   out ENDOF
175.       [CHAR] > OF S" &gt;"   out ENDOF
176.       [CHAR] " OF S" &quot;" out ENDOF
159.       [CHAR]  OF S" &copy;" out ENDOF
160.       I 1 out
177.       [CHAR]  OF S" &copy;"    out ENDOF       \ /4a/
178.       BL       OF bltally @ 0= IF S"  " ELSE S" &nbsp;" THEN out
179.                 1 bltally +!     ENDOF
180.       I 1 out   0 bltally !
161.    ENDCASE LOOP ;
162.  
181.    ENDCASE LOOP ;
182.  
163. CREATE end_header_part1                         \ end of HTML file part 1
164.    text </p></pre>
165.    text <center><hr>
166.    text <font color="#000000">
167.    0 C,
168.  
169. CREATE end_header_part2                         \ end of HTML file part 2
170.    text </center>
171.    text </body></html>
172.    0 C,
183. : outhattr  ( a n -- )                          \ HTMLized text output
184.    BOUNDS ?DO I C@ CASE
185.       [CHAR] & OF S" amp"       out ENDOF
186.       [CHAR] < OF S" lt"        out ENDOF
187.       [CHAR] > OF S" gt"        out ENDOF
188.       [CHAR] " OF S" quot"      out ENDOF
189.       [CHAR] + OF S" plus"      out ENDOF
190.       [CHAR] ! OF S" bang"      out ENDOF
191.       [CHAR] / OF S" slash"     out ENDOF
192.       [CHAR] \ OF S" backslash" out ENDOF
193.       [CHAR] ' OF S" apos"      out ENDOF
194.       [CHAR] = OF S" equal"     out ENDOF
195.       [CHAR] - OF S" dash"      out ENDOF
196.       [CHAR] @ OF S" at"        out ENDOF
197.       [CHAR] ; OF S" semi"      out ENDOF
198.       [CHAR] * OF S" star"      out ENDOF
199.       [CHAR] ? OF S" question"  out ENDOF
200.       [CHAR] ~ OF S" tilde"     out ENDOF
201.       [CHAR] # OF S" pound"     out ENDOF
202.       [CHAR] , OF S" comma"     out ENDOF
203.       [CHAR] $ OF S" dollar"    out ENDOF
204.       [CHAR] | OF S" bar"       out ENDOF
205.       [CHAR] [ OF S" leftbracket" out ENDOF
206.       [CHAR] ( OF S" leftparen" out ENDOF
207.       [CHAR] { OF S" leftbrace" out ENDOF
208.       [CHAR] ] OF S" rightbracket" out ENDOF
209.       [CHAR] ) OF S" rightparen" out ENDOF
210.       [CHAR] } OF S" rightbrace" out ENDOF
211.       BL       OF S" _"         out ENDOF
212.       I 1 out   
213.    ENDCASE LOOP ;
173.  
214.  
174. : end_header ( -- )                             \ output end of HTML file
215. : end_header ( -- )                             \ output end of HTML file /4a/
175.   end_header_part1 boiler
216.   end_header_part1 boiler
176.   COPYRIGHT count ?dup if outh else drop then
217.   footer COUNT ?DUP IF outh ELSE drop THEN
177.   end_header_part2 boiler ;
178.  
179. : label  ( addr len -- ) /a                     \ associate a label with a word
218.   end_header_part2 boiler ;
219.  
220. : label  ( addr len -- ) /a                     \ associate a label with a word
180.    misctext 1 line outh
221.    misctext 1 line outhattr
181.    misctext 2 line 1 attrib ! ;
182.  
222.    misctext 2 line 1 attrib ! ;
223.  
183. : "out   ( -- )                                 \ output a "
184.    misctext 8 line
185. ;
224. \ Assuming this is running on a PC, we allocate enough storage that crashes from
225. \ string overflows can't happen.                /4/
186.  
226.  
187. : new-line ( -- )                               \ start a new line (December 30th, 2003 - dbu)
188.     S" " outln
189. \    13 here dup>r C! 10 r@ char+ C! r> 2 out
190. ;
227. CREATE inbuf 260 CHARS ALLOT                    \ current line from file
228. CREATE token 260 CHARS ALLOT                    \ the last blank delimited string
229. CREATE XPAD  260 CHARS ALLOT                    \ temporary pad for word storage
230. CREATE EPAD  260 CHARS ALLOT                    \ temporary pad for evaluation
231. CREATE fn    260 CHARS ALLOT                    \ file name
232. CREATE fn1   260 CHARS ALLOT                    \ file name backup
233. CREATE "str" 260 CHARS ALLOT                    \ parsed string storage
234. CREATE uname 260 CHARS ALLOT                    \ : definition name
235. 0 VALUE inf
236. VARIABLE nufile                                 \ T if nesting a file
237. VARIABLE utype                                  \ type of defined word
238. VARIABLE hstate
239. VARIABLE linenum
240. VARIABLE special                                \ special action, 0=none
191.  
241.  
192. : std    ( word color <string> -- )
193.    CREATE ' , ' , BL WORD COUNT (,$)
242. : std    ( word 2nd_fn color filename label -- )
243.    CREATE ' , ' , BL WORD COUNT ,$ BL WORD COUNT ,$
194.    DOES> /a DUP >R  2 CELLS +
195.    misctext 0 line                              \ begin hyperlink
244.    DOES> /a DUP >R  2 CELLS +
245.    misctext 0 line                              \ begin hyperlink
196.    BASE @ >R DECIMAL
197.    COUNT 0 0 2OVER >NUMBER 2DROP D>S
198.    R> BASE !
199.    "out DPANS-PATH count out \ write path to ANS-Files (December 30th, 2003 - dbu)
200.    CASE                               \ choose file name
201.        6 OF S" dpans6.htm#"  out ENDOF
202.        7 OF S" dpans7.htm#"  out ENDOF
203.        8 OF S" dpans8.htm#"  out ENDOF
204.        9 OF S" dpans9.htm#"  out ENDOF
205.       10 OF S" dpans10.htm#" out ENDOF
206.       11 OF S" dpans11.htm#" out ENDOF
207.       12 OF S" dpans12.htm#" out ENDOF
208.       13 OF S" dpans13.htm#" out ENDOF
209.       14 OF S" dpans14.htm#" out ENDOF
210.       15 OF S" dpans15.htm#" out ENDOF
211.       16 OF S" dpans16.htm#" out ENDOF
212.       17 OF S" dpans17.htm#" out ENDOF
213.       ABORT" Undefined source file"
214.    ENDCASE  out "out s" >" out
246.    dpanspath COUNT out                          \ output path to ANS files /4a/
247.    COUNT 2DUP + >R  out S" #" out               \ output file name      /4/
248.    R> COUNT out misctext 2 line                 \ and anchor name
215.    1 attrib !
216.    R> 2@ SWAP EXECUTE EXECUTE ;                 \ extra attributes
217.  
218. : genHTML ( -- )                                \ generate pending HTML
249.    1 attrib !
250.    R> 2@ SWAP EXECUTE EXECUTE ;                 \ extra attributes
251.  
252. : genHTML ( -- )                                \ generate pending HTML
219.    PAD COUNT DUP IF setcolor THEN outh /a  0 PAD ! ;
253.    token COUNT DUP IF setcolor THEN outh closefont /a  0 token ! ;
220.  
221. : isnumber? ( addr len -- f )                   \ string converts to number?
222.    0 0 2SWAP >NUMBER NIP NIP NIP 0= ;
223.  
224. : hparse ( a len char -- a' len' )
225.    >R 2DUP R@ SKIP R> SCAN BL SCAN
254.  
255. : isnumber? ( addr len -- f )                   \ string converts to number?
256.    0 0 2SWAP >NUMBER NIP NIP NIP 0= ;
257.  
258. : hparse ( a len char -- a' len' )
259.    >R 2DUP R@ SKIP R> SCAN BL SCAN
226.    2SWAP 2 PICK - PAD +PLACE ;
260.    2SWAP 2 PICK - token +PLACE ;
227.  
261.  
228. \ size for XPAD and EPAD increased to avoid crashes in
229. \ files with long lines December 30th, 2003 - dbu
230. CREATE XPAD 1024 CHARS ALLOT                     \ temporary pad for word storage
231. CREATE EPAD 1024 CHARS ALLOT                     \ temporary pad for evaluation
232.  
233. : >XPAD ( -- ) PAD COUNT BL SKIP XPAD PLACE ;   \ move to temporary pad
262. : >XPAD ( -- ) token COUNT BL SKIP XPAD PLACE ; \ move to temporary pad
234.  
235. : hint  ( addr len -- )                         \ interpret one line...
236.    BEGIN
263.  
264. : hint  ( addr len -- )                         \ interpret one line...
265.    BEGIN
237.       0 PAD !  BL hparse PAD C@
266.       0 token !  BL hparse token C@
238.    WHILE unknown                                \ default color
239.       >XPAD XPAD COUNT hyperlinks SEARCH-WORDLIST \ got a hyperlink for this?
240.       IF DEPTH >R EXECUTE
241.          R> DEPTH <> ABORT" stack depth change in HTML generator"
242.       ELSE
243.          XPAD COUNT BASE @ 10 = IF
244.             >FLOAT IF FDROP numeric THEN        \ valid float or integer
245.          ELSE
246.             isnumber? IF numeric THEN
247.          THEN
248.       THEN genHTML
249.    REPEAT 2DROP
267.    WHILE unknown                                \ default color
268.       >XPAD XPAD COUNT hyperlinks SEARCH-WORDLIST \ got a hyperlink for this?
269.       IF DEPTH >R EXECUTE
270.          R> DEPTH <> ABORT" stack depth change in HTML generator"
271.       ELSE
272.          XPAD COUNT BASE @ 10 = IF
273.             >FLOAT IF FDROP numeric THEN        \ valid float or integer
274.          ELSE
275.             isnumber? IF numeric THEN
276.          THEN
277.       THEN genHTML
278.    REPEAT 2DROP
250.    new-line ;                             \ new line
251.  
252. CREATE inbuf 260 CHARS ALLOT
253. CREATE fn    128 CHARS ALLOT                    \ file name
254. CREATE fn1   128 CHARS ALLOT                    \ file name backup
255. CREATE pstr  128 CHARS ALLOT                    \ parsed string storage
256. CREATE uname  64 CHARS ALLOT                    \ : definition name
257. 0 VALUE inf
258. VARIABLE nufile                                 \ T if nesting a file
259. VARIABLE utype                                  \ type of defined word
260. VARIABLE hstate
261. VARIABLE linenum
262. VARIABLE special                                \ special action, 0=none
279.    S" <br />" outln ;                           \ new line
263.  
264. : ofn   ( -- addr len )                         \ output file name
265.    fn COUNT 2DUP [CHAR] . SCAN NIP - EPAD PLACE
266.    S" .htm" EPAD +PLACE   EPAD COUNT ;
267.  
268. : hcreate ( addr len -- )
280.  
281. : ofn   ( -- addr len )                         \ output file name
282.    fn COUNT 2DUP [CHAR] . SCAN NIP - EPAD PLACE
283.    S" .htm" EPAD +PLACE   EPAD COUNT ;
284.  
285. : hcreate ( addr len -- )
 
286.    DUP 0= IF 2DROP S" fakename" THEN            \ in case the name is missing
269.    S" CREATE " EPAD PLACE  EPAD +PLACE
270.    GET-CURRENT >R hyperlinks SET-CURRENT
271.    EPAD COUNT EVALUATE    R> SET-CURRENT ;      \ create a hyperlink generator
272.  
273. \ The user defined words use the following data structure:
274. \ CELL   xt of coloring word
275. \ STRING name of reference word
276. \ STRING name of file
277.  
278. : deflink ( addr -- )                           \ make hyperlink from data structure
279.    DUP @ EXECUTE CELL+                          \ set color
280.    DUP COUNT + COUNT ofn COMPARE                \ in an external file?
281.    IF   misctext 0 line DUP COUNT + COUNT out   \ yes, put file name
282.         S" #" out COUNT outh S" >" out
287.    S" CREATE " EPAD PLACE  EPAD +PLACE
288.    GET-CURRENT >R hyperlinks SET-CURRENT
289.    EPAD COUNT EVALUATE    R> SET-CURRENT ;      \ create a hyperlink generator
290.  
291. \ The user defined words use the following data structure:
292. \ CELL   xt of coloring word
293. \ STRING name of reference word
294. \ STRING name of file
295.  
296. : deflink ( addr -- )                           \ make hyperlink from data structure
297.    DUP @ EXECUTE CELL+                          \ set color
298.    DUP COUNT + COUNT ofn COMPARE                \ in an external file?
299.    IF   misctext 0 line DUP COUNT + COUNT out   \ yes, put file name
300.         S" #" out COUNT outh S" >" out
283.    ELSE misctext 3 line COUNT outh              \ no, just use the name
301.    ELSE misctext 3 line COUNT outhattr          \ no, just use the name
284.         misctext 4 line
285.    THEN 1 attrib ! ;
286.  
287. : defx  ( a len xt -- a' len' )
288.    >R genHTML BL hparse >XPAD                   \ output defining word
302.         misctext 4 line
303.    THEN 1 attrib ! ;
304.  
305. : defx  ( a len xt -- a' len' )
306.    >R genHTML BL hparse >XPAD                   \ output defining word
289.    XPAD COUNT 2DUP hcreate R> , (,$) ofn (,$)
307.    XPAD COUNT 2DUP hcreate R> , ,$ ofn ,$
290.    DOES> deflink ;
291.  
308.    DOES> deflink ;
309.  
292. : labelnow   genHTML XPAD COUNT label ;
310. : labelnow   genHTML XPAD COUNT label ;         \ /4/
293. : defdat ['] numeric   defx numeric   labelnow ;
294. : defvar ['] variables defx variables labelnow ;
295. : defusr ['] userwords defx userwords labelnow ;
296. : defval ['] values    defx values    labelnow ;
297. : defdef ['] userdefiner defx userdefiner labelnow ;
298.  
299. : hstate=0 ( -- )             0 hstate ! ;
300. : hstate=1 ( -- )             1 hstate ! ;
301. : spec=zero ( -- )            1 special ! ;
302. : skip)  ( a len -- a' len' ) [CHAR] ) hparse ;
311. : defdat ['] numeric   defx numeric   labelnow ;
312. : defvar ['] variables defx variables labelnow ;
313. : defusr ['] userwords defx userwords labelnow ;
314. : defval ['] values    defx values    labelnow ;
315. : defdef ['] userdefiner defx userdefiner labelnow ;
316.  
317. : hstate=0 ( -- )             0 hstate ! ;
318. : hstate=1 ( -- )             1 hstate ! ;
319. : spec=zero ( -- )            1 special ! ;
320. : skip)  ( a len -- a' len' ) [CHAR] ) hparse ;
303. : skip}  ( a len -- a' len' ) [CHAR] } hparse ;
321. : skip}  ( a len -- a' len' ) [CHAR] } hparse ; \ /4a/
304. : skipw  ( a len -- a' len' ) BL hparse ;
305. : skipc  ( a len -- a len )   hstate @ 0= IF numeric skipw THEN ;
322. : skipw  ( a len -- a' len' ) BL hparse ;
323. : skipc  ( a len -- a len )   hstate @ 0= IF numeric skipw THEN ;
306. : skip"  ( a len -- a' len' )                   \ copy string to pstr
307.    genHTML [CHAR] " hparse PAD COUNT 1- pstr PLACE ;
324. : skip"  ( a len -- a' len' )                   \ copy string to "str"
325.    genHTML [CHAR] " hparse token COUNT 1- "str" PLACE ;
308.  
309. \ ------------------------------------------------------------------------------
310. \ ":" definitions might be defining words, so they can't be assumed to be defusr
311. \ types. ":" makes a label and saves the name for later use by ";" which makes
312. \ a hyperlink or a hyperlink defining word.
313.  
314. :NONAME                                         \ normal : definition
326.  
327. \ ------------------------------------------------------------------------------
328. \ ":" definitions might be defining words, so they can't be assumed to be defusr
329. \ types. ":" makes a label and saves the name for later use by ";" which makes
330. \ a hyperlink or a hyperlink defining word.
331.  
332. :NONAME                                         \ normal : definition
315.    uname COUNT ['] userwords defx 2DROP  0 PAD !
333.    uname COUNT ['] userwords defx 2DROP  0 token !
316. ; CONSTANT normal_def
317.  
318. :NONAME
334. ; CONSTANT normal_def
335.  
336. :NONAME
319.    uname COUNT 2DUP hcreate ['] userwords , (,$) ofn (,$)
337.    uname COUNT 2DUP hcreate ['] userwords , ,$ ofn ,$
320.    DOES> deflink defdef
321. ; CONSTANT defining_def
322.  
323. : defunk ( a len -- a' len' )                   \ starting unknown definition
324.    hstate=1  normal_def utype !                 \ save name of : definition
338.    DOES> deflink defdef
339. ; CONSTANT defining_def
340.  
341. : defunk ( a len -- a' len' )                   \ starting unknown definition
342.    hstate=1  normal_def utype !                 \ save name of : definition
325.    genHTML skipw userwords PAD COUNT BL SKIP 2DUP uname PLACE label ;
343.    genHTML skipw userwords token COUNT BL SKIP 2DUP uname PLACE label ;
326.  
327. : resunk ( -- )                                 \ resolve unknown defined word
344.  
345. : resunk ( -- )                                 \ resolve unknown defined word
328.    genHTML utype @ EXECUTE
329.    hstate=0                                     \ ; cleanup
330.    GET-ORDER hyperlinks 1 SET-ORDER
331.    S" L#O#C#A#L" EVALUATE                       \ forget locals
332.    SET-ORDER ;
346.    genHTML utype @ EXECUTE hstate=0 ;
333.  
334. : created ( -- ) hstate @
335.    IF   defining_def utype !                    \ make ; create a defining word
336.    ELSE defdat                                  \ not compiling
337.    THEN ;
338.  
339. \ ------------------------------------------------------------------------------
340.  
347.  
348. : created ( -- ) hstate @
349.    IF   defining_def utype !                    \ make ; create a defining word
350.    ELSE defdat                                  \ not compiling
351.    THEN ;
352.  
353. \ ------------------------------------------------------------------------------
354.  
341. : header_out  ( addr len -- )                   \ output big header text
355. : header  ( addr len -- )                       \ output big header text /4b/
342.    misctext 6 line
356.    misctext 6 line
343.  
344.    LINK-TO-ORG-FILE
345.    IF   misctext 9 line 2dup outln misctext 2 line
346.         outln  misctext 10 line
347.    ELSE out
348.  
357.    linksource
358.    IF   misctext 0 line
359.         2dup out misctext 2 line
360.         outln  misctext 9 line
361.    ELSE outln
349.    THEN misctext 7 line ;
350.  
362.    THEN misctext 7 line ;
363.  
351. : _incfil ( addr -- )                           \ trigger file nesting
352.    fn COUNT fn1 PLACE COUNT BL SKIP fn place 1 nufile ! ;
364. : _incfil ( addr -- )                           \ trigger file nesting      /4/
365.    nestable 0= IF DROP EXIT THEN                \ don't nest files if disabled
366.    COUNT BL SKIP  2DUP R/O OPEN-FILE            \ can the file be opened?
367.    IF   DROP 2DROP                              \ no
368.    ELSE CLOSE-FILE DROP                         \ yes
369.         fn COUNT fn1 PLACE  fn PLACE 1 nufile !
370.    THEN ;
353.  
354. : incfile ( a len -- a' len' )                  \ include a file
371.  
372. : incfile ( a len -- a' len' )                  \ include a file
355.    genHTML skipw PAD _incfil ;
373.    genHTML skipw token _incfil ;
356.  
357. : "incfil ( a len -- a' len' )                  \ include file from S" filename"
374.  
375. : "incfil ( a len -- a' len' )                  \ include file from S" filename"
358.    skipw pstr _incfil ;
376.    skipw "str" _incfil ;
359.  
377.  
360. : hfill  ( -- len )                             \ read next line of file
361.    inbuf 256 inf READ-LINE ABORT" Error reading file"
378. : hfill  ( -- len ior )                         \ read next line of file
379.    inbuf 256 BL FILL
380.    XPAD 256 inf READ-LINE ABORT" Error reading file"
381.    >R >R 0 XPAD R> BOUNDS                       ( idx . . )
382.    ?DO  I C@ 9 = IF 3 RSHIFT 1+ 3 LSHIFT        \ tab
383.         ELSE I C@ OVER 255 AND CHARS inbuf + C!
384.            1+ DUP 256 = IF CR ." Input line too long" THEN
385.         THEN
386.    LOOP R>
362.    1 linenum +! ;
363.  
364. : open  ( -- ) cr ." Reading " fn COUNT type ."  at line " linenum @ .
387.    1 linenum +! ;
388.  
389. : open  ( -- ) cr ." Reading " fn COUNT type ."  at line " linenum @ .
365.    1 linenum !
390.    0 linenum !
366.    fn COUNT R/O OPEN-FILE ABORT" Error opening source file" to inf ;
367.  
368. : close  ( -- ) cr ." closing " fn COUNT type
369.    inf CLOSE-FILE ABORT" Error closing file" ;
370.  
391.    fn COUNT R/O OPEN-FILE ABORT" Error opening source file" to inf ;
392.  
393. : close  ( -- ) cr ." closing " fn COUNT type
394.    inf CLOSE-FILE ABORT" Error closing file" ;
395.  
 
396. : .title ( addr len -- )                        \ output as title string
397.    BOUNDS ?DO I C@ BL = IF S" %20" out ELSE I 1 out THEN LOOP ;
398. 
371. : oopen  ( -- )
372.    ofn W/O CREATE-FILE ABORT" Error creating file" to outf
373.    begin_header boiler                          \ begin boilerplate
399. : oopen  ( -- )
400.    ofn W/O CREATE-FILE ABORT" Error creating file" to outf
401.    begin_header boiler                          \ begin boilerplate
374.    fn COUNT outln  mid_header boiler            \ title and end boilerplate
375.    fn COUNT header_out ;
402.    fn COUNT .title  mid_header boiler           \ title and end boilerplate
403.    bold IF S" <b>" out THEN
404.    fn COUNT header ;
376.  
377. : HTML  ( <infile> -- )
405.  
406. : HTML  ( <infile> -- )
 
407.    S" /basic-links/" hyperlinks SEARCH-WORDLIST
408.    IF   EXECUTE  THEN                           \ remove user hyperlinks
409.    GET-CURRENT >R hyperlinks SET-CURRENT        \ replace the fence
410.    S" MARKER /basic-links/" EVALUATE
411.    R> SET-CURRENT
378.    0 TO screen-only  0 nufile ! 1 linenum !     \ force usage of file
412.    0 TO screen-only  0 nufile ! 1 linenum !     \ force usage of file
379.    -1 active-color !                            \ there's no active color yet
380. \ 1 TO screen-only
413.    0 infont !                                   \ /4b/
381.    BL WORD COUNT fn PLACE open oopen            \ open input and output files
382.    -1 DUP >R outf >R                            \ file nest uses stacks
383.    hstate=0
384.    BEGIN
385.       BEGIN 0 special !                         \ process line
386.          nufile @                               \ nest a file?
387.          IF   inf outf
388.               open oopen  outf >R               \ open new files
389.               0 nufile !
390.          THEN hfill
391.       WHILE inbuf SWAP hint
392.       REPEAT DROP
393.       close fn1 COUNT fn PLACE                  \ restore file name
394.       DUP -1 <>
395.       IF   TO outf TO inf FALSE                 \ unnest files
396.       ELSE TRUE
397.       THEN
398.    UNTIL DROP
399.    BEGIN R> DUP -1 <>                           \ close all output files
414.    BL WORD COUNT fn PLACE open oopen            \ open input and output files
415.    -1 DUP >R outf >R                            \ file nest uses stacks
416.    hstate=0
417.    BEGIN
418.       BEGIN 0 special !                         \ process line
419.          nufile @                               \ nest a file?
420.          IF   inf outf
421.               open oopen  outf >R               \ open new files
422.               0 nufile !
423.          THEN hfill
424.       WHILE inbuf SWAP hint
425.       REPEAT DROP
426.       close fn1 COUNT fn PLACE                  \ restore file name
427.       DUP -1 <>
428.       IF   TO outf TO inf FALSE                 \ unnest files
429.       ELSE TRUE
430.       THEN
431.    UNTIL DROP
432.    BEGIN R> DUP -1 <>                           \ close all output files
400.    WHILE end_header                             \ finish up HTML
433.    WHILE  S" </p>" out bold IF S" </b>" out THEN \ /4b/
434.       end_header                                 \ finish up HTML
401.       close-file ABORT" Error closing file"
402.    REPEAT DROP ;
403.  
404. : q  ( -- ) 1 TO screen-only                    \ single line test
405.    -1 word count inbuf place inbuf count hint ;
406.  
407. \ 0 [IF] is often used as a comment. If it is used as a comment, scan the file
408. \ for a [THEN]. [THEN] must be on the next line or beyond.
409.  
410. : upp ( an--) BOUNDS ?DO I C@ [CHAR] a > IF I C@ 32 - I C! THEN LOOP \ uppercase
411. ;
412.  
435.       close-file ABORT" Error closing file"
436.    REPEAT DROP ;
437.  
438. : q  ( -- ) 1 TO screen-only                    \ single line test
439.    -1 word count inbuf place inbuf count hint ;
440.  
441. \ 0 [IF] is often used as a comment. If it is used as a comment, scan the file
442. \ for a [THEN]. [THEN] must be on the next line or beyond.
443.  
444. : upp ( an--) BOUNDS ?DO I C@ [CHAR] a > IF I C@ 32 - I C! THEN LOOP \ uppercase
445. ;
446.  
413. : bigif  ( a len -- a len )  special @ 1 =
414.    IF    genHTML commentary setcolor outh       \ finish up this line
415.       BEGIN hfill      new-line
416.       WHILE >R inbuf EPAD R@ MOVE
417.          EPAD R@ upp                            \ uppercase for search
418.          EPAD R@ S" [THEN]" SEARCH
419.          IF   DROP EPAD - inbuf OVER PAD PLACE  \ before [THEN] is comment
420.               genHTML
421.               inbuf R> ROT /STRING EXIT
422.          ELSE 2DROP inbuf R> outh               \ whole line is comment
423.          THEN
424.       REPEAT DROP -1 ABORT" Missing [THEN]"
425.    THEN ;
447. CREATE terminator 16 CHARS ALLOT                \ multiline comment terminator
426.  
448.  
427. : _local  ( a len -- a len )                    \ define locals to |
428.    genHTML
429.    S" MARKER L#O#C#A#L" EVALUATE                \ start a list of locals
430.    BEGIN
431.       BEGIN 2DUP BL hparse 2DROP
432.             PAD COUNT BL SKIP  DUP              \ inputstring wordstring .
433.       WHILE S" |" COMPARE  0 PAD !
434.          IF   defval
435.          ELSE local_ws EXIT
436.          THEN
437.       REPEAT 2DROP 2DROP
438.       hfill 0= ABORT" Missing | in locals list"
439.       inbuf SWAP  S"  " outln
440.    AGAIN ;
441.  
442. \ handle multi-line comments
443. \ (( )) and comment: comment; are often used as multi-line comments in win32forth.
444. \ )) or comment; must be on the next line or beyond.
445. variable mlc-stop
446.  
447. : (mlc) ( a -- )
448.       mlc-stop !
449.       commentary setcolor genHTML outh       \ finish up this line
450.       BEGIN hfill    new-line
449. : multicomment ( a len searchstring -- a' len' )
450.    terminator PLACE
451.    genHTML ital( commentary setcolor outh       \ finish up this line /4b/
452.    BEGIN hfill      S" <br />" outln
451.       WHILE >R inbuf EPAD R@ MOVE
452.          EPAD R@ upp                            \ uppercase for search
453.       WHILE >R inbuf EPAD R@ MOVE
454.          EPAD R@ upp                            \ uppercase for search
453.          EPAD R@ mlc-stop @ count SEARCH
454.          IF   DROP mlc-stop @ count nip + EPAD - inbuf OVER PAD PLACE  \ before )) and )) is comment
455.       EPAD R@ terminator COUNT SEARCH
456.       IF   DROP EPAD - inbuf OVER token PLACE   \ before [THEN] is comment
455.               genHTML
457.               genHTML
456.               inbuf R> ROT /STRING EXIT
458.            inbuf R> ROT /STRING
459.            )ital closefont EXIT
457.          ELSE 2DROP inbuf R> outh               \ whole line is comment
458.          THEN
460.          ELSE 2DROP inbuf R> outh               \ whole line is comment
461.          THEN
459.       REPEAT DROP ." Missing " mlc-stop @ count type ABORT
460. ;
462.    REPEAT inbuf SWAP )ital closefont ;          \ EOF found
461.  
463.  
462. : mlc ( <string> -- ) \ handle a multi line comment
463.    CREATE BL WORD COUNT (,$)
464.    DOES>  (mlc) ;
464. : bigif  ( a len -- a len )  special @ 1 =
465.    IF S" [THEN]" multicomment THEN ;
465.  
466. \ =============================================================================
467.  
468. : _DEFINITIONS DEFINITIONS ;
466.  
467. \ =============================================================================
468.  
469. : _DEFINITIONS DEFINITIONS ;
 
470. : _order order ;  : _words words ; : _see see ;
469.  
470. hyperlinks SET-CURRENT
471. \ The following words are not in the ANS standard but are very common.
471.  
472. hyperlinks SET-CURRENT
473. \ The following words are not in the ANS standard but are very common.
472. : L#O#C#A#L ;
 
473. : VOCABULARY    defusr ;
474. : DEFER         defusr ;
475. : INCLUDE       hstate @ 0= IF incfile THEN ;
476. : FLOAD         hstate @ 0= IF incfile THEN ;
477. : BINARY        2 BASE ! ;
478. : OCTAL         8 BASE ! ;
479. : 0             numeric spec=zero ;
480. : 1             numeric  ;
481. : -1            numeric  ;
474. : VOCABULARY    defusr ;
475. : DEFER         defusr ;
476. : INCLUDE       hstate @ 0= IF incfile THEN ;
477. : FLOAD         hstate @ 0= IF incfile THEN ;
478. : BINARY        2 BASE ! ;
479. : OCTAL         8 BASE ! ;
480. : 0             numeric spec=zero ;
481. : 1             numeric  ;
482. : -1            numeric  ;
 
483. : COMMENT:      S" COMMENT;" multicomment ;
484. : ((            S" ))"       multicomment ;
482.  
483. \ The following words are not in the ANS standard but are used in Win32Forth
485.  
486. \ The following words are not in the ANS standard but are used in Win32Forth
484. \ December 31st, 2003 - dbu
485. : ANEW          skipw ;
486. : {             commentary genHTML skip} ;
487. : CallBack:     defunk ;
488. : :M            defunk ;
489. : ;M            resunk ;
490. mlc ((          ))
491. mlc COMMENT:    COMMENT;
492.  
487. : ANEW          skipw ;                    \ /4a/
488. : {             commentary genHTML skip} ; \ /4a/
489. : CallBack:     defunk ;                   \ /4a/
490. : :M            defunk ;                   \ /4a/
491. : ;M            resunk ;                   \ /4a/
493.  
494. \ The rest is ANS Forth standard
495.  
492.  
493. \ The rest is ANS Forth standard
494.  
496. : \             commentary genHTML PAD PLACE  PAD 0 ;
495. : \             commentary ital( genHTML token PLACE genHTML )ital token 0 ;
497.  
496.  
498. (   NAME                ACTION  COLOR           REFERENCE   )
499. (   ------------------  ------  --------------  ----------- )
500. std !                   NOOP    core_ws         6.1.0010
501. std #                   NOOP    core_ws         6.1.0030
502. std #>                  NOOP    core_ws         6.1.0040
503. std #S                  NOOP    core_ws         6.1.0050
504. std '                   NOOP    core_ws         6.1.0070
505. std (                   skip)   commentary      6.1.0080
506. std *                   NOOP    core_ws         6.1.0090
507. std */                  NOOP    core_ws         6.1.0100
508. std */MOD               NOOP    core_ws         6.1.0110
509. std +                   NOOP    core_ws         6.1.0120
510. std +!                  NOOP    core_ws         6.1.0130
511. std +LOOP               NOOP    core_ws         6.1.0140
512. std ,                   NOOP    core_ws         6.1.0150
513. std -                   NOOP    core_ws         6.1.0160
514. std .                   NOOP    core_ws         6.1.0180
515. std ."                  skip"   numeric         6.1.0190
516. std /                   NOOP    core_ws         6.1.0230
517. std /MOD                NOOP    core_ws         6.1.0240
518. std 0<                  NOOP    core_ws         6.1.0250
519. std 0=                  NOOP    core_ws         6.1.0270
520. std 1+                  NOOP    core_ws         6.1.0290
521. std 1-                  NOOP    core_ws         6.1.0300
522. std 2!                  NOOP    core_ws         6.1.0310
523. std 2*                  NOOP    core_ws         6.1.0320
524. std 2/                  NOOP    core_ws         6.1.0330
525. std 2@                  NOOP    core_ws         6.1.0350
526. std 2DROP               NOOP    core_ws         6.1.0370
527. std 2DUP                NOOP    core_ws         6.1.0380
528. std 2OVER               NOOP    core_ws         6.1.0400
529. std 2SWAP               NOOP    core_ws         6.1.0430
530. std :                   defunk  core_ws         6.1.0450
531. std ;                   resunk  core_ws         6.1.0460
532. std <                   NOOP    core_ws         6.1.0480
533. std <#                  NOOP    core_ws         6.1.0490
534. std =                   NOOP    core_ws         6.1.0530
535. std >                   NOOP    core_ws         6.1.0540
536. std >BODY               NOOP    core_ws         6.1.0550
537. std >IN                 NOOP    core_ws         6.1.0560
538. std >NUMBER             NOOP    core_ws         6.1.0570
539. std >R                  NOOP    core_ws         6.1.0580
540. std ?DUP                NOOP    core_ws         6.1.0630
541. std @                   NOOP    core_ws         6.1.0650
542. std ABORT               NOOP    core_ws         6.1.0670
543. std ABORT"              skip"   numeric         6.1.0680
544. std ABS                 NOOP    core_ws         6.1.0690
545. std ACCEPT              NOOP    core_ws         6.1.0695
546. std ALIGN               NOOP    core_ws         6.1.0705
547. std ALIGNED             NOOP    core_ws         6.1.0706
548. std ALLOT               NOOP    core_ws         6.1.0710
549. std AND                 NOOP    core_ws         6.1.0720
550. std BASE                NOOP    core_ws         6.1.0750
551. std BEGIN               NOOP    core_ws         6.1.0760
552. std BL                  NOOP    numeric         6.1.0770
553. std C!                  NOOP    core_ws         6.1.0850
554. std C,                  NOOP    core_ws         6.1.0860
555. std C@                  NOOP    core_ws         6.1.0870
556. std CELL+               NOOP    core_ws         6.1.0880
557. std CELLS               NOOP    core_ws         6.1.0890
558. std CHAR                skipc   core_ws         6.1.0895
559. std CHAR+               NOOP    core_ws         6.1.0897
560. std CHARS               NOOP    core_ws         6.1.0898
561. std CONSTANT            defdat  core_ws         6.1.0950
562. std COUNT               NOOP    core_ws         6.1.0980
563. std CR                  NOOP    core_ws         6.1.0990
564. std CREATE              created core_ws         6.1.1000
565. std DECIMAL             DECIMAL core_ws         6.1.1170
566. std DEPTH               NOOP    core_ws         6.1.1200
567. std DO                  NOOP    core_ws         6.1.1240
568. std DOES>               NOOP    core_ws         6.1.1250
569. std DROP                NOOP    core_ws         6.1.1260
570. std DUP                 NOOP    core_ws         6.1.1290
571. std ELSE                NOOP    core_ws         6.1.1310
572. std EMIT                NOOP    core_ws         6.1.1320
573. std ENVIRONMENT?        NOOP    core_ws         6.1.1345
574. std EVALUATE            NOOP    core_ws         6.1.1360
575. std EXECUTE             NOOP    core_ws         6.1.1370
576. std EXIT                NOOP    core_ws         6.1.1380
577. std FILL                NOOP    core_ws         6.1.1540
578. std FIND                NOOP    core_ws         6.1.1550
579. std FM/MOD              NOOP    core_ws         6.1.1561
580. std HERE                NOOP    core_ws         6.1.1650
581. std HOLD                NOOP    core_ws         6.1.1670
582. std I                   NOOP    core_ws         6.1.1680
583. std IF                  NOOP    core_ws         6.1.1700
584. std IMMEDIATE           NOOP    core_ws         6.1.1710
585. std INVERT              NOOP    core_ws         6.1.1720
586. std J                   NOOP    core_ws         6.1.1730
587. std KEY                 NOOP    core_ws         6.1.1750
588. std LEAVE               NOOP    core_ws         6.1.1760
589. std LITERAL             NOOP    core_ws         6.1.1780
590. std LOOP                NOOP    core_ws         6.1.1800
591. std LSHIFT              NOOP    core_ws         6.1.1805
592. std M*                  NOOP    core_ws         6.1.1810
593. std MAX                 NOOP    core_ws         6.1.1870
594. std MIN                 NOOP    core_ws         6.1.1880
595. std MOD                 NOOP    core_ws         6.1.1890
596. std MOVE                NOOP    core_ws         6.1.1900
597. std NEGATE              NOOP    core_ws         6.1.1910
598. std OR                  NOOP    core_ws         6.1.1980
599. std OVER                NOOP    core_ws         6.1.1990
600. std POSTPONE            NOOP    core_ws         6.1.2033
601. std QUIT                NOOP    core_ws         6.1.2050
602. std R>                  NOOP    core_ws         6.1.2060
603. std R@                  NOOP    core_ws         6.1.2070
604. std RECURSE             NOOP    core_ws         6.1.2120
605. std REPEAT              NOOP    core_ws         6.1.2140
606. std ROT                 NOOP    core_ws         6.1.2160
607. std RSHIFT              NOOP    core_ws         6.1.2162
608. std S"                  skip"   numeric         6.1.2165
609. std S>D                 NOOP    core_ws         6.1.2170
610. std SIGN                NOOP    core_ws         6.1.2210
611. std SM/REM              NOOP    core_ws         6.1.2214
612. std SOURCE              NOOP    core_ws         6.1.2216
613. std SPACE               NOOP    core_ws         6.1.2220
614. std SPACES              NOOP    core_ws         6.1.2230
615. std STATE               NOOP    core_ws         6.1.2250
616. std SWAP                NOOP    core_ws         6.1.2260
617. std THEN                NOOP    core_ws         6.1.2270
618. std TYPE                NOOP    core_ws         6.1.2310
619. std U.                  NOOP    core_ws         6.1.2320
620. std U<                  NOOP    core_ws         6.1.2340
621. std UM*                 NOOP    core_ws         6.1.2360
622. std UM/MOD              NOOP    core_ws         6.1.2370
623. std UNLOOP              NOOP    core_ws         6.1.2380
624. std UNTIL               NOOP    core_ws         6.1.2390
625. std VARIABLE            defvar  core_ws         6.1.2410
626. std WHILE               NOOP    core_ws         6.1.2430
627. std WORD                NOOP    core_ws         6.1.2450
628. std XOR                 NOOP    core_ws         6.1.2490
629. std [                  hstate=0 core_ws         6.1.2500
630. std [']                 skipw   numeric         6.1.2510
631. std [CHAR]              skipw   numeric         6.1.2520
632. std ]                  hstate=1 core_ws         6.1.2540
633. std #TIB                NOOP    core_ext_ws     6.2.0060
634. std .(                  skip)   commentary      6.2.0200
635. std .R                  NOOP    core_ext_ws     6.2.0210
636. std 0<>                 NOOP    core_ext_ws     6.2.0260
637. std 0>                  NOOP    core_ext_ws     6.2.0280
638. std 2>R                 NOOP    core_ext_ws     6.2.0340
639. std 2R>                 NOOP    core_ext_ws     6.2.0410
640. std 2R@                 NOOP    core_ext_ws     6.2.0415
641. std :NONAME             NOOP    core_ext_ws     6.2.0455
642. std <>                  NOOP    core_ext_ws     6.2.0500
643. std ?DO                 NOOP    core_ext_ws     6.2.0620
644. std AGAIN               NOOP    core_ext_ws     6.2.0700
645. std C"                  skip"   numeric         6.2.0855
646. std CASE                NOOP    core_ext_ws     6.2.0873
647. std COMPILE,            NOOP    core_ext_ws     6.2.0945
648. std CONVERT             NOOP    core_ext_ws     6.2.0970
649. std ENDCASE             NOOP    core_ext_ws     6.2.1342
650. std ENDOF               NOOP    core_ext_ws     6.2.1343
651. std ERASE               NOOP    core_ext_ws     6.2.1350
652. std EXPECT              NOOP    core_ext_ws     6.2.1390
653. std FALSE             spec=zero numeric         6.2.1485
654. std HEX                 HEX     core_ext_ws     6.2.1660
655. std MARKER              defusr  core_ext_ws     6.2.1850
656. std NIP                 NOOP    core_ext_ws     6.2.1930
657. std OF                  NOOP    core_ext_ws     6.2.1950
658. std PAD                 NOOP    core_ext_ws     6.2.2000
659. std PARSE               NOOP    core_ext_ws     6.2.2008
660. std PICK                NOOP    core_ext_ws     6.2.2030
661. std QUERY               NOOP    core_ext_ws     6.2.2040
662. std REFILL              NOOP    core_ext_ws     6.2.2125
663. std RESTORE-INPUT       NOOP    core_ext_ws     6.2.2148
664. std ROLL                NOOP    core_ext_ws     6.2.2150
665. std SAVE-INPUT          NOOP    core_ext_ws     6.2.2182
666. std SOURCE-ID           NOOP    core_ext_ws     6.2.2218
667. std SPAN                NOOP    core_ext_ws     6.2.2240
668. std TIB                 NOOP    core_ext_ws     6.2.2290
669. std TO                  NOOP    core_ext_ws     6.2.2295
670. std TRUE                NOOP    numeric         6.2.2298
671. std TUCK                NOOP    core_ext_ws     6.2.2300
672. std U.R                 NOOP    core_ext_ws     6.2.2330
673. std U>                  NOOP    core_ext_ws     6.2.2350
674. std UNUSED              NOOP    core_ext_ws     6.2.2395
675. std VALUE               defval  core_ext_ws     6.2.2405
676. std WITHIN              NOOP    core_ext_ws     6.2.2440
677. std [COMPILE]           NOOP    core_ext_ws     6.2.2530
678. std BLK                 NOOP    block_ws        7.6.1.0790
679. std BLOCK               NOOP    block_ws        7.6.1.0800
680. std BUFFER              NOOP    block_ws        7.6.1.0820
681. std FLUSH               NOOP    block_ws        7.6.1.1559
682. std LOAD                NOOP    block_ws        7.6.1.1790
683. std SAVE-BUFFERS        NOOP    block_ws        7.6.1.2180
684. std UPDATE              NOOP    block_ws        7.6.1.2400
685. std EMPTY-BUFFERS       NOOP    block_ws        7.6.2.1330
686. std LIST                NOOP    block_ws        7.6.2.1770
687. std SCR                 NOOP    block_ws        7.6.2.2190
688. std THRU                NOOP    block_ws        7.6.2.2280
689. std 2CONSTANT           defdat  double_ws       8.6.1.0360
690. std 2LITERAL            NOOP    double_ws       8.6.1.0390
691. std 2VARIABLE           defvar  double_ws       8.6.1.0440
692. std D+                  NOOP    double_ws       8.6.1.1040
693. std D-                  NOOP    double_ws       8.6.1.1050
694. std D.                  NOOP    double_ws       8.6.1.1060
695. std D.R                 NOOP    double_ws       8.6.1.1070
696. std D0<                 NOOP    double_ws       8.6.1.1075
697. std D0=                 NOOP    double_ws       8.6.1.1080
698. std D2*                 NOOP    double_ws       8.6.1.1090
699. std D2/                 NOOP    double_ws       8.6.1.1100
700. std D<                  NOOP    double_ws       8.6.1.1110
701. std D=                  NOOP    double_ws       8.6.1.1120
702. std D>S                 NOOP    double_ws       8.6.1.1140
703. std DABS                NOOP    double_ws       8.6.1.1160
704. std DMAX                NOOP    double_ws       8.6.1.1210
705. std DMIN                NOOP    double_ws       8.6.1.1220
706. std DNEGATE             NOOP    double_ws       8.6.1.1230
707. std M*/                 NOOP    double_ws       8.6.1.1820
708. std M+                  NOOP    double_ws       8.6.1.1830
709. std 2ROT                NOOP    double_ws       8.6.2.0420
710. std DU<                 NOOP    double_ws       8.6.2.1270
711. std CATCH               NOOP    exception_ws    9.6.1.0875
712. std THROW               NOOP    exception_ws    9.6.1.2275
713. std AT-XY               NOOP    facilities_ws   10.6.1.0742
714. std KEY?                NOOP    facilities_ws   10.6.1.1755
715. std PAGE                NOOP    facilities_ws   10.6.1.2005
716. std EKEY                NOOP    facilities_ws   10.6.2.1305
717. std EKEY<CHAR           NOOP    facilities_ws   10.6.2.1306
718. std EKEY?               NOOP    facilities_ws   10.6.2.1307
719. std EMIT?               NOOP    facilities_ws   10.6.2.1325
720. std MS                  NOOP    facilities_ws   10.6.2.1905
721. std TIME&DATE           NOOP    facilities_ws   10.6.2.2292
722. std BIN                 NOOP    file_ws         11.6.1.0765
723. std CLOSE-FILE          NOOP    file_ws         11.6.1.0900
724. std CREATE-FILE         NOOP    file_ws         11.6.1.1010
725. std DELETE-FILE         NOOP    file_ws         11.6.1.1190
726. std FILE-POSITION       NOOP    file_ws         11.6.1.1520
727. std FILE-SIZE           NOOP    file_ws         11.6.1.1522
728. std INCLUDE-FILE        NOOP    file_ws         11.6.1.1717
729. std INCLUDED            "incfil file_ws         11.6.1.1718
730. std OPEN-FILE           NOOP    file_ws         11.6.1.1970
731. std R/O                 NOOP    file_ws         11.6.1.2054
732. std R/W                 NOOP    file_ws         11.6.1.2056
733. std READ-FILE           NOOP    file_ws         11.6.1.2080
734. std READ-LINE           NOOP    file_ws         11.6.1.2090
735. std REPOSITION-FILE     NOOP    file_ws         11.6.1.2142
736. std RESIZE-FILE         NOOP    file_ws         11.6.1.2147
737. std W/O                 NOOP    file_ws         11.6.1.2425
738. std WRITE-FILE          NOOP    file_ws         11.6.1.2480
739. std WRITE-LINE          NOOP    file_ws         11.6.1.2485
740. std FILE-STATUS         NOOP    file_ws         11.6.2.1524
741. std FLUSH-FILE          NOOP    file_ws         11.6.2.1560
742. std RENAME-FILE         NOOP    file_ws         11.6.2.2130
743. std >FLOAT              NOOP    fp_ws           12.6.1.0558
744. std D>F                 NOOP    fp_ws           12.6.1.1130
745. std F!                  NOOP    fp_ws           12.6.1.1400
746. std F*                  NOOP    fp_ws           12.6.1.1410
747. std F+                  NOOP    fp_ws           12.6.1.1420
748. std F-                  NOOP    fp_ws           12.6.1.1425
749. std F/                  NOOP    fp_ws           12.6.1.1430
750. std F0<                 NOOP    fp_ws           12.6.1.1440
751. std F0=                 NOOP    fp_ws           12.6.1.1450
752. std F<                  NOOP    fp_ws           12.6.1.1460
753. std F>D                 NOOP    fp_ws           12.6.1.1460
754. std F@                  NOOP    fp_ws           12.6.1.1472
755. std FALIGN              NOOP    fp_ws           12.6.1.1479
756. std FALIGNED            NOOP    fp_ws           12.6.1.1483
757. std FCONSTANT           defdat  fp_ws           12.6.1.1492
758. std FDEPTH              NOOP    fp_ws           12.6.1.1497
759. std FDROP               NOOP    fp_ws           12.6.1.1500
760. std FDUP                NOOP    fp_ws           12.6.1.1510
761. std FLITERAL            NOOP    fp_ws           12.6.1.1552
762. std FLOAT+              NOOP    fp_ws           12.6.1.1555
763. std FLOATS              NOOP    fp_ws           12.6.1.1556
764. std FLOOR               NOOP    fp_ws           12.6.1.1558
765. std FMAX                NOOP    fp_ws           12.6.1.1562
766. std FMIN                NOOP    fp_ws           12.6.1.1565
767. std FNEGATE             NOOP    fp_ws           12.6.1.1567
768. std FOVER               NOOP    fp_ws           12.6.1.1600
769. std FROT                NOOP    fp_ws           12.6.1.1610
770. std FROUND              NOOP    fp_ws           12.6.1.1612
771. std FSWAP               NOOP    fp_ws           12.6.1.1620
772. std FVARIABLE           defvar  fp_ws           12.6.1.1630
773. std REPRESENT           NOOP    fp_ws           12.6.1.2143
774. std DF!                 NOOP    fp_ws           12.6.2.1203
775. std DF@                 NOOP    fp_ws           12.6.2.1204
776. std DFALIGN             NOOP    fp_ws           12.6.2.1205
777. std DFALIGNED           NOOP    fp_ws           12.6.2.1207
778. std DFLOAT+             NOOP    fp_ws           12.6.2.1208
779. std DFLOATS             NOOP    fp_ws           12.6.2.1209
780. std F**                 NOOP    fp_ws           12.6.2.1415
781. std F.                  NOOP    fp_ws           12.6.2.1427
782. std FABS                NOOP    fp_ws           12.6.2.1474
783. std FACOS               NOOP    fp_ws           12.6.2.1476
784. std FACOSH              NOOP    fp_ws           12.6.2.1477
785. std FALOG               NOOP    fp_ws           12.6.2.1484
786. std FASIN               NOOP    fp_ws           12.6.2.1486
787. std FASINH              NOOP    fp_ws           12.6.2.1487
788. std FATAN               NOOP    fp_ws           12.6.2.1488
789. std FATAN2              NOOP    fp_ws           12.6.2.1489
790. std FATANH              NOOP    fp_ws           12.6.2.1491
791. std FCOS                NOOP    fp_ws           12.6.2.1493
792. std FCOSH               NOOP    fp_ws           12.6.2.1494
793. std FE.                 NOOP    fp_ws           12.6.2.1513
794. std FEXP                NOOP    fp_ws           12.6.2.1515
795. std FEXPM1              NOOP    fp_ws           12.6.2.1516
796. std FLN                 NOOP    fp_ws           12.6.2.1553
797. std FLNP1               NOOP    fp_ws           12.6.2.1554
798. std FLOG                NOOP    fp_ws           12.6.2.1557
799. std FS.                 NOOP    fp_ws           12.6.2.1613
800. std FSIN                NOOP    fp_ws           12.6.2.1614
801. std FSINCOS             NOOP    fp_ws           12.6.2.1616
802. std FSINH               NOOP    fp_ws           12.6.2.1617
803. std FSQRT               NOOP    fp_ws           12.6.2.1618
804. std FTAN                NOOP    fp_ws           12.6.2.1625
805. std FTANH               NOOP    fp_ws           12.6.2.1626
806. std F~                  NOOP    fp_ws           12.6.2.1640
807. std PRECISION           NOOP    fp_ws           12.6.2.2035
808. std SET-PRECISION       NOOP    fp_ws           12.6.2.2200
809. std SF!                 NOOP    fp_ws           12.6.2.2202
810. std SF@                 NOOP    fp_ws           12.6.2.2203
811. std SFALIGN             NOOP    fp_ws           12.6.2.2204
812. std SFALIGNED           NOOP    fp_ws           12.6.2.2206
813. std SFLOAT+             NOOP    fp_ws           12.6.2.2207
814. std SFLOATS             NOOP    fp_ws           12.6.2.2208
815. std (LOCAL)             NOOP    local_ws        13.6.1.0086
816. std LOCALS|             _local  local_ws        13.6.2.1795
817. std ALLOCATE            NOOP    malloc_ws       14.6.1.0707
818. std FREE                NOOP    malloc_ws       14.6.1.1605
819. std RESIZE              NOOP    malloc_ws       14.6.1.2145
820. std .S                  NOOP    progtools_ws    15.6.1.0220
821. std ?                   NOOP    progtools_ws    15.6.1.0600
822. std DUMP                NOOP    progtools_ws    15.6.1.1280
823. std SEE                 NOOP    progtools_ws    15.6.1.2194
824. std WORDS               NOOP    progtools_ws    15.6.1.2465
825. std ;CODE               resunk  progtools_ws    15.6.2.0470
826. std AHEAD               NOOP    progtools_ws    15.6.2.0702
827. std ASSEMBLER           NOOP    progtools_ws    15.6.2.0740
828. std BYE                 NOOP    progtools_ws    15.6.2.0830
829. std CODE                defusr  progtools_ws    15.6.2.0930
830. std CS-PICK             NOOP    progtools_ws    15.6.2.1015
831. std CS-ROLL             NOOP    progtools_ws    15.6.2.1020
832. std EDITOR              NOOP    progtools_ws    15.6.2.1300
833. std FORGET              NOOP    progtools_ws    15.6.2.1580
834. std [ELSE]              NOOP    progtools_ws    15.6.2.2531
835. std [IF]                bigif   progtools_ws    15.6.2.2532
836. std [THEN]              NOOP    progtools_ws    15.6.2.2533
837. std DEFINITIONS         NOOP    searchord_ws    16.6.1.1180
838. std FORTH-WORDLIST      NOOP    searchord_ws    16.6.1.1595
839. std GET-CURRENT         NOOP    searchord_ws    16.6.1.1643
840. std GET-ORDER           NOOP    searchord_ws    16.6.1.1647
841. std SEARCH-WORDLIST     NOOP    searchord_ws    16.6.1.2192
842. std SET-CURRENT         NOOP    searchord_ws    16.6.1.2195
843. std SET-ORDER           NOOP    searchord_ws    16.6.1.2197
844. std WORDLIST            NOOP    searchord_ws    16.6.1.2460
845. std ALSO                NOOP    searchord_ws    16.6.2.0715
846. std FORTH               NOOP    searchord_ws    16.6.2.1590
847. std ONLY                NOOP    searchord_ws    16.6.2.1965
848. std ORDER               NOOP    searchord_ws    16.6.2.1985
849. std PREVIOUS            NOOP    searchord_ws    16.6.2.2037
850. std -TRAILING           NOOP    string_ws       17.6.1.0170
851. std /STRING             NOOP    string_ws       17.6.1.0245
852. std BLANK               NOOP    string_ws       17.6.1.0780
853. std CMOVE               NOOP    string_ws       17.6.1.0910
854. std CMOVE>              NOOP    string_ws       17.6.1.0920
855. std COMPARE             NOOP    string_ws       17.6.1.0935
856. std SEARCH              NOOP    string_ws       17.6.1.2191
857. std SLITERAL            NOOP    string_ws       17.6.1.2212
497. (   NAME                ACTION  COLOR           FILENAME        REFERENCE )
498. (   ------------------  ------  --------------  -----------     --------- )
499. std !                   NOOP    core_ws         dpans6.htm      6.1.0010
500. std #                   NOOP    core_ws         dpans6.htm      6.1.0030
501. std #>                  NOOP    core_ws         dpans6.htm      6.1.0040
502. std #S                  NOOP    core_ws         dpans6.htm      6.1.0050
503. std '                   NOOP    core_ws         dpans6.htm      6.1.0070
504. std (                   skip)   commentary      dpans6.htm      6.1.0080
505. std *                   NOOP    core_ws         dpans6.htm      6.1.0090
506. std */                  NOOP    core_ws         dpans6.htm      6.1.0100
507. std */MOD               NOOP    core_ws         dpans6.htm      6.1.0110
508. std +                   NOOP    core_ws         dpans6.htm      6.1.0120
509. std +!                  NOOP    core_ws         dpans6.htm      6.1.0130
510. std +LOOP               NOOP    core_ws         dpans6.htm      6.1.0140
511. std ,                   NOOP    core_ws         dpans6.htm      6.1.0150
512. std -                   NOOP    core_ws         dpans6.htm      6.1.0160
513. std .                   NOOP    core_ws         dpans6.htm      6.1.0180
514. std ."                  skip"   numeric         dpans6.htm      6.1.0190
515. std /                   NOOP    core_ws         dpans6.htm      6.1.0230
516. std /MOD                NOOP    core_ws         dpans6.htm      6.1.0240
517. std 0<                  NOOP    core_ws         dpans6.htm      6.1.0250
518. std 0=                  NOOP    core_ws         dpans6.htm      6.1.0270
519. std 1+                  NOOP    core_ws         dpans6.htm      6.1.0290
520. std 1-                  NOOP    core_ws         dpans6.htm      6.1.0300
521. std 2!                  NOOP    core_ws         dpans6.htm      6.1.0310
522. std 2*                  NOOP    core_ws         dpans6.htm      6.1.0320
523. std 2/                  NOOP    core_ws         dpans6.htm      6.1.0330
524. std 2@                  NOOP    core_ws         dpans6.htm      6.1.0350
525. std 2DROP               NOOP    core_ws         dpans6.htm      6.1.0370
526. std 2DUP                NOOP    core_ws         dpans6.htm      6.1.0380
527. std 2OVER               NOOP    core_ws         dpans6.htm      6.1.0400
528. std 2SWAP               NOOP    core_ws         dpans6.htm      6.1.0430
529. std :                   defunk  core_ws         dpans6.htm      6.1.0450
530. std ;                   resunk  core_ws         dpans6.htm      6.1.0460
531. std <                   NOOP    core_ws         dpans6.htm      6.1.0480
532. std <#                  NOOP    core_ws         dpans6.htm      6.1.0490
533. std =                   NOOP    core_ws         dpans6.htm      6.1.0530
534. std >                   NOOP    core_ws         dpans6.htm      6.1.0540
535. std >BODY               NOOP    core_ws         dpans6.htm      6.1.0550
536. std >IN                 NOOP    core_ws         dpans6.htm      6.1.0560
537. std >NUMBER             NOOP    core_ws         dpans6.htm      6.1.0570
538. std >R                  NOOP    core_ws         dpans6.htm      6.1.0580
539. std ?DUP                NOOP    core_ws         dpans6.htm      6.1.0630
540. std @                   NOOP    core_ws         dpans6.htm      6.1.0650
541. std ABORT               NOOP    core_ws         dpans6.htm      6.1.0670
542. std ABORT"              skip"   numeric         dpans6.htm      6.1.0680
543. std ABS                 NOOP    core_ws         dpans6.htm      6.1.0690
544. std ACCEPT              NOOP    core_ws         dpans6.htm      6.1.0695
545. std ALIGN               NOOP    core_ws         dpans6.htm      6.1.0705
546. std ALIGNED             NOOP    core_ws         dpans6.htm      6.1.0706
547. std ALLOT               NOOP    core_ws         dpans6.htm      6.1.0710
548. std AND                 NOOP    core_ws         dpans6.htm      6.1.0720
549. std BASE                NOOP    core_ws         dpans6.htm      6.1.0750
550. std BEGIN               NOOP    core_ws         dpans6.htm      6.1.0760
551. std BL                  NOOP    numeric         dpans6.htm      6.1.0770
552. std C!                  NOOP    core_ws         dpans6.htm      6.1.0850
553. std C,                  NOOP    core_ws         dpans6.htm      6.1.0860
554. std C@                  NOOP    core_ws         dpans6.htm      6.1.0870
555. std CELL+               NOOP    core_ws         dpans6.htm      6.1.0880
556. std CELLS               NOOP    core_ws         dpans6.htm      6.1.0890
557. std CHAR                skipc   core_ws         dpans6.htm      6.1.0895
558. std CHAR+               NOOP    core_ws         dpans6.htm      6.1.0897
559. std CHARS               NOOP    core_ws         dpans6.htm      6.1.0898
560. std CONSTANT            defdat  core_ws         dpans6.htm      6.1.0950
561. std COUNT               NOOP    core_ws         dpans6.htm      6.1.0980
562. std CR                  NOOP    core_ws         dpans6.htm      6.1.0990
563. std CREATE              created core_ws         dpans6.htm      6.1.1000
564. std DECIMAL             DECIMAL core_ws         dpans6.htm      6.1.1170
565. std DEPTH               NOOP    core_ws         dpans6.htm      6.1.1200
566. std DO                  NOOP    core_ws         dpans6.htm      6.1.1240
567. std DOES>               NOOP    core_ws         dpans6.htm      6.1.1250
568. std DROP                NOOP    core_ws         dpans6.htm      6.1.1260
569. std DUP                 NOOP    core_ws         dpans6.htm      6.1.1290
570. std ELSE                NOOP    core_ws         dpans6.htm      6.1.1310
571. std EMIT                NOOP    core_ws         dpans6.htm      6.1.1320
572. std ENVIRONMENT?        NOOP    core_ws         dpans6.htm      6.1.1345
573. std EVALUATE            NOOP    core_ws         dpans6.htm      6.1.1360
574. std EXECUTE             NOOP    core_ws         dpans6.htm      6.1.1370
575. std EXIT                NOOP    core_ws         dpans6.htm      6.1.1380
576. std FILL                NOOP    core_ws         dpans6.htm      6.1.1540
577. std FIND                NOOP    core_ws         dpans6.htm      6.1.1550
578. std FM/MOD              NOOP    core_ws         dpans6.htm      6.1.1561
579. std HERE                NOOP    core_ws         dpans6.htm      6.1.1650
580. std HOLD                NOOP    core_ws         dpans6.htm      6.1.1670
581. std I                   NOOP    core_ws         dpans6.htm      6.1.1680
582. std IF                  NOOP    core_ws         dpans6.htm      6.1.1700
583. std IMMEDIATE           NOOP    core_ws         dpans6.htm      6.1.1710
584. std INVERT              NOOP    core_ws         dpans6.htm      6.1.1720
585. std J                   NOOP    core_ws         dpans6.htm      6.1.1730
586. std KEY                 NOOP    core_ws         dpans6.htm      6.1.1750
587. std LEAVE               NOOP    core_ws         dpans6.htm      6.1.1760
588. std LITERAL             NOOP    core_ws         dpans6.htm      6.1.1780
589. std LOOP                NOOP    core_ws         dpans6.htm      6.1.1800
590. std LSHIFT              NOOP    core_ws         dpans6.htm      6.1.1805
591. std M*                  NOOP    core_ws         dpans6.htm      6.1.1810
592. std MAX                 NOOP    core_ws         dpans6.htm      6.1.1870
593. std MIN                 NOOP    core_ws         dpans6.htm      6.1.1880
594. std MOD                 NOOP    core_ws         dpans6.htm      6.1.1890
595. std MOVE                NOOP    core_ws         dpans6.htm      6.1.1900
596. std NEGATE              NOOP    core_ws         dpans6.htm      6.1.1910
597. std OR                  NOOP    core_ws         dpans6.htm      6.1.1980
598. std OVER                NOOP    core_ws         dpans6.htm      6.1.1990
599. std POSTPONE            NOOP    core_ws         dpans6.htm      6.1.2033
600. std QUIT                NOOP    core_ws         dpans6.htm      6.1.2050
601. std R>                  NOOP    core_ws         dpans6.htm      6.1.2060
602. std R@                  NOOP    core_ws         dpans6.htm      6.1.2070
603. std RECURSE             NOOP    core_ws         dpans6.htm      6.1.2120
604. std REPEAT              NOOP    core_ws         dpans6.htm      6.1.2140
605. std ROT                 NOOP    core_ws         dpans6.htm      6.1.2160
606. std RSHIFT              NOOP    core_ws         dpans6.htm      6.1.2162
607. std S"                  skip"   numeric         dpans6.htm      6.1.2165
608. std S>D                 NOOP    core_ws         dpans6.htm      6.1.2170
609. std SIGN                NOOP    core_ws         dpans6.htm      6.1.2210
610. std SM/REM              NOOP    core_ws         dpans6.htm      6.1.2214
611. std SOURCE              NOOP    core_ws         dpans6.htm      6.1.2216
612. std SPACE               NOOP    core_ws         dpans6.htm      6.1.2220
613. std SPACES              NOOP    core_ws         dpans6.htm      6.1.2230
614. std STATE               NOOP    core_ws         dpans6.htm      6.1.2250
615. std SWAP                NOOP    core_ws         dpans6.htm      6.1.2260
616. std THEN                NOOP    core_ws         dpans6.htm      6.1.2270
617. std TYPE                NOOP    core_ws         dpans6.htm      6.1.2310
618. std U.                  NOOP    core_ws         dpans6.htm      6.1.2320
619. std U<                  NOOP    core_ws         dpans6.htm      6.1.2340
620. std UM*                 NOOP    core_ws         dpans6.htm      6.1.2360
621. std UM/MOD              NOOP    core_ws         dpans6.htm      6.1.2370
622. std UNLOOP              NOOP    core_ws         dpans6.htm      6.1.2380
623. std UNTIL               NOOP    core_ws         dpans6.htm      6.1.2390
624. std VARIABLE            defvar  core_ws         dpans6.htm      6.1.2410
625. std WHILE               NOOP    core_ws         dpans6.htm      6.1.2430
626. std WORD                NOOP    core_ws         dpans6.htm      6.1.2450
627. std XOR                 NOOP    core_ws         dpans6.htm      6.1.2490
628. std [                  hstate=0 core_ws         dpans6.htm      6.1.2500
629. std [']                 skipw   numeric         dpans6.htm      6.1.2510
630. std [CHAR]              skipw   numeric         dpans6.htm      6.1.2520
631. std ]                  hstate=1 core_ws         dpans6.htm      6.1.2540
632. std #TIB                NOOP    core_ext_ws     dpans6.htm      6.2.0060
633. std .(                  skip)   commentary      dpans6.htm      6.2.0200
634. std .R                  NOOP    core_ext_ws     dpans6.htm      6.2.0210
635. std 0<>                 NOOP    core_ext_ws     dpans6.htm      6.2.0260
636. std 0>                  NOOP    core_ext_ws     dpans6.htm      6.2.0280
637. std 2>R                 NOOP    core_ext_ws     dpans6.htm      6.2.0340
638. std 2R>                 NOOP    core_ext_ws     dpans6.htm      6.2.0410
639. std 2R@                 NOOP    core_ext_ws     dpans6.htm      6.2.0415
640. std :NONAME             NOOP    core_ext_ws     dpans6.htm      6.2.0455
641. std <>                  NOOP    core_ext_ws     dpans6.htm      6.2.0500
642. std ?DO                 NOOP    core_ext_ws     dpans6.htm      6.2.0620
643. std AGAIN               NOOP    core_ext_ws     dpans6.htm      6.2.0700
644. std C"                  skip"   numeric         dpans6.htm      6.2.0855
645. std CASE                NOOP    core_ext_ws     dpans6.htm      6.2.0873
646. std COMPILE,            NOOP    core_ext_ws     dpans6.htm      6.2.0945
647. std CONVERT             NOOP    core_ext_ws     dpans6.htm      6.2.0970
648. std ENDCASE             NOOP    core_ext_ws     dpans6.htm      6.2.1342
649. std ENDOF               NOOP    core_ext_ws     dpans6.htm      6.2.1343
650. std ERASE               NOOP    core_ext_ws     dpans6.htm      6.2.1350
651. std EXPECT              NOOP    core_ext_ws     dpans6.htm      6.2.1390
652. std FALSE             spec=zero numeric         dpans6.htm      6.2.1485
653. std HEX                 HEX     core_ext_ws     dpans6.htm      6.2.1660
654. std MARKER              defusr  core_ext_ws     dpans6.htm      6.2.1850
655. std NIP                 NOOP    core_ext_ws     dpans6.htm      6.2.1930
656. std OF                  NOOP    core_ext_ws     dpans6.htm      6.2.1950
657. std PAD                 NOOP    core_ext_ws     dpans6.htm      6.2.2000
658. std PARSE               NOOP    core_ext_ws     dpans6.htm      6.2.2008
659. std PICK                NOOP    core_ext_ws     dpans6.htm      6.2.2030
660. std QUERY               NOOP    core_ext_ws     dpans6.htm      6.2.2040
661. std REFILL              NOOP    core_ext_ws     dpans6.htm      6.2.2125
662. std RESTORE-INPUT       NOOP    core_ext_ws     dpans6.htm      6.2.2148
663. std ROLL                NOOP    core_ext_ws     dpans6.htm      6.2.2150
664. std SAVE-INPUT          NOOP    core_ext_ws     dpans6.htm      6.2.2182
665. std SOURCE-ID           NOOP    core_ext_ws     dpans6.htm      6.2.2218
666. std SPAN                NOOP    core_ext_ws     dpans6.htm      6.2.2240
667. std TIB                 NOOP    core_ext_ws     dpans6.htm      6.2.2290
668. std TO                  NOOP    core_ext_ws     dpans6.htm      6.2.2295
669. std TRUE                NOOP    numeric         dpans6.htm      6.2.2298
670. std TUCK                NOOP    core_ext_ws     dpans6.htm      6.2.2300
671. std U.R                 NOOP    core_ext_ws     dpans6.htm      6.2.2330
672. std U>                  NOOP    core_ext_ws     dpans6.htm      6.2.2350
673. std UNUSED              NOOP    core_ext_ws     dpans6.htm      6.2.2395
674. std VALUE               defval  core_ext_ws     dpans6.htm      6.2.2405
675. std WITHIN              NOOP    core_ext_ws     dpans6.htm      6.2.2440
676. std [COMPILE]           NOOP    core_ext_ws     dpans6.htm      6.2.2530
677. std BLK                 NOOP    block_ws        dpans7.htm      7.6.1.0790
678. std BLOCK               NOOP    block_ws        dpans7.htm      7.6.1.0800
679. std BUFFER              NOOP    block_ws        dpans7.htm      7.6.1.0820
680. std FLUSH               NOOP    block_ws        dpans7.htm      7.6.1.1559
681. std LOAD                NOOP    block_ws        dpans7.htm      7.6.1.1790
682. std SAVE-BUFFERS        NOOP    block_ws        dpans7.htm      7.6.1.2180
683. std UPDATE              NOOP    block_ws        dpans7.htm      7.6.1.2400
684. std EMPTY-BUFFERS       NOOP    block_ws        dpans7.htm      7.6.2.1330
685. std LIST                NOOP    block_ws        dpans7.htm      7.6.2.1770
686. std SCR                 NOOP    block_ws        dpans7.htm      7.6.2.2190
687. std THRU                NOOP    block_ws        dpans7.htm      7.6.2.2280
688. std 2CONSTANT           defdat  double_ws       dpans8.htm      8.6.1.0360
689. std 2LITERAL            NOOP    double_ws       dpans8.htm      8.6.1.0390
690. std 2VARIABLE           defvar  double_ws       dpans8.htm      8.6.1.0440
691. std D+                  NOOP    double_ws       dpans8.htm      8.6.1.1040
692. std D-                  NOOP    double_ws       dpans8.htm      8.6.1.1050
693. std D.                  NOOP    double_ws       dpans8.htm      8.6.1.1060
694. std D.R                 NOOP    double_ws       dpans8.htm      8.6.1.1070
695. std D0<                 NOOP    double_ws       dpans8.htm      8.6.1.1075
696. std D0=                 NOOP    double_ws       dpans8.htm      8.6.1.1080
697. std D2*                 NOOP    double_ws       dpans8.htm      8.6.1.1090
698. std D2/                 NOOP    double_ws       dpans8.htm      8.6.1.1100
699. std D<                  NOOP    double_ws       dpans8.htm      8.6.1.1110
700. std D=                  NOOP    double_ws       dpans8.htm      8.6.1.1120
701. std D>S                 NOOP    double_ws       dpans8.htm      8.6.1.1140
702. std DABS                NOOP    double_ws       dpans8.htm      8.6.1.1160
703. std DMAX                NOOP    double_ws       dpans8.htm      8.6.1.1210
704. std DMIN                NOOP    double_ws       dpans8.htm      8.6.1.1220
705. std DNEGATE             NOOP    double_ws       dpans8.htm      8.6.1.1230
706. std M*/                 NOOP    double_ws       dpans8.htm      8.6.1.1820
707. std M+                  NOOP    double_ws       dpans8.htm      8.6.1.1830
708. std 2ROT                NOOP    double_ws       dpans8.htm      8.6.2.0420
709. std DU<                 NOOP    double_ws       dpans8.htm      8.6.2.1270
710. std CATCH               NOOP    exception_ws    dpans9.htm      9.6.1.0875
711. std THROW               NOOP    exception_ws    dpans9.htm      9.6.1.2275
712. std AT-XY               NOOP    facilities_ws   dpans10.htm     10.6.1.0742
713. std KEY?                NOOP    facilities_ws   dpans10.htm     10.6.1.1755
714. std PAGE                NOOP    facilities_ws   dpans10.htm     10.6.1.2005
715. std EKEY                NOOP    facilities_ws   dpans10.htm     10.6.2.1305
716. std EKEY<CHAR           NOOP    facilities_ws   dpans10.htm     10.6.2.1306
717. std EKEY?               NOOP    facilities_ws   dpans10.htm     10.6.2.1307
718. std EMIT?               NOOP    facilities_ws   dpans10.htm     10.6.2.1325
719. std MS                  NOOP    facilities_ws   dpans10.htm     10.6.2.1905
720. std TIME&DATE           NOOP    facilities_ws   dpans10.htm     10.6.2.2292
721. std BIN                 NOOP    file_ws         dpans11.htm     11.6.1.0765
722. std CLOSE-FILE          NOOP    file_ws         dpans11.htm     11.6.1.0900
723. std CREATE-FILE         NOOP    file_ws         dpans11.htm     11.6.1.1010
724. std DELETE-FILE         NOOP    file_ws         dpans11.htm     11.6.1.1190
725. std FILE-POSITION       NOOP    file_ws         dpans11.htm     11.6.1.1520
726. std FILE-SIZE           NOOP    file_ws         dpans11.htm     11.6.1.1522
727. std INCLUDE-FILE        NOOP    file_ws         dpans11.htm     11.6.1.1717
728. std INCLUDED            "incfil file_ws         dpans11.htm     11.6.1.1718
729. std OPEN-FILE           NOOP    file_ws         dpans11.htm     11.6.1.1970
730. std R/O                 NOOP    file_ws         dpans11.htm     11.6.1.2054
731. std R/W                 NOOP    file_ws         dpans11.htm     11.6.1.2056
732. std READ-FILE           NOOP    file_ws         dpans11.htm     11.6.1.2080
733. std READ-LINE           NOOP    file_ws         dpans11.htm     11.6.1.2090
734. std REPOSITION-FILE     NOOP    file_ws         dpans11.htm     11.6.1.2142
735. std RESIZE-FILE         NOOP    file_ws         dpans11.htm     11.6.1.2147
736. std W/O                 NOOP    file_ws         dpans11.htm     11.6.1.2425
737. std WRITE-FILE          NOOP    file_ws         dpans11.htm     11.6.1.2480
738. std WRITE-LINE          NOOP    file_ws         dpans11.htm     11.6.1.2485
739. std FILE-STATUS         NOOP    file_ws         dpans11.htm     11.6.2.1524
740. std FLUSH-FILE          NOOP    file_ws         dpans11.htm     11.6.2.1560
741. std RENAME-FILE         NOOP    file_ws         dpans11.htm     11.6.2.2130
742. std >FLOAT              NOOP    fp_ws           dpans12.htm     12.6.1.0558
743. std D>F                 NOOP    fp_ws           dpans12.htm     12.6.1.1130
744. std F!                  NOOP    fp_ws           dpans12.htm     12.6.1.1400
745. std F*                  NOOP    fp_ws           dpans12.htm     12.6.1.1410
746. std F+                  NOOP    fp_ws           dpans12.htm     12.6.1.1420
747. std F-                  NOOP    fp_ws           dpans12.htm     12.6.1.1425
748. std F/                  NOOP    fp_ws           dpans12.htm     12.6.1.1430
749. std F0<                 NOOP    fp_ws           dpans12.htm     12.6.1.1440
750. std F0=                 NOOP    fp_ws           dpans12.htm     12.6.1.1450
751. std F<                  NOOP    fp_ws           dpans12.htm     12.6.1.1460
752. std F>D                 NOOP    fp_ws           dpans12.htm     12.6.1.1460
753. std F@                  NOOP    fp_ws           dpans12.htm     12.6.1.1472
754. std FALIGN              NOOP    fp_ws           dpans12.htm     12.6.1.1479
755. std FALIGNED            NOOP    fp_ws           dpans12.htm     12.6.1.1483
756. std FCONSTANT           defdat  fp_ws           dpans12.htm     12.6.1.1492
757. std FDEPTH              NOOP    fp_ws           dpans12.htm     12.6.1.1497
758. std FDROP               NOOP    fp_ws           dpans12.htm     12.6.1.1500
759. std FDUP                NOOP    fp_ws           dpans12.htm     12.6.1.1510
760. std FLITERAL            NOOP    fp_ws           dpans12.htm     12.6.1.1552
761. std FLOAT+              NOOP    fp_ws           dpans12.htm     12.6.1.1555
762. std FLOATS              NOOP    fp_ws           dpans12.htm     12.6.1.1556
763. std FLOOR               NOOP    fp_ws           dpans12.htm     12.6.1.1558
764. std FMAX                NOOP    fp_ws           dpans12.htm     12.6.1.1562
765. std FMIN                NOOP    fp_ws           dpans12.htm     12.6.1.1565
766. std FNEGATE             NOOP    fp_ws           dpans12.htm     12.6.1.1567
767. std FOVER               NOOP    fp_ws           dpans12.htm     12.6.1.1600
768. std FROT                NOOP    fp_ws           dpans12.htm     12.6.1.1610
769. std FROUND              NOOP    fp_ws           dpans12.htm     12.6.1.1612
770. std FSWAP               NOOP    fp_ws           dpans12.htm     12.6.1.1620
771. std FVARIABLE           defvar  fp_ws           dpans12.htm     12.6.1.1630
772. std REPRESENT           NOOP    fp_ws           dpans12.htm     12.6.1.2143
773. std DF!                 NOOP    fp_ws           dpans12.htm     12.6.2.1203
774. std DF@                 NOOP    fp_ws           dpans12.htm     12.6.2.1204
775. std DFALIGN             NOOP    fp_ws           dpans12.htm     12.6.2.1205
776. std DFALIGNED           NOOP    fp_ws           dpans12.htm     12.6.2.1207
777. std DFLOAT+             NOOP    fp_ws           dpans12.htm     12.6.2.1208
778. std DFLOATS             NOOP    fp_ws           dpans12.htm     12.6.2.1209
779. std F**                 NOOP    fp_ws           dpans12.htm     12.6.2.1415
780. std F.                  NOOP    fp_ws           dpans12.htm     12.6.2.1427
781. std FABS                NOOP    fp_ws           dpans12.htm     12.6.2.1474
782. std FACOS               NOOP    fp_ws           dpans12.htm     12.6.2.1476
783. std FACOSH              NOOP    fp_ws           dpans12.htm     12.6.2.1477
784. std FALOG               NOOP    fp_ws           dpans12.htm     12.6.2.1484
785. std FASIN               NOOP    fp_ws           dpans12.htm     12.6.2.1486
786. std FASINH              NOOP    fp_ws           dpans12.htm     12.6.2.1487
787. std FATAN               NOOP    fp_ws           dpans12.htm     12.6.2.1488
788. std FATAN2              NOOP    fp_ws           dpans12.htm     12.6.2.1489
789. std FATANH              NOOP    fp_ws           dpans12.htm     12.6.2.1491
790. std FCOS                NOOP    fp_ws           dpans12.htm     12.6.2.1493
791. std FCOSH               NOOP    fp_ws           dpans12.htm     12.6.2.1494
792. std FE.                 NOOP    fp_ws           dpans12.htm     12.6.2.1513
793. std FEXP                NOOP    fp_ws           dpans12.htm     12.6.2.1515
794. std FEXPM1              NOOP    fp_ws           dpans12.htm     12.6.2.1516
795. std FLN                 NOOP    fp_ws           dpans12.htm     12.6.2.1553
796. std FLNP1               NOOP    fp_ws           dpans12.htm     12.6.2.1554
797. std FLOG                NOOP    fp_ws           dpans12.htm     12.6.2.1557
798. std FS.                 NOOP    fp_ws           dpans12.htm     12.6.2.1613
799. std FSIN                NOOP    fp_ws           dpans12.htm     12.6.2.1614
800. std FSINCOS             NOOP    fp_ws           dpans12.htm     12.6.2.1616
801. std FSINH               NOOP    fp_ws           dpans12.htm     12.6.2.1617
802. std FSQRT               NOOP    fp_ws           dpans12.htm     12.6.2.1618
803. std FTAN                NOOP    fp_ws           dpans12.htm     12.6.2.1625
804. std FTANH               NOOP    fp_ws           dpans12.htm     12.6.2.1626
805. std F~                  NOOP    fp_ws           dpans12.htm     12.6.2.1640
806. std PRECISION           NOOP    fp_ws           dpans12.htm     12.6.2.2035
807. std SET-PRECISION       NOOP    fp_ws           dpans12.htm     12.6.2.2200
808. std SF!                 NOOP    fp_ws           dpans12.htm     12.6.2.2202
809. std SF@                 NOOP    fp_ws           dpans12.htm     12.6.2.2203
810. std SFALIGN             NOOP    fp_ws           dpans12.htm     12.6.2.2204
811. std SFALIGNED           NOOP    fp_ws           dpans12.htm     12.6.2.2206
812. std SFLOAT+             NOOP    fp_ws           dpans12.htm     12.6.2.2207
813. std SFLOATS             NOOP    fp_ws           dpans12.htm     12.6.2.2208
814. std (LOCAL)             NOOP    local_ws        dpans13.htm     13.6.1.0086
815. std LOCALS|             NOOP    local_ws        dpans13.htm     13.6.2.1795
816. std ALLOCATE            NOOP    malloc_ws       dpans14.htm     14.6.1.0707
817. std FREE                NOOP    malloc_ws       dpans14.htm     14.6.1.1605
818. std RESIZE              NOOP    malloc_ws       dpans14.htm     14.6.1.2145
819. std .S                  NOOP    progtools_ws    dpans15.htm     15.6.1.0220
820. std ?                   NOOP    progtools_ws    dpans15.htm     15.6.1.0600
821. std DUMP                NOOP    progtools_ws    dpans15.htm     15.6.1.1280
822. std SEE                 NOOP    progtools_ws    dpans15.htm     15.6.1.2194
823. std WORDS               NOOP    progtools_ws    dpans15.htm     15.6.1.2465
824. std ;CODE               resunk  progtools_ws    dpans15.htm     15.6.2.0470
825. std AHEAD               NOOP    progtools_ws    dpans15.htm     15.6.2.0702
826. std ASSEMBLER           NOOP    progtools_ws    dpans15.htm     15.6.2.0740
827. std BYE                 NOOP    progtools_ws    dpans15.htm     15.6.2.0830
828. std CODE                defusr  progtools_ws    dpans15.htm     15.6.2.0930
829. std CS-PICK             NOOP    progtools_ws    dpans15.htm     15.6.2.1015
830. std CS-ROLL             NOOP    progtools_ws    dpans15.htm     15.6.2.1020
831. std EDITOR              NOOP    progtools_ws    dpans15.htm     15.6.2.1300
832. std FORGET              NOOP    progtools_ws    dpans15.htm     15.6.2.1580
833. std [ELSE]              NOOP    progtools_ws    dpans15.htm     15.6.2.2531
834. std [IF]                bigif   progtools_ws    dpans15.htm     15.6.2.2532
835. std [THEN]              NOOP    progtools_ws    dpans15.htm     15.6.2.2533
836. std DEFINITIONS         NOOP    searchord_ws    dpans16.htm     16.6.1.1180
837. std FORTH-WORDLIST      NOOP    searchord_ws    dpans16.htm     16.6.1.1595
838. std GET-CURRENT         NOOP    searchord_ws    dpans16.htm     16.6.1.1643
839. std GET-ORDER           NOOP    searchord_ws    dpans16.htm     16.6.1.1647
840. std SEARCH-WORDLIST     NOOP    searchord_ws    dpans16.htm     16.6.1.2192
841. std SET-CURRENT         NOOP    searchord_ws    dpans16.htm     16.6.1.2195
842. std SET-ORDER           NOOP    searchord_ws    dpans16.htm     16.6.1.2197
843. std WORDLIST            NOOP    searchord_ws    dpans16.htm     16.6.1.2460
844. std ALSO                NOOP    searchord_ws    dpans16.htm     16.6.2.0715
845. std FORTH               NOOP    searchord_ws    dpans16.htm     16.6.2.1590
846. std ONLY                NOOP    searchord_ws    dpans16.htm     16.6.2.1965
847. std ORDER               NOOP    searchord_ws    dpans16.htm     16.6.2.1985
848. std PREVIOUS            NOOP    searchord_ws    dpans16.htm     16.6.2.2037
849. std -TRAILING           NOOP    string_ws       dpans17.htm     17.6.1.0170
850. std /STRING             NOOP    string_ws       dpans17.htm     17.6.1.0245
851. std BLANK               NOOP    string_ws       dpans17.htm     17.6.1.0780
852. std CMOVE               NOOP    string_ws       dpans17.htm     17.6.1.0910
853. std CMOVE>              NOOP    string_ws       dpans17.htm     17.6.1.0920
854. std COMPARE             NOOP    string_ws       dpans17.htm     17.6.1.0935
855. std SEARCH              NOOP    string_ws       dpans17.htm     17.6.1.2191
856. std SLITERAL            NOOP    string_ws       dpans17.htm     17.6.1.2212
858.  
859. _DEFINITIONS
860.  
857.  
858. _DEFINITIONS
859.  
861.  
862. \ Revision history:
860. \ Revision history
863. \ 0. 1st release to guinea pigs via comp.lang.forth
861. \ 0. 1st release to guinea pigs via comp.lang.forth
864. \ 1. Added multi-line comment 0 [IF]. Colored CHAR outside of definitions.
865. \ 2. Added support for LOCALS|. Changed to use blanks for whitespace.
866. \ 3. December 30th to January 1st, 2004 - Dirk Busch (dbu)
867. \    - Added DPANS-PATH to configure the path to the dpans-files
868. \    - Added multi-line comments (( )) and comment: comment; as used in Win32Forth
869. \    - HTML crashed on files with long lines (more than 80 char's) - fixed
870. \    - replaced <CODE> tag with <PRE> (work's better with Netscape 6)
871. \    - Added some more words for better Win32Forth support
872. \    - renamed COL to FCOL since COL is used in Win32Forth
873. \    - renamed ,$ to (,$)  since ,$ is used in Win32Forth
874. \    - renamed HEADER to HEADER_OUT since HEADER is used in Win32Forth
875. \    - changed FONTCOLOR to set the new color only if it's not the actual color
876. \    - Added COPYRIGHT to configure the copyright text witch is placed at the bottom of the HTML-File
877. \    - Added LINK-TO-ORG-FILE to configure the output of a hyperlink to the original File
878. \    - Added <!DOCTYPE> tag
862. \ 1. Added multi-line comment 0 [IF]. Colored CHAR outside definitions.
863. \ 2. (EJB) Added missing definitions for common but nonstandard words
864. \    and cleaned up to account for case sensitivity.
865. \ 3. (EJB) Fixed up to create conforming XHTML 1.0 Strict
866. \ 4. (BNE) File check before nesting, moved file names to the hyperlink table,
867. \    added some option flags, cleared hyperlink list for each run. Added more
868. \    multiline comment words. Expands tabs to spaces. Title uses %20 for blanks.
869. \ 4a. (DBU) Added dpanspath to configure the path to the dpans-files. Added
870. \     linksource to output a hyperlink to the original source file. Added
871. \     some words used in Win32Forth. Added footer to output a footer text
872. \     at the bottom of the HTML-file.
873. \ 4b. (DBU) Fixed some HTML-Error's found with "CSE HTML Validator Lite v3.50"
874.