src/mess/drivers/pc88va.c
| r9483 | r9484 | |
| 18 | 18 | #include "machine/i8255a.h" |
| 19 | 19 | #include "machine/pic8259.h" |
| 20 | 20 | #include "machine/pit8253.h" |
| 21 | | #include "machine/pc_fdc.h" |
| 22 | 21 | #include "machine/upd765.h" |
| 23 | 22 | |
| 24 | 23 | static UINT16 *palram; |
| r9483 | r9484 | |
| 1292 | 1291 | DEVCB_DEVICE_LINE("pic8259_master", pic8259_ir7_w) |
| 1293 | 1292 | }; |
| 1294 | 1293 | |
| 1295 | | static void pc88va_fdc_interrupt(running_machine *machine, int state) |
| 1296 | | { |
| 1297 | | pic8259_ir3_w(machine->device( "pic8259_slave"), state); |
| 1298 | | } |
| 1299 | | |
| 1300 | | |
| 1301 | | static running_device *pc88va_get_device(running_machine *machine) |
| 1302 | | { |
| 1303 | | return machine->device("upd765"); |
| 1304 | | } |
| 1305 | | |
| 1306 | | static const struct pc_fdc_interface pc88va_fdc_interface = |
| 1307 | | { |
| 1308 | | pc88va_fdc_interrupt, |
| 1309 | | NULL, |
| 1310 | | NULL, |
| 1311 | | pc88va_get_device |
| 1312 | | }; |
| 1313 | | |
| 1314 | 1294 | static MACHINE_START( pc88va ) |
| 1315 | 1295 | { |
| 1316 | 1296 | cpu_set_irq_callback(machine->device("maincpu"), pc88va_irq_callback); |
| 1317 | 1297 | |
| 1318 | | pc_fdc_init(machine, &pc88va_fdc_interface); |
| 1319 | | |
| 1320 | 1298 | t3_mouse_timer = timer_alloc(machine, t3_mouse_callback, 0); |
| 1321 | 1299 | timer_adjust_oneshot(t3_mouse_timer, attotime_never, 0); |
| 1322 | 1300 | } |
| r9483 | r9484 | |
| 1390 | 1368 | } |
| 1391 | 1369 | }; |
| 1392 | 1370 | |
| 1371 | |
| 1372 | static WRITE_LINE_DEVICE_HANDLER(pc88va_upd765_interrupt) |
| 1373 | { |
| 1374 | pic8259_ir3_w(device->machine->device( "pic8259_slave"), state); |
| 1375 | }; |
| 1376 | |
| 1377 | |
| 1378 | static const struct upd765_interface pc88va_upd765_interface = |
| 1379 | { |
| 1380 | DEVCB_LINE(pc88va_upd765_interrupt), |
| 1381 | NULL, //DRQ, TODO |
| 1382 | NULL, |
| 1383 | UPD765_RDY_PIN_CONNECTED, |
| 1384 | {FLOPPY_0,NULL, NULL, NULL} |
| 1385 | }; |
| 1386 | |
| 1393 | 1387 | static MACHINE_CONFIG_START( pc88va, driver_device ) |
| 1394 | 1388 | |
| 1395 | 1389 | MDRV_CPU_ADD("maincpu", V30, 8000000) /* 8 MHz */ |
| r9483 | r9484 | |
| 1424 | 1418 | MDRV_PIC8259_ADD( "pic8259_master", pc88va_pic8259_master_config ) |
| 1425 | 1419 | MDRV_PIC8259_ADD( "pic8259_slave", pc88va_pic8259_slave_config ) |
| 1426 | 1420 | |
| 1427 | | MDRV_UPD765A_ADD("upd765", pc_fdc_upd765_connected_interface) |
| 1421 | MDRV_UPD765A_ADD("upd765", pc88va_upd765_interface) |
| 1428 | 1422 | MDRV_FLOPPY_2_DRIVES_ADD(pc88va_floppy_config) |
| 1429 | 1423 | |
| 1430 | 1424 | MDRV_PIT8253_ADD("pit8253",pc88va_pit8253_config) |