etherforth_logo

Node 706

MMC controller node - read.

Source code

mmc node 707 node 705 node 706
706 mmc read
reach 00 c 1 d 1 r 3 d path lit a ! 1202F code ! ! ! ;
wout 04 w 5611 wout !b !b ;
r1 06 -n 12028 r1 !b @b ;
64* 08 2* 2* 2* 2* 2* 2* ;
pack 0A @b 64* @b or 64* @b or ! ;
adr 0D n-0aa push dup dup or pop dup
11 for 2/ unext push 2* 2* 2* 2* pop ;
cmd 14 nc-f push adr pop or wout wout wout r1 ;
b/2 1A 127 for pack next ;
cs- 1F 12008 cs- !b ;
dsk 21 n @p drop !p ;
blk@ 22 n dup 0 . + 14400 cmd drop
767 5634 dat@ !b !b 81 reach 561A write ! n ! b/2
7F reach b/2 cs- ;
work 33 909 for pop dup push blk@ next ;
go 39 work a right a! 12000 go ! a! rd-- 3F

init left b! down a! --l- ; 44
2 l 0 u 0 ether

Definitions

reach
.
wout
.
r1
.
64*
.
pack
.
adr
.
cmd
.
b/2
.
cs-
.
dsk
.
blk@
.
work
.
go
.
init
Set registers A and B, and jump to LEFT.

Description