trunk/src/mess/machine/md_svp.c
| r22023 | r22024 | |
| 314 | 314 | //------------------------------------------------- |
| 315 | 315 | |
| 316 | 316 | ADDRESS_MAP_START( md_svp_ssp_map, AS_PROGRAM, 16, md_rom_svp_device ) |
| 317 | | AM_RANGE(0x0000, 0x03ff) AM_READ(rom_read1) |
| 318 | | AM_RANGE(0x0400, 0xffff) AM_READ(rom_read2) |
| 319 | | // AM_RANGE(0x0000, 0x03ff) AM_ROMBANK("bank3") |
| 320 | | // AM_RANGE(0x0400, 0xffff) AM_ROMBANK("bank4") |
| 317 | // AM_RANGE(0x0000, 0x03ff) AM_READ(rom_read1) |
| 318 | // AM_RANGE(0x0400, 0xffff) AM_READ(rom_read2) |
| 319 | AM_RANGE(0x0000, 0x03ff) AM_ROMBANK("iram_svp") |
| 320 | AM_RANGE(0x0400, 0xffff) AM_ROMBANK("cart_svp") |
| 321 | 321 | ADDRESS_MAP_END |
| 322 | 322 | |
| 323 | 323 | //------------------------------------------------- |
| r22023 | r22024 | |
| 361 | 361 | } |
| 362 | 362 | |
| 363 | 363 | |
| 364 | void md_rom_svp_device::set_bank_to_rom(const char *banktag, UINT32 offset) |
| 365 | { |
| 366 | if (membank(banktag)) |
| 367 | membank(banktag)->set_base(m_rom + offset); |
| 368 | } |
| 369 | |
| 370 | |
| 364 | 371 | void md_rom_svp_device::device_start() |
| 365 | 372 | { |
| 366 | 373 | memset(m_pmac_read, 0, ARRAY_LENGTH(m_pmac_read)); |
| r22023 | r22024 | |
| 373 | 380 | m_xst2 = 0; |
| 374 | 381 | |
| 375 | 382 | /* SVP stuff */ |
| 383 | // DRAM |
| 376 | 384 | m_dram = auto_alloc_array(machine(), UINT8, 0x20000); |
| 385 | // IRAM |
| 377 | 386 | m_iram = auto_alloc_array(machine(), UINT8, 0x800); |
| 387 | this->membank("iram_svp")->set_base(m_iram); |
| 388 | // the other bank, "cart_svp", is setup at call_load |
| 378 | 389 | } |
| 379 | 390 | |
| 380 | 391 | READ16_MEMBER(md_rom_svp_device::read) |