2 SHARP MZ-800 Emulator 'EmuZ-800'
3 SHARP MZ-1500 Emulator 'EmuZ-1500'
4 SHARP MZ-2200 Emulator 'EmuZ-2200'
6 Author : Takeda.Toshiya
16 #include "../../emu.h"
17 #include "../device.h"
19 #define QUICKDISK_SIO_RTSA 0
20 #define QUICKDISK_SIO_DTRB 1
21 #define QUICKDISK_SIO_SYNC 2
22 #define QUICKDISK_SIO_RXDONE 3
23 #define QUICKDISK_SIO_DATA 4
24 #define QUICKDISK_SIO_BREAK 5
26 #define QUICKDISK_BUFFER_SIZE 65536
30 class QUICKDISK : public DEVICE
35 _TCHAR file_path[_MAX_PATH];
36 bool insert, protect, home;
40 uint16_t buffer[QUICKDISK_BUFFER_SIZE];
41 int buffer_ptr, write_ptr;
45 bool wrga, mton, sync;
47 int restore_id, end_id;
53 void set_insert(bool val);
54 void set_protect(bool val);
55 void set_home(bool val);
57 unsigned short calc_crc(int* buff, int size);
60 QUICKDISK(VM_TEMPLATE* parent_vm, EMU_TEMPLATE* parent_emu) : DEVICE(parent_vm, parent_emu)
62 set_device_name(_T("Quick Disk"));
70 void __FASTCALL write_signal(int id, uint32_t data, uint32_t mask);
71 uint32_t __FASTCALL read_signal(int ch);
72 void __FASTCALL event_callback(int event_id, int err);
73 bool process_state(FILEIO* state_fio, bool loading);
76 void set_context_sio(DEVICE* device)
80 void open_disk(const _TCHAR* path);
82 bool is_disk_inserted()