lib94/warriors/epson.red

42 lines
548 B
Text

;author Benji Dial
;name Epson
period equ 10
scan_init equ end - (end - scan) % period + period
scan:
seq.i 0 - period, scan_init
jmp found
found_ret:
add.ab #period, scan
seq.ab scan, scan
jmp scan
add.f scan_add, scan
jmn.a scan, scan
clear:
mov end, 0 - 1
sub.ab #2, clear
seq.ab #end - clear - (end - clear) % 2 + 3, clear
jmp clear
mov.ab #0 - 1, clear
jmp clear
scan_add:
dat 2, period + scan_init + 2
found:
mov bomb, >scan
mov bomb + 1, @scan
jmp found_ret, <scan
bomb:
spl 1
jmp bomb
end: