--- uae/src/drawing.c 2018/04/24 16:43:30 1.1.1.2 +++ uae/src/drawing.c 2018/04/24 16:46:14 1.1.1.4 @@ -707,8 +707,10 @@ static void pfield_init_linetoscr (void) * with sprites. */ if (dip_for_drawing->nr_sprites == 0) { int hiresadjust = bplhires ? 4 : 8; - ddf_left = ((dp_for_drawing->plfstrt + hiresadjust)*2 + mindelay - DISPLAY_LEFT_SHIFT) << lores_shift; - ddf_right = ((dp_for_drawing->plfstrt + dp_for_drawing->plflinelen + hiresadjust)*2 + maxdelay - DISPLAY_LEFT_SHIFT) << lores_shift; + ddf_left = (((dp_for_drawing->plfstrt + hiresadjust)*2 + + mindelay - DISPLAY_LEFT_SHIFT) << lores_shift); + ddf_right = (((dp_for_drawing->plfstrt + dp_for_drawing->plflinelen + hiresadjust)*2 + + maxdelay - DISPLAY_LEFT_SHIFT) << lores_shift); if (linetoscr_diw_start < ddf_left) linetoscr_diw_start = ddf_left; @@ -1878,7 +1880,7 @@ static __inline__ void do_color_changes static void pfield_expand_dp_bplcon (void) { bplhires = (dp_for_drawing->bplcon0 & 0x8000) == 0x8000; - bplplanecnt = (dp_for_drawing->bplcon0 & 0x7000) >> 12; + bplplanecnt = GET_PLANES (dp_for_drawing->bplcon0); bplham = (dp_for_drawing->bplcon0 & 0x800) == 0x800; #if AGA_CHIPSET == 1 /* The KILLEHB bit exists in ECS, but is apparently meant for Genlock * stuff, and it's set by some demos (e.g. Andromeda Seven Seas) */ @@ -2381,9 +2383,9 @@ static __inline__ void check_picasso (vo picasso_on = picasso_requested_on; if (!picasso_on) - clear_inhibit_frame (2); + clear_inhibit_frame (IHF_PICASSO); else - set_inhibit_frame (2); + set_inhibit_frame (IHF_PICASSO); gfx_set_picasso_state (picasso_on); picasso_enablescreen (picasso_requested_on); @@ -2411,7 +2413,7 @@ void vsync_handle_redraw (int long_frame if (quit_program < 0) { quit_program = -quit_program; - set_inhibit_frame (1); + set_inhibit_frame (IHF_QUIT_PROGRAM); regs.spcflags |= SPCFLAG_BRK; filesys_prepare_reset (); #ifdef SUPPORT_PENGUINS