}
}
+static void set_ocs_denise_blank(uae_u32 v)
+{
+ int hpos = current_hpos();
+ sync_color_changes(hpos);
+ record_color_change2(hpos, 0, COLOR_CHANGE_BLANK | 1);
+}
+static void reset_ocs_denise_blank(uae_u32 v)
+{
+ int hpos = current_hpos();
+ sync_color_changes(hpos);
+ record_color_change2(hpos, 0, COLOR_CHANGE_BLANK | 0);
+}
+
+
/* Set the state of all decisions to "undecided" for a new scanline. */
static void reset_decisions_scanline_start(void)
{
if (!ecs_denise && currprefs.gfx_overscanmode > OVERSCANMODE_OVERSCAN) {
if (!ecs_agnus) {
if (vb_start_line == 2 + vblank_extraline) {
- record_color_change2(0, 0, COLOR_CHANGE_BLANK | 1);
+ event2_newevent_xx(-1, 3 * CYCLE_UNIT, 0, set_ocs_denise_blank);
}
} else {
if (vb_start_line == 1 + vblank_extraline) {
- record_color_change2(0, 0, COLOR_CHANGE_BLANK | 1);
+ event2_newevent_xx(-1, 3 * CYCLE_UNIT, 0, set_ocs_denise_blank);
}
}
if (vb_end_next_line2) {
- record_color_change2(0, 0, COLOR_CHANGE_BLANK | 0);
+ event2_newevent_xx(-1, 3 * CYCLE_UNIT, 0, reset_ocs_denise_blank);
}
}
estimate_last_fetch_cycle(hpos);
if (vb_end_next_line && !ecs_denise && currprefs.gfx_overscanmode > OVERSCANMODE_OVERSCAN) {
- record_color_change2(hpos, 0, COLOR_CHANGE_BLANK | 1);
+ event2_newevent_xx(-1, 3 * CYCLE_UNIT, 0, set_ocs_denise_blank);
}
eventtab[ev_hsynch].evtime = get_cycles() + HSYNCTIME;