/boot,/mdec,/[T]MSCP (Part 12 of 22)
Steven M. Schultz
sms at wlv.imsd.contel.com
Sat May 18 16:49:14 AEST 1991
Subject: Part 12 of 22 /boot,/mdec,[T]MSCP updates
Index: /sys/<many>, /usr/src/etc/<several> 2.11BSD
Description:
Repeat-By:
Fix:
See part 0 (the README) for the Description, the Reason and
the instructions on how update your system.
This is part 12 of 22
Used the delay() routine instead of the macro to save space.
Partitions were changed for the Fuji160 (RM2X drive type).
For the GENERIC kernel the address of the drive type variable is printed
and a delay of 10 seconds is performed to give time to halt the processor
before accessing the disc.
*** /usr/src/sys/pdpuba/xp.c.old Tue Apr 3 09:48:00 1990
--- /usr/src/sys/pdpuba/xp.c Fri May 10 21:54:44 1991
***************
*** 3,9 ****
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
! * @(#)xp.c 1.1 (2.10BSD Berkeley) 12/1/86
*/
/*
--- 3,9 ----
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
! * @(#)xp.c 1.2 (2.11BSD) 5/4/91
*/
/*
***************
*** 230,239 ****
9600, 0, /* a: cyl 0 - 29 */
9600, 30, /* b: cyl 30 - 59 */
244160, 60, /* c: cyl 60 - 822 */
! 125440, 60, /* d: cyl 60 - 451 */
! 118720, 452, /* e: cyl 452 - 822 */
! 59520, 452, /* f: cyl 452 - 637 */
! 59200, 638, /* g: cyl 638 - 822 */
263360, 0, /* h: cyl 0 - 822 */
}, dv_sizes[8] = { /* Diva Comp V, Ampex 9300 in direct mode */
9405, 0, /* a: cyl 0 - 14 */
--- 230,239 ----
9600, 0, /* a: cyl 0 - 29 */
9600, 30, /* b: cyl 30 - 59 */
244160, 60, /* c: cyl 60 - 822 */
! 164800, 60, /* d: cyl 60 - 574 */
! 79360, 575, /* e: cyl 575 - 822 */
! 39680, 575, /* f: cyl 575 - 698 */
! 39680, 699, /* g: cyl 699 - 822 */
263360, 0, /* h: cyl 0 - 822 */
}, dv_sizes[8] = { /* Diva Comp V, Ampex 9300 in direct mode */
9405, 0, /* a: cyl 0 - 14 */
***************
*** 295,300 ****
--- 295,304 ----
register int i;
register struct hpdevice *xpaddr;
+ #if (PDP11 == GENERIC)
+ printf("\nxp_drive=0%o xp_controller=0%o\n",xp_drive,xp_controller);
+ delay(10000000L); /* 10 secs to halt and patch xp_drive */
+ #endif
for (i = 0; i < NXPC; i++)
if (((xpaddr = xp_controller[i].xp_addr) == 0)
|| (xpattach(xpaddr, i) == 0))
***************
*** 381,390 ****
xpaddr->hpcs1.w = 0;
xpaddr->hpcs2.w = j;
xpaddr->hpcs1.w = HP_GO; /* testing... */
! {
! int x = 6000;
! while (--x); /* delay */
! }
dummy = xpaddr->hpds;
if (xpaddr->hpcs2.w & HPCS2_NED) {
xpaddr->hpcs2.w = HPCS2_CLR;
--- 385,391 ----
xpaddr->hpcs1.w = 0;
xpaddr->hpcs2.w = j;
xpaddr->hpcs1.w = HP_GO; /* testing... */
! delay(6000L);
dummy = xpaddr->hpds;
if (xpaddr->hpcs2.w & HPCS2_NED) {
xpaddr->hpcs2.w = HPCS2_CLR;
***************
*** 1128,1134 ****
}
#endif
/* Emulex controller emulating two RM03's needs a delay */
! DELAY(50000L);
while (xpaddr->hpcs1.w & HP_GO)
continue;
if (xpaddr->hpcs1.w & HP_TRE) {
--- 1129,1135 ----
}
#endif
/* Emulex controller emulating two RM03's needs a delay */
! delay(50000L);
while (xpaddr->hpcs1.w & HP_GO)
continue;
if (xpaddr->hpcs1.w & HP_TRE) {
More information about the Comp.bugs.2bsd
mailing list