Users of HWGPOST beta 1/2, please note: This text has changed in some places. Please read it again. What is this? ============= What you get here is the third version of HWGPOST that is publically available. It is _extremely_ raw, very incomplete, and probably buggy as hell. My intention is to abuse you as beta tester. ;^) HWGPOST is project that I started because I had some problems with post.library 1.7 (and 1.86 where post.library stayed the same) not handling some PostScript code correctly. So I built on the post 1.7 source. HWGPOST is IMHO a major step towards PostScript Level 2 already and as time and motivation permits it will hopefully become a R&W book compliant PostScript Level 2 interpreter library with maybe some Display PostScript extensions. Currently this archive is probably mostly useful to users of post.library up to 1.7. Major new features for HWGPOST beta 3 ===================================== - image operators fixed. - automatic resource lookup. Requirements & Compatibility ============================ OS: >=V37 (= KS2.04) Memory: As much as possible. HWGPOST tends to need noticeable more memory than post.library 1.7 for complex PostScript files. You should have at least 2MB to have fun with it. HD: Suggested HWGPOST should be compatible to all applications using post.library 1.7 with the exception of the "callextfunc" and some other special non standard operators, e.g. I have found no problems with PostView. Legal stuff/Distribution/bla ============================ I need to explain something first. I built on the post 1.7 sources by Adrian Aylward. He did an amazing job with post up to and including 1.7. I do not claim to having put it all together myself from the the very first byte. But I have thrown out or reworked almost every single line of it and there is not much left that is truly unchanged. Adrian Aylward set up many useful concepts. I reworked most of them for going towards PostScript Level 2. While it may not look so from the outside, HWGPOST is a major step away from its origins, and so I claim the right to have something new here. Note that I did not take over any code from other sources than post 1.7 except for some fixes to post 1.7 that people sent me (Thanks especially to Tom Rokicki for his fixes and other unrelated things). No GNU code, no IBM code, nor anything else. To be honest I tried to look at some ghostscript code once for a particular feature, but I found it so ugly that I threw it out faster than you can say "out" (I never even found the code for the feature I was looking for). This means, that all that you read in the history file is only my work. Because of all the above, there will be different rules on HWGPOST that start out right _now_ even with this beta version: - Unlike with post 1.7, I am restricting commercial use somewhat: For use in commercial products or claims of compatibilty to HWGPOST to enhance the value of a commercial product, you need to contact me first to work something out. (Except for Tom Rokicki. He may use HWGPOST whenever he finds it acceptable for AmigaTeX) - If you are just a user of HWGPOST, consider it as Giftware. I like money, too, but it doesn't have to be money. Anything nice will do. Books, Networking boards, Ax000s, HDs, SW, non technical things, whatever. If you intend to use post and forget about me intentionally, don't expect any support or bug fixes. - If you want to use HWGPOST commercially (e.g. to make money by using it in your office), I feel that you should consider this very fact when thinking about a gift. If you think HWGPOST to be good enough to support you making a living, you should value it as such. - Starting with HWGPOST beta 2, any user of HWGPOST is _required_ to register the use of HWGPOST with me via email or smail. All (important) rights reserved, so to speak. This is currently a private undertaking for fun, but I have not yet lost hope that there is maybe some reward in it for me, too. :-) If you don't like the above, I don't want you to use HWGPOST. In fact I dare to declare use of HWGPOST then outright illegal. You should live with post 1.7 or something else then. Why this beta? ============== A lot of stuff is in place within HWGPOST already even though it is probably still far from completion. Actually it is so much that I hope to find bugs with your help now. I do not have test cases and PostScript files anymore to test all that PostScript Level 2. You will read some "untested" comments in the history file. I have checked for basic functionality with all my changes, but nobody knows where the bugs hide yet. So I am asking you for bug reports to make HWGPOST get better. I am interested in: - Enforcer hits, mungwall problems, reproducable crashes - deviation of behaviour compared to Adobe Level 2 products - Short and precise PostScript example files that break with HWGPOST and I need your complete computer and OS configuration with any bug report including any non C= WB things that you run like MagicMenu/ReqTools/CpuBlit. I am also interested in a short note if you have files using specific Level 2 features available with HWGPOST that _don't_ break. Thank you for your help! Oh well, if you are one of those using pirated [KS/WB] SW, don't bother asking for help. I won't help you and I don't want you to use HWGPOST either in this case. What should a bug report look like? =================================== I prefer bug reports created with the C= 'report' tool. Any bug report _must_ contain step by step instructions to reproduce the bug on a standard WB setup. Telling me "You need to install this pack of special OS hacks to make the bug appear" usually leads to no result. If it is a bug related to a PostScript program, I'd need a short example program to reproduce it. If the bug is dependant on the exact layout of the program (e.g. with eexec problems), you should think about using lha and uuencode to preserve any spaces, tabs, newlines, or other special characters in the file that might otherwise be lost in email. _AN_ABSOLUTE_MUST_ is the output of C:VERSION FULL (or a version comment in the file or printed in a window if C:VERSION does not yield useful results) _and_ C:LIST for any program involved. This includes but is not limited to: - The OS (Use ShowConfig) - The frontend (post, postband, postview, etc) - The library post.library - The support files init.ps, HWGPOSTResources - For printing, the printer driver If you don't give me this information with each bug report, I might decline to look at it. What is included? ================= - README.FIRST (This file) - post.library (Using C= IEEE libs for all Amigas) - post.library.20 (Compiled for >=68020 using inline coprocessor math) - History (Informal overview on the changes since post 1.7) - init.ps (A new init.ps. You _will_ need to use it) - HWGPOSTResources (Example declaration of available external resources, e.g. fonts. Referenced by init.ps) - PATH_FONT (Example file to demonstrate automatic font lookup by the resource mechanism. This should be copied into a directory "ENV:HWGPOST".) - postlib.h (The include file with some infos on how to use the 24 bit color features of HWGPOST) - post (A hacked up post 1.7 frontend to try out HWGPOST. Nothing fancy.) Don't ask me for my sources. Currently I have no plans whatsoever to release them in full or part to anyone. After reading through the History you might understand why. Special note on the 'post' frontend =================================== The included 'post' frontend is a major hackup of the original (ugly) source to suit my testing needs. It may or may not do what you expect and it might or might not be compatible to the original 'post'. Anything can happen. If you don't get the output you expect, please send me a detailed bug report and fall back on PostView or the old 'post' frontend for now. To get more information on the options try 'post ?' and type another '?' at the command line template. For gray scale displays, play with the MAXDEPTH option. On an A2024, 'MAXDEPTH=2' and 'DISPLAYID 0x41000' give rather nice results compared to the standard B&W. Installation ============ 1. Save your existing post.library, init.ps, and post. HWGPOST might break your setup and I don't want you to be out in the cold. 2. I am sure you have the POST: and PSFONTS: assigns that are needed for post 1.7. If not. Create them, and put all your type 1 fonts into PSFONTS: 3. Put init.ps, HWGPOSTResources, and (if you want to) post into POST: 3.1 Edit HWGPOSTResources for _your_ font setup in PSFONTS: You'll probably need to throw out and add some lines. 3.2 Put PATH_FONT into "ENV:HWGPOST". Edit it to suit your needs. For a permanent setup, copy it into ENVARC:HWGPOST, too! 4. Copy your choice of post.library[.020] into LIBS: 5. Shut down any running applications using post.library and do an "avail flush". 6. Try HWGPOST and send me detailed bug reports with reproducable examples! My TODO list ============ Well, lots of stuff as time permits: - Composite Fonts (Anybody got a clean one for me as test case?) - Finish up Binary Object Sequences - User path operators - Forms - missing filters - missing image functionality - device parameters - insideness operators - missing color spaces - rest of the Level 2 graphics stuff - VM garbage collection - whatever else is needed for a languagelevel of 2 My Address ========== * Heinz Wrobel * Karlstr. 16 * 82131 Gauting * Germany * FAX +49 89 850 51 25 (I don't like phone calls) * Have fun! Heinz Wrobel