CODE SEGMENT ASSUME CS:CODE,DS:CODE ORG 100h Start: jmp PrgStart LogoPos = 0600h ;------------------------ LogoMsg label byte db ' ****** Mode Set Program ****** ',cr,lf db '(C)Copyright Qnix Co., Ltd. 1993 ',cr,lf db ' resolution ',cr,lf db ' 0 = 132x44 (1188x396) ',cr,lf db ' 1 = 132x28 (1188x448) ',cr,lf db ' 2 = 132x43 (1188x387) ',cr,lf db ' 3 = 132x25 (1188x400) ',cr,lf db ' 4 = 132x50 (1056x400) ',cr,lf db ' 5 = 80x25 (640x480) ',cr,lf db ' select 0~5 ',cr,lf db ' ',cr,lf db ' ex) hecon /5 ,cr,lf LogoLng = $-LogoMsg PrgStart: push ax push bx push cx push dx push ds push es push si push di push bp mov ax,cs mov ds,ax mov es,ax call ParsCommand pop bp pop di pop si pop es pop ds pop dx pop cx pop bx pop ax Exit: mov ah,4ch int 21h ;------------------------------------------------------------------------ Modeset: mov ax,00 int 10h ret ParsCommand: mov si,81h @@: lodsb cmp al,cr je ParsEnd cmp al,lf je ParsEnd cmp al,'/' jnz @b lodsb cmp al,'?' je Document cmp al,'0' jb ParsEnd cmp al,'9' ja ParsEnd jmp ModeSet ParsEnd: ret Document: mov bp,offset LogoMsg mov dx,LogoPos mov cx,LogoLng mov bl,07h xor bh,bh mov ax,1300h int 10h ret