Я пытаюсь использовать полноэкранный режим в сборке. Я установил цвет в синий цвет в dos, но всякий раз, когда я пытаюсь включить его в полноэкранный режим, цвет меняется. Он меняется на нечто вроде зеленого.Цвета не совпадают в полноэкранном режиме по сравнению с dos
Есть ли способ для его совместимости друг с другом. Я использую Tasm; TextPad; окна. Благодарю.
Вот мой макрос
drawSquare MACRO color,cy,cx,dy,dx
mov ah,06
mov al, 0
mov bh,color
mov ch,cy
mov cl,cx
mov dh,dy
mov dl,dx
int 10h
endm
-------------------------------------------------
include macros.txt
.model small
.stack
.data
saveMode db ?
.code
main proc
mov ax, @data
mov ds, ax
call SetVideoMode
drawSquare 90h, 0h, 49h, 18h, 4fh
call RestoreVideoMode
mov ax, 4c00h
int 21h
main endp
SetVideoMode proc
mov ah, 0fh
int 10h
mov saveMode, al
mov ah, 0
mov al, 13h
int 10h
push 0A000h
pop es
ret
SetVideoMode endp
RestoreVideoMode proc
mov ah, 10h
int 16h
mov ah, 0
mov al, saveMode
int 10h
ret
RestoreVideoMode endp
end main
Для DOS существуют только полноэкранные видеорежимы, и DOS не знает о проблемах с режимами Windows хост-системы. –
Подумайте о комментировании своего кода asm! – Seki