diff --git a/src/include/86box/vid_8514a.h b/src/include/86box/vid_8514a.h index efc6fbb6f..7cc6a0ee3 100644 --- a/src/include/86box/vid_8514a.h +++ b/src/include/86box/vid_8514a.h @@ -83,11 +83,11 @@ typedef struct ibm8514_t { int16_t dy; int16_t err; uint32_t src; - uint16_t dest; + uint32_t dest; uint32_t newsrc_blt; - uint16_t newdest_blt; + uint32_t newdest_blt; uint32_t newdest_in; - uint16_t newdest_out; + uint32_t newdest_out; uint8_t *writemono; uint8_t *nibbleset; int x_count; diff --git a/src/video/vid_8514a.c b/src/video/vid_8514a.c index a9d0a3f5d..05b00b942 100644 --- a/src/video/vid_8514a.c +++ b/src/video/vid_8514a.c @@ -1402,7 +1402,8 @@ ibm8514_accel_start(int count, int cpu_input, uint32_t mix_dat, uint32_t cpu_dat } } else { while (count-- && (dev->accel.ssv_len >= 0)) { - if (dev->accel.cx >= dev->accel.clip_left && dev->accel.cx <= clip_r && dev->accel.cy >= dev->accel.clip_top && dev->accel.cy <= clip_b) { + if ((dev->accel.cx >= dev->accel.clip_left) && (dev->accel.cx <= clip_r) && + (dev->accel.cy >= dev->accel.clip_top) && (dev->accel.cy <= clip_b)) { switch ((mix_dat & mix_mask) ? frgd_mix : bkgd_mix) { case 0: src_dat = bkgd_color; @@ -3629,7 +3630,8 @@ bitblt: dx = (int64_t)dev->accel.dx; while (1) { - if (dx >= (((int64_t)dev->accel.clip_left) * 3) && dx <= (((uint64_t)clip_r) * 3) && dev->accel.dy >= (dev->accel.clip_top << 1) && dev->accel.dy <= (clip_b << 1)) { + if ((dx >= (((int64_t)dev->accel.clip_left) * 3)) && (dx <= (((uint64_t)clip_r) * 3)) && + (dev->accel.dy >= (dev->accel.clip_top << 1)) && (dev->accel.dy <= (clip_b << 1))) { READ(dev->accel.src + (dev->accel.ge_offset << 2) + cx, src_dat); READ(dev->accel.dest + (dev->accel.ge_offset << 2) + dx, dest_dat); @@ -3649,7 +3651,8 @@ bitblt: } while (count-- && dev->accel.sy >= 0) { - if (dev->accel.dx >= dev->accel.clip_left && dev->accel.dx <= clip_r && dev->accel.dy >= dev->accel.clip_top && dev->accel.dy <= clip_b) { + if ((dev->accel.dx >= dev->accel.clip_left) && (dev->accel.dx <= clip_r) && + (dev->accel.dy >= dev->accel.clip_top) && (dev->accel.dy <= clip_b)) { if (pixcntl == 3) { if (!(dev->accel.cmd & 0x10) && ((frgd_mix != 3) || (bkgd_mix != 3))) { READ(dev->accel.src + dev->accel.cx, mix_dat); diff --git a/src/video/vid_ati_mach8.c b/src/video/vid_ati_mach8.c index e2b312c47..45f696a35 100644 --- a/src/video/vid_ati_mach8.c +++ b/src/video/vid_ati_mach8.c @@ -1142,8 +1142,8 @@ mach_accel_start(int cmd_type, int cpu_input, int count, uint32_t mix_dat, uint3 break; } - if ((dev->accel.dx) >= clip_l && (dev->accel.dx) <= clip_r && - (dev->accel.dy) >= clip_t && (dev->accel.dy) <= clip_b) { + if (((dev->accel.dx) >= clip_l) && ((dev->accel.dx) <= clip_r) && + ((dev->accel.dy) >= clip_t) && ((dev->accel.dy) <= clip_b)) { if (mach->accel.dp_config & 0x02) { READ(dev->accel.src + (dev->accel.cx), poly_src, dev->local); poly_src = ((poly_src & rd_mask) == rd_mask); @@ -2073,8 +2073,8 @@ mach_accel_start(int cmd_type, int cpu_input, int count, uint32_t mix_dat, uint3 break; } - if ((dev->accel.dx) >= clip_l && (dev->accel.dx) <= clip_r && - (dev->accel.dy) >= clip_t && (dev->accel.dy) <= clip_b) { + if (((dev->accel.dx) >= clip_l) && ((dev->accel.dx) <= clip_r) && + ((dev->accel.dy) >= clip_t) && ((dev->accel.dy) <= clip_b)) { switch (mix ? frgd_sel : bkgd_sel) { case 0: src_dat = dev->accel.bkgd_color;