#define btoi(b) ((b) / 16 * 10 + (b) % 16) /* BCD to u_char */
#define itob(i) ((i) / 10 * 16 + (i) % 10) /* u_char to BCD */
+#define ABS_CD(x) ((x >= 0) ? x : -x)
+#define MIN_VALUE(a,b) ({ __typeof__ (a) _a = (a); __typeof__ (b) _b = (b); _a < _b ? _a : _b; })
+#define MAX_VALUE(a,b) ({ __typeof__ (a) _a = (a); __typeof__ (b) _b = (b); _a > _b ? _a : _b; })
+
#define MSF2SECT(m, s, f) (((m) * 60 + (s) - 2) * 75 + (f))
#define CD_FRAMESIZE_RAW 2352
unsigned char Absolute[3];
} subq;
unsigned char TrackChanged;
- unsigned char pad1[3];
+ boolean m_locationChanged;
+ unsigned char pad1[2];
unsigned int freeze_ver;
unsigned char Prev[4];
unsigned char ResultReady;
unsigned char Cmd;
unsigned char Readed;
+ unsigned char SetlocPending;
u32 Reading;
unsigned char ResultTN[6];
unsigned char ResultTD[4];
- unsigned char SetSector[4];
- unsigned char SetSectorEnd[4];
unsigned char SetSectorPlay[4];
+ unsigned char SetSectorEnd[4];
+ unsigned char SetSector[4];
unsigned char Track;
boolean Play, Muted;
int CurTrack;
int Mode, File, Channel;
int Reset;
- int RErr;
+ int NoErr;
int FirstSector;
xa_decode_t Xa;
int Init;
- unsigned char Irq;
+ u16 Irq;
+ u8 IrqRepeated;
u32 eCycle;
u8 Seeked;