[OpenBIOS] Apple's Open Firmware.
Mark Cave-Ayland
mark.cave-ayland at ilande.co.uk
Mon Apr 2 15:04:39 CEST 2018
On 02/04/18 13:19, Joe van Tunen wrote:
> From: Jd Lyons <lyons_dj at yahoo.com>
> Date: Monday, April 2, 2018 at 3:52 AM
>
> On Apr 2, 2018, at 6:43 AM, Jd Lyons via OpenBIOS <mailto:openbios at openbios.org> wrote:
>
> load hd:12,\ppc\Quadro900Mac.rom load-size=c400 adler32=5ff1641b
> load-base 100 dump
>
> Result:
>
> 00800000
> DEFAULT CATCH!, code=300 at %SRR0: ff847470 %SRR1:0000b030
>
> Not sure on that load-size, and I have no clue what the adler32 is?
>
>
> What is the size of the Quadro900Mac.rom file? adler32 is a checksum algorithm (look it up on Wikipedia). It is called by boot|load. Try calling it yourself with
>
> load_base load-size adler32
>
> Looking at (init-program) more carefully (which is called after boot|load), it appears that the “unrecognized Client Program format” error causes the loaded data to be released, so you can’t dump it or byte-load it or adler32 it. Therefore, you must load only the fcode part of the rom or make your own load command.
From memory the IEEE-1275 specification states that a minimum of 8MB
memory should be available at load-base for the bootloader, so OpenBIOS
simply maps this region on startup.
Hence with OpenBIOS you can quite happily do a "load hd:,\path\to\file"
and then dump it with "load-base 100 dump" as above even if the file
format is unrecognised.
I suspect the problem is that your Quadro900Mac.rom is in a format which
is recognised by init-program as executable which proceeds to try and
run it. But as rightly pointed out earlier in the thread, load should
only move the file into memory at load-base and run init-program - it
should be up to the user to manually switch to the saved program state
with "go".
ATB,
Mark.
More information about the OpenBIOS
mailing list