|
DataMuseum.dkPresents historical artifacts from the history of: Regnecentalen RC-900 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Regnecentalen RC-900 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 4215 (0x1077) Types: TextFile Notes: UNIX file Names: »ivlab.h«
└─⟦a6ab2eb36⟧ Bits:30004042/kconfig3.imd SW95705I 386/ix Multi-user Release 1.2 └─⟦a6ab2eb36⟧ UNIX Filesystem └─⟦this⟧ »kc/new/usr/include/sys/ivlab.h«
/* Copyright (c) 1984 AT&T */ /* All Rights Reserved */ /* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */ /* The copyright notice above does not evidence any */ /* actual or intended publication of such source code. */ #ident "@(#)ivlab.h 1.2" /* * iRMX 86 Volume Label Definitions for UNIX. * * This is used to keep a UNIX Volume close enough to RMX 86 to * allow use of various RMX 86 technology (ie, PROM bootstrap drivers). * */ union v_part { struct { ushort v_part_st; ushort v_part_sz; ushort v_part_sid; } vp_std; /* standard partition def */ struct { ushort v_sanity_l; /* sanity to verify label (low half) */ ushort v_sanity_h; /* high half of sanity */ ushort v_version; /* label version number */ } vp_sanity; /* used for v_prt[1] */ struct { ushort v_pd_sect_l; /* low half of absolute sector number of beginning of pdinfo structure */ ushort v_pd_sect_h; /* high half of sector number */ ushort v_pd_len; /* # of bytes in pdinfo block */ } vp_pdinfo; /* used for v_prt[2] */ }; #define VP_SANITY(ptr) ((((union v_part *)(ptr))->vp_sanity.v_sanity_h << 16)\ | (((union v_part *)(ptr))->vp_sanity.v_sanity_l)) #define VP_PD_SECT(ptr) ((((union v_part *)(ptr))->vp_pdinfo.v_pd_sect_h << 16)\ | (((union v_part *)(ptr))->vp_pdinfo.v_pd_sect_l)) #define SET_VP_SANITY(ptr,val) ((union v_part *)(ptr))->vp_sanity.v_sanity_h\ = (ulong)val >> 16;\ ((union v_part *)(ptr))->vp_sanity.v_sanity_l\ = val & 0xffff; #define SET_VP_PD_SECT(ptr,val) ((union v_part *)(ptr))->vp_pdinfo.v_pd_sect_h\ = (ulong)val >> 16;\ ((union v_part *)(ptr))->vp_pdinfo.v_pd_sect_l\ = val &0xffff; struct ivlab { char v_name[10]; /* volume name, blank padded */ char v_flags; /* flags byte -- see below */ char v_fdriver; /* file-driver number */ ushort v_gran; /* volume-gran (bytes) */ ushort v_size_l; /* size (bytes) of volume (low) */ ushort v_size_h; /* size (bytes) of volume (low) */ ushort v_maxfnode; /* max fnode # (0 on UNIX) */ ushort v_stfnode_l; /* start of fnodes (2 in UNIX)(low)*/ ushort v_stfnode_h; /* start of fnodes (2 in UNIX)(high)*/ ushort v_szfnode; /* size of fnode (32 in UNIX) */ ushort v_rfnode; /* root fnode (2 in UNIX) */ ushort v_devgran; /* sector size (bytes) */ ushort v_intl; /* interleave; 0 ==> unknown */ ushort v_trskew; /* track skew; 0 ==> none */ ushort v_sysid; /* OS id for OS that formatted vol. */ char v_sysname[12]; /* OS name (as above), blank filled */ char v_dspecial[8]; /* device-special info (a drtab entry) */ char v_reserved[22]; /* reserved for future use */ ushort v_fsdelta; /* start of root filesystem on boot */ long v_fsofset; /* start of ram filesystem on boot */ long v_ramfsloc; /* location of start of ram disk. */ long v_ramfssiz; /* size of ram file system */ ushort v_filler; union v_part v_prt[4]; /* four partitions */ char v_partno[10]; /* part number for IQC */ }; #define VLAB_SECT 0L /* sector # of volume label on disk */ #define VLAB_START 384 /* byte # of volume label */ #define VLAB_FLOFF 10 /* flags field offset (for boot) */ #define VLAB_FSDOFF 78 /* fsdelta field offset (for boot ) */ #define VLAB_VALID 0xdeadfeeb /* magic number for label sanity */ #define VP_SANITY_IDX 1 /* v_prt index for sanity stuff */ #define VP_PDINFO_IDX 2 /* v_prt index for pdinfo stuff */ /* * Flags byte definitions. */ #define VF_AUTO 0x01 /* 1 ==> byte is valid */ #define VF_DENSITY 0x02 /* 0 = FM, 1 = MFM */ #define VF_SIDES 0x04 /* 1 = double-sided */ #define VF_MINI 0x08 /* 0 = 8", 1 = 5.25" */ #define VF_NOT_FLOPPY 0x10 /* 0 = flop track 0 is 128 SD, 1 = not flop */ /* * Misc. other defintions. */ #define UNIX_FD 6 /* UNIX "file-driver" number; */ /* just to be different from RMX86 */ #define UNIX_SID 0x0040 /* UNIX "system-id" (as above) */