src/mame/machine/amiga.c
| r14941 | r14942 | |
| 155 | 155 | static UINT16 amiga_chip_ram16_r(amiga_state *state, offs_t offset) |
| 156 | 156 | { |
| 157 | 157 | offset &= state->m_intf->chip_ram_mask; |
| 158 | | return (offset < state->m_chip_ram_size) ? state->m_chip_ram[offset/2] : 0xffff; |
| 158 | return (offset < state->m_chip_ram.bytes()) ? state->m_chip_ram[offset/2] : 0xffff; |
| 159 | 159 | } |
| 160 | 160 | |
| 161 | 161 | static UINT16 amiga_chip_ram32_r(amiga_state *state, offs_t offset) |
| 162 | 162 | { |
| 163 | 163 | offset &= state->m_intf->chip_ram_mask; |
| 164 | 164 | |
| 165 | | if (offset < state->m_chip_ram_size) |
| 165 | if (offset < state->m_chip_ram.bytes()) |
| 166 | 166 | { |
| 167 | | UINT32 *amiga_chip_ram32 = (UINT32 *)state->m_chip_ram; |
| 167 | UINT32 *amiga_chip_ram32 = reinterpret_cast<UINT32 *>(state->m_chip_ram.target()); |
| 168 | 168 | UINT32 dat = amiga_chip_ram32[offset / 4]; |
| 169 | 169 | |
| 170 | 170 | if ( offset & 2 ) |
| r14941 | r14942 | |
| 180 | 180 | { |
| 181 | 181 | offset &= state->m_intf->chip_ram_mask; |
| 182 | 182 | |
| 183 | | if (offset < state->m_chip_ram_size) |
| 183 | if (offset < state->m_chip_ram.bytes()) |
| 184 | 184 | state->m_chip_ram[offset/2] = data; |
| 185 | 185 | } |
| 186 | 186 | |
| r14941 | r14942 | |
| 188 | 188 | { |
| 189 | 189 | offset &= state->m_intf->chip_ram_mask; |
| 190 | 190 | |
| 191 | | if (offset < state->m_chip_ram_size) |
| 191 | if (offset < state->m_chip_ram.bytes()) |
| 192 | 192 | { |
| 193 | | UINT32 *amiga_chip_ram32 = (UINT32 *)state->m_chip_ram; |
| 193 | UINT32 *amiga_chip_ram32 = reinterpret_cast<UINT32 *>(state->m_chip_ram.target()); |
| 194 | 194 | UINT32 dat = amiga_chip_ram32[offset / 4]; |
| 195 | 195 | |
| 196 | 196 | if ( offset & 2 ) |
src/mame/includes/amiga.h
| r14941 | r14942 | |
| 374 | 374 | public: |
| 375 | 375 | amiga_state(const machine_config &mconfig, device_type type, const char *tag) |
| 376 | 376 | : driver_device(mconfig, type, tag), |
| 377 | | m_custom_regs(*this, "custom_regs") { } |
| 377 | m_chip_ram(*this, "chip_ram", 0), |
| 378 | m_custom_regs(*this, "custom_regs", 0) { } |
| 378 | 379 | |
| 379 | | UINT16 *m_chip_ram; |
| 380 | | size_t m_chip_ram_size; |
| 380 | required_shared_ptr<UINT16> m_chip_ram; |
| 381 | 381 | UINT16 (*m_chip_ram_r)(amiga_state *state, offs_t offset); |
| 382 | 382 | void (*m_chip_ram_w)(amiga_state *state, offs_t offset, UINT16 data); |
| 383 | 383 | required_shared_ptr<UINT16> m_custom_regs; |
src/mame/includes/galaga.h
| r14941 | r14942 | |
| 9 | 9 | m_galaga_ram1(*this, "galaga_ram1"), |
| 10 | 10 | m_galaga_ram2(*this, "galaga_ram2"), |
| 11 | 11 | m_galaga_ram3(*this, "galaga_ram3"), |
| 12 | | m_galaga_starcontrol(*this, "galaga_starcontrol") |
| 12 | m_galaga_starcontrol(*this, "starcontrol") |
| 13 | 13 | { } |
| 14 | 14 | |
| 15 | 15 | /* memory pointers */ |
| r14941 | r14942 | |
| 53 | 53 | m_xevious_sr1(*this, "xevious_sr1"), |
| 54 | 54 | m_xevious_sr2(*this, "xevious_sr2"), |
| 55 | 55 | m_xevious_sr3(*this, "xevious_sr3"), |
| 56 | | m_xevious_fg_colorram(*this, "xevious_fg_colorram"), |
| 57 | | m_xevious_bg_colorram(*this, "xevious_bg_colorram"), |
| 58 | | m_xevious_fg_videoram(*this, "xevious_fg_videoram"), |
| 59 | | m_xevious_bg_videoram(*this, "xevious_bg_videoram") { } |
| 56 | m_xevious_fg_colorram(*this, "fg_colorram"), |
| 57 | m_xevious_bg_colorram(*this, "bg_colorram"), |
| 58 | m_xevious_fg_videoram(*this, "fg_videoram"), |
| 59 | m_xevious_bg_videoram(*this, "bg_videoram") { } |
| 60 | 60 | |
| 61 | 61 | required_shared_ptr<UINT8> m_xevious_sr1; |
| 62 | 62 | required_shared_ptr<UINT8> m_xevious_sr2; |
| r14941 | r14942 | |
| 76 | 76 | bosco_state(const machine_config &mconfig, device_type type, const char *tag) |
| 77 | 77 | : galaga_state(mconfig, type, tag), |
| 78 | 78 | m_bosco_radarattr(*this, "bosco_radarattr"), |
| 79 | | m_bosco_starcontrol(*this, "bosco_starcontrol"), |
| 79 | m_bosco_starcontrol(*this, "starcontrol"), |
| 80 | 80 | m_bosco_starblink(*this, "bosco_starblink") { } |
| 81 | 81 | |
| 82 | 82 | required_shared_ptr<UINT8> m_bosco_radarattr; |
src/mame/includes/fromance.h
| r14941 | r14942 | |
| 11 | 11 | { |
| 12 | 12 | public: |
| 13 | 13 | fromance_state(const machine_config &mconfig, device_type type, const char *tag) |
| 14 | | : driver_device(mconfig, type, tag) { } |
| 14 | : driver_device(mconfig, type, tag), |
| 15 | m_videoram(*this, "videoram"), |
| 16 | m_spriteram(*this, "spriteram") { } |
| 15 | 17 | |
| 16 | 18 | /* memory pointers (used by pipedrm) */ |
| 17 | | UINT8 * m_videoram; |
| 18 | | UINT8 * m_spriteram; |
| 19 | optional_shared_ptr<UINT8> m_videoram; |
| 20 | optional_shared_ptr<UINT8> m_spriteram; |
| 19 | 21 | // UINT8 * m_paletteram; // currently this uses generic palette handling |
| 20 | | size_t m_videoram_size; |
| 21 | | size_t m_spriteram_size; |
| 22 | 22 | |
| 23 | 23 | /* video-related */ |
| 24 | 24 | tilemap_t *m_bg_tilemap; |
src/mame/drivers/pipedrm.c
| r14941 | r14942 | |
| 269 | 269 | AM_RANGE(0x8000, 0x9fff) AM_RAM |
| 270 | 270 | AM_RANGE(0xa000, 0xbfff) AM_ROMBANK("bank1") |
| 271 | 271 | AM_RANGE(0xc000, 0xcfff) AM_RAM_WRITE(paletteram_xRRRRRGGGGGBBBBB_byte_le_w) AM_SHARE("paletteram") |
| 272 | | AM_RANGE(0xd000, 0xffff) AM_READWRITE(fromance_videoram_r, fromance_videoram_w) AM_BASE_SIZE(m_videoram, m_videoram_size) |
| 272 | AM_RANGE(0xd000, 0xffff) AM_READWRITE(fromance_videoram_r, fromance_videoram_w) AM_SHARE("videoram") |
| 273 | 273 | ADDRESS_MAP_END |
| 274 | 274 | |
| 275 | 275 | |
| r14941 | r14942 | |
| 879 | 879 | fromance_state *state = machine.driver_data<fromance_state>(); |
| 880 | 880 | |
| 881 | 881 | /* sprite RAM lives at the end of palette RAM */ |
| 882 | | state->m_spriteram = &state->m_generic_paletteram_8[0xc00]; |
| 883 | | state->m_spriteram_size = 0x400; |
| 882 | state->m_spriteram.set_target(&state->m_generic_paletteram_8[0xc00], 0x400); |
| 884 | 883 | machine.device("maincpu")->memory().space(AS_PROGRAM)->install_ram(0xcc00, 0xcfff, state->m_spriteram); |
| 885 | 884 | } |
| 886 | 885 | |
src/mame/drivers/chinagat.c
| r14941 | r14942 | |
| 311 | 311 | AM_RANGE(0x2800, 0x2fff) AM_RAM_WRITE(ddragon_bgvideoram_w) AM_SHARE("bgvideoram") |
| 312 | 312 | AM_RANGE(0x3000, 0x317f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_byte_split_lo_w) AM_SHARE("paletteram") |
| 313 | 313 | AM_RANGE(0x3400, 0x357f) AM_WRITE(paletteram_xxxxBBBBGGGGRRRR_byte_split_hi_w) AM_SHARE("paletteram2") |
| 314 | | AM_RANGE(0x3800, 0x397f) AM_WRITE_BANK("bank3") AM_BASE_SIZE(m_spriteram, m_spriteram_size) |
| 314 | AM_RANGE(0x3800, 0x397f) AM_WRITE_BANK("bank3") AM_SHARE("spriteram") |
| 315 | 315 | AM_RANGE(0x3e00, 0x3e04) AM_WRITE_LEGACY(chinagat_interrupt_w) |
| 316 | 316 | AM_RANGE(0x3e06, 0x3e06) AM_WRITEONLY AM_SHARE("scrolly_lo") |
| 317 | 317 | AM_RANGE(0x3e07, 0x3e07) AM_WRITEONLY AM_SHARE("scrollx_lo") |
src/mame/drivers/arcadia.c
| r14941 | r14942 | |
| 195 | 195 | |
| 196 | 196 | static ADDRESS_MAP_START( amiga_map, AS_PROGRAM, 16, arcadia_amiga_state ) |
| 197 | 197 | ADDRESS_MAP_UNMAP_HIGH |
| 198 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 198 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 199 | 199 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 200 | 200 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 201 | 201 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
src/mame/drivers/cd32.c
| r14941 | r14942 | |
| 1238 | 1238 | { |
| 1239 | 1239 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1240 | 1240 | |
| 1241 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1241 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1242 | 1242 | { |
| 1243 | 1243 | //(*state->m_chip_ram_w)(0x051c02, 0x0000); |
| 1244 | 1244 | |
| r14941 | r14942 | |
| 1258 | 1258 | { |
| 1259 | 1259 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1260 | 1260 | |
| 1261 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1261 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1262 | 1262 | { |
| 1263 | 1263 | //amiga_chip_ram_w8(state, 0x002907, 0x00); |
| 1264 | 1264 | |
| r14941 | r14942 | |
| 1279 | 1279 | { |
| 1280 | 1280 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1281 | 1281 | |
| 1282 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1282 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1283 | 1283 | { |
| 1284 | 1284 | //amiga_chip_ram_w8(state, 0x001e1b, 0x00); |
| 1285 | 1285 | |
| r14941 | r14942 | |
| 1301 | 1301 | { |
| 1302 | 1302 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1303 | 1303 | |
| 1304 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1304 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1305 | 1305 | { |
| 1306 | 1306 | //amiga_chip_ram_w8(state, 0x046107, 0x00); |
| 1307 | 1307 | |
| r14941 | r14942 | |
| 1322 | 1322 | { |
| 1323 | 1323 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1324 | 1324 | |
| 1325 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1325 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1326 | 1326 | { |
| 1327 | 1327 | //amiga_chip_ram_w8(state, 0x00281c, 0x00); |
| 1328 | 1328 | |
| r14941 | r14942 | |
| 1343 | 1343 | { |
| 1344 | 1344 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1345 | 1345 | |
| 1346 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1346 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1347 | 1347 | { |
| 1348 | 1348 | //(*state->m_chip_ram_w)(0x04bfa0, 0x0000); |
| 1349 | 1349 | |
| r14941 | r14942 | |
| 1363 | 1363 | { |
| 1364 | 1364 | cd32_state *state = machine.driver_data<cd32_state>(); |
| 1365 | 1365 | |
| 1366 | | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram_size) |
| 1366 | if (cpu_get_pc(machine.device("maincpu")) < state->m_chip_ram.bytes()) |
| 1367 | 1367 | { |
| 1368 | 1368 | //amiga_chip_ram_w8(state, 0x044f7e, 0x00); |
| 1369 | 1369 | |
src/mame/drivers/namcos11.c
| r14941 | r14942 | |
| 285 | 285 | namcos11_state(const machine_config &mconfig, device_type type, const char *tag) |
| 286 | 286 | : psx_state(mconfig, type, tag), |
| 287 | 287 | m_sharedram(*this,"sharedram"), |
| 288 | m_keycus(*this,"keycus"), |
| 288 | 289 | m_maincpu(*this,"maincpu"), |
| 289 | 290 | m_mcu(*this,"c76") |
| 290 | 291 | { } |
| 291 | 292 | |
| 292 | 293 | required_shared_ptr<UINT32> m_sharedram; |
| 293 | | UINT32 *m_keycus; |
| 294 | required_shared_ptr<UINT32> m_keycus; |
| 294 | 295 | size_t m_keycus_size; |
| 295 | 296 | UINT8 m_su_83; |
| 296 | 297 | |
| r14941 | r14942 | |
| 714 | 715 | static ADDRESS_MAP_START( namcos11_map, AS_PROGRAM, 32, namcos11_state ) |
| 715 | 716 | AM_RANGE(0x00000000, 0x003fffff) AM_RAM AM_SHARE("share1") /* ram */ |
| 716 | 717 | AM_RANGE(0x1fa04000, 0x1fa0ffff) AM_RAM AM_SHARE("sharedram") /* shared ram with C76 */ |
| 717 | | AM_RANGE(0x1fa20000, 0x1fa2ffff) AM_WRITE(keycus_w) AM_BASE_SIZE(m_keycus, m_keycus_size) /* keycus */ |
| 718 | AM_RANGE(0x1fa20000, 0x1fa2ffff) AM_WRITE(keycus_w) AM_SHARE("keycus") /* keycus */ |
| 718 | 719 | AM_RANGE(0x1fa30000, 0x1fa30fff) AM_DEVREADWRITE8_LEGACY("at28c16", at28c16_r, at28c16_w, 0x00ff00ff) /* eeprom */ |
| 719 | 720 | AM_RANGE(0x1fb00000, 0x1fb00003) AM_WRITENOP /* ?? */ |
| 720 | 721 | AM_RANGE(0x1fbf6000, 0x1fbf6003) AM_WRITENOP /* ?? */ |
src/mame/drivers/alg.c
| r14941 | r14942 | |
| 280 | 280 | |
| 281 | 281 | static ADDRESS_MAP_START( main_map_r1, AS_PROGRAM, 16, alg_state ) |
| 282 | 282 | ADDRESS_MAP_UNMAP_HIGH |
| 283 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 283 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 284 | 284 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 285 | 285 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 286 | 286 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
| r14941 | r14942 | |
| 293 | 293 | |
| 294 | 294 | static ADDRESS_MAP_START( main_map_r2, AS_PROGRAM, 16, alg_state ) |
| 295 | 295 | ADDRESS_MAP_UNMAP_HIGH |
| 296 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 296 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 297 | 297 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 298 | 298 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 299 | 299 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
| r14941 | r14942 | |
| 306 | 306 | |
| 307 | 307 | static ADDRESS_MAP_START( main_map_picmatic, AS_PROGRAM, 16, alg_state ) |
| 308 | 308 | ADDRESS_MAP_UNMAP_HIGH |
| 309 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 309 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 310 | 310 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 311 | 311 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 312 | 312 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
src/mame/drivers/galaga.c
| r14941 | r14942 | |
| 932 | 932 | AM_RANGE(0x9800, 0x980f) AM_WRITEONLY AM_SHARE("bosco_radarattr") |
| 933 | 933 | AM_RANGE(0x9810, 0x9810) AM_WRITE_LEGACY(bosco_scrollx_w) |
| 934 | 934 | AM_RANGE(0x9820, 0x9820) AM_WRITE_LEGACY(bosco_scrolly_w) |
| 935 | | AM_RANGE(0x9830, 0x9830) AM_WRITEONLY AM_SHARE("bosco_starcontrol") |
| 935 | AM_RANGE(0x9830, 0x9830) AM_WRITEONLY AM_SHARE("starcontrol") |
| 936 | 936 | AM_RANGE(0x9840, 0x9840) AM_WRITE_LEGACY(bosco_starclr_w) |
| 937 | 937 | AM_RANGE(0x9870, 0x9870) AM_WRITE(bosco_flip_screen_w) |
| 938 | 938 | AM_RANGE(0x9874, 0x9875) AM_WRITEONLY AM_SHARE("bosco_starblink") |
| r14941 | r14942 | |
| 951 | 951 | AM_RANGE(0x8800, 0x8bff) AM_RAM AM_SHARE("galaga_ram1") |
| 952 | 952 | AM_RANGE(0x9000, 0x93ff) AM_RAM AM_SHARE("galaga_ram2") |
| 953 | 953 | AM_RANGE(0x9800, 0x9bff) AM_RAM AM_SHARE("galaga_ram3") |
| 954 | | AM_RANGE(0xa000, 0xa005) AM_WRITEONLY AM_SHARE("galaga_starcontrol") |
| 954 | AM_RANGE(0xa000, 0xa005) AM_WRITEONLY AM_SHARE("starcontrol") |
| 955 | 955 | AM_RANGE(0xa007, 0xa007) AM_WRITE(galaga_flip_screen_w) |
| 956 | 956 | ADDRESS_MAP_END |
| 957 | 957 | |
| r14941 | r14942 | |
| 968 | 968 | AM_RANGE(0x8000, 0x87ff) AM_RAM AM_SHARE("xevious_sr1") /* work RAM + sprite registers */ |
| 969 | 969 | AM_RANGE(0x9000, 0x97ff) AM_RAM AM_SHARE("xevious_sr2") /* work RAM + sprite registers */ |
| 970 | 970 | AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_SHARE("xevious_sr3") /* work RAM + sprite registers */ |
| 971 | | AM_RANGE(0xb000, 0xb7ff) AM_RAM_WRITE_LEGACY(xevious_fg_colorram_w) AM_SHARE("xevious_fg_colorram") |
| 972 | | AM_RANGE(0xb800, 0xbfff) AM_RAM_WRITE_LEGACY(xevious_bg_colorram_w) AM_SHARE("xevious_bg_colorram") |
| 973 | | AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE_LEGACY(xevious_fg_videoram_w) AM_SHARE("xevious_fg_videoram") |
| 974 | | AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE_LEGACY(xevious_bg_videoram_w) AM_SHARE("xevious_bg_videoram") |
| 971 | AM_RANGE(0xb000, 0xb7ff) AM_RAM_WRITE_LEGACY(xevious_fg_colorram_w) AM_SHARE("fg_colorram") |
| 972 | AM_RANGE(0xb800, 0xbfff) AM_RAM_WRITE_LEGACY(xevious_bg_colorram_w) AM_SHARE("bg_colorram") |
| 973 | AM_RANGE(0xc000, 0xc7ff) AM_RAM_WRITE_LEGACY(xevious_fg_videoram_w) AM_SHARE("fg_videoram") |
| 974 | AM_RANGE(0xc800, 0xcfff) AM_RAM_WRITE_LEGACY(xevious_bg_videoram_w) AM_SHARE("bg_videoram") |
| 975 | 975 | AM_RANGE(0xd000, 0xd07f) AM_WRITE_LEGACY(xevious_vh_latch_w) |
| 976 | 976 | AM_RANGE(0xf000, 0xffff) AM_READWRITE_LEGACY(xevious_bb_r, xevious_bs_w) |
| 977 | 977 | ADDRESS_MAP_END |
src/mame/drivers/upscope.c
| r14941 | r14942 | |
| 243 | 243 | |
| 244 | 244 | static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, upscope_state ) |
| 245 | 245 | ADDRESS_MAP_UNMAP_HIGH |
| 246 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 246 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 247 | 247 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 248 | 248 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 249 | 249 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
src/mame/drivers/mquake.c
| r14941 | r14942 | |
| 133 | 133 | |
| 134 | 134 | static ADDRESS_MAP_START( main_map, AS_PROGRAM, 16, amiga_state ) |
| 135 | 135 | ADDRESS_MAP_UNMAP_HIGH |
| 136 | | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 136 | AM_RANGE(0x000000, 0x07ffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 137 | 137 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 138 | 138 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_SHARE("custom_regs") |
| 139 | 139 | AM_RANGE(0xe80000, 0xe8ffff) AM_READWRITE_LEGACY(amiga_autoconfig_r, amiga_autoconfig_w) |
src/mess/machine/amigacrt.c
| r14941 | r14942 | |
| 230 | 230 | |
| 231 | 231 | if ( offset == 0x03 ) /* disable cart oberlay on chip mem */ |
| 232 | 232 | { |
| 233 | | UINT32 mirror_mask = state->m_chip_ram_size; |
| 233 | UINT32 mirror_mask = state->m_chip_ram.bytes(); |
| 234 | 234 | |
| 235 | 235 | memory_set_bank(space->machine(), "bank1", 0); |
| 236 | 236 | |
| r14941 | r14942 | |
| 240 | 240 | } |
| 241 | 241 | |
| 242 | 242 | /* overlay disabled, map RAM on 0x000000 */ |
| 243 | | space->install_write_bank(0x000000, state->m_chip_ram_size - 1, 0, mirror_mask, "bank1"); |
| 243 | space->install_write_bank(0x000000, state->m_chip_ram.bytes() - 1, 0, mirror_mask, "bank1"); |
| 244 | 244 | } |
| 245 | 245 | } |
| 246 | 246 | |
| r14941 | r14942 | |
| 282 | 282 | memory_set_bank(machine, "bank1", 2); |
| 283 | 283 | |
| 284 | 284 | /* writes go to chipram */ |
| 285 | | machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x000000, state->m_chip_ram_size - 1, FUNC(amiga_ar23_chipmem_w)); |
| 285 | machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_write_handler(0x000000, state->m_chip_ram.bytes() - 1, FUNC(amiga_ar23_chipmem_w)); |
| 286 | 286 | |
| 287 | 287 | /* trigger NMI irq */ |
| 288 | 288 | cputag_set_input_line(machine, "maincpu", 7, PULSE_LINE); |
src/mess/drivers/amiga.c
| r14941 | r14942 | |
| 94 | 94 | |
| 95 | 95 | static ADDRESS_MAP_START(amiga_mem, AS_PROGRAM, 16, amiga_state ) |
| 96 | 96 | ADDRESS_MAP_UNMAP_HIGH |
| 97 | | AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x80000) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 97 | AM_RANGE(0x000000, 0x07ffff) AM_MIRROR(0x80000) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 98 | 98 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 99 | 99 | AM_RANGE(0xc00000, 0xc7ffff) AM_RAM /* slow-mem */ |
| 100 | 100 | AM_RANGE(0xc80000, 0xcfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) /* see Note 1 above */ |
| r14941 | r14942 | |
| 148 | 148 | */ |
| 149 | 149 | |
| 150 | 150 | static ADDRESS_MAP_START(cdtv_mem, AS_PROGRAM, 16, amiga_state ) |
| 151 | | AM_RANGE(0x000000, 0x0fffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 151 | AM_RANGE(0x000000, 0x0fffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 152 | 152 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 153 | 153 | AM_RANGE(0xdc0000, 0xdc003f) AM_READWRITE_LEGACY(amiga_clock_r, amiga_clock_w) |
| 154 | 154 | AM_RANGE(0xdc8000, 0xdc87ff) AM_RAM AM_SHARE("nvram") |
| r14941 | r14942 | |
| 176 | 176 | ADDRESS_MAP_END |
| 177 | 177 | |
| 178 | 178 | static ADDRESS_MAP_START(a1000_mem, AS_PROGRAM, 16, amiga_state ) |
| 179 | | AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0xc0000) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 179 | AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0xc0000) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 180 | 180 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE_LEGACY(amiga_cia_r, amiga_cia_w) |
| 181 | 181 | AM_RANGE(0xc00000, 0xc3ffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) /* See Note 1 above */ |
| 182 | 182 | AM_RANGE(0xdf0000, 0xdfffff) AM_READWRITE_LEGACY(amiga_custom_r, amiga_custom_w) AM_BASE(m_custom_regs) /* Custom Chips */ |
| r14941 | r14942 | |
| 540 | 540 | |
| 541 | 541 | /* swap the write handlers between ROM and bank 1 based on the bit */ |
| 542 | 542 | if ((data & 1) == 0) { |
| 543 | | UINT32 mirror_mask = state->m_chip_ram_size; |
| 543 | UINT32 mirror_mask = state->m_chip_ram.bytes(); |
| 544 | 544 | |
| 545 | 545 | while( (mirror_mask<<1) < 0x100000 ) { |
| 546 | 546 | mirror_mask |= ( mirror_mask << 1 ); |
| 547 | 547 | } |
| 548 | 548 | |
| 549 | 549 | /* overlay disabled, map RAM on 0x000000 */ |
| 550 | | device->machine().device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x000000, state->m_chip_ram_size - 1, 0, mirror_mask, "bank1"); |
| 550 | device->machine().device("maincpu")->memory().space(AS_PROGRAM)->install_write_bank(0x000000, state->m_chip_ram.bytes() - 1, 0, mirror_mask, "bank1"); |
| 551 | 551 | |
| 552 | 552 | /* if there is a cart region, check for cart overlay */ |
| 553 | 553 | if (device->machine().region("user2")->base() != NULL) |
| r14941 | r14942 | |
| 555 | 555 | } |
| 556 | 556 | else |
| 557 | 557 | /* overlay enabled, map Amiga system ROM on 0x000000 */ |
| 558 | | device->machine().device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x000000, state->m_chip_ram_size - 1); |
| 558 | device->machine().device("maincpu")->memory().space(AS_PROGRAM)->unmap_write(0x000000, state->m_chip_ram.bytes() - 1); |
| 559 | 559 | |
| 560 | 560 | set_led_status( device->machine(), 0, ( data & 2 ) ? 0 : 1 ); /* bit 2 = Power Led on Amiga */ |
| 561 | 561 | output_set_value("power_led", ( data & 2 ) ? 0 : 1); |
src/mess/drivers/ami1200.c
| r14941 | r14942 | |
| 121 | 121 | |
| 122 | 122 | static ADDRESS_MAP_START( a1200_map, AS_PROGRAM, 32, ami1200_state ) |
| 123 | 123 | ADDRESS_MAP_UNMAP_HIGH |
| 124 | | AM_RANGE(0x000000, 0x1fffff) AM_RAMBANK("bank1") AM_BASE_SIZE(m_chip_ram, m_chip_ram_size) |
| 124 | AM_RANGE(0x000000, 0x1fffff) AM_RAMBANK("bank1") AM_SHARE("chip_ram") |
| 125 | 125 | AM_RANGE(0xbfa000, 0xbfa003) AM_WRITE_LEGACY(aga_overlay_w) |
| 126 | 126 | AM_RANGE(0xbfd000, 0xbfefff) AM_READWRITE16_LEGACY(amiga_cia_r, amiga_cia_w, 0xffffffff) |
| 127 | 127 | AM_RANGE(0xc00000, 0xdfffff) AM_READWRITE16_LEGACY(amiga_custom_r, amiga_custom_w, 0xffffffff) AM_BASE(m_custom_regs) |