; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@4
;
; Demonstration, displaying the compiler of Chinese characters
;
; File name: myname.asm
;
; Author: Huang Zhibin, 2001 December 4 in Hechi
;
Description: This program displays Chinese characters by calling the BIOS 10H.
; Entrance: AX = 1100h
; BH = height of the word mode (effective value: 0 ~ 20h, default: 10h)
; BL = Replaced word model (effective value: 0 ~ 7)
; Cx = number of words to be replaced
; DX = ASCII of the first word model corresponding to the first word
; Es: bp = new word mode start address
; INT 10h
To restore the system character set, you can do the following call:
AX = 1104h
; BL = word model set (Valid value: 0 ~ 7)
; INT 10h
;
; Instructions:
Masm myname ;;
Link myname ;;
EX2BIN MyName.exe MyName.com
;
Note: This program does not press the word code in the machine code of the word, so it cannot be run under the Chinese character operating system.
In other words, if you want the program to display Chinese characters normally in Chinese and English, then it is necessary to replace the internal code of Chinese characters.
; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@4
Codeseg segment public 'code'; ======================================= ORG 100H Assume ES: CODESEG, SS: CODESEG Assume CS: CODESEG, DS: CODESEG, ES: CODESEG; ----------------------------- Main Proc Near MOV AX, 1100H MOV BH, 10H MOV BL, 0 MOV CX, 6 MOV DX, 200 Lea BP, Mode Int 10h MOV AH, 09H Lea DX, MyName Int 21h MOV AH, 7 INT 21H MOV AX, 1104H MOV BL, 0 INT 10H MOV AX, 4C00H INT 21h (or int 20h) main endp; ------------------- Mode DB 100B, 100B, 111111B, 100B, 100B, 11111111B, 1B, 11111B, 10001B, 11111B, 10001B, 11111B, 10000B, 100B, 11000B, 1100000Bdb 01000000B, 01010000B, 11111000B, 01000000B, 01000100B, 11111110B, 00010000B, 11111000B, 00010000B, 11110000B, 00010000B, 11110000B, 00000000B, 01100000B, 00011000B, 00000100B
DB 1b, 1b, 1b, 11111111b, 1b, 1b, 1b, 111111b, 0b, 10b, 10001b, 1010000b, 1010000b, 10010000b, 1111b, 0b
DB 000000B, 00000000B, 00000000B, 00000000B, 00010000B, 11111000B, 0B, 00000000B, 10000000B, 10000100B, 00010000B, 00010010B, 11110000B, 0B
DB 0B, 100000B, 10001B, 0B, 1111100B, 1011B, 1001000B, 101000B, 101001B, 10001B, 10100000B, 100101B, 1000101B, 1000001B, 11B, 0B
DB 1000B, 00010000B, 11110100B, 0110B, 00010000B, 01010000B, 01010000B, 010010000B, 01010000B, 01001000B, 01001000B, 01101010B, 0110B, 10B, 10B
MyName DB 200, 201, 202, 203, 204, 205, '$'
; ======================
Codeseg Ends
End main
I have written with a C language having a program that can read the word model of the specified Chinese characters directly from the UCDOS font, and store them in the file in the file, and put them in the corresponding source program.