Merge pull request #4009 from AmatCoder/AmatCoder-fix-dsk

dsk_dsk.cpp: sectors must be read even if it contains deleted mark
This commit is contained in:
Robert 2018-09-19 23:14:05 +10:00 committed by GitHub
commit 7d58fbe09f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -420,12 +420,12 @@ bool dsk_format::load(io_generic *io, uint32_t form_factor, floppy_image *image)
else
sects[j].actual_size = 128 << tr.sector_size_code;
if (sector.fdc_status_reg1 == 0xb2 || (sector.fdc_status_reg2 & 0x40))
if (sector.fdc_status_reg2 & 0x40)
sects[j].deleted = 1;
if (sector.fdc_status_reg1 == 0xb5 || (sector.fdc_status_reg2 & 0x20))
if ((sector.fdc_status_reg1 & 0x20) || (sector.fdc_status_reg2 & 0x20))
sects[j].bad_crc = 1;
if(!sects[j].deleted) {
if(!(sector.fdc_status_reg1 & 0x04)) {
sects[j].data = sect_data + sdatapos;
io_generic_read(io, sects[j].data, pos, sects[j].actual_size);
sdatapos += sects[j].actual_size;