home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-09-02 | 45.6 KB | 1,564 lines |
- Newsgroups: comp.bugs.2bsd
- Path: sparky!uunet!europa.asd.contel.com!awds.imsd.contel.com!wlbr!sms
- From: sms@WLV.IIPO.GTEGSC.COM (Steven M. Schultz)
- Subject: MSCP (ra.c) partitioning changes (#78)
- Message-ID: <1992Sep3.040101.26985@wlbr.iipo.gtegsc.com>
- Sender: news@wlbr.iipo.gtegsc.com (news)
- Nntp-Posting-Host: wlv.iipo.gtegsc.com
- Organization: GTE Government Systems
- Date: Thu, 3 Sep 92 04:01:01 GMT
- Lines: 1552
-
- Subject: MSCP (ra.c) partitioning changes (#78)
- Index: pdpuba/ra.c, pdpdist/disktab 2.11BSD
-
- Description:
-
- The number of partition tables in ra.c was getting out of hand
- with the rapidly growing number of MSCP discs available. For
- example the 11/93 now comes with the RZ23L and RZ24L. At 64
- bytes per partition table it would require around 4kb of kernel
- D space to hold the partition tables for the existing MSCP drive
- types - and more are being added all the time.
-
- Repeat-By:
- Observation and personal experience.
-
- Fix:
- Yes, the "real" solution would be to have disk labels (and a
- standalone disk labeling program). Until that day the solution
- is to have 5 "generic" partition types and smarten up ra.c to
- pay more attention to the volume size returned when a drive is
- brought on line.
-
- Small drives (those not having enough room for both a 7mb
- 'a' partition and a 4mb 'b' partition) can be used as datadiscs
- (RD51, RX??) or as standalone boot media, but not as something
- the kernel can be booted from.
-
- The RA82 table was removed. If you have an RA82 (unlikely, but
- possible) it may be necessary to leave the RA82 partition table
- present and add an entry in the compability table (described further
- on).
-
- The five general partition types are:
-
- type partitions (sector range in sectors, size)
- ---- ----------
- 1 a: 0 - 15883 (15884)
- b: 15884 - 24243 (8360)
- c: whole drive
- d: unused
- e: unused
- f: unused
- g: 24244 - end (depends on drive)
- h: unused
-
- This would be used for small discs like the RC25, RD52, etc.
- The RD51 is an oddball - it's too small to have root + swap,
- therefore the RD51 is a type 3 drive.
-
- 2 a: 0-15883 (15884)
- b: 15884 - 32603 (16720)
- c: whole disc
- d: 32604 - 259739 (227136 = 112mb)
- e: 259740 - end (depends on drive)
- f: unused
- g: 32604 - end (depends on drive)
- h: unused
-
- This would be used for drives in the 150mb range such as the
- RD54, RZ24, etc...
-
- 3 a: whole disc
- b: unused
- c: whole disc
- d,e,f,g,h: unused
-
- Used for floppies (or the RD51) where only the whole disc
- is referenced.
-
- 4 a: 0 - 15883 (15884)
- b: 15884 - 32603 (16720)
- c: whole disc
- d: 32604 - 259739 (227136)
- e: 259740 - 669339 (409600 = 200mb)
- f: 669340 - end (depends on drive)
- g: 32604 - end
- h: unused
-
- Used for larger drives such as the RZ25...
-
- 5 a: 0 - 15883 (15884)
- b: 15884 - 32603 (16720)
- c: whole disc
- d: 32604 - 259739 (227136)
- e: 259740 - 669339 (409600)
- f: 669340 - 851803 (182464 = ~88mb)
- g: 32604 - 851803 (819200 = 400mb)
- h: 851804 - end (rest of disc above ~400mb)
-
- Used for all the "big" stuff like the RZ56 and so on.
-
- There is a "compability" table present in the ra.c driver now. If
- you wish to override the selection of one of the 5 generic partition
- tables then simply make an entry in this table and add a partition
- table to the list. The compatibilty table is checked first, before
- assigning a generic partition type.
-
- At present the drives listed in the compability table are the RA60,
- RA80, RD52 and RD53. It is arguable that the RD52 and RD53 should
- have been removed and forced to use the generic tables, the RD52
- is only 30mb and if used at all would be for root, swap and perhaps
- /tmp - a larger disc would be needed for /usr.
-
- The RD54 partition sizes are the same as before, but the partition
- which continues from the end of swap until the end of volume is
- _not_ 'c' now, it is 'g'. ALL that need be done for the RD54
- is to edit /etc/fstab to mount 'ra?g' instead of 'ra?c'.
-
- All of the generic partitions have the standard layout of 'a' being
- the root filesystem, 'b' being swap and 'c' being the whole disc.
-
- The second patch included in this file applies to /sys/pdpdist/disktab.
- All known (except for the RF drives) MSCP drives as of this date
- are listed. The /sys/pdpdist/disktab should be the one which was
- shipped with the system (changes being made to /etc/disktab). If
- you have local modifications to /etc/disktab, you will need to
- merge /sys/pdpdist/disktab into /etc/disktab.
-
- There are both uncommented and commented out entries for the RD52,
- RD53, RA60, RA80 and RA81 in the new disktab file. IF you decide to
- remove a drive from the compability table (and use the new/improved
- partition tables) then remember to reverse the comment status of
- the disktab entry for that drive as well.
-
- Also the "-rqdx2" and "-rqdx3" was removed from the RD5? drive names.
- It never really made any difference (and the RD54 could only be used
- on the RQDX3 anyway) and was a nuisance to remember (4BSD doesn't
- specify the controller type).
-
- ===================================cut here===============================
- *** /sys/pdpuba/ra.c.old Wed Dec 18 01:02:09 1991
- --- /sys/pdpuba/ra.c Sun Jul 12 16:28:41 1992
- ***************
- *** 3,9 ****
- * All rights reserved. The Berkeley software License Agreement
- * specifies the terms and conditions for redistribution.
- *
- ! * @(#)ra.c 2.1 (2.11BSD Berkeley) 9/22/91
- */
-
- /***********************************************************************
- --- 3,9 ----
- * All rights reserved. The Berkeley software License Agreement
- * specifies the terms and conditions for redistribution.
- *
- ! * @(#)ra.c 2.2 (2.11BSD GTE) 7/11/92
- */
-
- /***********************************************************************
- ***************
- *** 14,19 ****
- --- 14,36 ----
-
- /*
- * ra.c - MSCP Driver
- + * Date: Jul 1992
- + * Major rework of the partition tables. Some old (RA60,80,81,RD53) tables
- + * were retained (the rd54 'c' partition is now 'g' but the sizes stay
- + * the same) for compatibility. RC25, RD51, RA82 entries were removed (unlikely
- + * that the RA82 was used since the disktab entry was wrong). A _brand new_
- + * scheme utilizing 5 "generic" partition tables was created based on the
- + * size of the disc. This was needed due to the rapid proliferation of
- + * MSCP drive types, it was simply not feasible to have a 64 byte partition
- + * table for each of the (currently 28 to 30) types of MSCP discs.
- + *
- + * More attention is paid to bits in the media id beyond the 7 bit
- + * numeric id. These bits can be used to distinquish between a RZ24 and a
- + * RZ24L for example.
- + *
- + * Some of the diagnostic output was trimmed in an attempt to offset the
- + * growth of an already large drive.
- + *
- * Date: Dec 18 1991
- * The controller number (bits 6 and 7 of the minor device) were not
- * being masked off after using dkunit(). This caused a crash when
- ***************
- *** 45,57 ****
-
- /*
- * MSCP disk device driver
- - *
- - * Should work with the following (at least!):
- - * RUX1 (RX50, RX33)
- - * RQDX? (RD51, RD52, RD53, RD54)
- - * UDA50 (RA60, RA80, RA81, RA82)
- - * KLESI (RC25)
- - *
- * Tim Tucker, Gould Electronics, Sep 1985
- * Note: This driver is based on the UDA50 4.3 BSD source.
- */
- --- 62,67 ----
- ***************
- *** 78,110 ****
- struct rasizes {
- daddr_t nblocks;
- daddr_t blkoff;
- ! } ra25_sizes[8] = {
- ! 15884, 0, /* A=blk 0 thru 15883 */
- ! 10032, 15884, /* B=blk 15884 thru 25915 */
- ! -1, 25916, /* C=blk 49324 thru 50901 */
- ! 0, 0, /* D=unused */
- ! 0, 0, /* E=unused */
- ! 0, 0, /* F=unused */
- ! 0, 0, /* G=unused */
- ! -1, 0, /* H=blk 0 thru end */
- ! }, rd52_sizes[8] = { /* Setup for RX50, RD51, RD52 and RD53 disks */
- 9700, 0, /* A=blk 0 thru 9699 (root for 52 & 53) */
- 17300, 9700, /* B=blk 9700 thru 26999 (52 & 53 only) */
- 3100, 27000, /* C=blk 27000 thru 30099 (swap 52 & 53) */
- -1, 30100, /* D=blk 30100 thru end (52 & 53 only) */
- - 7460, 0, /* E=blk 0 thru 7459 (root 51) */
- - 2240, 7460, /* F=blk 7460 thru 9699 (swap 51) */
- - -1, 9700, /* G=blk 9700 thru end (51, 52 & 53) */
- - -1, 0, /* H=blk 0 thru end (51, 52, 53 & RX50) */
- - }, rd54_sizes[8] = { /* Setup for RD54 disc */
- - 15884, 0, /* A=blk 0 thru 15883 (root) */
- - 16720, 15884, /* B=blk 15884 thru 32603 (swap) */
- - -1, 32604, /* C=blk 32604 thru end */
- - 0, 0, /* D=unused */
- 0, 0, /* E=unused */
- 0, 0, /* F=unused */
- ! 0, 0, /* G=unused */
- ! -1, 0, /* H=blk 0 thru end */
- }, ra60_sizes[8] = {
- 15884, 0, /* A=blk 0 thru 15883 */
- 33440, 15884, /* B=blk 15884 thru 49323 */
- --- 88,102 ----
- struct rasizes {
- daddr_t nblocks;
- daddr_t blkoff;
- ! } rd52_sizes[8] = { /* Setup for RD52 and RD53 disks */
- 9700, 0, /* A=blk 0 thru 9699 (root for 52 & 53) */
- 17300, 9700, /* B=blk 9700 thru 26999 (52 & 53 only) */
- 3100, 27000, /* C=blk 27000 thru 30099 (swap 52 & 53) */
- -1, 30100, /* D=blk 30100 thru end (52 & 53 only) */
- 0, 0, /* E=unused */
- 0, 0, /* F=unused */
- ! -1, 9700, /* G=blk 9700 thru end (52 & 53) */
- ! -1, 0, /* H=blk 0 thru end (52, 53) */
- }, ra60_sizes[8] = {
- 15884, 0, /* A=blk 0 thru 15883 */
- 33440, 15884, /* B=blk 15884 thru 49323 */
- ***************
- *** 132,148 ****
- -1, 565690, /* F=blk 565690 thru end */
- -1, 242606, /* G=blk 242606 thru end */
- -1, 0, /* H=blk 0 thru end */
- ! }, ra82_sizes[8] ={
- 15884, 0, /* A=blk 0 thru 15883 */
- 16720, 15884, /* B=blk 15884 thru 32603 */
- ! 303710, 32604, /* C=blk 32604 thru 336313 */
- ! 303710, 336314, /* D=blk 336314 thru 640023 */
- ! 303710, 640024, /* E=blk 640024 thru 943733 */
- ! 303710, 943734, /* F=blk 943734 thru 1247443 */
- 0, 0, /* G=unused */
- ! -1, 0, /* H=blk 0 thru end */
- };
-
- #define NRSPL2 3 /* log2 number of response packets */
- #define NCMDL2 3 /* log2 number of command packets */
- #define NRSP (1<<NRSPL2)
- --- 124,201 ----
- -1, 565690, /* F=blk 565690 thru end */
- -1, 242606, /* G=blk 242606 thru end */
- -1, 0, /* H=blk 0 thru end */
- ! }, ra_gen1[8] ={
- 15884, 0, /* A=blk 0 thru 15883 */
- + 8360, 15884, /* B=blk 15884 thru 24243 */
- + -1, 0, /* C=blk 0 thru end */
- + 0, 0, /* D=unused */
- + 0, 0, /* E=unused */
- + 0, 0, /* F=unused */
- + -1, 24244, /* G=blk 24244 thru end */
- + 0, 0, /* H=unused */
- + }, ra_gen2[8] ={
- + 15884, 0, /* A=blk 0 thru 15883 */
- 16720, 15884, /* B=blk 15884 thru 32603 */
- ! -1, 0, /* C=blk 0 thru end */
- ! 227136, 32604, /* D=blk 32604 thru 259739 */
- ! -1, 259740, /* E=blk 259740 thru end */
- ! 0, 0, /* F=unused */
- ! -1, 32604, /* G=32604 thru end */
- ! 0, 0, /* H=unused */
- ! }, ra_gen3[8] ={
- ! -1, 0, /* A=blk 0 thru end */
- ! 0, 0, /* B=unused */
- ! -1, 0, /* C=blk 0 thru end */
- ! 0, 0, /* D=unused */
- ! 0, 0, /* E=unused */
- ! 0, 0, /* F=unused */
- 0, 0, /* G=unused */
- ! 0, 0, /* H=unused */
- ! }, ra_gen4[8] ={
- ! 15884, 0, /* A=blk 0 thru 15883 */
- ! 16720, 15884, /* B=blk 15884 thru 32603 */
- ! -1, 0, /* C=blk 0 thru end */
- ! 227136, 32604, /* D=blk 32604 thru 259739 */
- ! 409600, 259740, /* E=blk 259740 thru 669339 */
- ! -1, 669340, /* F=blk 669340 thru end */
- ! -1, 32604, /* G=blk 32604 thru end */
- ! 0, 0, /* H=unused */
- ! }, ra_gen5[8] ={
- ! 15884, 0, /* A=blk 0 thru 15883 */
- ! 16720, 15884, /* B=blk 15884 thru 32603 */
- ! -1, 0, /* C=blk 0 thru end */
- ! 227136, 32604, /* D=blk 32604 thru 259739 */
- ! 409600, 259740, /* E=blk 259740 thru 669339 */
- ! 182464, 669340, /* F=blk 669340 thru 851803 */
- ! 819200, 32604, /* G=blk 32604 thru 851803 */
- ! -1, 851804, /* H=blk 851804 thru end */
- };
-
- + #define M15(a,b,c) ((((((a - '@') & 0x1f) << 10) | \
- + ((b - '@') & 0x1f) << 5) | \
- + ((c - '@') & 0x1f) << 0))
- +
- + /*
- + * Entries are only placed in this table to over-ride the drive size
- + * based selection of partition tables in radisksetup(). For example:
- + * the RA81 is listed here to keep the "old" partition table rather than
- + * assigning 'ra_gen5' (because the RA81 is > 851804 sectors.
- + */
- +
- + struct MEDIA
- + {
- + short id7;
- + short name15;
- + struct rasizes *parts;
- + } Mscptbl[] = {
- + { 81, M15('R','A','@'), ra81_sizes },
- + { 60, M15('R','A','@'), ra60_sizes },
- + { 80, M15('R','A','@'), ra80_sizes },
- + { 53, M15('R','A','@'), rd52_sizes },
- + { 52, M15('R','A','@'), rd52_sizes },
- + { 0, 0, 0 }
- + };
- +
- #define NRSPL2 3 /* log2 number of response packets */
- #define NCMDL2 3 /* log2 number of command packets */
- #define NRSP (1<<NRSPL2)
- ***************
- *** 238,248 ****
- #define b_qsize b_resid /* queue size per drive, in rqdtab */
-
- /*
- ! * Setup root MSCP device (use standard address 0172150).
- */
- ! raroot()
- {
- ! raattach((radeviceT *)0172150, 0);
- }
-
- /*
- --- 291,311 ----
- #define b_qsize b_resid /* queue size per drive, in rqdtab */
-
- /*
- ! * Setup root MSCP device (use bootcsr passed from ROMs). In the event
- ! * the system was not booted from a MSCP drive but swapdev is a MSCP drive
- ! * we fake the old behaviour of attaching the first (172150) controller. If
- ! * the system was booted from a MSCP drive then this routine has already been
- ! * called with the CSR of the booting controller and the attach routine will
- ! * ignore further calls to attach controller 0.
- ! *
- ! * This whole thing is a hack and should go away somehow.
- */
- ! raroot(csr)
- ! register radeviceT *csr;
- {
- ! if (!csr) /* XXX */
- ! csr = (radeviceT *) 0172150; /* XXX */
- ! raattach(csr, 0);
- }
-
- /*
- ***************
- *** 344,350 ****
- disk->ra_unit = unit;
- disk->ra_dsize = -1L;
- } else {
- ! printf("ra%d: out of disk data structures!\n", unit);
- splx(s);
- return(ENXIO);
- }
- --- 407,413 ----
- disk->ra_unit = unit;
- disk->ra_dsize = -1L;
- } else {
- ! printf("ra%d: no disk structures\n", unit);
- splx(s);
- return(ENXIO);
- }
- ***************
- *** 541,547 ****
- ++sc->sc_ctab.b_active;
- if (sc->RAADDR->rasa & RA_ERR || sc->sc_state != S_RUN) {
- harderr(bp, "ra");
- ! log(LOG_INFO, "rasa %o, state %d\n", sc->RAADDR->rasa,
- sc->sc_state);
- /* Should requeue outstanding requests somehow */
- rainit(sc);
- --- 604,610 ----
- ++sc->sc_ctab.b_active;
- if (sc->RAADDR->rasa & RA_ERR || sc->sc_state != S_RUN) {
- harderr(bp, "ra");
- ! log(LOG_INFO, "rasa %o state %d\n", sc->RAADDR->rasa,
- sc->sc_state);
- /* Should requeue outstanding requests somehow */
- rainit(sc);
- ***************
- *** 569,575 ****
- mp->m_bytecnt, mp->m_buf_h, mp->m_buf_l));
- ((Trl *)mp->m_dscptr)->hsh |= RA_OWN|RA_INT;
- if (sc->RAADDR->rasa & RA_ERR)
- ! printf("ra: Error %d\n", sc->RAADDR->rasa);
- i = sc->RAADDR->raip; /* initiate polling */
-
- #ifdef UCB_METER
- --- 632,638 ----
- mp->m_bytecnt, mp->m_buf_h, mp->m_buf_l));
- ((Trl *)mp->m_dscptr)->hsh |= RA_OWN|RA_INT;
- if (sc->RAADDR->rasa & RA_ERR)
- ! printf("ra: Err %d\n", sc->RAADDR->rasa);
- i = sc->RAADDR->raip; /* initiate polling */
-
- #ifdef UCB_METER
- ***************
- *** 691,698 ****
- break;
-
- default:
- ! printf("ra: interrupt in unknown state %d ignored\n",
- ! sc->sc_state);
- return;
- }
-
- --- 754,760 ----
- break;
-
- default:
- ! printf("raintr: state %d ignored\n", sc->sc_state);
- return;
- }
-
- ***************
- *** 700,706 ****
- * If this happens we are in BIG trouble!
- */
- if (sc->RAADDR->rasa & RA_ERR) {
- ! printf("ra: fatal error (%o)\n", sc->RAADDR->rasa);
- sc->sc_state = S_IDLE;
- sc->sc_ctab.b_active = 0;
- wakeup((caddr_t)&sc->sc_ctab);
- --- 762,768 ----
- * If this happens we are in BIG trouble!
- */
- if (sc->RAADDR->rasa & RA_ERR) {
- ! printf("ra: fatal err %o\n", sc->RAADDR->rasa);
- sc->sc_state = S_IDLE;
- sc->sc_ctab.b_active = 0;
- wakeup((caddr_t)&sc->sc_ctab);
- ***************
- *** 875,881 ****
- switch (mp->m_opcode) {
- case M_O_ONLIN|M_O_END:
- if ((disk = sc->sc_drives[mp->m_unit]) == NULL) {
- ! printf("ra: couldn't ONLINE disk!\n");
- break;
- }
- dp = &disk->ra_dtab;
- --- 937,943 ----
- switch (mp->m_opcode) {
- case M_O_ONLIN|M_O_END:
- if ((disk = sc->sc_drives[mp->m_unit]) == NULL) {
- ! printf("ra: couldn't ONLINE disk\n");
- break;
- }
- dp = &disk->ra_dtab;
- ***************
- *** 922,931 ****
- case M_O_READ | M_O_END:
- case M_O_WRITE | M_O_END:
- /* normal termination of read/write request */
- ! if ((disk = sc->sc_drives[mp->m_unit]) == NULL) {
- ! printf("ra: r/w no disk table entry\n");
- break;
- - }
- bp = (struct buf *)mp->m_cmdref;
-
- /*
- --- 984,991 ----
- case M_O_READ | M_O_END:
- case M_O_WRITE | M_O_END:
- /* normal termination of read/write request */
- ! if ((disk = sc->sc_drives[mp->m_unit]) == NULL)
- break;
- bp = (struct buf *)mp->m_cmdref;
-
- /*
- ***************
- *** 976,982 ****
- break;
-
- default:
- ! log(LOG_INFO,"ra: unknown opcode=0%o\n", mp->m_opcode);
- ra_error((caddr_t)mp);
- }
- }
- --- 1036,1042 ----
- break;
-
- default:
- ! log(LOG_INFO,"ra: opcode %o\n", mp->m_opcode);
- ra_error((caddr_t)mp);
- }
- }
- ***************
- *** 988,1038 ****
- register ra_infoT *disk;
- register struct mscp *mp;
- {
- /* Get unit total block count */
- disk->ra_dsize = mp->m_uslow + ((long)mp->m_ushigh << 16);
- - PRINTD(("ra%d: online, total size=%D, id=%d, rctsize=%d\n",
- - mp->m_unit, disk->ra_dsize, hiint(mp->m_mediaid) & 0xff,
- - mp->m_rctsize));
-
- /*
- ! * Get disk type and from that partition structure. Adjust
- ! * disk size to reflect revector and maint area.
- */
- ! switch (hiint(mp->m_mediaid) & 0xff) {
- ! case 25:/* RC25 removable */
- ! disk->ra_size = ra25_sizes;
- ! break;
- ! case 33:/* RX33 Floppy disk */
- ! case 50:/* RX50 Floppy disk */
- ! disk->ra_size = rd52_sizes;
- ! break;
- ! case 51:
- ! case 52:/* RD Hard disks */
- ! case 53:
- ! disk->ra_size = rd52_sizes;
- ! break;
- ! case 54:
- ! disk->ra_size = rd54_sizes;
- ! break;
- ! case 60:
- ! disk->ra_size = ra60_sizes;
- ! break;
- ! case 80:
- ! disk->ra_size = ra80_sizes;
- ! break;
- ! case 81:
- ! disk->ra_size = ra81_sizes;
- ! break;
- ! case 82:
- ! disk->ra_size = ra82_sizes;
- ! break;
- ! default:
- ! printf("ra: disk type %d unknown\n",
- ! hiint(mp->m_mediaid) & 0xff);
- ! }
- }
-
- /*
- * Process an error log message
- *
- * For now, just log the error on the console. Only minimal decoding is done,
- --- 1048,1129 ----
- register ra_infoT *disk;
- register struct mscp *mp;
- {
- + register struct MEDIA *tp;
- + int nameid, numid, i;
- + daddr_t blks;
- +
- + nameid = (((loint(mp->m_mediaid) & 0x3f) << 9) |
- + ((hiint(mp->m_mediaid) >> 7) & 0x1ff));
- + numid = hiint(mp->m_mediaid) & 0x7f;
- +
- /* Get unit total block count */
- disk->ra_dsize = mp->m_uslow + ((long)mp->m_ushigh << 16);
-
- + /* spill the beans about what we have brought online */
- + log(LOG_NOTICE, "ra%d: %c%c%d%c size=%D id: %X\n", mp->m_unit,
- + mx(nameid,2), mx(nameid,1), numid, mx(nameid,0),
- + disk->ra_dsize, mp->m_mediaid);
- +
- /*
- ! * Look for override in the table, if found use the partition
- ! * table specified. Else use a size based rule for assigning on
- ! * of the 5 general purpose tables.
- */
- !
- ! for (blks = disk->ra_dsize, tp = Mscptbl; tp->id7; tp++)
- ! {
- ! if (tp->id7 == numid && tp->name15 == nameid)
- ! {
- ! disk->ra_size = tp->parts;
- ! log(LOG_NOTICE, "ra%d: old table\n", mp->m_unit);
- ! return;
- ! }
- ! }
- ! if (blks < 24244L)
- ! {
- ! i = 3; /* < ~12mb = type 3 */
- ! disk->ra_size = ra_gen3;
- ! }
- ! else if (blks < 259740L)
- ! {
- ! i = 1; /* < ~112mb = type 1 */
- ! disk->ra_size = ra_gen1;
- ! }
- ! else if (blks < 669340L) /* < ~330mb = type 2 */
- ! {
- ! i = 2;
- ! disk->ra_size = ra_gen2;
- ! }
- ! else if (blks < 851804L) /* < ~420mb = type 4 */
- ! {
- ! i = 4;
- ! disk->ra_size = ra_gen4;
- ! }
- ! else
- ! {
- ! i = 5; /* > ~420mb = type 5 */
- ! disk->ra_size = ra_gen5;
- ! }
- ! log(LOG_NOTICE, "ra%d: type %d partitions\n", mp->m_unit, i);
- }
-
- /*
- + * this is a routine rather than a macro to save space - shifting, etc
- + * generates a lot of code.
- + */
- +
- + mx(l, i)
- + int l, i;
- + {
- + register int c;
- +
- + c = (l >> (5 * i)) & 0x1f;
- + if (c == 0)
- + c = ' ' - '@';
- + return(c + '@');
- + }
- +
- + /*
- * Process an error log message
- *
- * For now, just log the error on the console. Only minimal decoding is done,
- ***************
- *** 1048,1071 ****
-
- switch (mp->me_format) {
- case M_F_CNTERR:
- ! printf("controller");
- break;
- case M_F_BUSADDR:
- ! printf("host memory access addr 0%o", mp->me_busaddr);
- break;
- case M_F_DISKTRN:
- ! printf("disk transfer, unit %d grp 0x%x hdr 0x%x",
- mp->me_unit, mp->me_group, mp->me_hdr);
- break;
- case M_F_SDI:
- ! printf("SDI, unit %d hdr 0x%x", mp->me_unit, mp->me_hdr);
- break;
- case M_F_SMLDSK:
- ! printf("small disk, unit %d cyl %d",
- ! mp->me_unit, mp->me_sdecyl);
- break;
- default:
- ! printf("unknown, unit %d format 0%o",mp->me_unit,mp->me_format);
- }
-
- printf(", event 0%o\n", mp->me_event);
- --- 1139,1161 ----
-
- switch (mp->me_format) {
- case M_F_CNTERR:
- ! printf("ctlr");
- break;
- case M_F_BUSADDR:
- ! printf("M_F_BUSADDR %o", mp->me_busaddr);
- break;
- case M_F_DISKTRN:
- ! printf("disk xfer, unit %d grp x%x hdr x%x",
- mp->me_unit, mp->me_group, mp->me_hdr);
- break;
- case M_F_SDI:
- ! printf("SDI unit %d hdr x%x", mp->me_unit, mp->me_hdr);
- break;
- case M_F_SMLDSK:
- ! printf("small disk unit %d cyl %d", mp->me_unit, mp->me_sdecyl);
- break;
- default:
- ! printf("?, unit %d format %o",mp->me_unit,mp->me_format);
- }
-
- printf(", event 0%o\n", mp->me_event);
- *** /sys/pdpdist/disktab.old Wed Dec 5 19:25:33 1990
- --- /sys/pdpdist/disktab Sun Jul 12 00:04:08 1992
- ***************
- *** 31,50 ****
- # Drives on xp
- #
-
- - # RM02/03:
- - #
- - # File system free list parameters (m/n):
- - # RM02:
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # RM02 11/80 10/80 8/80 8/80 6/80 7/80 6/80 7/80
- - # RM03 16/80 15/80 12/80 12/80 8/80 11/80 8/80 11/80
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # RM02 7/80 5/80 6/80 6/80 5/80
- - # RM03 11/80 7/80 9/80 9/80 7/80
- - #
- rm02|RM02|rm03|RM03|DEC RM02/03:\
- :ty=removable:ns#32:nt#5:nc#823:sf:\
- :b0=/mdec/rm03uboot:\
- --- 31,36 ----
- ***************
- *** 57,72 ****
- :ph#131522:bh#1024:fh#1024:
-
- # RM05:
- - #
- - # File system free list parameters (m/n):
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # RM05 16/304 15/304 12/304 12/304 8/304 11/304 8/304 11/304
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # RM05 11/304 7/304 8/304 8/304 7/304
- - #
- rm05|RM05|cdc9766|CDC9766|9766|DEC RM05, CDC 9766:\
- :ty=removable:ns#32:nt#19:nc#823:sf:\
- :b0=/mdec/rm05uboot:\
- --- 43,48 ----
- ***************
- *** 78,83 ****
- --- 54,60 ----
- :pf#152000:bf#1024:ff#1024:\
- :pg#165826:bg#1024:fg#1024:\
- :ph#500226:bh#1024:fh#1024:
- +
- 9775|CDC 9775:\
- :ty=winchester:ns#32:nt#40:nc#842:sf:\
- :pa#10240:ba#1024:fa#1024:\
- ***************
- *** 90,107 ****
- :ph#1072640:bh#1024:fh#1024:
-
- # EATON BR1537 or 1711 controller. The CSR set looks like an RP03,
- ! # that's about all. m/n are probably wrong for anything except
- ! # 44, 70 and 84.
- #
- - # File system free list parameters (m/n):
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # BR 16/304 15/304 12/304 12/304 7/304 11/304 8/304 11/304
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # BR 11/304 5/304 7/304 7/304 6/304
- - #
- br1538d|BR1538D|EATON 1538D, 1711:\
- :ty=removable:ns#32:nt#19:nc#815:so:\
- :b0=/mdec/bruboot:\
- --- 67,74 ----
- :ph#1072640:bh#1024:fh#1024:
-
- # EATON BR1537 or 1711 controller. The CSR set looks like an RP03,
- ! # that's about all.
- #
- br1538d|BR1538D|EATON 1538D, 1711:\
- :ty=removable:ns#32:nt#19:nc#815:so:\
- :b0=/mdec/bruboot:\
- ***************
- *** 111,127 ****
- :pd#232256:bd#4096:fd#1024:\
- :ph#495520:bh#1024:fh#1024:
-
- - # RP04/05/06:
- - #
- - # File system free list parameters (m/n):
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # RP04/05/06 11/209 10/209 8/209 8/209 6/209 7/209 6/209 7/209
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # RP04/05/06 7/209 5/209 6/209 6/209 5/209
- - #
- rp04|RP04|rp05|RP05|DEC RP04/05:\
- :ty=removable:ns#22:nt#19:nc#411:sf:\
- :b0=/mdec/hpuboot:\
- --- 78,83 ----
- ***************
- *** 129,134 ****
- --- 85,91 ----
- :pb#8778:bb#1024:fb#1024:\
- :pc#153258:bc#1024:fc#1024:\
- :pg#171650:bg#1024:fg#1024:
- +
- rp06|RP06|DEC RP06:\
- :ty=removable:ns#22:nt#19:nc#815:sf:\
- :b0=/mdec/hpuboot:\
- ***************
- *** 139,155 ****
- :pe#322130:be#1024:fe#1024:\
- :pg#171798:bg#1024:fg#1024:\
- :ph#340522:bh#1024:fh#1024:
- ! 160|fuji|fuji160|Fujitsu 160:\
- :ty=winchester:ns#32:nt#10:nc#823:sf:\
- :b0=/mdec/si94uboot:\
- :pa#9600:ba#1024:fa#1024:\
- :pb#9600:bb#1024:fb#1024:\
- :pc#244002:bc#1024:fc#1024:\
- ! :pd#125440:bd#1024:fd#1024:\
- ! :pe#118562:be#1024:fe#1024:\
- ! :pf#59520:bf#1024:ff#1024:\
- ! :pg#59042:bg#1024:fg#1024:\
- :ph#263202:bh#1024:fh#1024:
- diva|DIVA|9300|Diva Comp V, Ampex 9300 (in direct mode):\
- :ty=winchester:ns#33:nt#19:nc#815:sf:\
- :b0=/mdec/dvhpuboot:\
- --- 96,114 ----
- :pe#322130:be#1024:fe#1024:\
- :pg#171798:bg#1024:fg#1024:\
- :ph#340522:bh#1024:fh#1024:
- !
- ! rm2x|160|fuji|fuji160|Fujitsu 160:\
- :ty=winchester:ns#32:nt#10:nc#823:sf:\
- :b0=/mdec/si94uboot:\
- :pa#9600:ba#1024:fa#1024:\
- :pb#9600:bb#1024:fb#1024:\
- :pc#244002:bc#1024:fc#1024:\
- ! :pd#164800:bd#1024:fd#1024:\
- ! :pe#79360:be#1024:fe#1024:\
- ! :pf#39680:bf#1024:ff#1024:\
- ! :pg#39680:bg#1024:fg#1024:\
- :ph#263202:bh#1024:fh#1024:
- +
- diva|DIVA|9300|Diva Comp V, Ampex 9300 (in direct mode):\
- :ty=winchester:ns#33:nt#19:nc#815:sf:\
- :b0=/mdec/dvhpuboot:\
- ***************
- *** 161,166 ****
- --- 120,126 ----
- :pf#156750:bf#1024:ff#1024:\
- :pg#165996:bg#1024:fg#1024:\
- :ph#510846:bh#1024:fh#1024:
- +
- 330|capricorn|Capricorn|Ampex Capricorn:\
- :ty=winchester:ns#32:nt#16:nc#1024:sf:\
- :pa#16384:ba#1024:fa#1024:\
- ***************
- *** 171,176 ****
- --- 131,137 ----
- :pf#107008:bf#1024:ff#1024:\
- :pg#179712:bg#1024:fg#1024:\
- :ph#521728:bh#1024:fh#1024:
- +
- si_eagle|SI_Eagle|2351|2351A|Fujitsu Eagle 2351A (48 sectors):\
- :ty=winchester:ns#48:nt#20:nc#842:rm#3961:sf:\
- :b0=/mdec/si51uboot:\
- ***************
- *** 179,184 ****
- --- 140,146 ----
- :pc#474240:bc#1024:fc#1024:\
- :pd#214080:bd#1024:fd#1024:\
- :ph#803520:bh#1024:fh#1024:
- +
- si9766|si9766|CDC 9766 on SI 9500 controller:\
- :ty=removable:ns#32:nt#19:nc#823:sf:\
- :b0=/mdec/si95uboot:\
- ***************
- *** 191,210 ****
- :pg#162786:bg#1024:fg#1024:\
- :ph#497344:bh#1024:fh#1024:
-
- - #
- - # Disks for rk
- - #
- - # RK06/07:
- - #
- - # File system free list parameters (m/n):
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # RK06/07 8/33 7/33 6/33 6/33 4/33 5/33 4/33 5/33
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # RK06/07 5/33 3/33 4/33 4/33 3/33
- - #
- rk06|RK06|DEC RK06:\
- :ty=removable:ns#22:nt#3:nc#411:sf:\
- :b0=/mdec/hkuboot:\
- --- 153,158 ----
- ***************
- *** 223,265 ****
- :pe#8316:be#1024:fe#1024:\
- :pg#26978:bg#1024:fg#1024:\
- :ph#53642:bh#1024:fh#1024:
- ! #
- ! # Disks for rl
- ! #
- ! # RL01/02:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RL01/2 7/10 6/10 6/10 6/10 4/10 5/10 4/10 5/10
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RL01/2 5/10 3/10 4/10 4/10 3/10
- ! #
- rl01|RL01|DEC RL01:\
- :ty=removable:se#256:ns#40:nt#2:nc#256:\
- :b0=/mdec/rluboot:\
- :ph#20480:bh#1024:fh#1024:
- rl02|RL02|DEC RL02:\
- :ty=removable:se#256:ns#40:nt#2:nc#512:\
- :b0=/mdec/rluboot:\
- :ph#40960:bh#1024:fh#1024:
-
- - #
- - # Disks for rk
- - #
- - # RK05:
- - #
- - # File system free list parameters (m/n):
- - # CPU 23 24 34 40 44 45 53 55
- - # DISK
- - # RK05 4/12 4/12 3/12 3/12 2/12 3/12 2/12 3/12
- - #
- - # CPU 60 70 73 83 84
- - # DISK
- - # RK05 3/12 2/12 2/12 2/12 2/12
- - #
- rk05|RK05|DEC RK05:\
- :ty=removable:ns#12:nt#2:nc#203:bt=rkuboot:\
- :b0=/mdec/rkuboot:\
- --- 171,187 ----
- :pe#8316:be#1024:fe#1024:\
- :pg#26978:bg#1024:fg#1024:\
- :ph#53642:bh#1024:fh#1024:
- !
- rl01|RL01|DEC RL01:\
- :ty=removable:se#256:ns#40:nt#2:nc#256:\
- :b0=/mdec/rluboot:\
- :ph#20480:bh#1024:fh#1024:
- +
- rl02|RL02|DEC RL02:\
- :ty=removable:se#256:ns#40:nt#2:nc#512:\
- :b0=/mdec/rluboot:\
- :ph#40960:bh#1024:fh#1024:
-
- rk05|RK05|DEC RK05:\
- :ty=removable:ns#12:nt#2:nc#203:bt=rkuboot:\
- :b0=/mdec/rkuboot:\
- ***************
- *** 268,286 ****
- #
- # Disks on a UDA50
- #
- !
- ! # RA60:
- #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RA60 21/84 21/84 17/84 17/84 12/84 15/84 12/84 15/84
- #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RA60 15/84 10/84 12/84 12/84 10/84
- ! #
- ! ra60|RA60|DEC RA60 Removable:\
- :ty=removable:ns#42:nt#4:nc#2382:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- --- 190,211 ----
- #
- # Disks on a UDA50
- #
- ! # 7/11/92 - A new and more uniform partitioning scheme is present in the
- ! # MSCP driver. For compatibility reasons the RA60, RA80, RA81, RD52 and
- ! # RD53 old style partitions were kept. RC25 and RD51 drives use the new
- ! # method. In the "complete" (as of this date at least) list added below
- ! # the RA60,80,81,82,RD52,53 entries are commented out. If the new partition
- ! # setup is desired the ra.c driver has a table with entries for the old style
- ! # partition layout, simply delete the line with the drive type and edit this
- ! # file to delete the old entry and uncomment the new one, then reinstall this
- ! # file in /etc. NOTE: the RD54 partition sizes are the _same_ - all that is
- ! # needed is to use the 'g' partition rather than the 'c' partition.
- #
- ! # All NEW partition tables use 'c' as the whole drive now, more in keeping
- ! # with the 4BSD style.
- #
- !
- ! ra60|RA60|DEC RA60 Removable|OLD STYLE PARTITIONS:\
- :ty=removable:ns#42:nt#4:nc#2382:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- ***************
- *** 291,308 ****
- :pg#156570:bg#1024:fg#1024:\
- :ph#399176:bh#1024:fh#1024:
-
- ! # RA80:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RA80 16/217 16/217 13/217 13/217 9/217 11/217 9/217 11/217
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RA80 11/217 7/217 9/217 9/217 7/217
- ! #
- ! ra80|RA80|DEC RA80 Winchester:\
- :ty=winchester:ns#31:nt#14:nc#559:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- --- 216,222 ----
- :pg#156570:bg#1024:fg#1024:\
- :ph#399176:bh#1024:fh#1024:
-
- ! ra80|RA80|DEC RA80 Winchester|OLD STYLE PARTITIONS:\
- :ty=winchester:ns#31:nt#14:nc#559:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- ***************
- *** 310,327 ****
- :pc#186888:bc#1024:fc#1024:\
- :ph#236212:bh#1024:fh#1024:
-
- ! # RA81:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RA81 26/357 26/357 21/357 21/357 14/357 18/357 14/357 17/357
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RA81 18/357 12/357 14/357 14/357 12/357
- ! #
- ! ra81|RA81|DEC RA81 Winchester:\
- :ty=winchester:ns#51:nt#14:nc#1248:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- --- 224,230 ----
- :pc#186888:bc#1024:fc#1024:\
- :ph#236212:bh#1024:fh#1024:
-
- ! ra81|RA81|DEC RA81 Winchester|OLD STYLE PARTITIONS:\
- :ty=winchester:ns#51:nt#14:nc#1248:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- ***************
- *** 332,426 ****
- :pf#324382:bf#1024:ff#1024:\
- :pg#647466:bg#1024:fg#1024:\
- :ph#890072:bh#1024:fh#1024:
- ! ra82|RA82|DEC RA82 Winchester:\
- ! :ty=winchester:ns#58:nt#15:nc#1435:so:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#303710:bc#1024:fc#1024:\
- ! :pd#303710:bd#1024:fd#1024:\
- ! :pe#303710:be#1024:fe#1024:\
- ! :pf#303710:bf#1024:ff#1024:\
- ! :ph#1247450:bh#1024:fh#1024:
- ! #
- ! # Disks on KLESI
- ! #
- ! # RC25:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RC25 15/31 15/31 13/31 13/31 9/31 11/31 9/31 11/31
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RC25 11/31 7/31 9/31 9/31 7/31
- ! #
- ! rc25|RC25:\
- ! :ty=winchester:ns#42:nt#4:nc#302:so:bt=rauboot:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- ! :pb#10032:bb#1024:fb#1024:\
- ! :pc#24884:bc#1024:fc#1024:\
- ! :ph#50800:bh#1024:fh#1024:
- ! #
- ! # Disks on RQDX Q-bus controllers
- ! #
- ! # RX50:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RX50 1/5 1/5 1/5 1/5 1/5 1/5 1/5 1/5
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RX50 1/5 1/5 1/5 1/5 1/5
- ! #
- ! rx50|RX50|DEC RX50 floppy disk unit:\
- ! :ty=removable:ns#10:nt#1:nc#80:\
- ! :b0=/mdec/rauboot:\
- ! :ph#1638:bh#1024:fh#1024:
-
- ! #
- ! # RD51:
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RD51 1/36 1/36 1/36 1/36 1/36 1/36 1/36 1/36
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RD51 1/36 1/36 1/36 1/36 1/36
- ! #
- ! rd51|RD51|DEC RD51:\
- ! :ty=winchester:ns#18:nt#4:nc#300:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#9700:ba#1024:fa#1024:\
- ! :pe#7460:be#1024:fe#1024:\
- ! :pf#2240:bf#1024:ff#1024:\
- ! :pg#11868:bg#1024:fg#1024:\
- ! :ph#21568:bh#1024:fh#1024:
- ! #
- ! # RD52 and RD53:
- ! #
- ! # Note that interleaving factors are determined by controller (RQDX2 or
- ! # RQDX3) rather than disk type. The names in the entries below are
- ! # combined with the controller so that newfs(8) can use the right
- ! # partition sizes and also look up the correct m/n numbers internally.
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RQDX2* 2/36 2/36 2/36 2/36 2/36 2/36 2/36 2/36
- ! # RQDX3* 7/36 7/36 7/36 7/36 7/36 7/36 7/36 7/36
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RQDX2* 2/36 2/36 2/36 2/36 2/36
- ! # RQDX3* 7/36 7/36 7/36 7/36 7/36
- ! #
- ! rd52-rqdx2|RD52-RQDX2|rd52-rqdx3|RD52-RQDX3|DEC RD52:\
- :ty=winchester:ns#18:nt#7:nc#480:so:\
- :b0=/mdec/rauboot:\
- :pa#9700:ba#1024:fa#1024:\
- --- 235,254 ----
- :pf#324382:bf#1024:ff#1024:\
- :pg#647466:bg#1024:fg#1024:\
- :ph#890072:bh#1024:fh#1024:
- !
- ! ra81x|RA81X|Extended DEC RA81 Winchester|OLD STYLE PARTITIONS:\
- ! :ty=winchester:ns#51:nt#14:nc#1815:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- ! :pb#33440:bb#1024:fb#1024:\
- ! :pc#193282:bc#1024:fc#1024:\
- ! :pd#15884:bd#1024:fd#1024:\
- ! :pe#307200:be#1024:fe#1024:\
- ! :pf#728952:bf#1024:ff#1024:\
- ! :pg#1052036:bg#1024:fg#1024:\
- ! :ph#1294642:bh#1024:fh#1024:
-
- ! rd52|RD52|DEC RD52|OLD STYLE PARTITIONS:\
- :ty=winchester:ns#18:nt#7:nc#480:so:\
- :b0=/mdec/rauboot:\
- :pa#9700:ba#1024:fa#1024:\
- ***************
- *** 431,437 ****
- :pf#2240:bf#1024:ff#1024:\
- :pg#50748:bg#1024:fg#1024:\
- :ph#60448:bh#1024:fh#1024:
- ! rd53-rqdx2|RD53-RQDX2|rd53-rqdx3|RD53-RQDX3|DEC RD53:\
- :ty=winchester:ns#18:nt#8:nc#963:so:\
- :b0=/mdec/rauboot:\
- :pa#9700:ba#1024:fa#1024:\
- --- 259,266 ----
- :pf#2240:bf#1024:ff#1024:\
- :pg#50748:bg#1024:fg#1024:\
- :ph#60448:bh#1024:fh#1024:
- !
- ! rd53|RD53||DEC RD53|OLD STYLE PARTITIONS:\
- :ty=winchester:ns#18:nt#8:nc#963:so:\
- :b0=/mdec/rauboot:\
- :pa#9700:ba#1024:fa#1024:\
- ***************
- *** 442,466 ****
- :pf#2240:bf#1024:ff#1024:\
- :pg#128940:bg#1024:fg#1024:\
- :ph#138640:bh#1024:fh#1024:
- ! rd54-rqdx3|RD54-RQDX3|DEC RD54:\
- ! :ty=winchester:ns#17:nt#15:nc#1226:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- :pb#16720:bb#1024:fb#1024:\
- ! :pc#278564:bc#1024:fc#1024:\
- ! :ph#311168:bh#1024:fh#1024:
- ! #
- ! # RX02 floppy disk drives
- ! #
- ! # File system free list parameters (m/n):
- ! # CPU 23 24 34 40 44 45 53 55
- ! # DISK
- ! # RX02 1/7 1/7 1/7 1/7 1/7 1/7 1/7 1/7
- ! #
- ! # CPU 60 70 73 83 84
- ! # DISK
- ! # RX02 1/7 1/7 1/7 1/7 1/7
- ! #
- rx02|RX02|DEC RX02:\
- :ty=removable:se#128/256:ns#26:nt#1:nc#77:\
- :pa#250:ba#1024:fa#1024:\
- --- 271,588 ----
- :pf#2240:bf#1024:ff#1024:\
- :pg#128940:bg#1024:fg#1024:\
- :ph#138640:bh#1024:fh#1024:
- !
- ! rc25|RC25|rcf25|RCF25|DEC RC25 and RC25F:\
- ! :ty=removable:ns#42:nt#4:nc#2382:so:\
- :b0=/mdec/rauboot:\
- :pa#15884:ba#1024:fa#1024:\
- + :pb#8360:bb#1024:fb#1024:\
- + :pc#50902:bc#1024:fc#1024:\
- + :pg#26658:bg#1024:fg#1024:
- +
- + rd31|RD31|DEC RD31:\
- + :ty=winchester:ns#17:nt#4:nc#615:so:\
- + :b0=/mdec/rauboot:\
- + :pa#15884:ba#1024:fa#1024:\
- + :pb#8360:bb#1024:fb#1024:\
- + :pc#41560:bc#1024:fc#1024:\
- + :pg#17316:bg#1024:fg#1024:
- +
- + rd32|RD32|DEC RD32:\
- + :ty=winchester:ns#17:nt#6:nc#820:so:\
- + :b0=/mdec/rauboot:\
- + :pa#15884:ba#1024:fa#1024:\
- + :pb#8360:bb#1024:fb#1024:\
- + :pc#83236:bc#1024:fc#1024:\
- + :pg#58992:bg#1024:fg#1024:
- +
- + rd33|RD33|DEC RD33:\
- + :ty=winchester:ns#17:nt#7:nc#1170:so:\
- + :b0=/mdec/rauboot:\
- + :pa#15884:ba#1024:fa#1024:\
- + :pb#8360:bb#1024:fb#1024:\
- + :pc#138565:bc#1024:fc#1024:\
- + :pg#114321:bg#1024:fg#1024:
- +
- + rd51|RD51|DEC RD51:\
- + :ty=winchester:ns#18:nt#4:nc#300:so:\
- + :b0=/mdec/rauboot:\
- + :pa#15884:ba#1024:fa#1024:\
- + :pb#5716:bb#1024:fb#1024:\
- + :pc#21600:bc#1024:fc#1024:
- +
- + # rd52|RD52|DEC RD52|NEW STYLE PARTITIONS:\
- + # :ty=winchester:ns#18:nt#7:nc#480:so:\
- + # :b0=/mdec/rauboot:\
- + # :pa#15884:ba#1024:fa#1024:\
- + # :pb#8360:bb#1024:fb#1024:\
- + # :pc#60480:bc#1024:fc#1024:\
- + # :pg#36236:bg#1024:fg#1024:
- +
- + # rd53|RD53|DEC RD53|NEW STYLE PARTITIONS:\
- + # :ty=winchester:ns#17:nt#8:nc#1024:so:\
- + # :b0=/mdec/rauboot:\
- + # :pa#15884:ba#1024:fa#1024:\
- + # :pb#8360:bb#1024:fb#1024:\
- + # :pc#138672:bc#1024:fc#1024:\
- + # :pg#114428:bg#1024:fg#1024:\
- +
- + rd54|RD54|DEC RD54:\
- + :ty=winchester:ns#17:nt#15:nc#1221:so:\
- + :b0=/mdec/rauboot:\
- + :pa#15884:ba#1024:fa#1024:\
- :pb#16720:bb#1024:fb#1024:\
- ! :pc#311200:bc#1024:fc#1024:\
- ! :pg#278596:bg#1024:fg#1024:
- !
- ! rx23|RX23|DEC RX23:\
- ! :ty=removable:ns#18:nt#2:nc#80:\
- ! :b0=/mdec/rauboot:\
- ! :pa#2880:ba#1024:fa#512:\
- ! :pc#2880:bc#1024:fc#512:
- !
- ! rx26|RX26|DEC RX26:\
- ! :ty=removable:ns#36:nt#2:nc#80:\
- ! :b0=/mdec/rauboot:\
- ! :pa#5760:ba#1024:fa#512:\
- ! :pc#5760:bc#1024:fc#512:
- !
- ! rx33|RX33|DEC RX33:\
- ! :ty=removable:ns#15:nt#2:nc#80:\
- ! :b0=/mdec/rauboot:\
- ! :pa#2400:ba#1024:fa#512:\
- ! :pc#2400:bc#1024:fc#512:
- !
- ! rx50|RX50|DEC RX50:\
- ! :ty=removable:ns#10:nt#1:nc#80:\
- ! :b0=/mdec/rauboot:\
- ! :pa#800:ba#1024:fa#512:\
- ! :pc#800:bc#1024:fc#512:
- !
- ! # ra60|RA60|DEC RA60|NEW STYLE PARTITIONS:\
- ! # :ty=removable:ns#42:nt#4:nc#2382:so:\
- ! # :b0=/mdec/rauboot:\
- ! # :pa#15884:ba#1024:fa#1024:\
- ! # :pb#16720:bb#1024:fb#1024:\
- ! # :pc#400176:bc#1024:fc#1024:\
- ! # :pd#245048:bd#1024:fd#1024:\
- ! # :pe#122524:be#1024:fe#1024:\
- ! # :pg#367572:bg#1024:fg#1024:\
- !
- ! ra70|RA70|DEC RA70:\
- ! :ty=winchester:ns#33:nt#11:nc#1507:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#547041:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#287301:be#1024:fe#1024:\
- ! :pg#514437:bg#1024:fg#1024:
- !
- ! ra71|RA71|DEC RA71:\
- ! :ty=winchester:ns#51:nt#14:nc#1915:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#1367310:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#515506:bh#1024:fh#1024:
- !
- ! ra72|RA72|DEC RA72:\
- ! :ty=winchester:ns#51:nt#20:nc#1915:so:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :b0=/mdec/rauboot:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#1953300:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#1101496:bh#1024:fh#1024:
- !
- ! ra73|RA73|DEC RA73:\
- ! :ty=winchester:ns#70:nt#21:nc#2667:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#3920490:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#3068686:bh#1024:fh#1024:
- !
- ! # ra80|RA80|DEC RA80|NEW STYLE PARTITIONS:\
- ! # :ty=winchester:ns#31:nt#14:nc#546:so:\
- ! # :b0=/mdec/rauboot:\
- ! # :pa#15884:ba#1024:fa#1024:\
- ! # :pb#16720:bb#1024:fb#1024:\
- ! # :pc#237212:bc#1024:fc#1024:\
- ! # :pg#204608:bg#1024:fg#1024:
- !
- ! # ra81|RA81|DEC RA81|NEW STYLE PARTITIONS:\
- ! # :ty=winchester:ns#51:nt#14:nc#1248:so:\
- ! # :b0=/mdec/rauboot:\
- ! # :pa#15884:ba#1024:fa#1024:\
- ! # :pb#16720:bb#1024:fb#1024:\
- ! # :pc#891072:bc#1024:fc#1024:\
- ! # :pd#227136:bd#1024:fd#1024:\
- ! # :pe#409600:be#1024:fe#1024:\
- ! # :pf#182464:bf#1024:ff#1024:\
- ! # :pg#819200:bg#1024:fg#1024:\
- ! # :ph#39268:bh#1024:fh#1024:
- !
- ! ra82|RA82|DEC RA82:\
- ! :ty=winchester:ns#57:nt#15:nc#1423:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#1216665:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#364861:bh#1024:fh#1024:
- !
- ! ra90|RA90|DEC RA90:\
- ! :ty=winchester:ns#69:nt#13:nc#2649:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#2376153:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#1524349:bh#1024:fh#1024:
- !
- ! ra92|RA92|DEC RA92:\
- ! :ty=winchester:ns#69:nt#13:nc#3279:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#2940951:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#2089147:bh#1024:fh#1024:
- !
- ! rz22|RZ22|DEC RZ22:\
- ! :ty=winchester:ns#33:nt#4:nc#776:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#8360:bb#1024:fb#1024:\
- ! :pc#102432:bc#1024:fc#1024:\
- ! :pg#78188:bg#1024:fg#1024:
- !
- ! rz23|RZ23|DEC RZ23:\
- ! :ty=winchester:ns#33:nt#8:nc#776:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#8360:bb#1024:fb#1024:\
- ! :pc#204864:bc#1024:fc#1024:\
- ! :pg#180620:bg#1024:fg#1024:\
- !
- ! rz23l|RZ23L|DEC RZ23L:\
- ! :ty=winchester:ns#39:nt#4:nc#1524:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#8360:bb#1024:fb#1024:\
- ! :pc#237588:bc#1024:fc#1024:\
- ! :pg#213344:bg#1024:fg#1024:\
- !
- ! rz24|RZ24|DEC RZ24:\
- ! :ty=winchester:ns#38:nt#8:nc#1348:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#409792:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#150052:be#1024:fe#1024:\
- ! :pg#377188:bg#1024:fg#1024:
- !
- ! rz24l|RZ24L|DEC RZ24L:\
- ! :ty=winchester:ns#65:nt#4:nc#1818:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#479350:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#219610:be#1024:fe#1024:\
- ! :pg#446746:bg#1024:fg#1024:
- !
- ! rz25|RZ25|DEC RZ25:\
- ! :ty=winchester:ns#62:nt#9:nc#1476:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#832527:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#130590:bf#1024:ff#1024:\
- ! :pg#799923:bg#1024:fg#1024:
- !
- ! rz26|RZ26|DEC RZ26:\
- ! :ty=winchester:ns#57:nt#14:nc#2570:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#2050860:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#1199056:bh#1024:fh#1024:
- !
- ! rz55|RZ55|DEC RZ55:\
- ! :ty=winchester:ns#36:nt#15:nc#1224:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#649040:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#389300:be#1024:fe#1024:\
- ! :pg#616436:bg#1024:fg#1024:
- !
- ! rz56|RZ56|DEC RZ56:\
- ! :ty=winchester:ns#54:nt#15:nc#1632:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#1299174:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#447370:bh#1024:fh#1024:
- !
- ! rz57|RZ57|DEC RZ57:\
- ! :ty=winchester:ns#71:nt#15:nc#1854:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16720:bb#1024:fb#1024:\
- ! :pc#1954050:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#1102246:bh#1024:fh#1024:
- !
- ! rz58|RZ58|DEC RZ58:\
- ! :ty=winchester:ns#85:nt#15:nc#2112:so:\
- ! :b0=/mdec/rauboot:\
- ! :pa#15884:ba#1024:fa#1024:\
- ! :pb#16270:bb#1024:fb#1024:\
- ! :pc#2698061:bc#1024:fc#1024:\
- ! :pd#227136:bd#1024:fd#1024:\
- ! :pe#409600:be#1024:fe#1024:\
- ! :pf#182464:bf#1024:ff#1024:\
- ! :pg#819200:bg#1024:fg#1024:\
- ! :ph#1846257:bh#1024:fh#1024:
- rx02|RX02|DEC RX02:\
- :ty=removable:se#128/256:ns#26:nt#1:nc#77:\
- :pa#250:ba#1024:fa#1024:\
-