mirror of https://git.sr.ht/~kikoodx/bcasm
66 lines
518 B
NASM
66 lines
518 B
NASM
;nasm
|
|
MOV 11 X
|
|
MOV 4 Y
|
|
;main loop
|
|
LBL M
|
|
; process input
|
|
MOV GTK ANS
|
|
JEZ M
|
|
; right?
|
|
SUB 27
|
|
JEZ R
|
|
; up?
|
|
SUB 1
|
|
JEZ U
|
|
; down?
|
|
SUB 9
|
|
JEZ D
|
|
; left?
|
|
SUB 1
|
|
JEZ L
|
|
; quit?
|
|
SUB 9
|
|
JEZ Q
|
|
; nop
|
|
JMP M
|
|
; left
|
|
LBL L
|
|
MOV X ANS
|
|
SUB 1
|
|
MOV ANS X
|
|
JNZ E
|
|
MOV 21 X
|
|
JMP E
|
|
; right
|
|
LBL R
|
|
MOV X ANS
|
|
ADD 1
|
|
MOV ANS X
|
|
SUB 22
|
|
JNZ E
|
|
MOV 1 X
|
|
JMP E
|
|
; up
|
|
LBL U
|
|
MOV Y ANS
|
|
SUB 1
|
|
MOV ANS Y
|
|
JNZ E
|
|
MOV 7 Y
|
|
JMP E
|
|
; down
|
|
LBL D
|
|
MOV Y ANS
|
|
ADD 1
|
|
MOV ANS Y
|
|
SUB 7
|
|
JNZ E
|
|
MOV 1 Y
|
|
; draw
|
|
LBL E
|
|
MOV 0 ANS
|
|
CLS
|
|
LOC
|
|
JMP M
|
|
LBL Q
|