diff options
Diffstat (limited to 'src/mame/drivers/calchase.cpp')
-rw-r--r-- | src/mame/drivers/calchase.cpp | 46 |
1 files changed, 10 insertions, 36 deletions
diff --git a/src/mame/drivers/calchase.cpp b/src/mame/drivers/calchase.cpp index d67a94fa8b5..eed6b695b0d 100644 --- a/src/mame/drivers/calchase.cpp +++ b/src/mame/drivers/calchase.cpp @@ -131,6 +131,7 @@ something wrong in the disk geometry reported by calchase.chd (20,255,63) since #include "emu.h" + #include "bus/isa/trident.h" #include "cpu/i386/i386.h" #include "machine/lpci.h" @@ -141,6 +142,7 @@ something wrong in the disk geometry reported by calchase.chd (20,255,63) since #include "machine/nvram.h" #include "sound/dac.h" #include "video/pc_vga.h" + #include "screen.h" #include "speaker.h" @@ -176,11 +178,6 @@ private: void bios_ram_w(offs_t offset, uint32_t data, uint32_t mem_mask = ~0); uint8_t nvram_r(offs_t offset); void nvram_w(offs_t offset, uint8_t data); - uint16_t calchase_iocard1_r(); - uint16_t calchase_iocard2_r(); - uint16_t calchase_iocard3_r(); - uint16_t calchase_iocard4_r(); - uint16_t calchase_iocard5_r(); uint32_t calchase_idle_skip_r(); void calchase_idle_skip_w(offs_t offset, uint32_t data, uint32_t mem_mask = ~0); @@ -380,32 +377,6 @@ void calchase_state::nvram_w(offs_t offset, uint8_t data) m_nvram_data[offset] = data; } -uint16_t calchase_state::calchase_iocard1_r() -{ - return ioport("IOCARD1")->read(); -} - -uint16_t calchase_state::calchase_iocard2_r() -{ - return ioport("IOCARD2")->read(); -} - -uint16_t calchase_state::calchase_iocard3_r() -{ - return ioport("IOCARD3")->read(); -} - -/* These two controls wheel pot or whatever this game uses ... */ -uint16_t calchase_state::calchase_iocard4_r() -{ - return ioport("IOCARD4")->read(); -} - -uint16_t calchase_state::calchase_iocard5_r() -{ - return ioport("IOCARD5")->read(); -} - void calchase_state::calchase_map(address_map &map) { @@ -414,11 +385,11 @@ void calchase_state::calchase_map(address_map &map) map(0x000c0000, 0x000c7fff).rom().region("video_bios", 0); map(0x000c8000, 0x000cffff).noprw(); //map(0x000d0000, 0x000d0003).ram(); // XYLINX - Sincronus serial communication - map(0x000d0004, 0x000d0005).r(FUNC(calchase_state::calchase_iocard1_r)); - map(0x000d000c, 0x000d000d).r(FUNC(calchase_state::calchase_iocard2_r)); - map(0x000d0032, 0x000d0033).r(FUNC(calchase_state::calchase_iocard3_r)); - map(0x000d0030, 0x000d0031).r(FUNC(calchase_state::calchase_iocard4_r)); - map(0x000d0034, 0x000d0035).r(FUNC(calchase_state::calchase_iocard5_r)); + map(0x000d0004, 0x000d0005).portr("IOCARD1"); + map(0x000d000c, 0x000d000d).portr("IOCARD2"); + map(0x000d0032, 0x000d0033).portr("IOCARD3"); + map(0x000d0030, 0x000d0031).portr("IOCARD4"); // These two controls wheel pot or whatever this game uses ... + map(0x000d0034, 0x000d0035).portr("IOCARD5"); map(0x000d0008, 0x000d000b).nopw(); // ??? map(0x000d0024, 0x000d0025).w("ldac", FUNC(dac_word_interface::data_w)); map(0x000d0028, 0x000d0029).w("rdac", FUNC(dac_word_interface::data_w)); @@ -496,6 +467,7 @@ static INPUT_PORTS_START( calchase ) PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_START("IOCARD2") PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 ) // guess PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Reset SW") @@ -514,6 +486,7 @@ static INPUT_PORTS_START( calchase ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Turbo") PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) // returns back to MS-DOS (likely to be unmapped and actually used as a lame protection check) PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_START("IOCARD3") PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_CUSTOM ) PORT_VBLANK("screen") PORT_BIT( 0xdfff, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -565,6 +538,7 @@ static INPUT_PORTS_START( calchase ) PORT_DIPNAME( 0x8000, 0x8000, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) + PORT_START("IOCARD5") PORT_DIPNAME( 0x01, 0x01, "DSWA" ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) |