src/mess/machine/pet.c
| r7458 | r7459 | |
| 78 | 78 | data |= pet_keyline_select; |
| 79 | 79 | |
| 80 | 80 | /* #1 cassette switch */ |
| 81 | | data |= ((cassette_get_state(devtag_get_device(device->machine, "cassette1")) & CASSETTE_MASK_UISTATE) != CASSETTE_STOPPED) << 4; |
| 81 | data |= ((cassette_get_state(devtag_get_device(device->machine, "cassette1")) & CASSETTE_MASK_UISTATE) == CASSETTE_STOPPED) << 4; |
| 82 | 82 | |
| 83 | 83 | /* #2 cassette switch */ |
| 84 | | data |= ((cassette_get_state(devtag_get_device(device->machine, "cassette2")) & CASSETTE_MASK_UISTATE) != CASSETTE_STOPPED) << 5; |
| 84 | data |= ((cassette_get_state(devtag_get_device(device->machine, "cassette2")) & CASSETTE_MASK_UISTATE) == CASSETTE_STOPPED) << 5; |
| 85 | 85 | |
| 86 | 86 | /* end or identify in */ |
| 87 | 87 | data |= ieee488_eoi_r(ieeebus) << 6; |
| r7458 | r7459 | |
| 177 | 177 | return data; |
| 178 | 178 | } |
| 179 | 179 | |
| 180 | | /* NOT WORKING - Just placeholder */ |
| 181 | 180 | static READ8_DEVICE_HANDLER( cass1_r ) |
| 182 | 181 | { |
| 183 | 182 | // cassette 1 read |
| r7458 | r7459 | |
| 369 | 368 | return data; |
| 370 | 369 | } |
| 371 | 370 | |
| 372 | | /* NOT WORKING - Just placeholder */ |
| 373 | | static READ_LINE_DEVICE_HANDLER( cass_2_r ) |
| 371 | static READ_LINE_DEVICE_HANDLER( cass2_r ) |
| 374 | 372 | { |
| 375 | 373 | // cassette 2 read |
| 376 | 374 | return (cassette_input(devtag_get_device(device->machine, "cassette2")) > +0.0) ? 1 : 0; |
| r7458 | r7459 | |
| 402 | 400 | ieee488_atn_w(ieeebus, device, BIT(data, 2)); |
| 403 | 401 | |
| 404 | 402 | /* cassette write */ |
| 403 | cassette_output(devtag_get_device(device->machine, "cassette1"), BIT(data, 3) ? -(0x5a9e >> 1) : +(0x5a9e >> 1)); |
| 404 | cassette_output(devtag_get_device(device->machine, "cassette2"), BIT(data, 3) ? -(0x5a9e >> 1) : +(0x5a9e >> 1)); |
| 405 | 405 | |
| 406 | 406 | /* #2 cassette motor */ |
| 407 | 407 | if (BIT(data, 4)) |
| r7458 | r7459 | |
| 438 | 438 | DEVCB_NULL, /* in_a_func */ |
| 439 | 439 | DEVCB_HANDLER(via_pb_r), /* in_b_func */ |
| 440 | 440 | DEVCB_NULL, /* in_ca1_func */ |
| 441 | | DEVCB_LINE(cass_2_r), /* in_cb1_func */ |
| 441 | DEVCB_LINE(cass2_r), /* in_cb1_func */ |
| 442 | 442 | DEVCB_NULL, /* in_ca2_func */ |
| 443 | 443 | DEVCB_NULL, /* in_cb2_func */ |
| 444 | 444 | DEVCB_NULL, /* out_a_func */ |
| r7458 | r7459 | |
| 677 | 677 | } |
| 678 | 678 | |
| 679 | 679 | |
| 680 | | /* NOT WORKING - Just placeholder */ |
| 681 | 680 | static TIMER_CALLBACK( pet_tape1_timer ) |
| 682 | 681 | { |
| 683 | 682 | running_device *pia_0 = devtag_get_device(machine, "pia_0"); |
| r7458 | r7459 | |
| 686 | 685 | pia6821_ca1_w(pia_0, 0, data); |
| 687 | 686 | } |
| 688 | 687 | |
| 689 | | /* NOT WORKING - Just placeholder */ |
| 690 | 688 | static TIMER_CALLBACK( pet_tape2_timer ) |
| 691 | 689 | { |
| 692 | 690 | running_device *via_0 = devtag_get_device(machine, "via6522_0"); |