In this ARC file are two printer drivers, one for the Star Micronics SR-10 and the other for the SR-15. The SR-10 driver is tested and appears to work pretty good. The SR-15 driver is not fully tested, but is based on the same code, so should work properly. These drivers should also work on the SD/SG series if they have the same printer codes, which I believe they do. Set your printer up as follows: STAR MODE (not IBM mode) ENABLE DOWNLOAD CHARACTERS LF must be from host Most of the other settings shouldn't matter, since most/all of them are handled in the printer driver. If you fail to enable download characters, you will get garbage every time the driver initializes the printer. This is because it is downloading 56 characters to the printer, which represents about 764 bytes of data. This driver supports the full character set of the Amiga. This is only supported under 1.2 (and later) versions of the printer.device. This is achieved by using a translation table for characters from hex A0 onwards. This table sends the proper codes to the printer to do either a straight translation to a standard character, use one of the characters in the international character set, or one of the 56 downloaded characters. After printing one of the international characters, the printer is set back to the U.S. character set. The downloaded character set is only enabled for the printing of the specific character mapped in the translation table. You can still print any of the Star printers special characters from hex A0 by sending the value throught the EXTEND command -> ESC[n"x where n is the decimal value of the character. Multiple characters can be sent by seperating the decimal values with semicolons. This could also be used to send commands directly to the printer. These drivers tell the printer to print zero with a slash. This makes it much easier to distinguish a zero from the capital letter 'o'. With these printers, you normally don't have use of Super/Sub scripts, Italics and Boldface when in NLQ mode. Well, this printer driver circumvents that problem, and you now have full use of these modes. Note that the use of these modes with NLQ will only work when preferences print quality is set to LETTER. In this mode, if any of these modes are turned on, NLQ is turned off, and a flag is set. There are four flags, one for Super/Sub scripts, one for Italics, one for Boldface, and the fourth one to allow the user to turn off NLQ when preferences is set to LETTER quality. Since there are seperate flags for the various modes, they can be mixed together with no side effects. NLQ will not be turned on until all of the flags are cleared. It is recommended that you turn on DoubleStrike print when using any of these modes to get better looking print, since these modes are done in the draft mode. The Boldface/DoubleStrike combination when used with NLQ works very good. If you want to use the double strike mode when ever you are using one of these "enhanced" print modes, you can just turn on double strike at the beginning of the document, since it doesn't have any detrimental effects on NLQ mode. Turn on Italics with the SGR3 command, off with the SGR23 command. Boldface on is the SGR1 command, off with SGR23 command. Turn on SuperScripts with SUS2 command, off with SUS1 command. SubScripts on with SUS4 command, off with SUS3 command. SUS1 and SUS3 are interchangeable, and SUS0 also does the same thing. Also use the PLU (partial line up) and PLD (partial line down) commands with care since they also evoke the Super/Sub script commands to turn this on and off. The printer.driver command for ShadowPrint is the same as the Star printers Emphasized print. This only works on the printer in Pica (10 cpi) pitch and expanded Pica (5 cpi) pitches. If you whish to use the printers international characters with the FNT commands, keep in mind that the printer only supports FNT0 to FNT7. Also, due to a bug in the Printer.Device, the FNT0 command does not put the printer back to the USA character set, so you can get back to the USA character set by using FNT8 (Japanese), FNT9 (Norwegian), or FNT10 (Danish II). The driver supports reverse line feeds using the RI command. The commands recognized in these drivers are: RIS, RIN, IND, NEL, RI SGR0, SGR23, SGR4, SGR24, SGR1, SGR22 SHORP0, SHORP1, SHORP2, SHORP3, SHORP4, SHORP5, SHORP6 DEN4, DEN3, DEN2, DEN1 SUS0, SUS1, SUS2, SUS3, SUS4, PLU, PLD FNT0, FNT1, FNT2, FNT3, FNT4, FNT5, FNT6, FNT7 PROP2, PROP1, PROP0 VERP0, VERP1, SLPP, PERF, PERF0 STBM, SLRM, CAM TBC3, TBC4, TBCALL, TBSALL A note about the SLPP, PERF, PERF0, and STBM: PERF0 tells the printer to not have any top or bottom margin. PERF tells the printer how many lines to leave blank at the bottom of the page. If you don't pass a parameter, the default is one line. STBM sets the top and bottom margins. The top margin will tell it the first line to start printing on. The legal range is 1 to 16. The default is line 1 (first line). The bottom margin is the number of lines you want on the page printed. This must include the lines being skipped for the top margin. If you have a page of length 66 lines, and want the last line printed on to be line 63, then use 63. There must be at least one blank line at the bottom of the page using this command. In the example, if you called it with 66 lines, the margin would be set at 65 lines so there would be one blank line at the bottom of page. You must note that the STBM command takes the size of the page from the table below. In custom, the number of lines/page is taken from preferences where you type this value in below the paper size selection. If you want top and bottom margins, and want to change the page size from preferences using the SLPP command, follow these steps: 1) Use STBM command to set your top margin (don't worry about the bottom) 2) Use SLPP to tell the printer how many lines per page you now have. 3) Use the PERF command and tell how many blank lines you want at the bottom of the page. If you are going to use a different sized paper than the standard sizes, choose CUSTOM, and set the number of lines per printed page. Then use the SLPP command with an argument of zero (or no argument) and the value will be read from your preferences setting. The above hassle is only if you are going to be changing paper size midstream. The STBM command is deactivated with the PERF0 command. Paper sizes for the printers: size num lines/page characters per line 1/6 1/8 pica elite fine US_LETTER 8.5x11 66 88 80 96 136 US_LEGAL 8.5x14 84 112 80 96 136 N_TRACTOR 9.5x11 66 88 80 96 136 SR-10 W_TRACTOR 9.5x11 66 88 80 96 136 SR-15 W_TRACTOR 14 7/8 x 11 66 88 136 163 233 CUSTOM : number of lines/page set in preferences, margins are set by the left/right margin settings in preferences and this is also tells where the text printing is done. For graphic dumps, the printer supports four densities. Special setting Density PrintSpacing PrintQuality SPECIAL_DENSITY1 72v x 120h SIX_LPI DRAFT SPECIAL_DENSITY2 72v x 240h SIX_LPI LETTER SPECIAL_DENSITY3 144v x 120h EIGHT_LPI DRAFT SPECIAL_DENSITY4 144v x 240h EIGHT_LPI LETTER (note that for graphic dumps, you can set the printer to disable download characters to get the full use of the printers buffer. This is especially handy for the SR-10, which has only 2K ram. Just be sure to turn the switch back to enable download characters (and power off/on the printer) before printing any text. On the SR-10, with download characters enabled, it takes a few extra passes to print a line of graphics. This doesn't degrade the graphics, just takes longer and causes more wear and tear on the printer) By default, the printer driver will position the graphic dump according to the margin settings and keep in mind that the print pitch is also taken into account. If the SPECIAL_CENTER flag is used, then the graphic dump will be centered. The print spacing (6 or 8 lines/inch) and the Preferences setting for the number of lines that make up the page size are used to tell the printer.device how long your paper is in inches. For example, if you have the page size set to 66 lines and have the print spacing set at 8 lines/inch, then the printer.device will assume the vertical size of your paper for graphic dumps is 66 divided by 8 which equals 8.25 inches. Try it with other values and you should get similiar results. If there are any problems with these printer drivers, please let me know so I can correct it, if it is indeed a problem with my driver. CIS - 76475,1146 Snail - Kelly Jordan P.O. Box 1039 Marathon, Ontario P0T 2E0 Canada Use these driver at your own risk! If you pass these drivers on to anybody, please include this text file to help better explain the usage of the drivers so other people can get the most out of it.