qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Re: [OpenBIOS] QEMU OpenBIOS booting?


From: Steven Noonan
Subject: [Qemu-devel] Re: [OpenBIOS] QEMU OpenBIOS booting?
Date: Sun, 19 Apr 2009 20:27:28 -0700

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 " </CHRP" $= if
>>   6 + dup 6 " -BOOT>" $= 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?

- Steven




reply via email to

[Prev in Thread] Current Thread [Next in Thread]