Added preliminary Adaptec 154x emulation, needs fixing in the Read 10 command.
Made ATAPI derived from SCSI. Added proper S/G emulation for SCSI DMA. Added SCSI CD-ROM emulation, preserving all the former ATAPI commands as well.
This commit is contained in:
34
src/ide.h
34
src/ide.h
@@ -1,4 +1,4 @@
|
||||
/* Copyright holders: Sarah Walker, Tenshi
|
||||
/* Copyright holders: Sarah Walker, Tenshi, SA1988
|
||||
see COPYING for more details
|
||||
*/
|
||||
#ifndef __IDE__
|
||||
@@ -22,42 +22,12 @@ extern void ide_sec_disable();
|
||||
extern void ide_ter_disable();
|
||||
extern void ide_set_bus_master(int (*read_sector)(int channel, uint8_t *data), int (*write_sector)(int channel, uint8_t *data), void (*set_irq)(int channel));
|
||||
|
||||
/*ATAPI stuff*/
|
||||
typedef struct ATAPI
|
||||
{
|
||||
int (*ready)(void);
|
||||
int (*medium_changed)(void);
|
||||
int (*readtoc)(uint8_t *b, uint8_t starttrack, int msf, int maxlen, int single);
|
||||
int (*readtoc_session)(uint8_t *b, int msf, int maxlen);
|
||||
int (*readtoc_raw)(uint8_t *b, int maxlen);
|
||||
uint8_t (*getcurrentsubchannel)(uint8_t *b, int msf);
|
||||
void (*readsector)(uint8_t *b, int sector);
|
||||
void (*readsector_raw)(uint8_t *b, int sector);
|
||||
void (*playaudio)(uint32_t pos, uint32_t len, int ismsf);
|
||||
void (*seek)(uint32_t pos);
|
||||
void (*load)(void);
|
||||
void (*eject)(void);
|
||||
void (*pause)(void);
|
||||
void (*resume)(void);
|
||||
uint32_t (*size)(void);
|
||||
int (*status)(void);
|
||||
int (*is_track_audio)(uint32_t pos, int ismsf);
|
||||
void (*stop)(void);
|
||||
void (*exit)(void);
|
||||
} ATAPI;
|
||||
|
||||
extern ATAPI *atapi;
|
||||
|
||||
void atapi_discchanged();
|
||||
|
||||
void atapi_insert_cdrom();
|
||||
|
||||
extern int ideboard;
|
||||
|
||||
extern int idecallback[3];
|
||||
|
||||
extern char ide_fn[4][512];
|
||||
|
||||
extern int cdrom_channel;
|
||||
extern int atapi_cdrom_channel;
|
||||
|
||||
#endif //__IDE__
|
||||
|
||||
Reference in New Issue
Block a user