aiie/apple/applevm.h

50 lines
981 B
C
Raw Normal View History

#ifndef __APPLEVM_H
#define __APPLEVM_H
#include "cpu.h"
#include "appledisplay.h"
#include "diskii.h"
#include "hd32.h"
#include "vmkeyboard.h"
2017-02-20 23:41:46 +00:00
#include "parallelcard.h"
#include "mouse.h"
#include "vm.h"
class AppleVM : public VM {
public:
AppleVM();
virtual ~AppleVM();
2021-01-10 02:32:40 +00:00
bool Suspend(const char *fn);
bool Resume(const char *fn);
2017-12-30 20:20:34 +00:00
2020-08-02 13:06:15 +00:00
void cpuMaintenance(int64_t cycles);
virtual void Reset();
void Monitor();
virtual void triggerPaddleInCycles(uint8_t paddleNum,uint16_t cycleCount);
const char *DiskName(uint8_t drivenum);
void ejectDisk(uint8_t drivenum);
void insertDisk(uint8_t drivenum, const char *filename, bool drawIt = true);
const char *HDName(uint8_t drivenum);
void ejectHD(uint8_t drivenum);
void insertHD(uint8_t drivenum, const char *filename);
virtual VMKeyboard *getKeyboard();
bool isMouseEnabled();
DiskII *disk6;
HD32 *hd32;
protected:
VMKeyboard *keyboard;
2017-02-20 23:41:46 +00:00
ParallelCard *parallel;
Mouse *mouse;
};
#endif