mov_wf t ; t = 101 WWWWY
- mov_wf xdebug
intrlh_fsr0_save
mov_lfsr waggle_lpins | 0x01, 0
; FSR0 = aaaa 000 00001
ior_wff FSR0L ; FSR0 = aaaa 101 WWWW1
; *FSR0 = bbbb bbbb (one-bit mask)
- mov_ff FSR0L, xdebug+1
mov_fw POSTDEC0 ; W = bbbb bbbb
; *FSR0 = LAT*-addrl
- mov_wf xdebug+2
bra_z waggle_nonexistent
mov_ff INDF0, FSR0L ; FSR0L = LAT*-addr
- mov_ff FSR0L, xdebug+3
set_f FSR0H ; FSR0 = 1111 LAT*-addr
; *FSR0 = <latch>
bra waggle_ifclear
; set:
- mov_wf xdebug+4
- mov_ff FSR0H, xdebug+6
- mov_ff FSR0L, xdebug+5
ior_wff INDF0
;...
waggle_local_done