Files
AppleWin/source/Configuration/Config.h
2026-01-04 16:44:26 +00:00

54 lines
1.4 KiB
C++

#pragma once
#include "../Core.h"
#include "../CPU.h"
#include "../Disk.h"
#include "../Harddisk.h"
#include "../ParallelPrinter.h"
#include "../SerialComms.h"
#include "../Video.h"
struct SlotInfoForFDC
{
std::string pathname[NUM_DRIVES];
};
struct SlotInfoForHDC
{
std::string pathname[NUM_HARDDISKS];
};
class CConfigNeedingRestart
{
public:
// zero initialise
CConfigNeedingRestart();
// create from current global configuration
static CConfigNeedingRestart Create();
// update from current global configuration
void Reload();
const CConfigNeedingRestart& operator= (const CConfigNeedingRestart& other);
bool operator== (const CConfigNeedingRestart& other) const;
bool operator!= (const CConfigNeedingRestart& other) const;
eApple2Type m_Apple2Type;
eCpuType m_CpuType;
SS_CARDTYPE m_Slot[NUM_SLOTS];
SS_CARDTYPE m_SlotAux;
std::string m_tfeInterface;
bool m_tfeVirtualDNS;
UINT m_bEnableTheFreezesF8Rom;
UINT m_uSaveLoadStateMsg;
VideoRefreshRate_e m_videoRefreshRate;
uint32_t m_RamWorksMemorySize; // Size in 64K banks
ParallelPrinterCard m_parallelPrinterCard; // Use entire card object, as there are many config vars
UINT m_serialPortItem; // SSC: Just one config var for this card (at the moment)
SlotInfoForFDC m_slotInfoForFDC [NUM_SLOTS];
SlotInfoForHDC m_slotInfoForHDC [NUM_SLOTS];
};