home *** CD-ROM | disk | FTP | other *** search
/ Fish 'n' More 2 / fishmore-publicdomainlibraryvol.ii1991xetec.iso / dirs / aztecarp_436.lzh / AztecArp / ArpReadMe! < prev    next >
Text File  |  1991-01-15  |  8KB  |  172 lines

  1. ================== Arp 'wrapper' for Manx Aztec 'C' 5.0 ==================
  2. ==========================================================================
  3. Arp  is  Copyright  (c) 1987, 88, 89 by ARP Authors.  All Rights Reserved.
  4. Wrapper for Manx Aztec 'C' 5.0 updated by Olaf 'Olsen' Barthel of MXM.
  5.  
  6. ================================ Purpose =================================
  7. ==========================================================================
  8. The  5.0a  update  to  the  Aztec  'C'  compiler  comes  with  the new Arp
  9. distribution  files.   That's  fine,  you  may  think,  but:   the  linker
  10. libraries  do not work.  Since Manx once more decided to change the format
  11. of  the  object  files all modules have to be recompiled.  And there's the
  12. second  'trap':   you  can't  recompile  the  libraries using the supplied
  13. files.   Furthermore  the  original Arp distribution disk includes special
  14. startup  code  which  allows  the creation of programs to be made resident
  15. ('pure').   Is  this  code  included with the 5.0 release?  I think you've
  16. guessed  it  -  it  isn't.   Some  files  wouldn't  work properly (missing
  17. INT32s), some wouldn't work at all (scdir.c).
  18.  
  19. ================================ Contents ================================
  20. ==========================================================================
  21. This  distribution  includes  37  main  files which are listed below.  The
  22. single library glue routines are to be found in the 'glue' subdirectory.
  23.  
  24.     ----------------------- 16 bit modules ---------------------------
  25.  
  26.     a16.lib         = Arp interface library (no startup code)
  27.     arp16.lib       = Arp interface library with startup code
  28.  
  29.     arpdetach16.o   = Arp compatible detach.??? replacement
  30.     gads16.o        = Arp replacement for _cli_parse()
  31.     rstart16.o      = Resident module startup code (Arp only)
  32.  
  33.     ----------------------- 32 bit modules ---------------------------
  34.  
  35.     a.lib           = Arp interface library (no startup code)
  36.     arp.lib         = Arp interface library with startup code
  37.  
  38.     arpdetach.o     = Arp compatible detach.??? replacement
  39.     gads.o          = Arp replacement for _cli_parse()
  40.     rstart.o        = Resident module startup code (Arp only)
  41.  
  42.     ----------------------- Header files -----------------------------
  43.  
  44.     arpbase.h       = Arp base main include file
  45.     arp.h           = Arp library function pragma calls (Manx/Lattice)
  46.  
  47.     ----------------------- Library modules --------------------------
  48.  
  49.     clihelp.c       = CLI Help string definition
  50.     cliparse.c      = Standard CLI parsing module (with Arp flavour)
  51.     clitemp.c       = CLI argument template
  52.     exit.c          = Exit subroutine
  53.     gads.c          = Arp compatible replacement for cliparse.c
  54.  
  55.     calloc.c        = Arp replacement for calloc
  56.     fmalloc.c       = Arp replacement for fmalloc
  57.     free.c          = Arp replacement for free
  58.     lcalloc.c       = Arp replacement for lcalloc
  59.     lmalloc.c       = Arp replacement for lmalloc
  60.     malloc.c        = Arp replacement for malloc
  61.  
  62.     pragma.c        = File to be precompiled
  63.     scdir.c         = Arp replacement for scdir()
  64.     vars.c          = Arp global program variables
  65.     wbparse.c       = Arp workbench parsing routine
  66.  
  67.     _exit.c         = Arp exit routine
  68.     _main.c         = Arp main routine (calls your custom main())
  69.  
  70.     aztecglue.asm   = Arp library interface stubs (obsolete)
  71.     crt0.asm        = Arp Aztec 'C' startup code
  72.     dospkt.asm      = Arp replacement for dos_packet()
  73.     lvo.asm         = Arp library vector offsets
  74.     rstart.asm      = Source code for resident module startup code
  75.     tracker.asm     = Arp item tracker source code
  76.  
  77.     ----------------------- Makefiles --------------------------------
  78.  
  79.     makefile        = File needed to rebuild the 32 bit libraries
  80.     makefile16      = File needed to rebuild the 16 bit libraries
  81.  
  82.     ----------------------- Library glue files -----------------------
  83.  
  84.     glue        = Subdirectory containing 'C' glue code
  85.  
  86. ================================= Usage ==================================
  87. ==========================================================================
  88. The  Arp libraries are linked just like the standard libraries.  Note that
  89. the  default  are 32 bit integers.  If you want to build resident programs
  90. all  modules  have  to  be  compiled  with the -m0b switch (to disable the
  91. creation of the .begin statement).
  92.  
  93. Examples:    CC -so Test.c
  94.         LN Test.o -Larp -Lc
  95.  
  96.         CC -so -m0b Test.c
  97.         LN -o Test rstart.o Test.o -Larp -lc
  98.  
  99. Note  that  it  is  not recommended to use the arpdetach.o module together
  100. with  the rstart.o module unless you check the Arp resident list if you're
  101. already on it (-> a resident program shouldn't do the segment split).
  102.    Starting  with  the  v1.5  release  of  this package, the arpdetach.???
  103. module  supports  a  new keyword:  STICKY -> do not perform segment split.
  104. Add  #define  PARENT  in  _main.c  to  retain the address of the Shell the
  105. program was started from.
  106.  
  107. ================================= Author =================================
  108. ==========================================================================
  109. The  files  in  this  distribution  were  put together and updated by Olaf
  110. 'Olsen' Barthel of MXM.  The author can be reached via standard mail at:
  111.  
  112.                                Olaf Barthel
  113.                             Brabeckstrasse 35
  114.                             D-3000 Hannover 71
  115.  
  116.                        Federal Republic of Germany
  117.  
  118.                          Or via electronic mail:
  119.  
  120.                       Z-Net:  O.BARTHEL@A-LINK-H.ZER
  121.                       Fido:   Olaf Barthel@2:247/200
  122.  
  123.                               (best chances to contact me)
  124.  
  125.                       SubNet: olsen@veeble.uucp
  126.                       UUCP:   olsen%veeble@horga.as.sub.org
  127.  
  128.                               (good luck!)
  129.  
  130. Torsten  Jürgeleit  contributed  ideas and code fragments for v1.5 of this
  131. package.   He  also  discovered  substantial  errors  in  tracker.asm  and
  132. dospkt.asm.
  133.  
  134. ============== Revision history (most recent change first) ===============
  135. ==========================================================================
  136. V1.9    Updated  both arpbase.h and arp.h to get along with dos/datetime.h,
  137.     dos/dosasl.h  and  libraries/aslbase.h.   Added three new routines:
  138.     ArpVFPrintf,  ArpVPrintf  and  ArpVSprintf  (with  little  effort).
  139.     Removed  the  useless  resident??.o  files:   Arp programs are only
  140.     reentrant  if  used  with  Arp Shell.  I recommend using my vanilla
  141.     resident.asm code instead.
  142.  
  143. V1.8    The  tracking  routines  (GetTracker & Co.) would not work with 16
  144.     bit  integers  (thanks  go to Torsten Jürgeleit who `smelled' it).
  145.     This  problem  has  been  fixed.   The package has been recompiled
  146.     using the new Aztec 5.0d compiler.
  147.  
  148. V1.7    No  spectacular  work  done,  made  the  'ord'  utility decide the
  149.     sequence  of  modules  to  be  pulled into a library file.  Former
  150.     versions could cause linker errors which would require you to call
  151.     a   single  library  twice  on  the  linker  command  line.   Some
  152.     optimizations were done here and there.
  153.  
  154. V1.6    The darn library glue files always used the wrong offsets!
  155.  
  156. V1.5    Torsten  Jürgeleit  supplied  bug  fixes and new routines, updated
  157.     _main.c   (arpdetach??.o),   fmalloc  and  added  16  bit  library
  158.     creation.   Olsen added resident??.o and split fmalloc into single
  159.     files.
  160.  
  161. V1.4    Fixed missing macros in scdir.c (ARRGH!).
  162.  
  163. V1.3    Split aztecglue.asm into single files (long file still included).
  164.  
  165. V1.2    Introduced  new  variable  '__sloppy__'  set  TRUE  if DOSBase was
  166.     initialized by startup code.
  167.  
  168. V1.1    Changes  to  vars.c,  _main.c  and  rstart.asm to support resident
  169.     programs which don't use Arp.
  170.  
  171. V1.0    Initial update.
  172.