trunk/src/mess/drivers/prof80.c
| r21099 | r21100 | |
| 178 | 178 | break; |
| 179 | 179 | |
| 180 | 180 | case 2: // _RTS |
| 181 | m_rs232a->rts_w(fb); |
| 181 | 182 | break; |
| 182 | 183 | |
| 183 | 184 | case 3: // TX |
| 185 | m_rs232a->tx(fb); |
| 184 | 186 | break; |
| 185 | 187 | |
| 186 | 188 | case 4: // _MSTOP |
| r21099 | r21100 | |
| 192 | 194 | break; |
| 193 | 195 | |
| 194 | 196 | case 5: // TXP |
| 197 | m_rs232b->tx(fb); |
| 195 | 198 | break; |
| 196 | 199 | |
| 197 | 200 | case 6: // TSTB |
| r21099 | r21100 | |
| 262 | 265 | UINT8 data = 0; |
| 263 | 266 | |
| 264 | 267 | // serial receive |
| 268 | data |= !m_rs232a->rx(); |
| 265 | 269 | |
| 266 | 270 | // clear to send |
| 267 | | data |= 0x10; |
| 271 | data |= m_rs232a->cts_r() << 4; |
| 272 | data |= m_rs232b->cts_r() << 7; |
| 268 | 273 | |
| 269 | 274 | // floppy index |
| 270 | 275 | data |= (m_floppy0->get_device() ? m_floppy0->get_device()->idx_r() : m_floppy1->get_device() ? m_floppy1->get_device()->idx_r() : 1) << 5; |
| r21099 | r21100 | |
| 523 | 528 | SLOT_INTERFACE_END |
| 524 | 529 | |
| 525 | 530 | |
| 531 | //------------------------------------------------- |
| 532 | // rs232_port_interface rs232_intf |
| 533 | //------------------------------------------------- |
| 526 | 534 | |
| 535 | static const rs232_port_interface rs232_intf = |
| 536 | { |
| 537 | DEVCB_NULL, |
| 538 | DEVCB_NULL, |
| 539 | DEVCB_NULL, |
| 540 | DEVCB_NULL, |
| 541 | DEVCB_NULL |
| 542 | }; |
| 543 | |
| 544 | |
| 545 | |
| 527 | 546 | //************************************************************************** |
| 528 | 547 | // MACHINE INITIALIZATION |
| 529 | 548 | //************************************************************************** |
| r21099 | r21100 | |
| 610 | 629 | MCFG_ECBBUS_SLOT_ADD(4, "ecb_4", prof80_ecb_cards, NULL, NULL) |
| 611 | 630 | MCFG_ECBBUS_SLOT_ADD(5, "ecb_5", prof80_ecb_cards, NULL, NULL) |
| 612 | 631 | |
| 632 | // V24 |
| 633 | MCFG_RS232_PORT_ADD(RS232_A_TAG, rs232_intf, default_rs232_devices, NULL, NULL) |
| 634 | MCFG_RS232_PORT_ADD(RS232_B_TAG, rs232_intf, default_rs232_devices, NULL, NULL) |
| 635 | |
| 613 | 636 | // internal ram |
| 614 | 637 | MCFG_RAM_ADD(RAM_TAG) |
| 615 | 638 | MCFG_RAM_DEFAULT_SIZE("128K") |
trunk/src/mess/includes/prof80.h
| r21099 | r21100 | |
| 11 | 11 | #include "machine/ecb_grip.h" |
| 12 | 12 | #include "machine/ram.h" |
| 13 | 13 | #include "machine/rescap.h" |
| 14 | #include "machine/serial.h" |
| 14 | 15 | #include "machine/upd1990a.h" |
| 15 | 16 | #include "machine/upd765.h" |
| 16 | 17 | |
| 17 | 18 | #define Z80_TAG "z1" |
| 18 | 19 | #define UPD765_TAG "z38" |
| 19 | 20 | #define UPD1990A_TAG "z43" |
| 21 | #define RS232_A_TAG "rs232a" |
| 22 | #define RS232_B_TAG "rs232b" |
| 20 | 23 | |
| 21 | 24 | // ------------------------------------------------------------------------ |
| 22 | 25 | |
| r21099 | r21100 | |
| 38 | 41 | m_floppy0(*this, UPD765_TAG":0"), |
| 39 | 42 | m_floppy1(*this, UPD765_TAG":1"), |
| 40 | 43 | m_ecb(*this, ECBBUS_TAG), |
| 44 | m_rs232a(*this, RS232_A_TAG), |
| 45 | m_rs232b(*this, RS232_B_TAG), |
| 41 | 46 | m_rom(*this, Z80_TAG), |
| 42 | 47 | m_j4(*this, "J4"), |
| 43 | 48 | m_j5(*this, "J5") |
| r21099 | r21100 | |
| 50 | 55 | required_device<floppy_connector> m_floppy0; |
| 51 | 56 | required_device<floppy_connector> m_floppy1; |
| 52 | 57 | required_device<ecbbus_device> m_ecb; |
| 58 | required_device<rs232_port_device> m_rs232a; |
| 59 | required_device<rs232_port_device> m_rs232b; |
| 53 | 60 | required_memory_region m_rom; |
| 54 | 61 | required_ioport m_j4; |
| 55 | 62 | required_ioport m_j5; |