AppleWin/AppleWin/source/Disk.h

48 lines
1.3 KiB
C
Raw Normal View History

2006-02-25 20:50:29 +00:00
#pragma once
#define DRIVE_1 0
#define DRIVE_2 1
2006-02-25 20:50:29 +00:00
#define DRIVES 2
#define TRACKS_STANDARD 35
#define TRACKS_EXTRA 5 // Allow up to a 40-track .dsk image (160KB)
#define TRACKS_MAX (TRACKS_STANDARD+TRACKS_EXTRA)
2006-02-25 20:50:29 +00:00
extern BOOL enhancedisk;
extern string DiskPathFilename[DRIVES];
2006-02-26 02:02:57 +00:00
void DiskInitialize (); // DiskManagerStartup()
void DiskDestroy (); // no, doesn't "destroy" the disk image. DiskManagerShutdown()
2006-02-25 20:50:29 +00:00
void DiskBoot ();
2006-02-26 02:02:57 +00:00
void DiskEject( const int iDrive );
2006-02-25 20:50:29 +00:00
LPCTSTR DiskGetFullName (int);
enum Disk_Status_e
{
DISK_STATUS_OFF ,
DISK_STATUS_READ ,
DISK_STATUS_WRITE,
DISK_STATUS_PROT ,
NUM_DISK_STATUS
};
void DiskGetLightStatus (int *pDisk1Status_,int *pDisk2Status_);
2006-02-25 20:50:29 +00:00
LPCTSTR DiskGetName (int);
int DiskInsert (int,LPCTSTR,BOOL,BOOL);
BOOL DiskIsSpinning ();
void DiskNotifyInvalidImage (LPCTSTR,int);
void DiskReset ();
bool DiskGetProtect( const int iDrive );
void DiskSetProtect( const int iDrive, const bool bWriteProtect );
2006-02-25 20:50:29 +00:00
void DiskSelect (int);
void DiskUpdatePosition (DWORD);
bool DiskDriveSwap();
void DiskLoadRom(LPBYTE pCxRomPeripheral, UINT uSlot);
2006-02-25 20:50:29 +00:00
DWORD DiskGetSnapshot(SS_CARD_DISK2* pSS, DWORD dwSlot);
DWORD DiskSetSnapshot(SS_CARD_DISK2* pSS, DWORD dwSlot);
2008-08-31 04:31:35 +00:00
void Disk_LoadLastDiskImage( int iDrive );
void Disk_SaveLastDiskImage( int iDrive );