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:
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user