Common Source Code Project for Qt (a.k.a for FM-7).
Revision | 559fecd562a2d90322399d721704dc2b8aed8a92 (tree) |
---|---|
Zeit | 2018-02-20 03:01:33 |
Autor | K.Ohta <whatisthis.sowhat@gmai...> |
Commiter | K.Ohta |
[VM][FM7][DISPLAY] Not use event_vline() as determine H/V SYNC.
[VM][FM7][DISPLAY] Use event_frame() to kick VSTART.Not loop.
[VM][FM7][DISPLAY] Duplicate palette (pixel) value at VSYNC.Fix rendering with DRAGON BUSTER, LUXOL and more softwares.
@@ -103,7 +103,7 @@ void DISPLAY::reset_some_devices() | ||
103 | 103 | displine = 0; |
104 | 104 | active_page = 0; |
105 | 105 | |
106 | -#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
106 | +//#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
107 | 107 | vsync = true; |
108 | 108 | vblank = true; |
109 | 109 | hblank = false; |
@@ -123,15 +123,16 @@ void DISPLAY::reset_some_devices() | ||
123 | 123 | usec = 0.51 * 1000.0; |
124 | 124 | } |
125 | 125 | //usec = 16.0; |
126 | - register_event(this, EVENT_FM7SUB_VSTART, usec, false, &vstart_event_id); // NEXT CYCLE_ | |
126 | + //register_event(this, EVENT_FM7SUB_VSTART, usec, false, &vstart_event_id); // NEXT CYCLE_ | |
127 | 127 | mainio->write_signal(SIG_DISPLAY_DISPLAY, 0x00, 0xff); |
128 | 128 | mainio->write_signal(SIG_DISPLAY_VSYNC, 0xff, 0xff); |
129 | -#endif | |
129 | +//#endif | |
130 | + display_page = 0; | |
131 | + display_page_bak = 0; | |
132 | + | |
130 | 133 | #if defined(_FM77AV_VARIANTS) |
131 | 134 | offset_77av = false; |
132 | 135 | offset_point_bank1 = 0; |
133 | - display_page = 0; | |
134 | - display_page_bak = 0; | |
135 | 136 | |
136 | 137 | subcpu_resetreq = false; |
137 | 138 | subrom_bank_using = subrom_bank; |
@@ -167,6 +168,7 @@ void DISPLAY::reset_some_devices() | ||
167 | 168 | alu->write_signal(SIG_ALU_PLANES, 3, 3); |
168 | 169 | #endif |
169 | 170 | for(i = 0; i < 8; i++) set_dpalette(i, i); |
171 | + memcpy(dpalette_pixel, dpalette_pixel_tmp, sizeof(dpalette_pixel)); | |
170 | 172 | //do_firq(!firq_mask && key_firq_req); |
171 | 173 | |
172 | 174 | #if defined(_FM77_VARIANTS) || defined(_FM77AV_VARIANTS) |
@@ -207,6 +209,7 @@ void DISPLAY::reset() | ||
207 | 209 | analog_palette_g[i] = (i & 0xf00) >> 4; |
208 | 210 | analog_palette_b[i] = (i & 0x00f) << 4; |
209 | 211 | calc_apalette(i); |
212 | + memcpy(analog_palette_pixel, analog_palette_pixel_tmp, sizeof(analog_palette_pixel)); | |
210 | 213 | } |
211 | 214 | subrom_bank = 0; |
212 | 215 | cgrom_bank = 0; |
@@ -241,6 +244,7 @@ void DISPLAY::reset() | ||
241 | 244 | for(i = 0; i < 8; i++) set_dpalette(i, i); |
242 | 245 | # endif |
243 | 246 | #endif |
247 | + memcpy(dpalette_pixel, dpalette_pixel_tmp, sizeof(dpalette_pixel)); | |
244 | 248 | //enter_display(); |
245 | 249 | |
246 | 250 | if(nmi_event_id >= 0) cancel_event(this, nmi_event_id); |
@@ -394,7 +398,7 @@ void DISPLAY::set_dpalette(uint32_t addr, uint8_t val) | ||
394 | 398 | r = ((val & 0x02) != 0x00)? 255 : 0x00; |
395 | 399 | g = ((val & 0x04) != 0x00)? 255 : 0x00; |
396 | 400 | |
397 | - dpalette_pixel[addr] = RGB_COLOR(r, g, b); | |
401 | + dpalette_pixel_tmp[addr] = RGB_COLOR(r, g, b); | |
398 | 402 | palette_changed = true; |
399 | 403 | } |
400 | 404 |
@@ -744,7 +748,7 @@ void DISPLAY::calc_apalette(uint16_t idx) | ||
744 | 748 | if(g != 0) g |= 0x0f; |
745 | 749 | if(r != 0) r |= 0x0f; |
746 | 750 | if(b != 0) b |= 0x0f; |
747 | - analog_palette_pixel[idx] = RGB_COLOR(r, g, b); | |
751 | + analog_palette_pixel_tmp[idx] = RGB_COLOR(r, g, b); | |
748 | 752 | } |
749 | 753 | |
750 | 754 | // FD32 |
@@ -1160,7 +1164,7 @@ void DISPLAY::copy_vram_all() | ||
1160 | 1164 | } |
1161 | 1165 | |
1162 | 1166 | // Timing values from XM7 . Thanks Ryu. |
1163 | -#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
1167 | +//#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
1164 | 1168 | void DISPLAY::event_callback_hdisp(void) |
1165 | 1169 | { |
1166 | 1170 | bool f = false; |
@@ -1266,6 +1270,7 @@ void DISPLAY::event_callback_vstart(void) | ||
1266 | 1270 | usec = 1840.0; // 1846.5 |
1267 | 1271 | } |
1268 | 1272 | register_event(this, EVENT_FM7SUB_HDISP, usec, false, &hdisp_event_id); // NEXT CYCLE_ |
1273 | + //register_event(this, EVENT_FM7SUB_HBLANK, usec, false, &hdisp_event_id); // NEXT CYCLE_ | |
1269 | 1274 | vblank_count = 0; |
1270 | 1275 | } else { |
1271 | 1276 | if(display_mode == DISPLAY_MODE_8_400L) { |
@@ -1285,6 +1290,7 @@ void DISPLAY::event_callback_vsync(void) | ||
1285 | 1290 | vsync = true; |
1286 | 1291 | //write_access_page = (write_access_page + 1) & 1; |
1287 | 1292 | displine = 0; |
1293 | + | |
1288 | 1294 | if(display_mode == DISPLAY_MODE_8_400L) { |
1289 | 1295 | usec = 0.33 * 1000.0; |
1290 | 1296 | } else { |
@@ -1292,49 +1298,29 @@ void DISPLAY::event_callback_vsync(void) | ||
1292 | 1298 | } |
1293 | 1299 | mainio->write_signal(SIG_DISPLAY_VSYNC, 0x01, 0xff); |
1294 | 1300 | mainio->write_signal(SIG_DISPLAY_DISPLAY, 0x00, 0xff); |
1295 | - register_event(this, EVENT_FM7SUB_VSTART, usec, false, &vstart_event_id); // NEXT CYCLE_ | |
1301 | + //register_event(this, EVENT_FM7SUB_VSTART, usec, false, &vstart_event_id); // NEXT CYCLE_ | |
1296 | 1302 | |
1303 | + if(palette_changed) { | |
1304 | +#if defined(_FM77AV_VARIANTS) | |
1305 | + memcpy(analog_palette_pixel, analog_palette_pixel_tmp, sizeof(analog_palette_pixel)); | |
1306 | +#endif | |
1307 | + memcpy(dpalette_pixel, dpalette_pixel_tmp, sizeof(dpalette_pixel)); | |
1308 | + vram_wrote_shadow = true; | |
1309 | + for(int yy = 0; yy < 400; yy++) { | |
1310 | + vram_draw_table[yy] = true; | |
1311 | + } | |
1312 | + palette_changed = false; | |
1313 | + } | |
1297 | 1314 | // Transfer on VSYNC |
1298 | 1315 | if((config.dipswitch & FM7_DIPSW_SYNC_TO_HSYNC) == 0) { |
1299 | 1316 | bool ff = false; |
1300 | 1317 | int lines = 200; |
1301 | 1318 | if(display_mode == DISPLAY_MODE_8_400L) lines = 400; |
1302 | -# if 0 | |
1303 | - if(need_transfer_line) { | |
1304 | - if(vram_wrote) ff = true; | |
1305 | - //if(need_transfer_line) ff = true; | |
1306 | - //} | |
1307 | - for(displine = 0; displine < lines; displine++) { | |
1308 | - if(ff) break; | |
1309 | - for(int iii = 0; iii < 5 ; iii++) { | |
1310 | - if(vram_wrote_table[iii + displine * 5]) { | |
1311 | - ff = true; | |
1312 | - break; | |
1313 | - } | |
1314 | - } | |
1315 | - } | |
1316 | - displine = 0; | |
1317 | - } | |
1318 | - | |
1319 | - if(ff) { | |
1320 | - for(int yy = 0; yy < lines; yy++) { | |
1321 | - if(!vram_draw_table[yy]) { | |
1322 | - displine = yy; | |
1323 | - copy_vram_per_line(0, 4); | |
1324 | - vram_draw_table[yy] = true; | |
1325 | - } | |
1326 | - } | |
1327 | - //copy_vram_all(); | |
1328 | - vram_wrote_shadow = true; | |
1329 | - screen_update_flag = true; | |
1330 | - vram_wrote = false; | |
1331 | - } | |
1332 | -# else | |
1333 | 1319 | if(need_transfer_line) { |
1334 | 1320 | if(vram_wrote) { // transfer all line |
1335 | 1321 | for(displine = 0; displine < lines; displine++) { |
1336 | 1322 | //if(!vram_draw_table[displine]) { |
1337 | - copy_vram_per_line(0, 4); | |
1323 | + copy_vram_per_line(0, 4); | |
1338 | 1324 | //} |
1339 | 1325 | } |
1340 | 1326 | vram_wrote = false; |
@@ -1375,7 +1361,6 @@ void DISPLAY::event_callback_vsync(void) | ||
1375 | 1361 | break; |
1376 | 1362 | } |
1377 | 1363 | } |
1378 | -# endif | |
1379 | 1364 | } else { |
1380 | 1365 | // TRANSFER per HSYNC a.k.a SYNC-TO-HSYNC. |
1381 | 1366 | int lines = 200; |
@@ -1413,7 +1398,7 @@ void DISPLAY::event_callback_vsync(void) | ||
1413 | 1398 | } |
1414 | 1399 | } |
1415 | 1400 | |
1416 | -#endif | |
1401 | +//#endif | |
1417 | 1402 | |
1418 | 1403 | void DISPLAY::event_callback(int event_id, int err) |
1419 | 1404 | { |
@@ -1432,7 +1417,7 @@ void DISPLAY::event_callback(int event_id, int err) | ||
1432 | 1417 | case EVENT_FM7SUB_DISPLAY_NMI_OFF: // per 20.00ms |
1433 | 1418 | do_nmi(false); |
1434 | 1419 | break; |
1435 | -#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
1420 | +//#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
1436 | 1421 | case EVENT_FM7SUB_HDISP: |
1437 | 1422 | event_callback_hdisp(); |
1438 | 1423 | break; |
@@ -1445,7 +1430,7 @@ void DISPLAY::event_callback(int event_id, int err) | ||
1445 | 1430 | case EVENT_FM7SUB_VSYNC: |
1446 | 1431 | event_callback_vsync(); |
1447 | 1432 | break; |
1448 | -#endif | |
1433 | +//#endif | |
1449 | 1434 | case EVENT_FM7SUB_CLR_BUSY: |
1450 | 1435 | set_subbusy(); |
1451 | 1436 | break; |
@@ -1457,6 +1442,22 @@ void DISPLAY::event_callback(int event_id, int err) | ||
1457 | 1442 | |
1458 | 1443 | void DISPLAY::event_frame() |
1459 | 1444 | { |
1445 | + double usec; | |
1446 | + vblank = true; | |
1447 | + hblank = false; | |
1448 | + vsync = true; | |
1449 | + //write_access_page = (write_access_page + 1) & 1; | |
1450 | + displine = 0; | |
1451 | + if(display_mode == DISPLAY_MODE_8_400L) { | |
1452 | + usec = 0.33 * 1000.0; | |
1453 | + } else { | |
1454 | + usec = 0.51 * 1000.0; | |
1455 | + } | |
1456 | + mainio->write_signal(SIG_DISPLAY_VSYNC, 0x01, 0xff); | |
1457 | + mainio->write_signal(SIG_DISPLAY_DISPLAY, 0x00, 0xff); | |
1458 | + register_event(this, EVENT_FM7SUB_VSTART, usec, false, &vstart_event_id); // NEXT CYCLE_ | |
1459 | + vblank_count = 0; | |
1460 | +#if 0 | |
1460 | 1461 | #if !defined(_FM77AV_VARIANTS) && !defined(_FM77L4) |
1461 | 1462 | int yy; |
1462 | 1463 | bool f = false; |
@@ -1500,7 +1501,8 @@ void DISPLAY::event_frame() | ||
1500 | 1501 | } |
1501 | 1502 | } |
1502 | 1503 | |
1503 | -#endif | |
1504 | +#endif | |
1505 | +#endif | |
1504 | 1506 | } |
1505 | 1507 | |
1506 | 1508 | void DISPLAY::event_vline(int v, int clock) |
@@ -2939,14 +2941,17 @@ void DISPLAY::initialize() | ||
2939 | 2941 | analog_palette_g[i] = (i & 0xf00) >> 4; |
2940 | 2942 | analog_palette_b[i] = (i & 0x00f) << 4; |
2941 | 2943 | calc_apalette(i); |
2944 | + memcpy(analog_palette_pixel, analog_palette_pixel_tmp, sizeof(analog_palette_pixel)); | |
2942 | 2945 | } |
2943 | 2946 | #endif |
2944 | -#if defined(_FM77AV_VARIANTS) | |
2947 | + for(i = 0; i < 8; i++) set_dpalette(i, i); | |
2948 | + memcpy(dpalette_pixel, dpalette_pixel_tmp, sizeof(dpalette_pixel)); | |
2949 | +//#if defined(_FM77AV_VARIANTS) | |
2945 | 2950 | hblank_event_id = -1; |
2946 | 2951 | hdisp_event_id = -1; |
2947 | 2952 | vsync_event_id = -1; |
2948 | 2953 | vstart_event_id = -1; |
2949 | -#endif | |
2954 | +//#endif | |
2950 | 2955 | #if defined(_FM8) |
2951 | 2956 | clock_fast = false; |
2952 | 2957 | #else |
@@ -2984,10 +2989,10 @@ void DISPLAY::initialize() | ||
2984 | 2989 | #endif |
2985 | 2990 | |
2986 | 2991 | palette_changed = true; |
2987 | -#if !defined(_FM77AV_VARIANTS) && !defined(_FM77L4) | |
2988 | - register_vline_event(this); | |
2992 | +//#if !defined(_FM77AV_VARIANTS) && !defined(_FM77L4) | |
2993 | + //register_vline_event(this); | |
2989 | 2994 | register_frame_event(this); |
2990 | -#endif | |
2995 | +//#endif | |
2991 | 2996 | setup_display_mode(); |
2992 | 2997 | } |
2993 | 2998 |
@@ -3060,14 +3065,7 @@ void DISPLAY::save_state(FILEIO *state_fio) | ||
3060 | 3065 | state_fio->FputBool(kanjisub); |
3061 | 3066 | state_fio->FputUint16_BE(kanjiaddr.w.l); |
3062 | 3067 | |
3063 | - state_fio->FputBool(vblank); | |
3064 | - state_fio->FputBool(vsync); | |
3065 | - state_fio->FputBool(hblank); | |
3066 | - state_fio->FputInt32_BE(vblank_count); | |
3067 | - | |
3068 | 3068 | state_fio->FputBool(mode320); |
3069 | - state_fio->FputInt8(display_page); | |
3070 | - state_fio->FputInt8(display_page_bak); | |
3071 | 3069 | state_fio->FputInt32_BE(cgrom_bank); |
3072 | 3070 | #if defined(_FM77AV40) || defined(_FM77AV40SX)|| defined(_FM77AV40SX) || \ |
3073 | 3071 | defined(_FM77AV20) || defined(_FM77AV20EX) || defined(_FM77AV20SX) |
@@ -3125,14 +3123,22 @@ void DISPLAY::save_state(FILEIO *state_fio) | ||
3125 | 3123 | // V2 |
3126 | 3124 | { |
3127 | 3125 | state_fio->FputInt32_BE(nmi_event_id); |
3128 | -#if defined(_FM77AV_VARIANTS) | |
3126 | +//#if defined(_FM77AV_VARIANTS) | |
3129 | 3127 | state_fio->FputInt32_BE(hblank_event_id); |
3130 | 3128 | state_fio->FputInt32_BE(hdisp_event_id); |
3131 | 3129 | state_fio->FputInt32_BE(vsync_event_id); |
3132 | 3130 | state_fio->FputInt32_BE(vstart_event_id); |
3133 | -#endif | |
3131 | +//#endif | |
3134 | 3132 | state_fio->FputBool(firq_mask); |
3135 | 3133 | state_fio->FputBool(vram_accessflag); |
3134 | + | |
3135 | + state_fio->FputInt8(display_page); | |
3136 | + state_fio->FputInt8(display_page_bak); | |
3137 | + | |
3138 | + state_fio->FputBool(vblank); | |
3139 | + state_fio->FputBool(vsync); | |
3140 | + state_fio->FputBool(hblank); | |
3141 | + state_fio->FputInt32_BE(vblank_count); | |
3136 | 3142 | } |
3137 | 3143 | } |
3138 | 3144 |
@@ -3176,6 +3182,8 @@ bool DISPLAY::load_state(FILEIO *state_fio) | ||
3176 | 3182 | #else |
3177 | 3183 | state_fio->Fread(dpalette_data, sizeof(dpalette_data), 1); |
3178 | 3184 | for(addr = 0; addr < 8; addr++) set_dpalette(addr, dpalette_data[addr]); |
3185 | + memcpy(dpalette_pixel, dpalette_pixel_tmp, sizeof(dpalette_pixel)); | |
3186 | + | |
3179 | 3187 | multimode_accessmask = state_fio->FgetUint8(); |
3180 | 3188 | multimode_dispmask = state_fio->FgetUint8(); |
3181 | 3189 | for(i = 0; i < 4; i++) { |
@@ -3214,14 +3222,7 @@ bool DISPLAY::load_state(FILEIO *state_fio) | ||
3214 | 3222 | kanjiaddr.d = 0; |
3215 | 3223 | kanjiaddr.w.l = state_fio->FgetUint16_BE(); |
3216 | 3224 | |
3217 | - vblank = state_fio->FgetBool(); | |
3218 | - vsync = state_fio->FgetBool(); | |
3219 | - hblank = state_fio->FgetBool(); | |
3220 | - vblank_count = state_fio->FgetInt32_BE(); | |
3221 | - | |
3222 | 3225 | mode320 = state_fio->FgetBool(); |
3223 | - display_page = state_fio->FgetInt8(); | |
3224 | - display_page_bak = state_fio->FgetInt8(); | |
3225 | 3226 | cgrom_bank = state_fio->FgetInt32_BE(); |
3226 | 3227 | #if defined(_FM77AV40) || defined(_FM77AV40SX)|| defined(_FM77AV40SX) || \ |
3227 | 3228 | defined(_FM77AV20) || defined(_FM77AV20EX) || defined(_FM77AV20SX) |
@@ -3242,6 +3243,7 @@ bool DISPLAY::load_state(FILEIO *state_fio) | ||
3242 | 3243 | state_fio->Fread(analog_palette_g, sizeof(analog_palette_g), 1); |
3243 | 3244 | state_fio->Fread(analog_palette_b, sizeof(analog_palette_b), 1); |
3244 | 3245 | for(i = 0; i < 4096; i++) calc_apalette(i); |
3246 | + memcpy(analog_palette_pixel, analog_palette_pixel_tmp, sizeof(analog_palette_pixel)); | |
3245 | 3247 | |
3246 | 3248 | diag_load_subrom_a = state_fio->FgetBool(); |
3247 | 3249 | diag_load_subrom_b = state_fio->FgetBool(); |
@@ -3284,12 +3286,20 @@ bool DISPLAY::load_state(FILEIO *state_fio) | ||
3284 | 3286 | } |
3285 | 3287 | if(version >= 2) { //V2 |
3286 | 3288 | nmi_event_id = state_fio->FgetInt32_BE(); |
3287 | -#if defined(_FM77AV_VARIANTS) | |
3289 | +//#if defined(_FM77AV_VARIANTS) | |
3288 | 3290 | hblank_event_id = state_fio->FgetInt32_BE(); |
3289 | 3291 | hdisp_event_id = state_fio->FgetInt32_BE(); |
3290 | 3292 | vsync_event_id = state_fio->FgetInt32_BE(); |
3291 | 3293 | vstart_event_id = state_fio->FgetInt32_BE(); |
3292 | -#endif | |
3294 | +//#endif | |
3295 | + display_page = state_fio->FgetInt8(); | |
3296 | + display_page_bak = state_fio->FgetInt8(); | |
3297 | + | |
3298 | + vblank = state_fio->FgetBool(); | |
3299 | + vsync = state_fio->FgetBool(); | |
3300 | + hblank = state_fio->FgetBool(); | |
3301 | + vblank_count = state_fio->FgetInt32_BE(); | |
3302 | + | |
3293 | 3303 | firq_mask = state_fio->FgetBool(); |
3294 | 3304 | vram_accessflag = state_fio->FgetBool(); |
3295 | 3305 | frame_skip_count_draw = 3; |
@@ -134,14 +134,14 @@ protected: | ||
134 | 134 | // Event handler |
135 | 135 | int nmi_event_id; |
136 | 136 | |
137 | -#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
137 | +//#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
138 | 138 | int hblank_event_id; |
139 | 139 | int hdisp_event_id; |
140 | 140 | int vsync_event_id; |
141 | 141 | int vstart_event_id; |
142 | 142 | |
143 | 143 | int vblank_count; |
144 | -#endif | |
144 | +//#endif | |
145 | 145 | #if defined(_FM77AV_VARIANTS) |
146 | 146 | bool subcpu_resetreq; |
147 | 147 | bool power_on_reset; |
@@ -151,6 +151,9 @@ protected: | ||
151 | 151 | DEVICE *ins_led; |
152 | 152 | DEVICE *kana_led; |
153 | 153 | DEVICE *caps_led; |
154 | + | |
155 | + int8_t display_page; | |
156 | + int8_t display_page_bak; | |
154 | 157 | #if defined(_FM77_VARIANTS) |
155 | 158 | # if defined(_FM77L4) |
156 | 159 | bool mode400line; |
@@ -167,8 +170,6 @@ protected: | ||
167 | 170 | bool mode256k; |
168 | 171 | # endif |
169 | 172 | bool mode320; |
170 | - int8_t display_page; | |
171 | - int8_t display_page_bak; | |
172 | 173 | int cgrom_bank; |
173 | 174 | #if defined(_FM77AV40) || defined(_FM77AV40EX) || defined(_FM77AV40SX)|| \ |
174 | 175 | defined(_FM77AV20) || defined(_FM77AV20SX) || defined(_FM77AV20EX) |
@@ -195,6 +196,7 @@ protected: | ||
195 | 196 | bool diag_load_subrom_c; |
196 | 197 | |
197 | 198 | scrntype_t dpalette_pixel[8]; |
199 | + scrntype_t dpalette_pixel_tmp[8]; | |
198 | 200 | uint8_t dpalette_data[8]; |
199 | 201 | #if defined(_FM77AV_VARIANTS) |
200 | 202 | pair_t apalette_index; |
@@ -202,6 +204,7 @@ protected: | ||
202 | 204 | uint8_t analog_palette_g[4096]; |
203 | 205 | uint8_t analog_palette_b[4096]; |
204 | 206 | scrntype_t analog_palette_pixel[4096]; |
207 | + scrntype_t analog_palette_pixel_tmp[4096]; | |
205 | 208 | #endif // FM77AV etc... |
206 | 209 | #if defined(_FM77AV_VARIANTS) |
207 | 210 | uint8_t io_w_latch[0x40]; |
@@ -321,12 +324,12 @@ protected: | ||
321 | 324 | uint32_t read_bios(const _TCHAR *name, uint8_t *ptr, uint32_t size); |
322 | 325 | void draw_screen2(); |
323 | 326 | |
324 | -#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
327 | +//#if defined(_FM77AV_VARIANTS) || defined(_FM77L4) | |
325 | 328 | void event_callback_vstart(void); |
326 | 329 | void event_callback_vsync(void); |
327 | 330 | void event_callback_hdisp(void); |
328 | 331 | void event_callback_hblank(void); |
329 | -#endif | |
332 | +//#endif | |
330 | 333 | public: |
331 | 334 | DISPLAY(VM *parent_vm, EMU *parent_emu); |
332 | 335 | ~DISPLAY(); |
@@ -736,14 +736,14 @@ void DISPLAY::draw_screen2() | ||
736 | 736 | return; |
737 | 737 | } |
738 | 738 | crt_flag_bak = crt_flag; |
739 | - if(!vram_wrote_shadow && !palette_changed) return; | |
739 | + if(!vram_wrote_shadow) return; | |
740 | 740 | vram_wrote_shadow = false; |
741 | - if(palette_changed) { | |
742 | - for(y = 0; y < 400; y++) { | |
743 | - vram_draw_table[y] = true; | |
744 | - } | |
745 | - palette_changed = false; | |
746 | - } | |
741 | + //if(palette_changed) { | |
742 | + // for(y = 0; y < 400; y++) { | |
743 | + // vram_draw_table[y] = true; | |
744 | + // } | |
745 | + // palette_changed = false; | |
746 | + //} | |
747 | 747 | if(display_mode == DISPLAY_MODE_8_200L) { |
748 | 748 | int ii; |
749 | 749 | #if 1 |