src/mess/machine/b2m.c
| r8586 | r8587 | |
| 17 | 17 | #include "machine/msm8251.h" |
| 18 | 18 | #include "includes/b2m.h" |
| 19 | 19 | #include "devices/messram.h" |
| 20 | #include "devices/flopdrv.h" |
| 20 | 21 | |
| 21 | 22 | static READ8_HANDLER (b2m_keyboard_r ) |
| 22 | 23 | { |
| r8586 | r8587 | |
| 210 | 211 | UINT8 drive = ((data >> 1) & 1) ^ 1; |
| 211 | 212 | UINT8 side = (data & 1) ^ 1; |
| 212 | 213 | b2m_state *state = (b2m_state *)device->machine->driver_data; |
| 214 | floppy_mon_w(floppy_get_device(device->machine, 0), 1); |
| 215 | floppy_mon_w(floppy_get_device(device->machine, 1), 1); |
| 213 | 216 | |
| 214 | 217 | if (state->b2m_drive!=drive) { |
| 215 | 218 | wd17xx_set_drive(state->fdc,drive); |
| 219 | floppy_mon_w(floppy_get_device(device->machine, 0), 0); |
| 220 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 0), 1, 1); |
| 216 | 221 | state->b2m_drive = drive; |
| 217 | 222 | } |
| 218 | 223 | if (state->b2m_side!=side) { |
| 219 | 224 | wd17xx_set_side(state->fdc,side); |
| 225 | floppy_mon_w(floppy_get_device(device->machine, 1), 0); |
| 226 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 1), 1, 1); |
| 220 | 227 | state->b2m_side = side; |
| 221 | 228 | } |
| 222 | 229 | } |
src/mess/machine/partner.c
| r8586 | r8587 | |
| 106 | 106 | default : wd17xx_data_w(fdc,0,data);break; |
| 107 | 107 | } |
| 108 | 108 | } else { |
| 109 | floppy_mon_w(floppy_get_device(space->machine, 0), 1); |
| 110 | floppy_mon_w(floppy_get_device(space->machine, 1), 1); |
| 109 | 111 | if (((data >> 6) & 1)==1) { |
| 110 | 112 | wd17xx_set_drive(fdc,0); |
| 113 | floppy_mon_w(floppy_get_device(space->machine, 0), 0); |
| 114 | floppy_drive_set_ready_state(floppy_get_device(space->machine, 0), 1, 1); |
| 111 | 115 | } |
| 112 | 116 | if (((data >> 3) & 1)==1) { |
| 113 | 117 | wd17xx_set_drive(fdc,1); |
| 118 | floppy_mon_w(floppy_get_device(space->machine, 1), 0); |
| 119 | floppy_drive_set_ready_state(floppy_get_device(space->machine, 1), 1, 1); |
| 114 | 120 | } |
| 115 | 121 | wd17xx_set_side(fdc,data >> 7); |
| 116 | 122 | } |
src/mess/machine/special.c
| r8586 | r8587 | |
| 17 | 17 | #include "machine/wd17xx.h" |
| 18 | 18 | #include "includes/special.h" |
| 19 | 19 | #include "devices/messram.h" |
| 20 | #include "devices/flopdrv.h" |
| 20 | 21 | |
| 21 | 22 | static UINT8 specimx_color; |
| 22 | 23 | UINT8 *specimx_colorram; |
| r8586 | r8587 | |
| 421 | 422 | wd17xx_set_side (fdc,data & 1); |
| 422 | 423 | wd17xx_set_drive(fdc,(data >> 1) & 1); |
| 423 | 424 | wd17xx_dden_w(fdc, BIT(data, 2)); |
| 425 | floppy_mon_w(floppy_get_device(space->machine, (data >> 1) & 1), 0); |
| 426 | floppy_mon_w(floppy_get_device(space->machine, ((data >> 1) & 1) ? 0 : 1), 1); |
| 427 | floppy_drive_set_ready_state(floppy_get_device(space->machine, (data >> 1) & 1), 1, 1); |
| 428 | |
| 424 | 429 | } |
src/mess/machine/pk8020.c
| r8586 | r8587 | |
| 12 | 12 | #include "cpu/i8085/i8085.h" |
| 13 | 13 | #include "machine/wd17xx.h" |
| 14 | 14 | #include "devices/messram.h" |
| 15 | #include "devices/flopdrv.h" |
| 15 | 16 | |
| 16 | 17 | static UINT8 attr = 0; |
| 17 | 18 | static UINT8 text_attr = 0; |
| r8586 | r8587 | |
| 870 | 871 | static WRITE8_DEVICE_HANDLER(pk8020_portb_w) |
| 871 | 872 | { |
| 872 | 873 | running_device *fdc = device->machine->device("wd1793"); |
| 874 | // Turn all motors off |
| 875 | floppy_mon_w(floppy_get_device(device->machine, 0), 1); |
| 876 | floppy_mon_w(floppy_get_device(device->machine, 1), 1); |
| 877 | floppy_mon_w(floppy_get_device(device->machine, 2), 1); |
| 878 | floppy_mon_w(floppy_get_device(device->machine, 3), 1); |
| 873 | 879 | wd17xx_set_side(fdc,BIT(data,4)); |
| 874 | 880 | if (BIT(data,0)) { |
| 875 | 881 | wd17xx_set_drive(fdc,0); |
| 882 | floppy_mon_w(floppy_get_device(device->machine, 0), 0); |
| 883 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 0), 1, 1); |
| 876 | 884 | } else if (BIT(data,1)) { |
| 877 | 885 | wd17xx_set_drive(fdc,1); |
| 886 | floppy_mon_w(floppy_get_device(device->machine, 1), 0); |
| 887 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 1), 1, 1); |
| 878 | 888 | } else if (BIT(data,2)) { |
| 879 | 889 | wd17xx_set_drive(fdc,2); |
| 890 | floppy_mon_w(floppy_get_device(device->machine, 2), 0); |
| 891 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 2), 1, 1); |
| 880 | 892 | } else if (BIT(data,3)) { |
| 881 | 893 | wd17xx_set_drive(fdc,3); |
| 894 | floppy_mon_w(floppy_get_device(device->machine, 3), 0); |
| 895 | floppy_drive_set_ready_state(floppy_get_device(device->machine, 3), 1, 1); |
| 882 | 896 | } |
| 883 | 897 | } |
| 884 | 898 | |