[This document is formatted in 38›cols for copy to "E:" viewing on the›monitor]›› GR8TODD3.COM››This is a programme to convert a›gaphics 8 screen to thirty characters›in a quadruple file Daisy Dot 3›font.››The programme works as follows:››Load the programme using the "L"›option of DOS, or from SpartaDos.››The programme will prompt for a›graphic filespec. This can be a›Graphics 8 or MicroPainter format›file.›NOTE that many MicroPainter files›will have to be printed in inverse›in order to get a good printout››At this point you may enter CTRL-X›and then press RETURN in which case›the programme exits to DOS.››You may aternatively enter the›filespec and press return (DO NOT›FORGET THE DRIVE AND EXTENDER).››If the programme cannot open the file›for a read, it will prompt for the›filespec again.››When a proper filespec has been›entered the programme will prompt for›the output font-filespec. DO NOT ADD›AN EXTENDER OR PERIOD TO THIS›FILESPEC.››You will then be prompted as to›whether or not you want the printout›with inverted dark/light sections.›Many MicroPainter files require this›To determine if yours does, load it›into, for example, ANTICPUBLISHER›(Dec. 1987) which will show the pic.›If you need to invert the light/dark›use Y [RETURN] as the answer to›the inverse prompt. Otherwise use›N [RETURN].›NOTE: The programme is NOT error›trapped for a bad output filespec››The programme will then load the›graphics picture and convert it to›thirty characters in a DD3 font.››As an example, the TEST.NL? font here›was converted as follows.››I had a micropainter picture of a›nude on drive 2 with name NUDE.MIC›and gave as the filespec of the›graphic D2:NUDE.MIC››I wanted the font on drive one, so I›gave as the font filespec D:TEST››The programme then converted the›picture and created the four files›which give the TEST font.››The text file TEST.TXT is a sample of›the printout... simply print this as›the text file using TEST.NLQ as the›font.››I suggest saving a copy of this›TEST.TXT file since it is difficult›to remember the 30 characters to›type. When you want to add a graphic,›simply load the TEST.TXT file to the›section of your document after having›changed to the graphic font.›› ----------››To print the final graphic you must›set vertical and horizontal spacing›to zero (\XV00\S0) and print›the first ten characters supported›by DD3 above the second ten above›the third ten, aligned.›The tab commands make alignment easy,›and as all characters are 32 cols›wide, a simple centering or block›right command will work as well.››The first 10 characters to print are:›› !"#$%&'()*›Below these type:› +,\-./01234›(I know there are 11 symbols here,›but I used \- instead of - for›a hard hyphen, just to keep the›line from possibly breaking at›a soft hyphen)›Below these type:› 56789:;<=>››It is probably best to keep a file›called GR.TXT on a disk which has:››\XV00\S0!"#$%&'()*›+,\-./01234›56789:;<=>››in it. Then to add a graphic at any›point, set the font name,›the adjustment (L/C/R) and load in›the GR.TXT file.›››The GR.TXT file included here is›nought but such a file.›››The programme works quite quickly›(more quickly than the basic/ml›programme PSTODD3B which converts PS›icons) and produces decent results.›› ----------››For ML programmers, the source code›GR8TODD3.SRC is included in AMAC›format, though the file does not›include the macro files used to do›GR 0 (graphics 0), I filespec (to›input a filespec), P 0,string (to›print a string) or POS col,row (to›position the cursor).››In fact, though the programme worked›the first time, I couldn't get AMAC›to assemble it (overflowed the LABEL›table and the INCLUDE buffer several›different ways) and had to put in›little patches and assemble it in›pieces - what a chore... I am›beginning to hate AMAC.››For ML programmers some notes:›The ROWH and ROWL, FTAB1 and FTAB2›sections use AMAC's capability to use›recursive macros to set up data›tables with most information›inserted. The ECHO...ENDM command is›a repeat the code command.››I needed a macro to do the equivalent›of:› LDA (%1,X),Y›That is get a starting address from a›table (X-offset) and load data from›an address beyond that pointed to by›the vector - this was used to get›say, the fifth byte in the tenth›row of a GR 8 screen, where the table›had the starting address of each row.›While there are many ways to do this,›I decided on self-modifying code as:› TXA› PHA› ASL A› TAX› LDA %1,X› STA ?%K+1› LDA %1+1,X› STA ?%K+2› PLA› TAX›?%K LDA $FFFF,Y› ENDM›(here ?%K is a unique global label in›AMAC)››I used this to load bytes from the›screen, having set up a set of›pointers to the first byte in each›line of the screen (ROW)...›Actually, as there are more than 128›rows in a GR 8 screen, I used two›tables, one for the high byte and one›for the low for each screen lines›starting address. The LD2XY macro›does the above action, but it takes›the low and high bytes from separate›lists.›Quite a useful macro.›Rather than use page zero for an›accessible address (for indirection),›self modifying code was also used to›store material in the font memory.››To handle the case of inverse print›the code modifies itself to change›a BEQ to BNE if one wants inverse›› ----------››Summary...›The programme works... converts GR 8›screens and is freeware.›› ----------›› SUPPORT THE 8 BIT ATARI:›› IF YOU DON'T›› NO ONE WILL›› Sincerely, › John McGowan › ›