[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