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 #define SCREEN_WIDTH_ASPECT SCREEN_WIDTH
45 #define SCREEN_HEIGHT_ASPECT SCREEN_HEIGHT
46 #define WINDOW_WIDTH_ASPECT 640
47 #define WINDOW_HEIGHT_ASPECT 480
49 // device informations for win32
52 #define USE_TAPE_BUTTON
53 #define USE_SHIFT_NUMPAD_KEY
54 #define USE_ALT_F10_KEY
55 #define USE_AUTO_KEY 5
56 #define USE_AUTO_KEY_RELEASE 6
57 #define USE_AUTO_KEY_NO_CAPS
60 #ifdef SUPPORT_MZ80AIF
65 #define USE_ACCESS_LAMP
66 #define USE_DISK_WRITE_PROTECT
69 #include "../../common.h"
70 #include "../../fileio.h"
76 #if defined(_MZ1200) || defined(_MZ80A)
90 #ifdef SUPPORT_MZ80AIF
104 #if defined(_MZ1200) || defined(_MZ80A)
105 AND* l_and; // and is reserved word.
118 #ifdef SUPPORT_MZ80AIF
125 // ----------------------------------------
127 // ----------------------------------------
132 // ----------------------------------------
133 // for emulation class
134 // ----------------------------------------
136 // drive virtual machine
142 DEVICE *get_cpu(int index);
147 #ifdef SUPPORT_MZ80AIF
152 void initialize_sound(int rate, int samples);
153 uint16* create_sound(int* extra_frames);
154 int sound_buffer_ptr();
157 #ifdef SUPPORT_MZ80AIF
158 void open_disk(int drv, _TCHAR* file_path, int bank);
159 void close_disk(int drv);
160 bool disk_inserted(int drv);
161 void set_disk_protected(int drv, bool value);
162 bool get_disk_protected(int drv);
164 void play_tape(_TCHAR* file_path);
165 void rec_tape(_TCHAR* file_path);
167 bool tape_inserted();
168 #if defined(USE_TAPE_PTR)
169 int get_tape_ptr(void);
171 bool get_tape_play(void);
174 void push_fast_forward();
175 void push_fast_rewind();
176 void push_apss_forward() {}
177 void push_apss_rewind() {}
180 void update_config();
181 void save_state(FILEIO* state_fio);
182 bool load_state(FILEIO* state_fio);
184 // ----------------------------------------
186 // ----------------------------------------
189 DEVICE* get_device(int id);
191 DEVICE* first_device;