trunk/src/emu/machine/6522via.h
r26865 | r26866 | |
31 | 31 | #define MCFG_VIA6522_READPB_HANDLER(_devcb) \ |
32 | 32 | devcb = &via6522_device::set_readpb_handler(*device, DEVCB2_##_devcb); |
33 | 33 | |
34 | | // NOT USED |
35 | | #define MCFG_VIA6522_READCA1_HANDLER(_devcb) \ |
36 | | devcb = &via6522_device::set_readca1_handler(*device, DEVCB2_##_devcb); |
37 | | |
38 | | // NOT USED |
39 | | #define MCFG_VIA6522_READCB1_HANDLER(_devcb) \ |
40 | | devcb = &via6522_device::set_readcb1_handler(*device, DEVCB2_##_devcb); |
41 | | |
42 | | // NOT USED |
43 | | #define MCFG_VIA6522_READCA2_HANDLER(_devcb) \ |
44 | | devcb = &via6522_device::set_readca2_handler(*device, DEVCB2_##_devcb); |
45 | | |
46 | 34 | #define MCFG_VIA6522_READCB2_HANDLER(_devcb) \ |
47 | 35 | devcb = &via6522_device::set_readcb2_handler(*device, DEVCB2_##_devcb); |
48 | 36 | |
r26865 | r26866 | |
86 | 74 | // TODO: REMOVE THESE |
87 | 75 | template<class _Object> static devcb2_base &set_readpa_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_a_handler.set_callback(object); } |
88 | 76 | template<class _Object> static devcb2_base &set_readpb_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_b_handler.set_callback(object); } |
89 | | template<class _Object> static devcb2_base &set_readca1_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_ca1_handler.set_callback(object); } |
90 | | template<class _Object> static devcb2_base &set_readcb1_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_cb1_handler.set_callback(object); } |
91 | | template<class _Object> static devcb2_base &set_readca2_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_ca2_handler.set_callback(object); } |
92 | 77 | template<class _Object> static devcb2_base &set_readcb2_handler(device_t &device, _Object object) { return downcast<via6522_device &>(device).m_in_cb2_handler.set_callback(object); } |
93 | 78 | |
94 | 79 | // TODO: CONVERT THESE TO WRITE LINE |
r26865 | r26866 | |
170 | 155 | // TODO: REMOVE THESE |
171 | 156 | devcb2_read8 m_in_a_handler; |
172 | 157 | devcb2_read8 m_in_b_handler; |
173 | | devcb2_read_line m_in_ca1_handler; |
174 | | devcb2_read_line m_in_cb1_handler; |
175 | | devcb2_read_line m_in_ca2_handler; |
176 | 158 | devcb2_read_line m_in_cb2_handler; |
177 | 159 | |
178 | 160 | // TODO: CONVERT THESE TO WRITE LINE |
trunk/src/emu/bus/cbmiec/c1541.c
r26865 | r26866 | |
588 | 588 | m_bus->clk_w(this, !BIT(data, 3)); |
589 | 589 | } |
590 | 590 | |
591 | | READ_LINE_MEMBER( base_c1541_device::atn_in_r ) |
592 | | { |
593 | | return !m_bus->atn_r(); |
594 | | } |
595 | | |
596 | 591 | WRITE_LINE_MEMBER( base_c1541_device::via0_ca2_w ) |
597 | 592 | { |
598 | 593 | if (m_other != NULL) |
r26865 | r26866 | |
814 | 809 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
815 | 810 | MCFG_VIA6522_READPA_HANDLER(READ8(base_c1541_device, via0_pa_r)) |
816 | 811 | MCFG_VIA6522_READPB_HANDLER(READ8(base_c1541_device, via0_pb_r)) |
817 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(base_c1541_device, atn_in_r)) |
818 | 812 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(base_c1541_device, via0_pa_w)) |
819 | 813 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(base_c1541_device, via0_pb_w)) |
820 | 814 | MCFG_VIA6522_CB2_HANDLER(WRITELINE(base_c1541_device, via0_ca2_w)) |
r26865 | r26866 | |
823 | 817 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
824 | 818 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
825 | 819 | MCFG_VIA6522_READPB_HANDLER(READ8(base_c1541_device, via1_pb_r)) |
826 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
827 | 820 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
828 | 821 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(base_c1541_device, via1_pb_w)) |
829 | 822 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
trunk/src/emu/bus/cbmiec/c1571.c
r26865 | r26866 | |
383 | 383 | update_iec(); |
384 | 384 | } |
385 | 385 | |
386 | | READ_LINE_MEMBER( c1571_device::atn_in_r ) |
387 | | { |
388 | | return !m_bus->atn_r(); |
389 | | } |
390 | 386 | |
391 | | READ_LINE_MEMBER( c1571_device::wprt_r ) |
392 | | { |
393 | | return !floppy_wpt_r(m_image); |
394 | | } |
395 | | |
396 | | |
397 | 387 | READ8_MEMBER( c1571_device::via1_r ) |
398 | 388 | { |
399 | 389 | UINT8 data = m_via1->read(space, offset); |
r26865 | r26866 | |
693 | 683 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
694 | 684 | MCFG_VIA6522_READPA_HANDLER(READ8(c1571_device, via0_pa_r)) |
695 | 685 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via0_pb_r)) |
696 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(c1571_device, atn_in_r)) |
697 | | MCFG_VIA6522_READCA2_HANDLER(READLINE(c1571_device, wprt_r)) |
698 | 686 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(c1571_device, via0_pa_w)) |
699 | 687 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via0_pb_w)) |
700 | 688 | MCFG_VIA6522_IRQ_HANDLER(WRITELINE(c1571_device, via0_irq_w)) |
r26865 | r26866 | |
702 | 690 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
703 | 691 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
704 | 692 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via1_pb_r)) |
705 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
706 | 693 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
707 | 694 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via1_pb_w)) |
708 | 695 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
r26865 | r26866 | |
743 | 730 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
744 | 731 | MCFG_VIA6522_READPA_HANDLER(READ8(c1571_device, via0_pa_r)) |
745 | 732 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via0_pb_r)) |
746 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(c1571_device, atn_in_r)) |
747 | | MCFG_VIA6522_READCA2_HANDLER(READLINE(c1571_device, wprt_r)) |
748 | 733 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(c1571_device, via0_pa_w)) |
749 | 734 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via0_pb_w)) |
750 | 735 | MCFG_VIA6522_IRQ_HANDLER(WRITELINE(c1571_device, via0_irq_w)) |
r26865 | r26866 | |
752 | 737 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
753 | 738 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
754 | 739 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via1_pb_r)) |
755 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
756 | 740 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
757 | 741 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via1_pb_w)) |
758 | 742 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
r26865 | r26866 | |
793 | 777 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
794 | 778 | MCFG_VIA6522_READPA_HANDLER(READ8(c1571_device, via0_pa_r)) |
795 | 779 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via0_pb_r)) |
796 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(c1571_device, atn_in_r)) |
797 | | MCFG_VIA6522_READCA2_HANDLER(READLINE(c1571_device, wprt_r)) |
798 | 780 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(c1571cr_device, via0_pa_w)) |
799 | 781 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571cr_device, via0_pb_w)) |
800 | 782 | MCFG_VIA6522_IRQ_HANDLER(WRITELINE(c1571_device, via0_irq_w)) |
r26865 | r26866 | |
802 | 784 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
803 | 785 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
804 | 786 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via1_pb_r)) |
805 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
806 | 787 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
807 | 788 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via1_pb_w)) |
808 | 789 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
r26865 | r26866 | |
842 | 823 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
843 | 824 | MCFG_VIA6522_READPA_HANDLER(READ8(c1571_device, via0_pa_r)) |
844 | 825 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via0_pb_r)) |
845 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(c1571_device, atn_in_r)) |
846 | | MCFG_VIA6522_READCA2_HANDLER(READLINE(c1571_device, wprt_r)) |
847 | 826 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(c1571_device, via0_pa_w)) |
848 | 827 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via0_pb_w)) |
849 | 828 | MCFG_VIA6522_IRQ_HANDLER(WRITELINE(c1571_device, via0_irq_w)) |
r26865 | r26866 | |
851 | 830 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
852 | 831 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
853 | 832 | MCFG_VIA6522_READPB_HANDLER(READ8(c1571_device, via1_pb_r)) |
854 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
855 | 833 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
856 | 834 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c1571_device, via1_pb_w)) |
857 | 835 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
trunk/src/emu/bus/ieee488/c2031.c
r26865 | r26866 | |
202 | 202 | m_via0->write_ca2(get_device_number()); |
203 | 203 | } |
204 | 204 | |
205 | | READ_LINE_MEMBER( c2031_device::via0_ca1_r ) |
206 | | { |
207 | | return !m_bus->atn_r(); |
208 | | } |
209 | 205 | |
210 | | READ_LINE_MEMBER( c2031_device::via0_ca2_r ) |
211 | | { |
212 | | return get_device_number(); |
213 | | } |
214 | | |
215 | | |
216 | 206 | WRITE_LINE_MEMBER( c2031_device::via1_irq_w ) |
217 | 207 | { |
218 | 208 | m_via1_irq = state; |
r26865 | r26866 | |
338 | 328 | MCFG_DEVICE_ADD(M6522_0_TAG, VIA6522, XTAL_16MHz/16) |
339 | 329 | MCFG_VIA6522_READPA_HANDLER(READ8(c2031_device, via0_pa_r)) |
340 | 330 | MCFG_VIA6522_READPB_HANDLER(READ8(c2031_device, via0_pb_r)) |
341 | | MCFG_VIA6522_READCA1_HANDLER(READLINE(c2031_device, via0_ca1_r)) |
342 | | MCFG_VIA6522_READCA2_HANDLER(READLINE(c2031_device, via0_ca2_r)) |
343 | 331 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(c2031_device, via0_pa_w)) |
344 | 332 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c2031_device, via0_pb_w)) |
345 | 333 | MCFG_VIA6522_IRQ_HANDLER(WRITELINE(c2031_device, via0_irq_w)) |
r26865 | r26866 | |
347 | 335 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, XTAL_16MHz/16) |
348 | 336 | MCFG_VIA6522_READPA_HANDLER(DEVREAD8(C64H156_TAG, c64h156_device, yb_r)) |
349 | 337 | MCFG_VIA6522_READPB_HANDLER(READ8(c2031_device, via1_pb_r)) |
350 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(C64H156_TAG, c64h156_device, byte_r)) |
351 | 338 | MCFG_VIA6522_WRITEPA_HANDLER(DEVWRITE8(C64H156_TAG, c64h156_device, yb_w)) |
352 | 339 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(c2031_device, via1_pb_w)) |
353 | 340 | MCFG_VIA6522_CA2_HANDLER(DEVWRITELINE(C64H156_TAG, c64h156_device, soe_w)) |
trunk/src/mess/drivers/vic20.c
r26865 | r26866 | |
623 | 623 | MCFG_DEVICE_ADD(M6522_1_TAG, VIA6522, 0) |
624 | 624 | MCFG_VIA6522_READPA_HANDLER(READ8(vic20_state, via1_pa_r)) |
625 | 625 | MCFG_VIA6522_READPB_HANDLER(DEVREAD8(VIC20_USER_PORT_TAG, vic20_user_port_device, pb_r)) |
626 | | MCFG_VIA6522_READCA1_HANDLER(IOPORT("RESTORE")) |
627 | 626 | MCFG_VIA6522_WRITEPA_HANDLER(WRITE8(vic20_state, via1_pa_w)) |
628 | 627 | MCFG_VIA6522_WRITEPB_HANDLER(DEVWRITE8(VIC20_USER_PORT_TAG, vic20_user_port_device, pb_w)) |
629 | 628 | MCFG_VIA6522_CB1_HANDLER(DEVWRITELINE(VIC20_USER_PORT_TAG, vic20_user_port_device, cb1_w)) |
r26865 | r26866 | |
634 | 633 | MCFG_DEVICE_ADD(M6522_2_TAG, VIA6522, 0) |
635 | 634 | MCFG_VIA6522_READPA_HANDLER(READ8(vic20_state, via2_pa_r)) |
636 | 635 | MCFG_VIA6522_READPB_HANDLER(READ8(vic20_state, via2_pb_r)) |
637 | | MCFG_VIA6522_READCA1_HANDLER(DEVREADLINE(PET_DATASSETTE_PORT_TAG, pet_datassette_port_device, read)) |
638 | 636 | MCFG_VIA6522_WRITEPB_HANDLER(WRITE8(vic20_state, via2_pb_w)) |
639 | 637 | MCFG_VIA6522_CA2_HANDLER(WRITELINE(vic20_state, via2_ca2_w)) |
640 | 638 | MCFG_VIA6522_CB2_HANDLER(WRITELINE(vic20_state, via2_cb2_w)) |