; ; Higkfont.asm ; Bruce A. McMenomy ; (c) 1984. This program may be distributed ; free but not sold. ; ; This program defines a Greek character set ; for the Epson FX-series printers. It is ; run once to install the character set in the ; printer's RAM. Note that dip-switches in ; the printer must be set to enable character- ; set configuration. Using the printer this ; way precludes using the RAM as a buffer. ; Further definitions and descriptions of the ; operation of the FX-80 and its cousins, see ; your printer documentation. ; ; This program as currently set up includes ; the toggle at the end which selects the ; RAM character set. These final codes may ; be deleted if you would rather set this ; 'by hand'. This is the second version of ; the program, which installs the Greek ; alphabet in the ASCII range 128-255, while ; 0-127 retain an image of the ROM set. The ; Logkfont.asm program installs the Greek set ; at the lower values. ; BDOS EQU 5 PBYTEF EQU 5 ORG 0100H LXI H,PSTRBG ;GET START ADDR. LOOP MOV E,M MVI C,PBYTEF ;BDOS LIST OUTPUT CALL PUSH H CALL BDOS POP H INX H LXI D,PSTRND ;COMPARE TO END ADDR. MOV A,D CMP H JNZ LOOP MOV A,E CMP L JNZ LOOP JMP 0 ;DONE, GO HOME ; PSTRBG DB 17,27,':',0,0,0 DB 27,'&',0 DB 'a'+128,'a'+128,11 DB 0,56,68,0,68,0,56,68,0,68,0,0 DB 27,'&',0 DB 'b'+128,'b'+128,139 DB 0,0,127,128,4,146,0,146,108,0,0,0 DB 27,'&',0 DB 'g'+128,'g'+128,11 DB 32,64,0,64,32,16,15,16,32,64,128,0 DB 27,'&',0 DB 'd'+128,'d'+128,139 DB 0,0,156,34,128,98,0,34,28,0,0,0 DB 27,'&',0 DB 'e'+128,'e'+128,139 DB 0,0,20,42,0,42,0,42,0,42,0,0 DB 27,'&',0 DB 'z'+128,'z'+128,11 DB 0,0,64,140,16,164,65,132,1,142,0,0 DB 27,'&',0 DB 'h'+128,'h'+128,11 DB 0,64,60,0,64,0,64,0,64,63,0,0 DB 27,'&',0 DB 'u'+128,'u'+128,139 DB 0,16,76,162,16,130,16,130,124,0,16,0 DB 27,'&',0 DB 'i'+128,'i'+128,168 DB 0,0,0,0,60,2,0,0,0,0,0,0 DB 27,'&',0 DB 'k'+128,'k'+128,139 DB 0,62,0,8,0,8,20,0,34,0,2,0 DB 27,'&',0 DB 'l'+128,'l'+128,139 DB 130,0,130,68,40,16,8,4,2,0,2,0 DB 27,'&',0 DB 'm'+128,'m'+128,11 DB 0,127,0,8,4,0,4,0,120,4,0,0 DB 27,'&',0 DB 'n'+128,'n'+128,139 DB 0,32,0,62,0,2,4,8,16,32,0,0 DB 27,'&',0 DB 'j'+128,'j'+128,139 DB 0,0,108,146,0,146,1,146,4,0,0,0 DB 27,'&',0 DB 'o'+128,'o'+128,139 DB 0,0,28,34,0,34,0,34,28,0,0,0 DB 27,'&',0 DB 'p'+128,'p'+128,139 DB 0,32,30,32,0,32,0,32,28,34,0,0 DB 27,'&',0 DB 'r'+128,'r'+128,11 DB 0,0,62,65,0,68,0,68,56,0,0,0 DB 27,'&',0 DB 's'+128,'s'+128,139 DB 0,0,28,34,0,34,0,34,28,32,0,0 DB 27,'&',0 DB 't'+128,'t'+128,139 DB 0,32,0,32,28,34,0,34,0,32,0,0 DB 27,'&',0 DB 'c'+128,'c'+128,11 DB 0,64,56,4,0,4,251,4,0,68,56,0 DB 27,'&',0 DB 'y'+128,'y'+128,139 DB 0,32,0,60,2,0,2,0,34,28,0,0 DB 27,'&',0 DB 'v'+128,'v'+128,139 DB 28,34,0,2,0,28,0,2,0,34,28,0 DB 27,'&',0 DB 'w'+128,'w'+128,11 DB 0,0,56,68,0,69,0,69,2,64,0,0 DB 27,'&',0 DB 'f'+128,'f'+128,11 DB 0,56,0,68,0,255,0,68,0,56,0,0 DB 27,'&',0 DB 'x'+128,'x'+128,11 DB 64,0,65,34,20,8,20,34,65,0,1,0 DB 27,'&',0 DB 'G'+128,'G'+128,139 DB 0,254,0,128,0,128,0,128,0,128,0,0 DB 27,'&',0 DB 'D'+128,'D'+128,139 DB 6,8,18,32,66,128,66,32,18,8,6,0 DB 27,'&',0 DB 'L'+128,'L'+128,139 DB 6,8,16,32,64,128,64,32,16,8,6,0 DB 27,'&',0 DB 'U'+128,'U'+128,139 DB 0,124,0,146,0,146,0,146,0,124,0,0 DB 27,'&',0 DB 'J'+128,'J'+128,139 DB 0,130,0,146,0,146,0,146,0,130,0,0 DB 27,'&',0 DB 'P'+128,'P'+128,139 DB 128,126,128,0,128,0,128,0,128,126,128,0 DB 27,'&',0 DB 'R'+128,'R'+128,139 DB 0,0,254,0,144,0,144,0,144,96,0,0 DB 27,'&',0 DB 'S'+128,'S'+128,139 DB 0,130,68,170,16,130,16,130,0,130,0,0 DB 27,'&',0 DB 'F'+128,'F'+128,139 DB 16,40,0,169,0,254,0,169,0,40,16,0 DB 27,'&',0 DB 'C'+128,'C'+128,139 DB 64,48,8,1,8,246,8,1,8,48,64,0 DB 27,'&',0 DB 'V'+128,'V'+128,139 DB 0,112,8,134,0,128,0,134,8,112,0,0 DB 27,'&',0 DB 'W'+128,'W'+128,139 DB 0,0,1,126,0,144,0,144,0,144,0,0 DB 27,'&',0 DB 'A'+128,'A'+128,139 DB 0,14,16,40,64,136,64,40,16,14,0,0 DB 27,'&',0 DB 'Z'+128,'Z'+128,138,0,0,130,4,138,16,162,64,130,0,0,0 DB 27,'&',0 DB 'Y'+128,'Y'+128,139,0,0,128,64,32,30,32,64,128,0,0,0 DB 27,'&',0 DB 'R'+128,'R'+128,139,0,0,254,0,144,0,144,0,144,96,0,0 DB 27,'&',0 DB 'T'+128,'T'+128,139,0,128,0,128,0,254,0,128,0,128,0,0 DB 27,'&',0 DB 'O'+128,'O'+128,139,0,56,68,130,0,130,0,130,68,56,0,0 DB 27,'&',0 DB 'N'+128,'N'+128,139,0,254,0,64,32,16,8,4,0,254,0,0 DB 27,'&',0 DB 'M'+128,'M'+128,139,0,254,0,64,32,16,32,64,0,254,0,0 DB 27,'&',0 DB 'K'+128,'K'+128,154,0,0,0,254,0,16,40,68,130,0,0,0 DB 27,'&',0 DB 'I'+128,'I'+128,153,0,0,0,130,0,254,0,130,0,0,0,0 DB 27,'&',0 DB 'H'+128,'H'+128,139,0,254,0,16,0,16,0,16,0,254,0,0 DB 27,'&',0 DB 'E'+128,'E'+128,139,0,0,254,0,146,0,146,0,146,0,0,0 DB 27,'&',0 DB 'B'+128,'B'+128,139,0,0,254,0,146,0,146,0,146,108,0,0 DB 27,'&',0 DB 'A'+128,'A'+128,139,0,14,16,40,64,136,64,40,16,14,0,0 DB 27,'&',0 DB 'V'+128,'V'+128,138,0,0,50,72,2,132,0,132,72,50,0,0 DB 27,'%',1,0 PSTRND EQU $