[OpenBIOS] QEMU OpenBIOS booting?

Alexander Graf alex at csgraf.de
Sun Apr 26 10:13:09 CEST 2009


On 20.04.2009, at 05:50, Steven Noonan wrote:

> On Sun, Apr 19, 2009 at 8:27 PM, Steven Noonan  
> <steven at uplinklabs.net> wrote:
>> So I decided a better idea was to keep the OpenBIOS ROM where it is
>> and then instead use the location 0x06800000 for the memory
>> allocations so that the 0x4000 block doesn't get smashed. It was far
>> more feasible than moving where the ROM is stored, and I don't think
>> anything cares about the contents of 0x06800000 to 06FFFFFF anyway.
>>
>> Also, the reason I was getting "invalid opcode" was because Open
>> Hack'Ware's XCOFF loader didn't take into account some other unknown
>> variable which PearPC accounted for. I added the necessary code to
>> make that work.
>>
>> So now instead of an invalid opcode, we get this (which I don't know
>> how to debug. it looks like a Forth exception):
>>
>> Alcarin:qemu steven$ make -C ppc-softmmu &&
>> ppc-softmmu/qemu-system-ppc -L pc-bios -cdrom
>> ~/Development/MacOSX-10.4.iso -boot d -M mac99 -nographic
>> make: Nothing to be done for `all'.
>>
>>>> =============================================================
>>>> OpenBIOS 1.0 [Apr 20 2009 03:23]
>>>> Configuration device id QEMU version 1 machine id 1
>>>> CPUs: 1
>>>> Memory: 128M
>>>> UUID: 00000000-0000-0000-0000-000000000000
>>>> CPU type PowerPC,G4
>> Welcome to OpenBIOS v1.0 built on Apr 20 2009 03:23
>>
>>>> YABOOT - yaboot_startup: Entering boot, no path
>>>> CHRP - try_chrp_script: Trying cd:0,ppc\bootinfo.txt
>>>> MAC-PARTS: macparts_probe 4552 ?= 4552
>>>> MAC-PARTS: macparts_open 0
>>>> MAC-PARTS: macparts_get_info 0 2832209920
>>>> MAC-PARTS: macparts_block_size = 200
>>>> ELF - try_chrp_script: Can't open cd:0,ppc\bootinfo.txt
>>>> CHRP - try_chrp_script: Trying cd:0,System\Library\CoreServices 
>>>> \BootX
>>>> MAC-PARTS: macparts_probe 4552 ?= 4552
>>>> MAC-PARTS: macparts_open 0
>>>> MAC-PARTS: macparts_get_info 0 2832209920
>>>> MAC-PARTS: macparts_block_size = 200
>>>> CHRP - try_chrp_script: got bootscript
>>>> load-base
>>>> begin
>>>>  dup 6 " &lt;/CHRP" $= if
>>>>   6 + dup 6 " -BOOT&gt;" $= if
>>>>    8 + true
>>>>   else
>>>>    false
>>>>   then
>>>>  else
>>>>   1+ false
>>>>  then
>>>> until
>>>> ( xcoff-base )
>>>> load-size over load-base - -
>>>> ( xcoff-base xcoff-size )
>>>> load-base swap move
>>>> init-program go
>>
>>>> ELF - encode_bootpath: bootpath cd:0,<NULL>\ bootargs <NULL>
>> $=:>> XCOFF - load_xcoff: Loading 'System\Library\CoreServices\BootX'
>>>> XCOFF - load_xcoff: XCOFF file with 3 sections entry:05616ecc
>>>> XCOFF - load_xcoff: Read next header (5c)
>>>> XCOFF - load_xcoff: Load '.text' section from 5c d4 to 5600000  
>>>> (28000)
>>>> XCOFF - load_xcoff: Found entry point offset in '.text': 94112
>>>> XCOFF - load_xcoff: Read next header (84)
>>>> XCOFF - load_xcoff: Load '.data' section from 84 280d4 to 5628000  
>>>> (2000)
>>>> XCOFF - load_xcoff: Read next header (ac)
>>>> XCOFF - load_xcoff: Erase '.bss' section at 562a000 size: 3a000
>>>> XCOFF - load_xcoff: Found actual entry point: 05600adc
>>>> ELF - transfer_control_to_elf: Starting ELF boot loader
>> unselect-dev:interpret: exception -13 caught
>> EXIT
>> 0 > Killed
>>
>> Any ideas?
>>
>
> Also, my most recent changes are committed and pushed for public  
> viewing:
> http://github.com/tycho/openbios/commits/macosx-boot

Wow - I just returned from vacation and that's what I found in my  
inbox! What a nice surprise. This fits along really well with my  
efforts to get KVM running on POWER ;-).

So - have you made any progress since then?

Alex




More information about the OpenBIOS mailing list