version 1.144, 2003/11/10 16:57:05
|
version 1.145, 2004/05/16 21:16:35
|
Line 447 sourcepath value fpath
|
Line 447 sourcepath value fpath
|
\G Make a complete new Forth search path; the path separator is |. |
\G Make a complete new Forth search path; the path separator is |. |
fpath path= ; |
fpath path= ; |
|
|
: path>counted cell+ dup cell+ swap @ ; |
: path>string cell+ dup cell+ swap @ ; |
|
|
: next-path ( adr len -- adr2 len2 ) |
: next-path ( adr len -- adr2 len2 ) |
2dup 0 scan |
2dup 0 scan |
Line 456 sourcepath value fpath
|
Line 456 sourcepath value fpath
|
r> - ; |
r> - ; |
|
|
: previous-path ( path^ -- ) |
: previous-path ( path^ -- ) |
dup path>counted |
dup path>string |
BEGIN tuck dup WHILE repeat ; |
BEGIN tuck dup WHILE repeat ; |
|
|
: .path ( path-addr -- ) \ gforth |
: .path ( path-addr -- ) \ gforth |
\G Display the contents of the search path @var{path-addr}. |
\G Display the contents of the search path @var{path-addr}. |
path>counted |
path>string |
BEGIN next-path dup WHILE type space REPEAT 2drop 2drop ; |
BEGIN next-path dup WHILE type space REPEAT 2drop 2drop ; |
|
|
: .fpath ( -- ) \ gforth |
: .fpath ( -- ) \ gforth |
Line 546 Create tfile 0 c, 255 chars allot
|
Line 546 Create tfile 0 c, 255 chars allot
|
IF rdrop |
IF rdrop |
ofile place open-ofile |
ofile place open-ofile |
dup 0= IF >r ofile count r> THEN EXIT |
dup 0= IF >r ofile count r> THEN EXIT |
ELSE r> path>counted |
ELSE r> path>string |
BEGIN next-path dup |
BEGIN next-path dup |
WHILE 5 pick 5 pick check-path |
WHILE 5 pick 5 pick check-path |
0= IF >r 2drop 2drop r> ofile count 0 EXIT ELSE drop THEN |
0= IF >r 2drop 2drop r> ofile count 0 EXIT ELSE drop THEN |