Two modules just tested (Chinese characters, keyboard)

xiaoxiao2021-03-06  50

Among them, I converted my own point-made tool tool into assembly code, and simulated the ordinary buttons of the C language.

The afternoon task is to modify the interrupt. Model Small .stack 200 .DataHz DB 00H, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h db 00h, 00h, 00h, 00h, 00h db 00h, 00h, 00h, 00h db 00h, 00h, 00h, 7FH, 0FFH, 0C0H, 00H, 00h DB 00h, 00h, 01H, 0F0H, 01H, 0F0H, 00h, 00h DB 00H, 00H, 03H, 80H, 00h, 3ch, 00h, 00h, 00h, 1Eh, 00h, 00h DB 00H, 00H, 3CH, 00H, 07H, 80H, 00h DB 00H, 00H, 78H, 00h, 00h, 00h, 01H, 0E0H, 00h, 00h, 07h, 00h, 00h, 00h, 00h, 3EH, 00H DB 00H, 1FH, 00H, 01H, 0F8H, 00h, 0FH, 80H DB 00h, 7ch, 00h, 0fh, 0fch, 00h, 03h, 0E0h DB 01H, 0F0H, 00h, 1EH, 0EH, 00H, 0F0H DB 03H, 0E0H, 00H, 38H, 07H, 00h, 00h, 00h, 70h, 03H, 00h, 00h, 1EH DB 0EH, 00h, 60H, 01H, 80H, 00h, 06H DB 1CH, 00H, 00H, 60H, 01H, 0C0H, 00H, 06H DB 18H, 00H, 00H, 02H DB 18H, 01H, 0FFH, 0E0H, 00H, 0FFH, 0C0H, 02H DB 18H, 03H, 0FFH, 0E0H, 00H, 7FH, 0F0H, 02H DB 18H, 07H, 00h, 00h, 00h, 38h, 02h db 18h, 07h, 00h, 00h, 00h, 1CH, 02H DB 0CH, 06H, 00H, 00H, 00H, 0CH, 06H DB 0CH, 06H, 00h, 00h, 00h, 0EH, 06H DB 06H, 06H, 00h, 00h, 00h, 0EH, 0CH DB 07H, 8EH, 00H, 00h, 00h, 00h, 01h, 00h, 00h, 00h, 00h, 0fh, 0f0h DB 00h, 07H, 00h, 0CH, 00H, 1FH, 0E0H DB 00H, 1FH, 0FFH, 0FFH, 0FCH, 00h, 1FH, 00H DB 00H, 3FH, 0FFH, 0FFH, 0F8H, 00h, 3FH, 80H DB 00h, 78H, 00H, 38H, 00H, 61H, 0C0H DB 00H, 60H, 00H, 00H, 18H, 00h, 0E0H, 0C0H DB 00H, 0E0H, 00h, 00h, 1CH, 01H, 0C0H, 60H DB 00h, 0C0H, 00H, 00H, 0EH, 0C0H, 00H, 00H, 03H, 0FEH, 00H, 60H DB 00H, 0C0H, 00h, 0FH, 0FCH, 78H, 00H, 60H DB 00H, 0C0H, 00h, 3FH, 0FFH, 00H, 00H, 60H DB 00H, 0C0H, 07H, 0F8H, 07H, 0FCH, 00H, 60H DB 00H, 0C0H, 07H, 0F0H, 03H, 0FCH, 00H, 60H DB 00H, 0C0H, 06H, 60H, 01H, 8CH, 00H, 60H, 01H, 8CH, 00H, 60H DB 00H, 00H, 60H DB 00H, 0C0H, 06H, 0E0H, 01H, 0FCH, 00H, 60H DB 00h, 0C0H, 06H, 0E0H, 01H, 0FCH, 00H, 60H DB 00H, 0C0H, 06H, 0C0H, 01H, 0FCH, 00H, 60H DB 00H, 0C0H, 07H, 0C0H, 03H, 0DCH, 00H, 60H DB 00H, 0C0H, 07H, 0C0H, 07H, 0CH,

00h, 60h DB 00h, 0C0H, 07H, 80H, 06H, 0CH, 00H, 60H DB 00h, 0C0H, 07H, 00h, 0CH, 0E0H, 0CH, 00H, 0CH, 0EH, 00H, 0F0H DB 03H, 0F0H, 3ch, 00h, 0CH, 0FH, 01H, 0FCH DB 07H, 3FH, 0F8H, 00h, 01H, 07H, 0FH, 9EH DB 06H, 01H, 0E0H, 00H, 0EH, 03H, 0FFH, 0EH DB 0CH, 00H, $ 00h, 06h db 0ch, 00h, 00h, 1FH, 80H, 00H, 06H DB 0CH, 00H, 00H, 00h, 79H, 0C0H, 00H, 06H DB 0CH, 00h, 00h, 00h, 06h db 0ch, 00h, 00h, 03h, 0c0h, 3ch, 00h, 06h db 0eh, 00h, 00h, 1FH, 80H, 1FH, 00H, 0EH DB 06H, 00H, 01H, 0FCH, 00H, 07H, 0C0H, 1CH DB 07H, 80H, 7FH, 0F0H, 00H, 00H, 0F8H, 3CH DB 03H, 0FFH, 0FFH, 00H, 00H, 00H, 3FH, 0F8H DB 00H, 0FFH, 0C0H, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00hposx DW 40; X coordinate POSY DW 40; Y coordinate Color DB 1

. Codemain Proc Far Mov AX, @data MoV DS, AX; Setting Graphics MOV AH, 00 MOV Al, 13H INT 10HMM:

MOV POSX, 40 MOV POSY, 40 Inc Color Mov Al, Color CMP Al, 255 JNE MM1 MOV Color, 1mm1: MOV BX, OFFSET HZ; Chinese characters offset address MOV CX, 512; Chinese characters MOV DX, 0 The number of statistics characters, each 2 changing a row M: MOV Al, [BX]; take out a character PUSH CX MOV CX, 8M1: RCL Al, 1 JNC M2; no carry push ax push dx push cx MoV AH, 0CH; Writing Pixels MOV Al, Color MoV DX, Posy Mov CX, POSX INT 10H POP CX POP DX POP AX M2: Inc POSX LOOP M1 POP CX Inc BX; Remove a Character Inc DX CMP DX, 8 JNE M3 MOV DX, 0 Wrap Inc Posy MOV POSX, 40; Restore the original X coordinate M3: loop m jmp mm_1: MOV AH, 01H INT 16H JZ M_2; no button

MOV AH, 00H; Naked Scanning Code INT 16H CMP AH, 48H; Judging the Scanning Code is from JZ M_3 CMP AH, 50H; Judging the Scanning Code Under JZ M_3 CMP AH, 4BH; Judgment Scanning Code is left JZ M_3 CMP AH, 4DH Judging the scan code is the right JZ M_3 CMP AH, 01H; Judgment the scan code is ESC JZ M_3 CMP AH, 1CH; Judgment the scan code is Enter jz m_3m_2:; MOV AH, 02H; MOV Al, 'A'; int 21h JMP M_1m_3:; Settings Text Mode MOV AH, 00 MOV Al, 03 INT 10H

MOV AH, 4CH INT 21HMAIN ENDP

End main

转载请注明原文地址:https://www.9cbs.com/read-81943.html

New Post(0)