Xref: utzoo comp.sys.amiga:21609 comp.sys.amiga.tech:1441 Path: utzoo!attcan!uunet!husc6!bloom-beacon!mit-eddie!ll-xn!ames!oliveb!sun!pepper!cmcmanis From: cmcmanis%pepper@Sun.COM (Chuck McManis) Newsgroups: comp.sys.amiga,comp.sys.amiga.tech Subject: Re: Astartup.obj and Lstartup.obj Message-ID: <63284@sun.uucp> Date: 8 Aug 88 18:24:08 GMT References: <6562@bloom-beacon.MIT.EDU> Sender: news@sun.uucp Reply-To: cmcmanis@sun.UUCP (Chuck McManis) Organization: Sun Microsystems, Mountain View Lines: 32 In article <6562@bloom-beacon.MIT.EDU> (Rich Carreiro) writes: > How do Astartup.obj and Lstartup.obj map into Lattice 4.0? I assume > that Lstartup.obj is now Lattice's c.o. What of Lstartup.obj? Some Amiga history here. Back in the beginning, when Autoconfig memory was just a glimmer in Dale's eye, there was the "Developers Kit." This included, among other things, a copy of the MetaCompCo assembler and Lattice C version 3.02 labeled as "Amiga C V1.0". Now in those early times, it was very difficult to make a program that could run both from the CLI and the Workbench, so there were two startup modules supplied. AStartup.o would collect the WorkBench startup message, and LStartup.o would parse CLI arguments into that ever popular argv array. Time passed and Commodore stopped supporting Amiga C, more by attrition than by design I suspect, and Lattice began to market and improve their product. Now at the 4.0 version number. By now, Lattice had figured out that you didn't *really* need two startup modules since one could do the work of both AStartup and LStartup, and since their other compilers all used c.o they combined the capabilities of both startups into their one c.o startup module. The only problem with this was that to do this they were forced to open a window on the workbench when they started up so that printf's and other stdio operations wouldn't guru the code. They do give you an out however by letting you recompile _main.c with TINY defined. I guess they figure that if you know how to do that then you won't leave a printf() to stdout in your code. Carolyn Scheppner has done some startups that are available on BIX that allow for reentrant code. --Chuck McManis uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com These opinions are my own and no one elses, but you knew that didn't you.