Add word FILL
This commit is contained in:
parent
f605e2d85c
commit
2b2ccad96c
4
blk/050
4
blk/050
@ -10,7 +10,7 @@ C! c a -- Store byte c in address a
|
|||||||
CURRENT -- a Set a to wordref of last added entry.
|
CURRENT -- a Set a to wordref of last added entry.
|
||||||
CURRENT* -- a A pointer to active CURRENT*. Useful
|
CURRENT* -- a A pointer to active CURRENT*. Useful
|
||||||
when we have multiple active dicts.
|
when we have multiple active dicts.
|
||||||
|
FILL a n b -- Fill n bytes at addr a with val b.
|
||||||
HERE -- a Push HERE's address
|
HERE -- a Push HERE's address
|
||||||
H@ -- a HERE @
|
H@ -- a HERE @
|
||||||
MOVE a1 a2 u -- Copy u bytes from a1 to a2, starting
|
(cont.)
|
||||||
with a1, going up.
|
|
||||||
|
2
blk/051
Normal file
2
blk/051
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
MOVE a1 a2 u -- Copy u bytes from a1 to a2, starting
|
||||||
|
with a1, going up.
|
15
blk/434
15
blk/434
@ -1,5 +1,4 @@
|
|||||||
( a1 a2 u -- )
|
: MOVE ( a1 a2 u -- )
|
||||||
: MOVE
|
|
||||||
( u ) 0 DO
|
( u ) 0 DO
|
||||||
SWAP DUP I + C@ ( a2 a1 x )
|
SWAP DUP I + C@ ( a2 a1 x )
|
||||||
ROT SWAP OVER I + ( a1 a2 x a2 )
|
ROT SWAP OVER I + ( a1 a2 x a2 )
|
||||||
@ -7,10 +6,10 @@
|
|||||||
LOOP
|
LOOP
|
||||||
2DROP
|
2DROP
|
||||||
;
|
;
|
||||||
|
: FILL ( a n b -- )
|
||||||
: DELW 1- 0 SWAP C! ;
|
SWAP 2 PICK + ( a b a+n ) ROT ( b a+n a ) DO ( b )
|
||||||
|
DUP I C!
|
||||||
: PREV
|
LOOP
|
||||||
3 - DUP @ ( a o )
|
|
||||||
- ( a-o )
|
|
||||||
;
|
;
|
||||||
|
: DELW 1- 0 SWAP C! ;
|
||||||
|
: PREV 3 - DUP @ - ;
|
||||||
|
BIN
emul/stage0.bin
BIN
emul/stage0.bin
Binary file not shown.
Loading…
Reference in New Issue
Block a user