Atom.PutProp[$Simul2Sender, $PKList, LIST[
$Init,
$StartStop,
$ReceiveAll,
LIST[$Wait, C[200]], -- for waiting DBus intit
Initialize memory controller
LIST[$IOWrite0, C[1], L[TRUE], L[TRUE], C[0],C[28],C[28],C[28],C[22],C[22]],
$WaitMsgSent,
$WaitMsgReceived, -- for the Echo
$WaitReply,
LIST[$IOWrite1, C[1],C[10],C[0],C[0]],
$WaitMsgSent,
$WaitMsgReceived, -- for the Echo
$WaitReply,
LIST[$IOWrite2, C[1],C[10],C[0]],
$WaitMsgSent,
$WaitMsgReceived, -- for the Echo
$WaitReply,
LIST[$WriteBlockRqst, Q[[0,0,0011H,2233H]],Q[[0,0,09ABH,0CDEFH]],Q[[1,1,1,1]],Q[[2,2,2,2]],Q[[3,3,3,3]]],
$WaitMsgSent,
Now lets pretend to be a IOBridge,
LIST[$WaitIOWRqstandCheck, Q[[0,0,0ABH,0CDEFH]],Q[[0,01357H,0,01357H]]],
$IOWriteRply0,
LIST[$WaitIOReadRqstandCheck, Q[[0,0,0ABH,0CDEFH]]],
LIST[$IOReadRply0, Q[[0,0,0,01357H]]],
Now lets pretend to be a Map Cache
$WaitMapRqst, -- first testing in Kernel mode
LIST[$MapReply, C[06H]], -- UserR disabled, UserW enabled, KernelW enabled, Dirty,
$WaitMapRqst,
LIST[$MapReply, C[0AH]], -- UserR enabled, UserW disabled, KernelW enabled, Dirty
$WaitMapRqst,
LIST[$MapReply, C[0CH]], -- UserR enabled, UserW enabled, KernelW disabled, Dirty
$WaitMapRqst, -- now testing in User Mode
LIST[$MapReply, C[06H]], -- UserR disabled, UserW enabled, KernelW enabled, Dirty,
$WaitMapRqst,
LIST[$MapReply, C[0AH]], -- UserR enabled, UserW disabled, KernelW enabled, Dirty
$WaitMapRqst,
LIST[$MapReply, C[0CH]], -- UserR enabled, UserW enabled, KernelW disabled, Dirty
$Loop,
$WaitMapRqst,
LIST[$MapReply, C[0FH]],
LIST[$Jump, $Loop]
]];