1
0
mirror of https://github.com/open-simh/simh.git synced 2026-01-25 19:57:36 +00:00

Cleanup based on reports from Michael Bloom

This commit is contained in:
Mark Pizzolato
2012-03-22 12:20:00 -07:00
parent 3049f16af2
commit 0270d0ea0d
7 changed files with 31 additions and 42 deletions

View File

@@ -1132,7 +1132,6 @@ t_stat xq_process_setup(CTLR* xq)
int i,j;
int count = 0;
float secs;
t_stat status;
uint32 saved_debug = xq->dev->dctrl;
ETH_MAC zeros = {0, 0, 0, 0, 0, 0};
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++)
if (memcmp(zeros, &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 */
if (xq->var->write_buffer.msg[0])
status = xq_process_mop(xq);
xq_process_mop(xq);
/* mark setup block valid */
xq->var->setup.valid = 1;
@@ -1366,7 +1365,6 @@ t_stat xq_dispatch_rbdl(CTLR* xq)
{
int i;
int32 rstatus, wstatus;
t_stat status;
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 */
if (xq->var->ReadQ.count)
status = xq_process_rbdl(xq);
xq_process_rbdl(xq);
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 status;
CTLR* xq = xq_pa2ctlr(PA);
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);
break;
case 2: /* ICR */
status = xq_wr_icr(xq, data);
xq_wr_icr(xq, data);
break;
case 3:
break;
case 4: /* SRQR */
status = xq_wr_srqr(xq, data);
xq_wr_srqr(xq, data);
break;
case 5:
break;
case 6:
break;
case 7: /* ARQR */
status = xq_wr_arqr(xq, data);
xq_wr_arqr(xq, data);
break;
}
break;
@@ -2304,20 +2301,20 @@ t_stat xq_wr(int32 data, int32 PA, int32 access)
break;
case 3: /* receive bdl high bits */
xq->var->rbdl[1] = data;
status = xq_dispatch_rbdl(xq); /* start receive operation */
xq_dispatch_rbdl(xq); /* start receive operation */
break;
case 4: /* transmit bdl low bits */
xq->var->xbdl[0] = data;
break;
case 5: /* transmit bdl high bits */
xq->var->xbdl[1] = data;
status = xq_dispatch_xbdl(xq); /* start transmit operation */
xq_dispatch_xbdl(xq); /* start transmit operation */
break;
case 6: /* vector address register */
status = xq_wr_var(xq, data);
xq_wr_var(xq, data);
break;
case 7: /* control and status register */
status = xq_wr_csr(xq, data);
xq_wr_csr(xq, data);
break;
}
break;

View File

@@ -553,7 +553,6 @@ t_stat xu_system_id (CTLR* xu, const ETH_MAC dest, uint16 receipt_id)
t_stat xu_svc(UNIT* uptr)
{
int queue_size;
t_stat status;
CTLR* xu = xu_unit2ctlr(uptr);
const ETH_MAC mop_multicast = {0xAB, 0x00, 0x00, 0x02, 0x00, 0x00};
const int one_second = clk_tps * tmr_poll;
@@ -568,7 +567,7 @@ t_stat xu_svc(UNIT* uptr)
{
queue_size = xu->var->ReadQ.count;
/* 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);
/* 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 */
if (--xu->var->idtmr <= 0) {
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 */
}
@@ -627,7 +626,6 @@ void xu_setclrint(CTLR* xu, int32 bits)
t_stat xu_sw_reset (CTLR* xu)
{
t_stat status;
int i;
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.mac_count = 2;
if (xu->var->etherface)
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
/* activate device if not disabled */
if ((xu->dev->flags & DEV_DIS) == 0) {
@@ -708,7 +706,7 @@ int32 xu_command(CTLR* xu)
uint32 udbb;
int fnc, mtlen, i, j;
uint16 value, pltlen;
t_stat status, rstatus, wstatus, wstatus2, wstatus3;
t_stat rstatus, wstatus, wstatus2, wstatus3;
struct xu_stats* stats = &xu->var->stats;
uint16* udb = xu->var->udb;
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]);
if (rstatus == 0) {
xu->var->setup.mac_count = mtlen + 2;
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
} else {
xu->var->pcsr0 |= PCSR0_PCEI;
}
@@ -922,9 +920,9 @@ int32 xu_command(CTLR* xu)
/* if promiscuous or multicast flags changed, change filter */
if ((value ^ xu->var->mode) & (MODE_PROM | MODE_ENAL))
status = eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
eth_filter (xu->var->etherface, xu->var->setup.mac_count,
xu->var->setup.macs, xu->var->setup.multicast,
xu->var->setup.promiscuous);
break;
case FC_RSTAT: /* read extended status */
@@ -1339,7 +1337,6 @@ void xu_port_command (CTLR* xu)
char* msg;
int command = xu->var->pcsr0 & PCSR0_PCMD;
int state = xu->var->pcsr1 & PCSR1_STATE;
int bits;
static char* commands[] = {
"NO-OP",
"GET PCBB",
@@ -1368,7 +1365,7 @@ void xu_port_command (CTLR* xu)
break;
case CMD_GETCMD: /* GET COMMAND */
bits = xu_command(xu);
xu_command(xu);
xu->var->pcsr0 |= PCSR0_DNI;
break;
@@ -1606,12 +1603,11 @@ t_stat xu_attach(UNIT* uptr, char* cptr)
t_stat xu_detach(UNIT* uptr)
{
t_stat status;
CTLR* xu = xu_unit2ctlr(uptr);
sim_debug(DBG_TRC, xu->dev, "xu_detach()\n");
if (uptr->flags & UNIT_ATT) {
status = eth_close (xu->var->etherface);
eth_close (xu->var->etherface);
free(xu->var->etherface);
xu->var->etherface = 0;
free(uptr->filename);