Short: Easy graphic support for the PCQ pascal compiler Author: thor@einstein.math.tu-berlin.de (Thomas Richter) Uploader: thor@einstein.math.tu-berlin.de (Thomas Richter) Type: dev/misc Windowlib is a link module for use with the fine PD PCQ pascal compiler on the amiga. It provides useful functions to do graphics with this compiler, together with some intuition support (menus & gadgets). This is mostly maintained for the beginner in Pascal, to have nice graphics without much efford, and can be (and has been) used to teach pascal. Together with the library itself and one include file which defines all its functions, several examples have been included to demonstrate the functions. This package has been inspired by the graphics functions of the Atari XL basic and later on the GFABASIC (which used the syntax and the functions of the XL basic version). The gap that most pascal compilers do not come with graphic functions has been filled by this, giving higher attractivity to start with this language rather than with the (UGLY) basic. But don't expect too much, since this library goes not much behind the GFABASIC standards. In special, no "sprite" related graphics have been added yet. Most of these examples has been worked out to teach pascal to my neighbor, Ernst Besser, who is a teacher in arts. Since the usual pascal teach program (calculate the area of an rectangle) is quite boring, I started this project, resulting in a higher motivation for learning a computer language. After all, I think pascal should be the first language to start with, although I'm not a fan of (it's to "german" compared to C.... :-). ____________________________________________________________________________ The THOR-Software Licence This License applies to the computer programs known as "WindowLib" and its example programs, contained in this archive. The "Program", below, refers to such program. The programs and files in this distribution are freely distributable under the restrictions stated below, but are also Copyright (c) Thomas Richter. Distribution of the Program by a commercial organization without written permission from the author to any third party is prohibited if any payment is made in connection with such distribution, whether directly (as in payment for a copy of the Program) or indirectly (as in payment for some service related to the Program, or payment for some product or service that includes a copy of the Program "without charge"; these are only examples, and not an exhaustive enumeration of prohibited activities). However, the following methods of distribution involving payment shall not in and of themselves be a violation of this restriction: (i) Posting the Program on a public access information storage and retrieval service for which a fee is received for retrieving information (such as an on-line service), provided that the fee is not content-dependent (i.e., the fee would be the same for retrieving the same volume of information consisting of random data). (ii) Distributing the Program on a CD-ROM, provided that the files containing the Program are reproduced entirely and verbatim on such CD-ROM, and provided further that all information on such CD-ROM be redistributable for non-commercial purposes without charge. Everything in this distribution must be kept together, in original and unmodified form. Limitations. THE PROGRAM IS PROVIDED TO YOU "AS IS," WITHOUT WARRANTY. THERE IS NO WARRANTY FOR THE PROGRAM, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. IF YOU DO NOT ACCEPT THIS LICENCE, YOU MUST DELETE ALL FILES CONTAINED IN THIS ARCHIVE. _____________________________________________________________________________ Usage: Unpack this archive. Copy the contents of LIB to the library drawer of PCQ, usually assigned to LIB: Copy the contents of the "Examples" folder whereever you keep your sources. Copy the contents of the "Utils" drawer to the "Utils" subdirectory of the PCQ include folder. Copy this file whereever you want it. To compile pascal programs with windowlib and the PCQ compiler, add the line {$I "Include:Utils/windowlib.i"} to your pascal program directly under the PROGRAM statement. Add the lines InitGraphics; {your main program goes here} ExitGraphics; to your main program to initialize and shut down the windowlib, where your private code that does the graphics should go between. Compile your program as usual, but link your code with LIB:window.o like in the following line: BLink FROM "prog.o" TO "prog" LIB LIB:window.o LIB:PCQ.lib SC ND where "prog" is the name of your program. To make live even easier, the examples come with setting files for the graphical make utility "ClickMake", which is also available from THOR or from the aminet, but not contained in this archive. You may download it from the aminet sides or from my home page, given at the end of this text. Using ClickMake, you can compile these examples with one click of a button. Besides the compiler, these examples are setup to work with: 1) the most popular CED editor. 2) the PCQ compiler (-: 3) the PhxAss assembler. This one can be also downloaded from the AmiNet 4) the BLink PD linker. Again, this can be found on the net. Each of them has been tested, but if you have trouble, contact me: Thomas Richter EMail: thor@einstein.math.tu-berlin.de WWW: http://www.math.tu-berlin.de/~thor/thor/index.html To find out more about the functions of the windowlib, read the include file in Utils/windowlib.i or study the examples. Thomas Richter , February 1997 ============================= Archive contents ============================= Original Packed Ratio Date Time Name -------- ------- ----- --------- -------- ------------- 628 264 57.9% 09-Feb-97 22:06:08 +Examples.info 628 258 58.9% 09-Feb-97 22:06:06 +CircleMaze.info 32748 13839 57.7% 09-Feb-97 18:41:16 +CircleMaze 3666 1042 71.5% 16-Dec-95 19:24:26 +CircleMaze.cm 1807 930 48.5% 09-Feb-97 18:41:10 +CircleMaze.p 628 260 58.5% 09-Feb-97 22:06:06 +Circles.info 30824 13041 57.6% 09-Feb-97 18:02:40 +Circles 3684 1051 71.4% 09-Feb-97 22:09:02 +Circles.cm 915 516 43.6% 09-Feb-97 18:01:32 +Circles.p 628 257 59.0% 09-Feb-97 22:06:06 +Fractal.info 31660 13345 57.8% 09-Feb-97 18:10:40 +Fractal 3684 1051 71.4% 09-Feb-97 22:09:24 +Fractal.cm 2680 1016 62.0% 09-Feb-97 18:10:32 +Fractal.p 628 259 58.7% 09-Feb-97 22:06:06 +Fractal2.info 31680 13375 57.7% 09-Feb-97 18:15:58 +Fractal2 3684 1052 71.4% 09-Feb-97 22:09:36 +Fractal2.cm 2616 963 63.1% 09-Feb-97 18:15:52 +Fractal2.p 628 258 58.9% 09-Feb-97 22:06:06 +Jumper.info 30992 13153 57.5% 09-Feb-97 18:22:20 +Jumper 3682 1049 71.5% 09-Feb-97 22:09:48 +Jumper.cm 1168 670 42.6% 09-Feb-97 18:22:14 +Jumper.p 628 256 59.2% 09-Feb-97 22:06:06 +Jumper2.info 31008 13166 57.5% 09-Feb-97 18:27:12 +Jumper2 3684 1052 71.4% 09-Feb-97 22:10:00 +Jumper2.cm 1023 595 41.8% 09-Feb-97 18:27:06 +Jumper2.p 628 255 59.3% 09-Feb-97 22:06:06 +Jumper3.info 31012 13158 57.5% 09-Feb-97 18:30:06 +Jumper3 3684 1053 71.4% 09-Feb-97 22:10:10 +Jumper3.cm 1026 592 42.3% 09-Feb-97 18:30:00 +Jumper3.p 628 255 59.3% 09-Feb-97 22:06:08 +Jumper4.info 31464 13298 57.7% 09-Feb-97 18:33:26 +Jumper4 3684 1053 71.4% 09-Feb-97 22:10:18 +Jumper4.cm 1006 598 40.5% 09-Feb-97 18:33:20 +Jumper4.p 628 259 58.7% 09-Feb-97 22:06:08 +Liss.info 32452 13723 57.7% 09-Feb-97 18:53:04 +Liss 3680 1047 71.5% 09-Feb-97 22:10:30 +Liss.cm 3226 1519 52.9% 09-Feb-97 18:52:58 +Liss.p 628 256 59.2% 09-Feb-97 22:06:08 +WindowDemo.info 33144 14001 57.7% 09-Feb-97 19:36:30 +WindowDemo 3700 1050 71.6% 09-Feb-97 22:10:44 +WindowDemo.cm 11084 4406 60.2% 09-Feb-97 21:10:02 +WindowDemo.p 5977 2747 54.0% 09-Feb-97 22:04:50 +Gfx4PCQ.readme 537 286 46.7% 09-Feb-97 22:05:38 +Gfx4PCQ.readme.info 628 268 57.3% 09-Feb-97 22:05:48 +LIB.info 26412 11310 57.1% 09-Feb-97 21:29:36 +window.o 628 267 57.4% 09-Feb-97 22:05:56 +Utils.info 27633 9790 64.5% 09-Feb-97 21:27:26 +WindowLib.i -------- ------- ----- --------- -------- 449090 183909 59.0% 11-Feb-97 13:41:48 47 files