%OP%BON %OP%PL70 %OP%BM6 %OP%HE//PD PAGER// %OP%FO//p. @p// %OP%DEPD Pager by M.Foweraker (4423) %CO:A,12,72%Want to print the odd pages between 45 and 56 from a document consisting of 12 files linked by a list file? Then this program is for you. If you want to do something less ambitious, it does that to. FIRST THINGS FIRST. You will have been supplied with two files Z206A and Z206B. Z206A is PipeDream text file which you are reading. Z206B is a BASIC file which should load into BASIC without any problems. Size 2570 bytes. To use, start a new version of BASIC and type CHAIN "LIBRARY/Z206B" and press . Alternatively use Z164 (NEXT PLEASE), X002 (Function keys) etc. if that is your prefered method of working. Lines 350 and 980 will need STOP changed to CHAIN"LIBRARY/Z164" for instance. TO BUSINESS When the program runs you have to answer some obvious questions and then wait for the print out! The program starts a new PipeDream and loads the file. For this reason the version you want printed must be saved before hand, also it means that the program is unsuitable for plain text files (but are these ever big?). Why load a fresh copy? Just in case you specify inappropriate page numbers, which could lead to the file being corrupted. By loading a fresh copy and then |KILLing it, this is avoided. The "dialogue" goes like this:- (with deleberate mistakes) Name of file to Print include the .L if a list file? MYBOOK..L (A) MYBOOK..L is not a valid file name PRESS A KEY TO CONTINUE Name of file to Print include the .L if a list file? MYBOOK.L (B) FILE MYBOOK.L NOT FOUND Name of file to Print include the .L if a list file? ARTICLES/MYBOOK.L (C) First page to be printed ? 15 (D) Last page to be printed (must be at least 15)? 28 (E) Which pages do you want? All, Odd or Even A O E O (F) Paging file will be compliled for ARTICLES/MYBOOK.L } To print odd pages between 15 and 28 } (G) Do you want to Compile and Print (y/n) ?Y } Paging File is 0.57k. PRESS A KEY TO CONTINUE (H) Do you want to Stop OR Select new File, Page Numbers or Page Type? (S/F/N/T) S (I) %P0% (A) The filename is mistyped (two .. 's) after the error message you press a key and the filename is automatically avaliable for editing. (There is a problem if any of the "significant" keys # | and ~ are in the erroneous name, they will be taken as 'square', 'diamond' and 'cursor' etc.) It does not have to be a list file. (B) The spare dot is deleted, but the file is not found as the directory name was ommited (I am sure that you will not make so many mistakes) (C) The directory name is added and the program proceedes (D) First page (this is counted from the start as I cannot take account of the setting on the Options page, so 1 is always the first page) (E) Last page (counted as above) (F) Choose All pages (i.e. 15 to 28) Odd pages (i.e. 15 to 27) or Even (i.e. 16 to 28) (G) Your choices are confimed (note page numbers are those input) (H) The file :RAM.0/p.cli is created and you are told how big it is and asked if you want to continue. (If it is more than about 1k check your page numbers! p.cli is deleted later) The CLI is executed and you will see various menus pop about and then every thing will apparently freeze (especially if you are atarting some pages in) You may notice ..Page X flash every ten seconds or so. This shows all is well. The Z88 takes about 12 seconds to print a page, even if it not sent to a printer, so in the example there would be about a 3 minute wait before the printer started to print. If you want to stop printing use 'diamond' 'ESC' and then manually |KILL the PipeDream and return to PD Pager. (I) When all is done the PipeDream is |KILLed and you are returned to PD Pager and the CLI's are deleted and you are given the choice to stop or alter various settings (if you wanted Odd then you will probably want Even with every thing else the same). CREDITS Firstly to P.Hodson for "throwing down the gauntlet". Secondly to %H4%Z88 EPROM%H4% contributers for inspiration and information. Thirdly to myself(!) for writing file and error handing routines as general purpose files, which speeded up the development of this program. These are avaliable as X022 from the LIBRRARY THE FUTURE There is a missing feature, it may, or may not be important. For facing pages (Even printed on the back of Odd) the left margin should be more on the Odd pages. This can be achived in three ways (but all with exceptions). The easiest, move the paper tray. This is not possible on some printers. The second easiest, and could be put in the program quite easily. This is not a valid solution for list files. The hardest, but only slightly harder to put in the program. To have the program load appropriate Printer Driver Files (PDF's) which would have different page offsets. The problems are two fold: 1) you have to supply extra file names; 2) you have to have the PDF's (if your printer can do it). The most convinient way to implement this method would probably be to have a 'special' filename (such as ending with .PPD "PagerPrinterDriver") which would be reconised by the program and would contain the four filenames (Document, normal PDF, Odd PDF, Even PDF). This would be most efficient for large documents that you are "progressively" printing as it is being written. All three methods can be manually implemented, but before I put the second and/of third method in a program I would like to know if it is needed. Answers please? FINALLY This program is partly related to Z204E PD Linker which adds linking of files to PipeDream and Z204D Cut and Paste which does what it says, but between PipeDream programs. Any problems, bug reports, and answers to the FUTURE, by post to M.Foweraker, 21 Heol-y-Ddol, CAERPHILLY, Mid Glamorgan. CF8 3JF. I cannot promise how quickly I will respond to queries, but all updates will be via the LIBRARY unless it is part of program development. (C) M.Foweraker 1993 %CO:B,12,60%%CO:C,12,48%%CO:D,12,36%%CO:E,12,24%%CO:F,12,12%