bcasm/examples/n.asm

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