10/13/87 Welcome to PowerWindows 2.0! First, if you want to convert any PW1.x files to the PW2 format, you can run "Convert". This will bring up a file-requester that repeatedly asks you to specify a file to load, and then lets you save the converted file. To stop Converting, just press CANCEL on the file-requester. You can easily Convert several files in a few seconds. Overwrite the original files if you like, but I would suggest retaining a backup in case something goes wrong with the Conversion, like a disk-full error. The Converted file will be larger that the original file. The manual you have gotten is sort of a generic usage guide to the interactive aspects of PowerWindows 2.0. It doesn't cover the nitty-gritty of interfacing with a particular language. That's because we plan to support A LOT of languages besides just the ones on this disk. In the planning stages are code-generators for True Basic, AC/FORTRAN, LISP, Pascal, MultiForth and more. Below are some notes about the hoops you must jump through for the various languages. ASSEMBLY: Basically, this is as straightforward as you can get. The data is generated top to bottom with forward references. The event handler is a simple look up table with very clear access procedures outlined in the "example.asm" file. The only gotcha that I know about is with the "'" character in strings, like window names and IntuiText. You must double these apostrophes to make them assemble. See "example3.pw" for an example of that. LATTICE & MANX "C": These data structures are all generated back-to-front, as is required by "C". Several #defines are generated for the start of the various sections, like "MenuList1", "HANDLEEVENT", "BorderList2", etc. These make the #ifdef functions in the example.c files possible. For "C", watch out for double-quotes in your text strings. TDI MODULA-2: MODULA-2 support has been implemented in a standalone program called PW2TDI. It accepts the PW2 intermediate file format as input. As any MODULA-2 programmer knows, this language doesn't really like data like PowerWindows2 generates. Therefore, I wrote several PROCEDURES to support the initialization of data as needed. So, compile PW2.def and PW2.mod and stick them in your M2 folder. Next, look at the example.mod file to see how to open windows and attach menus, in case you don't already know how to do so. What PowerWindows generates is a pair of library files which you can compile as is or edit into you main program module. To run the Modula-2 converter (PW2TDI), just run it. It will bring up a file- requester asking you for a PW2 file to read in. Pick the file and after PW2 loads it, it will display it. If there is a custom screen in your file, you will need to put it in background to get back to the WorkBench screen. By now, PW2TDI will have brought up a window letting you specify which filenames to generate and what "header" file to include. The "header" file is an IMPORT list containing every IMPORT that a PW2 generated M2 source file might require to compile. The header file for you to start with is called "PW2TDI.header". PW2TDI will generate a ".def" and a ".mod" file. Compile both of these and then integrate them with your software, IMPORTing in whatever symbols from the ".def" file that you need. We supported Images as best we could. The data gets allocated to CHIP memory and then the ARRAY is filled out with your image data. Big Images will result in BIG files. If anyone has a better suggestion on how to support Images, let us know. To quit PW2TDI, just press the CANCEL button on the file-requester. Support for Benchmark MODULA-2 is planned, but is still under wraps. CODE STATUS: All example programs on this disk and all code generated by PowerWindows 2.0 are NOT COPYRIGHTED by us. They are freely distributable, unless YOU decide otherwise. Martin Murray INOVATRONICS, Inc. (214) 241-9515 CIS: 73270, 3600