2 SHARP MZ-80K/C Emulator 'EmuZ-80K'
3 SHARP MZ-1200 Emulator 'EmuZ-1200'
5 Author : Takeda.Toshiya
8 SHARP MZ-80A Emulator 'EmuZ-80A'
19 #define DEVICE_NAME "SHARP MZ-1200"
20 #define CONFIG_NAME "mz1200"
22 #define DEVICE_NAME "SHARP MZ-80A"
23 #define CONFIG_NAME "mz80a"
25 #define DEVICE_NAME "SHARP MZ-80K/C"
26 #define CONFIG_NAME "mz80k"
30 #define SUPPORT_MZ80AIF
32 #define SUPPORT_MZ80FIO
35 // device informations for virtual machine
36 #define FRAMES_PER_SEC 60
37 #define LINES_PER_FRAME 262
38 #define CPU_CLOCKS 2000000
39 #define SCREEN_WIDTH 320
40 #define SCREEN_HEIGHT 200
41 #if defined(SUPPORT_MZ80AIF)
44 #elif defined(SUPPORT_MZ80FIO)
49 // device informations for win32
52 //#define USE_TAPE_PTR
53 #define USE_TAPE_BUTTON
54 #define NOTIFY_KEY_DOWN
55 #define USE_SHIFT_NUMPAD_KEY
56 #define USE_ALT_F10_KEY
57 #define USE_AUTO_KEY 5
58 #define USE_AUTO_KEY_RELEASE 6
59 #define USE_AUTO_KEY_NO_CAPS
62 #if defined(SUPPORT_MZ80AIF) || defined(SUPPORT_MZ80FIO)
67 #define USE_ACCESS_LAMP
68 //#define USE_DISK_WRITE_PROTECT
71 #define USE_MONITOR_TYPE 2
73 #define USE_CRT_MONITOR_4_3 1
75 #include "../../common.h"
76 #include "../../fileio.h"
82 #if defined(_MZ1200) || defined(_MZ80A)
95 #if defined(SUPPORT_MZ80AIF)
99 #elif defined(SUPPORT_MZ80FIO)
113 #if defined(_MZ1200) || defined(_MZ80A)
126 #if defined(SUPPORT_MZ80AIF)
130 #elif defined(SUPPORT_MZ80FIO)
137 // ----------------------------------------
139 // ----------------------------------------
144 // ----------------------------------------
145 // for emulation class
146 // ----------------------------------------
148 // drive virtual machine
154 DEVICE *get_cpu(int index);
159 #if defined(SUPPORT_MZ80AIF) || defined(SUPPORT_MZ80FIO)
164 void initialize_sound(int rate, int samples);
165 uint16* create_sound(int* extra_frames);
166 int sound_buffer_ptr();
169 void key_down(int code, bool repeat);
170 void key_up(int code);
173 #if defined(SUPPORT_MZ80AIF) || defined(SUPPORT_MZ80FIO)
174 void open_disk(int drv, const _TCHAR* file_path, int bank);
175 void close_disk(int drv);
176 bool disk_inserted(int drv);
177 void set_disk_protected(int drv, bool value);
178 bool get_disk_protected(int drv);
180 void play_tape(const _TCHAR* file_path);
181 void rec_tape(const _TCHAR* file_path);
183 bool tape_inserted();
185 bool tape_recording();
189 void push_fast_forward();
190 void push_fast_rewind();
191 void push_apss_forward() {}
192 void push_apss_rewind() {}
195 void update_config();
196 void save_state(FILEIO* state_fio);
197 bool load_state(FILEIO* state_fio);
199 // ----------------------------------------
201 // ----------------------------------------
204 DEVICE* get_device(int id);
206 DEVICE* first_device;