src/wd2010.h

changeset 116
21521e62007f
parent 112
a392eb8f9806
     1.1 --- a/src/wd2010.h	Sat Nov 17 22:15:23 2012 +0000
     1.2 +++ b/src/wd2010.h	Sat Nov 17 22:26:53 2012 +0000
     1.3 @@ -8,16 +8,16 @@
     1.4  
     1.5  /// WD2010 registers
     1.6  typedef enum {
     1.7 -	WD2010_REG_ERROR                   = 1, ///< Error register
     1.8 -	WD2010_REG_WRITE_PRECOMP_CYLINDER  = 1, ///< Write precompensation cylinder
     1.9 -                                             ///< register
    1.10 -	WD2010_REG_SECTOR_COUNT            = 2, ///< Sector count register
    1.11 -	WD2010_REG_SECTOR_NUMBER           = 3, ///< Sector number register
    1.12 -	WD2010_REG_CYLINDER_LOW            = 4, ///< Low byte of cylinder
    1.13 -	WD2010_REG_CYLINDER_HIGH           = 5, ///< High byte of cylinder
    1.14 -	WD2010_REG_SDH                     = 6, ///< Sector size, drive, and head
    1.15 -	WD2010_REG_STATUS                   = 7, ///< Status register
    1.16 -	WD2010_REG_COMMAND                  = 7, ///< Command register
    1.17 +	WD2010_REG_ERROR					= 1, ///< Error register
    1.18 +	WD2010_REG_WRITE_PRECOMP_CYLINDER	= 1, ///< Write precompensation cylinder register
    1.19 +	WD2010_REG_SECTOR_COUNT				= 2, ///< Sector count register
    1.20 +	WD2010_REG_SECTOR_NUMBER			= 3, ///< Sector number register
    1.21 +	WD2010_REG_CYLINDER_LOW				= 4, ///< Low byte of cylinder
    1.22 +	WD2010_REG_CYLINDER_HIGH			= 5, ///< High byte of cylinder
    1.23 +	WD2010_REG_SDH						= 6, ///< Sector size, drive, and head
    1.24 +	WD2010_REG_STATUS					= 7, ///< Status register
    1.25 +	WD2010_REG_COMMAND					= 7, ///< Command register
    1.26 +	UNIXPC_REG_MCR2						= 255	///< UNIX-PC MCR2 register (special!)
    1.27  } WD2010_REG;
    1.28  
    1.29  /// WD2010 emulator error codes
    1.30 @@ -42,6 +42,8 @@
    1.31  	uint8_t					cylinder_high_reg, cylinder_low_reg;
    1.32  	// SDH register (sets sector size, drive number, and head number)
    1.33  	uint8_t					sdh;
    1.34 +	// MCR2 register (LSB is HDSEL3 - head select bit 3)
    1.35 +	bool					mcr2_hdsel3, mcr2_ddrive1;
    1.36  	// Sector number and count registers
    1.37  	int						sector_number, sector_count;
    1.38  	// Last command has the multiple sector flag set?