sonarlint vid_ati_mach8.c

This commit is contained in:
Jasmine Iwanek
2023-07-30 18:33:29 -04:00
parent 9b53d8e6bd
commit a96e14abda

View File

@@ -67,17 +67,23 @@ typedef struct mach_t {
uint16_t config2;
uint8_t pos_regs[8];
uint8_t cursor_col_0, cursor_col_1;
uint8_t ext_cur_col_0_r, ext_cur_col_1_r;
uint8_t ext_cur_col_0_g, ext_cur_col_1_g;
uint16_t cursor_offset_lo, cursor_offset_hi;
uint16_t cursor_x, cursor_y;
uint8_t cursor_col_0;
uint8_t cursor_col_1;
uint8_t ext_cur_col_0_r;
uint8_t ext_cur_col_1_r;
uint8_t ext_cur_col_0_g;
uint8_t ext_cur_col_1_g;
uint16_t cursor_offset_lo;
uint16_t cursor_offset_hi;
uint16_t cursor_x;
uint16_t cursor_y;
uint16_t misc;
uint16_t memory_aperture;
uint16_t local_cntl;
uint32_t linear_base;
uint8_t ap_size;
uint8_t bank_w, bank_r;
uint8_t bank_w;
uint8_t bank_r;
struct {
uint8_t line_idx;
@@ -91,7 +97,8 @@ typedef struct mach_t {
uint16_t dest_y_end;
uint16_t src_x_end;
uint16_t src_x_start;
uint16_t src_x, src_y;
uint16_t src_x;
uint16_t src_y;
int16_t bres_count;
uint16_t clock_sel;
uint16_t crt_offset_lo;
@@ -110,22 +117,40 @@ typedef struct mach_t {
uint16_t scratch1;
uint16_t test;
uint16_t pattern;
uint8_t test2[2], test3[2];
uint8_t test2[2];
uint8_t test3[2];
int src_y_dir;
int cmd_type;
int block_write_mono_pattern_enable;
int mono_pattern_enable;
int16_t cx_end_line, cy_end_line;
int16_t cx, cx_end, cy_end, dx, dx_end, dy_end;
int16_t dx_start, dy_start;
int16_t cy, sx_start, sx_end;
int16_t sx, x_count, xx_count, xxx_count;
int16_t sy, y_count;
int16_t cx_end_line;
int16_t cy_end_line;
int16_t cx;
int16_t cx_end;
int16_t cy_end;
int16_t dx;
int16_t dx_end;
int16_t dy_end;
int16_t dx_start;
int16_t dy_start;
int16_t cy;
int16_t sx_start;
int16_t sx_end;
int16_t sx;
int16_t x_count;
int16_t xx_count;
int16_t xxx_count;
int16_t sy;
int16_t y_count;
int16_t err;
int16_t width, src_width;
int16_t width;
int16_t src_width;
int16_t height;
int poly_src, temp_cnt;
int stepx, stepy, src_stepx;
int poly_src;
int temp_cnt;
int stepx;
int stepy;
int src_stepx;
uint8_t color_pattern[16];
uint8_t color_pattern_full[32];
uint16_t color_pattern_word[8];
@@ -139,14 +164,14 @@ typedef struct mach_t {
int color_pattern_idx;
} accel;
atomic_int force_busy, force_busy2;
atomic_int force_busy;
atomic_int force_busy2;
} mach_t;
static video_timings_t timing_gfxultra_isa = { .type = VIDEO_ISA, .write_b = 3, .write_w = 3, .write_l = 6, .read_b = 5, .read_w = 5, .read_l = 10 };
static video_timings_t timing_mach32_vlb = { .type = VIDEO_BUS, .write_b = 2, .write_w = 2, .write_l = 1, .read_b = 20, .read_w = 20, .read_l = 21 };
static video_timings_t timing_mach32_pci = { .type = VIDEO_PCI, .write_b = 2, .write_w = 2, .write_l = 1, .read_b = 20, .read_w = 20, .read_l = 21 };
static void mach_accel_outb(uint16_t port, uint8_t val, void *priv);
static void mach_accel_outw(uint16_t port, uint16_t val, void *priv);
static uint8_t mach_accel_inb(uint16_t port, void *priv);
@@ -348,7 +373,6 @@ mach_log(const char *fmt, ...)
svga->changedvram[(((addr)) & (svga->vram_mask >> 1)) >> 11] = changeframecount; \
}
static int
mach_pixel_write(mach_t *mach)
{
@@ -1142,8 +1166,7 @@ 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 +2096,7 @@ 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;
@@ -2264,7 +2286,7 @@ mach_out(uint16_t addr, uint8_t val, void *priv)
{
mach_t *mach = (mach_t *) priv;
svga_t *svga = &mach->svga;
ibm8514_t *dev = &svga->dev8514;
const ibm8514_t *dev = &svga->dev8514;
uint8_t old;
uint8_t rs2;
@@ -2432,7 +2454,7 @@ mach_in(uint16_t addr, void *priv)
{
mach_t *mach = (mach_t *) priv;
svga_t *svga = &mach->svga;
ibm8514_t *dev = &svga->dev8514;
const ibm8514_t *dev = &svga->dev8514;
uint8_t temp;
uint8_t rs2;
@@ -2523,7 +2545,7 @@ mach_in(uint16_t addr, void *priv)
static void
mach_recalctimings(svga_t *svga)
{
mach_t *mach = (mach_t *) svga->priv;
const mach_t *mach = (mach_t *) svga->priv;
ibm8514_t *dev = &svga->dev8514;
if (vga_on && !ibm8514_on) {
@@ -3232,7 +3254,7 @@ mach_accel_out_fifo(mach_t *mach, svga_t *svga, ibm8514_t *dev, uint16_t port, u
}
break;
/*ATI Mach8/32 specific registers*/
/*ATI Mach8/32 specific registers*/
case 0x82ee:
mach->accel.patt_data_idx = val & 0x1f;
mach_log("Pattern Data Index = %d.\n", val & 0x1f);
@@ -3257,7 +3279,6 @@ mach_accel_out_fifo(mach_t *mach, svga_t *svga, ibm8514_t *dev, uint16_t port, u
mach->accel.patt_data_idx += 2;
else
mach->accel.patt_data_idx = (mach->accel.patt_data_idx + 2) & mach->accel.patt_len;
}
mach_log("ExtCONFIG = %04x, Pattern Mono = %04x, selidx = %d, dataidx = %d, bit 0 = %02x len = %d.\n", mach->accel.ext_ge_config, val, mach->accel.patt_idx, mach->accel.patt_data_idx, val & 1, mach->accel.patt_len);
}
@@ -4139,7 +4160,7 @@ mach_accel_in(uint16_t port, mach_t *mach, int len)
{
svga_t *svga = &mach->svga;
ibm8514_t *dev = &svga->dev8514;
uint16_t *vram_w = (uint16_t *) svga->vram;
const uint16_t *vram_w = (uint16_t *) svga->vram;
uint16_t temp = 0;
int cmd;
int vpos = dev->displine + svga->y_add;
@@ -4451,7 +4472,7 @@ mach_accel_in(uint16_t port, mach_t *mach, int len)
}
break;
/*ATI Mach8/32 specific registers*/
/*ATI Mach8/32 specific registers*/
case 0x12ee:
if (len == 1)
temp = mach->config1 & 0xff;
@@ -5016,7 +5037,7 @@ mach32_updatemapping(mach_t *mach)
static void
mach32_hwcursor_draw(svga_t *svga, int displine)
{
mach_t *mach = (mach_t *) svga->priv;
const mach_t *mach = (mach_t *) svga->priv;
uint16_t dat;
int comb;
int offset = svga->hwcursor_latch.x - svga->hwcursor_latch.xoff;
@@ -5315,7 +5336,7 @@ mach_io_set(mach_t *mach)
static uint8_t
mach32_pci_read(UNUSED(int func), int addr, void *priv)
{
mach_t *mach = (mach_t *) priv;
const mach_t *mach = (mach_t *) priv;
uint8_t ret = 0x00;
switch (addr) {