[OpenBIOS] Fail to boot a macosx 10.5 disk image
Cédric Le Goater
clg at kaod.org
Sat Jun 11 19:32:25 CEST 2016
On 06/08/2016 11:55 PM, Mark Cave-Ayland wrote:
> On 08/06/16 20:38, Cédric Le Goater wrote:
>
>> Hello Mark,
>>
>> On 06/08/2016 08:52 PM, Mark Cave-Ayland wrote:
>>> On 08/06/16 14:48, Cédric Le Goater wrote:
>>>
>>>> So it is hd:3 and then, openbios dies directly :
>>>>
>>>> ...
>>>> IN:
>>>> 0xfff0d6c8: mr r28,r3
>>>> 0xfff0d6cc: add r30,r30,r3
>>>> 0xfff0d6d0: add r31,r31,r3
>>>> 0xfff0d6d4: b 0xfff0d6a0
>>>>
>>>> IN:
>>>> 0xfff0d6a0: mr r3,r29
>>>> 0xfff0d6a4: li r5,0
>>>> 0xfff0d6a8: mr r6,r30
>>>> 0xfff0d6ac: bl 0xfff279e8
>>>>
>>>> IN:
>>>> 0x00000300: .long 0x0
>>>>
>>>> IN:
>>>> 0x00000700: .long 0x0
>>>>
>>>> which is this loop in bootcode_load() :
>>>>
>>>> ...
>>>> bootcode = loadbase;
>>>> offset = 0;
>>>>
>>>> while(1) {
>>>> if (seek_io(fd, offset) == -1)
>>>> break;
>>>> count = read_io(fd, (void *)bootcode, 512);
>>>> offset += count;
>>>> bootcode += count;
>>>> }
>>>> ...
>>>
>>> Hi Cédric,
>>>
>>> As a starting point, can you provide the contents of the root of the HD
>>> image as given with:
>>>
>>> dir hd:3,\
>>
>> 0 > dir hd:3,\
>> 7065 2006-11-05 15:39:15 .\debugdata\debug.txt
>> 0 2006-01-10 13:37:45 .com_symantec_symfs_private\
>> 12292 2002-05-16 10:37:41 .DS_Store
>> 458752 2005-10-20 18:00:21 .hotfiles.btree
>> 8388608 2005-07-12 03:37:09 .journal
>> 4096 2005-07-12 03:37:09 .journal_info_block
>> 0 2005-07-12 04:48:20 .Spotlight-V100\
>> 0 2006-01-09 10:49:19 .symSchedScanLockxz
>> 0 2005-07-12 04:53:28 .Trashes\
>> 0 2005-03-22 00:01:29 .vol\
>> 0 2005-07-11 09:36:46 Applications\
>> 0 2005-07-11 17:21:58 Applications (Mac OS 9)\
>> 512 2005-12-28 17:51:55 Auth-DigitalPerformer 4.0
>> 0 2005-12-02 17:25:12 automount\
>> 0 2005-07-11 10:28:40 bin\
>> 0 2005-05-28 17:05:33 cores\
>> 133120 2005-07-12 04:48:01 Desktop DB
>> 715698 2005-07-12 04:48:01 Desktop DF
>> 0 2003-10-32 14:57:45 Desktop Folder\
>> 0 2005-05-28 17:05:33 dev\
>> 0 2008-09-07 00:40:24 Developer\
>> 0 2005-11-15 13:13:52 Dossier Systeme\
>> 11 2005-07-12 03:37:16 etc
>> 21579557 2006-09-19 08:26:22 gmon.out
>> 60 2005-12-02 11:59:32 Guides de lutilisateur et informations
>> 297 2005-01-09 16:29:43 Installer Log File
>> 0 2005-07-11 10:22:09 Library\
>> 9 2015-05-28 12:06:55 mach
>> 604360 2015-05-28 12:06:55 mach.sym
>> 4352200 2007-10-12 01:26:11 mach_kernel
>> 0 2005-11-17 19:04:29 Macintosh HD
>> 13027540 2006-01-09 10:48:44 NAVMac800QSFile
>> 0 2005-05-28 17:05:33 Network\
>> 29150 2005-01-18 09:35:39 Office 2004 11.1.0 Update Log
>> 0 2005-07-11 10:19:09 private\
>> 0 2005-07-11 10:28:00 sbin\
>> 0 2006-11-02 08:15:23 sblibng.log
>> 0 2005-07-11 09:36:30 System\
>> 0 2004-10-02 10:23:16 TheVolumeSettingsFolder\
>> 11 2005-07-12 03:37:52 tmp
>> 0 2005-03-21 23:57:33 Users\
>> 0 2005-07-11 09:39:44 usr\
>> 11 2005-07-12 03:37:59 var
>> 0 2005-03-22 00:01:29 Volumes\
>> 0 2005-07-12 03:30:28 HFS+ Private Data\
>> ok
>> 0 >
>>
>> That system was updated from Mac OS 9. That might be the issue.
>
> Ah that could be it indeed. I've heard reports from people that
> installing Classic mode into a QEMU OS X causes it to fail to boot, but
> no-one has been able to provide an image to date. But it definitely
> looks like the right partition.
>
>>> (it's much easier to cut/paste if you run qemu-system-ppc with
>>> -nographic). This is just to ensure that a HFS+ FS isn't accidentally
>>> getting picked up as a HFS filesystem (some driver partitions are set up
>>> this way).
>>>
>>>> How do I add more logging with openbios ?
>>>
>>> You should find that in -nographic mode Forth errors are logged to the
>>> console - does anything obvious stand out? If not, you'd probably have
>>> to look at modifying OpenBIOS to dump out the 10.5 bootloader to see
>>> what it's trying to do.
>>
>> yes. I will look into that next.
>>
>> Using -nographic, I get more info : "Not a bootable ELF image". That's
>> something to look for !
>
> That just means that OpenBIOS scanned through its list of recognised
> binaries and didn't match on ELF - presumably from your previous email
> it is a bootcode image, i.e. XML, possibly with a payload, so it would
> have subsequently recognised and matched on that.
>
> You could try seeing if just loading the binary succeeds without
> invoking the failure on seek, and then follow this up with a go to
> execute the image directly:
>
> load hd:3,\\:tbxi
> go
>
> If it freezes on go then that means its something in the bootloader
> failing in which case you may get further information by either enabling
> debug in the device tree:
>
> cd /
> ffffffff encode-int " AAPL,debug" property
> boot
>
> or perhaps passing the verbose parameter via the QEMU command line, e.g.
>
> -prom-env 'boot-args=-v'
FYI, I had to specify the path of BootX to get running.
Thanks,
C.
More information about the OpenBIOS
mailing list