f6ded7712e
This is the first commit I do entirely in VE. It's a habit I'm planning on taking as it helps a lot to find usability issues.
17 lines
381 B
Plaintext
17 lines
381 B
Plaintext
: C<? 0x06 RAM+ @ ;
|
|
: C<
|
|
0x08 RAM+ @ ( 08 == C<* override )
|
|
?DUP NOT IF 0x0c RAM+ @ THEN ( 0c == C<* )
|
|
EXECUTE
|
|
;
|
|
: , H@ ! H@ 2+ HERE ! ;
|
|
: C, H@ C! H@ 1+ HERE ! ;
|
|
: BIT@ ( bit addr -- f ) C@ SWAP RSHIFT 0x01 AND ;
|
|
: BIT! ( f bit addr -- )
|
|
SWAP 0x01 SWAP LSHIFT ROT ( addr mask f )
|
|
IF OVER C@ OR
|
|
ELSE 0xff XOR OVER C@ AND THEN ( addr flg )
|
|
SWAP C! ;
|
|
|
|
|