[org 0x1000] start: mov ah, 01h ;make cursor invisible mov cx, 2607h int 10h mov ah, 06h ; Scroll up function xor al, al ; Clear entire screen xor cx, cx ; Upper left corner CH=row, CL=column mov dx, 184FH ; lower right corner DH=row, DL=column mov bh, 1Eh ; YellowOnBlue int 10H ; execute interrupt mov ah, 06h ;draw rect on background mov cx, 0101h mov dx, 164Dh mov bh, 3Eh int 10h mov ah, 06h ;draw shadow mov cx, 1702h mov dx, 174Eh mov bh, 0Eh int 10h mov ah, 06h ;draw shadow mov cx, 024Eh mov dx, 174Eh mov bh, 0Eh int 10h mov ah, 02h ;sets cursor to top to write mov bh, 0h mov dh, 1h mov dl, 1h int 10h mov al, 0xC9 ;draw border mov bl, 0x03 mov ah,0x0e int 10h mov al, 0xCD mov bl, 0x03 mov ah,0x0e int 10h mov ah, 02h ;sets cursor to top to write mov bh, 0h mov dh, 4h mov dl, 4h int 10h mov si, msg1 call print mov si, msg2 print: lodsb or al,al jz exit mov bl, 0x03 mov ah,0x0e int 10h jmp print exit: ret msg1 db " X P U B",0x0A,0 msg2 db " NOT MY DEFAULT",0x0D,0x0A,0