Change struct FloppyDrive, FloppyDisk into classes
This commit is contained in:
parent
c6a11d3824
commit
65a87c8e11
3 changed files with 31 additions and 33 deletions
|
@ -41,25 +41,16 @@ const bool IMAGE_FORCE_WRITE_PROTECTED = true;
|
||||||
const bool IMAGE_DONT_CREATE = false;
|
const bool IMAGE_DONT_CREATE = false;
|
||||||
const bool IMAGE_CREATE = true;
|
const bool IMAGE_CREATE = true;
|
||||||
|
|
||||||
struct FloppyDisk
|
class FloppyDisk
|
||||||
{
|
{
|
||||||
TCHAR m_imagename[ MAX_DISK_IMAGE_NAME + 1 ]; // <FILENAME> (ie. no extension)
|
public:
|
||||||
TCHAR m_fullname [ MAX_DISK_FULL_NAME + 1 ]; // <FILENAME.EXT> or <FILENAME.zip> : This is persisted to the snapshot file
|
|
||||||
std::string m_strFilenameInZip; // "" or <FILENAME.EXT>
|
|
||||||
ImageInfo* m_imagehandle; // Init'd by InsertDisk() -> ImageOpen()
|
|
||||||
bool m_bWriteProtected;
|
|
||||||
//
|
|
||||||
int m_byte;
|
|
||||||
int m_nibbles; // Init'd by ReadTrack() -> ImageReadTrack()
|
|
||||||
LPBYTE m_trackimage;
|
|
||||||
bool m_trackimagedata;
|
|
||||||
bool m_trackimagedirty;
|
|
||||||
|
|
||||||
FloppyDisk()
|
FloppyDisk()
|
||||||
{
|
{
|
||||||
clear();
|
clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
~FloppyDisk(){}
|
||||||
|
|
||||||
void clear()
|
void clear()
|
||||||
{
|
{
|
||||||
ZeroMemory(m_imagename, sizeof(m_imagename));
|
ZeroMemory(m_imagename, sizeof(m_imagename));
|
||||||
|
@ -74,21 +65,30 @@ struct FloppyDisk
|
||||||
m_trackimagedata = false;
|
m_trackimagedata = false;
|
||||||
m_trackimagedirty = false;
|
m_trackimagedirty = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public:
|
||||||
|
TCHAR m_imagename[ MAX_DISK_IMAGE_NAME + 1 ]; // <FILENAME> (ie. no extension)
|
||||||
|
TCHAR m_fullname [ MAX_DISK_FULL_NAME + 1 ]; // <FILENAME.EXT> or <FILENAME.zip> : This is persisted to the snapshot file
|
||||||
|
std::string m_strFilenameInZip; // "" or <FILENAME.EXT>
|
||||||
|
ImageInfo* m_imagehandle; // Init'd by InsertDisk() -> ImageOpen()
|
||||||
|
bool m_bWriteProtected;
|
||||||
|
int m_byte;
|
||||||
|
int m_nibbles; // Init'd by ReadTrack() -> ImageReadTrack()
|
||||||
|
LPBYTE m_trackimage;
|
||||||
|
bool m_trackimagedata;
|
||||||
|
bool m_trackimagedirty;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct FloppyDrive
|
class FloppyDrive
|
||||||
{
|
{
|
||||||
int m_phase;
|
public:
|
||||||
int m_track;
|
|
||||||
DWORD m_spinning;
|
|
||||||
DWORD m_writelight;
|
|
||||||
FloppyDisk m_disk;
|
|
||||||
|
|
||||||
FloppyDrive()
|
FloppyDrive()
|
||||||
{
|
{
|
||||||
clear();
|
clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
~FloppyDrive(){}
|
||||||
|
|
||||||
void clear()
|
void clear()
|
||||||
{
|
{
|
||||||
m_phase = 0;
|
m_phase = 0;
|
||||||
|
@ -97,13 +97,20 @@ struct FloppyDrive
|
||||||
m_writelight = 0;
|
m_writelight = 0;
|
||||||
m_disk.clear();
|
m_disk.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public:
|
||||||
|
int m_phase;
|
||||||
|
int m_track;
|
||||||
|
DWORD m_spinning;
|
||||||
|
DWORD m_writelight;
|
||||||
|
FloppyDisk m_disk;
|
||||||
};
|
};
|
||||||
|
|
||||||
class Disk2InterfaceCard
|
class Disk2InterfaceCard
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Disk2InterfaceCard(void);
|
Disk2InterfaceCard(void);
|
||||||
virtual ~Disk2InterfaceCard(void){};
|
virtual ~Disk2InterfaceCard(void){}
|
||||||
|
|
||||||
void Initialize(LPBYTE pCxRomPeripheral, UINT uSlot);
|
void Initialize(LPBYTE pCxRomPeripheral, UINT uSlot);
|
||||||
void Destroy(void); // no, doesn't "destroy" the disk image. DiskIIManagerShutdown()
|
void Destroy(void); // no, doesn't "destroy" the disk image. DiskIIManagerShutdown()
|
||||||
|
|
|
@ -35,15 +35,15 @@ public:
|
||||||
|
|
||||||
void Reset(void);
|
void Reset(void);
|
||||||
void DriveNotWritingTrack(void);
|
void DriveNotWritingTrack(void);
|
||||||
void DriveSwitchedToReadMode(struct FloppyDisk* const pFloppy);
|
void DriveSwitchedToReadMode(class FloppyDisk* const pFloppy);
|
||||||
void DriveSwitchedToWriteMode(UINT uTrackIndex);
|
void DriveSwitchedToWriteMode(UINT uTrackIndex);
|
||||||
void DecodeLatchNibbleRead(BYTE floppylatch);
|
void DecodeLatchNibbleRead(BYTE floppylatch);
|
||||||
void DecodeLatchNibbleWrite(BYTE floppylatch, UINT uSpinNibbleCount, const struct FloppyDisk* const pFloppy, bool bIsSyncFF);
|
void DecodeLatchNibbleWrite(BYTE floppylatch, UINT uSpinNibbleCount, const class FloppyDisk* const pFloppy, bool bIsSyncFF);
|
||||||
void SaveSnapshot(class YamlSaveHelper& yamlSaveHelper);
|
void SaveSnapshot(class YamlSaveHelper& yamlSaveHelper);
|
||||||
void LoadSnapshot(class YamlLoadHelper& yamlLoadHelper);
|
void LoadSnapshot(class YamlLoadHelper& yamlLoadHelper);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void UpdateOnWriteLatch(UINT uSpinNibbleCount, const struct FloppyDisk* const pFloppy);
|
void UpdateOnWriteLatch(UINT uSpinNibbleCount, const class FloppyDisk* const pFloppy);
|
||||||
void DecodeLatchNibble(BYTE floppylatch, bool bIsWrite, bool bIsSyncFF);
|
void DecodeLatchNibble(BYTE floppylatch, bool bIsWrite, bool bIsSyncFF);
|
||||||
|
|
||||||
BYTE m_VolTrkSecChk[4];
|
BYTE m_VolTrkSecChk[4];
|
||||||
|
|
|
@ -1692,15 +1692,6 @@ void MemInitializeIO(void)
|
||||||
ConfigureSAM(pCxRomPeripheral, 5); // $C500 : Z80 card
|
ConfigureSAM(pCxRomPeripheral, 5); // $C500 : Z80 card
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0 // debug test
|
|
||||||
if (g_Slot5 == CT_Empty)
|
|
||||||
{
|
|
||||||
Disk2InterfaceCard* pDiskIISlot5 = new Disk2InterfaceCard;
|
|
||||||
pDiskIISlot5->Initialize(pCxRomPeripheral, 5);
|
|
||||||
pDiskIISlot5->InsertDisk(0, "C:\\Work\\Personal\\Images\\lady tut PRODOS (san inc pack).dsk", false, false);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
sg_Disk2Card.Initialize(pCxRomPeripheral, 6); // $C600 : Disk][ card
|
sg_Disk2Card.Initialize(pCxRomPeripheral, 6); // $C600 : Disk][ card
|
||||||
HD_Load_Rom(pCxRomPeripheral, 7); // $C700 : HDD f/w
|
HD_Load_Rom(pCxRomPeripheral, 7); // $C700 : HDD f/w
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue