diff options
author | smf- <smf-@users.noreply.github.com> | 2013-06-16 01:19:07 +0000 |
---|---|---|
committer | smf- <smf-@users.noreply.github.com> | 2013-06-16 01:19:07 +0000 |
commit | 8d30596794cf023aa4042f7ba4beb65f882e5fb3 (patch) | |
tree | 51126ed82334f11229a7760946ba9b406e50c9a4 /src/mame/drivers/viper.c | |
parent | 0127243023f44768fdc974c07b059a9f17eceb8b (diff) |
Changed "features" to "identify device". Don't set DRDY immediately when executing identify device as a timer is fired that will set it and trigger an interrupt anyway. Diagnostics fail if no identify device response is available. Set correct register contents at reset. Added edge detection to reset. Clear irq as soon as reset is triggered. Don't clear DRDY when resetting. Only call update_irq if something changed. Removed some places that were setting sector count. Added some #defines for masking bit fields. (nw)
Diffstat (limited to 'src/mame/drivers/viper.c')
-rw-r--r-- | src/mame/drivers/viper.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/mame/drivers/viper.c b/src/mame/drivers/viper.c index cb4fcd339ee..5167ae0f448 100644 --- a/src/mame/drivers/viper.c +++ b/src/mame/drivers/viper.c @@ -2034,13 +2034,13 @@ void viper_state::machine_reset() m_ide->reset(); mpc8240_epic_reset(); - UINT8 *ide_features = m_ide->ide_get_features(0); + UINT8 *identify_device = m_ide->identify_device_buffer(0); // Viper expects these settings or the BIOS fails - ide_features[51*2+0] = 0; /* 51: PIO data transfer cycle timing mode */ - ide_features[51*2+1] = 2; - ide_features[67*2+0] = 0xf0; /* 67: minimum PIO transfer cycle time without flow control */ - ide_features[67*2+1] = 0x00; + identify_device[51*2+0] = 0; /* 51: PIO data transfer cycle timing mode */ + identify_device[51*2+1] = 2; + identify_device[67*2+0] = 0xf0; /* 67: minimum PIO transfer cycle time without flow control */ + identify_device[67*2+1] = 0x00; } static const voodoo_config voodoo_intf = |