2 SHARP MZ-80K 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"
26 #define CONFIG_NAME "mz80k"
30 #define SUPPORT_MZ80AIF
33 // device informations for virtual machine
34 #define FRAMES_PER_SEC 60
35 #define LINES_PER_FRAME 262
36 #define CPU_CLOCKS 2000000
37 #define SCREEN_WIDTH 320
38 #define SCREEN_HEIGHT 200
39 #ifdef SUPPORT_MZ80AIF
44 // device informations for win32
47 #define USE_TAPE_BUTTON
48 #define USE_SHIFT_NUMPAD_KEY
49 #define USE_ALT_F10_KEY
50 #define USE_AUTO_KEY 5
51 #define USE_AUTO_KEY_RELEASE 6
52 #define USE_AUTO_KEY_NO_CAPS
55 #ifdef SUPPORT_MZ80AIF
60 #define USE_ACCESS_LAMP
61 #define USE_DISK_WRITE_PROTECT
64 #include "../../common.h"
65 #include "../../fileio.h"
71 #if defined(_MZ1200) || defined(_MZ80A)
85 #ifdef SUPPORT_MZ80AIF
99 #if defined(_MZ1200) || defined(_MZ80A)
100 AND* l_and; // and is reserved word.
113 #ifdef SUPPORT_MZ80AIF
120 // ----------------------------------------
122 // ----------------------------------------
127 // ----------------------------------------
128 // for emulation class
129 // ----------------------------------------
131 // drive virtual machine
137 DEVICE *get_cpu(int index);
142 #ifdef SUPPORT_MZ80AIF
147 void initialize_sound(int rate, int samples);
148 uint16* create_sound(int* extra_frames);
149 int sound_buffer_ptr();
152 #ifdef SUPPORT_MZ80AIF
153 void open_disk(int drv, _TCHAR* file_path, int bank);
154 void close_disk(int drv);
155 bool disk_inserted(int drv);
156 #if defined(USE_DISK_WRITE_PROTECT)
157 void write_protect_fd(int drv, bool flag);
158 bool is_write_protect_fd(int drv);
161 void play_tape(_TCHAR* file_path);
162 void rec_tape(_TCHAR* file_path);
164 bool tape_inserted();
165 #if defined(USE_TAPE_PTR)
166 int get_tape_ptr(void);
168 bool get_tape_play(void);
171 void push_fast_forward();
172 void push_fast_rewind();
173 void push_apss_forward() {}
174 void push_apss_rewind() {}
177 void update_config();
178 void save_state(FILEIO* state_fio);
179 bool load_state(FILEIO* state_fio);
181 // ----------------------------------------
183 // ----------------------------------------
186 DEVICE* get_device(int id);
188 DEVICE* first_device;