I had thought about trying this myself but gave up after realising I'd not have access to Trackdisk.device from Romwack - Didn't know about Coolcapture/Warmcapture. I guess I need to read up some more!
For the BERR case, without the initial reboot, Amiga will just crash again when calls are made from the exception handler. Recovering control after a reboot is a nice and clean way to get the Amiga into a known state. It is definitely also doable without rebooting, but somewhat more involved.
Else, when entering the debugger via e.g. the extra debug menu present in workbench when loaded via "loadwb -debug", the context RomWack works with is a user context, so I just take over the user task. As long as I don't corrupt the stack (or anything else), I can even return cleanly.
Hey, you're not doing so bad yourself with your Amiga OSHW either!
There's much work to be done with the Amiga in the OSHW front, thus this is very welcome.
I intend to read your mem68k-like board's Verilog at some point in the near future. I might want to build one of these, but even if I don't, I wish to learn how it works.
;————————————————————————
; LOAD A BLOCK OF TEST CODE THROUGH THE KEYBOARD PORT :
; FOR MANUFACTURING TEST. :
; THIS ROUTINE WILL LOAD A TEST (MAX LENGTH=FAFFH) THROUGH :
; THE KEYBOARD PORT. CODE WILL BE LOADED AT LOCATION :
; 0000:0500. AFTER LOADING, CONTROL WILL BE TRANSFERRED :
; TO LOCATION 0000:0500. STACK WILL BE LOCATED JUST BELOW :
; THE TEST CODE. THIS ROUTINE ASSUMES THAT THE FIRST 2 :
; BYTES TRANSFERRED CONTAIN THE COUNT OF BYTES TO BE LOADED :
; (BYTE 1=COUNT LOW, BYTE 2=COUNT HI.) :
;————————————————————————
Interesting. I had a 5155 (XT luggable) with drives but no disks. I debated writing a machine code bootstrapping program (POKE’d in through the ROM basic) to boot over the serial port.
I sold it before I got the chance. It’s a neat machine, but not my particular niche in the retro realm.
Another cool thing happening in the Amiga world is PiStorm - a Raspberry Pi based replacement for the CPU. And the resulting speed up in performance and RAM.
if speed is what you want why not just run winuae and emulate at >1000x the speed of 68000? Even pi4 runs winuae at >400mips. You know whats funny? Workbench still stutters while filling drawers one icon at a time.
This is awesome! I always enjoy reading about projects like this, even though I'm nowhere near a situation where I actually need to bootstrap an Amiga. :D
I guess it's the combination of computer history/nostalgia and the impressive level of knowledge that motivates me the most.
> At this point, we have control again and AmigaOS is almost fully initialized, with the notable exception of dos.library (not required for doing block level I/O), which is skipped as the LSB of its RomTag structure's rt_Flags field is clear.
To add some context, these RomTag structures reside in ROM, so they can't be edited.
The table of residents is, however, in RAM. It should be possible to add RomTags to it, or copy the ROM ones to RAM and modify them there. Conveniently, I did not need to do so.
This is neat. In the 80's, I remember hooking another computer to my Amiga's serial port and entering the debugger ("RomWack".) I had no idea what to do with it though.
openbsd's httpd seems to be handling the load well.
I will read your comments if any :)