Cleanup based on reports from Michael Bloom
This commit is contained in:
parent
3049f16af2
commit
0270d0ea0d
7 changed files with 31 additions and 42 deletions
|
@ -1151,9 +1151,9 @@ if (uptr == NULL)
|
||||||
if ((uptr->flags & UNIT_ATT) == 0)
|
if ((uptr->flags & UNIT_ATT) == 0)
|
||||||
return SCPE_UNATT;
|
return SCPE_UNATT;
|
||||||
dptr = find_dev_from_unit (uptr);
|
dptr = find_dev_from_unit (uptr);
|
||||||
u = uptr - dptr->units;
|
|
||||||
if (dptr == NULL)
|
if (dptr == NULL)
|
||||||
return SCPE_IERR;
|
return SCPE_IERR;
|
||||||
|
u = uptr - dptr->units;
|
||||||
|
|
||||||
dtyp = GET_DTYPE (uptr->flags);
|
dtyp = GET_DTYPE (uptr->flags);
|
||||||
if ((dtyp == TYPE_7320) || (dtyp == TYPE_1301))
|
if ((dtyp == TYPE_7320) || (dtyp == TYPE_1301))
|
||||||
|
|
|
@ -1132,7 +1132,6 @@ t_stat xq_process_setup(CTLR* xq)
|
||||||
int i,j;
|
int i,j;
|
||||||
int count = 0;
|
int count = 0;
|
||||||
float secs;
|
float secs;
|
||||||
t_stat status;
|
|
||||||
uint32 saved_debug = xq->dev->dctrl;
|
uint32 saved_debug = xq->dev->dctrl;
|
||||||
ETH_MAC zeros = {0, 0, 0, 0, 0, 0};
|
ETH_MAC zeros = {0, 0, 0, 0, 0, 0};
|
||||||
ETH_MAC filters[XQ_FILTER_MAX + 1];
|
ETH_MAC filters[XQ_FILTER_MAX + 1];
|
||||||
|
@ -1225,11 +1224,11 @@ t_stat xq_process_setup(CTLR* xq)
|
||||||
for (i = 0; i < XQ_FILTER_MAX; i++)
|
for (i = 0; i < XQ_FILTER_MAX; i++)
|
||||||
if (memcmp(zeros, &xq->var->setup.macs[i], sizeof(ETH_MAC)))
|
if (memcmp(zeros, &xq->var->setup.macs[i], sizeof(ETH_MAC)))
|
||||||
memcpy (filters[count++], xq->var->setup.macs[i], sizeof(ETH_MAC));
|
memcpy (filters[count++], xq->var->setup.macs[i], sizeof(ETH_MAC));
|
||||||
status = eth_filter (xq->var->etherface, count, filters, xq->var->setup.multicast, xq->var->setup.promiscuous);
|
eth_filter (xq->var->etherface, count, filters, xq->var->setup.multicast, xq->var->setup.promiscuous);
|
||||||
|
|
||||||
/* process MOP information */
|
/* process MOP information */
|
||||||
if (xq->var->write_buffer.msg[0])
|
if (xq->var->write_buffer.msg[0])
|
||||||
status = xq_process_mop(xq);
|
xq_process_mop(xq);
|
||||||
|
|
||||||
/* mark setup block valid */
|
/* mark setup block valid */
|
||||||
xq->var->setup.valid = 1;
|
xq->var->setup.valid = 1;
|
||||||
|
@ -1366,7 +1365,6 @@ t_stat xq_dispatch_rbdl(CTLR* xq)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
int32 rstatus, wstatus;
|
int32 rstatus, wstatus;
|
||||||
t_stat status;
|
|
||||||
|
|
||||||
sim_debug(DBG_TRC, xq->dev, "xq_dispatch_rbdl()\n");
|
sim_debug(DBG_TRC, xq->dev, "xq_dispatch_rbdl()\n");
|
||||||
|
|
||||||
|
@ -1394,7 +1392,7 @@ t_stat xq_dispatch_rbdl(CTLR* xq)
|
||||||
|
|
||||||
/* process any waiting packets in receive queue */
|
/* process any waiting packets in receive queue */
|
||||||
if (xq->var->ReadQ.count)
|
if (xq->var->ReadQ.count)
|
||||||
status = xq_process_rbdl(xq);
|
xq_process_rbdl(xq);
|
||||||
|
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
}
|
}
|
||||||
|
@ -2250,7 +2248,6 @@ t_stat xq_wr_icr(CTLR* xq, int32 data)
|
||||||
|
|
||||||
t_stat xq_wr(int32 data, int32 PA, int32 access)
|
t_stat xq_wr(int32 data, int32 PA, int32 access)
|
||||||
{
|
{
|
||||||
t_stat status;
|
|
||||||
CTLR* xq = xq_pa2ctlr(PA);
|
CTLR* xq = xq_pa2ctlr(PA);
|
||||||
int index = (PA >> 1) & 07; /* word index */
|
int index = (PA >> 1) & 07; /* word index */
|
||||||
|
|
||||||
|
@ -2266,19 +2263,19 @@ t_stat xq_wr(int32 data, int32 PA, int32 access)
|
||||||
xq->var->iba = (xq->var->iba & 0xFFFF) | ((data & 0xFFFF) << 16);
|
xq->var->iba = (xq->var->iba & 0xFFFF) | ((data & 0xFFFF) << 16);
|
||||||
break;
|
break;
|
||||||
case 2: /* ICR */
|
case 2: /* ICR */
|
||||||
status = xq_wr_icr(xq, data);
|
xq_wr_icr(xq, data);
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
break;
|
break;
|
||||||
case 4: /* SRQR */
|
case 4: /* SRQR */
|
||||||
status = xq_wr_srqr(xq, data);
|
xq_wr_srqr(xq, data);
|
||||||
break;
|
break;
|
||||||
case 5:
|
case 5:
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
break;
|
break;
|
||||||
case 7: /* ARQR */
|
case 7: /* ARQR */
|
||||||
status = xq_wr_arqr(xq, data);
|
xq_wr_arqr(xq, data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -2304,20 +2301,20 @@ t_stat xq_wr(int32 data, int32 PA, int32 access)
|
||||||
break;
|
break;
|
||||||
case 3: /* receive bdl high bits */
|
case 3: /* receive bdl high bits */
|
||||||
xq->var->rbdl[1] = data;
|
xq->var->rbdl[1] = data;
|
||||||
status = xq_dispatch_rbdl(xq); /* start receive operation */
|
xq_dispatch_rbdl(xq); /* start receive operation */
|
||||||
break;
|
break;
|
||||||
case 4: /* transmit bdl low bits */
|
case 4: /* transmit bdl low bits */
|
||||||
xq->var->xbdl[0] = data;
|
xq->var->xbdl[0] = data;
|
||||||
break;
|
break;
|
||||||
case 5: /* transmit bdl high bits */
|
case 5: /* transmit bdl high bits */
|
||||||
xq->var->xbdl[1] = data;
|
xq->var->xbdl[1] = data;
|
||||||
status = xq_dispatch_xbdl(xq); /* start transmit operation */
|
xq_dispatch_xbdl(xq); /* start transmit operation */
|
||||||
break;
|
break;
|
||||||
case 6: /* vector address register */
|
case 6: /* vector address register */
|
||||||
status = xq_wr_var(xq, data);
|
xq_wr_var(xq, data);
|
||||||
break;
|
break;
|
||||||
case 7: /* control and status register */
|
case 7: /* control and status register */
|
||||||
status = xq_wr_csr(xq, data);
|
xq_wr_csr(xq, data);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -553,7 +553,6 @@ t_stat xu_system_id (CTLR* xu, const ETH_MAC dest, uint16 receipt_id)
|
||||||
t_stat xu_svc(UNIT* uptr)
|
t_stat xu_svc(UNIT* uptr)
|
||||||
{
|
{
|
||||||
int queue_size;
|
int queue_size;
|
||||||
t_stat status;
|
|
||||||
CTLR* xu = xu_unit2ctlr(uptr);
|
CTLR* xu = xu_unit2ctlr(uptr);
|
||||||
const ETH_MAC mop_multicast = {0xAB, 0x00, 0x00, 0x02, 0x00, 0x00};
|
const ETH_MAC mop_multicast = {0xAB, 0x00, 0x00, 0x02, 0x00, 0x00};
|
||||||
const int one_second = clk_tps * tmr_poll;
|
const int one_second = clk_tps * tmr_poll;
|
||||||
|
@ -568,7 +567,7 @@ t_stat xu_svc(UNIT* uptr)
|
||||||
{
|
{
|
||||||
queue_size = xu->var->ReadQ.count;
|
queue_size = xu->var->ReadQ.count;
|
||||||
/* read a packet from the ethernet - processing is via the callback */
|
/* read a packet from the ethernet - processing is via the callback */
|
||||||
status = eth_read (xu->var->etherface, &xu->var->read_buffer, xu->var->rcallback);
|
eth_read (xu->var->etherface, &xu->var->read_buffer, xu->var->rcallback);
|
||||||
} while (queue_size != xu->var->ReadQ.count);
|
} while (queue_size != xu->var->ReadQ.count);
|
||||||
|
|
||||||
/* Now pump any still queued packets into the system */
|
/* Now pump any still queued packets into the system */
|
||||||
|
@ -578,7 +577,7 @@ t_stat xu_svc(UNIT* uptr)
|
||||||
/* send identity packet when timer expires */
|
/* send identity packet when timer expires */
|
||||||
if (--xu->var->idtmr <= 0) {
|
if (--xu->var->idtmr <= 0) {
|
||||||
if ((xu->var->mode & MODE_DMNT) == 0) /* if maint msg is not disabled */
|
if ((xu->var->mode & MODE_DMNT) == 0) /* if maint msg is not disabled */
|
||||||
status = xu_system_id(xu, mop_multicast, 0); /* then send ID packet */
|
xu_system_id(xu, mop_multicast, 0); /* then send ID packet */
|
||||||
xu->var->idtmr = XU_ID_TIMER_VAL * one_second; /* reset timer */
|
xu->var->idtmr = XU_ID_TIMER_VAL * one_second; /* reset timer */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -627,7 +626,6 @@ void xu_setclrint(CTLR* xu, int32 bits)
|
||||||
|
|
||||||
t_stat xu_sw_reset (CTLR* xu)
|
t_stat xu_sw_reset (CTLR* xu)
|
||||||
{
|
{
|
||||||
t_stat status;
|
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
sim_debug(DBG_TRC, xu->dev, "xu_sw_reset()\n");
|
sim_debug(DBG_TRC, xu->dev, "xu_sw_reset()\n");
|
||||||
|
@ -668,9 +666,9 @@ t_stat xu_sw_reset (CTLR* xu)
|
||||||
xu->var->setup.macs[1][i] = 0xff; /* Broadcast Address */
|
xu->var->setup.macs[1][i] = 0xff; /* Broadcast Address */
|
||||||
xu->var->setup.mac_count = 2;
|
xu->var->setup.mac_count = 2;
|
||||||
if (xu->var->etherface)
|
if (xu->var->etherface)
|
||||||
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
||||||
xu->var->setup.macs, xu->var->setup.multicast,
|
xu->var->setup.macs, xu->var->setup.multicast,
|
||||||
xu->var->setup.promiscuous);
|
xu->var->setup.promiscuous);
|
||||||
|
|
||||||
/* activate device if not disabled */
|
/* activate device if not disabled */
|
||||||
if ((xu->dev->flags & DEV_DIS) == 0) {
|
if ((xu->dev->flags & DEV_DIS) == 0) {
|
||||||
|
@ -708,7 +706,7 @@ int32 xu_command(CTLR* xu)
|
||||||
uint32 udbb;
|
uint32 udbb;
|
||||||
int fnc, mtlen, i, j;
|
int fnc, mtlen, i, j;
|
||||||
uint16 value, pltlen;
|
uint16 value, pltlen;
|
||||||
t_stat status, rstatus, wstatus, wstatus2, wstatus3;
|
t_stat rstatus, wstatus, wstatus2, wstatus3;
|
||||||
struct xu_stats* stats = &xu->var->stats;
|
struct xu_stats* stats = &xu->var->stats;
|
||||||
uint16* udb = xu->var->udb;
|
uint16* udb = xu->var->udb;
|
||||||
uint16* mac_w = (uint16*) xu->var->mac;
|
uint16* mac_w = (uint16*) xu->var->mac;
|
||||||
|
@ -795,9 +793,9 @@ int32 xu_command(CTLR* xu)
|
||||||
rstatus = Map_ReadB(udbb, mtlen * 6, (uint8*) &xu->var->setup.macs[2]);
|
rstatus = Map_ReadB(udbb, mtlen * 6, (uint8*) &xu->var->setup.macs[2]);
|
||||||
if (rstatus == 0) {
|
if (rstatus == 0) {
|
||||||
xu->var->setup.mac_count = mtlen + 2;
|
xu->var->setup.mac_count = mtlen + 2;
|
||||||
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
||||||
xu->var->setup.macs, xu->var->setup.multicast,
|
xu->var->setup.macs, xu->var->setup.multicast,
|
||||||
xu->var->setup.promiscuous);
|
xu->var->setup.promiscuous);
|
||||||
} else {
|
} else {
|
||||||
xu->var->pcsr0 |= PCSR0_PCEI;
|
xu->var->pcsr0 |= PCSR0_PCEI;
|
||||||
}
|
}
|
||||||
|
@ -922,9 +920,9 @@ int32 xu_command(CTLR* xu)
|
||||||
|
|
||||||
/* if promiscuous or multicast flags changed, change filter */
|
/* if promiscuous or multicast flags changed, change filter */
|
||||||
if ((value ^ xu->var->mode) & (MODE_PROM | MODE_ENAL))
|
if ((value ^ xu->var->mode) & (MODE_PROM | MODE_ENAL))
|
||||||
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
|
||||||
xu->var->setup.macs, xu->var->setup.multicast,
|
xu->var->setup.macs, xu->var->setup.multicast,
|
||||||
xu->var->setup.promiscuous);
|
xu->var->setup.promiscuous);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FC_RSTAT: /* read extended status */
|
case FC_RSTAT: /* read extended status */
|
||||||
|
@ -1339,7 +1337,6 @@ void xu_port_command (CTLR* xu)
|
||||||
char* msg;
|
char* msg;
|
||||||
int command = xu->var->pcsr0 & PCSR0_PCMD;
|
int command = xu->var->pcsr0 & PCSR0_PCMD;
|
||||||
int state = xu->var->pcsr1 & PCSR1_STATE;
|
int state = xu->var->pcsr1 & PCSR1_STATE;
|
||||||
int bits;
|
|
||||||
static char* commands[] = {
|
static char* commands[] = {
|
||||||
"NO-OP",
|
"NO-OP",
|
||||||
"GET PCBB",
|
"GET PCBB",
|
||||||
|
@ -1368,7 +1365,7 @@ void xu_port_command (CTLR* xu)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CMD_GETCMD: /* GET COMMAND */
|
case CMD_GETCMD: /* GET COMMAND */
|
||||||
bits = xu_command(xu);
|
xu_command(xu);
|
||||||
xu->var->pcsr0 |= PCSR0_DNI;
|
xu->var->pcsr0 |= PCSR0_DNI;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -1606,12 +1603,11 @@ t_stat xu_attach(UNIT* uptr, char* cptr)
|
||||||
|
|
||||||
t_stat xu_detach(UNIT* uptr)
|
t_stat xu_detach(UNIT* uptr)
|
||||||
{
|
{
|
||||||
t_stat status;
|
|
||||||
CTLR* xu = xu_unit2ctlr(uptr);
|
CTLR* xu = xu_unit2ctlr(uptr);
|
||||||
sim_debug(DBG_TRC, xu->dev, "xu_detach()\n");
|
sim_debug(DBG_TRC, xu->dev, "xu_detach()\n");
|
||||||
|
|
||||||
if (uptr->flags & UNIT_ATT) {
|
if (uptr->flags & UNIT_ATT) {
|
||||||
status = eth_close (xu->var->etherface);
|
eth_close (xu->var->etherface);
|
||||||
free(xu->var->etherface);
|
free(xu->var->etherface);
|
||||||
xu->var->etherface = 0;
|
xu->var->etherface = 0;
|
||||||
free(uptr->filename);
|
free(uptr->filename);
|
||||||
|
|
|
@ -2132,7 +2132,7 @@ if (usmd && (sw & SWMASK ('V'))) {
|
||||||
addr = RelocXVM (addr, REL_C);
|
addr = RelocXVM (addr, REL_C);
|
||||||
else if (RELOC)
|
else if (RELOC)
|
||||||
addr = Reloc15 (addr, REL_C);
|
addr = Reloc15 (addr, REL_C);
|
||||||
if ((int32) addr < 0)
|
if (((int32)addr) < 0)
|
||||||
return STOP_MME;
|
return STOP_MME;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -2153,7 +2153,7 @@ if (usmd && (sw & SWMASK ('V'))) {
|
||||||
addr = RelocXVM (addr, REL_C);
|
addr = RelocXVM (addr, REL_C);
|
||||||
else if (RELOC)
|
else if (RELOC)
|
||||||
addr = Reloc15 (addr, REL_C);
|
addr = Reloc15 (addr, REL_C);
|
||||||
if ((int32) addr < 0)
|
if (((int32)addr) < 0)
|
||||||
return STOP_MME;
|
return STOP_MME;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
2
scp.c
2
scp.c
|
@ -3991,8 +3991,6 @@ if (!initialized) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (prompt) { /* interactive? */
|
if (prompt) { /* interactive? */
|
||||||
char *tmpc;
|
|
||||||
|
|
||||||
if (p_readline) {
|
if (p_readline) {
|
||||||
char *tmpc = p_readline (prompt); /* get cmd line */
|
char *tmpc = p_readline (prompt); /* get cmd line */
|
||||||
if (tmpc == NULL) /* bad result? */
|
if (tmpc == NULL) /* bad result? */
|
||||||
|
|
|
@ -385,13 +385,11 @@ return SCPE_OK;
|
||||||
|
|
||||||
t_stat sim_set_deboff (int32 flag, char *cptr)
|
t_stat sim_set_deboff (int32 flag, char *cptr)
|
||||||
{
|
{
|
||||||
t_stat r;
|
|
||||||
|
|
||||||
if (cptr && (*cptr != 0)) /* now eol? */
|
if (cptr && (*cptr != 0)) /* now eol? */
|
||||||
return SCPE_2MARG;
|
return SCPE_2MARG;
|
||||||
if (sim_deb == NULL) /* no log? */
|
if (sim_deb == NULL) /* no log? */
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
r = sim_close_logfile (&sim_deb_ref);
|
sim_close_logfile (&sim_deb_ref);
|
||||||
sim_deb = NULL;
|
sim_deb = NULL;
|
||||||
if (!sim_quiet)
|
if (!sim_quiet)
|
||||||
printf ("Debug output disabled\n");
|
printf ("Debug output disabled\n");
|
||||||
|
|
|
@ -1024,12 +1024,12 @@ t_stat sim_disk_detach (UNIT *uptr)
|
||||||
{
|
{
|
||||||
struct disk_context *ctx = (struct disk_context *)uptr->disk_ctx;
|
struct disk_context *ctx = (struct disk_context *)uptr->disk_ctx;
|
||||||
int (*close_function)(FILE *f);
|
int (*close_function)(FILE *f);
|
||||||
FILE *fileref = uptr->fileref;
|
FILE *fileref;
|
||||||
DEVICE *dptr;
|
|
||||||
t_bool auto_format;
|
t_bool auto_format;
|
||||||
|
|
||||||
if (uptr == NULL)
|
if (uptr == NULL)
|
||||||
return SCPE_IERR;
|
return SCPE_IERR;
|
||||||
|
fileref = uptr->fileref;
|
||||||
switch (DK_GET_FMT (uptr)) { /* case on format */
|
switch (DK_GET_FMT (uptr)) { /* case on format */
|
||||||
case DKUF_F_STD: /* Simh */
|
case DKUF_F_STD: /* Simh */
|
||||||
close_function = fclose;
|
close_function = fclose;
|
||||||
|
@ -1045,7 +1045,7 @@ if (!(uptr->flags & UNIT_ATTABLE)) /* attachable? */
|
||||||
return SCPE_NOATT;
|
return SCPE_NOATT;
|
||||||
if (!(uptr->flags & UNIT_ATT)) /* attached? */
|
if (!(uptr->flags & UNIT_ATT)) /* attached? */
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
if ((dptr = find_dev_from_unit (uptr)) == NULL)
|
if (NULL == find_dev_from_unit (uptr))
|
||||||
return SCPE_OK;
|
return SCPE_OK;
|
||||||
auto_format = ctx->auto_format;
|
auto_format = ctx->auto_format;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue