Port-amiga archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

RE: Re: Re: AmigaOS 3.2 kickstart ROM crashing on NetBSD partitions (Was NetBSD/amiga sysinst)



Hi,

On Sat, 25 Mar 2023, Karoly Balogh wrote:

> OK, so my initial hypothesis was wrong, but now I have proof, that on
> Kickstart 3.2.x opening console.device fails from the bootblock, in
> console.c, function consinit(). That OpenDevice("console.device"...)
> call in particular, returns -1:
>
> (...)
>
> I let the people who actually have interest in these newer Kickstarts
> figure it out. :P

So, this worked, Toni Willen (of WinUAE fame) figured out these new
Kickstarts do not initialize console.device before bootstrap is called,
and then Thomas Richter (of MMULib, P96, "modern Kickstart", etc fame)
proposed a workaround which I implemented, and it seems to work.

Patch here:
https://gist.github.com/chainq/c2ae18e16d6603d9de2f6ea1f6fa88cc

This made the bootblock work for me on KS v47.102:
https://twitter.com/chainq/status/1639687720929841154

The patch works like this: if opening "console.device" fails, it tries to
initialize the "console.device" ROM module using FindResident and
InitResident, and then open the device again. For older Kickstarts, the
code is practically unchanged, because there the first opening already
works. For newer Kickstarts, this works around the initialization issue.

Charlie


Home | Main Index | Thread Index | Old Index