[comp.sys.amiga] ROMable code

akeef@asd.wpafb.af.mil (Earle Ake) (05/10/89)

     I know of someone that wants to use an AMIGA for developement of
68000 'C' and assembler code for a standalone embedded controller
application.  The question is: What software is available to produce
ROM-able code on the AMIGA?  Do I just need a special linker or what?
I have access to a VAX system so a cross compiler may be of help
as well.  Anyone got any answers?

                                          Earle Ake
                                          akeef@asd.wpafb.af.mil

jvkelley@watcgl.waterloo.edu (Jeff Kelley) (05/11/89)

In article <15043@louie.udel.EDU> akeef@asd.wpafb.af.mil (Earle Ake) writes:
>
>     I know of someone that wants to use an AMIGA for developement of
>68000 'C' and assembler code for a standalone embedded controller
>application.  The question is: What software is available to produce
>ROM-able code on the AMIGA?  Do I just need a special linker or what?
>I have access to a VAX system so a cross compiler may be of help
>as well.  Anyone got any answers?

You want to get a copy of the program "unhunk" on one of the early
Fish disks (in the 20's or 30's, I think).  Unhunk takes an AmigaDOS
load file (produced by both the Lattice and Manx linkers) and
produces a Unix-like executable with the relative addresses present
in the AmigaDOS load file mapped into absolute addresses.  You can
specify the absolute addresses that you want each of the code, data,
and bss sections to be mapped to.

For example, I build new Kickstart images for my 1000 with the command:
	unhunk -t 0xfc0000 -b 0x200 harmony.lnk harmony.abs

The "-t 0xfc0000" specifies that I want the text section to begin at
address 0xfc0000, and the -b 0x200 specifies that the bss section begins
at address 0x200.  (By default, the data follows the text.)  The file
"harmony.lnk" is the AmigaDOS load file produced after compiling and
linking all the components of the operating system I'm working with.
Unhunk places its output in "harmony.abs", which is ROM-able code which 
I then write onto a Kickstart disk, but it could be downloaded into
a target or burned into ROM or whatever, with the appropriate application
and hardware facilities.

Note that I have directed followups to .tech.

--
Jeff Kelley    National Research Council of Canada, Ottawa
   uunet!watmath!watcgl!jvkelley  	tel:   (613) 990-5924