[OpenBIOS] Fail to boot a macosx 10.5 disk image

Programmingkid programmingkidx at gmail.com
Sat Jun 11 19:43:56 CEST 2016


On Jun 11, 2016, at 1:32 PM, Cédric Le Goater wrote:

> 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. 

Really? Could you send the exact command used to boot? 

What is the type and creator of the Bootx file? You can use Resedit or another program to find this information out. 


More information about the OpenBIOS mailing list