; more source code at http://www.ahjoe.com/source/srcdown.asp ; CHANG A 16*16 HZK FILE TO VIDEO CHAR FORMAT EXTRN FOPEN:FAR, FCREATE:FAR, FREAD:FAR, FWRITE:FAR EXTRN FSIZE:FAR, FPOS:FAR CODE SEGMENT ASSUME CS:CODE SOURCE DB 'SRC16.FNT',0 DEST DB 'DST16.FNT',0 ERRINFO DB 'ERROR!',07,0DH,0AH,'$' GOODINFO DB 'GOOD!',0DH,0AH,'$' SBUFF DW 16 DUP (0) DBUFF DW 16 DUP (0) SFINO DW 0FFH DFINO DW 0FFH TSIZE DW 0 DW 0 BEGIN: MOV AX, CS MOV DS, AX MOV ES, AX MOV DX, OFFSET SOURCE MOV AL, 00 CALL FOPEN JNC NETTE JMP ERROR NETTE: MOV SFINO, AX MOV DX, OFFSET DEST MOV AL, 01 CALL FCREATE JC ERROR MOV DFINO, AX MOV AX, SFINO CALL FSIZE JC ERROR MOV TSIZE, AX MOV TSIZE+2, DX MOV AL, 00 XOR CX, CX MOV DX, CX MOV BX, SFINO CALL FPOS CONTI: MOV AX, SFINO MOV DX, OFFSET SBUFF MOV CX, 32 CALL FREAD JC ERROR MOV DI, OFFSET DBUFF CLD MOV CX, 16 MOV SI, OFFSET SBUFF REPEA1: MOVSB INC SI LOOP REPEA1 MOV CX, 16 MOV SI, OFFSET SBUFF+1 REPEA2: MOVSB INC SI LOOP REPEA2 MOV DX, OFFSET DBUFF MOV AX, DFINO MOV CX, 32 CALL FWRITE JC ERROR DB 66H MOV AX, 32 DW 0 DB 66H SUB TSIZE, AX JZ OVER JMP CONTI OVER: MOV DX, OFFSET GOODINFO SHOO: MOV AH, 09 INT 21H MOV AH, 4CH INT 21H ERROR: MOV DX, OFFSET ERRINFO JMP SHOO CODE ENDS END BEGIN