mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
swim2: Correct writing
floppy: Correct index duration (2ms, not 20us) and polarity in superdrive
This commit is contained in:
parent
25d91e9762
commit
b310c8ff63
@ -800,10 +800,10 @@ void floppy_image_device::index_resync()
|
||||
}
|
||||
int position = int(delta.as_double()*angular_speed + 0.5);
|
||||
|
||||
int new_idx = position < 20000;
|
||||
int new_idx = position < 2000000;
|
||||
|
||||
if(new_idx) {
|
||||
attotime index_up_time = attotime::from_double(20000/angular_speed);
|
||||
attotime index_up_time = attotime::from_double(2000000/angular_speed);
|
||||
index_timer->adjust(index_up_time - delta);
|
||||
} else
|
||||
index_timer->adjust(rev_time - delta);
|
||||
@ -2631,8 +2631,8 @@ bool mac_floppy_device::wpt_r()
|
||||
return !dskchg;
|
||||
|
||||
case 0x4:
|
||||
case 0xc: // Index pulse, probably only on the superdrive though
|
||||
return !m_has_mfm ? false : !image || mon ? true : idx;
|
||||
case 0xc: // Index pulse, probably only in mfm mode and while writing though
|
||||
return !m_has_mfm ? false : !image || mon ? true : !idx;
|
||||
|
||||
case 0x5: // Is it a superdrive (supports 1.4M MFM) ?
|
||||
return m_has_mfm;
|
||||
|
@ -111,6 +111,7 @@ void swim2_device::flush_write(u64 when)
|
||||
m_flux_write_count = 0;
|
||||
if(last_on_edge)
|
||||
m_flux_write[m_flux_write_count++] = when;
|
||||
m_flux_write_start = when;
|
||||
} else
|
||||
m_flux_write_count = 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user