Port-prep archive

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

Re: boot image sizes for 9.x

On Thu, 10 Jun 2021 20:17:40 +0200 (CEST), Ulrich Teichert wrote:

> Hi,
>> On Thu, Jun 10, 2021 at 01:18:49AM -0600, T wrote:
>> > The install boot image (sysinst.fs) is, as of 9.0, too large to boot
>> > on the 43p 7248. This has also carried over to NetBSD 9.2, which
>> > causes the ISO to no longer boot, since that image is used in
>> > building the bootable section of the ISO. As mentioned in some prior
>> > posts here, there seems to be a 2MiB limitation on the boot image
>> > size.
>> Can someone explain the limitting issue?
> Actually, it's somewhere below 2MB. The firmware of the 43p can only
> cope with files smaller than that, as I found out.
>> > Sysinst does not currently produce a working PReP partition, because
>> > it uses the GENERIC kernel, which is too large.
>> For what value of too large? Which limit are we running against here?
> I haven't been able to find out if it's a memory layout/size issue or a
> firmware limitation, sorry. But this limit applies to files loaded from
> disk and from the network.
>> Unfortunately my only prep machine died quite some time ago (though I
>> still have it, need to check if it is only the PSU that is broken and
>> maybe I can fix it).
> There was a cheap RS/6000 43p 150 on ebay (~50€), but it's sold now :-(
> CU,
> Uli

I'm speculating here, but it seems like the firmware for the 43p thinks 
in terms of diskette images when using the different booting methods. 
Whether it be by actual floppy drive, net boot transfer (essentially a 
diskette image over TFTP), an El Torito CD-ROM which internally can use a 
diskette image and floppy emulation mode to boot (this is how port-prep  
does it), or a hard disk drive with a PReP partion, which again seems to 
just be a diskette image (Kernel+boot) in a hard drive slice, they are 
all reduced to booting a disk image that's around the capacity of a 
floppy disk.

On page 10 of the El Torito CD-ROM specification:
Boot media type.
This specifies what media the boot image is intended to emulate in bits 
0-3 as follows, bits 4-7 are reserved and must be 0.
Bits 0-3 count as follows:
0	No Emulation
1	1.2 meg diskette
2	1.44 meg diskette
3	2.88 meg diskette
4	Hard Disk (drive 80)
5-F	Reserved, invalid at this time
and it just so happens that an unformatted 3.5 inch HD diskette is:
31⁄2-inch HD	1987	1440KiB	1.44 MiB	(2 MiB unformatted)
31⁄2-inch ED	1987	2880KiB	2.88 MiB	(4 MiB unformatted)

The sysinst.fs images I tested using net boot transfer:
2069533 Jun 10 19:59 sysinst.fs	(from 8.1)
2076191 Jun 10 20:02 sysinst.fs	(from 8.2)
These booted, and are just under 2097152 bytes, but will be rounded up to 
2048 for listings that use KiB units. The sysinst.fs from 9.2 is 2137 KiB 
and doesn't boot. My guess is the person/people that wrote the firmware 
rounded 1.44K up to 2MiB and figured a standard diskette sized image was 
sufficient for a secondary bootloader or installer. There where tools 
around that time for superformatting diskettes, so maybe they were 
leaving room for possible improvement?

Home | Main Index | Thread Index | Old Index