DataMuseum.dk

Presents historical artifacts from the history of:

Regnecentalen RC-900

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Regnecentalen RC-900

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦29c6f6c38⟧ TextFile

    Length: 2856 (0xb28)
    Types: TextFile
    Notes: UNIX file
    Names: »dosbpb.h«

Derivation

└─⟦a6ab2eb36⟧ Bits:30004042/kconfig3.imd SW95705I 386/ix Multi-user Release 1.2
└─⟦a6ab2eb36⟧ UNIX Filesystem
    └─⟦this⟧ »kc/new/usr/include/sys/fs/dosbpb.h« 

TextFile

/*
 * Copyrighted as an unpublished work.
 * (c) Copyright 1987, 1988 INTERACTIVE Systems Corporation
 * All rights reserved.
 *
 * RESTRICTED RIGHTS
 *
 * These programs are supplied under a license.  They may be used,
 * disclosed, and/or copied only as permitted under such license
 * agreement.  Any copy must contain the above copyright notice and
 * this restricted rights notice.  Use, copying, and/or disclosure
 * of the programs is strictly prohibited unless otherwise provided
 * in the license agreement.
 *
 */

#ident "@(#)dosbpb.h	1.3 - 88/03/16"
#ident "@(#) (c) Copyright INTERACTIVE Systems Corporation 1987, 1988"

/*
 * BIOS Parameter Block structure.
 * Words are declared as two element char arrays for correct alignment.
*/

struct bpb {
	unchar  b_bps[2];       /* bytes per sector                     */
	unchar  b_spc;          /* sectors per cluster                  */
	unchar  b_nrsrvd[2];    /* number of reserved sectors           */
	unchar  b_nfat;         /* number of FATs                       */
	unchar  b_nrde[2];      /* number of root directory entries     */
	unchar  b_nsctr[2];     /* number of sectors in logical volume  */
	unchar  b_mediadscr;    /* media descriptor (FAT id byte)       */
	unchar  b_spf[2];       /* sectors per FAT                      */
	unchar  b_spt[2];       /* sectors per track                    */
	unchar  b_nhds[2];      /* number of heads                      */
	unchar  b_nhddn[2];     /* number of hidden sectors             */
};

/* macro to get a word out of a 2 character field in the BPB            */
#define bpbword(x) (*((ushort *)x))

#define BPBOFFSET       0xB     /* offset of the BPB in the boot block  */
#define PARTOFFSET      0x1BE   /* partition table offs in blk 0 of unit*/
#define SIGNOFFSET      0x1FE   /* offset of the DOS signature          */

#define DOS_ID1         0xE9    /* JMP intrasegment                     */
#define DOS_ID2         0xEB    /* JMP short                            */
#define DOS_SIGN        0xAA55  /* DOS signature in boot and partition  */
#define MEDIA_HARD      0xF8    /* Hard disk media descriptor           */
#define MEDIA_2_15      0xF9    /* Floppy 2 sides, 15 sec/track		*/
#define MEDIA_1_9       0xFC    /* Floppy 1 sides, 9 sec/track		*/
#define MEDIA_2_9       0xFD    /* Floppy 2 sides, 9 sec/track		*/
#define MEDIA_1_8       0xFE    /* Floppy 1 sides, 8 sec/track		*/
#define MEDIA_2_8       0xFF    /* Floppy 2 sides, 8 sec/track		*/

#define DOS_NUMPART     4       /* Number of partitions in blk 0 of unit*/
#define DOS_SYSFAT12    1       /* DOS FAT 12 system ID                 */
#define DOS_SYSFAT16    4       /* DOS FAT 16 system ID                 */
#define DOS_F12MAXS     20740   /* Max sector for 12 Bit FAT (DOS>=3.2) */
#define	DOS_F12MAXC	4086	/* Max cluster for 12 Bit FAT (DOS>=3.2)*/