**************************************************************** * * Atari SMM804 Matrix Printer Driver Configuration Table * * This version of the SMM804 printer driver simulates * LIGHT, BOLD, AND NLQ, using the SMM804's PICA, ELITE, * and DOUBLE STRIKE modes. I hope that it will be useful * to the users of this printer. * STU NOAH ( GENIE , S.NOAH ) **************************************************************** * * Name of printer * =============== * Atari SMM 804 * * Miscellaneous configurable variables * ==================================== * * 1: printer type, 0=dot matrix, 1=daisy wheel * Note if printer type is 0 the following 4 variables are never used. * 2: unit width of one character * 3: unit height of one line * 4: Approximate middle of carriage after formfeed * 5: Carriage shift for bold overstrike * 6: 1 to pause between pages * 0, 0, 0, 0, 0 * * Printer characteristics * ======================= * * This table specifies the printer command sequences. * If the top bit of a code is set, then this indicates the position * of a parameter passed to the printer. The code whose top bit is set * in this table is added to the parameter passed before being sent to the * printer. It is not used in all command sequences, only in those where * the printer requires a variable value such as the length of a vertical * tab. * * 0 * Character width 1, D, A * Linefeed WITH return * 2 * Forward print * 3 * Reverse print * 4 * 5 * Absolute horizontal tab 6, 1B,50,1B, 45 * Draft bold on 7, 1B,50,1B, 46 * Draft bold off 8, 1B,4D,1B, 45 * Near Letter Quality (NLQ) bold on 9, 1B,4D,1B, 46 * NLQ bold off A, 1B,50,1B, 34 * Draft italic on B, 1B,50,1B, 35 * Draft italic off C, 1B,4D,1B, 34 * NLQ italic on D, 1B,35 * NLQ italic off E, 1B,48,1B,50 * Draft light on F, 1B,47,1B,50 * Draft light off 10, 1B,48,1B,4D * NLQ light on 11, 1B,50,1B,4D * NLQ light off 12, 1B,50,1B, 53, 0 * Draft superscript on 13, 1B,50,1B, 54 * Draft superscript off 14, 1B,4D,1B, 53, 0 * NLQ superscript on 15, 1B,4D,1B, 54 * NLQ superscript off 16, 1B,50,1B, 53, 1 * Draft subscript on 17, 1B,50,1B, 54 * Draft subscript off 18, 1B,4D,1B, 53, 1 * NLQ subscript on 19, 1B,4D,1B, 54 * NLQ subscript off 1A, 1B,50,1B, 2D, 1 * Draft underline on 1B, 1B,50,1B, 2D, 0 * Draft underline off 1C, 1B,4D,1B, 2D, 1 * NLQ underline on 1D, 1B,4D,1B, 2D, 0 * NLQ underline off 1E, 1B,47 * Formfeed ( ACTUALY DOUBLE STRIKE ON ) 1F, 12 * Horizontal initialisation * 20 * Vertical initialisation 21, 1B, 40 * Termination: printer reset 0 * NULL termination byte * * Translation Table * ================= * * This table provides translation from single Atari input bytes into * multiple printer codes, or to disable output of some characters. * * The entries must be arranged in ascending order of Atari input * code. The table is NULL terminated. * 0 * NULL: print a space 1 * CONTROL CODES: not printed 2 * NOT USED BY SMM804 3 * NO RIGHT ARROW 4 * NO LEFT ARROW 5 * NO CLOSE BOX 6 * NO SIZE BOX 7 *FULL BOX 8 *TICK 9 *CLOCK A *BELL B *MUSICAL NOTE C * D * E *LH ATARI SYMBOL F *RH ATARI SYMBOL 10 *LCD 0 11 *LCD 1 12 *LCD 2 13 *LCD 3 14 *LCD 4 15 *LCD 5 16 *LCD 6 17 *LCD 7 18 *LCD 8 19 *LCD 9 20, 20 * 21, 21 * 22, 22 * 23, 23 * # from USA fount 24, 24 * $ from USA fount 40, 40 * @ from USA fount 5B, 5B * [ from USA fount 5C, 5C * \ from USA fount 5D, 5D * ] from USA fount 5E, 5E * ^ from USA fount 60, 60 * ' from USA fount 7B, 7B * { from USA fount 7C, 7C * | from USA fount 7D, 7D * } from USA fount 7E, 7E * ~ from USA fount 7F, 7F * is a DELETE 80, 80 * Capital C cedilla: C backspace , 81, 81 * Lower case u umlaut from German fount 82, 82 * Lower case e acute from French fount 83, 83 * Lower case a circumflex: a backspace USA ^ 84, 84 * Lower case a umlaut from German fount 85, 85 * Lower case a grave from French fount 86, 86 * Lower case a boll from Danish 1 fount 87, 87 * Lower case c cedilla from French fount 88, 88 * Lower case e circumflex: e backspace USA ^ 89, 89 * Lower case e umlaut: e backspace French umlaut 8A, 8A * Lower case e grave from French fount 8B, 8B * Lower case i umlaut: i backspace French umlaut 8C, 8C * Lower case i circumflex: i backspace USA ^ 8D, 8D * Lower case i grave from Italian fount 8E, 8E * Capital A umlaut from German fount 8F, 8F * Capital A boll from Danish 1 fount 90, 90 * Capital E acute from Norwegian fount 91, 91 * Lower case ae dipthong from Danish 1 fount 92, 92 * Capital AE dipthong from Danish 1 fount 93, 93 * Lower case o circumflex: o backspace USA ^ 94, 94 * Lower case o umlaut from German fount 95, 95 * Lower case o grave from Italian fount 96, 96 * Lower case u circumflex: u backspace USA ^ 97, 97 * Lower case u grave from French fount 98, 98 * Lower case y umlaut: y backspace French umlaut 99, 99 * Capital O umlaut from German fount 9A, 9A * Capital U umlaut from German fount 9B, 9B * c cent: c backspace USA | 9C, 9C * Pound sterling from UK fount 9D, 9D * Yen from Japanese fount 9E, 9E * Esszet from German fount 9F, 9F * Lower case swash f: print f A0, A0 * Lower case a acute: a backspace ' A1, A1 * Lower case i acute: i backspace ' A2, A2 * Lower case o acute: o backspace ' A3, A3 * Lower case u acute: u backspace ' A4, A4 * Lower case n tilde from Spanish fount A5, A5 * Capital N tilde from Spanish fount A6, A6 * Lower case a underline: a backspace underline A7, A7 * Lower case o underline: o backspace underline A8, A8 * Inverted ? from Spanish fount A9, A9 * top left corner AA, AA * top right corner AB, AB * 1/2 fraction AC, AC * 1/4 fraction AD, AD * Inverted ! from Spanish fount AE, AE * << AF, AF * >> B0, AF * Lower case a tilde: a backspace USA ~ B1, B1 * Lower case o tilde: o backspace USA ~ B2, B2 * Capital crossed O from Danish 1 fount B3, B3 * Lower case crossed o from Danish 1 fount B4, B4 * lower case oe dipthong B5, B5 * capital OE dipthong B6, B6 * capital A grave: print A B7, B7 * capital A tilde: print A B8, B8 * capital O tilde: print O B9, B9 * Umlaut from French fount BA, BA * Acute: print ' BB, BA * dagger BC, BC * paragraph symbol BD, BD * copyright symbol BE, BE * Registered symbol BF, BF * Trademark symbol C0, C0 * ij ligature: y backspace French umlaut C1, C1 * Capital IJ ligature C2, C2 * Hebrew... C3, C3 * C4, C4 * C5, C5 * C6, C6 * C7, C7 * C8, C8 * C9, C9 * CA, CA * CB, CB * CC, CC * CD, CD * CE, CE * CF, CF * D0, D0 * D1, D1 * D2, D2 * D3, D3 * D4, D4 * D5, D5 * D6, D6 * D7, D7 * D8, D8 * D9, D9 * DA, DA * DB, DB * DC, DC * DD, DD * Section mark from German fount DE, DE * dropped circumflex DF, DF * infinity E0, E0 * alpha E1, E1 * Esszet from German fount E2, E2 * Greek.... E3, E3 * E4, E4 * E5, E5 * E6, E6 * E7, E7 * E8, E8 * E9, E9 * EA, EA * EB, EB * EC, EC * ED, ED * EE, EE * EF, EF * F0, F0 * Equivalence: = backspace _ F1, F1 * +-: + backspace _ F2, F2 * >=: > backspace _ F3, F3 * <=: < backspace _ F4, F4 * integral top piece F5, F5 * integral bottom piece F6, F6 * Division sign: : backspace - F7, F7 * twiddly = symbol F8, F8 * Degree symbol from French fount F9, F9 * superior bullet FA, FA * inferior bullet FB, FB * square root sign FC, FC * superior n FD, FD * superior 2 FE, FE * superior 3 FF, FF * macron 0 * END OF TABLE