August 2, 2025

Sun 3 bootrom souce - a first try at linking

I tried this once (I have no yet compiled all the files I will need) with a limited set of file. I of course had a myriad of undefined references. Most of them due to references from the table in romvec.s.

I got the idea today of commenting out the bulk of the table in romvec.s. I only strictly need the first two (initial stack and PC). I do this, try the link, and still get a lot of things, but not more than I can wrap my head around.

Many of the things I see can be fixed by dealing with the underscore issue I have discussed elsewhere. In brief, in the old days a call from C to "abort" would call the assembly routine "_abort". However the Gnu toolchain doesn't do this sort of thing, so I need to remove the leading underscore from names declared in assembly language files.

My ultimate aim is to get something that I can run and play with without compiling everything. There is nothing like being able to run code to maintain motivation. Just seeing a "hello world" from a small subset of files would be encouraging.

A lot can be learned by figuring out a minimal subset of files to get just a printf working. For example:


Feedback? Questions? Drop me a line!

Tom's Computer Info / tom@mmto.org