SpcPrint Spectrum 512 Picture Printer Version 1.0 Documentation By Doug Johnson Requirements: - Atari ST Computer - Color monitor - Source of Spectrum SPC or SPU pictures - EPSON or compatible printer supporting the ESC-Z sequence (1920 DPL) - A little time When I first saw a Spectrum 512 picture, I was amazed. I tried to print it with Alternate+HELP. To my surprise, the 512 color picture did not print. After thinking about it for a few minutes, I realized what Trio Engineering had done. They simply changed the color palette 3 times per scan line. "Aha!" I thought. I started working on a GFA Basic program that would convert the pictures to 16 colors. After fooling around a little bit, I was able to convert DEGAS pictures to Spectrum and those converted ones back, but I couldn't convert other Spectrum pictures. Hmmm... There must be something funny about how they store those pictures. I was unable to figure out what they were doing exactly. Then I saw a text file on how to display Spectrum pictures in GFA Basic. I downloaded it and wrote a quick and dirty program to display SPC and SPU pictures, but I still hadn't figured out the file format. I gave up for a while and after finding out the disappointment of many users of not being able to print their Spectrum pictures on their EPSON printers, I decided to try again. After hacking for several hours, I finally decoded the Spectrum SPU and SPC formats. Now all I had to do was write a program to convert the RGB color values to grey scales for the printer. Not that easy. After going through what seems like reams of paper, I finally got it right. My program would load a SPC or SPU picture and print it. But it had one disadvantage. It couldn't be configured for different systems and pictures. Some pictures came out too dark, and some too light. Much of the blue in pictures turned up as being pitch black on paper. I looked at the program, and decided that I was going to make it work for any SPC/SPU picture. I worked many hours to make it so that all pictures can be printed with the same quality that exists when those pictures are displayed. After going through my library of SPU and SPC pictures, and printing most of them, I am quite satisfied with the results. All pictures can be printed in the highest quality possible. Well, my hard work has started to pay off. All I expect is a little money in return. If you feel this program useful, please send $10 to Doug Johnson, 5510 Spanish Oak, Houston, TX 77066. This program is NOT public domain, but can be placed on P/D disks, and should be distributed to any and all BBSs around the country (or world). Thank you for this support. Well, enough about the history of SpcPrint. You want to know how to use the program. Well, let's get started. Upon running the program, you will see a credit screen and a friendly reminder to (please) send me some money. After pressing a key, an ITEM SELECTOR box will come up asking for the Spectrum file to print. Please note that this program only works with the SPC and SPU formats of Spectrum pictures, not the newer SPS format. After selecting your picture, it will be displayed on the screen. After looking over your pic, press any key to go on. If you ran SPCPRINT.GFA in medium resolution, you will then exit the program. If you ran the program in low resolution, you will be prompted for print specifications. These include (not necessarily in any order): - Red, Green, and Blue scaling percentage. Each color makes up a certain percentage of the grey scale used to print the picture. These must total 100%. A very red picture should have a higher red scaling percentage, etc. - "Print on printer?" Answer either Yes or No. If you answer No, the picture will begin to be converted to grey scales, where you will have the option to save that picture. - "Use SpcPrint, Atari, or Custom pattern" This will allow you to select the type of grey scale used when printing. If SpcPrint is used, blacks are more vivid than greys, and white more than greys. If Atari is used, an even range of greys are used. If Custom is used, you may load a custom pattern off of disk. See the end of this file for the file format of the .PAT files. - "Enter DARKEST value" SpcPrint uses 13 level grey scaling. 0 is totally black, and 12 is totally white. Entering a number here will force that number to be the darkest value that will be used. - "Enter BRIGHTEST value" Entering a number here will force that number to be the brightest value used. - "Enter # of grey scales" This will allow you to select how many levels of grey (between DARKEST and BRIGHTEST) are used when printing out. 700 grey scales are used when calculating the level of grey, and this will change the conversion used for the 13 patterns used for the default grey scale. - "Round all colors with fractions >= 0." Finish the fraction here. This number is used to round up all values. Rounding up will cause the picture to be brighter. For a darker picture, select a lower number. For a lighter picture, select a higher fraction. (Range: 0.0 to 0.9999) - "Save as PI1 picture?" If you select Yes, the current grey picture may be saved as a DEGAS low-res picture. After entering values for each of these prompts, the screen will fill with the bitmap used for the Spectrum picture. This bitmap does not look like the SPC/SPU picture until something is done to merge the palette and picture data. That is what this program mainly does. This process is slow, and you can see it taking place from the upper-left hand corner of the picture to the lower-right hand cornder of the picture. If you selected to print the picture, it will also be printed during this time. Suggestions I strongly urge that you use a printer spooler or printer buffer when using this program. There is so much data being communicated from the computer to the printer that a way of spaning that data out will decrease printout time nearly 50%. I have used the printer buffer/spooler provided with Intersect's RAMbaby RAMdisk, and have found no problems with it. I wrote this program using GFA Basic Version 3.0 (thanks, GFA Systemtechnik) using some routines that Trio Engineering released (thank you, Trio) for displaying Spectrum pictures from GFA Basic, on a stock 1040ST and color monitor. All Spectrum pictures I tried out were in the P/D, as I do not own Spectrum. I used an EPSON RX-80 printer which produced some dark pictures by default. My settings for most pictures were: Red 40%, Green 39%, Blue 21%, Darkest 7, Lightest 12, # Greys 6, and both the SpcPrint and Atari patterns. I had excellent results with these settings. Pass this program on to everyone. Thank you for your time. .PATtern file format The .PAT file is a standard ASCII file that contains the bitmaps for 13 grey levels, from darkest to lightest. These bit patterns are 6 bits wide and 2 bits high. They are stored with the following format, * * * * * * The above being one single bit pattern (mid-darkness). Thirteen of these bit patterns should be given (26 lines of 6 characters each) in a .PAT file. I will release different .PAT files into the Public Domain as I come up with them. Doug 2wCwS!cdBRTC!12B