Subject: Cylinder calculations must be sorted out
To: None <port-arm32@NetBSD.ORG>
From: Markus Baeurle <emw4maba@gp.fht-esslingen.de>
List: port-arm32
Date: 10/12/1996 02:06:46
Hi!

While preparing documentation for installing RiscBSD on a Cumana-hosted
harddisk, I came across this:

I get a different first cylinder for the RiscBSD part of my harddisk if I
calculate it with the help of !SCSIMgr or bb_riscbsd.

!SCSIMgr gives sector 1290240 as the "Start of non-RiscOS area" and 820571 as
its length.
My harddisk has 6 heads and 96 sectors/track, so the first cylinder would be
1290240/96/6=2240. This is without rest which means it is on a cylinder
boundary.

I have to run bb_riscbsd twice because I have two RiscOS partitions. (Btw, any
way this can be done automatically by bb_riscbsd? This is not ideal, especially
as it claims for the second partition, drive 5, that it's 818 cylinders large
(which is correct), ranging from cylider 0-817, which is obviously incorrect
and misleading.)
For drive 4 it gives 419'430'400 bytes and 241'172'480 bytes for drive 5.
There are 96*6*512=294912 bytes per cylinder.
This would be 1422,222... cylinders for drive 4 and 817,777... cylinders for
drive 5, but it is rounded to 1423 and 818 cylinders by bb_riscbsd.
This would mean that RiscOS needs 2241 cylinders so RiscBSD would have to start
on cylinders 2241.

But if drive 5 is not aligned to a cylinder boundary, this rounding up should
not be made, or rather only for the sum of both parts and not for the
individual parts.

Another problem is that according to !SCSIMgr the RiscBSD part is 820571/96/6=
1424,60.. cylinders while it must be 3658-2240=1418 cylinders.

Does anybody know more about this? Scott?
It's hard to write a precise and simple installation guide with this being
unclear.

Markus