Subject: Re: PowerMac 7300 won't boot 2.0 iso
To: Bill Studenmund <wrstuden@netbsd.org>
From: Tim Kelly <hockey@dialectronics.com>
List: port-macppc
Date: 12/14/2004 21:02:34
At 5:46 PM -0800 12/14/04, Bill Studenmund wrote:
>> but the execution instructions were last at 0x600xxx. This looks a lot
>> like a mismatch between bootxx and ofwboot. bootxx 1.12 would have
>> loaded ofwboot to 0x600000 but ofwboot 1.10 (?) is linked to 0xe00000,
>
>bootxx 1.13 loads ofwboot to 0xe00000.

Sure, but since ofwboot was showing up at 0x600000, wouldn't this indicate
that the bootxx version on the ISO is 1.12? With ofwboot 1.10 linked to
0xe00000, it jumps off track as soon it has to start loading any absolute
addresses.

I had Chaz dump out 256 bytes down near the end of the loaded ofwboot,
based on the %SRR0 register, to see what address was linked

0 > 60c900 100 dump
0060C900: 00 00 00 00 00 00 00 00 00 00 00 00 00 E0 A8 30
0060C910: 00 00 00 03 00 00 00 01 00 00 00 00 00 00 00 00
0060C920: 00 00 00 00 00 00 00 00 00 E0 A8 38 00 00 00 02
0060C930: 00 00 00 00 00 00 00 00 00 00 00 00 00 E0 A8 40
0060C940: 00 00 00 00 00 00 00 01 00 00 00 00 00 E0 A8 50
0060C950: 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00
0060C960: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0060C970: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0060C980: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0060C990: 00 E0 A8 74 00 E0 A8 7C 00 E0 A8 88 00 00 00 00
0060C9A0: 00 E0 AA 20 00 E0 0F 04 00 E0 0F DC 00 E0 0F F4
0060C9B0: 00 E0 55 88 00 E0 25 64 00 E0 28 A0 00 E0 29 0C
0060C9C0: 00 E0 29 F0 00 E0 2A 00 00 E0 2A 84 00 E0 16 60
0060C9D0: 00 E0 17 1C 00 E0 17 48 00 E0 17 94 00 E0 17 C0
0060C9E0: 00 E0 18 08 00 E0 30 E0 00 E0 34 EC 00 E0 33 34
0060C9F0: 00 E0 32 AC 00 E0 32 BC 00 E0 34 38 00 E0 36 AC ok

Although his load-base is 0x600000, bootxx doesn't use load-base and
instead writes to a hardwired address. For 1.12 this was 0x600000 and for
1.13 it is 0xe00000, to match the linking address of ofwboot (background
for others reading this). It seems to me the only way we could see the
above data in memory is if bootxx 1.12 loaded ofwboot 1.10.

If I am missing something, I'd be very interested in learning more.

thanks,
tim