[OpenBIOS] SOLVED: the mystery of Solaris on SPARC32 and the missing Forth arguments

Mark Cave-Ayland mark.cave-ayland at siriusit.co.uk
Sun Oct 24 22:02:20 CEST 2010

Blue Swirl wrote:

>> Hmmmm. I've also added in an implementation of pv_putstr but still don't see
>> anything useful output on the console (and in fact, if I set a breakpoint on
>> obp_putstr it never breaks which means it isn't being called here either). I
>> guess there will have to be some long nights tracing through disassembled
>> code :(
> What about pv_printf?

Hmmmm well I think this should have been calling printk already? 
However, I added the handler wrapper function just before commit and I 
now get the following message on boot:

Configuration device id QEMU version 1 machine id 32
CPUs: 1 x FMI,MB86904
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.0 built on Oct 24 2010 19:39
   Type 'help' for detailed information
Trying cdrom:d...
Not a bootable ELF image
Loading a.out image...
Loaded 7680 bytes
entry point is 0x4000
bootpath: /iommu/sbus/espdma/esp/sd at 2,0:d

Jumping to entry point 00004000 for type 00000005...
switching to new context:
kobj_read: seek 0x16a000 failed
kobj_load_module:  error reading section headers
krtld: error during initial load/link phase
Unhandled Exception 0x00000002
PC = 0x00000000 NPC = 0x00000004
Stopping execution

Strangely enough, with pv_printf() included the console output seems to 
change in that my screen is limited to a much smaller vertical terminal 
space, so perhaps it was never working in the first place anyway?

At least with error messages we can figure out what's going on :)  A 
random crash on a function that has worked fine before tends to suggest 
some kind of memory allocation/memory clobber though.

>> Based upon all your comments above, would you say that the attached patch is
>> ready for commit? It passes my tests here against my NetBSD, Debian and
>> Solaris 8 ISO images.
> Works for me too.

Great - thanks for testing!



Mark Cave-Ayland - Senior Technical Architect
PostgreSQL - PostGIS
Sirius Corporation plc - control through freedom
t: +44 870 608 0063

Sirius Labs: http://www.siriusit.co.uk/labs

More information about the OpenBIOS mailing list