.model small
.data
combined db 27,'[0;1;43m','use WASD to move [ ]$',27,'[0m$'
draw_0 db 27,'[0m ',27,'[0;1;36;46m________',27,'[0m $'
draw_1 db 27,'[0m ',27,'[0;1;36;46m| _ |',27,'[0m$'
draw_2 db 27,'[0m ',27,'[0;1;36;46m|_____|.||',27,'[0m$'
draw_3 db 27,'[0m ',27,'[0;1;31;45m () () ',27,'[0m $'
posX db 5
posY db 5
.code
CLEAR:
MOV AH, 0
MOV AL, 2
INT 10h
mov AH, 2
mov BH, 0
mov DH, 1
mov DL, 1
int 10H
mov ah,9h
lea dx,combined
int 21h
RET
SETPOS:
mov AH, 2
mov BH, 0
mov DH, posY
mov DL, posX
int 10h
RET
DRAW:
call SETPOS
mov ah,9h
lea dx,draw_0
int 21h
add posY,1;
call SETPOS
mov ah,9h
lea dx,draw_1
int 21h
add posY,1;
call SETPOS
mov ah,9h
lea dx,draw_2
int 21h
add posY,1;
call SETPOS
mov ah,9h
lea dx,draw_3
int 21h
sub posY,3;
RET
PRESS_KEY:
; настройка окна (режим 80х25)
call CLEAR
call DRAW
; --- установка курсору в рядок 1, стовпець 19
MOV AH, 2
MOV BH, 0
MOV DH, 1
MOV DL, 19
INT 10H