Annotation of gforth/environ.fs, revision 1.1.1.1
1.1 anton 1: \ ENVIRON.FS Answer environmental queries 20may93jaw
2:
3: \ May be cross-compiled
4:
5: decimal
6:
7: AVARIABLE EnvLink 0 EnvLink !
8:
9: : (env)
10: EnvLink linked
11: dup c, here over chars allot swap move align
12: , ;
13:
14: : (2env)
15: EnvLink linked
16: dup $80 or
17: c, here over chars allot swap move align
18: , , ;
19:
20: : env" ( n -- )
21: State @
22: IF postpone S" postpone (env)
23: ELSE [char] " parse (env) THEN ; immediate
24:
25: : 2env" ( d -- )
26: State @
27: IF postpone S" postpone (2env)
28: ELSE [char] " parse (2env) THEN ; immediate
29:
30:
31: : environment? EnvLink
32: BEGIN @ dup
33: WHILE dup cell+ count $1f and
34: 4 pick 4 pick compare 0=
35: IF nip nip cell+ count dup -rot
36: $1f and + aligned
37: swap $80 and IF 2@ ELSE @ THEN
38: EXIT
39: THEN
40: REPEAT
41: drop 2drop false ;
42:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>