Business Basic III: Custom characters on a DMP

Business Basic III: Custom characters on a DMP

The following sample program defines a custom character on the Apple Dot
Matrix Printer, using Apple Business BASIC and a parallel driver named ".DMP".
 
          $30_$78_$FC_$FC_$FE_$FD_$49_$00
wire #1  |___|___|___|___|___|_*_|_*_|___| (LSB no descenders)
wire #2  |___|___|___|___|_*_|___|___|___| (LSB with descenders)
wire #3  |___|___|_*_|_*_|_*_|_*_|___|___|
wire #4  |___|_*_|_*_|_*_|_*_|_*_|_*_|___|
wire #5  |_*_|_*_|_*_|_*_|_*_|_*_|___|___|
wire #6  |_*_|_*_|_*_|_*_|_*_|_*_|___|___|
wire #7  |___|_*_|_*_|_*_|_*_|_*_|_*_|___|
wire #8  |___|___|_*_|_*_|_*_|_*_|___|___| (MSB no descenders)
wire #9  |___|___|___|___|___|___|___|___| (MSB with descenders)
 
10   esc$=CHR$(27):REM Escape
12   OPEN#1,".dmp":OUTPUT#1
14   PRINT esc$;"Z";CHR$(0);CHR$(32):
     REM Set 8 bit format on printer
16   PRINT esc$;"-":REM Declare as 8x8 character
18   PRINT esc$;"I";:REM Load Character Generator command
20   PRINT"!";:REM Assign new character to "!"
22   PRINT CHR$(8);:REM No descender in character
24   PRINT CHR$(TEN("0030"));CHR$(TEN("0078"));CHR$(TEN("00FC"));
     CHR$(TEN("00FC"));CHR$(TEN("00FE"));CHR$(TEN("00FD"));
     CHR$(TEN("0049"));CHR$(TEN("0000"));
26   PRINT CHR$(4):REM End of character
28   PRINT esc$;"D";CHR$(0);CHR$(32):
     REM Reset 7 bit format on printer
30   PRINT esc$;"'":REM Select alternate character set
32   PRINT"!":REM Try new character
34   PRINT esc$;"$":REM Return to pre-set character set
36   CLOSE:END
38   REM By Grover Nunnery - Apple Computer - Charlotte, NC



Back