src/wd2010.h

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