IBM 5161: Set switches according to the total memory installed (on-board + any expansion cards), fixes #4070.
This commit is contained in:
@@ -73,8 +73,8 @@ ibm_5161_in(uint16_t port, void *priv)
|
|||||||
02-03 = not used
|
02-03 = not used
|
||||||
04-07 = switch position
|
04-07 = switch position
|
||||||
1 = Off
|
1 = Off
|
||||||
0 =On */
|
0 = On */
|
||||||
ret = dev->regs[3] & 0x01;
|
ret = (dev->regs[3] & 0x01) | (((~(0xf - ((mem_size + isa_mem_size) >> 6))) & 0xf) << 4);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@@ -95,8 +95,7 @@ ibm_5161_close(void *priv)
|
|||||||
static void *
|
static void *
|
||||||
ibm_5161_init(UNUSED(const device_t *info))
|
ibm_5161_init(UNUSED(const device_t *info))
|
||||||
{
|
{
|
||||||
ibm_5161_t *dev = (ibm_5161_t *) malloc(sizeof(ibm_5161_t));
|
ibm_5161_t *dev = (ibm_5161_t *) calloc(1, sizeof(ibm_5161_t));
|
||||||
memset(dev, 0, sizeof(ibm_5161_t));
|
|
||||||
|
|
||||||
/* Extender Card Registers */
|
/* Extender Card Registers */
|
||||||
io_sethandler(0x0210, 0x0004,
|
io_sethandler(0x0210, 0x0004,
|
||||||
|
|||||||
Reference in New Issue
Block a user