So, the bootrom is now taking shape, and I can now successfully run it on real hardware, which in this case, is a tiny small Amiga 600 (and YES, it has a 68040 CPU

)
It will be probably a week or two until the parts for the card arrive, so in the meantime, I am actually thinking about how I can actually "jump start" the ROM on my LC475 by loading and executing it from RAM (which is what I am also actually doing on the Amiga).
Can anyone give me a hint on, which type of low-level Debuggers exist on the MAC which allow me to:
* Load a binary at an absolute memory address
* Set the CPU into Supervisor state and directly jump to the ROM location
* Possibly disable MMU-related protection mechanisms?
My first attempt would be to have a look at Codewarrior. I might have to use it later when I write the card software for MacOS, which allows to flash and configure the card.
So, the BootRom is called "DeMon", and it is the first piece of code which is executed on power-up and after the CPU was getting an external reset.
DeMon is especially intended to help during debugging and development. When you power-on the card with an 68060 installed, it is the very first piece of software which actually runs on the MAC, and allows to create an environment which will successfully boot an operating system.
In the 2MB flash, my intention is that you can store multiple "firmware files", which will get loaded and executed by "DeMon" if a valid firmware table structure is found in the ROM. The very least you can do with DeMon without a, yet, not running operating system on the 68060 is:
* Load, flash and execute a firmware program
* Install an exception handler, which will redirect any exceptions to jump back into DeMon
* Modify, load and upload memory via serial cable to a different host (modern MAC or PC)
* Set breakpoints to trace the execution flow of the software
* Disassemble memory locations and examine the code
As I said earlier, when nothing is pre-set before running the card, DeMon is attempting to automatically detect the type of host system, and will install a basic I/O and exception handler to have a working debugging environment.
Anything else, be it MacOS, AmigaOS, U-boot, Linux, can be booted in a subsequent step when a firmware file has been flashed and installed on the card.
A firmware file can be a loader, a full operating system, or an "intermediate" rom, which applies patches to the ROM operating system of the machine.
I personally really love the idea to enable a "multi boot" set-up, where, within a single key stroke, you can decide which operating system loads.
Again, thanks a lot for your encouraging and helpful comments, I am very sure that we can get this baby on the road running, and that a Macintosh can, actually be, also among the fastest 68k machines. ;-)