Article View: comp.sys.amiga.tech
Article #7916PART blocks and low-level HD access
From: Tyler Sarna
Date: Tue, 08 Jan 1991 01:22
Date: Tue, 08 Jan 1991 01:22
66 lines
2644 bytes
2644 bytes
Hello all. I'm in the process of writing some hard disk driver code for
a GVP Series II controller under AmigaMINIX. I need to know about the
contents of the various elements of the environment array in the PART
blocks. Here's what I've figured out so far:
n pb_Environment[n]
-------------------------------------------------
0 ?
1 Longs per block (==128)
2 ?
3 Heads per cyl
4 ?
5 Sectors per track
6 Reserved blocks
7 ?
8 ?
9 Low cyl of partition
10 High cyl of partition
11 Number of buffers to use
12 ?
13 MaxTransfer
14 Mask for address
15 Boot priority of partition
16 ?
A few other questions:
1) Can I safely use the reserved blocks? They wouldn't be needed
for the Minix filesystem.
2) Am I correct in assuming that:
block = cyl * heads_per_cyl * secs_per track +
head * secs_per_track +
sec;
is the correct formula, ie cyl is the most significant digit,
followed by the head, followed by the sector? Or is a different
convention used?
3) Does anyone know how to program the GVP Series II at a low
level, or know where to find such info (other than GVP, I'm
asking them now but I suspect it may take a while). All I
really need are two functions:
unknown = scsiinit(unknown);
/* init/find the board, if needed */
error = scsiread(short scsi_id, ulong block, void *addr);
/* read block "block" of scsi device "scsi_id" into "addr" */
error = scsiwrite(short scsi_id, ulong block, void *addr);
/* write block at "addr" to block "block" of "scsi_id" */
I am currently simulating this in a test program under AmigaDOS
using the SCSI-Direct interface, but of course no AmigaDOS
.devices are around under Minix, so some hardware-level code
is needed.
Would anyone who has code for the three functions above
(preferably C, but well-commented assembly would be OK) for the
GVP series II (or any other HD controller for that matter),
please send it to me? Thanks!
------///------------------------------------------------------------
/// Tyler "Ty" Sarna E-Mail: tsarna@polar.bowdoin.edu
\\\/// "...and save up to 100% on brands you've never heard of!!!!"
--\XX/---------------------------------------------------------------
Technical Details
Message-ID:
<9101080122.AA12840@polar.bowdoin.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!usc!ucsd!ucbvax!POLAR.BOWDOIN.EDU!tsarnaShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!usc!ucsd!ucbvax!POLAR.BOWDOIN.EDU!tsarna From: tsarna@POLAR.BOWDOIN.EDU (Tyler Sarna) Newsgroups: comp.sys.amiga.tech Subject: PART blocks and low-level HD access Message-ID: <9101080122.AA12840@polar.bowdoin.edu> Date: 8 Jan 91 01:22:15 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 66