Some code smell fixes from sonarlint
This commit is contained in:
@@ -97,52 +97,54 @@ extern uint64_t instru_run_ms;
|
||||
#define window_y monitor_settings[0].mon_window_y
|
||||
#define window_w monitor_settings[0].mon_window_w
|
||||
#define window_h monitor_settings[0].mon_window_h
|
||||
extern int window_remember,
|
||||
vid_resize, /* (C) allow resizing */
|
||||
invert_display, /* (C) invert the display */
|
||||
suppress_overscan; /* (C) suppress overscans */
|
||||
extern int window_remember;
|
||||
extern int vid_resize; /* (C) allow resizing */
|
||||
extern int invert_display; /* (C) invert the display */
|
||||
extern int suppress_overscan; /* (C) suppress overscans */
|
||||
extern uint32_t lang_id; /* (C) language code identifier */
|
||||
extern char icon_set[256]; /* (C) iconset identifier */
|
||||
extern int scale; /* (C) screen scale factor */
|
||||
extern int dpi_scale; /* (C) DPI scaling of the emulated screen */
|
||||
extern int vid_api; /* (C) video renderer */
|
||||
extern int vid_cga_contrast, /* (C) video */
|
||||
video_fullscreen, /* (C) video */
|
||||
video_fullscreen_first, /* (C) video */
|
||||
video_fullscreen_scale, /* (C) video */
|
||||
enable_overscan, /* (C) video */
|
||||
force_43, /* (C) video */
|
||||
video_filter_method, /* (C) video */
|
||||
video_vsync, /* (C) video */
|
||||
video_framerate, /* (C) video */
|
||||
gfxcard[2]; /* (C) graphics/video card */
|
||||
extern int vid_cga_contrast; /* (C) video */
|
||||
extern int video_fullscreen; /* (C) video */
|
||||
extern int video_fullscreen_first; /* (C) video */
|
||||
extern int video_fullscreen_scale; /* (C) video */
|
||||
extern int enable_overscan; /* (C) video */
|
||||
extern int force_43; /* (C) video */
|
||||
extern int video_filter_method; /* (C) video */
|
||||
extern int video_vsync; /* (C) video */
|
||||
extern int video_framerate; /* (C) video */
|
||||
extern int gfxcard[2]; /* (C) graphics/video card */
|
||||
extern char video_shader[512]; /* (C) video */
|
||||
extern int bugger_enabled, /* (C) enable ISAbugger */
|
||||
postcard_enabled, /* (C) enable POST card */
|
||||
isamem_type[], /* (C) enable ISA mem cards */
|
||||
isartc_type; /* (C) enable ISA RTC card */
|
||||
extern int sound_is_float, /* (C) sound uses FP values */
|
||||
voodoo_enabled, /* (C) video option */
|
||||
ibm8514_enabled, /* (C) video option */
|
||||
xga_enabled; /* (C) video option */
|
||||
extern int bugger_enabled; /* (C) enable ISAbugger */
|
||||
extern int postcard_enabled; /* (C) enable POST card */
|
||||
extern int isamem_type[]; /* (C) enable ISA mem cards */
|
||||
extern int isartc_type; /* (C) enable ISA RTC card */
|
||||
extern int sound_is_float; /* (C) sound uses FP values */
|
||||
extern int voodoo_enabled; /* (C) video option */
|
||||
extern int ibm8514_enabled; /* (C) video option */
|
||||
extern int xga_enabled; /* (C) video option */
|
||||
extern uint32_t mem_size; /* (C) memory size (Installed on system board) */
|
||||
extern uint32_t isa_mem_size; /* (C) memory size (ISA Memory Cards) */
|
||||
extern int cpu, /* (C) cpu type */
|
||||
cpu_use_dynarec, /* (C) cpu uses/needs Dyna */
|
||||
fpu_type, /* (C) fpu type */
|
||||
fpu_softfloat; /* (C) fpu uses softfloat */
|
||||
extern int cpu; /* (C) cpu type */
|
||||
extern int cpu_use_dynarec; /* (C) cpu uses/needs Dyna */
|
||||
extern int fpu_type; /* (C) fpu type */
|
||||
extern int fpu_softfloat; /* (C) fpu uses softfloat */
|
||||
extern int time_sync; /* (C) enable time sync */
|
||||
extern int hdd_format_type; /* (C) hard disk file format */
|
||||
extern int confirm_reset, /* (C) enable reset confirmation */
|
||||
confirm_exit, /* (C) enable exit confirmation */
|
||||
confirm_save; /* (C) enable save confirmation */
|
||||
extern int confirm_reset; /* (C) enable reset confirmation */
|
||||
extern int confirm_exit; /* (C) enable exit confirmation */
|
||||
extern int confirm_save; /* (C) enable save confirmation */
|
||||
extern int enable_discord; /* (C) enable Discord integration */
|
||||
|
||||
extern int is_pentium; /* TODO: Move back to cpu/cpu.h when it's figured out,
|
||||
how to remove that hack from the ET4000/W32p. */
|
||||
extern int fixed_size_x, fixed_size_y;
|
||||
extern int fixed_size_x;
|
||||
extern int fixed_size_y;
|
||||
extern double mouse_sensitivity; /* (C) Mouse sensitivity scale */
|
||||
extern double mouse_x_error, mouse_y_error; /* Mouse error accumulators */
|
||||
extern double mouse_x_error; /* Mouse error accumulator - Y */
|
||||
extern double mouse_y_error; /* Mouse error accumulator - Y */
|
||||
extern int pit_mode; /* (C) force setting PIT mode */
|
||||
extern int fm_driver; /* (C) select FM sound driver */
|
||||
|
||||
@@ -196,7 +198,8 @@ extern void sub_cycles(int c);
|
||||
extern void resub_cycles(int old_cycles);
|
||||
|
||||
extern double isa_timing;
|
||||
extern int io_delay, framecountx;
|
||||
extern int io_delay;
|
||||
extern int framecountx;
|
||||
|
||||
extern volatile int cpu_thread_run;
|
||||
|
||||
|
||||
@@ -157,9 +157,11 @@ extern pc_cassette_t *cassette;
|
||||
|
||||
extern char cassette_fname[512];
|
||||
extern char cassette_mode[512];
|
||||
extern unsigned long cassette_pos, cassette_srate;
|
||||
extern unsigned long cassette_pos;
|
||||
extern unsigned long cassette_srate;
|
||||
extern int cassette_enable;
|
||||
extern int cassette_append, cassette_pcm;
|
||||
extern int cassette_append;
|
||||
extern int cassette_pcm;
|
||||
extern int cassette_ui_writeprot;
|
||||
|
||||
extern const device_t cassette_device;
|
||||
|
||||
@@ -120,7 +120,8 @@ extern int disable_write;
|
||||
|
||||
extern int defaultwriteprot;
|
||||
|
||||
extern int writeprot[FDD_NUM], fwriteprot[FDD_NUM];
|
||||
extern int writeprot[FDD_NUM];
|
||||
extern int fwriteprot[FDD_NUM];
|
||||
extern int fdd_changed[FDD_NUM];
|
||||
extern int drive_empty[FDD_NUM];
|
||||
|
||||
|
||||
@@ -113,7 +113,8 @@ enum {
|
||||
TIMINGS_PIO_FC
|
||||
};
|
||||
|
||||
extern int ide_ter_enabled, ide_qua_enabled;
|
||||
extern int ide_ter_enabled;
|
||||
extern int ide_qua_enabled;
|
||||
|
||||
#ifdef SCSI_DEVICE_H
|
||||
extern ide_t *ide_get_drive(int ch);
|
||||
|
||||
@@ -21,31 +21,38 @@ typedef struct i8080 {
|
||||
union {
|
||||
uint16_t af; /* Intended in case we also go for μPD9002 emulation, which also has a Z80 emulation mode. */
|
||||
struct {
|
||||
uint8_t a, flags;
|
||||
uint8_t a;
|
||||
uint8_t flags;
|
||||
};
|
||||
};
|
||||
union {
|
||||
uint16_t bc;
|
||||
struct {
|
||||
uint8_t b, c;
|
||||
uint8_t b;
|
||||
uint8_t c;
|
||||
};
|
||||
};
|
||||
union {
|
||||
uint16_t de;
|
||||
struct {
|
||||
uint8_t d, e;
|
||||
uint8_t d;
|
||||
uint8_t e;
|
||||
};
|
||||
};
|
||||
union {
|
||||
uint16_t hl;
|
||||
struct {
|
||||
uint8_t h, l;
|
||||
uint8_t h;
|
||||
uint8_t l;
|
||||
};
|
||||
};
|
||||
uint16_t pc, sp;
|
||||
uint16_t oldpc, ei;
|
||||
uint32_t pmembase, dmembase; /* Base from where i8080 starts. */
|
||||
uint8_t emulated; /* 0 = not emulated, use separate registers, 1 = emulated, use x86 registers. */
|
||||
uint16_t pc;
|
||||
uint16_t sp;
|
||||
uint16_t oldpc;
|
||||
uint16_t ei;
|
||||
uint32_t pmembase;
|
||||
uint32_t dmembase; /* Base from where i8080 starts. */
|
||||
uint8_t emulated; /* 0 = not emulated, use separate registers, 1 = emulated, use x86 registers. */
|
||||
uint16_t *cpu_flags;
|
||||
void (*writemembyte)(uint32_t, uint8_t);
|
||||
uint8_t (*readmembyte)(uint32_t);
|
||||
|
||||
@@ -192,8 +192,10 @@ extern const scancode scancode_xt[512];
|
||||
extern uint8_t keyboard_set3_flags[512];
|
||||
extern uint8_t keyboard_set3_all_repeat;
|
||||
extern uint8_t keyboard_set3_all_break;
|
||||
extern int mouse_queue_start, mouse_queue_end;
|
||||
extern int mouse_cmd_queue_start, mouse_cmd_queue_end;
|
||||
extern int mouse_queue_start;
|
||||
extern int mouse_queue_end;
|
||||
extern int mouse_cmd_queue_start;
|
||||
extern int mouse_cmd_queue_end;
|
||||
extern int mouse_scan;
|
||||
|
||||
extern kbc_at_port_t *kbc_at_ports[2];
|
||||
|
||||
@@ -317,8 +317,8 @@ typedef struct _machine_ {
|
||||
} machine_t;
|
||||
|
||||
/* Global variables. */
|
||||
extern const machine_filter_t machine_types[],
|
||||
machine_chipsets[];
|
||||
extern const machine_filter_t machine_types[];
|
||||
extern const machine_filter_t machine_chipsets[];
|
||||
extern const machine_t machines[];
|
||||
extern int bios_only;
|
||||
extern int machine;
|
||||
|
||||
@@ -270,27 +270,27 @@ extern int writelnext;
|
||||
extern uint32_t ram_mapped_addr[64];
|
||||
extern uint8_t page_ff[4096];
|
||||
|
||||
extern mem_mapping_t ram_low_mapping,
|
||||
extern mem_mapping_t ram_low_mapping;
|
||||
#if 1
|
||||
ram_mid_mapping,
|
||||
extern mem_mapping_t ram_mid_mapping;
|
||||
#endif
|
||||
ram_remapped_mapping,
|
||||
ram_high_mapping,
|
||||
ram_2gb_mapping,
|
||||
bios_mapping,
|
||||
bios_high_mapping;
|
||||
extern mem_mapping_t ram_remapped_mapping;
|
||||
extern mem_mapping_t ram_high_mapping;
|
||||
extern mem_mapping_t ram_2gb_mapping;
|
||||
extern mem_mapping_t bios_mapping;
|
||||
extern mem_mapping_t bios_high_mapping;
|
||||
|
||||
extern uint32_t mem_logical_addr;
|
||||
|
||||
extern page_t *pages,
|
||||
**page_lookup;
|
||||
extern page_t *pages;
|
||||
extern page_t **page_lookup;
|
||||
|
||||
extern uint32_t get_phys_virt, get_phys_phys;
|
||||
|
||||
extern int shadowbios,
|
||||
shadowbios_write;
|
||||
extern int readlnum,
|
||||
writelnum;
|
||||
extern int shadowbios;
|
||||
extern int shadowbios_write;
|
||||
extern int readlnum;
|
||||
extern int writelnum;
|
||||
|
||||
extern int memspeed[11];
|
||||
|
||||
@@ -299,9 +299,9 @@ extern uint8_t high_page; /* if a high (> 4 gb) page was detected */
|
||||
|
||||
extern uint32_t pages_sz; /* #pages in table */
|
||||
|
||||
extern int mem_a20_state,
|
||||
mem_a20_alt,
|
||||
mem_a20_key;
|
||||
extern int mem_a20_state;
|
||||
extern int mem_a20_alt;
|
||||
extern int mem_a20_key;
|
||||
|
||||
extern uint8_t read_mem_b(uint32_t addr);
|
||||
extern uint16_t read_mem_w(uint32_t addr);
|
||||
|
||||
@@ -56,7 +56,8 @@ typedef struct midi_t {
|
||||
midi_device_t *m_out_device, *m_in_device;
|
||||
} midi_t;
|
||||
|
||||
extern midi_t *midi_out, *midi_in;
|
||||
extern midi_t *midi_out;
|
||||
extern midi_t *midi_in;
|
||||
|
||||
extern void midi_out_init(midi_device_t *device);
|
||||
extern void midi_in_init(midi_device_t *device, midi_t **mididev);
|
||||
|
||||
@@ -44,10 +44,13 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
extern int mouse_type;
|
||||
extern int mouse_x, mouse_y, mouse_z;
|
||||
extern int mouse_x;
|
||||
extern int mouse_y;
|
||||
extern int mouse_z;
|
||||
extern int mouse_mode; /* 1 = Absolute, 0 = Relative */
|
||||
extern int mouse_tablet_in_proximity;
|
||||
extern double mouse_x_abs, mouse_y_abs;
|
||||
extern double mouse_x_abs;
|
||||
extern double mouse_y_abs;
|
||||
extern int mouse_buttons;
|
||||
extern int tablet_tool_type;
|
||||
|
||||
|
||||
@@ -94,8 +94,10 @@ typedef union {
|
||||
uint8_t addr_regs[4];
|
||||
} bar_t;
|
||||
|
||||
extern int pci_burst_time, agp_burst_time,
|
||||
pci_nonburst_time, agp_nonburst_time;
|
||||
extern int pci_burst_time;
|
||||
extern int agp_burst_time;
|
||||
extern int pci_nonburst_time;
|
||||
extern int agp_nonburst_time;
|
||||
|
||||
extern void pci_set_irq_routing(int pci_int, int irq);
|
||||
extern void pci_set_irq_level(int pci_int, int level);
|
||||
|
||||
@@ -29,7 +29,8 @@ typedef struct pic {
|
||||
struct pic *slaves[8];
|
||||
} pic_t;
|
||||
|
||||
extern pic_t pic, pic2;
|
||||
extern pic_t pic;
|
||||
extern pic_t pic2;
|
||||
|
||||
extern void pic_reset_smi_irq_mask(void);
|
||||
extern void pic_set_smi_irq_mask(int irq, int set);
|
||||
|
||||
@@ -84,15 +84,18 @@ typedef struct {
|
||||
extern pit_intf_t pit_devs[2];
|
||||
extern const pit_intf_t pit_classic_intf;
|
||||
|
||||
extern double SYSCLK, PCICLK, AGPCLK;
|
||||
extern double SYSCLK;
|
||||
extern double PCICLK;
|
||||
extern double AGPCLK;
|
||||
|
||||
extern uint64_t PITCONST, ISACONST,
|
||||
CGACONST,
|
||||
MDACONST,
|
||||
HERCCONST,
|
||||
VGACONST1,
|
||||
VGACONST2,
|
||||
RTCCONST;
|
||||
extern uint64_t PITCONST;
|
||||
extern uint64_t ISACONST;
|
||||
extern uint64_t CGACONST;
|
||||
extern uint64_t MDACONST;
|
||||
extern uint64_t HERCCONST;
|
||||
extern uint64_t VGACONST1;
|
||||
extern uint64_t VGACONST2;
|
||||
extern uint64_t RTCCONST;
|
||||
|
||||
extern int refresh_at_enable;
|
||||
|
||||
|
||||
@@ -104,14 +104,22 @@ enum {
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
const uint16_t index, value, write_mask;
|
||||
const uint16_t index;
|
||||
const uint16_t value;
|
||||
const uint16_t write_mask;
|
||||
} ac97_vendor_reg_t;
|
||||
|
||||
typedef struct {
|
||||
uint32_t vendor_id, min_rate, max_rate, misc_flags;
|
||||
uint16_t reset_flags, extid_flags,
|
||||
powerdown_mask, regs[64];
|
||||
uint8_t codec_id, vendor_reg_page_max;
|
||||
uint32_t vendor_id;
|
||||
uint32_t min_rate;
|
||||
uint32_t max_rate;
|
||||
uint32_t misc_flags;
|
||||
uint16_t reset_flags;
|
||||
uint16_t extid_flags;
|
||||
uint16_t powerdown_mask;
|
||||
uint16_t regs[64];
|
||||
uint8_t codec_id;
|
||||
uint8_t vendor_reg_page_max;
|
||||
const ac97_vendor_reg_t *vendor_regs;
|
||||
uint16_t *vendor_reg_pages;
|
||||
} ac97_codec_t;
|
||||
@@ -131,9 +139,12 @@ extern void ac97_via_remap_modem_sgd(void *priv, uint16_t new_io_base, uint8_
|
||||
extern void ac97_via_remap_audio_codec(void *priv, uint16_t new_io_base, uint8_t enable);
|
||||
extern void ac97_via_remap_modem_codec(void *priv, uint16_t new_io_base, uint8_t enable);
|
||||
|
||||
extern ac97_codec_t **ac97_codec, **ac97_modem_codec;
|
||||
extern int ac97_codec_count, ac97_modem_codec_count,
|
||||
ac97_codec_id, ac97_modem_codec_id;
|
||||
extern ac97_codec_t **ac97_codec;
|
||||
extern ac97_codec_t **ac97_modem_codec;
|
||||
extern int ac97_codec_count;
|
||||
extern int ac97_modem_codec_count;
|
||||
extern int ac97_codec_id;
|
||||
extern int ac97_modem_codec_id;
|
||||
|
||||
#ifdef EMU_DEVICE_H
|
||||
extern const device_t ad1881_device;
|
||||
|
||||
@@ -144,7 +144,8 @@ typedef struct mpu_t {
|
||||
void *priv;
|
||||
} mpu_t;
|
||||
|
||||
extern int mpu401_standalone_enable, mpu401_already_loaded;
|
||||
extern int mpu401_standalone_enable;
|
||||
extern int mpu401_already_loaded;
|
||||
|
||||
extern const device_t mpu401_device;
|
||||
extern const device_t mpu401_mca_device;
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
extern int speaker_mute;
|
||||
|
||||
extern int speaker_gated;
|
||||
extern int speaker_enable, was_speaker_enable;
|
||||
extern int speaker_enable;
|
||||
extern int was_speaker_enable;
|
||||
|
||||
extern void speaker_init(void);
|
||||
|
||||
|
||||
@@ -42,9 +42,9 @@ enum {
|
||||
};
|
||||
|
||||
extern int ppispeakon;
|
||||
extern int gated,
|
||||
speakval,
|
||||
speakon;
|
||||
extern int gated;
|
||||
extern int speakval;
|
||||
extern int speakon;
|
||||
|
||||
extern int sound_pos_global;
|
||||
extern int sound_card_current[SOUND_CARD_MAX];
|
||||
|
||||
@@ -180,7 +180,8 @@ typedef struct svga_t {
|
||||
monitor_t* monitor;
|
||||
} svga_t;
|
||||
|
||||
extern int vga_on, ibm8514_on;
|
||||
extern int vga_on;
|
||||
extern int ibm8514_on;
|
||||
|
||||
extern void ibm8514_poll(ibm8514_t *dev, svga_t *svga);
|
||||
extern void ibm8514_recalctimings(svga_t *svga);
|
||||
|
||||
@@ -70,7 +70,8 @@ static __m128i xmm_01_w; // = 0x0001000100010001ull;
|
||||
static __m128i xmm_ff_w; // = 0x00ff00ff00ff00ffull;
|
||||
static __m128i xmm_ff_b; // = 0x00000000ffffffffull;
|
||||
|
||||
static __m128i alookup[257], aminuslookup[256];
|
||||
static __m128i alookup[257];
|
||||
static __m128i aminuslookup[256];
|
||||
static __m128i minus_254; // = 0xff02ff02ff02ff02ull;
|
||||
static __m128i bilinear_lookup[256 * 2];
|
||||
static __m128i xmm_00_ff_w[2];
|
||||
|
||||
@@ -69,9 +69,10 @@ static __m128i xmm_ff_w; // = 0x00ff00ff00ff00ffull;
|
||||
static __m128i xmm_ff_b; // = 0x00000000ffffffffull;
|
||||
|
||||
static uint32_t zero = 0;
|
||||
static double const_1_48 = (double) (1ull << 4);
|
||||
static double const_1_48 = (double) (1ULL << 4);
|
||||
|
||||
static __m128i alookup[257], aminuslookup[256];
|
||||
static __m128i alookup[257];
|
||||
static __m128i aminuslookup[256];
|
||||
static __m128i minus_254; // = 0xff02ff02ff02ff02ull;
|
||||
static __m128i bilinear_lookup[256 * 2];
|
||||
static __m128i xmm_00_ff_w[2];
|
||||
|
||||
@@ -53,17 +53,25 @@ typedef union int_float {
|
||||
} int_float;
|
||||
|
||||
typedef struct rgbvoodoo_t {
|
||||
uint8_t b, g, r;
|
||||
uint8_t b;
|
||||
uint8_t g;
|
||||
uint8_t r;
|
||||
uint8_t pad;
|
||||
} rgbvoodoo_t;
|
||||
typedef struct rgba8_t {
|
||||
uint8_t b, g, r, a;
|
||||
uint8_t b;
|
||||
uint8_t g;
|
||||
uint8_t r;
|
||||
uint8_t a;
|
||||
} rgba8_t;
|
||||
|
||||
typedef union rgba_u {
|
||||
struct
|
||||
{
|
||||
uint8_t b, g, r, a;
|
||||
uint8_t b;
|
||||
uint8_t g;
|
||||
uint8_t r;
|
||||
uint8_t a;
|
||||
} rgba;
|
||||
uint32_t u;
|
||||
} rgba_u;
|
||||
@@ -105,24 +113,53 @@ typedef struct
|
||||
typedef struct voodoo_params_t {
|
||||
int command;
|
||||
|
||||
int32_t vertexAx, vertexAy, vertexBx, vertexBy, vertexCx, vertexCy;
|
||||
int32_t vertexAx;
|
||||
int32_t vertexAy;
|
||||
int32_t vertexBx;
|
||||
int32_t vertexBy;
|
||||
int32_t vertexCx;
|
||||
int32_t vertexCy;
|
||||
|
||||
uint32_t startR, startG, startB, startZ, startA;
|
||||
uint32_t startR;
|
||||
uint32_t startG;
|
||||
uint32_t startB;
|
||||
uint32_t startZ;
|
||||
uint32_t startA;
|
||||
|
||||
int32_t dBdX, dGdX, dRdX, dAdX, dZdX;
|
||||
int32_t dBdX;
|
||||
int32_t dGdX;
|
||||
int32_t dRdX;
|
||||
int32_t dAdX;
|
||||
int32_t dZdX;
|
||||
|
||||
int32_t dBdY, dGdY, dRdY, dAdY, dZdY;
|
||||
int32_t dBdY;
|
||||
int32_t dGdY;
|
||||
int32_t dRdY;
|
||||
int32_t dAdY;
|
||||
int32_t dZdY;
|
||||
|
||||
int64_t startW, dWdX, dWdY;
|
||||
int64_t startW;
|
||||
int64_t dWdX;
|
||||
int64_t dWdY;
|
||||
|
||||
struct
|
||||
{
|
||||
int64_t startS, startT, startW, p1;
|
||||
int64_t dSdX, dTdX, dWdX, p2;
|
||||
int64_t dSdY, dTdY, dWdY, p3;
|
||||
int64_t startS;
|
||||
int64_t startT;
|
||||
int64_t startW;
|
||||
int64_t p1;
|
||||
int64_t dSdX;
|
||||
int64_t dTdX;
|
||||
int64_t dWdX;
|
||||
int64_t p2;
|
||||
int64_t dSdY;
|
||||
int64_t dTdY;
|
||||
int64_t dWdY;
|
||||
int64_t p3;
|
||||
} tmu[2];
|
||||
|
||||
uint32_t color0, color1;
|
||||
uint32_t color0;
|
||||
uint32_t color1;
|
||||
|
||||
uint32_t fbzMode;
|
||||
uint32_t fbzColorPath;
|
||||
@@ -131,20 +168,26 @@ typedef struct voodoo_params_t {
|
||||
rgbvoodoo_t fogColor;
|
||||
struct
|
||||
{
|
||||
uint8_t fog, dfog;
|
||||
uint8_t fog;
|
||||
uint8_t dfog;
|
||||
} fogTable[64];
|
||||
|
||||
uint32_t alphaMode;
|
||||
|
||||
uint32_t zaColor;
|
||||
|
||||
int chromaKey_r, chromaKey_g, chromaKey_b;
|
||||
int chromaKey_r;
|
||||
int chromaKey_g;
|
||||
int chromaKey_b;
|
||||
uint32_t chromaKey;
|
||||
|
||||
uint32_t textureMode[2];
|
||||
uint32_t tLOD[2];
|
||||
|
||||
uint32_t texBaseAddr[2], texBaseAddr1[2], texBaseAddr2[2], texBaseAddr38[2];
|
||||
uint32_t texBaseAddr[2];
|
||||
uint32_t texBaseAddr1[2];
|
||||
uint32_t texBaseAddr2[2];
|
||||
uint32_t texBaseAddr38[2];
|
||||
|
||||
uint32_t tex_base[2][LOD_MAX + 2];
|
||||
uint32_t tex_end[2][LOD_MAX + 2];
|
||||
@@ -155,14 +198,23 @@ typedef struct voodoo_params_t {
|
||||
int tex_shift[2][LOD_MAX + 2];
|
||||
int tex_lod[2][LOD_MAX + 2];
|
||||
int tex_entry[2];
|
||||
int detail_max[2], detail_bias[2], detail_scale[2];
|
||||
int detail_max[2];
|
||||
int detail_bias[2];
|
||||
int detail_scale[2];
|
||||
|
||||
uint32_t draw_offset, aux_offset;
|
||||
uint32_t draw_offset;
|
||||
uint32_t aux_offset;
|
||||
|
||||
int tformat[2];
|
||||
|
||||
int clipLeft, clipRight, clipLowY, clipHighY;
|
||||
int clipLeft1, clipRight1, clipLowY1, clipHighY1;
|
||||
int clipLeft;
|
||||
int clipRight;
|
||||
int clipLowY;
|
||||
int clipHighY;
|
||||
int clipLeft1;
|
||||
int clipRight1;
|
||||
int clipLowY1;
|
||||
int clipHighY1;
|
||||
|
||||
int sign;
|
||||
|
||||
@@ -172,31 +224,46 @@ typedef struct voodoo_params_t {
|
||||
|
||||
uint32_t stipple;
|
||||
|
||||
int col_tiled, aux_tiled;
|
||||
int row_width, aux_row_width;
|
||||
int col_tiled;
|
||||
int aux_tiled;
|
||||
int row_width;
|
||||
int aux_row_width;
|
||||
} voodoo_params_t;
|
||||
|
||||
typedef struct texture_t {
|
||||
uint32_t base;
|
||||
uint32_t tLOD;
|
||||
atomic_int refcount, refcount_r[4];
|
||||
atomic_int refcount;
|
||||
atomic_int refcount_r[4];
|
||||
int is16;
|
||||
uint32_t palette_checksum;
|
||||
uint32_t addr_start[4], addr_end[4];
|
||||
uint32_t addr_start[4];
|
||||
uint32_t addr_end[4];
|
||||
uint32_t *data;
|
||||
} texture_t;
|
||||
|
||||
typedef struct vert_t {
|
||||
float sVx, sVy;
|
||||
float sRed, sGreen, sBlue, sAlpha;
|
||||
float sVz, sWb;
|
||||
float sW0, sS0, sT0;
|
||||
float sW1, sS1, sT1;
|
||||
float sVx;
|
||||
float sVy;
|
||||
float sRed;
|
||||
float sGreen;
|
||||
float sBlue;
|
||||
float sAlpha;
|
||||
float sVz;
|
||||
float sWb;
|
||||
float sW0;
|
||||
float sS0;
|
||||
float sT0;
|
||||
float sW1;
|
||||
float sS1;
|
||||
float sT1;
|
||||
} vert_t;
|
||||
|
||||
typedef struct clip_t {
|
||||
int x_min, x_max;
|
||||
int y_min, y_max;
|
||||
int x_min;
|
||||
int x_max;
|
||||
int y_min;
|
||||
int y_max;
|
||||
} clip_t;
|
||||
|
||||
typedef struct voodoo_t {
|
||||
@@ -205,7 +272,8 @@ typedef struct voodoo_t {
|
||||
int pci_enable;
|
||||
|
||||
uint8_t dac_data[8];
|
||||
int dac_reg, dac_reg_ff;
|
||||
int dac_reg;
|
||||
int dac_reg_ff;
|
||||
uint8_t dac_readdata;
|
||||
uint16_t dac_pll_regs[16];
|
||||
|
||||
@@ -214,8 +282,14 @@ typedef struct voodoo_t {
|
||||
|
||||
voodoo_params_t params;
|
||||
|
||||
uint32_t fbiInit0, fbiInit1, fbiInit2, fbiInit3, fbiInit4;
|
||||
uint32_t fbiInit5, fbiInit6, fbiInit7; /*Voodoo 2*/
|
||||
uint32_t fbiInit0;
|
||||
uint32_t fbiInit1;
|
||||
uint32_t fbiInit2;
|
||||
uint32_t fbiInit3;
|
||||
uint32_t fbiInit4;
|
||||
uint32_t fbiInit5;
|
||||
uint32_t fbiInit6;
|
||||
uint32_t fbiInit7; /*Voodoo 2*/
|
||||
|
||||
uint32_t initEnable;
|
||||
|
||||
@@ -223,18 +297,28 @@ typedef struct voodoo_t {
|
||||
|
||||
uint32_t memBaseAddr;
|
||||
|
||||
int_float fvertexAx, fvertexAy, fvertexBx, fvertexBy, fvertexCx, fvertexCy;
|
||||
int_float fvertexAx;
|
||||
int_float fvertexAy;
|
||||
int_float fvertexBx;
|
||||
int_float fvertexBy;
|
||||
int_float fvertexCx;
|
||||
int_float fvertexCy;
|
||||
|
||||
uint32_t front_offset, back_offset;
|
||||
uint32_t front_offset;
|
||||
uint32_t back_offset;
|
||||
|
||||
uint32_t fb_read_offset, fb_write_offset;
|
||||
uint32_t fb_read_offset;
|
||||
uint32_t fb_write_offset;
|
||||
|
||||
int row_width, aux_row_width;
|
||||
int row_width;
|
||||
int aux_row_width;
|
||||
int block_width;
|
||||
|
||||
int col_tiled, aux_tiled;
|
||||
int col_tiled;
|
||||
int aux_tiled;
|
||||
|
||||
uint8_t *fb_mem, *tex_mem[2];
|
||||
uint8_t *fb_mem;
|
||||
uint8_t *tex_mem[2];
|
||||
uint16_t *tex_mem_w[2];
|
||||
|
||||
int rgb_sel;
|
||||
@@ -246,7 +330,8 @@ typedef struct voodoo_t {
|
||||
mutex_t *swap_mutex;
|
||||
int swap_count;
|
||||
|
||||
int disp_buffer, draw_buffer;
|
||||
int disp_buffer;
|
||||
int draw_buffer;
|
||||
pc_timer_t timer;
|
||||
|
||||
int line;
|
||||
@@ -254,15 +339,20 @@ typedef struct voodoo_t {
|
||||
|
||||
uint32_t backPorch;
|
||||
uint32_t videoDimensions;
|
||||
uint32_t hSync, vSync;
|
||||
uint32_t hSync;
|
||||
uint32_t vSync;
|
||||
|
||||
int h_total, v_total, v_disp;
|
||||
int h_total;
|
||||
int v_total;
|
||||
int v_disp;
|
||||
int h_disp;
|
||||
int v_retrace;
|
||||
|
||||
struct
|
||||
{
|
||||
uint32_t y[4], i[4], q[4];
|
||||
uint32_t y[4];
|
||||
uint32_t i[4];
|
||||
uint32_t q[4];
|
||||
} nccTable[2][2];
|
||||
|
||||
rgba_u palette[2][256];
|
||||
@@ -284,9 +374,15 @@ typedef struct voodoo_t {
|
||||
int render_threads;
|
||||
int odd_even_mask;
|
||||
|
||||
int pixel_count[4], texel_count[4], tri_count, frame_count;
|
||||
int pixel_count_old[4], texel_count_old[4];
|
||||
int wr_count, rd_count, tex_count;
|
||||
int pixel_count[4];
|
||||
int texel_count[4];
|
||||
int tri_count;
|
||||
int frame_count;
|
||||
int pixel_count_old[4];
|
||||
int texel_count_old[4];
|
||||
int wr_count;
|
||||
int rd_count;
|
||||
int tex_count;
|
||||
|
||||
int retrace_count;
|
||||
int swap_interval;
|
||||
@@ -306,18 +402,27 @@ typedef struct voodoo_t {
|
||||
int type;
|
||||
|
||||
fifo_entry_t fifo[FIFO_SIZE];
|
||||
atomic_int fifo_read_idx, fifo_write_idx;
|
||||
atomic_int cmd_read, cmd_written, cmd_written_fifo;
|
||||
atomic_int fifo_read_idx;
|
||||
atomic_int fifo_write_idx;
|
||||
atomic_int cmd_read;
|
||||
atomic_int cmd_written;
|
||||
atomic_int cmd_written_fifo;
|
||||
|
||||
voodoo_params_t params_buffer[PARAM_SIZE];
|
||||
atomic_int params_read_idx[4], params_write_idx;
|
||||
atomic_int params_read_idx[4];
|
||||
atomic_int params_write_idx;
|
||||
|
||||
uint32_t cmdfifo_base, cmdfifo_end, cmdfifo_size;
|
||||
int cmdfifo_rp, cmdfifo_ret_addr;
|
||||
uint32_t cmdfifo_base;
|
||||
uint32_t cmdfifo_end;
|
||||
uint32_t cmdfifo_size;
|
||||
int cmdfifo_rp;
|
||||
int cmdfifo_ret_addr;
|
||||
int cmdfifo_in_sub;
|
||||
atomic_int cmdfifo_depth_rd, cmdfifo_depth_wr;
|
||||
atomic_int cmdfifo_depth_rd;
|
||||
atomic_int cmdfifo_depth_wr;
|
||||
atomic_int cmdfifo_enabled;
|
||||
uint32_t cmdfifo_amin, cmdfifo_amax;
|
||||
uint32_t cmdfifo_amin;
|
||||
uint32_t cmdfifo_amax;
|
||||
int cmdfifo_holecount;
|
||||
|
||||
atomic_uint cmd_status;
|
||||
@@ -346,21 +451,37 @@ typedef struct voodoo_t {
|
||||
|
||||
uint32_t bltSrcBaseAddr;
|
||||
uint32_t bltDstBaseAddr;
|
||||
int bltSrcXYStride, bltDstXYStride;
|
||||
uint32_t bltSrcChromaRange, bltDstChromaRange;
|
||||
int bltSrcChromaMinR, bltSrcChromaMinG, bltSrcChromaMinB;
|
||||
int bltSrcChromaMaxR, bltSrcChromaMaxG, bltSrcChromaMaxB;
|
||||
int bltDstChromaMinR, bltDstChromaMinG, bltDstChromaMinB;
|
||||
int bltDstChromaMaxR, bltDstChromaMaxG, bltDstChromaMaxB;
|
||||
int bltSrcXYStride;
|
||||
int bltDstXYStride;
|
||||
uint32_t bltSrcChromaRange;
|
||||
uint32_t bltDstChromaRange;
|
||||
int bltSrcChromaMinR;
|
||||
int bltSrcChromaMinG;
|
||||
int bltSrcChromaMinB;
|
||||
int bltSrcChromaMaxR;
|
||||
int bltSrcChromaMaxG;
|
||||
int bltSrcChromaMaxB;
|
||||
int bltDstChromaMinR;
|
||||
int bltDstChromaMinG;
|
||||
int bltDstChromaMinB;
|
||||
int bltDstChromaMaxR;
|
||||
int bltDstChromaMaxG;
|
||||
int bltDstChromaMaxB;
|
||||
|
||||
int bltClipRight, bltClipLeft;
|
||||
int bltClipHighY, bltClipLowY;
|
||||
int bltClipRight;
|
||||
int bltClipLeft;
|
||||
int bltClipHighY;
|
||||
int bltClipLowY;
|
||||
|
||||
int bltSrcX, bltSrcY;
|
||||
int bltDstX, bltDstY;
|
||||
int bltSizeX, bltSizeY;
|
||||
int bltSrcX;
|
||||
int bltSrcY;
|
||||
int bltDstX;
|
||||
int bltDstY;
|
||||
int bltSizeX;
|
||||
int bltSizeY;
|
||||
int bltRop[4];
|
||||
uint16_t bltColorFg, bltColorBg;
|
||||
uint16_t bltColorFg;
|
||||
uint16_t bltColorBg;
|
||||
|
||||
uint32_t bltCommand;
|
||||
|
||||
@@ -368,20 +489,28 @@ typedef struct voodoo_t {
|
||||
|
||||
struct
|
||||
{
|
||||
int dst_x, dst_y;
|
||||
int dst_x;
|
||||
int dst_y;
|
||||
int cur_x;
|
||||
int size_x, size_y;
|
||||
int x_dir, y_dir;
|
||||
int size_x;
|
||||
int size_y;
|
||||
int x_dir;
|
||||
int y_dir;
|
||||
int dst_stride;
|
||||
} blt;
|
||||
|
||||
struct
|
||||
{
|
||||
uint32_t bresError0, bresError1;
|
||||
uint32_t clip0Min, clip0Max;
|
||||
uint32_t clip1Min, clip1Max;
|
||||
uint32_t colorBack, colorFore;
|
||||
uint32_t command, commandExtra;
|
||||
uint32_t bresError0;
|
||||
uint32_t bresError1;
|
||||
uint32_t clip0Min;
|
||||
uint32_t clip0Max;
|
||||
uint32_t clip1Min;
|
||||
uint32_t clip1Max;
|
||||
uint32_t colorBack;
|
||||
uint32_t colorFore;
|
||||
uint32_t command;
|
||||
uint32_t commandExtra;
|
||||
uint32_t dstBaseAddr;
|
||||
uint32_t dstFormat;
|
||||
uint32_t dstSize;
|
||||
@@ -396,20 +525,31 @@ typedef struct voodoo_t {
|
||||
|
||||
uint32_t colorPattern[64];
|
||||
|
||||
int bres_error_0, bres_error_1;
|
||||
uint32_t colorPattern8[64], colorPattern16[64], colorPattern24[64];
|
||||
int cur_x, cur_y;
|
||||
int bres_error_0;
|
||||
int bres_error_1;
|
||||
uint32_t colorPattern8[64];
|
||||
uint32_t colorPattern16[64];
|
||||
uint32_t colorPattern24[64];
|
||||
int cur_x;
|
||||
int cur_y;
|
||||
uint32_t dstBaseAddr_tiled;
|
||||
uint32_t dstColorkeyMin, dstColorkeyMax;
|
||||
int dstSizeX, dstSizeY;
|
||||
int dstX, dstY;
|
||||
uint32_t dstColorkeyMin;
|
||||
uint32_t dstColorkeyMax;
|
||||
int dstSizeX;
|
||||
int dstSizeY;
|
||||
int dstX;
|
||||
int dstY;
|
||||
int dst_stride;
|
||||
int patoff_x, patoff_y;
|
||||
int patoff_x;
|
||||
int patoff_y;
|
||||
uint8_t rops[4];
|
||||
uint32_t srcBaseAddr_tiled;
|
||||
uint32_t srcColorkeyMin, srcColorkeyMax;
|
||||
int srcSizeX, srcSizeY;
|
||||
int srcX, srcY;
|
||||
uint32_t srcColorkeyMin;
|
||||
uint32_t srcColorkeyMax;
|
||||
int srcSizeX;
|
||||
int srcSizeY;
|
||||
int srcX;
|
||||
int srcY;
|
||||
int src_stride;
|
||||
int old_srcX;
|
||||
|
||||
@@ -418,39 +558,52 @@ typedef struct voodoo_t {
|
||||
uint32_t old_host_data;
|
||||
|
||||
/*Polyfill coordinates*/
|
||||
int lx[2], rx[2];
|
||||
int ly[2], ry[2];
|
||||
int lx[2];
|
||||
int rx[2];
|
||||
int ly[2];
|
||||
int ry[2];
|
||||
|
||||
/*Polyfill state*/
|
||||
int error[2];
|
||||
int dx[2], dy[2];
|
||||
int dx[2];
|
||||
int dy[2];
|
||||
int x_inc[2]; /*y_inc is always 1 for polyfill*/
|
||||
int lx_cur, rx_cur;
|
||||
int lx_cur;
|
||||
int rx_cur;
|
||||
|
||||
clip_t clip[2];
|
||||
|
||||
uint8_t host_data[16384];
|
||||
int host_data_count;
|
||||
int host_data_size_src, host_data_size_dest;
|
||||
int src_stride_src, src_stride_dest;
|
||||
int host_data_size_src;
|
||||
int host_data_size_dest;
|
||||
int src_stride_src;
|
||||
int src_stride_dest;
|
||||
|
||||
int src_bpp;
|
||||
|
||||
int line_pix_pos, line_bit_pos;
|
||||
int line_rep_cnt, line_bit_mask_size;
|
||||
int line_pix_pos;
|
||||
int line_bit_pos;
|
||||
int line_rep_cnt;
|
||||
int line_bit_mask_size;
|
||||
} banshee_blt;
|
||||
|
||||
struct
|
||||
{
|
||||
uint32_t vidOverlayStartCoords;
|
||||
uint32_t vidOverlayEndScreenCoords;
|
||||
uint32_t vidOverlayDudx, vidOverlayDudxOffsetSrcWidth;
|
||||
uint32_t vidOverlayDvdy, vidOverlayDvdyOffset;
|
||||
uint32_t vidOverlayDudx;
|
||||
uint32_t vidOverlayDudxOffsetSrcWidth;
|
||||
uint32_t vidOverlayDvdy;
|
||||
uint32_t vidOverlayDvdyOffset;
|
||||
// uint32_t vidDesktopOverlayStride;
|
||||
|
||||
int start_x, start_y;
|
||||
int end_x, end_y;
|
||||
int size_x, size_y;
|
||||
int start_x;
|
||||
int start_y;
|
||||
int end_x;
|
||||
int end_y;
|
||||
int size_x;
|
||||
int size_y;
|
||||
int overlay_bytes;
|
||||
|
||||
unsigned int src_y;
|
||||
@@ -462,17 +615,24 @@ typedef struct voodoo_t {
|
||||
uint32_t video_16to32[0x10000];
|
||||
|
||||
uint8_t dirty_line[2048];
|
||||
int dirty_line_low, dirty_line_high;
|
||||
int dirty_line_low;
|
||||
int dirty_line_high;
|
||||
|
||||
int fb_write_buffer, fb_draw_buffer;
|
||||
int fb_write_buffer;
|
||||
int fb_draw_buffer;
|
||||
int buffer_cutoff;
|
||||
|
||||
uint32_t tile_base, tile_stride;
|
||||
int tile_stride_shift, tile_x, tile_x_real;
|
||||
uint32_t tile_base;
|
||||
uint32_t tile_stride;
|
||||
int tile_stride_shift;
|
||||
int tile_x;
|
||||
int tile_x_real;
|
||||
|
||||
int y_origin_swap;
|
||||
|
||||
int read_time, write_time, burst_time;
|
||||
int read_time;
|
||||
int write_time;
|
||||
int burst_time;
|
||||
|
||||
pc_timer_t wake_timer;
|
||||
|
||||
@@ -501,9 +661,11 @@ typedef struct voodoo_t {
|
||||
|
||||
struct voodoo_set_t *set;
|
||||
|
||||
uint8_t fifo_thread_run, render_thread_run[4];
|
||||
uint8_t fifo_thread_run;
|
||||
uint8_t render_thread_run[4];
|
||||
|
||||
uint8_t *vram, *changedvram;
|
||||
uint8_t *vram;
|
||||
uint8_t *changedvram;
|
||||
|
||||
void *p;
|
||||
uint8_t monitor_index;
|
||||
@@ -517,7 +679,12 @@ typedef struct voodoo_set_t {
|
||||
int nr_cards;
|
||||
} voodoo_set_t;
|
||||
|
||||
extern rgba8_t rgb332[0x100], ai44[0x100], rgb565[0x10000], argb1555[0x10000], argb4444[0x10000], ai88[0x10000];
|
||||
extern rgba8_t rgb332[0x100];
|
||||
extern rgba8_t ai44[0x100];
|
||||
extern rgba8_t rgb565[0x10000];
|
||||
extern rgba8_t argb1555[0x10000];
|
||||
extern rgba8_t argb4444[0x10000];
|
||||
extern rgba8_t ai88[0x10000];
|
||||
|
||||
void voodoo_generate_vb_filters(voodoo_t *voodoo, int fcr, int fcg);
|
||||
|
||||
|
||||
@@ -22,7 +22,12 @@
|
||||
|
||||
typedef struct {
|
||||
int ena;
|
||||
int x, y, xoff, yoff, cur_xsize, cur_ysize;
|
||||
int x;
|
||||
int y;
|
||||
int xoff;
|
||||
int yoff;
|
||||
int cur_xsize;
|
||||
int cur_ysize;
|
||||
uint32_t addr;
|
||||
} xga_hwcursor_t;
|
||||
|
||||
|
||||
@@ -163,12 +163,12 @@ extern volatile int screenshots;
|
||||
#define efscrnsz_y (monitors[monitor_index_global].mon_efscrnsz_y)
|
||||
#define unscaled_size_x (monitors[monitor_index_global].mon_unscaled_size_x)
|
||||
#define unscaled_size_y (monitors[monitor_index_global].mon_unscaled_size_y)
|
||||
extern PALETTE cgapal,
|
||||
cgapal_mono[6];
|
||||
extern PALETTE cgapal;
|
||||
extern PALETTE cgapal_mono[6];
|
||||
// extern uint32_t pal_lookup[256];
|
||||
extern int video_fullscreen,
|
||||
video_fullscreen_scale,
|
||||
video_fullscreen_first;
|
||||
extern int video_fullscreen;
|
||||
extern int video_fullscreen_scale;
|
||||
extern int video_fullscreen_first;
|
||||
extern uint8_t fontdat[2048][8];
|
||||
extern uint8_t fontdatm[2048][16];
|
||||
extern uint8_t fontdatw[512][32];
|
||||
@@ -190,9 +190,9 @@ extern int video_grayscale;
|
||||
extern int video_graytype;
|
||||
|
||||
extern double cpuclock;
|
||||
extern int emu_fps,
|
||||
frames;
|
||||
extern int readflash;
|
||||
extern int emu_fps;
|
||||
extern int frames;
|
||||
extern int readflash;
|
||||
|
||||
/* Function handler pointers. */
|
||||
extern void (*video_recalctimings)(void);
|
||||
|
||||
Reference in New Issue
Block a user