diff --git a/src/emu/machine/corvushd.c b/src/emu/machine/corvushd.c index e75a638496f..b3939daf7db 100644 --- a/src/emu/machine/corvushd.c +++ b/src/emu/machine/corvushd.c @@ -89,7 +89,7 @@ corvus_hdc_t::corvus_hdc_t(const machine_config &mconfig, const char *tag, devic #define VERBOSE 0 #define VERBOSE_RESPONSES 0 -#define VERSION 1 +#define ROM_VERSION 1 // Controller ROM version #define MAX_COMMAND_SIZE 4096 // The maximum size of a command packet (the controller only has 5K of RAM...) #define SPARE_TRACKS 7 // This is a Rev B drive, so 7 it is #define CALLBACK_CTH_MODE 1 // Set to Controller-to-Host mode when callback fires @@ -690,8 +690,18 @@ UINT8 corvus_hdc_t::corvus_get_drive_parameters(UINT8 drv) { // // Build up the parameter packet // - strcpy((char *) m_buffer.drive_param_response.firmware, "V18.4AP -- CONST II - 11/82 %"); // Pulled from some firmware... - m_buffer.drive_param_response.rom_version = VERSION; + + // This firmware string and revision were taken from the Corvus firmware + // file CORVB184.CLR found on the SSE SoftBox distribution disk. + strcpy((char *) m_buffer.drive_param_response.firmware_desc, "V18.4 -- CONST II - 11/82 "); + m_buffer.drive_param_response.firmware_rev = 37; + + // Controller ROM version + m_buffer.drive_param_response.rom_version = ROM_VERSION; + + // + // Track information + // m_buffer.drive_param_response.track_info.sectors_per_track = m_sectors_per_track; m_buffer.drive_param_response.track_info.tracks_per_cylinder = m_tracks_per_cylinder; m_buffer.drive_param_response.track_info.cylinders_per_drive.msb = (m_cylinders_per_drive & 0xff00) >> 8; diff --git a/src/emu/machine/corvushd.h b/src/emu/machine/corvushd.h index 9deaa7315f3..0699eb434ae 100644 --- a/src/emu/machine/corvushd.h +++ b/src/emu/machine/corvushd.h @@ -356,7 +356,8 @@ private: // struct { UINT8 status; // Status code returned by command executed - UINT8 firmware[32]; // Firmware message + UINT8 firmware_desc[31]; // Firmware string description + UINT8 firmware_rev; // Firmware revision number UINT8 rom_version; // ROM Version struct { UINT8 sectors_per_track; // Sectors/Track