; *** Graphics 9 Picture Printer ; *** for Prowriter printers. ; ; Files MUST be uncompressed (most are) ; resulting in 7680 bytes or 62 SD sectors long. ; ; written by Joe McFarland 8/31/86. ; address questions to CIS #74666,601 ; ; Action! language is (c) 1983 Action Computer Services ; MODULE BYTE x,y,dat,half,v,ty CARD screen=88 BYTE POINTER sloc CHAR ARRAY printfile(15) PROC GetScreen() PutE() PrintE("Graphic 9 Screen to print") PrintE(">Dn:FILENAME.EXT") Print(">") InputS(printfile) Close(1) Open(1,printfile,4,0) Graphics(9) FOR sloc=screen TO screen+7679 DO sloc^=GetD(1) OD Close(1) RETURN PROC Dump() ;These are the color masks, 4 per Gr.9 color. BYTE ARRAY template=[255 255 255 255 255 255 247 255 255 223 255 251 255 238 255 187 255 85 255 170 221 119 221 119 170 85 170 85 204 51 204 51 102 51 102 51 34 136 34 136 0 85 0 85 0 51 0 51 0 17 0 68 0 32 0 4 0 0 8 0 0 0 0 0] GetScreen() Close(2) Open(2,"P:",8) PrintDE(2," T16 Q >") FOR x=0 TO 79 DO PrintD(2," ") PrintD(2," S0768") FOR ty=0 TO 191 DO y=191-ty sloc=screen+40*y+x/2 half=x MOD 2 ;which half? v=sloc^ IF half THEN v=v&$0F ELSE v=v RSH 4 FI ;shift color if odd FOR dat=0 TO 3 DO PutD(2,template(v*4+dat)) OD OD ;done printing line PutDE(2) OD PrintDE(2," [ A N <") ;restore normal operation Close(2) Graphics(0) PutE() PrintF(" * Done printing %S%E",printfile) RETURN