trunk/src/mess/machine/c64/xl80.h
| r25377 | r25378 | |
| 47 | 47 | // device_c64_expansion_card_interface overrides |
| 48 | 48 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 49 | 49 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 50 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) { return 1; } |
| 51 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) { return 0; } |
| 50 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) { return 1; } |
| 51 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) { return 0; } |
| 52 | 52 | |
| 53 | 53 | private: |
| 54 | 54 | required_device<h46505_device> m_crtc; |
trunk/src/mess/machine/c64/ieee488.c
| r25377 | r25378 | |
| 252 | 252 | // c64_game_r - GAME read |
| 253 | 253 | //------------------------------------------------- |
| 254 | 254 | |
| 255 | | int c64_ieee488_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 255 | int c64_ieee488_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 256 | 256 | { |
| 257 | | return m_exp->game_r(offset, sphi2, ba, rw, hiram); |
| 257 | return m_exp->game_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 258 | 258 | } |
trunk/src/mess/machine/c64/ieee488.h
| r25377 | r25378 | |
| 51 | 51 | // device_c64_expansion_card_interface overrides |
| 52 | 52 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 53 | 53 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 54 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 54 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 55 | 55 | |
| 56 | 56 | private: |
| 57 | 57 | required_device<tpi6525_device> m_tpi; |
trunk/src/mess/machine/c64/music64.c
| r25377 | r25378 | |
| 223 | 223 | // c64_game_r - GAME read |
| 224 | 224 | //------------------------------------------------- |
| 225 | 225 | |
| 226 | | int c64_music64_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 226 | int c64_music64_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 227 | 227 | { |
| 228 | | return m_exp->game_r(offset, sphi2, ba, rw, hiram); |
| 228 | return m_exp->game_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 229 | 229 | } |
| 230 | 230 | |
| 231 | 231 | |
| r25377 | r25378 | |
| 233 | 233 | // c64_exrom_r - EXROM read |
| 234 | 234 | //------------------------------------------------- |
| 235 | 235 | |
| 236 | | int c64_music64_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 236 | int c64_music64_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 237 | 237 | { |
| 238 | | return m_exp->exrom_r(offset, sphi2, ba, rw, hiram); |
| 238 | return m_exp->exrom_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 239 | 239 | } |
trunk/src/mess/machine/c64/music64.h
| r25377 | r25378 | |
| 42 | 42 | // device_c64_expansion_card_interface overrides |
| 43 | 43 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 44 | 44 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 45 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 46 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 45 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 46 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 47 | 47 | |
| 48 | 48 | private: |
| 49 | 49 | required_device<c64_expansion_slot_device> m_exp; |
trunk/src/mess/machine/c64/supercpu.c
| r25377 | r25378 | |
| 291 | 291 | // c64_game_r - GAME read |
| 292 | 292 | //------------------------------------------------- |
| 293 | 293 | |
| 294 | | int c64_supercpu_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 294 | int c64_supercpu_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 295 | 295 | { |
| 296 | | return m_exp->game_r(offset, sphi2, ba, rw, hiram); |
| 296 | return m_exp->game_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 297 | 297 | } |
| 298 | 298 | |
| 299 | 299 | |
| r25377 | r25378 | |
| 301 | 301 | // c64_exrom_r - EXROM read |
| 302 | 302 | //------------------------------------------------- |
| 303 | 303 | |
| 304 | | int c64_supercpu_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 304 | int c64_supercpu_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 305 | 305 | { |
| 306 | | return m_exp->exrom_r(offset, sphi2, ba, rw, hiram); |
| 306 | return m_exp->exrom_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 307 | 307 | } |
trunk/src/mess/machine/c64/tdos.c
| r25377 | r25378 | |
| 176 | 176 | // c64_game_r - GAME read |
| 177 | 177 | //------------------------------------------------- |
| 178 | 178 | |
| 179 | | int c64_tdos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 179 | int c64_tdos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 180 | 180 | { |
| 181 | | return m_exp->game_r(offset, sphi2, ba, rw, hiram); |
| 181 | return m_exp->game_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 182 | 182 | } |
| 183 | 183 | |
| 184 | 184 | |
| r25377 | r25378 | |
| 186 | 186 | // c64_exrom_r - EXROM read |
| 187 | 187 | //------------------------------------------------- |
| 188 | 188 | |
| 189 | | int c64_tdos_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 189 | int c64_tdos_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 190 | 190 | { |
| 191 | | return m_exp->exrom_r(offset, sphi2, ba, rw, hiram); |
| 191 | return m_exp->exrom_r(offset, sphi2, ba, rw, m_slot->hiram()); |
| 192 | 192 | } |
trunk/src/mess/machine/c64/supercpu.h
| r25377 | r25378 | |
| 44 | 44 | // device_c64_expansion_card_interface overrides |
| 45 | 45 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 46 | 46 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 47 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 48 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 47 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 48 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 49 | 49 | |
| 50 | 50 | private: |
| 51 | 51 | required_device<legacy_cpu_device> m_maincpu; |
trunk/src/mess/machine/c64/ide64.c
| r25377 | r25378 | |
| 341 | 341 | // c64_game_r - GAME read |
| 342 | 342 | //------------------------------------------------- |
| 343 | 343 | |
| 344 | | int c64_ide64_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 344 | int c64_ide64_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 345 | 345 | { |
| 346 | 346 | return (sphi2 && ba) ? m_game : 1; |
| 347 | 347 | } |
| r25377 | r25378 | |
| 351 | 351 | // c64_exrom_r - EXROM read |
| 352 | 352 | //------------------------------------------------- |
| 353 | 353 | |
| 354 | | int c64_ide64_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 354 | int c64_ide64_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 355 | 355 | { |
| 356 | 356 | return (sphi2 && ba) ? m_exrom : 1; |
| 357 | 357 | } |
trunk/src/mess/machine/c64/tdos.h
| r25377 | r25378 | |
| 42 | 42 | // device_c64_expansion_card_interface overrides |
| 43 | 43 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 44 | 44 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 45 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 46 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 45 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 46 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 47 | 47 | |
| 48 | 48 | private: |
| 49 | 49 | required_device<mc6852_device> m_ssda; |
trunk/src/mess/machine/c64/easyflash.c
| r25377 | r25378 | |
| 212 | 212 | // c64_exrom_r - EXROM read |
| 213 | 213 | //------------------------------------------------- |
| 214 | 214 | |
| 215 | | int c64_easyflash_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 215 | int c64_easyflash_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 216 | 216 | { |
| 217 | 217 | return !BIT(m_mode, 1); |
| 218 | 218 | } |
| r25377 | r25378 | |
| 222 | 222 | // c64_game_r - GAME read |
| 223 | 223 | //------------------------------------------------- |
| 224 | 224 | |
| 225 | | int c64_easyflash_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 225 | int c64_easyflash_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 226 | 226 | { |
| 227 | 227 | return !(BIT(m_mode, 0) | !(BIT(m_mode, 2) | m_jp1->read())); |
| 228 | 228 | } |
trunk/src/mess/machine/c64/ide64.h
| r25377 | r25378 | |
| 47 | 47 | // device_c64_expansion_card_interface overrides |
| 48 | 48 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 49 | 49 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 50 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 51 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 50 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 51 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 52 | 52 | |
| 53 | 53 | private: |
| 54 | 54 | required_device<atmel_29c010_device> m_flash_rom; |
trunk/src/mess/machine/c64/easyflash.h
| r25377 | r25378 | |
| 44 | 44 | // device_c64_expansion_card_interface overrides |
| 45 | 45 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 46 | 46 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 47 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 48 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 47 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 48 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 49 | 49 | |
| 50 | 50 | private: |
| 51 | 51 | required_device<amd_29f040_device> m_flash_roml; |
trunk/src/mess/machine/c64/exp.c
| r25377 | r25378 | |
| 351 | 351 | { |
| 352 | 352 | int state = 1; |
| 353 | 353 | |
| 354 | m_hiram = hiram; |
| 355 | |
| 354 | 356 | if (m_card != NULL) |
| 355 | 357 | { |
| 356 | | state = m_card->c64_game_r(offset, sphi2, ba, rw, hiram); |
| 358 | state = m_card->c64_game_r(offset, sphi2, ba, rw); |
| 357 | 359 | } |
| 358 | 360 | |
| 359 | 361 | return state; |
| r25377 | r25378 | |
| 368 | 370 | { |
| 369 | 371 | int state = 1; |
| 370 | 372 | |
| 373 | m_hiram = hiram; |
| 374 | |
| 371 | 375 | if (m_card != NULL) |
| 372 | 376 | { |
| 373 | | state = m_card->c64_exrom_r(offset, sphi2, ba, rw, hiram); |
| 377 | state = m_card->c64_exrom_r(offset, sphi2, ba, rw); |
| 374 | 378 | } |
| 375 | 379 | |
| 376 | 380 | return state; |
trunk/src/mess/machine/c64/exp.h
| r25377 | r25378 | |
| 115 | 115 | DECLARE_WRITE_LINE_MEMBER( reset_w ) { m_write_reset(state); } |
| 116 | 116 | int phi2() { return clock(); } |
| 117 | 117 | int dotclock() { return phi2() * 8; } |
| 118 | int hiram() { return m_hiram; } |
| 118 | 119 | |
| 119 | 120 | protected: |
| 120 | 121 | // device-level overrides |
| r25377 | r25378 | |
| 148 | 149 | devcb2_write_line m_write_reset; |
| 149 | 150 | |
| 150 | 151 | device_c64_expansion_card_interface *m_card; |
| 152 | |
| 153 | int m_hiram; |
| 151 | 154 | }; |
| 152 | 155 | |
| 153 | 156 | |
| r25377 | r25378 | |
| 172 | 175 | // runtime |
| 173 | 176 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2) { return data; }; |
| 174 | 177 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2) { }; |
| 175 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) { return m_game; } |
| 176 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) { return m_exrom; } |
| 178 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw) { return m_game; } |
| 179 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) { return m_exrom; } |
| 177 | 180 | |
| 178 | 181 | c64_expansion_slot_device *m_slot; |
| 179 | 182 | |
trunk/src/mess/machine/c64/vw64.h
| r25377 | r25378 | |
| 39 | 39 | |
| 40 | 40 | // device_c64_expansion_card_interface overrides |
| 41 | 41 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 42 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) { return 0; } |
| 42 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) { return 0; } |
| 43 | 43 | |
| 44 | 44 | private: |
| 45 | 45 | emu_timer *m_game_timer; |
trunk/src/mess/machine/c64/stardos.c
| r25377 | r25378 | |
| 179 | 179 | // c64_game_r - GAME read |
| 180 | 180 | //------------------------------------------------- |
| 181 | 181 | |
| 182 | | int c64_stardos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 182 | int c64_stardos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 183 | 183 | { |
| 184 | | return !(sphi2 && ba & rw & ((offset & 0xe000) == 0xe000) & hiram); |
| 184 | return !(sphi2 && ba & rw & ((offset & 0xe000) == 0xe000) & m_slot->hiram()); |
| 185 | 185 | } |
| 186 | 186 | |
| 187 | 187 | |
| r25377 | r25378 | |
| 189 | 189 | // c64_exrom_r - EXROM read |
| 190 | 190 | //------------------------------------------------- |
| 191 | 191 | |
| 192 | | int c64_stardos_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 192 | int c64_stardos_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 193 | 193 | { |
| 194 | 194 | return (BIT(offset, 13)) ? 1 : m_exrom; |
| 195 | 195 | } |
trunk/src/mess/machine/c64/magic_formel.c
| r25377 | r25378 | |
| 274 | 274 | // c64_game_r - GAME read |
| 275 | 275 | //------------------------------------------------- |
| 276 | 276 | |
| 277 | | int c64_magic_formel_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 277 | int c64_magic_formel_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 278 | 278 | { |
| 279 | 279 | return !(ba & rw & ((offset & 0xe000) == 0xe000) & !(m_pb7 & m_cb2_ff)); |
| 280 | 280 | } |
trunk/src/mess/machine/c64/kingsoft.c
| r25377 | r25378 | |
| 93 | 93 | // c64_game_r - GAME read |
| 94 | 94 | //------------------------------------------------- |
| 95 | 95 | |
| 96 | | int c64_kingsoft_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 96 | int c64_kingsoft_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 97 | 97 | { |
| 98 | 98 | return m_exrom & !(ba & rw & ((offset >= 0x8000 && offset < 0xc000) || (offset >= 0xe000))); |
| 99 | 99 | } |
trunk/src/mess/machine/c64/stardos.h
| r25377 | r25378 | |
| 42 | 42 | // device_c64_expansion_card_interface overrides |
| 43 | 43 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 44 | 44 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 45 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 46 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 45 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 46 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 47 | 47 | |
| 48 | 48 | private: |
| 49 | 49 | inline void charge_io1_capacitor(); |
trunk/src/mess/machine/c64/magic_formel.h
| r25377 | r25378 | |
| 51 | 51 | // device_c64_expansion_card_interface overrides |
| 52 | 52 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 53 | 53 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 54 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 54 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 55 | 55 | |
| 56 | 56 | private: |
| 57 | 57 | required_device<pia6821_device> m_pia; |
trunk/src/mess/machine/c64/kingsoft.h
| r25377 | r25378 | |
| 39 | 39 | // device_c64_expansion_card_interface overrides |
| 40 | 40 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 41 | 41 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 42 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 42 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 43 | 43 | }; |
| 44 | 44 | |
| 45 | 45 | |
trunk/src/mess/machine/c64/sfx_sound_expander.c
| r25377 | r25378 | |
| 271 | 271 | // c64_game_r - GAME read |
| 272 | 272 | //------------------------------------------------- |
| 273 | 273 | |
| 274 | | int c64_sfx_sound_expander_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 274 | int c64_sfx_sound_expander_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 275 | 275 | { |
| 276 | | return m_exp->game_r(get_offset(offset, rw), sphi2, ba, rw, hiram); |
| 276 | return m_exp->game_r(get_offset(offset, rw), sphi2, ba, rw, m_slot->hiram()); |
| 277 | 277 | } |
| 278 | 278 | |
| 279 | 279 | |
| r25377 | r25378 | |
| 281 | 281 | // c64_exrom_r - EXROM read |
| 282 | 282 | //------------------------------------------------- |
| 283 | 283 | |
| 284 | | int c64_sfx_sound_expander_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 284 | int c64_sfx_sound_expander_cartridge_device::c64_exrom_r(offs_t offset, int sphi2, int ba, int rw) |
| 285 | 285 | { |
| 286 | | return m_exp->exrom_r(get_offset(offset, rw), sphi2, ba, rw, hiram); |
| 286 | return m_exp->exrom_r(get_offset(offset, rw), sphi2, ba, rw, m_slot->hiram()); |
| 287 | 287 | } |
trunk/src/mess/machine/c64/sfx_sound_expander.h
| r25377 | r25378 | |
| 45 | 45 | // device_c64_expansion_card_interface overrides |
| 46 | 46 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 47 | 47 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 48 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 49 | | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 48 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 49 | virtual int c64_exrom_r(offs_t offset, int sphi2, int ba, int rw); |
| 50 | 50 | |
| 51 | 51 | private: |
| 52 | 52 | required_device<ym3526_device> m_opl; |
trunk/src/mess/machine/c64/cpm.h
| r25377 | r25378 | |
| 47 | 47 | |
| 48 | 48 | // device_c64_expansion_card_interface overrides |
| 49 | 49 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 50 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 50 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 51 | 51 | |
| 52 | 52 | private: |
| 53 | 53 | inline void update_signals(); |
trunk/src/mess/machine/c64/magic_voice.c
| r25377 | r25378 | |
| 359 | 359 | // c64_game_r - GAME read |
| 360 | 360 | //------------------------------------------------- |
| 361 | 361 | |
| 362 | | int c64_magic_voice_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 362 | int c64_magic_voice_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 363 | 363 | { |
| 364 | 364 | return !((m_tpi_pc6 && sphi2) || (!m_tpi_pc6 && sphi2 && !PB5 && A12 && A13 && !A14)); |
| 365 | 365 | } |
trunk/src/mess/machine/c64/magic_voice.h
| r25377 | r25378 | |
| 58 | 58 | // device_c64_expansion_card_interface overrides |
| 59 | 59 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 60 | 60 | virtual void c64_cd_w(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 61 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 61 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 62 | 62 | |
| 63 | 63 | private: |
| 64 | 64 | offs_t get_offset(offs_t offset); |
trunk/src/mess/machine/c64/exos.c
| r25377 | r25378 | |
| 62 | 62 | // c64_game_r - GAME read |
| 63 | 63 | //------------------------------------------------- |
| 64 | 64 | |
| 65 | | int c64_exos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram) |
| 65 | int c64_exos_cartridge_device::c64_game_r(offs_t offset, int sphi2, int ba, int rw) |
| 66 | 66 | { |
| 67 | | return !(ba & rw & ((offset & 0xe000) == 0xe000) & hiram); |
| 67 | return !(ba & rw & ((offset & 0xe000) == 0xe000) & m_slot->hiram()); |
| 68 | 68 | } |
trunk/src/mess/machine/c64/exos.h
| r25377 | r25378 | |
| 37 | 37 | |
| 38 | 38 | // device_c64_expansion_card_interface overrides |
| 39 | 39 | virtual UINT8 c64_cd_r(address_space &space, offs_t offset, UINT8 data, int sphi2, int ba, int roml, int romh, int io1, int io2); |
| 40 | | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw, int hiram); |
| 40 | virtual int c64_game_r(offs_t offset, int sphi2, int ba, int rw); |
| 41 | 41 | }; |
| 42 | 42 | |
| 43 | 43 | |