2 TOSHIBA J-3100GT Emulator 'eJ-3100GT'
3 TOSHIBA J-3100SL Emulator 'eJ-3100SL'
5 Author : Takeda.Toshiya
15 #define DEVICE_NAME "TOSHIBA J-3100GT"
16 #define CONFIG_NAME "j3100gt"
17 #elif defined(_J3100SL)
18 #define DEVICE_NAME "TOSHIBA J-3100SL"
19 #define CONFIG_NAME "j3100sl"
22 // device informations for virtual machine
24 #if defined(_J3100SL) || defined(_J3100SS) || defined(_J3100SE)
28 // TODO: check refresh rate
29 #define FRAMES_PER_SEC 59.9
31 #define LINES_PER_FRAME 440
32 #define CHARS_PER_LINE 54
33 #define CPU_CLOCKS 9545456
34 #define SCREEN_WIDTH 640
35 #define SCREEN_HEIGHT 400
37 #define UPD765A_SENCE_INTSTAT_RESULT
38 #define UPD765A_EXT_DRVSEL
41 #define I8259_MAX_CHIPS 1
44 #define I8259_MAX_CHIPS 2
46 #if !(defined(_J3100SS) || defined(_J3100SE))
49 #define SINGLE_MODE_DMA
50 #define IO_ADDR_MAX 0x10000
52 // device informations for win32
55 #define NOTIFY_KEY_DOWN
56 #define USE_ALT_F10_KEY
57 #define USE_AUTO_KEY 5
58 #define USE_AUTO_KEY_RELEASE 6
59 #define USE_ACCESS_LAMP
60 #define USE_SOUND_VOLUME 1
62 #include "../../common.h"
63 #include "../../fileio.h"
65 #ifdef USE_SOUND_VOLUME
66 static const _TCHAR *sound_device_caption[] = {
131 // ----------------------------------------
133 // ----------------------------------------
138 // ----------------------------------------
139 // for emulation class
140 // ----------------------------------------
142 // drive virtual machine
144 void notify_power_off();
149 int get_access_lamp_status();
152 void initialize_sound(int rate, int samples);
153 uint16* create_sound(int* extra_frames);
154 int get_sound_buffer_ptr();
155 #ifdef USE_SOUND_VOLUME
156 void set_sound_device_volume(int ch, int decibel_l, int decibel_r);
160 void key_down(int code, bool repeat);
161 void key_up(int code);
164 void open_floppy_disk(int drv, const _TCHAR* file_path, int bank);
165 void close_floppy_disk(int drv);
166 bool is_floppy_disk_inserted(int drv);
167 void is_floppy_disk_protected(int drv, bool value);
168 bool is_floppy_disk_protected(int drv);
169 bool is_frame_skippable();
171 void update_config();
173 // ----------------------------------------
175 // ----------------------------------------
178 DEVICE* get_device(int id);
180 DEVICE* first_device;