mirror of
https://github.com/AppleWin/AppleWin.git
synced 2024-12-23 00:30:17 +00:00
769d4c6927
Support 2nd Disk][ in slot-5, via command line: - -s5 diskii - -s5d1 \<imagefile\> - -s5d2 \<imagefile\> NB. there's currently no Configuration UI support, except the Drive icons' tooltips show what's in slot-5 & slot-6 (for drive-n). So there's no way to eject the disks or insert new disks. The use-case I'm supporting it Wasteland which just has the 4 disks in the 4 drives. Improved card management: - Added `class Card` (in Card.h) which all other cards (that exist as classes) derive from (eg. LC,SSC,Mouse,Disk2). - Added `class CardManager` (in CardManager.cpp\h) which now manages the 8 slots (and aux slot). - Added `class Disk2CardManager` (in Disk2CardManager.cpp\h) which provides methods for operations that act on all Disk2 instances at the same time. - Currently limited to just 1x SSC and 1x Mouse card (why would you need more?). This simplifies things, meaning there's no need to have dedicated SSCManager / MouseCardManager objects. - Currently the 2nd Disk2 card can only be put into slot-5. This limitation is just due to the complexity of the Configuration UI. Having a more general drop-down per slot UI would remove this limitation.
65 lines
1.7 KiB
C++
65 lines
1.7 KiB
C++
#pragma once
|
|
|
|
#include "Card.h"
|
|
#include "SaveState_Structs_common.h"
|
|
#include "Common.h"
|
|
|
|
void LogFileTimeUntilFirstKeyReadReset(void);
|
|
void LogFileTimeUntilFirstKeyRead(void);
|
|
|
|
bool SetCurrentImageDir(const std::string & pszImageDir);
|
|
|
|
extern const UINT16* GetOldAppleWinVersion(void);
|
|
extern TCHAR VERSIONSTRING[]; // Constructed in WinMain()
|
|
|
|
extern std::string g_pAppTitle;
|
|
|
|
extern eApple2Type g_Apple2Type;
|
|
eApple2Type GetApple2Type(void);
|
|
void SetApple2Type(eApple2Type type);
|
|
|
|
double Get6502BaseClock(void);
|
|
void SetCurrentCLK6502(void);
|
|
|
|
void SingleStep(bool bReinit);
|
|
|
|
extern bool g_bFullSpeed;
|
|
|
|
//===========================================
|
|
|
|
// Win32
|
|
extern HINSTANCE g_hInstance;
|
|
|
|
extern AppMode_e g_nAppMode;
|
|
bool GetLoadedSaveStateFlag(void);
|
|
void SetLoadedSaveStateFlag(const bool bFlag);
|
|
bool GetHookAltGrControl(void);
|
|
|
|
extern std::string g_sProgramDir;
|
|
extern std::string g_sCurrentDir;
|
|
|
|
extern bool g_bRestart;
|
|
extern bool g_bRestartFullScreen;
|
|
|
|
extern DWORD g_dwSpeed;
|
|
extern double g_fCurrentCLK6502;
|
|
|
|
extern int g_nCpuCyclesFeedback;
|
|
extern DWORD g_dwCyclesThisFrame;
|
|
|
|
extern bool g_bDisableDirectInput; // Cmd line switch: don't init DI (so no DIMouse support)
|
|
extern bool g_bDisableDirectSound; // Cmd line switch: don't init DS (so no MB/Speaker support)
|
|
extern bool g_bDisableDirectSoundMockingboard; // Cmd line switch: don't init MB support
|
|
extern int g_nMemoryClearType; // Cmd line switch: use specific MIP (Memory Initialization Pattern)
|
|
|
|
extern class CardManager g_CardMgr;
|
|
|
|
extern HANDLE g_hCustomRomF8; // NULL if no custom rom
|
|
|
|
#ifdef USE_SPEECH_API
|
|
class CSpeech;
|
|
extern CSpeech g_Speech;
|
|
#endif
|
|
|
|
extern __interface IPropertySheet& sg_PropertySheet;
|