+++ /dev/null
-.387
- PUBLIC MXSETVIRTUALSCREEN
- PUBLIC MXGETVIRTUALSCREEN
- EXTRN MX_CODESEGMENT:BYTE
- EXTRN MX_BYTESPERLINE:BYTE
- EXTRN MXROWADDRESS:BYTE
- EXTRN MXSETSYSCLIPREGION:BYTE
-MX_TEXT SEGMENT PARA PUBLIC USE16 'CODE'
- ASSUME CS:MX_TEXT, DS:DGROUP, SS:DGROUP
-L$1:
- add byte ptr [bx+si],al
-L$2:
- add byte ptr [bx+si],al
-MXSETVIRTUALSCREEN:
- push bp
- mov bp,sp
- sub sp,0
- push ds
- mov ds,word ptr cs:MX_CODESEGMENT
- mov ax,1
- cmp word ptr 8[bp],140H
- jb L$3
- push ax
- mov dx,4
- xor ax,ax
- div word ptr 8[bp]
- cmp word ptr 6[bp],ax
- pop ax
- ja L$3
- mov ax,word ptr 8[bp]
- and ax,0fff8H
- mov word ptr L$1,ax
- shr ax,1
- shr ax,1
- mov word ptr MX_TEXT:MX_BYTESPERLINE,ax
- shr ax,1
- push ax
- call far ptr MXROWADDRESS
- mov ax,word ptr 6[bp]
- mov word ptr L$2,ax
- push word ptr 8[bp]
- push word ptr 6[bp]
- call far ptr MXSETSYSCLIPREGION
- xor ax,ax
-L$3:
- pop ds
- mov sp,bp
- pop bp
- retf 4
-MXGETVIRTUALSCREEN:
- push bp
- mov bp,sp
- sub sp,0
- push ds
- push si
- mov ax,word ptr cs:L$1
- lds si,dword ptr 0aH[bp]
- mov word ptr [si],ax
- mov ax,word ptr cs:L$2
- lds si,dword ptr 6[bp]
- mov word ptr [si],ax
- xor ax,ax
- pop si
- pop ds
- mov sp,bp
- pop bp
- retf 8
-MX_TEXT ENDS
- END