trunk/src/mess/drivers/cybiko.c
| r21105 | r21106 | |
| 328 | 328 | MCFG_RAM_ADD(RAM_TAG) |
| 329 | 329 | MCFG_RAM_DEFAULT_SIZE("512K") |
| 330 | 330 | MCFG_RAM_EXTRA_OPTIONS("1M") |
| 331 | |
| 332 | /* quickload */ |
| 333 | MCFG_QUICKLOAD_ADD("quickload", cybiko, "bin,nv", 0) |
| 331 | 334 | MACHINE_CONFIG_END |
| 332 | 335 | |
| 333 | 336 | static MACHINE_CONFIG_DERIVED( cybikov2, cybikov1) |
| r21105 | r21106 | |
| 358 | 361 | /* internal ram */ |
| 359 | 362 | MCFG_RAM_MODIFY(RAM_TAG) |
| 360 | 363 | MCFG_RAM_DEFAULT_SIZE("2M") |
| 364 | |
| 365 | /* quickload */ |
| 366 | MCFG_DEVICE_REMOVE("quickload") |
| 367 | MCFG_QUICKLOAD_ADD("quickload", cybikoxt, "bin,nv", 0) |
| 361 | 368 | MACHINE_CONFIG_END |
| 362 | 369 | |
| 363 | 370 | |
trunk/src/mess/machine/cybiko.c
| r21105 | r21106 | |
| 34 | 34 | m_maincpu->space(AS_PROGRAM).install_ram(0x400000, 0x400000 + m_ram->size() - 1, 0, 0x200000 - m_ram->size(), m_ram->pointer()); |
| 35 | 35 | } |
| 36 | 36 | |
| 37 | QUICKLOAD_LOAD( cybiko ) |
| 38 | { |
| 39 | running_machine &machine = image.device().machine(); |
| 40 | cybiko_state *state = machine.driver_data<cybiko_state>(); |
| 41 | |
| 42 | image.fread(state->m_flash1->get_ptr(), MIN(image.length(), 0x84000)); |
| 43 | |
| 44 | return IMAGE_INIT_PASS; |
| 45 | } |
| 46 | |
| 47 | QUICKLOAD_LOAD( cybikoxt ) |
| 48 | { |
| 49 | running_machine &machine = image.device().machine(); |
| 50 | cybiko_state *state = machine.driver_data<cybiko_state>(); |
| 51 | address_space &dest = state->m_maincpu->space(AS_PROGRAM); |
| 52 | UINT32 size = MIN(image.length(), 0x84000); |
| 53 | |
| 54 | UINT8 *buffer = global_alloc_array(UINT8, size); |
| 55 | image.fread(buffer, size); |
| 56 | for (int byte = 0; byte < size; byte++) |
| 57 | dest.write_byte(0x400000 + byte, buffer[byte]); |
| 58 | global_free(buffer); |
| 59 | |
| 60 | return IMAGE_INIT_PASS; |
| 61 | } |
| 62 | |
| 37 | 63 | /////////////////// |
| 38 | 64 | // MACHINE START // |
| 39 | 65 | /////////////////// |