[comp.os.minix] MINIX ST Here is stwini.c

hcj@lzaz.ATT.COM (HC Johnson) (06/28/89)

Here is my stwini.c which supports the SUPRA/ICD partitioning.

THis is part of the 'kernel with rs232 support' and expected
switches for features 'HAVE...' in ../h/const.h.

To use this module alone add the following defines at the beginning
of the program:
#define SUPRA_PART 1 /* add Supra partitioning scheme */
#define HCJ_ERR_HANDLE 1 /* guard against SCSI select failure */
			 /* this may be 0 if desired */
#define HAVELOCAL 1 /* sets the previous 2 automatically */
#define HAVEDISKCLOCK 1 /* turn on to include support for the SUPRA or
		 	 * ICD built in clock */
			/* This can be turned off (0) */
/* If you don't have the other parts of the disk based clock, e.g.
kernel/diskclocks.s, set this define to 0 */

How to access sthe partitions:
The minor numbers are built as |[3]SCSI|[1]LUN|[4]Section|
Sections  numbered 0-7 have  the standard minix definitions for the 
first four partitions.
The additional 8 partitions are labeled sections 8-15.

Examples:  The first extra partition (SUPRA labels it E), LUN 0, SCSI 0
	mknod hd8 b 3 8
LUN 1, (second drive on first controller):
	mknod hd24 b 3 24  (note 24 = 16 + 8).
SCSI 1, LUN 1 partition 12 (SUPRA N):
	mknod hd63 b 3 63  (note 63 = 32 + 16 +15)

NOTE: This is a cdiff against the original stwini.c, and then compressed.

Howard C. Johnson
ATT Bell Labs
att!lzaz!hcj
hcj@lzaz.att.com

=======cut here======
begin 644 stwini.c.cdi.Z
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
"& ')
 
end