[comp.os.os9] Microware C Compiler for OS-9

fall@ektools.UUCP (Jeff Fall) (02/27/90)

Greetings again, I wanted to post this in my previous
lenghy query.

As many established OS-9 types already know, the C Compiler as shipped
from Radio S. comes as two floppys.  I installed the first floppy
on my hard drive and tried to compile a C program.  I got all of
the way down to the linker then I bombed as I have no /D1 (or plans
to buy one).  Is there a way to fool the compiler to believe the
hard disk /H0 is /D1?  Does this require a modification to the 
linker?  (I tried to build a hard disk driver called /D1 with
ddmaker and this configuration did not even let OS-9 boot up).

Thanks in advance,

  Jeff Fall

pete@wlbr.IMSD.CONTEL.COM (Pete Lyall) (02/28/90)

There are hard reference to D1 in C.prep and Cc1, I believe (been a
while). You can use any of the PD disk editors to patch them to /DD
(your default device should properly be named /dd .. if it's /H0,
just create a copy of the H0 module and change its name to DD as well,
and incorporate it in your OS9Boot file).

Barring that, there are at least 2 variations on the compiler driver
(cc1)... 'cc' and 'cc2'. Both are available in most public os9
archives (CIS, Delphi, and Listserv@pucc.princeton.edu). 

If you're getting into OS9 and C, you should also get the 'Kreider
libraries' - They are replacement libraries for clib.l and will
make your code faster and smaller, as well as adding almost twice as
many functions. Again, available at an os9 archive near you.

Pete

-- 
Pete Lyall                                                   Contel Corporation
Compuserve: 76703,4230              OS9_Net: (805) 375-1401 (24hr 300/1200/2400)
Internet: pete@wlbr.imsd.contel.com     UUCP: {hacgate,jplgodo,voder}!wlbr!pete 

bill.nobel@weyr.FIDONET.ORG (bill nobel) (03/02/90)

  Jef you will have to do a couple of patches to get the C compiler to work off of hard drive.  You can use the modpatch command to do these patches.  The patches are as follows:
 
  Load c.prep into memory and change the byte at offset $135c and $135d to the name of the drive you want (e.g. $135c=68 'h' $135d=30 '0'). then load cc1 and to the same thing except at the offsets of $0ee5 and $0ee6.  Be sure to verify and save the modules back to disk otherwise you will have to do this patch again.  If you have the developers pak and EZgen then you can replace c.asm and c.link with RMA and RLINK by renaming them with EZgen.
 
-Bill-

--  
bill nobel - via FidoNet node 1:140/22
UUCP: alberta!dvinci!weyr!bill.nobel
Internet: bill.nobel@weyr.FIDONET.ORG
Standard Disclaimers Apply...