trunk/src/mess/drivers/apple2e.c
| r241929 | r241930 | |
| 476 | 476 | { |
| 477 | 477 | UINT8 retval = m_exp_regs[offset]; |
| 478 | 478 | |
| 479 | if (!m_exp_ram) |
| 480 | { |
| 481 | return 0xff; |
| 482 | } |
| 483 | |
| 479 | 484 | if (offset == 3) |
| 480 | 485 | { |
| 481 | 486 | if (m_exp_liveptr <= m_exp_addrmask) |
| r241929 | r241930 | |
| 497 | 502 | |
| 498 | 503 | WRITE8_MEMBER(apple2e_state::memexp_w) |
| 499 | 504 | { |
| 505 | if (!m_exp_ram) |
| 506 | { |
| 507 | return; |
| 508 | } |
| 509 | |
| 500 | 510 | switch (offset & 0xf) |
| 501 | 511 | { |
| 502 | 512 | case 0: |
| r241929 | r241930 | |
| 2277 | 2287 | AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8) |
| 2278 | 2288 | ADDRESS_MAP_END |
| 2279 | 2289 | |
| 2290 | static ADDRESS_MAP_START( laser128_map, AS_PROGRAM, 8, apple2e_state ) |
| 2291 | AM_RANGE(0x0000, 0x01ff) AM_DEVICE(A2_0000_TAG, address_map_bank_device, amap8) |
| 2292 | AM_RANGE(0x0200, 0x03ff) AM_DEVICE(A2_0200_TAG, address_map_bank_device, amap8) |
| 2293 | AM_RANGE(0x0400, 0x07ff) AM_DEVICE(A2_0400_TAG, address_map_bank_device, amap8) |
| 2294 | AM_RANGE(0x0800, 0x1fff) AM_DEVICE(A2_0800_TAG, address_map_bank_device, amap8) |
| 2295 | AM_RANGE(0x2000, 0x3fff) AM_DEVICE(A2_2000_TAG, address_map_bank_device, amap8) |
| 2296 | AM_RANGE(0x4000, 0xbfff) AM_DEVICE(A2_4000_TAG, address_map_bank_device, amap8) |
| 2297 | AM_RANGE(0xc000, 0xc07f) AM_READWRITE(c000_r, c000_w) |
| 2298 | // AM_RANGE(0xc098, 0xc09b) AM_DEVREADWRITE(IIC_ACIA1_TAG, mos6551_device, read, write) |
| 2299 | // AM_RANGE(0xc0a8, 0xc0ab) AM_DEVREADWRITE(IIC_ACIA2_TAG, mos6551_device, read, write) |
| 2300 | AM_RANGE(0xc0d0, 0xc0d3) AM_READWRITE(memexp_r, memexp_w) |
| 2301 | AM_RANGE(0xc0e0, 0xc0ef) AM_DEVREADWRITE(LASER128_UDC_TAG, applefdc_base_device, read, write) |
| 2302 | AM_RANGE(0xc080, 0xc0ff) AM_READWRITE(c080_r, c080_w) |
| 2303 | AM_RANGE(0xc100, 0xc2ff) AM_DEVICE(A2_C100_TAG, address_map_bank_device, amap8) |
| 2304 | AM_RANGE(0xc300, 0xc3ff) AM_DEVICE(A2_C300_TAG, address_map_bank_device, amap8) |
| 2305 | AM_RANGE(0xc400, 0xc7ff) AM_DEVICE(A2_C400_TAG, address_map_bank_device, amap8) |
| 2306 | AM_RANGE(0xc800, 0xcfff) AM_DEVICE(A2_C800_TAG, address_map_bank_device, amap8) |
| 2307 | AM_RANGE(0xd000, 0xffff) AM_DEVICE(A2_UPPERBANK_TAG, address_map_bank_device, amap8) |
| 2308 | ADDRESS_MAP_END |
| 2309 | |
| 2280 | 2310 | static ADDRESS_MAP_START( r0000bank_map, AS_PROGRAM, 8, apple2e_state ) |
| 2281 | 2311 | AM_RANGE(0x0000, 0x01ff) AM_READWRITE(ram0000_r, ram0000_w) |
| 2282 | 2312 | AM_RANGE(0x0200, 0x03ff) AM_READWRITE(auxram0000_r, auxram0000_w) |
| r241929 | r241930 | |
| 3299 | 3329 | }; |
| 3300 | 3330 | |
| 3301 | 3331 | static MACHINE_CONFIG_DERIVED( laser128, apple2c ) |
| 3332 | MCFG_CPU_REPLACE("maincpu", M65C02, 1021800) /* close to actual CPU frequency of 1.020484 MHz */ |
| 3333 | MCFG_CPU_PROGRAM_MAP(laser128_map) |
| 3334 | |
| 3302 | 3335 | MCFG_APPLEFDC_ADD(LASER128_UDC_TAG, fdc_interface) |
| 3303 | 3336 | MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16) |
| 3304 | 3337 | |
| r241929 | r241930 | |
| 3311 | 3344 | MCFG_A2BUS_SLOT_ADD("a2bus", "sl5", apple2_cards, NULL) |
| 3312 | 3345 | MCFG_A2BUS_ONBOARD_ADD("a2bus", "sl6", A2BUS_LASER128, NULL) |
| 3313 | 3346 | MCFG_A2BUS_SLOT_ADD("a2bus", "sl7", apple2_cards, NULL) |
| 3347 | |
| 3348 | MCFG_RAM_MODIFY(RAM_TAG) |
| 3349 | MCFG_RAM_DEFAULT_SIZE("128K") |
| 3350 | MCFG_RAM_EXTRA_OPTIONS("128K, 384K, 640K, 896K, 1152K") |
| 3314 | 3351 | MACHINE_CONFIG_END |
| 3315 | 3352 | |
| 3316 | 3353 | static MACHINE_CONFIG_DERIVED( laser128ex2, apple2c ) |
| 3354 | MCFG_CPU_REPLACE("maincpu", M65C02, 1021800) /* close to actual CPU frequency of 1.020484 MHz */ |
| 3355 | MCFG_CPU_PROGRAM_MAP(laser128_map) |
| 3356 | |
| 3317 | 3357 | MCFG_APPLEFDC_ADD(LASER128_UDC_TAG, fdc_interface) |
| 3318 | 3358 | MCFG_LEGACY_FLOPPY_APPLE_2_DRIVES_ADD(floppy_interface,15,16) |
| 3319 | 3359 | |
| r241929 | r241930 | |
| 3326 | 3366 | MCFG_A2BUS_ONBOARD_ADD("a2bus", "sl5", A2BUS_LASER128, NULL) |
| 3327 | 3367 | MCFG_A2BUS_ONBOARD_ADD("a2bus", "sl6", A2BUS_LASER128, NULL) |
| 3328 | 3368 | MCFG_A2BUS_ONBOARD_ADD("a2bus", "sl7", A2BUS_LASER128, NULL) |
| 3369 | |
| 3370 | MCFG_RAM_MODIFY(RAM_TAG) |
| 3371 | MCFG_RAM_DEFAULT_SIZE("128K") |
| 3372 | MCFG_RAM_EXTRA_OPTIONS("128K, 384K, 640K, 896K, 1152K") |
| 3329 | 3373 | MACHINE_CONFIG_END |
| 3330 | 3374 | |
| 3331 | 3375 | /*************************************************************************** |