forked from KolibriOS/kolibrios
KolSPForth12 uploaded to SVN
git-svn-id: svn://kolibrios.org@4867 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
45
programs/develop/SPForth/devel/~mak/utils.f
Normal file
45
programs/develop/SPForth/devel/~mak/utils.f
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
REQUIRE [IF] ~MAK\CompIF.f
|
||||
|
||||
C" H." FIND NIP 0=
|
||||
[IF]
|
||||
: H. BASE @ HEX SWAP U. BASE ! ;
|
||||
\ OP1
|
||||
[THEN]
|
||||
|
||||
C" FIELD" FIND NIP 0=
|
||||
[IF] : FIELD -- ;
|
||||
[THEN]
|
||||
|
||||
C" BETWEEN" FIND NIP 0=
|
||||
[IF] : BETWEEN 1+ WITHIN ;
|
||||
[THEN]
|
||||
|
||||
C" ?EXIT" FIND NIP 0=
|
||||
[IF]
|
||||
: ?EXIT POSTPONE IF
|
||||
POSTPONE EXIT
|
||||
POSTPONE THEN ; IMMEDIATE
|
||||
\ : ?EXIT IF RDROP THEN ;
|
||||
[THEN]
|
||||
|
||||
C" DUP>R" FIND NIP 0=
|
||||
[IF]
|
||||
|
||||
: DUP>R POSTPONE DUP
|
||||
POSTPONE >R ; IMMEDIATE
|
||||
[THEN]
|
||||
|
||||
C" >NAME" FIND NIP 0=
|
||||
[IF] : >NAME 4 - DUP BEGIN 1- 2DUP COUNT + U< 0= UNTIL NIP ;
|
||||
[THEN]
|
||||
|
||||
C" 2," FIND NIP 0=
|
||||
[IF]
|
||||
: 2, ( D -- )
|
||||
HERE 2! 2 CELLS ALLOT ;
|
||||
[THEN]
|
||||
|
||||
C" C>S" FIND NIP 0=
|
||||
[IF] : C>S ( c -- n ) 0xFF AND [ 0x7F INVERT ] LITERAL XOR 0x80 + ;
|
||||
[THEN]
|
Reference in New Issue
Block a user