- Timestamp:
- Dec 24, 2020 11:38:28 AM (4 years ago)
- File:
-
- 1 edited
-
trunk/src/VBox/Devices/Storage/DevFdc.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/DevFdc.cpp
r82968 r87121 1640 1640 pos = fdctrl->data_pos % FD_SECTOR_LEN; 1641 1641 if (fdctrl->msr & FD_MSR_NONDMA) { 1642 if (pos == 0) { 1642 if (cur_drv->pDrvMedia == NULL) 1643 { 1644 if (fdctrl->data_dir == FD_DIR_WRITE) 1645 fdctrl_stop_transfer_now(fdctrl, FD_SR0_ABNTERM | FD_SR0_SEEK, 0x00, 0x00); 1646 else 1647 fdctrl_stop_transfer_now(fdctrl, FD_SR0_ABNTERM, 0x00, 0x00); 1648 } else if (pos == 0) { 1643 1649 if (fdctrl->data_pos != 0) 1644 1650 if (!fdctrl_seek_to_next_sect(fdctrl, cur_drv)) { … … 1647 1653 return 0; 1648 1654 } 1655 1649 1656 rc = blk_read(cur_drv, fd_sector(cur_drv), fdctrl->fifo, 1); 1650 1657 if (RT_FAILURE(rc)) … … 2157 2164 pos %= FD_SECTOR_LEN; 2158 2165 fdctrl->fifo[pos] = value; 2159 if (pos == FD_SECTOR_LEN - 1 || 2166 2167 if (cur_drv->pDrvMedia == NULL) 2168 { 2169 if (fdctrl->data_dir == FD_DIR_WRITE) 2170 fdctrl_stop_transfer_now(fdctrl, FD_SR0_ABNTERM | FD_SR0_SEEK, 0x00, 0x00); 2171 else 2172 fdctrl_stop_transfer_now(fdctrl, FD_SR0_ABNTERM, 0x00, 0x00); 2173 } else if (pos == FD_SECTOR_LEN - 1 || 2160 2174 fdctrl->data_pos == fdctrl->data_len) { 2161 2175 blk_write(cur_drv, fd_sector(cur_drv), fdctrl->fifo, 1);
Note:
See TracChangeset
for help on using the changeset viewer.

