| |
|
| >CROSS |
>CROSS |
| |
|
| bigendian 0 pad ! -1 pad c! pad @ 0< |
bigendian |
| = [IF] |
[IF] |
| \ : bswap ; immediate |
|
| : T! ( n addr -- ) >r s>d r> tcell bounds swap 1- |
: T! ( n addr -- ) >r s>d r> tcell bounds swap 1- |
| DO maxbyte ud/mod rot I c! -1 +LOOP 2drop ; |
DO maxbyte ud/mod rot I c! -1 +LOOP 2drop ; |
| : T@ ( addr -- n ) >r 0 0 r> tcell bounds |
: T@ ( addr -- n ) >r 0 0 r> tcell bounds |
| DO maxbyte * swap maxbyte um* rot + swap I c@ + swap LOOP d>s ; |
DO maxbyte * swap maxbyte um* rot + swap I c@ + swap LOOP d>s ; |
| |
|
| [ELSE] |
[ELSE] |
| : T! ( n addr -- ) >r s>d r> tcell bounds |
: T! ( n addr -- ) >r s>d r> tcell bounds |
| DO maxbyte ud/mod rot I c! LOOP 2drop ; |
DO maxbyte ud/mod rot I c! LOOP 2drop ; |
| : T@ ( addr -- n ) >r 0 0 r> tcell bounds swap 1- |
: T@ ( addr -- n ) >r 0 0 r> tcell bounds swap 1- |
| DO maxbyte * swap maxbyte um* rot + swap I c@ + swap -1 +LOOP d>s ; |
DO maxbyte * swap maxbyte um* rot + swap I c@ + swap -1 +LOOP d>s ; |
| |
|
| \ : bswap ( big / little -- little / big ) 0 |
|
| \ cell 1- FOR bits/byte lshift over |
|
| \ [ 1 bits/byte lshift 1- ] Literal and or |
|
| \ swap bits/byte rshift swap NEXT nip ; |
|
| [THEN] |
[THEN] |
| |
|
| \ Memory initialisation 05dec92py |
\ Memory initialisation 05dec92py |