home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
assemblr
/
library
/
grafik
/
vgakit
/
xpoint.asm
< prev
next >
Wrap
Assembly Source File
|
1992-06-25
|
1KB
|
86 lines
include model.h
;
; VGAKIT Version 5.0
;
; Copyright 1988,89,90,91,92 John Bridges
; Free for use in commercial, shareware or freeware applications
;
; XPOINT.ASM
;
;
.data
extrn curbk:word,adrtbl:dword,ourseg:word
extrn maxx:word,maxy:word,scanline:word
.code
extrn newbank:proc
public xpoint
public xpoint13x
xpoint proc xpos:word,ypos:word,color:word
mov dx,[xpos]
cmp dx,0
jl nope1
cmp dx,[maxx]
jge nope1
mov bx,[ypos]
cmp bx,0
jl nope1
cmp bx,[maxy]
jge nope1
shl bx,1
shl bx,1
add dx,word ptr adrtbl[bx]
mov ax,word ptr adrtbl[bx+2]
adc ax,0
mov bx,dx
cmp ax,[curbk]
jz nonew
call newbank ;switch banks if a new bank entered
nonew: mov es,[ourseg] ;setup screen segment
mov al,byte ptr [color] ;get color of pixel to plot
xor es:[bx],al
nope1: ret
xpoint endp
xpoint13x proc xpos:word,ypos:word,color:word
mov dx,[xpos]
cmp dx,0
jl nope2
cmp dx,[maxx]
jge nope2
mov bx,[ypos]
cmp bx,0
jl nope2
cmp bx,[maxy]
jge nope2
shl bx,1
shl bx,1
mov cx,dx
shr dx,1
shr dx,1
add dx,word ptr adrtbl[bx]
mov bx,dx
mov ax,102h
and cl,3
shl ah,cl ;create bit plane mask
mov dx,3c4h
out dx,ax ;set EGA bit plane mask register
mov dl,0ceh
mov al,4
mov ah,cl
out dx,ax ;set EGA bit plane read regsiter
mov es,[ourseg] ;setup screen segment
mov al,byte ptr [color] ;get color of pixel to plot
xor es:[bx],al
nope2: ret
xpoint13x endp
end