============================== Resident ============================== ====================================================================== A resident startup code for Aztec 'C', written by Olaf 'Olsen' Barthel of MXM. Copyright, © 1990 by MXM. Shareware, all rights reserved. No guarantee of any kind is made that the program(s) described in this document are 100% reliable. You use this material on your own risk. ============================== Purpose =============================== ====================================================================== You usually need Arp to create reentrant programs with Aztec 'C'. You may also compile your program with Aztec 'C' 5.0 and use inline library calls. Isn't there a different solution? There is! I have created a resident startup code which copies the data segment into public ram thus keeping it from getting modified. The resident code can eat up a whole lot of memory. Don't worry, it will be freed as soon as the program exits. =============================== Usage ================================ ====================================================================== Assemble Resident.asm as usual and link it to your program (must be last file name before the linker libraries are included). Don't forget to add the pure bit to the program it creates. An example: CC Test.c AS Resident.asm LN -o Test Test.o Resident.o -Lc I have supplied a demonstration program which draws a vector cube and moves and turns it a few times (double buffered). 'DamagedCube' was written by Dieter Klimow who created it as a simple programming exercise. I have converted it to run on the Amiga (the original program runs on a 12 MHz PC-Laptop with VGA). Press any key to exit. =============================== Notes ================================ ====================================================================== There are some pitfalls you might want to know of before using 'Resident.o'. Here is a list: - You cannot use the code with programs which are compiled using the large code/large data memory model. - Programs to use 'Resident.o' must not use scatter loading, i.e. data/bss must reside in a single hunk. - Data and bss will reside in the same type of memory (chip/public/fast). =============================== Author =============================== ====================================================================== This program was written by Olaf Barthel of MXM. All files have been placed in the public domain. You may freely distribute this material, even a small copy fee is okay but everything which looks like commercial distribution is forbidden. Still you may use this material for software development without giving credit to the original author. Feel free to use 'Resident.o' in commercial programs. Send new program revisions, comments, bug reports, donations, unmarried sisters, non-poisoned candy, home-grown palm trees, horoscopes, promising capital investments, etc. to: Olaf Barthel, MXM Brabeckstrasse 35 D-3000 Hannover 71 Federal Republic of Germany ============ Revision history (most recent change first) ============= ====================================================================== V1.0 If works so far. Hope so. Knock on wood. * Do only its possibilities make it an Amiga? WHERE IS THE MAGIC ???