mirror of
https://github.com/rcornwell/sims.git
synced 2026-01-19 17:38:13 +00:00
KA10: Fixes to get Tops 10 to boot on KI10.
Removed some debuging code. Fixed Cylinder end flag on RP10 controller. Appearently TOPS10 on KA10 does not care about this flag, but on KI10 it looks at the flag to determine if the read was correct.
This commit is contained in:
parent
cd8849128c
commit
4d5ee8b08f
@ -3792,7 +3792,7 @@ if (val < MEMSIZE) {
|
||||
}
|
||||
for (i = MEMSIZE; i < val; i++)
|
||||
M[i] = 0;
|
||||
MEMSIZE = val;
|
||||
cpu_unit.capac = val;
|
||||
return SCPE_OK;
|
||||
}
|
||||
|
||||
|
||||
@ -55,8 +55,7 @@
|
||||
#endif
|
||||
|
||||
#ifndef KI_22BIT
|
||||
//#define KI_22BIT KI|KL
|
||||
#define KI_22BIT 0
|
||||
#define KI_22BIT KI|KL
|
||||
#endif
|
||||
|
||||
/* Digital Equipment Corporation's 36b family had six implementations:
|
||||
@ -203,7 +202,7 @@ extern DEBTAB crd_debug[];
|
||||
|
||||
#define CTY_SWITCH 030
|
||||
|
||||
#if KI_22BIT
|
||||
#if KI_22BIT|KI
|
||||
#define MAXMEMSIZE 4096 * 1024
|
||||
#else
|
||||
#define MAXMEMSIZE 256 * 1024
|
||||
|
||||
@ -545,33 +545,28 @@ t_stat dp_svc (UNIT *uptr)
|
||||
if (uptr->STATUS & END_CYL) {
|
||||
uptr->UFLAGS |= DONE;
|
||||
df10_finish_op(df10, 0);
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
return SCPE_OK;
|
||||
}
|
||||
if (sect >= dp_drv_tab[dtype].sect) {
|
||||
uptr->UFLAGS |= DONE;
|
||||
uptr->STATUS |= SEC_ERR;
|
||||
df10_finish_op(df10, 0);
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
return SCPE_OK;
|
||||
}
|
||||
if (surf >= dp_drv_tab[dtype].surf) {
|
||||
uptr->UFLAGS |= DONE;
|
||||
uptr->STATUS |= SUF_ERR;
|
||||
df10_finish_op(df10, 0);
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
return SCPE_OK;
|
||||
}
|
||||
if (cyl != uptr->CUR_CYL) {
|
||||
uptr->UFLAGS |= DONE;
|
||||
uptr->STATUS |= SRC_ERR;
|
||||
df10_finish_op(df10, 0);
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
return SCPE_OK;
|
||||
}
|
||||
if ((uptr->STATUS & BUSY) == 0) {
|
||||
df10_finish_op(df10, 0);
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
return SCPE_OK;
|
||||
}
|
||||
if (cmd != WR) {
|
||||
@ -654,9 +649,9 @@ t_stat dp_svc (UNIT *uptr)
|
||||
if (r)
|
||||
sim_activate(uptr, 25);
|
||||
else {
|
||||
sim_debug(DEBUG_DATA, dptr, "DP %03o DFS %012llo %06o %06o\n", ctlr, M[df10->cia|1], df10->ccw, df10->cda);
|
||||
uptr->STATUS &= ~(SRC_DONE|BUSY);
|
||||
uptr->STATUS &= ~(SRC_DONE|END_CYL|BUSY);
|
||||
uptr->UFLAGS |= DONE;
|
||||
return SCPE_OK;
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user