|
- ( Words allowing printing strings. Require core )
- ( This used to be in core, but some drivers providing EMIT
- are much much easier to write with access to core words,
- and these words below need EMIT... )
-
- : (print)
- BEGIN
- DUP C@ ( a c )
- ( exit if null )
- DUP NOT IF 2DROP EXIT THEN
- EMIT ( a )
- 1 + ( a+1 )
- AGAIN
- ;
-
- : ."
- 34 , ( 34 == litWord )
- BEGIN
- C< DUP ( c c )
- ( 34 is ASCII for " )
- DUP 34 = IF DROP DROP 0 0 THEN
- C,
- 0 = UNTIL
- COMPILE (print)
- ; IMMEDIATE
-
- : ABORT" [COMPILE] ." COMPILE ABORT ; IMMEDIATE
-
- : (uflw) ABORT" stack underflow" ;
- : (wnf) ABORT" word not found" ;
-
- : BS 8 EMIT ;
- : LF 10 EMIT ;
- : CR 13 EMIT ;
- : SPC 32 EMIT ;
|