diff options
Diffstat (limited to 'docs/README.AMIWIN')
-rw-r--r-- | docs/README.AMIWIN | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/docs/README.AMIWIN b/docs/README.AMIWIN deleted file mode 100644 index 47cf696cc1e..00000000000 --- a/docs/README.AMIWIN +++ /dev/null @@ -1,181 +0,0 @@ -AMIGA AMIWIN PORT of MESA: THE OPENGL SOFTWARE EMULATION -======================================================== -Port by Victor Ng-Thow-Hing ([email protected]) -Original Author (Brian Paul ([email protected]) - -Dec.1 , 1995: Port of release Mesa 1.2.5 - - Modifications made to minimize changes to Mesa distribution. - -Nov.25, 1995: Port of release Mesa 1.2.4 - - -HISTORY -======= -As a 3D graphics progammer, I was increasingly frustrated to see OpenGL -appearing on so many platforms EXCEPT the Amiga. Up to now, the task -of porting OpenGL directly from native Amiga drawing routines seemed like -a daunting task. However, two important events made this port possible. - -First of all, Brian Paul wrote Mesa, the OpenGL software emulator that -can be found on many platforms - except the Amiga and Atari (who cares -about the latter!). This was pretty ironic considering that Mesa was -originally prototyped on an Amiga! The second great event was when -Holger Kruse developed AmiWin, the X11R6 server for the Amiga (definitely -register for this great piece of software) and released a development kit -so one could compile X programs with SAS/C. - -Since Mesa had X routines as its primitive drawing operations, this made -a marriage of Mesa and Amiwin feasible. I copied over the sources from -an ftp site, played with the code, wrote some Smakefiles, and voila, -I had OpenGL programs displaying on my Amiga. - -Although the speed is nothing to be impressed about, this port can be -potentially useful to those who want to quickly test their code in -wireframe or perhaps learn more about programming with the OpenGL API. - -I hope Amiga developers will continue to write excellent software for -their machine, especially more X clients for Amiwin. If you have any -solutions so some of my problems in the porting notes, please send me -some email! - -See you around, -Vic. - -HOW TO CREATE THE LIBRARIES AND SAMPLE CODE -=========================================== - -Just run the shell script mklib.amiwin in the mesa directory. This will -make all the libraries and copy them into the mesa/lib directory. If you -don't want to compile everything, just go to the desired directory and -type smake in that directory. - -Change any of the variables in the smakefiles as necessary. You will REQUIRE -the Amiwin development kit to compile these libraries since you need X11.LIB -and the shareable X libraries. Some examples require the AmiTCP4.0 -net.lib static link library and related header files for unix related -header files and functions like sleep(). - -HOW TO USE THE MESA LIBRARIES -============================= - -Study the Smakefiles in the demos, samples and book directories for the -proper SAS/C options and linkable libraries to use. Basically aux calls -require Mesaaux.LIB, gl calls require MesaGL.LIB, glu calls MesaGLU.LIB, -tk calls Mesatk.LIB. There is a preliminary port of MesaGLUT.LIB toolkit -available in the lib directory with the other Mesa libraries. However, -it seems to cause crashes on some of the sample code. Someone else may want -to attempt a more stable port. - -PORTING NOTES TO AMIWIN -======================= - -My strategy of porting was to leave as much of the code untouched as -possible. I surrounded any amiga specific changes with -#ifdef AMIWIN ... #endif or #ifndef AMIWIN ... #endif preprocessor -symbols. The code was ported on an Amiga 2000, with Fusion 40 accelerator -and a Picasso II graphics card. The SAS/C 6.56 compiler was used, with -the AmiWin 2.16 X development kit. - -All compilations were done for a 68040 CPU with 68882 math coprocessor for -maximum speed. Please edit the smakefile for other compilers. -I wrote smakefiles for the directories I ported. I omitted the Windows -and Widgets directories. The former is for MS Windows and the latter -requires Motif, which is not easily available for the Amiga. - -Here are the changes I did per directory: - -* mesa -Nov. 25, 1995 v 1.2.4 - - added a mklib.amiwin shell script that will make all the libraries and - sample code for Mesa - - created this readme file: readme.AMIGA - -* mesa/include -Dec. 1, 1995 v 1.2.5 - - added the following to GL/xmesa.h - #ifdef AMIWIN - #include <pragmas/xlib_pragmas.h> - extern struct Library *XLibBase; - #endif -NET CHANGE: xmesa.h - -* mesa/src -Nov. 25, 1995 v 1.2.4 - - added the necessary pragma calls for X functions to the following: - xmesa1.c, xmesa2.c, xmesa3.c, xfonts.c, glx.c - This prevents undefined symbols errors during the linking phase for - X library calls - - created smakefile -Dec. 1, 1995 v 1.2.5 - - removed AMIWIN includes from xmesa1.c, xmesa2.c, xmesa3.c, xfonts.c, - glx.c since they are now defined in include/GL/xmesa.h -NET CHANGE: smakefile - -* mesa/src-tk -Nov. 25, 1995 v 1.2.4 - - added the necessary pragma calls for X functions to the following: - private.h - - created smakefile -Dec. 1, 1995 v 1.2.5 - - removed AMIWIN includes from private.h since it is now defined in - include/GL/xmesa.h -NET CHANGE: smakefile - -* mesa/src-glu -Nov. 25, 1995 v 1.2.4 - - created smakefile -NET CHANGE: smakefile - -* mesa/src-aux -Nov. 25, 1995 v 1.2.4 - - added the necessary pragma calls for X functions to the following: - glaux.c - - created smakefile -NET CHANGE: glaux.c, smakefile - -* mesa/demos -Nov. 25, 1995 v 1.2.4 - - added the necessary pragma calls for X functions to the following: - xdemo.c, glxdemo.c, offset.c - - created smakefile - - put #ifndef AMIWIN ... #endif around sleep() calls in xdemo.c since - they are not part of AmigaDOS. -Dec. 1, 1995 v 1.2.5 - - removed AMIWIN defines from xdemo.c, glxdemo.c, offset.c since - already defined in include/GL/xmesa.h - - modified Smakefile to include header and includes from the AmiTCP4.0 - net.lib linkable library to provide unix-compatible sys/time.h and - the sleep() function - - removed AMIWIN defines in xdemo.c since sleep() now defined -NET CHANGE: smakefile - -* mesa/samples -Nov. 25, 1995 v 1.2.4 - - added the necessary pragma calls for X functions to the following: - oglinfo.c - - created smakefile - - put #ifndef AMIWIN ... #endif around sleep() in blendxor.c - - removed olympic from smakefile targets since <sys/time.h> not defined -Dec. 1, 1995 v 1.2.5 - - removed AMIWIN defines from oglinfo.c, since already defined in - include/GL/xmesa.h - - modified Smakefile to include header and includes from the AmiTCP4.0 - net.lib linkable library to provide unix-compatible sys/time.h and - the sleep() function - - removed AMIWIN defines in blendxor.c for sleep() - - added AMIWIN defines around _MACHTEN_ in olympic.c since xrandom() - functions are not defined in any libraries - - added olympic back into the Smakefile targets -NET CHANGE: smakefile, olympic.c - -* mesa/book -Nov. 25, 1995 v 1.2.4 -- created smakefile -- removed accpersp and dof from smakefile targets since the SAS/C compile seems to - confuse the near,far variables with near/far memory models. -NET CHANGE: smakefile - -* mesa/windows -Dec. 1, 1995 v 1.2.5 -- Removed directory to save space since this is only needed for Windows based - machines. |