`include "macroasm.vh" // look into macroasm.vh for more info // The beginning copied from self test, only 1st slave is being accessed. `WRITE(00000, abcd) `WAIT `READ (00000, abcd) `WRITE(00001, 1234) `READ (00000, abcd) `DESELECT `DESELECT `READ (00001, 1234) `WRITE(01010, a2a2) `WRITE(00001, 4321) `READ (01010, a2a2) `WAIT `WAIT `WAIT `WAIT `WAIT `DESELECT `DESELECT `DESELECT `WAIT `DESELECT `WAIT `READ(00001, 4321) // Here, instructions targetting other slaves start appearing. // Go through all the slaves `WRITE(40040, efef) `WRITE(80002, 1f1f) `WRITE(c00c0, 1d1d) `READ (80002, 1f1f) `READ (c00c0, 1d1d) `READ (40040, efef) `WAIT `WAIT // Make a sequence of commands to slave 3 (addresses c0000 - fffff) `READ (c00c0, 1d1d) `WRITE(c1111, 0022) `READ (c00c0, 1d1d) `WRITE(c0001, 0001) `WRITE(c0002, 0002) `READ (c0001, 0001) `READ (c0002, 0002) `READ (c0001, 0001) `WRITE(c0003, 0003) `WRITE(c0002, 2222) `READ (c0002, 2222) `READ (c0003, 0003) `WRITE(fffff, 5555) `READ (c1111, 0022) // Put a single command to another slave in-between commands to slave 3 `WRITE(4ffff, b6b6) `READ (fffff, 5555) `WRITE(eeeee, aaaa) `READ (eeeee, aaaa) // Let slave 3 take a breath now `READ (4ffff, b6b6) `DESELECT // We made writes to c0002 and c0001, make sure corresponding addreses // in other slaves were not overwritten by mistake `READ (80002, 1f1f) `READ (00001, 4321)