- I have no idea :(...

This commit is contained in:
carl 1999-05-30 23:06:04 +00:00
parent a890a867af
commit a998ce5455

View File

@ -139,51 +139,51 @@ CONST
if (Y < StartYViewPort) or (Y > (StartYViewPort + ViewHeight)) then if (Y < StartYViewPort) or (Y > (StartYViewPort + ViewHeight)) then
exit; exit;
end; end;
asm asm
mov es, [SegA000] mov es, [SegA000]
{ enable the set / reset function and load the color } { enable the set / reset function and load the color }
mov dx, 3ceh mov dx, 3ceh
mov ax, 0f01h mov ax, 0f01h
out dx, ax out dx, ax
{ setup set/reset register } { setup set/reset register }
mov ax, [Pixel] mov ax, [Pixel]
shl ax, 8 shl ax, 8
out dx, ax out dx, ax
{ setup the bit mask register } { setup the bit mask register }
mov al, 8 mov al, 8
out dx, al out dx, al
inc dx inc dx
{ load the bitmask register } { load the bitmask register }
mov cx, [X] mov cx, [X]
and cx, 0007h and cx, 0007h
mov al, 80h mov al, 80h
shr al, cl shr al, cl
out dx, ax out dx, ax
{ get the x index and divide by 8 for 16-color } { get the x index and divide by 8 for 16-color }
mov ax,[X] mov ax,[X]
shr ax,3 shr ax,3
push ax push ax
{ determine the address } { determine the address }
mov ax,80 mov ax,80
mov bx,[Y] mov bx,[Y]
mul bx mul bx
pop cx pop cx
add ax,cx add ax,cx
mov di,ax mov di,ax
add di, [VideoOfs] add di, [VideoOfs]
{ send the data through the display memory through set/reset } { send the data through the display memory through set/reset }
mov bl,es:[di] mov bl,es:[di]
mov es:[di],bl mov es:[di],bl
{ reset for formal vga operation } { reset for formal vga operation }
mov dx,3ceh mov dx,3ceh
mov ax,0ff08h mov ax,0ff08h
out dx,ax out dx,ax
{ restore enable set/reset register } { restore enable set/reset register }
mov ax,0001h mov ax,0001h
out dx,ax out dx,ax
end; end;
end; end;