From bef62a51fd788faf1a866fd9a19cdbd38a3c358f Mon Sep 17 00:00:00 2001 From: Bill Beech Date: Mon, 20 Mar 2017 13:32:43 -0700 Subject: [PATCH] SWTP: Cleanup Coverity identified issues --- swtp6800/common/bootrom.c | 1 + swtp6800/common/mp-a.c | 18 +++++-------- swtp6800/common/mp-a2.c | 21 ++++++--------- swtp6800/common/mp-b2.c | 55 ++++++++++++++++++--------------------- 4 files changed, 41 insertions(+), 54 deletions(-) diff --git a/swtp6800/common/bootrom.c b/swtp6800/common/bootrom.c index 148a17f6..74f7d90d 100644 --- a/swtp6800/common/bootrom.c +++ b/swtp6800/common/bootrom.c @@ -218,6 +218,7 @@ t_stat BOOTROM_reset (DEVICE *dptr) if (fp == NULL) { printf("\tUnable to open ROM file %s\n",BOOTROM_unit.filename); printf("\tNo ROM image loaded!!!\n"); + fclose(fp); return SCPE_OK; } j = 0; /* load EPROM file */ diff --git a/swtp6800/common/mp-a.c b/swtp6800/common/mp-a.c index a8118c3c..f27a7d9b 100644 --- a/swtp6800/common/mp-a.c +++ b/swtp6800/common/mp-a.c @@ -140,25 +140,24 @@ int32 CPU_BD_get_mbyte(int32 addr) if (CPU_BD_unit.flags & UNIT_RAM) { val = m6810_get_mbyte(addr - 0xA000) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: m6810 val=%02X\n", val); - return val; } else { val = MB_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: m6810 val=%02X\n", val); - return val; } + break; case 0xE000: val = BOOTROM_get_mbyte(addr - 0xE000) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: EPROM=%02X\n", val); - return val; + break; case 0xF000: val = BOOTROM_get_mbyte(addr - (0x10000 - BOOTROM_unit.capac)) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: EPROM=%02X\n", val); - return val; + break; default: val = MB_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: mp_b2 val=%02X\n", val); - return val; } + return val; } /* get a word from memory */ @@ -183,16 +182,13 @@ void CPU_BD_put_mbyte(int32 addr, int32 val) addr, val); switch(addr & 0xF000) { case 0xA000: - if (CPU_BD_unit.flags & UNIT_RAM) { + if (CPU_BD_unit.flags & UNIT_RAM) m6810_put_mbyte(addr - 0xA000, val); - return; - } else { + else MB_put_mbyte(addr, val); - return; - } + break; default: MB_put_mbyte(addr, val); - return; } } diff --git a/swtp6800/common/mp-a2.c b/swtp6800/common/mp-a2.c index f592c1f3..6ad9af09 100644 --- a/swtp6800/common/mp-a2.c +++ b/swtp6800/common/mp-a2.c @@ -181,35 +181,33 @@ int32 CPU_BD_get_mbyte(int32 addr) if (CPU_BD_unit.flags & UNIT_RAM) { val = m6810_get_mbyte(addr - 0xA000) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: m6810 val=%02X\n", val); - return val; } else { val = MB_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: m6810 val=%02X\n", val); - return val; } + break; case 0xC000: if (CPU_BD_unit.flags & UNIT_LO_PROM) { val = i2716_get_mbyte(addr - 0xC000) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: 2716=%02X\n", val); - return val; } else - return 0xFF; + val = 0xFF; break; case 0xE000: val = BOOTROM_get_mbyte(addr - 0xE000) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: EPROM=%02X\n", val); - return val; + break; case 0xF000: if (CPU_BD_unit.flags & UNIT_MON) { val = BOOTROM_get_mbyte(addr - (0x10000 - BOOTROM_unit.capac)) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: EPROM=%02X\n", val); - return val; } + break; default: val = MB_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &CPU_BD_dev, "CPU_BD_get_mbyte: mp_b2 val=%02X\n", val); - return val; } + return val; } /* get a word from memory */ @@ -234,16 +232,13 @@ void CPU_BD_put_mbyte(int32 addr, int32 val) addr, val); switch(addr & 0xF000) { case 0xA000: - if (CPU_BD_unit.flags & UNIT_RAM) { + if (CPU_BD_unit.flags & UNIT_RAM) m6810_put_mbyte(addr - 0xA000, val); - return; - } else { + else MB_put_mbyte(addr, val); - return; - } + break; default: MB_put_mbyte(addr, val); - return; } } diff --git a/swtp6800/common/mp-b2.c b/swtp6800/common/mp-b2.c index 71bc08d8..40055603 100644 --- a/swtp6800/common/mp-b2.c +++ b/swtp6800/common/mp-b2.c @@ -190,19 +190,17 @@ int32 MB_get_mbyte(int32 addr) sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: addr=%04X\n", addr); if (MB_dev.dctrl & DEBUG_read) printf("MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; case 0x2000: case 0x3000: if (MB_unit.flags & UNIT_RAM_2000) { val = mp_8m_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; case 0x4000: case 0x5000: if (MB_unit.flags & UNIT_RAM_4000) { @@ -210,19 +208,17 @@ int32 MB_get_mbyte(int32 addr) sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: addr=%04X\n", addr); if (MB_dev.dctrl & DEBUG_read) printf("MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; case 0x6000: case 0x7000: if (MB_unit.flags & UNIT_RAM_6000) { val = mp_8m_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; case 0x8000: if (addr < 0x8020) val = (dev_table[addr - 0x8000].routine(0, 0)) & 0xFF; @@ -230,29 +226,27 @@ int32 MB_get_mbyte(int32 addr) val = 0xFF; sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: I/O addr=%04X val=%02X\n", addr, val); - return val; - /* fall through */ + break; case 0xA000: case 0xB000: if (MB_unit.flags & UNIT_RAM_A000) { val = mp_8m_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; case 0xC000: case 0xD000: if (MB_unit.flags & UNIT_RAM_C000) { val = mp_8m_get_mbyte(addr) & 0xFF; sim_debug (DEBUG_read, &MB_dev, "MB_get_mbyte: mp_8m val=%02X\n", val); - return val; } else - return 0xFF; - /* fall through */ + val = 0xFF; + break; default: - return 0xFF; + val = 0xFF; } + return val; } /* get a word from memory */ @@ -280,44 +274,45 @@ void MB_put_mbyte(int32 addr, int32 val) case 0x1000: if (MB_unit.flags & UNIT_RAM_0000) { mp_8m_put_mbyte(addr, val); - return; } + break; case 0x2000: case 0x3000: if (MB_unit.flags & UNIT_RAM_2000) { mp_8m_put_mbyte(addr, val); - return; } + break; case 0x4000: case 0x5000: if (MB_unit.flags & UNIT_RAM_4000) { mp_8m_put_mbyte(addr, val); - return; } + break; case 0x6000: case 0x7000: if (MB_unit.flags & UNIT_RAM_6000) { mp_8m_put_mbyte(addr, val); - return; } + break; case 0x8000: - if (addr < 0x8020) + if (addr < 0x8020) { dev_table[addr - 0x8000].routine(1, val); - return; + } + break; case 0xA000: case 0xB000: if (MB_unit.flags & UNIT_RAM_A000) { mp_8m_put_mbyte(addr, val); - return; } + break; case 0xC000: case 0xD000: if (MB_unit.flags & UNIT_RAM_C000) { mp_8m_put_mbyte(addr, val); - return; } + break; default: - return; + ; } }