mov ax, 4F02hПросто в 13h пашет, а в этом нет, друг говорит там надо напрямую с портами возится
mov bx, 101h
int 10h

а вот соббсно код проги:
.model tiny
.386
.data
VMC dd ? ;адрес процедуры BIOS
star_vid dw ?
Info dw 256 DUP(0)
cmask
db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh
db 00000000b,10000000b,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
.code
org 100h
start: call where_VMC ;записываем адрес VMC
call init_vga ;установка видео-режима 640x480x8
call refresh ;экран белого цвета
call draw_color
;---------------
;xor ax,ax
;int 33h
;push ds
;pop es
;mov dx,offset cmask
;mov ax,09h
;int 33h
;mov ax,01h
;int 33h
;-------неработающий код--------
check_esc: xor ax, ax
int 16h
cmp ax, 011Bh ;проверка на ескейп
je end_prog
jmp check_esc
end_prog: mov ax, 4F02h
mov bx, star_vid
int 10h
ret
;----------------------------
where_VMC proc
push ds
pop es
mov di, offset Info
mov ax, 4f01h
mov cx, 0101h
int 10h
mov eax, es:[di + 0Ch] ;добываем адрес на VMC процедуру
mov VMC, eax
ret
where_VMC endp
refresh proc
mov cx, 5
nxtwin: dec cx
mov dx, cx
inc cx
push cx
xor bx, bx
mov ax, 4F05h
call VMC
mov ax, 0f0fh
xor si, si
mov cx, 8000h ;заполняем экран белым
rep stosw
pop cx
loop nxtwin
ret
refresh endp
init_vga proc
push 0A000h
pop es
mov ax, 4F03h
int 10h
mov star_vid, bx ;запоминаем старый режим и входим в 640х480х8
mov ax, 4F02h
mov bx, 101h
int 10h
ret
init_vga endp
;ax - координата по Y, bx - координата по X, dl - код цвета
draw_point proc
push ax
push bx
push dx
dec ax
dec bx
mov dx, 280h
mul dx
add ax, bx
adc dx, 0
mov si, ax
xor bx, bx
mov ax, 4F05h ;рисуем точку по координате bx, by с цветом dl (нумерация точек: 0..639;0..479)
call VMC
pop dx
mov es:[si], dl
pop bx
pop ax
ret
draw_point endp
draw_color proc
push 0A000h
pop es
xor ax, ax
xor bx, bx
xor dl, dl
inc bx
mov cx, 40h
cycle2: push cx
xor dl, dl ;цветная фигулина
xor bx, bx
inc ax
inc bx
mov cx, 1feh
cycle1: call draw_point
inc dl
inc bx
loop cycle1
pop cx
loop cycle2
ret
draw_color endp
end start
PS: здесь стоят комменты не на оператор, а на всю процедуру...