Okay, problem solved. Someone (you know who you are) sent me the following by email:
>I had much fun installing OpenBSD on an Ultra 10, too. > >What I had to do, after dd'ing the miniroot image on the hard disk was >to unplugg the floppy (for whatever reason... but it booted after I >did that). > >Also: if you have two graphic cards in it, remove one of them. That >helped (but I don't know for which particular error). So I physically disconnected everything I could in my machine (floppy drive, CD drive, and PCI card) and then, lo and behold, the machine booted without problem from the miniroot image on the hard disk. I then went to the miniroot's shell prompt (i.e. without installing anything), halted and powered down the machine, reconnected everything, and, much to my surprise, I was still able to boot from the miniroot! (bangs head on keyboard) I rebooted into Solaris and checked that the CD drive was still working by mouting and reading a CD (I know for a fact that the CD drive was working before I disconnected anything), then checked that the floppy drive was working too by mouting and reading a FAT-formatted floppy (unfortunately I didn't think of testing the floppy drive before disconnecting anything, so I don't know for sure whether it was actually working or not before, but I know that Solaris at least detected it at boot (see Solaris's dmesg in one of my previous emails)). Anyway, so I rebooted into the miniroot and then installed OpenBSD without problem. Here's the dmesg: console is /p...@1f,0/p...@1,1/e...@1/s...@14,400000:a Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. Copyright (c) 1995-2009 OpenBSD. All rights reserved. http://www.OpenBSD.org OpenBSD 4.5-current (GENERIC) #0: Sun Jun 14 02:35:19 MDT 2009 dera...@sparc64.openbsd.org:/usr/src/sys/arch/sparc64/compile/GENERIC real mem = 268435456 (256MB) avail mem = 248152064 (236MB) mainbus0 at root: Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 300MHz) cpu0 at mainbus0: SUNW,UltraSPARC-IIi (rev 1.3) @ 300 MHz cpu0: physical 16K instruction (32 b/l), 16K data (32 b/l), 512K external (64 b/l) psycho0 at mainbus0 addr 0xfffc4000: SUNW,sabre, impl 0, version 0, ign 7c0 psycho0: bus range 0-2, PCI bus 0 psycho0: dvma map c0000000-dfffffff pci0 at psycho0 ppb0 at pci0 dev 1 function 1 "Sun Simba PCI-PCI" rev 0x11 pci1 at ppb0 bus 1 ebus0 at pci1 dev 1 function 0 "Sun PCIO EBus2" rev 0x01 auxio0 at ebus0 addr 726000-726003, 728000-728003, 72a000-72a003, 72c000-72c003, 72f000-72f003 power0 at ebus0 addr 724000-724003 ivec 0x25 "SUNW,pll" at ebus0 addr 504000-504002 not configured sab0 at ebus0 addr 400000-40007f ivec 0x2b: rev 3.2 sabtty0 at sab0 port 0: console sabtty1 at sab0 port 1 comkbd0 at ebus0 addr 3083f8-3083ff ivec 0x29: no keyboard comms0 at ebus0 addr 3062f8-3062ff ivec 0x2a wsmouse0 at comms0 mux 0 lpt0 at ebus0 addr 3043bc-3043cb, 30015c-30015d, 700000-70000f ivec 0x22: polled "fdthree" at ebus0 addr 3023f0-3023f7, 706000-70600f, 720000-720003 ivec 0x27 not configured clock1 at ebus0 addr 0-1fff: mk48t59 "flashprom" at ebus0 addr 0-fffff not configured audioce0 at ebus0 addr 200000-2000ff, 702000-70200f, 704000-70400f, 722000-722003 ivec 0x23 ivec 0x24: nvaddrs 0 audio0 at audioce0 hme0 at pci1 dev 1 function 1 "Sun HME" rev 0x01: ivec 0x7e1, address 08:00:20:9e:d7:72 nsphy0 at hme0 phy 1: DP83840 10/100 PHY, rev. 1 machfb0 at pci1 dev 2 function 0 "ATI Mach64" rev 0x9a machfb0: ATY,GT-B, 1152x900 wsdisplay0 at machfb0 mux 1 wsdisplay0: screen 0 added (std, sun emulation) pciide0 at pci1 dev 3 function 0 "CMD Technology PCI0646" rev 0x03: DMA, channel 0 configured to native-PCI, channel 1 configured to native-PCI pciide0: using ivec 0x7e0 for native-PCI interrupt wd0 at pciide0 channel 0 drive 0: <ST34342A> wd0: 16-sector PIO, LBA, 4103MB, 8404830 sectors wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 atapiscsi0 at pciide0 channel 1 drive 0 scsibus0 at atapiscsi0: 2 targets cd0 at scsibus0 targ 0 lun 0: <GoldStar, CD-ROM CRD-8240B, 1.24> ATAPI 5/cdrom removable cd0(pciide0:1:0): using PIO mode 4, DMA mode 2 ppb1 at pci0 dev 1 function 0 "Sun Simba PCI-PCI" rev 0x11 pci2 at ppb1 bus 2 siop0 at pci2 dev 1 function 0 "Symbios Logic 53c875" rev 0x14: ivec 0x7d0, using 4K of on-board RAM scsibus1 at siop0: 16 targets, initiator 7 siop1 at pci2 dev 1 function 1 "Symbios Logic 53c875" rev 0x14: ivec 0x7d1, using 4K of on-board RAM scsibus2 at siop1: 16 targets, initiator 7 softraid0 at root bootpath: /p...@1f,0/p...@1,1/i...@3,0/d...@0,0 root on wd0a swap on wd0b dump on wd0b Interestingly "fdthree" is listed as "not configured" and there's nothing like "fd0" visible anywhere. Well, it boots, which is all I care about :-) Nick Holland wrote: >Philippe Meunier wrote: >> Next I tried to install OpenBSD from Solaris, using one of the >> existing partitions: >... > >> I used Solaris's newfs to re-create the file system on >> /dev/rdsk/c0t0d0s4 (bye bye /home), mounted it on /mnt, downloaded >> bootblk, ofwboot, bsd, bsd.rd, base45.tgz, and etc45.tgz to /root >> (through the serial port, after tar-ing and uuencode-ing the whole >> thing; the Ultra is not connected to the network), copied bootblk and >> ofwboot to /mnt, used Solaris's installboot to install bootblk on >> /dev/rdsk/c0t0d0s4, copied bsd and bsd.rd to /mnt, unpacked base45.tgz >> and etc45.tgz there, and then rebooted: > >ouch. I'm sure it is possible to make an OpenBSD bootable partition >from Solaris, but I doubt you can do it with standard Solaris tools. Well, ftp://ftp.openbsd.org/pub/OpenBSD/snapshots/sparc64/INSTALL.sparc64 seems to contradict itself on this: "Preparing your System for OpenBSD Installation: [...] You can use Solaris bootblocks, but remember that OpenBSD bootblocks must be installed with OpenBSD installboot and Solaris bootblocks with Solaris installboot. [...] Installing from Solaris: [...] Place the boot blocks in /mnt (your new root partition), and use the Solaris command "installboot" to make it work. The installboot man page says to do something like this: solaris# cp bootblk ofwboot /mnt solaris# sync; sync solaris# /usr/sbin/installboot /mnt/bootblk /dev/rdsk/c0t1d0s0 [...]" which is why I tried it... I did a bit of testing about this and, in practice, even with the floppy drive, CD drive, and PCI card disconnected in my machine, I still was not able to boot from a partition created in this manner, while booting from the miniroot (placed in the same partition!) worked fine. So it looks like the "Installing from Solaris" section in INSTALL.sparc64 is wrong. >> Next I tried to go the miniroot way, just in case I had somehow messed >> up while trying to install from Solaris. So I downloaded >> miniroot45.fs to the machine, used Solaris's dd to write it to the >> same partition as before and then tried to boot from it: >> >> ============================================================ >> # dd if=miniroot45.fs of=/dev/rdsk/c0t0d0s4 bs=64b >> 80+0 records in >> 80+0 records out >> # reboot >> [...] >> ok boot disk:e >> [...] >> Rebooting with command: boot disk:e >> Boot device: /p...@1f,0/p...@1,1/i...@3/d...@0,0:e File and args: >> OpenBSD IEEE 1275 Bootblock 1.1 >> . >> ============================================================ > >not sure why that didn't work, though I am going to SPECULATE >that it might have something to do with the normal process is >to put miniroot over the swap partition, which is (in Solaris) >often the first physical partition on the disk. >... Wrong speculation :-) I put the miniroot in what used to be the /home partition (c0t0d0s4 in the dd command above) and it worked. It only started working after disconnecting some hardware though, as I explain above. Anyway, all is well that ends well. Thank a lot to everyone for the help! Philippe