home *** CD-ROM | disk | FTP | other *** search
- ; example:
- ; C>ADD
- ; C>MASM MAIN1;
- ; C>LINK MAIN1;
- ; C>MAIN1
- ;
- code segment para 'code'
- assume cs:code
- main proc far
- mov ax,6000h
- mov es,ax
- mov ax,1601
- mov bx,48
- mov dx,bx
- mov cx,0120h
- mov bp,CS
- mov si,offset selpage
- mov di,0d000h
- int 65h
- call display
- mov ax,3
- int 10h
- mov ax,4c00h
- int 21h
- main endp
- ;
- display proc near
- mov ax,6
- int 10h
- push es
- pop ds
- mov si,0
- mov ax,0b800h
- mov es,ax
- mov di,si
- mov cx,48
- cld
- loop1: push cx
- mov cx,6
- rep movsb
- pop cx
- add si,48-6
- sub di,6
- xor di,2000h
- cmp di,2000h
- jae noppp
- add di,80
- noppp: loop loop1
- xor ax,ax
- int 16h
- ret
- display endp
- ;
- SPS DB 04h, 05h, 06h, 07h, 24h, 25h, 26h, 27h, 44h, 45h, 46h, 47h
- DB 64h, 65h, 66h, 67h, 84h, 85h, 86h, 87h, 0a4h,0a5h,0a6h,0a7h
- DB 0c4h,0c5h,0c6h,0c7h,0e4h,0e5h,0e6h,0e7h
- DB 08h, 09h, 0ah, 0bh, 28h, 29h, 2ah, 2bh, 48h, 49h, 4ah, 4bh
- DB 68h, 69h, 6ah, 6bh, 88h, 89h, 8ah, 8bh, 0a8h,0a9h,0aah,0abh
- DB 0c8h,0c9h,0cah,0cbh,0e8h,0e9h,0eah,0ebh
- DB 0ch, 0dh, 0eh, 0fh, 2ch, 2dh, 2eh, 2fh, 4ch, 4dh, 4eh, 4fh
- DB 6ch, 6dh, 6eh, 6fh, 8ch, 8dh, 8eh, 8fh, 0ach,0adh,0aeh,0afh
- DB 0cch,0cdh,0ceh,0cfh,0ech,0edh,0eeh,0efh
- db 14h, 15h, 16h, 17h, 34h, 35h, 36h, 37h
- db 54h, 55h, 56h, 57h, 74h, 75h, 76h, 77h
- SelPage PROC FAR
- push bx
- push ds
- mov bx,0d400h
- mov ds,bx
- mov bx,ax
- MOV BL,CS:SPS[BX]
- MOV DS:[0],BL
- pop ds
- pop bx
- RET
- SelPage ENDP
- ;
- code ends
- end main