What version of GCC do I need to build OpenBIOS Sparc32 ?
What about the other GNU tools - what is the minimum set needed ?
I would like to either cross-compile on Windows 2000 (under MINGW or
CYGWIN), or to build on Solaris (choice of systems from Solaris 2.5.1 to
Solaris 2.10 available).
Thanks
Jason
Stefan wrote:
>If someone has boot CDs or ISO images of SunOS 4 / Solaris 2.4 or older,
>any help in testing is very welcome.
I have a Solaris 1.1.2 (SunOS 4.1.4) boxed kit sitting in my office, plus
some Sparcstation IPX and ELC hardware running Sunos 4.1.3 / 4.1.4.
Possibly I have Solaris 1.1.1 (SunOS 4.1.3) media somewhere too (it would be
in a pile of inherited stuff I got when I got the Sparcstations - sigh !)
So, if you want some files, extracted from these systems or CDs let me know
EXACTLY what you want - go easy on me, I'm still a newbie !
As soon as I can figure out how to make QEMU work best for me (presently
under Windows) I will let you know. I've managed to get it to build under
MINGW, after working around the dependence on fsync() function calls in some
of the disk image handling modules (which does not exist on Win32). Which
reminds me, I need to feed this back to the QEMU developers !
Alternatively, I can try building QEMU under Solaris 10, 8, 7, 6 or 5, all
of which are running on one or more of the workstations in the office - I
probably need to sort out the right GCC and GNU tools to use for these
though, so any help appreciated.
My long term goal is to be able to switch off the Sparcstations entirely so
that we can retire the ageing hardware, and fire up a "virtual Sparc"
whenever I need to do some legacy work. I've had similar success with DEC
hardware guru Bob Supnik's SIMH, a VAX emulator, which runs the entire VMS
operating system on it (see http://simh.trailing-edge.com) or can also
emulate a number of other interesting nostalgic CPUs and systems. I reckon
if they can make VMS run reliably in an emulator, that's VERY impressive.
Hopefully one day QEMU / OpenBIOS can be so good.
The only downside with QEMU and SIMH seems to be that they eat 100% of my
CPU because the target CPUs do not use any sort of HLT mechanism to pause
the CPU when idle - at least on a hyper threading CPU it is only running at
50% according to task manager !
Regards
Jason
Linux:
always assumes it is booted from the serial console, so you need to
specify "console=tty1" if you boot graphically
NetBSD booting from CD:
[sparc] Booting file 'cdrom' without parameters.
Loading a.out image...
Loaded 8388615 bytes
entry point is 0x4000
Jumping to entry point...
obmem:>> NetBSD/sparc Secondary Boot, Revision 1.15
>> (builds(a)b3.netbsd.org, Mon Dec 19 03:43:03 UTC 2005)
Booting diag
Cannot load diag: error=20
device[sd(0,2,0):b] ("halt" to halt):
NetBSD kernel directly:
[sparc] Kernel already loaded
OBP version 3, revision 2.25 (plugin rev 2)
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
The NetBSD Foundation, Inc. All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
NetBSD 3.0 (GENERIC) #0: Mon Dec 19 04:01:27 UTC 2005
builds@b3.netbsd.org:/home/builds/ab/netbsd-3-0-RELEASE/sparc/200512182024Z-obj/home/builds/ab/netbsd-3-0-RELEASE/src/sys/arch/sparc/compile/GENERIC
total memory = 127 MB
avail memory = 120 MB
bootpath:
data fault: pc=0xf02a4f3c addr=0x7ff000
sfsr=126<PERR=0,LVL=1,AT=1,FT=1,FAV,OW>
panic: kernel fault
halted
Solaris 8 iso:
[sparc] Booting file 'cdrom' without parameters.
Loading a.out image...
Loaded 7680 bytes
entry point is 0x4000
Jumping to entry point...
device iommu size -1
device sbus size -1
device eeprom address prop too big
device auxio size -1
qemu: fatal: Trying to execute code outside RAM or ROM at 0xff00000d
Stefan
--
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: info(a)coresystems.de • http://www.coresystems.de/
Stefan wrote:
>Generally you can start with using http://openbios.org/~stepan/proll.elf
>as a replacement for the default proll.elf file that came with qemu.
Do you keep this proll.elf (which is really OpenBIOS) up to date with the
latest SVN snapshot ?
If not, maybe you could generate a proll-svn.elf file which contains the
latest from SVN for people without access to the cross tools (and leave the
proll.elf as the latest "stable" version)
>NOTE: This one only works with -nographic, as the framebuffer handling
>code keeps most OS boots hanging.
On Windows, starting QEMU with -nographic is not possible because it keeps
on saying
qemu: could not open monitor device 'stdio'
I'm guessing it works OK on Linux and Unix QEMU, but what to do on Windows
where the concept of "stdio" is not as well defined ? Is there a workaroumd
/ hack for QEMU or something I need to configure on Windows ?
Thanks
Jason
Hi all,
A very very crude patch to get the Solaris boot to go a bit further. We are missing the definition and code for vector v2_dumb_mem_alloc. I have tested with various addresses for the dumb memory alloc, but I am sure there are others on the list who know enough to do this properly!
I now get errors about device sizes after the Solaris kernel boots. I even get the rotating cursor for a little while!
Regards,