home *** CD-ROM | disk | FTP | other *** search
-
- include model.inc
-
- ;
- ; VGAKIT Version 6.0
- ;
- ; Copyright 1988,89,90,91,92,93,94 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
-