[CDG5] Newish CubeE build system
elliotnunn at fastmail.com
Thu Sep 20 00:46:08 AWST 2018
Just stuffed hfsutils into a CPython module. Hard slog!
I’m hoping to dive further into the NewWorld ROM and get more of it building from source, particularly the parts that seem to wang the interrupt controller. The C compiler used in the build definitely supports inline assembly, so this could be a solution for partly reversing functions that we can’t round-trip. Other than that I’d like to revisit the BlueBox ROM, and see if I can get a near-vanilla CubeE to build (the build tree as is will not build). Slightly different binary versions are very helpful in making sure that you’ve got your reversal right, so a very late NewWorld image might be a good idea. NewWorld was crackable in the first place largely because so much code had been moved out of the ROM.
A comprehensive change history is just too much work unless we can automate part of it (and wouldn’t that be cool).
Your overview of the build process is pretty close. I’ll describe it in detail a bit later.
> On 19 Sep 2018, at 10:39 pm, Daniel B-J <danielbj314 at verizon.net> wrote:
> Hi Elliot,
> Sounds pretty good, though I still have a few questions about it.
> Which ROM versions do you want to build? Definitely NewWorld, maybe OldWorld, possibly all 68k Universal ROMs.
> Are you going to make a comprehensive change history? What you are doing with the NanoKernel is pretty cool. You might be able to do it here.
> When you get the time, could you explain the mechanism used to build these big complicated ROMs? I think it goes Build Script -> Something.make (depends on build target) -> all source files -> vectorize -> romlink. Maybe.
> cdg5 mailing list
> cdg5 at ucc.asn.au
More information about the cdg5