diff options
author | Martin-Éric Racine <martin-eric.racine@iki.fi> | 2012-07-11 15:50:28 +0300 |
---|---|---|
committer | Martin-Éric Racine <martin-eric.racine@iki.fi> | 2012-07-11 15:50:28 +0300 |
commit | 1ed67d70ac9d3afd9b372c311aaf7b77e38b3e21 (patch) | |
tree | 134ec66d59b987c039a0690707d51fb15c99dd60 /src/cim | |
parent | b9afafec0a26eaec49e7f0ff08297c2bb795a9c2 (diff) |
Whitespace cleanup using ../modular/x-indent.sh
Diffstat (limited to 'src/cim')
-rw-r--r-- | src/cim/cim_defs.h | 35 | ||||
-rw-r--r-- | src/cim/cim_df.c | 198 | ||||
-rw-r--r-- | src/cim/cim_filter.c | 1024 | ||||
-rw-r--r-- | src/cim/cim_gp.c | 625 | ||||
-rw-r--r-- | src/cim/cim_init.c | 17 | ||||
-rw-r--r-- | src/cim/cim_modes.c | 3310 | ||||
-rw-r--r-- | src/cim/cim_msr.c | 31 | ||||
-rw-r--r-- | src/cim/cim_parm.h | 96 | ||||
-rw-r--r-- | src/cim/cim_regs.h | 3 | ||||
-rw-r--r-- | src/cim/cim_rtns.h | 202 | ||||
-rw-r--r-- | src/cim/cim_vg.c | 364 | ||||
-rw-r--r-- | src/cim/cim_vip.c | 240 | ||||
-rw-r--r-- | src/cim/cim_vop.c | 58 |
13 files changed, 3122 insertions, 3081 deletions
diff --git a/src/cim/cim_defs.h b/src/cim/cim_defs.h index eea2f49..9084a07 100644 --- a/src/cim/cim_defs.h +++ b/src/cim/cim_defs.h @@ -284,7 +284,6 @@ #elif CIMARRON_MSR_HOOKS - #define MSR_READ(msr_reg, device_add, data64_ptr) \ { \ unsigned long addr, val1, val2; \ @@ -311,7 +310,7 @@ } #endif -#endif /* #ifdef CIMARRON_INCLUDE_MSR_MACROS */ +#endif /* #ifdef CIMARRON_INCLUDE_MSR_MACROS */ /*-----------------------------------------------------------------*/ /* STRING MACROS */ @@ -518,7 +517,7 @@ #endif -#endif /* #ifdef CIMARRON_INCLUDE_STRING_MACROS */ +#endif /* #ifdef CIMARRON_INCLUDE_STRING_MACROS */ /*----------------------------------------------------------------- * WRITE_COMMAND_STRING8 @@ -585,14 +584,11 @@ void cim_outd(unsigned short port, unsigned long data) { _asm { - pushf mov eax, data mov dx, port out dx, eax popf} -} - +pushf mov eax, data mov dx, port out dx, eax popf}} /*------------------------------------------- * IND * Reads one DWORD from a single I/O address. *-------------------------------------------*/ - #define IND(port) cim_ind(port) unsigned long cim_ind(unsigned short port) @@ -600,8 +596,7 @@ cim_ind(unsigned short port) unsigned long data; _asm { - pushf mov dx, port in eax, dx mov data, eax popf} - return data; + pushf mov dx, port in eax, dx mov data, eax popf} return data; } /*------------------------------------------- @@ -614,14 +609,11 @@ void cim_outw(unsigned short port, unsigned short data) { _asm { - pushf mov ax, data mov dx, port out dx, ax popf} -} - +pushf mov ax, data mov dx, port out dx, ax popf}} /*------------------------------------------- * INW * Reads one WORD from a single I/O address. *-------------------------------------------*/ - #define INW(port) cim_inw(port) unsigned short cim_inw(unsigned short port) @@ -629,8 +621,7 @@ cim_inw(unsigned short port) unsigned short data; _asm { - pushf mov dx, port in ax, dx mov data, ax popf} - return data; + pushf mov dx, port in ax, dx mov data, ax popf} return data; } /*------------------------------------------- @@ -643,14 +634,11 @@ void cim_outb(unsigned short port, unsigned char data) { _asm { - pushf mov al, data mov dx, port out dx, al popf} -} - +pushf mov al, data mov dx, port out dx, al popf}} /*------------------------------------------- * INB * Reads one BYTE from a single I/O address. *-------------------------------------------*/ - #define INB(port) cim_inb(port) unsigned char cim_inb(unsigned short port) @@ -658,8 +646,7 @@ cim_inb(unsigned short port) unsigned char data; _asm { - pushf mov dx, port in al, dx mov data, al popf} - return data; + pushf mov dx, port in al, dx mov data, al popf} return data; } #elif CIMARRON_IO_ABSTRACTED_ASM @@ -753,9 +740,9 @@ cim_outb(unsigned short port, unsigned char data) #endif -#endif /* CIMARRON_INCLUDE_IO_MACROS */ +#endif /* CIMARRON_INCLUDE_IO_MACROS */ -extern void (*cim_rdmsr)(unsigned long, unsigned long *, unsigned long *); -extern void (*cim_wrmsr)(unsigned long, unsigned long, unsigned long); +extern void (*cim_rdmsr) (unsigned long, unsigned long *, unsigned long *); +extern void (*cim_wrmsr) (unsigned long, unsigned long, unsigned long); #endif diff --git a/src/cim/cim_df.c b/src/cim/cim_df.c index f81b740..abf1745 100644 --- a/src/cim/cim_df.c +++ b/src/cim/cim_df.c @@ -49,7 +49,7 @@ df_set_crt_enable(int crt_output) case DF_CRT_DISABLE: config &= ~(DF_DCFG_DIS_EN | DF_DCFG_HSYNC_EN | - DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN); + DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN); misc |= DF_DAC_POWER_DOWN; break; @@ -58,7 +58,7 @@ df_set_crt_enable(int crt_output) case DF_CRT_ENABLE: config |= (DF_DCFG_DIS_EN | DF_DCFG_HSYNC_EN | - DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN); + DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN); misc &= ~(DF_DAC_POWER_DOWN | DF_ANALOG_POWER_DOWN); break; @@ -67,7 +67,7 @@ df_set_crt_enable(int crt_output) case DF_CRT_STANDBY: config = (config & ~(DF_DCFG_DIS_EN | DF_DCFG_HSYNC_EN | - DF_DCFG_DAC_BL_EN)) | DF_DCFG_VSYNC_EN; + DF_DCFG_DAC_BL_EN)) | DF_DCFG_VSYNC_EN; misc |= DF_DAC_POWER_DOWN; break; @@ -76,7 +76,7 @@ df_set_crt_enable(int crt_output) case DF_CRT_SUSPEND: config = (config & ~(DF_DCFG_DIS_EN | DF_DCFG_VSYNC_EN | - DF_DCFG_DAC_BL_EN)) | DF_DCFG_HSYNC_EN; + DF_DCFG_DAC_BL_EN)) | DF_DCFG_HSYNC_EN; misc |= DF_DAC_POWER_DOWN; break; @@ -121,7 +121,7 @@ df_set_panel_enable(int enable) int df_configure_video_source(DF_VIDEO_SOURCE_PARAMS * video_source_odd, - DF_VIDEO_SOURCE_PARAMS * video_source_even) + DF_VIDEO_SOURCE_PARAMS * video_source_even) { unsigned long pitch, ctrl, vcfg; unsigned long lock, vg_line, gcfg; @@ -153,15 +153,15 @@ df_configure_video_source(DF_VIDEO_SOURCE_PARAMS * video_source_odd, /* PARAMETER - VIDEO PITCH */ pitch = - (video_source_odd->y_pitch >> 3) | ((video_source_odd-> - uv_pitch >> 3) << 16); + (video_source_odd-> + y_pitch >> 3) | ((video_source_odd->uv_pitch >> 3) << 16); /* PARAMETER - VIDEO FORMAT */ gcfg &= ~DC3_GCFG_YUV_420; vcfg &= ~(DF_VCFG_VID_INP_FORMAT | DF_VCFG_4_2_0_MODE); ctrl &= ~(DF_VIDEO_INPUT_IS_RGB | DF_CSC_VIDEO_YUV_TO_RGB | DF_HD_VIDEO | - DF_YUV_CSC_EN); + DF_YUV_CSC_EN); /* SELECT PIXEL ORDERING */ @@ -225,7 +225,7 @@ df_configure_video_source(DF_VIDEO_SOURCE_PARAMS * video_source_odd, /* appropriate pitch and clipping the video window. */ vcfg &= ~(DF_VCFG_LINE_SIZE_LOWER_MASK | DF_VCFG_LINE_SIZE_BIT8 | - DF_VCFG_LINE_SIZE_BIT9); + DF_VCFG_LINE_SIZE_BIT9); size = ((video_source_odd->width >> 1) + 7) & 0xFFF8; @@ -286,7 +286,7 @@ df_configure_video_source(DF_VIDEO_SOURCE_PARAMS * video_source_odd, int df_set_video_offsets(int even, unsigned long y_offset, - unsigned long u_offset, unsigned long v_offset) + unsigned long u_offset, unsigned long v_offset) { unsigned long lock = READ_REG32(DC3_UNLOCK); @@ -296,7 +296,8 @@ df_set_video_offsets(int even, unsigned long y_offset, WRITE_REG32(DC3_VID_EVEN_Y_ST_OFFSET, y_offset); WRITE_REG32(DC3_VID_EVEN_U_ST_OFFSET, u_offset); WRITE_REG32(DC3_VID_EVEN_V_ST_OFFSET, v_offset); - } else { + } + else { WRITE_REG32(DC3_VID_Y_ST_OFFSET, y_offset); WRITE_REG32(DC3_VID_U_ST_OFFSET, u_offset); WRITE_REG32(DC3_VID_V_ST_OFFSET, v_offset); @@ -317,7 +318,8 @@ df_set_video_offsets(int even, unsigned long y_offset, int df_set_video_scale(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, unsigned long flags) + unsigned long dst_width, unsigned long dst_height, + unsigned long flags) { unsigned long temp, misc; unsigned long scale, gfxscale; @@ -377,14 +379,14 @@ df_set_video_scale(unsigned long src_width, unsigned long src_height, scale = READ_VID32(DF_VIDEO_SCALER); vcfg = READ_VID32(DF_VIDEO_CONFIG); vcfg &= ~(DF_VCFG_LINE_SIZE_LOWER_MASK | DF_VCFG_LINE_SIZE_BIT8 | - DF_VCFG_LINE_SIZE_BIT9); + DF_VCFG_LINE_SIZE_BIT9); if (dst_width < (src_width >> 2)) { src_width >>= 1; WRITE_VID32(DF_VIDEO_SCALER, scale | DF_SCALE_DOUBLE_H_DOWNSCALE); - } else { - WRITE_VID32(DF_VIDEO_SCALER, - scale & ~DF_SCALE_DOUBLE_H_DOWNSCALE); + } + else { + WRITE_VID32(DF_VIDEO_SCALER, scale & ~DF_SCALE_DOUBLE_H_DOWNSCALE); } /* PROGRAM A NEW LINE SIZE */ @@ -416,9 +418,9 @@ df_set_video_scale(unsigned long src_width, unsigned long src_height, WRITE_REG32(DC3_VID_DS_DELTA, downscale); WRITE_VID32(DF_VIDEO_YSCALE, 0x20000); - } else { - WRITE_VID32(DF_VIDEO_YSCALE, - ((0x10000 * src_height) / dst_height)); + } + else { + WRITE_VID32(DF_VIDEO_YSCALE, ((0x10000 * src_height) / dst_height)); } WRITE_REG32(DC3_GENERAL_CFG, gcfg); WRITE_REG32(DC3_UNLOCK, unlock); @@ -431,7 +433,8 @@ df_set_video_scale(unsigned long src_width, unsigned long src_height, if ((READ_VID32(DF_VIDEO_XSCALE) == 0x10000) && (READ_VID32(DF_VIDEO_YSCALE) == 0x10000)) { WRITE_VID32(DF_VIDEO_CONFIG, (temp | DF_VCFG_SC_BYP)); - } else + } + else WRITE_VID32(DF_VIDEO_CONFIG, (temp & ~DF_VCFG_SC_BYP)); return CIM_STATUS_OK; @@ -487,7 +490,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) border_y = vtotal - vblankend; hactive = hblankstart + htotal - hblankend; vactive = vblankstart + vtotal - vblankend; - } else { + } + else { border_x = border_y = 0; } @@ -539,7 +543,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) if (video_window->flags & DF_POSFLAG_INCLUDEBORDER) { border_y_even = vtotal_even - vblankend_even; vactive_even = vblankstart_even + vtotal_even - vblankend_even; - } else + } + else border_y_even = 0; /* @@ -596,7 +601,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) y <<= 1; height += height_even; adjust = border_y + border_y_even; - } else { + } + else { adjust = border_y; if (height_even > height) height = height_even; @@ -605,7 +611,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) if (y > adjust) { y -= adjust; adjust = 0; - } else { + } + else { adjust -= y; if (height > adjust) height -= adjust; @@ -614,7 +621,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) } } - } else { + } + else { y = y_copy; height = height_copy; @@ -671,7 +679,8 @@ df_set_video_position(DF_VIDEO_POSITION * video_window) initread = (initread * xscale) / 0x10000; if (xscale) dst_clip = ((initread & 3) * 0x10000) / xscale; - } else + } + else dst_clip = video_window->dst_clip; /* @@ -745,7 +754,8 @@ df_set_video_filter_coefficients(long taps[][4], int phase256) if (phase256) { WRITE_VID32(DF_VIDEO_SCALER, (scale & ~DF_SCALE_128_PHASES)); defaults = CimarronVideoFilter256; - } else { + } + else { WRITE_VID32(DF_VIDEO_SCALER, (scale | DF_SCALE_128_PHASES)); defaults = CimarronVideoFilter128; } @@ -756,7 +766,8 @@ df_set_video_filter_coefficients(long taps[][4], int phase256) if (!taps) { coeff0 = defaults[i][0]; coeff1 = defaults[i][1]; - } else { + } + else { if (taps[i][1] < 0) coeff0 = -taps[i][1] | 0x8000; else @@ -842,13 +853,15 @@ df_set_video_enable(int enable, unsigned long flags) vg_ckey = READ_REG32(DC3_COLOR_KEY); WRITE_REG32(DC3_COLOR_KEY, (vg_ckey & ~DC3_CLR_KEY_ENABLE)); - } else if (!(READ_VID32(DF_DISPLAY_CONFIG) & DF_DCFG_VG_CK)) { + } + else if (!(READ_VID32(DF_DISPLAY_CONFIG) & DF_DCFG_VG_CK)) { /* OTHERWISE RE-ENABLE COLOR KEYING */ vg_ckey = READ_REG32(DC3_COLOR_KEY); WRITE_REG32(DC3_COLOR_KEY, (vg_ckey | DC3_CLR_KEY_ENABLE)); } - } else { + } + else { WRITE_VID32(DF_VIDEO_CONFIG, (vcfg & ~DF_VCFG_VID_EN)); WRITE_REG32(DC3_GENERAL_CFG, (gcfg & ~DC3_GCFG_VIDE)); @@ -898,7 +911,8 @@ df_set_video_color_key(unsigned long key, unsigned long mask, int graphics) WRITE_VID32(DF_DISPLAY_CONFIG, df_dcfg); WRITE_REG32(DC3_COLOR_KEY, vg_ckey); WRITE_REG32(DC3_COLOR_MASK, (mask & 0xFFFFFF)); - } else { + } + else { /* CHROMA KEY - USE DF HARDWARE */ df_dcfg |= DF_DCFG_VG_CK; @@ -1016,8 +1030,9 @@ df_configure_video_cursor_color_key(DF_VIDEO_CURSOR_PARAMS * cursor_color_key) return CIM_STATUS_INVALIDPARAMS; key = READ_VID32(DF_CURSOR_COLOR_KEY) & DF_CURSOR_COLOR_KEY_ENABLE; - key = key | (cursor_color_key->key & 0xFFFFFF) | (cursor_color_key-> - select_color2 << 24); + key = + key | (cursor_color_key-> + key & 0xFFFFFF) | (cursor_color_key->select_color2 << 24); WRITE_VID32(DF_CURSOR_COLOR_KEY, key); WRITE_VID32(DF_CURSOR_COLOR_MASK, (cursor_color_key->mask & 0xFFFFFF)); @@ -1143,8 +1158,7 @@ df_configure_alpha_window(int window, DF_ALPHA_REGION_PARAMS * alpha_data) if (yend > (vactive + vadjust)) yend = vactive + vadjust; - WRITE_VID32((DF_ALPHA_YPOS_1 + (window << 5)), - (ystart | (yend << 16))); + WRITE_VID32((DF_ALPHA_YPOS_1 + (window << 5)), (ystart | (yend << 16))); /* SET Y POSITION FOR EVEN FIELD */ @@ -1158,8 +1172,9 @@ df_configure_alpha_window(int window, DF_ALPHA_REGION_PARAMS * alpha_data) yend = vactive_even + vadjust; WRITE_VID32((DF_VID_ALPHA_Y_EVEN_1 + (window << 3)), - (ystart | (yend << 16))); - } else { + (ystart | (yend << 16))); + } + else { y = y_copy; height = height_copy; vadjust = vtotal - vsyncend + 1; @@ -1170,8 +1185,7 @@ df_configure_alpha_window(int window, DF_ALPHA_REGION_PARAMS * alpha_data) if (yend > (vactive + vadjust)) yend = vactive + vadjust; - WRITE_VID32((DF_ALPHA_YPOS_1 + (window << 5)), - (ystart | (yend << 16))); + WRITE_VID32((DF_ALPHA_YPOS_1 + (window << 5)), (ystart | (yend << 16))); } /* SET ALPHA X POSITION */ @@ -1200,7 +1214,7 @@ df_configure_alpha_window(int window, DF_ALPHA_REGION_PARAMS * alpha_data) alpha_ctl = READ_VID32(DF_ALPHA_CONTROL_1 + (window << 5)) & DF_ACTRL_WIN_ENABLE; alpha_ctl |= (alpha_data->alpha_value & 0xFF) | DF_ACTRL_LOAD_ALPHA | - (((unsigned long)alpha_data->delta & 0xFF) << 8); + (((unsigned long) alpha_data->delta & 0xFF) << 8); if (alpha_data->flags & DF_ALPHAFLAG_PERPIXELENABLED) alpha_ctl |= DF_ACTRL_PERPIXEL_EN; @@ -1306,7 +1320,7 @@ df_set_output_color_space(int color_space) alpha_ctl = READ_VID32(DF_VID_ALPHA_CONTROL); alpha_ctl &= ~(DF_CSC_GRAPHICS_RGB_TO_YUV | DF_CSC_VIDEO_YUV_TO_RGB | - DF_HD_GRAPHICS | DF_YUV_CSC_EN | DF_ALPHA_DRGB); + DF_HD_GRAPHICS | DF_YUV_CSC_EN | DF_ALPHA_DRGB); /* OUTPUT IS RGB */ /* Enable YUV->RGB CSC if necessary and enable alpha output if */ @@ -1333,7 +1347,8 @@ df_set_output_color_space(int color_space) if (color_space == DF_OUTPUT_HDTV) alpha_ctl |= DF_HD_GRAPHICS; - } else + } + else return CIM_STATUS_INVALIDPARAMS; WRITE_VID32(DF_VID_ALPHA_CONTROL, alpha_ctl); @@ -1376,7 +1391,8 @@ df_set_output_path(int format) panel_pm &= ~DF_PM_PANEL_ON; panel_tim2 |= DF_PMTIM2_TFT_PASSHTHROUGH; output = DF_OUTPUT_PANEL | DF_SIMULTANEOUS_CRT_FP; - } else if (format == DF_DISPLAY_FP || format == DF_DISPLAY_CRT_FP) { + } + else if (format == DF_DISPLAY_FP || format == DF_DISPLAY_CRT_FP) { panel_pm |= DF_PM_PANEL_ON; panel_tim2 &= ~DF_PMTIM2_TFT_PASSHTHROUGH; @@ -1384,7 +1400,8 @@ df_set_output_path(int format) output = DF_OUTPUT_PANEL; else if (format == DF_DISPLAY_CRT_FP) output = DF_OUTPUT_PANEL | DF_SIMULTANEOUS_CRT_FP; - } else { + } + else { switch (format) { case DF_DISPLAY_VOP: output = DF_OUTPUT_VOP; @@ -1479,26 +1496,22 @@ df_save_state(DF_SAVE_RESTORE * df_state) /* READ FILTER COEFFICIENTS */ for (i = 0; i < 512; i++) - df_state->coefficients[i] = - READ_VID32(DF_COEFFICIENT_BASE + (i << 2)); + df_state->coefficients[i] = READ_VID32(DF_COEFFICIENT_BASE + (i << 2)); /* READ ALL DF MSRS */ - msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CAP, - &(df_state->msr_cap)); + msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CAP, &(df_state->msr_cap)); msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CONFIG, - &(df_state->msr_config)); - msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_SMI, - &(df_state->msr_smi)); + &(df_state->msr_config)); + msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_SMI, &(df_state->msr_smi)); msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_ERROR, - &(df_state->msr_error)); + &(df_state->msr_error)); msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_PM, &(df_state->msr_pm)); msr_read64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_DIAG, - &(df_state->msr_diag)); + &(df_state->msr_diag)); msr_read64(MSR_DEVICE_GEODELX_DF, DF_MBD_MSR_DIAG_DF, - &(df_state->msr_df_diag)); - msr_read64(MSR_DEVICE_GEODELX_DF, DF_MSR_PAD_SEL, - &(df_state->msr_pad_sel)); + &(df_state->msr_df_diag)); + msr_read64(MSR_DEVICE_GEODELX_DF, DF_MSR_PAD_SEL, &(df_state->msr_pad_sel)); return CIM_STATUS_OK; } @@ -1521,21 +1534,19 @@ df_restore_state(DF_SAVE_RESTORE * df_state) /* RESTORE DF MSRS */ - msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CAP, - &(df_state->msr_cap)); + msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CAP, &(df_state->msr_cap)); msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CONFIG, - &(df_state->msr_config)); - msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_SMI, - &(df_state->msr_smi)); + &(df_state->msr_config)); + msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_SMI, &(df_state->msr_smi)); msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_ERROR, - &(df_state->msr_error)); + &(df_state->msr_error)); msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_PM, &(df_state->msr_pm)); msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_DIAG, - &(df_state->msr_diag)); + &(df_state->msr_diag)); msr_write64(MSR_DEVICE_GEODELX_DF, DF_MBD_MSR_DIAG_DF, - &(df_state->msr_df_diag)); + &(df_state->msr_df_diag)); msr_write64(MSR_DEVICE_GEODELX_DF, DF_MSR_PAD_SEL, - &(df_state->msr_pad_sel)); + &(df_state->msr_pad_sel)); /* RESTORE ALL DF REGISTERS */ @@ -1584,8 +1595,7 @@ df_restore_state(DF_SAVE_RESTORE * df_state) /* RESTORE FILTER COEFFICIENTS */ for (i = 0; i < 512; i++) - WRITE_VID32(DF_COEFFICIENT_BASE + (i << 2), - df_state->coefficients[i]); + WRITE_VID32(DF_COEFFICIENT_BASE + (i << 2), df_state->coefficients[i]); /* RESTORE DCFG AND VCFG */ @@ -1655,9 +1665,10 @@ df_read_composite_crc(int crc_source) do { line = READ_REG32(DC3_LINE_CNT_STATUS); } while ((line & DC3_LNCNT_EVEN_FIELD) != field || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 10 || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 15); - } else { + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 10 || + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 15); + } + else { /* NON-INTERLACED - EVEN FIELD CRCS ARE INVALID */ if (crc_source & DF_CRC_SOURCE_EVEN) @@ -1670,7 +1681,7 @@ df_read_composite_crc(int crc_source) /* WAIT FOR THE CRC TO BE COMPLETED */ - while (!(READ_VID32(DF_VID_CRC) & 4)) ; + while (!(READ_VID32(DF_VID_CRC) & 4)); crc = READ_VID32(DF_VID_CRC32); @@ -1686,7 +1697,8 @@ df_read_composite_crc(int crc_source) unsigned long df_read_composite_window_crc(unsigned long x, unsigned long y, - unsigned long width, unsigned long height, int source) + unsigned long width, unsigned long height, + int source) { Q_WORD msr_value; unsigned long interlaced; @@ -1709,7 +1721,8 @@ df_read_composite_window_crc(unsigned long x, unsigned long y, vsyncstart = (READ_REG32(DC3_V_SYNC_EVEN) & 0xFFF) + 1; vactive = (READ_REG32(DC3_V_ACTIVE_EVEN) & 0xFFF) + 1; vblankstart = (READ_REG32(DC3_V_BLANK_EVEN) & 0xFFF) + 1; - } else { + } + else { vsyncend = ((READ_REG32(DC3_V_SYNC_TIMING) >> 16) & 0xFFF) + 1; vtotal = ((READ_REG32(DC3_V_ACTIVE_TIMING) >> 16) & 0xFFF) + 1; vsyncstart = (READ_REG32(DC3_V_SYNC_TIMING) & 0xFFF) + 1; @@ -1942,9 +1955,10 @@ df_read_composite_window_crc(unsigned long x, unsigned long y, do { line = READ_REG32(DC3_LINE_CNT_STATUS); } while ((line & DC3_LNCNT_EVEN_FIELD) != field || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 1 || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 5); - } else { + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 1 || + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 5); + } + else { /* NON-INTERLACED - EVEN FIELD CRCS ARE INVALID */ if (source & DF_CRC_SOURCE_EVEN) @@ -1970,11 +1984,11 @@ df_read_composite_window_crc(unsigned long x, unsigned long y, /* DELAY TWO FRAMES */ - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)) ; - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)) ; - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)); + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)); + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); /* VERIFY THAT XSTATE = 11 */ @@ -2033,7 +2047,7 @@ df_read_panel_crc(void) /* WAIT FOR THE CRC TO BE COMPLETED */ - while (!(READ_VID32(DF_PANEL_CRC) & 4)) ; + while (!(READ_VID32(DF_PANEL_CRC) & 4)); return READ_VID32(DF_PANEL_CRC32); } @@ -2076,7 +2090,7 @@ df_get_video_enable(int *enable, unsigned long *flags) int df_get_video_source_configuration(DF_VIDEO_SOURCE_PARAMS * video_source_odd, - DF_VIDEO_SOURCE_PARAMS * video_source_even) + DF_VIDEO_SOURCE_PARAMS * video_source_even) { unsigned long format, temp; unsigned long size; @@ -2171,7 +2185,8 @@ df_get_video_position(DF_VIDEO_POSITION * video_window) if (READ_REG32(DC3_IRQ_FILT_CTL) & DC3_IRQFILT_INTL_EN) { vsyncend = ((READ_REG32(DC3_V_SYNC_EVEN) >> 16) & 0xFFF) + 1; vtotal = ((READ_REG32(DC3_V_ACTIVE_EVEN) >> 16) & 0xFFF) + 1; - } else { + } + else { vsyncend = ((READ_REG32(DC3_V_SYNC_TIMING) >> 16) & 0xFFF) + 1; vtotal = ((READ_REG32(DC3_V_ACTIVE_TIMING) >> 16) & 0xFFF) + 1; } @@ -2326,7 +2341,8 @@ df_get_video_color_key(unsigned long *key, unsigned long *mask, int *graphics) *graphics = 0; *key = READ_VID32(DF_VIDEO_COLOR_KEY) & 0xFFFFFF; *mask = READ_VID32(DF_VIDEO_COLOR_MASK) & 0xFFFFFF; - } else { + } + else { *graphics = 1; *key = READ_REG32(DC3_COLOR_KEY) & 0xFFFFFF; @@ -2423,7 +2439,7 @@ df_get_video_cursor_color_key_enable(void) int df_get_alpha_window_configuration(int window, - DF_ALPHA_REGION_PARAMS * alpha_data) + DF_ALPHA_REGION_PARAMS * alpha_data) { unsigned long pos, color, alpha_ctl; unsigned long hsyncend, htotal; @@ -2442,7 +2458,8 @@ df_get_alpha_window_configuration(int window, if (READ_REG32(DC3_IRQ_FILT_CTL) & DC3_IRQFILT_INTL_EN) { vtotal = ((READ_REG32(DC3_V_ACTIVE_EVEN) >> 16) & 0xFFF) + 1; vsyncend = ((READ_REG32(DC3_V_SYNC_EVEN) >> 16) & 0xFFF) + 1; - } else { + } + else { vtotal = ((READ_REG32(DC3_V_ACTIVE_TIMING) >> 16) & 0xFFF) + 1; vsyncend = ((READ_REG32(DC3_V_SYNC_TIMING) >> 16) & 0xFFF) + 1; } @@ -2510,8 +2527,8 @@ df_get_alpha_window_configuration(int window, if (alpha_ctl & DF_ACTRL_PERPIXEL_EN) alpha_data->flags |= DF_ALPHAFLAG_PERPIXELENABLED; - delta = (char)((alpha_ctl >> 8) & 0xFF); - alpha_data->delta = (long)delta; + delta = (char) ((alpha_ctl >> 8) & 0xFF); + alpha_data->delta = (long) delta; return CIM_STATUS_OK; } @@ -2579,7 +2596,8 @@ df_get_output_color_space(int *color_space) *color_space = DF_OUTPUT_ARGB; else *color_space = DF_OUTPUT_RGB; - } else { + } + else { *color_space = DF_OUTPUT_SDTV; if (alpha_ctl & DF_HD_GRAPHICS) diff --git a/src/cim/cim_filter.c b/src/cim/cim_filter.c index 87c1bf6..68e9ae5 100644 --- a/src/cim/cim_filter.c +++ b/src/cim/cim_filter.c @@ -29,519 +29,519 @@ */ long CimarronVideoFilter256[][2] = { - {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ - {0x10008008, 0x00000008}, /* -8, 4096, 8, 0 */ - {0x10008010, 0x80010011}, /* -16, 4096, 17, -1 */ - {0x10008019, 0x8001001A}, /* -25, 4096, 26, -1 */ - {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ - {0x0FFF8029, 0x8003002D}, /* -41, 4095, 45, -3 */ - {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ - {0x0FFC8038, 0x80040040}, /* -56, 4092, 64, -4 */ - {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ - {0x0FF88047, 0x80050054}, /* -71, 4088, 84, -5 */ - {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ - {0x0FF48055, 0x80070068}, /* -85, 4084, 104, -7 */ - {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ - {0x0FEE8063, 0x8008007D}, /* -99, 4078, 125, -8 */ - {0x0FEA8069, 0x80090088}, /* -105, 4074, 136, -9 */ - {0x0FE78070, 0x800A0093}, /* -112, 4071, 147, -10 */ - {0x0FE28076, 0x800A009E}, /* -118, 4066, 158, -10 */ - {0x0FDD807C, 0x800B00AA}, /* -124, 4061, 170, -11 */ - {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ - {0x0FD48088, 0x800D00C1}, /* -136, 4052, 193, -13 */ - {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ - {0x0FC88093, 0x800E00D9}, /* -147, 4040, 217, -14 */ - {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ - {0x0FBD809E, 0x801000F1}, /* -158, 4029, 241, -16 */ - {0x0FB680A3, 0x801000FD}, /* -163, 4022, 253, -16 */ - {0x0FAF80A8, 0x8011010A}, /* -168, 4015, 266, -17 */ - {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ - {0x0FA180B2, 0x80130124}, /* -178, 4001, 292, -19 */ - {0x0F9980B6, 0x80140131}, /* -182, 3993, 305, -20 */ - {0x0F9280BB, 0x8015013E}, /* -187, 3986, 318, -21 */ - {0x0F8880BF, 0x8015014C}, /* -191, 3976, 332, -21 */ - {0x0F8080C3, 0x80160159}, /* -195, 3968, 345, -22 */ - {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ - {0x0F6E80CB, 0x80180175}, /* -203, 3950, 373, -24 */ - {0x0F6580CF, 0x80190183}, /* -207, 3941, 387, -25 */ - {0x0F5C80D3, 0x801A0191}, /* -211, 3932, 401, -26 */ - {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ - {0x0F4880DA, 0x801C01AE}, /* -218, 3912, 430, -28 */ - {0x0F3D80DD, 0x801D01BD}, /* -221, 3901, 445, -29 */ - {0x0F3280E0, 0x801E01CC}, /* -224, 3890, 460, -30 */ - {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ - {0x0F1C80E6, 0x802001EA}, /* -230, 3868, 490, -32 */ - {0x0F1180E9, 0x802101F9}, /* -233, 3857, 505, -33 */ - {0x0F0480EB, 0x80210208}, /* -235, 3844, 520, -33 */ - {0x0EFA80EF, 0x80230218}, /* -239, 3834, 536, -35 */ - {0x0EEC80F0, 0x80230227}, /* -240, 3820, 551, -35 */ - {0x0EE080F3, 0x80240237}, /* -243, 3808, 567, -36 */ - {0x0ED380F5, 0x80250247}, /* -245, 3795, 583, -37 */ - {0x0EC780F7, 0x80270257}, /* -247, 3783, 599, -39 */ - {0x0EB980F9, 0x80280268}, /* -249, 3769, 616, -40 */ - {0x0EAC80FB, 0x80290278}, /* -251, 3756, 632, -41 */ - {0x0E9E80FD, 0x802A0289}, /* -253, 3742, 649, -42 */ - {0x0E9080FE, 0x802B0299}, /* -254, 3728, 665, -43 */ - {0x0E838100, 0x802D02AA}, /* -256, 3715, 682, -45 */ - {0x0E758102, 0x802E02BB}, /* -258, 3701, 699, -46 */ - {0x0E668103, 0x802F02CC}, /* -259, 3686, 716, -47 */ - {0x0E568104, 0x803002DE}, /* -260, 3670, 734, -48 */ - {0x0E498106, 0x803202EF}, /* -262, 3657, 751, -50 */ - {0x0E398107, 0x80330301}, /* -263, 3641, 769, -51 */ - {0x0E298108, 0x80340313}, /* -264, 3625, 787, -52 */ - {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ - {0x0E0B810A, 0x80370336}, /* -266, 3595, 822, -55 */ - {0x0DFA810A, 0x80380348}, /* -266, 3578, 840, -56 */ - {0x0DEA810B, 0x803A035B}, /* -267, 3562, 859, -58 */ - {0x0DDA810C, 0x803B036D}, /* -268, 3546, 877, -59 */ - {0x0DCA810C, 0x803D037F}, /* -268, 3530, 895, -61 */ - {0x0DB7810B, 0x803E0392}, /* -267, 3511, 914, -62 */ - {0x0DA7810C, 0x804003A5}, /* -268, 3495, 933, -64 */ - {0x0D95810C, 0x804103B8}, /* -268, 3477, 952, -65 */ - {0x0D85810C, 0x804303CA}, /* -268, 3461, 970, -67 */ - {0x0D73810C, 0x804403DD}, /* -268, 3443, 989, -68 */ - {0x0D61810C, 0x804603F1}, /* -268, 3425, 1009, -70 */ - {0x0D50810C, 0x80480404}, /* -268, 3408, 1028, -72 */ - {0x0D3E810C, 0x80490417}, /* -268, 3390, 1047, -73 */ - {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ - {0x0D1B810C, 0x804D043E}, /* -268, 3355, 1086, -77 */ - {0x0D07810B, 0x804E0452}, /* -267, 3335, 1106, -78 */ - {0x0CF5810B, 0x80500466}, /* -267, 3317, 1126, -80 */ - {0x0CE2810A, 0x8052047A}, /* -266, 3298, 1146, -82 */ - {0x0CCF810A, 0x8053048E}, /* -266, 3279, 1166, -83 */ - {0x0CBC8109, 0x805504A2}, /* -265, 3260, 1186, -85 */ - {0x0CA98108, 0x805704B6}, /* -264, 3241, 1206, -87 */ - {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ - {0x0C838107, 0x805B04DF}, /* -263, 3203, 1247, -91 */ - {0x0C6F8106, 0x805C04F3}, /* -262, 3183, 1267, -92 */ - {0x0C5B8105, 0x805E0508}, /* -261, 3163, 1288, -94 */ - {0x0C478104, 0x8060051D}, /* -260, 3143, 1309, -96 */ - {0x0C348103, 0x80620531}, /* -259, 3124, 1329, -98 */ - {0x0C1F8102, 0x80640547}, /* -258, 3103, 1351, -100 */ - {0x0C0C8101, 0x8066055B}, /* -257, 3084, 1371, -102 */ - {0x0BF88100, 0x80680570}, /* -256, 3064, 1392, -104 */ - {0x0BE380FE, 0x806A0585}, /* -254, 3043, 1413, -106 */ - {0x0BCF80FD, 0x806C059A}, /* -253, 3023, 1434, -108 */ - {0x0BBA80FC, 0x806E05B0}, /* -252, 3002, 1456, -110 */ - {0x0BA480F9, 0x807005C5}, /* -249, 2980, 1477, -112 */ - {0x0B8F80F8, 0x807205DB}, /* -248, 2959, 1499, -114 */ - {0x0B7A80F6, 0x807405F0}, /* -246, 2938, 1520, -116 */ - {0x0B6580F5, 0x80760606}, /* -245, 2917, 1542, -118 */ - {0x0B4F80F3, 0x8077061B}, /* -243, 2895, 1563, -119 */ - {0x0B3A80F2, 0x80790631}, /* -242, 2874, 1585, -121 */ - {0x0B2480F0, 0x807B0647}, /* -240, 2852, 1607, -123 */ - {0x0B0F80EE, 0x807D065C}, /* -238, 2831, 1628, -125 */ - {0x0AF980ED, 0x807F0673}, /* -237, 2809, 1651, -127 */ - {0x0AE480EB, 0x80810688}, /* -235, 2788, 1672, -129 */ - {0x0ACE80E9, 0x8084069F}, /* -233, 2766, 1695, -132 */ - {0x0AB980E7, 0x808606B4}, /* -231, 2745, 1716, -134 */ - {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ - {0x0A8D80E4, 0x808A06E1}, /* -228, 2701, 1761, -138 */ - {0x0A7780E2, 0x808C06F7}, /* -226, 2679, 1783, -140 */ - {0x0A6180E0, 0x808E070D}, /* -224, 2657, 1805, -142 */ - {0x0A4B80DE, 0x80910724}, /* -222, 2635, 1828, -145 */ - {0x0A3580DC, 0x8093073A}, /* -220, 2613, 1850, -147 */ - {0x0A1F80DA, 0x80950750}, /* -218, 2591, 1872, -149 */ - {0x0A0880D8, 0x80970767}, /* -216, 2568, 1895, -151 */ - {0x09F280D6, 0x8099077D}, /* -214, 2546, 1917, -153 */ - {0x09DD80D4, 0x809C0793}, /* -212, 2525, 1939, -156 */ - {0x09C680D2, 0x809E07AA}, /* -210, 2502, 1962, -158 */ - {0x09B080D0, 0x80A007C0}, /* -208, 2480, 1984, -160 */ - {0x099980CE, 0x80A207D7}, /* -206, 2457, 2007, -162 */ - {0x098380CB, 0x80A507ED}, /* -203, 2435, 2029, -165 */ - {0x096C80C9, 0x80A70804}, /* -201, 2412, 2052, -167 */ - {0x095680C7, 0x80A9081A}, /* -199, 2390, 2074, -169 */ - {0x094080C5, 0x80AB0830}, /* -197, 2368, 2096, -171 */ - {0x092980C3, 0x80AE0848}, /* -195, 2345, 2120, -174 */ - {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ - {0x08FC80BE, 0x80B20874}, /* -190, 2300, 2164, -178 */ - {0x08E580BC, 0x80B4088B}, /* -188, 2277, 2187, -180 */ - {0x08D080BB, 0x80B708A2}, /* -187, 2256, 2210, -183 */ - {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ - {0x08A380B7, 0x80BB08CF}, /* -183, 2211, 2255, -187 */ - {0x088B80B4, 0x80BC08E5}, /* -180, 2187, 2277, -188 */ - {0x087480B2, 0x80BE08FC}, /* -178, 2164, 2300, -190 */ - {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ - {0x084880AE, 0x80C30929}, /* -174, 2120, 2345, -195 */ - {0x083080AB, 0x80C50940}, /* -171, 2096, 2368, -197 */ - {0x081A80A9, 0x80C70956}, /* -169, 2074, 2390, -199 */ - {0x080480A7, 0x80C9096C}, /* -167, 2052, 2412, -201 */ - {0x07ED80A5, 0x80CB0983}, /* -165, 2029, 2435, -203 */ - {0x07D780A2, 0x80CE0999}, /* -162, 2007, 2457, -206 */ - {0x07C080A0, 0x80D009B0}, /* -160, 1984, 2480, -208 */ - {0x07AA809E, 0x80D209C6}, /* -158, 1962, 2502, -210 */ - {0x0793809C, 0x80D409DD}, /* -156, 1939, 2525, -212 */ - {0x077D8099, 0x80D609F2}, /* -153, 1917, 2546, -214 */ - {0x07668097, 0x80D80A09}, /* -151, 1894, 2569, -216 */ - {0x074F8095, 0x80DA0A20}, /* -149, 1871, 2592, -218 */ - {0x073A8093, 0x80DC0A35}, /* -147, 1850, 2613, -220 */ - {0x07238091, 0x80DE0A4C}, /* -145, 1827, 2636, -222 */ - {0x070C808E, 0x80E00A62}, /* -142, 1804, 2658, -224 */ - {0x06F7808C, 0x80E20A77}, /* -140, 1783, 2679, -226 */ - {0x06E0808A, 0x80E40A8E}, /* -138, 1760, 2702, -228 */ - {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ - {0x06B48086, 0x80E70AB9}, /* -134, 1716, 2745, -231 */ - {0x069E8084, 0x80E90ACF}, /* -132, 1694, 2767, -233 */ - {0x06878081, 0x80EB0AE5}, /* -129, 1671, 2789, -235 */ - {0x0672807F, 0x80ED0AFA}, /* -127, 1650, 2810, -237 */ - {0x065C807D, 0x80EE0B0F}, /* -125, 1628, 2831, -238 */ - {0x0646807B, 0x80F00B25}, /* -123, 1606, 2853, -240 */ - {0x06308079, 0x80F20B3B}, /* -121, 1584, 2875, -242 */ - {0x061A8077, 0x80F30B50}, /* -119, 1562, 2896, -243 */ - {0x06068076, 0x80F50B65}, /* -118, 1542, 2917, -245 */ - {0x05F08074, 0x80F60B7A}, /* -116, 1520, 2938, -246 */ - {0x05DB8072, 0x80F80B8F}, /* -114, 1499, 2959, -248 */ - {0x05C58070, 0x80F90BA4}, /* -112, 1477, 2980, -249 */ - {0x05B1806E, 0x80FC0BB9}, /* -110, 1457, 3001, -252 */ - {0x059B806C, 0x80FD0BCE}, /* -108, 1435, 3022, -253 */ - {0x0586806A, 0x80FE0BE2}, /* -106, 1414, 3042, -254 */ - {0x05718068, 0x81000BF7}, /* -104, 1393, 3063, -256 */ - {0x055C8066, 0x81010C0B}, /* -102, 1372, 3083, -257 */ - {0x05478064, 0x81020C1F}, /* -100, 1351, 3103, -258 */ - {0x05328062, 0x81030C33}, /* -98, 1330, 3123, -259 */ - {0x051D8060, 0x81040C47}, /* -96, 1309, 3143, -260 */ - {0x0508805E, 0x81050C5B}, /* -94, 1288, 3163, -261 */ - {0x04F3805C, 0x81060C6F}, /* -92, 1267, 3183, -262 */ - {0x04E0805B, 0x81070C82}, /* -91, 1248, 3202, -263 */ - {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ - {0x04B68057, 0x81080CA9}, /* -87, 1206, 3241, -264 */ - {0x04A28055, 0x81090CBC}, /* -85, 1186, 3260, -265 */ - {0x048E8053, 0x810A0CCF}, /* -83, 1166, 3279, -266 */ - {0x047A8052, 0x810A0CE2}, /* -82, 1146, 3298, -266 */ - {0x04668050, 0x810B0CF5}, /* -80, 1126, 3317, -267 */ - {0x0451804E, 0x810B0D08}, /* -78, 1105, 3336, -267 */ - {0x043E804D, 0x810C0D1B}, /* -77, 1086, 3355, -268 */ - {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ - {0x04178049, 0x810C0D3E}, /* -73, 1047, 3390, -268 */ - {0x04038048, 0x810C0D51}, /* -72, 1027, 3409, -268 */ - {0x03F08046, 0x810C0D62}, /* -70, 1008, 3426, -268 */ - {0x03DD8044, 0x810C0D73}, /* -68, 989, 3443, -268 */ - {0x03CA8043, 0x810C0D85}, /* -67, 970, 3461, -268 */ - {0x03B78041, 0x810C0D96}, /* -65, 951, 3478, -268 */ - {0x03A48040, 0x810C0DA8}, /* -64, 932, 3496, -268 */ - {0x0391803E, 0x810B0DB8}, /* -62, 913, 3512, -267 */ - {0x0380803D, 0x810C0DC9}, /* -61, 896, 3529, -268 */ - {0x036D803B, 0x810C0DDA}, /* -59, 877, 3546, -268 */ - {0x035B803A, 0x810B0DEA}, /* -58, 859, 3562, -267 */ - {0x03488038, 0x810A0DFA}, /* -56, 840, 3578, -266 */ - {0x03368037, 0x810A0E0B}, /* -55, 822, 3595, -266 */ - {0x03248036, 0x81090E1B}, /* -54, 804, 3611, -265 */ - {0x03128034, 0x81080E2A}, /* -52, 786, 3626, -264 */ - {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ - {0x02EF8032, 0x81060E49}, /* -50, 751, 3657, -262 */ - {0x02DE8030, 0x81040E56}, /* -48, 734, 3670, -260 */ - {0x02CC802F, 0x81030E66}, /* -47, 716, 3686, -259 */ - {0x02BB802E, 0x81020E75}, /* -46, 699, 3701, -258 */ - {0x02AA802D, 0x81000E83}, /* -45, 682, 3715, -256 */ - {0x0299802B, 0x80FE0E90}, /* -43, 665, 3728, -254 */ - {0x0288802A, 0x80FD0E9F}, /* -42, 648, 3743, -253 */ - {0x02778029, 0x80FB0EAD}, /* -41, 631, 3757, -251 */ - {0x02678028, 0x80F90EBA}, /* -40, 615, 3770, -249 */ - {0x02568027, 0x80F70EC8}, /* -39, 598, 3784, -247 */ - {0x02468025, 0x80F50ED4}, /* -37, 582, 3796, -245 */ - {0x02368024, 0x80F30EE1}, /* -36, 566, 3809, -243 */ - {0x02268023, 0x80F00EED}, /* -35, 550, 3821, -240 */ - {0x02188023, 0x80EF0EFA}, /* -35, 536, 3834, -239 */ - {0x02078021, 0x80EB0F05}, /* -33, 519, 3845, -235 */ - {0x01F98021, 0x80E90F11}, /* -33, 505, 3857, -233 */ - {0x01EA8020, 0x80E60F1C}, /* -32, 490, 3868, -230 */ - {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ - {0x01CD801E, 0x80E00F31}, /* -30, 461, 3889, -224 */ - {0x01BE801D, 0x80DD0F3C}, /* -29, 446, 3900, -221 */ - {0x01AF801C, 0x80DA0F47}, /* -28, 431, 3911, -218 */ - {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ - {0x0192801A, 0x80D30F5B}, /* -26, 402, 3931, -211 */ - {0x01848019, 0x80CF0F64}, /* -25, 388, 3940, -207 */ - {0x01768018, 0x80CB0F6D}, /* -24, 374, 3949, -203 */ - {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ - {0x015A8016, 0x80C30F7F}, /* -22, 346, 3967, -195 */ - {0x014D8015, 0x80BF0F87}, /* -21, 333, 3975, -191 */ - {0x013F8015, 0x80BB0F91}, /* -21, 319, 3985, -187 */ - {0x01328014, 0x80B60F98}, /* -20, 306, 3992, -182 */ - {0x01258013, 0x80B20FA0}, /* -19, 293, 4000, -178 */ - {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ - {0x010B8011, 0x80A80FAE}, /* -17, 267, 4014, -168 */ - {0x00FE8010, 0x80A30FB5}, /* -16, 254, 4021, -163 */ - {0x00F28010, 0x809E0FBC}, /* -16, 242, 4028, -158 */ - {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ - {0x00DA800E, 0x80930FC7}, /* -14, 218, 4039, -147 */ - {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ - {0x00C2800D, 0x80880FD3}, /* -13, 194, 4051, -136 */ - {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ - {0x00AB800B, 0x807C0FDC}, /* -11, 171, 4060, -124 */ - {0x009F800A, 0x80760FE1}, /* -10, 159, 4065, -118 */ - {0x0094800A, 0x80700FE6}, /* -10, 148, 4070, -112 */ - {0x00898009, 0x80690FE9}, /* -9, 137, 4073, -105 */ - {0x007E8008, 0x80630FED}, /* -8, 126, 4077, -99 */ - {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ - {0x00698007, 0x80550FF3}, /* -7, 105, 4083, -85 */ - {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ - {0x00558005, 0x80470FF7}, /* -5, 85, 4087, -71 */ - {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ - {0x00418004, 0x80380FFB}, /* -4, 65, 4091, -56 */ - {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ - {0x002E8003, 0x80290FFE}, /* -3, 46, 4094, -41 */ - {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ - {0x001A8001, 0x80191000}, /* -1, 26, 4096, -25 */ - {0x00118001, 0x80101000}, /* -1, 17, 4096, -16 */ - {0x00080000, 0x80081000}, /* 0, 8, 4096, -8 */ + {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ + {0x10008008, 0x00000008}, /* -8, 4096, 8, 0 */ + {0x10008010, 0x80010011}, /* -16, 4096, 17, -1 */ + {0x10008019, 0x8001001A}, /* -25, 4096, 26, -1 */ + {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ + {0x0FFF8029, 0x8003002D}, /* -41, 4095, 45, -3 */ + {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ + {0x0FFC8038, 0x80040040}, /* -56, 4092, 64, -4 */ + {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ + {0x0FF88047, 0x80050054}, /* -71, 4088, 84, -5 */ + {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ + {0x0FF48055, 0x80070068}, /* -85, 4084, 104, -7 */ + {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ + {0x0FEE8063, 0x8008007D}, /* -99, 4078, 125, -8 */ + {0x0FEA8069, 0x80090088}, /* -105, 4074, 136, -9 */ + {0x0FE78070, 0x800A0093}, /* -112, 4071, 147, -10 */ + {0x0FE28076, 0x800A009E}, /* -118, 4066, 158, -10 */ + {0x0FDD807C, 0x800B00AA}, /* -124, 4061, 170, -11 */ + {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ + {0x0FD48088, 0x800D00C1}, /* -136, 4052, 193, -13 */ + {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ + {0x0FC88093, 0x800E00D9}, /* -147, 4040, 217, -14 */ + {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ + {0x0FBD809E, 0x801000F1}, /* -158, 4029, 241, -16 */ + {0x0FB680A3, 0x801000FD}, /* -163, 4022, 253, -16 */ + {0x0FAF80A8, 0x8011010A}, /* -168, 4015, 266, -17 */ + {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ + {0x0FA180B2, 0x80130124}, /* -178, 4001, 292, -19 */ + {0x0F9980B6, 0x80140131}, /* -182, 3993, 305, -20 */ + {0x0F9280BB, 0x8015013E}, /* -187, 3986, 318, -21 */ + {0x0F8880BF, 0x8015014C}, /* -191, 3976, 332, -21 */ + {0x0F8080C3, 0x80160159}, /* -195, 3968, 345, -22 */ + {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ + {0x0F6E80CB, 0x80180175}, /* -203, 3950, 373, -24 */ + {0x0F6580CF, 0x80190183}, /* -207, 3941, 387, -25 */ + {0x0F5C80D3, 0x801A0191}, /* -211, 3932, 401, -26 */ + {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ + {0x0F4880DA, 0x801C01AE}, /* -218, 3912, 430, -28 */ + {0x0F3D80DD, 0x801D01BD}, /* -221, 3901, 445, -29 */ + {0x0F3280E0, 0x801E01CC}, /* -224, 3890, 460, -30 */ + {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ + {0x0F1C80E6, 0x802001EA}, /* -230, 3868, 490, -32 */ + {0x0F1180E9, 0x802101F9}, /* -233, 3857, 505, -33 */ + {0x0F0480EB, 0x80210208}, /* -235, 3844, 520, -33 */ + {0x0EFA80EF, 0x80230218}, /* -239, 3834, 536, -35 */ + {0x0EEC80F0, 0x80230227}, /* -240, 3820, 551, -35 */ + {0x0EE080F3, 0x80240237}, /* -243, 3808, 567, -36 */ + {0x0ED380F5, 0x80250247}, /* -245, 3795, 583, -37 */ + {0x0EC780F7, 0x80270257}, /* -247, 3783, 599, -39 */ + {0x0EB980F9, 0x80280268}, /* -249, 3769, 616, -40 */ + {0x0EAC80FB, 0x80290278}, /* -251, 3756, 632, -41 */ + {0x0E9E80FD, 0x802A0289}, /* -253, 3742, 649, -42 */ + {0x0E9080FE, 0x802B0299}, /* -254, 3728, 665, -43 */ + {0x0E838100, 0x802D02AA}, /* -256, 3715, 682, -45 */ + {0x0E758102, 0x802E02BB}, /* -258, 3701, 699, -46 */ + {0x0E668103, 0x802F02CC}, /* -259, 3686, 716, -47 */ + {0x0E568104, 0x803002DE}, /* -260, 3670, 734, -48 */ + {0x0E498106, 0x803202EF}, /* -262, 3657, 751, -50 */ + {0x0E398107, 0x80330301}, /* -263, 3641, 769, -51 */ + {0x0E298108, 0x80340313}, /* -264, 3625, 787, -52 */ + {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ + {0x0E0B810A, 0x80370336}, /* -266, 3595, 822, -55 */ + {0x0DFA810A, 0x80380348}, /* -266, 3578, 840, -56 */ + {0x0DEA810B, 0x803A035B}, /* -267, 3562, 859, -58 */ + {0x0DDA810C, 0x803B036D}, /* -268, 3546, 877, -59 */ + {0x0DCA810C, 0x803D037F}, /* -268, 3530, 895, -61 */ + {0x0DB7810B, 0x803E0392}, /* -267, 3511, 914, -62 */ + {0x0DA7810C, 0x804003A5}, /* -268, 3495, 933, -64 */ + {0x0D95810C, 0x804103B8}, /* -268, 3477, 952, -65 */ + {0x0D85810C, 0x804303CA}, /* -268, 3461, 970, -67 */ + {0x0D73810C, 0x804403DD}, /* -268, 3443, 989, -68 */ + {0x0D61810C, 0x804603F1}, /* -268, 3425, 1009, -70 */ + {0x0D50810C, 0x80480404}, /* -268, 3408, 1028, -72 */ + {0x0D3E810C, 0x80490417}, /* -268, 3390, 1047, -73 */ + {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ + {0x0D1B810C, 0x804D043E}, /* -268, 3355, 1086, -77 */ + {0x0D07810B, 0x804E0452}, /* -267, 3335, 1106, -78 */ + {0x0CF5810B, 0x80500466}, /* -267, 3317, 1126, -80 */ + {0x0CE2810A, 0x8052047A}, /* -266, 3298, 1146, -82 */ + {0x0CCF810A, 0x8053048E}, /* -266, 3279, 1166, -83 */ + {0x0CBC8109, 0x805504A2}, /* -265, 3260, 1186, -85 */ + {0x0CA98108, 0x805704B6}, /* -264, 3241, 1206, -87 */ + {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ + {0x0C838107, 0x805B04DF}, /* -263, 3203, 1247, -91 */ + {0x0C6F8106, 0x805C04F3}, /* -262, 3183, 1267, -92 */ + {0x0C5B8105, 0x805E0508}, /* -261, 3163, 1288, -94 */ + {0x0C478104, 0x8060051D}, /* -260, 3143, 1309, -96 */ + {0x0C348103, 0x80620531}, /* -259, 3124, 1329, -98 */ + {0x0C1F8102, 0x80640547}, /* -258, 3103, 1351, -100 */ + {0x0C0C8101, 0x8066055B}, /* -257, 3084, 1371, -102 */ + {0x0BF88100, 0x80680570}, /* -256, 3064, 1392, -104 */ + {0x0BE380FE, 0x806A0585}, /* -254, 3043, 1413, -106 */ + {0x0BCF80FD, 0x806C059A}, /* -253, 3023, 1434, -108 */ + {0x0BBA80FC, 0x806E05B0}, /* -252, 3002, 1456, -110 */ + {0x0BA480F9, 0x807005C5}, /* -249, 2980, 1477, -112 */ + {0x0B8F80F8, 0x807205DB}, /* -248, 2959, 1499, -114 */ + {0x0B7A80F6, 0x807405F0}, /* -246, 2938, 1520, -116 */ + {0x0B6580F5, 0x80760606}, /* -245, 2917, 1542, -118 */ + {0x0B4F80F3, 0x8077061B}, /* -243, 2895, 1563, -119 */ + {0x0B3A80F2, 0x80790631}, /* -242, 2874, 1585, -121 */ + {0x0B2480F0, 0x807B0647}, /* -240, 2852, 1607, -123 */ + {0x0B0F80EE, 0x807D065C}, /* -238, 2831, 1628, -125 */ + {0x0AF980ED, 0x807F0673}, /* -237, 2809, 1651, -127 */ + {0x0AE480EB, 0x80810688}, /* -235, 2788, 1672, -129 */ + {0x0ACE80E9, 0x8084069F}, /* -233, 2766, 1695, -132 */ + {0x0AB980E7, 0x808606B4}, /* -231, 2745, 1716, -134 */ + {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ + {0x0A8D80E4, 0x808A06E1}, /* -228, 2701, 1761, -138 */ + {0x0A7780E2, 0x808C06F7}, /* -226, 2679, 1783, -140 */ + {0x0A6180E0, 0x808E070D}, /* -224, 2657, 1805, -142 */ + {0x0A4B80DE, 0x80910724}, /* -222, 2635, 1828, -145 */ + {0x0A3580DC, 0x8093073A}, /* -220, 2613, 1850, -147 */ + {0x0A1F80DA, 0x80950750}, /* -218, 2591, 1872, -149 */ + {0x0A0880D8, 0x80970767}, /* -216, 2568, 1895, -151 */ + {0x09F280D6, 0x8099077D}, /* -214, 2546, 1917, -153 */ + {0x09DD80D4, 0x809C0793}, /* -212, 2525, 1939, -156 */ + {0x09C680D2, 0x809E07AA}, /* -210, 2502, 1962, -158 */ + {0x09B080D0, 0x80A007C0}, /* -208, 2480, 1984, -160 */ + {0x099980CE, 0x80A207D7}, /* -206, 2457, 2007, -162 */ + {0x098380CB, 0x80A507ED}, /* -203, 2435, 2029, -165 */ + {0x096C80C9, 0x80A70804}, /* -201, 2412, 2052, -167 */ + {0x095680C7, 0x80A9081A}, /* -199, 2390, 2074, -169 */ + {0x094080C5, 0x80AB0830}, /* -197, 2368, 2096, -171 */ + {0x092980C3, 0x80AE0848}, /* -195, 2345, 2120, -174 */ + {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ + {0x08FC80BE, 0x80B20874}, /* -190, 2300, 2164, -178 */ + {0x08E580BC, 0x80B4088B}, /* -188, 2277, 2187, -180 */ + {0x08D080BB, 0x80B708A2}, /* -187, 2256, 2210, -183 */ + {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ + {0x08A380B7, 0x80BB08CF}, /* -183, 2211, 2255, -187 */ + {0x088B80B4, 0x80BC08E5}, /* -180, 2187, 2277, -188 */ + {0x087480B2, 0x80BE08FC}, /* -178, 2164, 2300, -190 */ + {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ + {0x084880AE, 0x80C30929}, /* -174, 2120, 2345, -195 */ + {0x083080AB, 0x80C50940}, /* -171, 2096, 2368, -197 */ + {0x081A80A9, 0x80C70956}, /* -169, 2074, 2390, -199 */ + {0x080480A7, 0x80C9096C}, /* -167, 2052, 2412, -201 */ + {0x07ED80A5, 0x80CB0983}, /* -165, 2029, 2435, -203 */ + {0x07D780A2, 0x80CE0999}, /* -162, 2007, 2457, -206 */ + {0x07C080A0, 0x80D009B0}, /* -160, 1984, 2480, -208 */ + {0x07AA809E, 0x80D209C6}, /* -158, 1962, 2502, -210 */ + {0x0793809C, 0x80D409DD}, /* -156, 1939, 2525, -212 */ + {0x077D8099, 0x80D609F2}, /* -153, 1917, 2546, -214 */ + {0x07668097, 0x80D80A09}, /* -151, 1894, 2569, -216 */ + {0x074F8095, 0x80DA0A20}, /* -149, 1871, 2592, -218 */ + {0x073A8093, 0x80DC0A35}, /* -147, 1850, 2613, -220 */ + {0x07238091, 0x80DE0A4C}, /* -145, 1827, 2636, -222 */ + {0x070C808E, 0x80E00A62}, /* -142, 1804, 2658, -224 */ + {0x06F7808C, 0x80E20A77}, /* -140, 1783, 2679, -226 */ + {0x06E0808A, 0x80E40A8E}, /* -138, 1760, 2702, -228 */ + {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ + {0x06B48086, 0x80E70AB9}, /* -134, 1716, 2745, -231 */ + {0x069E8084, 0x80E90ACF}, /* -132, 1694, 2767, -233 */ + {0x06878081, 0x80EB0AE5}, /* -129, 1671, 2789, -235 */ + {0x0672807F, 0x80ED0AFA}, /* -127, 1650, 2810, -237 */ + {0x065C807D, 0x80EE0B0F}, /* -125, 1628, 2831, -238 */ + {0x0646807B, 0x80F00B25}, /* -123, 1606, 2853, -240 */ + {0x06308079, 0x80F20B3B}, /* -121, 1584, 2875, -242 */ + {0x061A8077, 0x80F30B50}, /* -119, 1562, 2896, -243 */ + {0x06068076, 0x80F50B65}, /* -118, 1542, 2917, -245 */ + {0x05F08074, 0x80F60B7A}, /* -116, 1520, 2938, -246 */ + {0x05DB8072, 0x80F80B8F}, /* -114, 1499, 2959, -248 */ + {0x05C58070, 0x80F90BA4}, /* -112, 1477, 2980, -249 */ + {0x05B1806E, 0x80FC0BB9}, /* -110, 1457, 3001, -252 */ + {0x059B806C, 0x80FD0BCE}, /* -108, 1435, 3022, -253 */ + {0x0586806A, 0x80FE0BE2}, /* -106, 1414, 3042, -254 */ + {0x05718068, 0x81000BF7}, /* -104, 1393, 3063, -256 */ + {0x055C8066, 0x81010C0B}, /* -102, 1372, 3083, -257 */ + {0x05478064, 0x81020C1F}, /* -100, 1351, 3103, -258 */ + {0x05328062, 0x81030C33}, /* -98, 1330, 3123, -259 */ + {0x051D8060, 0x81040C47}, /* -96, 1309, 3143, -260 */ + {0x0508805E, 0x81050C5B}, /* -94, 1288, 3163, -261 */ + {0x04F3805C, 0x81060C6F}, /* -92, 1267, 3183, -262 */ + {0x04E0805B, 0x81070C82}, /* -91, 1248, 3202, -263 */ + {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ + {0x04B68057, 0x81080CA9}, /* -87, 1206, 3241, -264 */ + {0x04A28055, 0x81090CBC}, /* -85, 1186, 3260, -265 */ + {0x048E8053, 0x810A0CCF}, /* -83, 1166, 3279, -266 */ + {0x047A8052, 0x810A0CE2}, /* -82, 1146, 3298, -266 */ + {0x04668050, 0x810B0CF5}, /* -80, 1126, 3317, -267 */ + {0x0451804E, 0x810B0D08}, /* -78, 1105, 3336, -267 */ + {0x043E804D, 0x810C0D1B}, /* -77, 1086, 3355, -268 */ + {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ + {0x04178049, 0x810C0D3E}, /* -73, 1047, 3390, -268 */ + {0x04038048, 0x810C0D51}, /* -72, 1027, 3409, -268 */ + {0x03F08046, 0x810C0D62}, /* -70, 1008, 3426, -268 */ + {0x03DD8044, 0x810C0D73}, /* -68, 989, 3443, -268 */ + {0x03CA8043, 0x810C0D85}, /* -67, 970, 3461, -268 */ + {0x03B78041, 0x810C0D96}, /* -65, 951, 3478, -268 */ + {0x03A48040, 0x810C0DA8}, /* -64, 932, 3496, -268 */ + {0x0391803E, 0x810B0DB8}, /* -62, 913, 3512, -267 */ + {0x0380803D, 0x810C0DC9}, /* -61, 896, 3529, -268 */ + {0x036D803B, 0x810C0DDA}, /* -59, 877, 3546, -268 */ + {0x035B803A, 0x810B0DEA}, /* -58, 859, 3562, -267 */ + {0x03488038, 0x810A0DFA}, /* -56, 840, 3578, -266 */ + {0x03368037, 0x810A0E0B}, /* -55, 822, 3595, -266 */ + {0x03248036, 0x81090E1B}, /* -54, 804, 3611, -265 */ + {0x03128034, 0x81080E2A}, /* -52, 786, 3626, -264 */ + {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ + {0x02EF8032, 0x81060E49}, /* -50, 751, 3657, -262 */ + {0x02DE8030, 0x81040E56}, /* -48, 734, 3670, -260 */ + {0x02CC802F, 0x81030E66}, /* -47, 716, 3686, -259 */ + {0x02BB802E, 0x81020E75}, /* -46, 699, 3701, -258 */ + {0x02AA802D, 0x81000E83}, /* -45, 682, 3715, -256 */ + {0x0299802B, 0x80FE0E90}, /* -43, 665, 3728, -254 */ + {0x0288802A, 0x80FD0E9F}, /* -42, 648, 3743, -253 */ + {0x02778029, 0x80FB0EAD}, /* -41, 631, 3757, -251 */ + {0x02678028, 0x80F90EBA}, /* -40, 615, 3770, -249 */ + {0x02568027, 0x80F70EC8}, /* -39, 598, 3784, -247 */ + {0x02468025, 0x80F50ED4}, /* -37, 582, 3796, -245 */ + {0x02368024, 0x80F30EE1}, /* -36, 566, 3809, -243 */ + {0x02268023, 0x80F00EED}, /* -35, 550, 3821, -240 */ + {0x02188023, 0x80EF0EFA}, /* -35, 536, 3834, -239 */ + {0x02078021, 0x80EB0F05}, /* -33, 519, 3845, -235 */ + {0x01F98021, 0x80E90F11}, /* -33, 505, 3857, -233 */ + {0x01EA8020, 0x80E60F1C}, /* -32, 490, 3868, -230 */ + {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ + {0x01CD801E, 0x80E00F31}, /* -30, 461, 3889, -224 */ + {0x01BE801D, 0x80DD0F3C}, /* -29, 446, 3900, -221 */ + {0x01AF801C, 0x80DA0F47}, /* -28, 431, 3911, -218 */ + {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ + {0x0192801A, 0x80D30F5B}, /* -26, 402, 3931, -211 */ + {0x01848019, 0x80CF0F64}, /* -25, 388, 3940, -207 */ + {0x01768018, 0x80CB0F6D}, /* -24, 374, 3949, -203 */ + {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ + {0x015A8016, 0x80C30F7F}, /* -22, 346, 3967, -195 */ + {0x014D8015, 0x80BF0F87}, /* -21, 333, 3975, -191 */ + {0x013F8015, 0x80BB0F91}, /* -21, 319, 3985, -187 */ + {0x01328014, 0x80B60F98}, /* -20, 306, 3992, -182 */ + {0x01258013, 0x80B20FA0}, /* -19, 293, 4000, -178 */ + {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ + {0x010B8011, 0x80A80FAE}, /* -17, 267, 4014, -168 */ + {0x00FE8010, 0x80A30FB5}, /* -16, 254, 4021, -163 */ + {0x00F28010, 0x809E0FBC}, /* -16, 242, 4028, -158 */ + {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ + {0x00DA800E, 0x80930FC7}, /* -14, 218, 4039, -147 */ + {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ + {0x00C2800D, 0x80880FD3}, /* -13, 194, 4051, -136 */ + {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ + {0x00AB800B, 0x807C0FDC}, /* -11, 171, 4060, -124 */ + {0x009F800A, 0x80760FE1}, /* -10, 159, 4065, -118 */ + {0x0094800A, 0x80700FE6}, /* -10, 148, 4070, -112 */ + {0x00898009, 0x80690FE9}, /* -9, 137, 4073, -105 */ + {0x007E8008, 0x80630FED}, /* -8, 126, 4077, -99 */ + {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ + {0x00698007, 0x80550FF3}, /* -7, 105, 4083, -85 */ + {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ + {0x00558005, 0x80470FF7}, /* -5, 85, 4087, -71 */ + {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ + {0x00418004, 0x80380FFB}, /* -4, 65, 4091, -56 */ + {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ + {0x002E8003, 0x80290FFE}, /* -3, 46, 4094, -41 */ + {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ + {0x001A8001, 0x80191000}, /* -1, 26, 4096, -25 */ + {0x00118001, 0x80101000}, /* -1, 17, 4096, -16 */ + {0x00080000, 0x80081000}, /* 0, 8, 4096, -8 */ }; long CimarronVideoFilter128[][2] = { - {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ - {0x10018011, 0x80010011}, /* -17, 4097, 17, -1 */ - {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ - {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ - {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ - {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ - {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ - {0x0FEB806A, 0x80090088}, /* -106, 4075, 136, -9 */ - {0x0FE18076, 0x800A009F}, /* -118, 4065, 159, -10 */ - {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ - {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ - {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ - {0x0FB680A4, 0x801000FE}, /* -164, 4022, 254, -16 */ - {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ - {0x0F9A80B7, 0x80140131}, /* -183, 3994, 305, -20 */ - {0x0F8980C0, 0x8015014C}, /* -192, 3977, 332, -21 */ - {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ - {0x0F6680D0, 0x80190183}, /* -208, 3942, 387, -25 */ - {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ - {0x0F3E80DE, 0x801D01BD}, /* -222, 3902, 445, -29 */ - {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ - {0x0F1180EA, 0x802101FA}, /* -234, 3857, 506, -33 */ - {0x0EF880EE, 0x80220218}, /* -238, 3832, 536, -34 */ - {0x0EDF80F3, 0x80240238}, /* -243, 3807, 568, -36 */ - {0x0EC680F7, 0x80270258}, /* -247, 3782, 600, -39 */ - {0x0EAB80FB, 0x80290279}, /* -251, 3755, 633, -41 */ - {0x0E9080FF, 0x802B029A}, /* -255, 3728, 666, -43 */ - {0x0E748102, 0x802E02BC}, /* -258, 3700, 700, -46 */ - {0x0E588105, 0x803102DE}, /* -261, 3672, 734, -49 */ - {0x0E388107, 0x80330302}, /* -263, 3640, 770, -51 */ - {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ - {0x0DFB810B, 0x80390349}, /* -267, 3579, 841, -57 */ - {0x0DDB810C, 0x803C036D}, /* -268, 3547, 877, -60 */ - {0x0DBA810D, 0x803F0392}, /* -269, 3514, 914, -63 */ - {0x0D98810E, 0x804203B8}, /* -270, 3480, 952, -66 */ - {0x0D74810D, 0x804503DE}, /* -269, 3444, 990, -69 */ - {0x0D50810D, 0x80480405}, /* -269, 3408, 1029, -72 */ - {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ - {0x0D08810C, 0x804F0453}, /* -268, 3336, 1107, -79 */ - {0x0CE3810B, 0x8052047A}, /* -267, 3299, 1146, -82 */ - {0x0CBD810A, 0x805604A3}, /* -266, 3261, 1187, -86 */ - {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ - {0x0C708107, 0x805D04F4}, /* -263, 3184, 1268, -93 */ - {0x0C488105, 0x8061051E}, /* -261, 3144, 1310, -97 */ - {0x0C208103, 0x80640547}, /* -259, 3104, 1351, -100 */ - {0x0BF78100, 0x80680571}, /* -256, 3063, 1393, -104 */ - {0x0BCF80FE, 0x806C059B}, /* -254, 3023, 1435, -108 */ - {0x0BA480FA, 0x807005C6}, /* -250, 2980, 1478, -112 */ - {0x0B7A80F7, 0x807405F1}, /* -247, 2938, 1521, -116 */ - {0x0B4F80F4, 0x8077061C}, /* -244, 2895, 1564, -119 */ - {0x0B2580F1, 0x807C0648}, /* -241, 2853, 1608, -124 */ - {0x0AFA80ED, 0x80800673}, /* -237, 2810, 1651, -128 */ - {0x0ACF80EA, 0x8084069F}, /* -234, 2767, 1695, -132 */ - {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ - {0x0A7880E2, 0x808D06F7}, /* -226, 2680, 1783, -141 */ - {0x0A4C80DF, 0x80910724}, /* -223, 2636, 1828, -145 */ - {0x0A2080DB, 0x80960751}, /* -219, 2592, 1873, -150 */ - {0x09F480D7, 0x809A077D}, /* -215, 2548, 1917, -154 */ - {0x09C780D2, 0x809F07AA}, /* -210, 2503, 1962, -159 */ - {0x099A80CE, 0x80A307D7}, /* -206, 2458, 2007, -163 */ - {0x096D80CA, 0x80A70804}, /* -202, 2413, 2052, -167 */ - {0x094180C6, 0x80AC0831}, /* -198, 2369, 2097, -172 */ - {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ - {0x08E780BE, 0x80B5088C}, /* -190, 2279, 2188, -181 */ - {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ - {0x088C80B5, 0x80BE08E7}, /* -181, 2188, 2279, -190 */ - {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ - {0x083180AC, 0x80C60941}, /* -172, 2097, 2369, -198 */ - {0x080480A7, 0x80CA096D}, /* -167, 2052, 2413, -202 */ - {0x07D780A3, 0x80CE099A}, /* -163, 2007, 2458, -206 */ - {0x07AA809F, 0x80D209C7}, /* -159, 1962, 2503, -210 */ - {0x077D809A, 0x80D709F4}, /* -154, 1917, 2548, -215 */ - {0x07518096, 0x80DB0A20}, /* -150, 1873, 2592, -219 */ - {0x07248091, 0x80DF0A4C}, /* -145, 1828, 2636, -223 */ - {0x06F7808D, 0x80E20A78}, /* -141, 1783, 2680, -226 */ - {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ - {0x069E8084, 0x80EA0AD0}, /* -132, 1694, 2768, -234 */ - {0x06738080, 0x80ED0AFA}, /* -128, 1651, 2810, -237 */ - {0x0647807C, 0x80F10B26}, /* -124, 1607, 2854, -241 */ - {0x061B8077, 0x80F40B50}, /* -119, 1563, 2896, -244 */ - {0x05F18074, 0x80F70B7A}, /* -116, 1521, 2938, -247 */ - {0x05C68070, 0x80FA0BA4}, /* -112, 1478, 2980, -250 */ - {0x059C806C, 0x80FE0BCE}, /* -108, 1436, 3022, -254 */ - {0x05728068, 0x81000BF6}, /* -104, 1394, 3062, -256 */ - {0x05478064, 0x81030C20}, /* -100, 1351, 3104, -259 */ - {0x051E8061, 0x81050C48}, /* -97, 1310, 3144, -261 */ - {0x04F4805D, 0x81070C70}, /* -93, 1268, 3184, -263 */ - {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ - {0x04A38056, 0x810A0CBD}, /* -86, 1187, 3261, -266 */ - {0x047A8052, 0x810B0CE3}, /* -82, 1146, 3299, -267 */ - {0x0453804F, 0x810C0D08}, /* -79, 1107, 3336, -268 */ - {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ - {0x04048048, 0x810D0D51}, /* -72, 1028, 3409, -269 */ - {0x03DE8045, 0x810D0D74}, /* -69, 990, 3444, -269 */ - {0x03B88042, 0x810E0D98}, /* -66, 952, 3480, -270 */ - {0x0393803F, 0x810D0DB9}, /* -63, 915, 3513, -269 */ - {0x036E803C, 0x810C0DDA}, /* -60, 878, 3546, -268 */ - {0x03498039, 0x810B0DFB}, /* -57, 841, 3579, -267 */ - {0x03258036, 0x81090E1A}, /* -54, 805, 3610, -265 */ - {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ - {0x02DE8031, 0x81050E58}, /* -49, 734, 3672, -261 */ - {0x02BC802E, 0x81020E74}, /* -46, 700, 3700, -258 */ - {0x0299802B, 0x80FF0E91}, /* -43, 665, 3729, -255 */ - {0x02788029, 0x80FB0EAC}, /* -41, 632, 3756, -251 */ - {0x02578027, 0x80F70EC7}, /* -39, 599, 3783, -247 */ - {0x02378024, 0x80F30EE0}, /* -36, 567, 3808, -243 */ - {0x02178022, 0x80EE0EF9}, /* -34, 535, 3833, -238 */ - {0x01FA8021, 0x80EA0F11}, /* -33, 506, 3857, -234 */ - {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ - {0x01BE801D, 0x80DE0F3D}, /* -29, 446, 3901, -222 */ - {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ - {0x01848019, 0x80D00F65}, /* -25, 388, 3941, -208 */ - {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ - {0x014D8015, 0x80C00F88}, /* -21, 333, 3976, -192 */ - {0x01328014, 0x80B70F99}, /* -20, 306, 3993, -183 */ - {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ - {0x00FF8010, 0x80A40FB5}, /* -16, 255, 4021, -164 */ - {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ - {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ - {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ - {0x00A0800A, 0x80760FE0}, /* -10, 160, 4064, -118 */ - {0x00898009, 0x806A0FEA}, /* -9, 137, 4074, -106 */ - {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ - {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ - {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ - {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ - {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ - {0x00118001, 0x80111001}, /* -1, 17, 4097, -17 */ - {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ - {0x10018011, 0x80010011}, /* -17, 4097, 17, -1 */ - {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ - {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ - {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ - {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ - {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ - {0x0FEB806A, 0x80090088}, /* -106, 4075, 136, -9 */ - {0x0FE18076, 0x800A009F}, /* -118, 4065, 159, -10 */ - {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ - {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ - {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ - {0x0FB680A4, 0x801000FE}, /* -164, 4022, 254, -16 */ - {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ - {0x0F9A80B7, 0x80140131}, /* -183, 3994, 305, -20 */ - {0x0F8980C0, 0x8015014C}, /* -192, 3977, 332, -21 */ - {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ - {0x0F6680D0, 0x80190183}, /* -208, 3942, 387, -25 */ - {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ - {0x0F3E80DE, 0x801D01BD}, /* -222, 3902, 445, -29 */ - {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ - {0x0F1180EA, 0x802101FA}, /* -234, 3857, 506, -33 */ - {0x0EF880EE, 0x80220218}, /* -238, 3832, 536, -34 */ - {0x0EDF80F3, 0x80240238}, /* -243, 3807, 568, -36 */ - {0x0EC680F7, 0x80270258}, /* -247, 3782, 600, -39 */ - {0x0EAB80FB, 0x80290279}, /* -251, 3755, 633, -41 */ - {0x0E9080FF, 0x802B029A}, /* -255, 3728, 666, -43 */ - {0x0E748102, 0x802E02BC}, /* -258, 3700, 700, -46 */ - {0x0E588105, 0x803102DE}, /* -261, 3672, 734, -49 */ - {0x0E388107, 0x80330302}, /* -263, 3640, 770, -51 */ - {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ - {0x0DFB810B, 0x80390349}, /* -267, 3579, 841, -57 */ - {0x0DDB810C, 0x803C036D}, /* -268, 3547, 877, -60 */ - {0x0DBA810D, 0x803F0392}, /* -269, 3514, 914, -63 */ - {0x0D98810E, 0x804203B8}, /* -270, 3480, 952, -66 */ - {0x0D74810D, 0x804503DE}, /* -269, 3444, 990, -69 */ - {0x0D50810D, 0x80480405}, /* -269, 3408, 1029, -72 */ - {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ - {0x0D08810C, 0x804F0453}, /* -268, 3336, 1107, -79 */ - {0x0CE3810B, 0x8052047A}, /* -267, 3299, 1146, -82 */ - {0x0CBD810A, 0x805604A3}, /* -266, 3261, 1187, -86 */ - {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ - {0x0C708107, 0x805D04F4}, /* -263, 3184, 1268, -93 */ - {0x0C488105, 0x8061051E}, /* -261, 3144, 1310, -97 */ - {0x0C208103, 0x80640547}, /* -259, 3104, 1351, -100 */ - {0x0BF78100, 0x80680571}, /* -256, 3063, 1393, -104 */ - {0x0BCF80FE, 0x806C059B}, /* -254, 3023, 1435, -108 */ - {0x0BA480FA, 0x807005C6}, /* -250, 2980, 1478, -112 */ - {0x0B7A80F7, 0x807405F1}, /* -247, 2938, 1521, -116 */ - {0x0B4F80F4, 0x8077061C}, /* -244, 2895, 1564, -119 */ - {0x0B2580F1, 0x807C0648}, /* -241, 2853, 1608, -124 */ - {0x0AFA80ED, 0x80800673}, /* -237, 2810, 1651, -128 */ - {0x0ACF80EA, 0x8084069F}, /* -234, 2767, 1695, -132 */ - {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ - {0x0A7880E2, 0x808D06F7}, /* -226, 2680, 1783, -141 */ - {0x0A4C80DF, 0x80910724}, /* -223, 2636, 1828, -145 */ - {0x0A2080DB, 0x80960751}, /* -219, 2592, 1873, -150 */ - {0x09F480D7, 0x809A077D}, /* -215, 2548, 1917, -154 */ - {0x09C780D2, 0x809F07AA}, /* -210, 2503, 1962, -159 */ - {0x099A80CE, 0x80A307D7}, /* -206, 2458, 2007, -163 */ - {0x096D80CA, 0x80A70804}, /* -202, 2413, 2052, -167 */ - {0x094180C6, 0x80AC0831}, /* -198, 2369, 2097, -172 */ - {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ - {0x08E780BE, 0x80B5088C}, /* -190, 2279, 2188, -181 */ - {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ - {0x088C80B5, 0x80BE08E7}, /* -181, 2188, 2279, -190 */ - {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ - {0x083180AC, 0x80C60941}, /* -172, 2097, 2369, -198 */ - {0x080480A7, 0x80CA096D}, /* -167, 2052, 2413, -202 */ - {0x07D780A3, 0x80CE099A}, /* -163, 2007, 2458, -206 */ - {0x07AA809F, 0x80D209C7}, /* -159, 1962, 2503, -210 */ - {0x077D809A, 0x80D709F4}, /* -154, 1917, 2548, -215 */ - {0x07518096, 0x80DB0A20}, /* -150, 1873, 2592, -219 */ - {0x07248091, 0x80DF0A4C}, /* -145, 1828, 2636, -223 */ - {0x06F7808D, 0x80E20A78}, /* -141, 1783, 2680, -226 */ - {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ - {0x069E8084, 0x80EA0AD0}, /* -132, 1694, 2768, -234 */ - {0x06738080, 0x80ED0AFA}, /* -128, 1651, 2810, -237 */ - {0x0647807C, 0x80F10B26}, /* -124, 1607, 2854, -241 */ - {0x061B8077, 0x80F40B50}, /* -119, 1563, 2896, -244 */ - {0x05F18074, 0x80F70B7A}, /* -116, 1521, 2938, -247 */ - {0x05C68070, 0x80FA0BA4}, /* -112, 1478, 2980, -250 */ - {0x059C806C, 0x80FE0BCE}, /* -108, 1436, 3022, -254 */ - {0x05728068, 0x81000BF6}, /* -104, 1394, 3062, -256 */ - {0x05478064, 0x81030C20}, /* -100, 1351, 3104, -259 */ - {0x051E8061, 0x81050C48}, /* -97, 1310, 3144, -261 */ - {0x04F4805D, 0x81070C70}, /* -93, 1268, 3184, -263 */ - {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ - {0x04A38056, 0x810A0CBD}, /* -86, 1187, 3261, -266 */ - {0x047A8052, 0x810B0CE3}, /* -82, 1146, 3299, -267 */ - {0x0453804F, 0x810C0D08}, /* -79, 1107, 3336, -268 */ - {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ - {0x04048048, 0x810D0D51}, /* -72, 1028, 3409, -269 */ - {0x03DE8045, 0x810D0D74}, /* -69, 990, 3444, -269 */ - {0x03B88042, 0x810E0D98}, /* -66, 952, 3480, -270 */ - {0x0393803F, 0x810D0DB9}, /* -63, 915, 3513, -269 */ - {0x036E803C, 0x810C0DDA}, /* -60, 878, 3546, -268 */ - {0x03498039, 0x810B0DFB}, /* -57, 841, 3579, -267 */ - {0x03258036, 0x81090E1A}, /* -54, 805, 3610, -265 */ - {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ - {0x02DE8031, 0x81050E58}, /* -49, 734, 3672, -261 */ - {0x02BC802E, 0x81020E74}, /* -46, 700, 3700, -258 */ - {0x0299802B, 0x80FF0E91}, /* -43, 665, 3729, -255 */ - {0x02788029, 0x80FB0EAC}, /* -41, 632, 3756, -251 */ - {0x02578027, 0x80F70EC7}, /* -39, 599, 3783, -247 */ - {0x02378024, 0x80F30EE0}, /* -36, 567, 3808, -243 */ - {0x02178022, 0x80EE0EF9}, /* -34, 535, 3833, -238 */ - {0x01FA8021, 0x80EA0F11}, /* -33, 506, 3857, -234 */ - {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ - {0x01BE801D, 0x80DE0F3D}, /* -29, 446, 3901, -222 */ - {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ - {0x01848019, 0x80D00F65}, /* -25, 388, 3941, -208 */ - {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ - {0x014D8015, 0x80C00F88}, /* -21, 333, 3976, -192 */ - {0x01328014, 0x80B70F99}, /* -20, 306, 3993, -183 */ - {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ - {0x00FF8010, 0x80A40FB5}, /* -16, 255, 4021, -164 */ - {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ - {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ - {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ - {0x00A0800A, 0x80760FE0}, /* -10, 160, 4064, -118 */ - {0x00898009, 0x806A0FEA}, /* -9, 137, 4074, -106 */ - {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ - {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ - {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ - {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ - {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ - {0x00118001, 0x80111001}, /* -1, 17, 4097, -17 */ + {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ + {0x10018011, 0x80010011}, /* -17, 4097, 17, -1 */ + {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ + {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ + {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ + {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ + {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ + {0x0FEB806A, 0x80090088}, /* -106, 4075, 136, -9 */ + {0x0FE18076, 0x800A009F}, /* -118, 4065, 159, -10 */ + {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ + {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ + {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ + {0x0FB680A4, 0x801000FE}, /* -164, 4022, 254, -16 */ + {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ + {0x0F9A80B7, 0x80140131}, /* -183, 3994, 305, -20 */ + {0x0F8980C0, 0x8015014C}, /* -192, 3977, 332, -21 */ + {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ + {0x0F6680D0, 0x80190183}, /* -208, 3942, 387, -25 */ + {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ + {0x0F3E80DE, 0x801D01BD}, /* -222, 3902, 445, -29 */ + {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ + {0x0F1180EA, 0x802101FA}, /* -234, 3857, 506, -33 */ + {0x0EF880EE, 0x80220218}, /* -238, 3832, 536, -34 */ + {0x0EDF80F3, 0x80240238}, /* -243, 3807, 568, -36 */ + {0x0EC680F7, 0x80270258}, /* -247, 3782, 600, -39 */ + {0x0EAB80FB, 0x80290279}, /* -251, 3755, 633, -41 */ + {0x0E9080FF, 0x802B029A}, /* -255, 3728, 666, -43 */ + {0x0E748102, 0x802E02BC}, /* -258, 3700, 700, -46 */ + {0x0E588105, 0x803102DE}, /* -261, 3672, 734, -49 */ + {0x0E388107, 0x80330302}, /* -263, 3640, 770, -51 */ + {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ + {0x0DFB810B, 0x80390349}, /* -267, 3579, 841, -57 */ + {0x0DDB810C, 0x803C036D}, /* -268, 3547, 877, -60 */ + {0x0DBA810D, 0x803F0392}, /* -269, 3514, 914, -63 */ + {0x0D98810E, 0x804203B8}, /* -270, 3480, 952, -66 */ + {0x0D74810D, 0x804503DE}, /* -269, 3444, 990, -69 */ + {0x0D50810D, 0x80480405}, /* -269, 3408, 1029, -72 */ + {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ + {0x0D08810C, 0x804F0453}, /* -268, 3336, 1107, -79 */ + {0x0CE3810B, 0x8052047A}, /* -267, 3299, 1146, -82 */ + {0x0CBD810A, 0x805604A3}, /* -266, 3261, 1187, -86 */ + {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ + {0x0C708107, 0x805D04F4}, /* -263, 3184, 1268, -93 */ + {0x0C488105, 0x8061051E}, /* -261, 3144, 1310, -97 */ + {0x0C208103, 0x80640547}, /* -259, 3104, 1351, -100 */ + {0x0BF78100, 0x80680571}, /* -256, 3063, 1393, -104 */ + {0x0BCF80FE, 0x806C059B}, /* -254, 3023, 1435, -108 */ + {0x0BA480FA, 0x807005C6}, /* -250, 2980, 1478, -112 */ + {0x0B7A80F7, 0x807405F1}, /* -247, 2938, 1521, -116 */ + {0x0B4F80F4, 0x8077061C}, /* -244, 2895, 1564, -119 */ + {0x0B2580F1, 0x807C0648}, /* -241, 2853, 1608, -124 */ + {0x0AFA80ED, 0x80800673}, /* -237, 2810, 1651, -128 */ + {0x0ACF80EA, 0x8084069F}, /* -234, 2767, 1695, -132 */ + {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ + {0x0A7880E2, 0x808D06F7}, /* -226, 2680, 1783, -141 */ + {0x0A4C80DF, 0x80910724}, /* -223, 2636, 1828, -145 */ + {0x0A2080DB, 0x80960751}, /* -219, 2592, 1873, -150 */ + {0x09F480D7, 0x809A077D}, /* -215, 2548, 1917, -154 */ + {0x09C780D2, 0x809F07AA}, /* -210, 2503, 1962, -159 */ + {0x099A80CE, 0x80A307D7}, /* -206, 2458, 2007, -163 */ + {0x096D80CA, 0x80A70804}, /* -202, 2413, 2052, -167 */ + {0x094180C6, 0x80AC0831}, /* -198, 2369, 2097, -172 */ + {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ + {0x08E780BE, 0x80B5088C}, /* -190, 2279, 2188, -181 */ + {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ + {0x088C80B5, 0x80BE08E7}, /* -181, 2188, 2279, -190 */ + {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ + {0x083180AC, 0x80C60941}, /* -172, 2097, 2369, -198 */ + {0x080480A7, 0x80CA096D}, /* -167, 2052, 2413, -202 */ + {0x07D780A3, 0x80CE099A}, /* -163, 2007, 2458, -206 */ + {0x07AA809F, 0x80D209C7}, /* -159, 1962, 2503, -210 */ + {0x077D809A, 0x80D709F4}, /* -154, 1917, 2548, -215 */ + {0x07518096, 0x80DB0A20}, /* -150, 1873, 2592, -219 */ + {0x07248091, 0x80DF0A4C}, /* -145, 1828, 2636, -223 */ + {0x06F7808D, 0x80E20A78}, /* -141, 1783, 2680, -226 */ + {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ + {0x069E8084, 0x80EA0AD0}, /* -132, 1694, 2768, -234 */ + {0x06738080, 0x80ED0AFA}, /* -128, 1651, 2810, -237 */ + {0x0647807C, 0x80F10B26}, /* -124, 1607, 2854, -241 */ + {0x061B8077, 0x80F40B50}, /* -119, 1563, 2896, -244 */ + {0x05F18074, 0x80F70B7A}, /* -116, 1521, 2938, -247 */ + {0x05C68070, 0x80FA0BA4}, /* -112, 1478, 2980, -250 */ + {0x059C806C, 0x80FE0BCE}, /* -108, 1436, 3022, -254 */ + {0x05728068, 0x81000BF6}, /* -104, 1394, 3062, -256 */ + {0x05478064, 0x81030C20}, /* -100, 1351, 3104, -259 */ + {0x051E8061, 0x81050C48}, /* -97, 1310, 3144, -261 */ + {0x04F4805D, 0x81070C70}, /* -93, 1268, 3184, -263 */ + {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ + {0x04A38056, 0x810A0CBD}, /* -86, 1187, 3261, -266 */ + {0x047A8052, 0x810B0CE3}, /* -82, 1146, 3299, -267 */ + {0x0453804F, 0x810C0D08}, /* -79, 1107, 3336, -268 */ + {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ + {0x04048048, 0x810D0D51}, /* -72, 1028, 3409, -269 */ + {0x03DE8045, 0x810D0D74}, /* -69, 990, 3444, -269 */ + {0x03B88042, 0x810E0D98}, /* -66, 952, 3480, -270 */ + {0x0393803F, 0x810D0DB9}, /* -63, 915, 3513, -269 */ + {0x036E803C, 0x810C0DDA}, /* -60, 878, 3546, -268 */ + {0x03498039, 0x810B0DFB}, /* -57, 841, 3579, -267 */ + {0x03258036, 0x81090E1A}, /* -54, 805, 3610, -265 */ + {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ + {0x02DE8031, 0x81050E58}, /* -49, 734, 3672, -261 */ + {0x02BC802E, 0x81020E74}, /* -46, 700, 3700, -258 */ + {0x0299802B, 0x80FF0E91}, /* -43, 665, 3729, -255 */ + {0x02788029, 0x80FB0EAC}, /* -41, 632, 3756, -251 */ + {0x02578027, 0x80F70EC7}, /* -39, 599, 3783, -247 */ + {0x02378024, 0x80F30EE0}, /* -36, 567, 3808, -243 */ + {0x02178022, 0x80EE0EF9}, /* -34, 535, 3833, -238 */ + {0x01FA8021, 0x80EA0F11}, /* -33, 506, 3857, -234 */ + {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ + {0x01BE801D, 0x80DE0F3D}, /* -29, 446, 3901, -222 */ + {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ + {0x01848019, 0x80D00F65}, /* -25, 388, 3941, -208 */ + {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ + {0x014D8015, 0x80C00F88}, /* -21, 333, 3976, -192 */ + {0x01328014, 0x80B70F99}, /* -20, 306, 3993, -183 */ + {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ + {0x00FF8010, 0x80A40FB5}, /* -16, 255, 4021, -164 */ + {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ + {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ + {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ + {0x00A0800A, 0x80760FE0}, /* -10, 160, 4064, -118 */ + {0x00898009, 0x806A0FEA}, /* -9, 137, 4074, -106 */ + {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ + {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ + {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ + {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ + {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ + {0x00118001, 0x80111001}, /* -1, 17, 4097, -17 */ + {0x10000000, 0x00000000}, /* 0, 4096, 0, 0 */ + {0x10018011, 0x80010011}, /* -17, 4097, 17, -1 */ + {0x10008021, 0x80020023}, /* -33, 4096, 35, -2 */ + {0x0FFE8031, 0x80030036}, /* -49, 4094, 54, -3 */ + {0x0FFB8040, 0x8005004A}, /* -64, 4091, 74, -5 */ + {0x0FF6804E, 0x8006005E}, /* -78, 4086, 94, -6 */ + {0x0FF0805C, 0x80070073}, /* -92, 4080, 115, -7 */ + {0x0FEB806A, 0x80090088}, /* -106, 4075, 136, -9 */ + {0x0FE18076, 0x800A009F}, /* -118, 4065, 159, -10 */ + {0x0FD98082, 0x800C00B5}, /* -130, 4057, 181, -12 */ + {0x0FCE808E, 0x800D00CD}, /* -142, 4046, 205, -13 */ + {0x0FC38099, 0x800F00E5}, /* -153, 4035, 229, -15 */ + {0x0FB680A4, 0x801000FE}, /* -164, 4022, 254, -16 */ + {0x0FA880AD, 0x80120117}, /* -173, 4008, 279, -18 */ + {0x0F9A80B7, 0x80140131}, /* -183, 3994, 305, -20 */ + {0x0F8980C0, 0x8015014C}, /* -192, 3977, 332, -21 */ + {0x0F7880C8, 0x80170167}, /* -200, 3960, 359, -23 */ + {0x0F6680D0, 0x80190183}, /* -208, 3942, 387, -25 */ + {0x0F5280D7, 0x801B01A0}, /* -215, 3922, 416, -27 */ + {0x0F3E80DE, 0x801D01BD}, /* -222, 3902, 445, -29 */ + {0x0F2880E4, 0x801F01DB}, /* -228, 3880, 475, -31 */ + {0x0F1180EA, 0x802101FA}, /* -234, 3857, 506, -33 */ + {0x0EF880EE, 0x80220218}, /* -238, 3832, 536, -34 */ + {0x0EDF80F3, 0x80240238}, /* -243, 3807, 568, -36 */ + {0x0EC680F7, 0x80270258}, /* -247, 3782, 600, -39 */ + {0x0EAB80FB, 0x80290279}, /* -251, 3755, 633, -41 */ + {0x0E9080FF, 0x802B029A}, /* -255, 3728, 666, -43 */ + {0x0E748102, 0x802E02BC}, /* -258, 3700, 700, -46 */ + {0x0E588105, 0x803102DE}, /* -261, 3672, 734, -49 */ + {0x0E388107, 0x80330302}, /* -263, 3640, 770, -51 */ + {0x0E1A8109, 0x80360325}, /* -265, 3610, 805, -54 */ + {0x0DFB810B, 0x80390349}, /* -267, 3579, 841, -57 */ + {0x0DDB810C, 0x803C036D}, /* -268, 3547, 877, -60 */ + {0x0DBA810D, 0x803F0392}, /* -269, 3514, 914, -63 */ + {0x0D98810E, 0x804203B8}, /* -270, 3480, 952, -66 */ + {0x0D74810D, 0x804503DE}, /* -269, 3444, 990, -69 */ + {0x0D50810D, 0x80480405}, /* -269, 3408, 1029, -72 */ + {0x0D2C810C, 0x804B042B}, /* -268, 3372, 1067, -75 */ + {0x0D08810C, 0x804F0453}, /* -268, 3336, 1107, -79 */ + {0x0CE3810B, 0x8052047A}, /* -267, 3299, 1146, -82 */ + {0x0CBD810A, 0x805604A3}, /* -266, 3261, 1187, -86 */ + {0x0C968108, 0x805904CB}, /* -264, 3222, 1227, -89 */ + {0x0C708107, 0x805D04F4}, /* -263, 3184, 1268, -93 */ + {0x0C488105, 0x8061051E}, /* -261, 3144, 1310, -97 */ + {0x0C208103, 0x80640547}, /* -259, 3104, 1351, -100 */ + {0x0BF78100, 0x80680571}, /* -256, 3063, 1393, -104 */ + {0x0BCF80FE, 0x806C059B}, /* -254, 3023, 1435, -108 */ + {0x0BA480FA, 0x807005C6}, /* -250, 2980, 1478, -112 */ + {0x0B7A80F7, 0x807405F1}, /* -247, 2938, 1521, -116 */ + {0x0B4F80F4, 0x8077061C}, /* -244, 2895, 1564, -119 */ + {0x0B2580F1, 0x807C0648}, /* -241, 2853, 1608, -124 */ + {0x0AFA80ED, 0x80800673}, /* -237, 2810, 1651, -128 */ + {0x0ACF80EA, 0x8084069F}, /* -234, 2767, 1695, -132 */ + {0x0AA380E6, 0x808806CB}, /* -230, 2723, 1739, -136 */ + {0x0A7880E2, 0x808D06F7}, /* -226, 2680, 1783, -141 */ + {0x0A4C80DF, 0x80910724}, /* -223, 2636, 1828, -145 */ + {0x0A2080DB, 0x80960751}, /* -219, 2592, 1873, -150 */ + {0x09F480D7, 0x809A077D}, /* -215, 2548, 1917, -154 */ + {0x09C780D2, 0x809F07AA}, /* -210, 2503, 1962, -159 */ + {0x099A80CE, 0x80A307D7}, /* -206, 2458, 2007, -163 */ + {0x096D80CA, 0x80A70804}, /* -202, 2413, 2052, -167 */ + {0x094180C6, 0x80AC0831}, /* -198, 2369, 2097, -172 */ + {0x091380C1, 0x80B0085E}, /* -193, 2323, 2142, -176 */ + {0x08E780BE, 0x80B5088C}, /* -190, 2279, 2188, -181 */ + {0x08B980B9, 0x80B908B9}, /* -185, 2233, 2233, -185 */ + {0x088C80B5, 0x80BE08E7}, /* -181, 2188, 2279, -190 */ + {0x085E80B0, 0x80C10913}, /* -176, 2142, 2323, -193 */ + {0x083180AC, 0x80C60941}, /* -172, 2097, 2369, -198 */ + {0x080480A7, 0x80CA096D}, /* -167, 2052, 2413, -202 */ + {0x07D780A3, 0x80CE099A}, /* -163, 2007, 2458, -206 */ + {0x07AA809F, 0x80D209C7}, /* -159, 1962, 2503, -210 */ + {0x077D809A, 0x80D709F4}, /* -154, 1917, 2548, -215 */ + {0x07518096, 0x80DB0A20}, /* -150, 1873, 2592, -219 */ + {0x07248091, 0x80DF0A4C}, /* -145, 1828, 2636, -223 */ + {0x06F7808D, 0x80E20A78}, /* -141, 1783, 2680, -226 */ + {0x06CA8088, 0x80E60AA4}, /* -136, 1738, 2724, -230 */ + {0x069E8084, 0x80EA0AD0}, /* -132, 1694, 2768, -234 */ + {0x06738080, 0x80ED0AFA}, /* -128, 1651, 2810, -237 */ + {0x0647807C, 0x80F10B26}, /* -124, 1607, 2854, -241 */ + {0x061B8077, 0x80F40B50}, /* -119, 1563, 2896, -244 */ + {0x05F18074, 0x80F70B7A}, /* -116, 1521, 2938, -247 */ + {0x05C68070, 0x80FA0BA4}, /* -112, 1478, 2980, -250 */ + {0x059C806C, 0x80FE0BCE}, /* -108, 1436, 3022, -254 */ + {0x05728068, 0x81000BF6}, /* -104, 1394, 3062, -256 */ + {0x05478064, 0x81030C20}, /* -100, 1351, 3104, -259 */ + {0x051E8061, 0x81050C48}, /* -97, 1310, 3144, -261 */ + {0x04F4805D, 0x81070C70}, /* -93, 1268, 3184, -263 */ + {0x04CB8059, 0x81080C96}, /* -89, 1227, 3222, -264 */ + {0x04A38056, 0x810A0CBD}, /* -86, 1187, 3261, -266 */ + {0x047A8052, 0x810B0CE3}, /* -82, 1146, 3299, -267 */ + {0x0453804F, 0x810C0D08}, /* -79, 1107, 3336, -268 */ + {0x042B804B, 0x810C0D2C}, /* -75, 1067, 3372, -268 */ + {0x04048048, 0x810D0D51}, /* -72, 1028, 3409, -269 */ + {0x03DE8045, 0x810D0D74}, /* -69, 990, 3444, -269 */ + {0x03B88042, 0x810E0D98}, /* -66, 952, 3480, -270 */ + {0x0393803F, 0x810D0DB9}, /* -63, 915, 3513, -269 */ + {0x036E803C, 0x810C0DDA}, /* -60, 878, 3546, -268 */ + {0x03498039, 0x810B0DFB}, /* -57, 841, 3579, -267 */ + {0x03258036, 0x81090E1A}, /* -54, 805, 3610, -265 */ + {0x03018033, 0x81070E39}, /* -51, 769, 3641, -263 */ + {0x02DE8031, 0x81050E58}, /* -49, 734, 3672, -261 */ + {0x02BC802E, 0x81020E74}, /* -46, 700, 3700, -258 */ + {0x0299802B, 0x80FF0E91}, /* -43, 665, 3729, -255 */ + {0x02788029, 0x80FB0EAC}, /* -41, 632, 3756, -251 */ + {0x02578027, 0x80F70EC7}, /* -39, 599, 3783, -247 */ + {0x02378024, 0x80F30EE0}, /* -36, 567, 3808, -243 */ + {0x02178022, 0x80EE0EF9}, /* -34, 535, 3833, -238 */ + {0x01FA8021, 0x80EA0F11}, /* -33, 506, 3857, -234 */ + {0x01DC801F, 0x80E40F27}, /* -31, 476, 3879, -228 */ + {0x01BE801D, 0x80DE0F3D}, /* -29, 446, 3901, -222 */ + {0x01A1801B, 0x80D70F51}, /* -27, 417, 3921, -215 */ + {0x01848019, 0x80D00F65}, /* -25, 388, 3941, -208 */ + {0x01688017, 0x80C80F77}, /* -23, 360, 3959, -200 */ + {0x014D8015, 0x80C00F88}, /* -21, 333, 3976, -192 */ + {0x01328014, 0x80B70F99}, /* -20, 306, 3993, -183 */ + {0x01188012, 0x80AD0FA7}, /* -18, 280, 4007, -173 */ + {0x00FF8010, 0x80A40FB5}, /* -16, 255, 4021, -164 */ + {0x00E6800F, 0x80990FC2}, /* -15, 230, 4034, -153 */ + {0x00CE800D, 0x808E0FCD}, /* -13, 206, 4045, -142 */ + {0x00B6800C, 0x80820FD8}, /* -12, 182, 4056, -130 */ + {0x00A0800A, 0x80760FE0}, /* -10, 160, 4064, -118 */ + {0x00898009, 0x806A0FEA}, /* -9, 137, 4074, -106 */ + {0x00748007, 0x805C0FEF}, /* -7, 116, 4079, -92 */ + {0x005F8006, 0x804E0FF5}, /* -6, 95, 4085, -78 */ + {0x004B8005, 0x80400FFA}, /* -5, 75, 4090, -64 */ + {0x00378003, 0x80310FFD}, /* -3, 55, 4093, -49 */ + {0x00238002, 0x80211000}, /* -2, 35, 4096, -33 */ + {0x00118001, 0x80111001}, /* -1, 17, 4097, -17 */ }; diff --git a/src/cim/cim_gp.c b/src/cim/cim_gp.c index 7c4bc5b..2085d4f 100644 --- a/src/cim/cim_gp.c +++ b/src/cim/cim_gp.c @@ -89,7 +89,7 @@ gp_set_limit_on_buffer_lead(unsigned long lead) void gp_set_command_buffer_base(unsigned long address, unsigned long start, - unsigned long stop) + unsigned long stop) { Q_WORD msr_value; @@ -262,7 +262,8 @@ gp_declare_blt(unsigned long flags) /* command buffer. */ GP3_WAIT_WRAP(temp); - } else { + } + else { gp3_cmd_header = GP3_BLT_HDR_TYPE; /* WAIT FOR AVAILABLE SPACE */ @@ -274,7 +275,7 @@ gp_declare_blt(unsigned long flags) while (1) { temp = READ_GP32(GP3_CMD_READ); if (((gp3_cmd_current >= temp) - && ((gp3_cmd_current - temp) <= gp3_buffer_lead)) + && ((gp3_cmd_current - temp) <= gp3_buffer_lead)) || ((gp3_cmd_current < temp) && ((gp3_cmd_current + (gp3_cmd_bottom - temp)) <= gp3_buffer_lead))) { @@ -330,7 +331,8 @@ gp_declare_vector(unsigned long flags) /* CHECK WRAP CONDITION */ GP3_WAIT_WRAP(temp); - } else { + } + else { gp3_cmd_header = GP3_VEC_HDR_TYPE; /* WAIT FOR AVAILABLE SPACE */ @@ -344,7 +346,7 @@ gp_declare_vector(unsigned long flags) while (1) { temp = READ_GP32(GP3_CMD_READ); if (((gp3_cmd_current >= temp) - && ((gp3_cmd_current - temp) <= gp3_buffer_lead)) + && ((gp3_cmd_current - temp) <= gp3_buffer_lead)) || ((gp3_cmd_current < temp) && ((gp3_cmd_current + (gp3_cmd_bottom - temp)) <= gp3_buffer_lead))) { @@ -406,7 +408,7 @@ gp_set_raster_operation(unsigned char ROP) /* WRITE THE RASTER MODE REGISTER */ /* This register is in the same location in BLT and vector commands */ - gp3_raster_mode = gp3_bpp | (unsigned long)ROP; + gp3_raster_mode = gp3_bpp | (unsigned long) ROP; WRITE_COMMAND32(GP3_BLT_RASTER_MODE, gp3_raster_mode); /* CHECK IF DESTINATION IS REQUIRED */ @@ -414,7 +416,8 @@ gp_set_raster_operation(unsigned char ROP) if ((ROP & 0x55) ^ ((ROP >> 1) & 0x55)) { gp3_blt_mode = GP3_BM_DST_REQ; gp3_vec_mode = GP3_VM_DST_REQ; - } else { + } + else { gp3_blt_mode = gp3_vec_mode = 0; } } @@ -461,7 +464,7 @@ gp_set_raster_operation(unsigned char ROP) void gp_set_alpha_operation(int alpha_operation, int alpha_type, int channel, - int apply_alpha, unsigned char alpha) + int apply_alpha, unsigned char alpha) { gp3_cmd_header |= GP3_BLT_HDR_RASTER_ENABLE; @@ -470,25 +473,26 @@ gp_set_alpha_operation(int alpha_operation, int alpha_type, int channel, /* also implies that there is no mechanism to detect invalid */ /* parameters. */ - gp3_raster_mode = gp3_bpp | (unsigned long)alpha | - ((unsigned long)apply_alpha << 22) | - ((unsigned long)alpha_operation << 20) | - ((unsigned long)alpha_type << 17) | ((unsigned long)channel << 16); + gp3_raster_mode = gp3_bpp | (unsigned long) alpha | + ((unsigned long) apply_alpha << 22) | + ((unsigned long) alpha_operation << 20) | + ((unsigned long) alpha_type << 17) | ((unsigned long) channel << 16); WRITE_COMMAND32(GP3_BLT_RASTER_MODE, gp3_raster_mode); /* CHECK IF DESTINATION IS REQUIRED */ if ((alpha_operation == CIMGP_ALPHA_TIMES_A && - channel == CIMGP_CHANNEL_A_SOURCE && - alpha_type != CIMGP_CHANNEL_B_ALPHA && - alpha_type != CIMGP_ALPHA_FROM_RGB_B) || + channel == CIMGP_CHANNEL_A_SOURCE && + alpha_type != CIMGP_CHANNEL_B_ALPHA && + alpha_type != CIMGP_ALPHA_FROM_RGB_B) || (alpha_operation == CIMGP_BETA_TIMES_B && - channel == CIMGP_CHANNEL_A_DEST && - alpha_type != CIMGP_CHANNEL_A_ALPHA && - alpha_type != CIMGP_ALPHA_FROM_RGB_A)) { + channel == CIMGP_CHANNEL_A_DEST && + alpha_type != CIMGP_CHANNEL_A_ALPHA && + alpha_type != CIMGP_ALPHA_FROM_RGB_A)) { gp3_blt_mode = 0; - } else + } + else gp3_blt_mode = GP3_BM_DST_REQ; } @@ -518,7 +522,8 @@ gp_set_solid_pattern(unsigned long color) gp3_cmd_header |= GP3_BLT_HDR_PAT_CLR0_ENABLE; WRITE_COMMAND32(GP3_BLT_PAT_COLOR_0, color); - } else { + } + else { gp3_cmd_header |= GP3_VEC_HDR_PAT_CLR0_ENABLE; WRITE_COMMAND32(GP3_VECTOR_PAT_COLOR_0, color); @@ -534,7 +539,8 @@ gp_set_solid_pattern(unsigned long color) void gp_set_mono_pattern(unsigned long bgcolor, unsigned long fgcolor, - unsigned long data0, unsigned long data1, int transparent, int x, int y) + unsigned long data0, unsigned long data1, int transparent, + int x, int y) { /* CHANNEL 3 IS NOT NEEDED FOR MONOCHROME PATTERNS */ @@ -556,16 +562,17 @@ gp_set_mono_pattern(unsigned long bgcolor, unsigned long fgcolor, if (gp3_blt) { gp3_cmd_header |= (GP3_BLT_HDR_PAT_CLR0_ENABLE | GP3_BLT_HDR_PAT_CLR1_ENABLE | - GP3_BLT_HDR_PAT_DATA0_ENABLE | GP3_BLT_HDR_PAT_DATA1_ENABLE); + GP3_BLT_HDR_PAT_DATA0_ENABLE | GP3_BLT_HDR_PAT_DATA1_ENABLE); WRITE_COMMAND32(GP3_BLT_PAT_COLOR_0, bgcolor); WRITE_COMMAND32(GP3_BLT_PAT_COLOR_1, fgcolor); WRITE_COMMAND32(GP3_BLT_PAT_DATA_0, data0); WRITE_COMMAND32(GP3_BLT_PAT_DATA_1, data1); - } else { + } + else { gp3_cmd_header |= (GP3_VEC_HDR_PAT_CLR0_ENABLE | GP3_VEC_HDR_PAT_CLR1_ENABLE | - GP3_VEC_HDR_PAT_DATA0_ENABLE | GP3_VEC_HDR_PAT_DATA1_ENABLE); + GP3_VEC_HDR_PAT_DATA0_ENABLE | GP3_VEC_HDR_PAT_DATA1_ENABLE); WRITE_COMMAND32(GP3_VECTOR_PAT_COLOR_0, bgcolor); WRITE_COMMAND32(GP3_VECTOR_PAT_COLOR_1, fgcolor); @@ -575,8 +582,8 @@ gp_set_mono_pattern(unsigned long bgcolor, unsigned long fgcolor, /* SAVE PATTERN ORIGIN */ - gp3_pat_origin = ((unsigned long)y << 29) | - (((unsigned long)x & 7) << 26); + gp3_pat_origin = ((unsigned long) y << 29) | + (((unsigned long) x & 7) << 26); } /*--------------------------------------------------------------------------- @@ -592,8 +599,8 @@ gp_set_pattern_origin(int x, int y) { /* SAVE PATTERN ORIGIN */ - gp3_pat_origin = ((unsigned long)y << 29) | - (((unsigned long)x & 7) << 26); + gp3_pat_origin = ((unsigned long) y << 29) | + (((unsigned long) x & 7) << 26); } /*--------------------------------------------------------------------------- @@ -620,9 +627,9 @@ gp_set_color_pattern(unsigned long *pattern, int format, int x, int y) * 4BPP patterns are not supported. */ - gp3_pat_pix_shift = (unsigned long)((format >> 2) & 3); - gp3_pat_format = (((unsigned long)format & 0xF) << 24) | - (((unsigned long)format & 0x10) << 17) | + gp3_pat_pix_shift = (unsigned long) ((format >> 2) & 3); + gp3_pat_format = (((unsigned long) format & 0xF) << 24) | + (((unsigned long) format & 0x10) << 17) | GP3_CH3_COLOR_PAT_ENABLE | GP3_CH3_C3EN; size_dwords = (64 << gp3_pat_pix_shift) >> 2; @@ -641,7 +648,8 @@ gp_set_color_pattern(unsigned long *pattern, int format, int x, int y) /* Same logic as BLT wrapping. */ GP3_WAIT_WRAP(temp); - } else { + } + else { gp3_cmd_header = GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE; /* WAIT FOR AVAILABLE SPACE */ @@ -671,8 +679,8 @@ gp_set_color_pattern(unsigned long *pattern, int format, int x, int y) /* SAVE PATTERN ORIGIN */ - gp3_pat_origin = ((unsigned long)y << 29) | - (((unsigned long)x & 7) << 26); + gp3_pat_origin = ((unsigned long) y << 29) | + (((unsigned long) x & 7) << 26); } /*--------------------------------------------------------------------------- @@ -683,7 +691,7 @@ gp_set_color_pattern(unsigned long *pattern, int format, int x, int y) void gp_set_mono_source(unsigned long bgcolor, unsigned long fgcolor, - int transparent) + int transparent) { /* UPDATE RASTER MODE REGISTER IF TRANSPARENT */ @@ -784,7 +792,8 @@ gp_program_lut(unsigned long *colors, int full_lut) /* Same logic as BLT wrapping. */ GP3_WAIT_WRAP(temp); - } else { + } + else { gp3_cmd_header = GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE; /* WAIT FOR AVAILABLE SPACE */ @@ -865,7 +874,8 @@ gp_set_vector_pattern(unsigned long pattern, unsigned long color, int length) /* Same logic as BLT wrapping. */ GP3_WAIT_WRAP(temp); - } else { + } + else { gp3_cmd_header = GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE; /* WAIT FOR AVAILABLE SPACE */ @@ -953,9 +963,9 @@ gp_set_source_format(int format) /* of 3 being a special case for 4BPP data. Clever, yes? Even more */ /* clever, bit 4 indicates BGR ordering. */ - gp3_src_pix_shift = (unsigned long)((format >> 2) & 3); - gp3_src_format = (((unsigned long)format & 0xF) << 24) | - (((unsigned long)format & 0x10) << 18); + gp3_src_pix_shift = (unsigned long) ((format >> 2) & 3); + gp3_src_format = (((unsigned long) format & 0xF) << 24) | + (((unsigned long) format & 0x10) << 18); } /*--------------------------------------------------------------------------- @@ -968,7 +978,7 @@ gp_set_source_format(int format) void gp_pattern_fill(unsigned long dstoffset, unsigned long width, - unsigned long height) + unsigned long height) { unsigned long base_register; @@ -1006,12 +1016,13 @@ gp_pattern_fill(unsigned long dstoffset, unsigned long width, WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, gp3_pat_origin); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoffset & 0x3FFFFF); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format); - } else { + } + else { /* DISABLE CHANNEL 3 AND USE NORMAL PATTERN ORIGINS */ WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); + ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); } /* START THE BLT */ @@ -1042,7 +1053,7 @@ gp_pattern_fill(unsigned long dstoffset, unsigned long width, void gp_screen_to_screen_blt(unsigned long dstoffset, unsigned long srcoffset, - unsigned long width, unsigned long height, int flags) + unsigned long width, unsigned long height, int flags) { unsigned long base; unsigned long ch3_flags = 0; @@ -1102,11 +1113,12 @@ gp_screen_to_screen_blt(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, - GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | - gp3_ch3_bpp | gp3_src_stride | ch3_flags | - ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | - ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); - } else { + GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | + gp3_ch3_bpp | gp3_src_stride | ch3_flags | + ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | + ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + } + else { /* CALCULATE BASE OFFSET REGISTER */ base = ((gp3_fb_base << 24) + dstbase) | @@ -1133,7 +1145,8 @@ gp_screen_to_screen_blt(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoffset); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format | ch3_flags); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); - } else { + } + else { WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoffset | gp3_pat_origin); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); } @@ -1151,7 +1164,6 @@ gp_screen_to_screen_blt(unsigned long dstoffset, unsigned long srcoffset, gp3_cmd_current = gp3_cmd_next; } - /*--------------------------------------------------------------------------- * gp_screen_to_screen_convert * @@ -1162,7 +1174,8 @@ gp_screen_to_screen_blt(unsigned long dstoffset, unsigned long srcoffset, void gp_screen_to_screen_convert(unsigned long dstoffset, unsigned long srcoffset, - unsigned long width, unsigned long height, int nibble) + unsigned long width, unsigned long height, + int nibble) { unsigned long size = ((width << 16) | height); unsigned long ch3_offset = srcoffset & 0x3FFFFF; @@ -1195,14 +1208,15 @@ gp_screen_to_screen_convert(unsigned long dstoffset, unsigned long srcoffset, /* WRITE ALL BLT REGISTERS */ WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - (dstoffset & 0x3FFFFF) | gp3_pat_origin); + (dstoffset & 0x3FFFFF) | gp3_pat_origin); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, ch3_size); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, ch3_offset); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, - GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | gp3_src_format | - ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20) | - ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | gp3_src_stride); + GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | gp3_src_format | + ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20) | + ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | + gp3_src_stride); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); /* START THE BLT */ @@ -1223,8 +1237,8 @@ gp_screen_to_screen_convert(unsigned long dstoffset, unsigned long srcoffset, void gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, unsigned char *data, - long pitch) + unsigned long width, unsigned long height, + unsigned char *data, long pitch) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -1261,16 +1275,17 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND32(GP3_BLT_DST_OFFSET, (dstoffset & 0x3FFFFF)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); - } else { + } + else { WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); + ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); } WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, indent); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, - ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); + ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); WRITE_COMMAND32(GP3_BLT_MODE, gp3_blt_mode | GP3_BM_SRC_HOST); /* START THE BLT */ @@ -1304,12 +1319,13 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -1321,7 +1337,7 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); srcoffset += pitch; cim_cmd_ptr += total_dwords << 2; @@ -1329,7 +1345,8 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; - } else { + } + else { /* * Each line will be created as a separate command buffer entry to * allow line-by-line wrapping and to allow simultaneous rendering @@ -1355,13 +1372,15 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -1372,7 +1391,7 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -1393,8 +1412,8 @@ gp_color_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, void gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, - unsigned char *data, long pitch) + unsigned long width, unsigned long height, + unsigned char *data, long pitch) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -1427,7 +1446,8 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, ch3_offset = 0; temp = width * 3; ch3_size = (((temp + 3) >> 2) << 16) | height; - } else { + } + else { ch3_size = size; if (gp3_src_pix_shift == 3) { @@ -1439,7 +1459,8 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, ch3_offset = indent | ((srcx & 1) << 25); temp = ((width + (srcx & 1) + 1) >> 1) + indent; - } else { + } + else { indent = (srcx << gp3_src_pix_shift); srcoffset = (indent & ~3L); indent &= 3; @@ -1467,14 +1488,15 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_BLT_HDR_BASE_OFFSET_ENABLE | GP3_BLT_HDR_BLT_MODE_ENABLE; WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - (dstoffset & 0x3FFFFF) | gp3_pat_origin); + (dstoffset & 0x3FFFFF) | gp3_pat_origin); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, ch3_offset); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, ch3_size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | - gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | + gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) + << 20)); WRITE_COMMAND32(GP3_BLT_MODE, gp3_blt_mode); /* START THE BLT */ @@ -1498,24 +1520,24 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ - WRITE_COMMAND32(4, GP3_CH3_HOST_SOURCE_TYPE | - (total_dwords * height)); + WRITE_COMMAND32(4, GP3_CH3_HOST_SOURCE_TYPE | (total_dwords * height)); while (height--) { /* WRITE DATA */ WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); srcoffset += pitch; cim_cmd_ptr += total_dwords << 2; @@ -1523,7 +1545,8 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; - } else { + } + else { /* WRITE DATA LINE BY LINE * Each line will be created as a separate command buffer entry to * allow line-by-line wrapping and to allow simultaneous rendering @@ -1549,13 +1572,15 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -1566,7 +1591,7 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -1589,8 +1614,8 @@ gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, void gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, - unsigned char *data, long pitch) + unsigned long width, unsigned long height, + unsigned char *data, long pitch) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -1622,7 +1647,8 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, ch3_offset = 0; temp = width * 3; ch3_size = (((temp + 3) >> 2) << 16) | height; - } else { + } + else { ch3_size = size; if (gp3_src_pix_shift == 3) { @@ -1634,7 +1660,8 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, ch3_offset = indent | ((srcx & 1) << 25); temp = ((width + (srcx & 1) + 1) >> 1) + indent; - } else { + } + else { indent = (srcx << gp3_src_pix_shift); srcoffset = (indent & ~3L); indent &= 3; @@ -1662,14 +1689,15 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_BLT_HDR_BASE_OFFSET_ENABLE | GP3_BLT_HDR_BLT_MODE_ENABLE; WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - (dstoffset & 0x3FFFFF) | gp3_pat_origin); + (dstoffset & 0x3FFFFF) | gp3_pat_origin); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, ch3_offset); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, ch3_size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | - gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | + gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) + << 20)); WRITE_COMMAND32(GP3_BLT_MODE, gp3_blt_mode); /* START THE BLT */ @@ -1693,25 +1721,26 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ - WRITE_COMMAND32(4, - GP3_CH3_HOST_SOURCE_TYPE | (total_dwords * height)); + WRITE_COMMAND32(4, GP3_CH3_HOST_SOURCE_TYPE | (total_dwords * height)); while (height--) { /* WRITE DATA */ WRITE_CUSTOM_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_CUSTOM_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), + byte_count); srcoffset += pitch; cim_cmd_ptr += total_dwords << 2; @@ -1719,7 +1748,8 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; - } else { + } + else { /* WRITE DATA LINE BY LINE * Each line will be created as a separate command buffer entry to * allow line-by-line wrapping and to allow simultaneous rendering @@ -1745,14 +1775,16 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP + | GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -1763,7 +1795,8 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, WRITE_CUSTOM_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_CUSTOM_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), + byte_count); /* UPDATE POINTERS */ @@ -1786,7 +1819,7 @@ gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, void gp_rotate_blt(unsigned long dstoffset, unsigned long srcoffset, - unsigned long width, unsigned long height, int degrees) + unsigned long width, unsigned long height, int degrees) { unsigned long sizein, sizeout; unsigned long ch3_flags; @@ -1852,8 +1885,9 @@ gp_rotate_blt(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, sizein); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, srcoffset); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, ch3_flags | gp3_src_format | - ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20) | - ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | gp3_src_stride); + ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20) | + ((gp3_blt_flags & CIMGP_ENABLE_PREFETCH) << 17) | + gp3_src_stride); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); /* START THE BLT */ @@ -1878,8 +1912,8 @@ gp_rotate_blt(unsigned long dstoffset, unsigned long srcoffset, void gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, - unsigned char *data, long stride) + unsigned long width, unsigned long height, + unsigned char *data, long stride) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -1918,24 +1952,26 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND32(GP3_BLT_DST_OFFSET, (dstoffset & 0x3FFFFF)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); - } else { + } + else { WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); + ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); } if (gp3_blt_flags & CIMGP_BLTFLAGS_INVERTMONO) { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode | GP3_RM_SOURCE_INVERT); - } else { + gp3_raster_mode | GP3_RM_SOURCE_INVERT); + } + else { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); + gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); } WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, src_value); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, - ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); + ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); WRITE_COMMAND32(GP3_BLT_MODE, - gp3_blt_mode | GP3_BM_SRC_HOST | GP3_BM_SRC_MONO); + gp3_blt_mode | GP3_BM_SRC_HOST | GP3_BM_SRC_MONO); /* START THE BLT */ @@ -1971,12 +2007,13 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -1988,7 +2025,7 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); srcoffset += stride; cim_cmd_ptr += total_dwords << 2; @@ -1996,7 +2033,8 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; - } else { + } + else { /* WRITE DATA LINE BY LINE * Each line will be created as a separate command buffer entry to * allow line-by-line wrapping and to allow simultaneous rendering @@ -2022,14 +2060,16 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP + | GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2040,7 +2080,7 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -2060,7 +2100,7 @@ gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, unsigned long srcx, void gp_text_blt(unsigned long dstoffset, unsigned long width, - unsigned long height, unsigned char *data) + unsigned long height, unsigned char *data) { unsigned long temp, dwords_total; unsigned long dword_count, byte_count; @@ -2087,25 +2127,27 @@ gp_text_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND32(GP3_BLT_DST_OFFSET, (dstoffset & 0x3FFFFF)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); - } else { + } + else { WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); + ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); } if (gp3_blt_flags & CIMGP_BLTFLAGS_INVERTMONO) { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode | GP3_RM_SOURCE_INVERT); - } else { + gp3_raster_mode | GP3_RM_SOURCE_INVERT); + } + else { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); + gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); } WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, 0); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, - ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); + ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000))); WRITE_COMMAND32(GP3_BLT_MODE, - gp3_blt_mode | GP3_BM_SRC_HOST | GP3_BM_SRC_BP_MONO); + gp3_blt_mode | GP3_BM_SRC_HOST | GP3_BM_SRC_BP_MONO); /* START THE BLT */ @@ -2129,7 +2171,8 @@ gp_text_blt(unsigned long dstoffset, unsigned long width, byte_count = 0; dwords_total = 2048; size -= 8192; - } else { + } + else { dword_count = (size >> 2); byte_count = (size & 3); dwords_total = (size + 3) >> 2; @@ -2146,14 +2189,15 @@ gp_text_blt(unsigned long dstoffset, unsigned long width, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2164,7 +2208,7 @@ gp_text_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; @@ -2190,8 +2234,8 @@ gp_text_blt(unsigned long dstoffset, unsigned long width, void gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, - unsigned long srcx, unsigned long width, - unsigned long height, int byte_packed) + unsigned long srcx, unsigned long width, + unsigned long height, int byte_packed) { unsigned long base; unsigned long blt_mode; @@ -2234,22 +2278,23 @@ gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_DST_OFFSET, (dstoffset & 0x3FFFFF)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, gp3_pat_format); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); - } else { + } + else { WRITE_COMMAND32(GP3_BLT_DST_OFFSET, - ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); + ((dstoffset & 0x3FFFFF) | gp3_pat_origin)); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, 0); } if (gp3_blt_flags & CIMGP_BLTFLAGS_INVERTMONO) { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode | GP3_RM_SOURCE_INVERT); - } else { + gp3_raster_mode | GP3_RM_SOURCE_INVERT); + } + else { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); + gp3_raster_mode & ~GP3_RM_SOURCE_INVERT); } WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); - WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, - (srcoffset & 0x3FFFFF) | (srcx << 26)); + WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, (srcoffset & 0x3FFFFF) | (srcx << 26)); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size); /* WORKAROUND FOR SIBZ #3744 @@ -2271,8 +2316,7 @@ gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, size1 = ((8 - srcx) << 16) | 1; size2 = ((width + srcx - 8) << 16) | 1; org1 = gp3_pat_origin; - org2 = (org1 & 0xE0000000) | - ((org1 + ((8 - srcx) << 26)) & 0x1C000000); + org2 = (org1 & 0xE0000000) | ((org1 + ((8 - srcx) << 26)) & 0x1C000000); dstoff1 = dstoffset & 0x3FFFFF; dstoff2 = (dstoff1 + 8 - srcx) << gp3_pix_shift; @@ -2282,7 +2326,7 @@ gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, size1); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size1); WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, - (srcoffset & 0x3FFFFF) | (srcx << 26)); + (srcoffset & 0x3FFFFF) | (srcx << 26)); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoff1 | org1); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, org1); WRITE_COMMAND32(GP3_BLT_CMD_HEADER, gp3_cmd_header); @@ -2328,12 +2372,10 @@ gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, GP3_BLT_HDR_WIDHI_ENABLE | GP3_BLT_HDR_BLT_MODE_ENABLE | GP3_BLT_HDR_CH3_OFF_ENABLE | GP3_BLT_HDR_CH3_WIDHI_ENABLE; - WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, - (width << 16) | tempheight); - WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, - (width << 16) | tempheight); + WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, (width << 16) | tempheight); + WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, (width << 16) | tempheight); WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, - (srcoffset & 0x3FFFFF) | (srcx << 26)); + (srcoffset & 0x3FFFFF) | (srcx << 26)); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoff1 | org1); WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, org1); WRITE_COMMAND32(GP3_BLT_CMD_HEADER, gp3_cmd_header); @@ -2393,8 +2435,8 @@ gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, void gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, - unsigned char *data, long stride, int fourbpp) + unsigned long width, unsigned long height, + unsigned char *data, long stride, int fourbpp) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -2430,7 +2472,8 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, ch3_offset = indent | ((srcx & 1) << 25); temp = ((width + (srcx & 1) + 1) >> 1) + indent; - } else { + } + else { depth_flag = GP3_CH3_SRC_8BPP_ALPHA; indent = srcx; srcoffset = (indent & ~3L); @@ -2452,14 +2495,17 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, if (gp3_bpp == GP3_RM_BPPFMT_565) { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | - GP3_RM_ALPHA_TO_RGB | - GP3_RM_ALPHA_A_PLUS_BETA_B | GP3_RM_SELECT_ALPHA_CHAN_3); - } else { + gp3_bpp | + GP3_RM_ALPHA_TO_RGB | + GP3_RM_ALPHA_A_PLUS_BETA_B | + GP3_RM_SELECT_ALPHA_CHAN_3); + } + else { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | - GP3_RM_ALPHA_ALL | - GP3_RM_ALPHA_A_PLUS_BETA_B | GP3_RM_SELECT_ALPHA_CHAN_3); + gp3_bpp | + GP3_RM_ALPHA_ALL | + GP3_RM_ALPHA_A_PLUS_BETA_B | + GP3_RM_SELECT_ALPHA_CHAN_3); } /* WRITE ALL REMAINING REGISTERS */ @@ -2470,8 +2516,9 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, size); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_HST_SRC_ENABLE | - depth_flag | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_HST_SRC_ENABLE | + depth_flag | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << + 20)); WRITE_COMMAND32(GP3_BLT_MODE, gp3_blt_mode | GP3_BM_DST_REQ); /* START THE BLT */ @@ -2500,25 +2547,25 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ - WRITE_COMMAND32(4, - GP3_CH3_HOST_SOURCE_TYPE | (total_dwords * height)); + WRITE_COMMAND32(4, GP3_CH3_HOST_SOURCE_TYPE | (total_dwords * height)); while (height--) { /* WRITE DATA */ WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); srcoffset += stride; cim_cmd_ptr += total_dwords << 2; @@ -2526,7 +2573,8 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, WRITE_GP32(GP3_CMD_WRITE, gp3_cmd_next); gp3_cmd_current = gp3_cmd_next; - } else { + } + else { while (height--) { /* UPDATE THE COMMAND POINTER * The WRITE_COMMANDXX macros use a pointer to the current buffer @@ -2546,14 +2594,16 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP + | GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2564,7 +2614,7 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND_STRING32(8, data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -2584,9 +2634,9 @@ gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, void gp_masked_blt(unsigned long dstoffset, unsigned long width, - unsigned long height, unsigned long mono_srcx, - unsigned long color_srcx, unsigned char *mono_mask, - unsigned char *color_data, long mono_pitch, long color_pitch) + unsigned long height, unsigned long mono_srcx, + unsigned long color_srcx, unsigned char *mono_mask, + unsigned char *color_data, long mono_pitch, long color_pitch) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -2627,9 +2677,9 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, 0); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | - GP3_CH3_SRC_8_8_8_8 | - ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | + GP3_CH3_SRC_8_8_8_8 | + ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); WRITE_COMMAND32(GP3_BLT_MODE, 0); WRITE_COMMAND32(GP3_BLT_CMD_HEADER, gp3_cmd_header); @@ -2657,14 +2707,15 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2675,7 +2726,7 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND_STRING32(8, mono_mask, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), mono_mask, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -2690,8 +2741,8 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, base = ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000)) | ((gp3_fb_base << 14) + (((gp3_scratch_base + - indent) & 0xFFC00000) >> 10)) | (gp3_base_register & - GP3_BASE_OFFSET_CH3MASK); + indent) & 0xFFC00000) >> 10)) | + (gp3_base_register & GP3_BASE_OFFSET_CH3MASK); gp3_cmd_header |= GP3_BLT_HDR_RASTER_ENABLE | GP3_BLT_HDR_STRIDE_ENABLE | GP3_BLT_HDR_DST_OFF_ENABLE | @@ -2707,11 +2758,12 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, */ WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | 0xF0 | GP3_RM_SRC_TRANS | flags); + gp3_bpp | 0xF0 | GP3_RM_SRC_TRANS | flags); WRITE_COMMAND32(GP3_BLT_STRIDE, (total_dwords << 18) | gp3_dst_stride); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoffset & 0x3FFFFF); WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, - ((gp3_scratch_base + indent) & 0x3FFFFF) | ((mono_srcx & 7) << 26)); + ((gp3_scratch_base + + indent) & 0x3FFFFF) | ((mono_srcx & 7) << 26)); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, (width << 16) | height); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, (width << 16) | height); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); @@ -2724,9 +2776,9 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, ch3_offset = 0; size = width * 3; - WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, - (((size + 3) >> 2) << 16) | height); - } else if (gp3_src_pix_shift == 3) { + WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, (((size + 3) >> 2) << 16) | height); + } + else if (gp3_src_pix_shift == 3) { /* CALCULATE INDENT AND SOURCE OFFSET */ indent = (color_srcx >> 1); @@ -2735,7 +2787,8 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, ch3_offset = indent | ((color_srcx & 1) << 25); size = ((width + (color_srcx & 1) + 1) >> 1) + indent; - } else { + } + else { indent = (color_srcx << gp3_src_pix_shift); srcoffset = (indent & ~3L); indent &= 3; @@ -2751,10 +2804,11 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, ch3_offset); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_HST_SRC_ENABLE | - gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_HST_SRC_ENABLE | + gp3_src_format | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) + << 20)); WRITE_COMMAND32(GP3_BLT_MODE, - gp3_blt_mode | GP3_BM_SRC_MONO | GP3_BM_SRC_FB); + gp3_blt_mode | GP3_BM_SRC_MONO | GP3_BM_SRC_FB); /* START THE BLT */ @@ -2777,12 +2831,13 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | - GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_WRAP | + GP3_DATA_LOAD_HDR_ENABLE); + } + else { GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, - GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_TYPE | GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2793,7 +2848,7 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, WRITE_COMMAND_STRING32(8, color_data, srcoffset, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), color_data, - srcoffset + (dword_count << 2), byte_count); + srcoffset + (dword_count << 2), byte_count); /* UPDATE COMMAND BUFFER POINTERS */ /* We do this before writing the monochrome data because otherwise */ @@ -2817,8 +2872,9 @@ gp_masked_blt(unsigned long dstoffset, unsigned long width, void gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, - unsigned long width, unsigned long height, - unsigned long mono_srcx, unsigned char *mono_mask, long mono_pitch) + unsigned long width, unsigned long height, + unsigned long mono_srcx, unsigned char *mono_mask, + long mono_pitch) { unsigned long indent, temp; unsigned long total_dwords, size_dwords; @@ -2859,9 +2915,9 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, 0); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | - GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | - GP3_CH3_SRC_8_8_8_8 | - ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + GP3_CH3_REPLACE_SOURCE | GP3_CH3_HST_SRC_ENABLE | + GP3_CH3_SRC_8_8_8_8 | + ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); WRITE_COMMAND32(GP3_BLT_MODE, 0); WRITE_COMMAND32(GP3_BLT_CMD_HEADER, gp3_cmd_header); @@ -2889,13 +2945,14 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, GP3_WAIT_WRAP(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); - } else { + GP3_DATA_LOAD_HDR_WRAP | GP3_DATA_LOAD_HDR_ENABLE); + } + else { /* WAIT FOR AVAILABLE SPACE */ GP3_WAIT_PRIMITIVE(temp); WRITE_COMMAND32(0, GP3_DATA_LOAD_HDR_TYPE | - GP3_DATA_LOAD_HDR_ENABLE); + GP3_DATA_LOAD_HDR_ENABLE); } /* WRITE DWORD COUNT */ @@ -2906,7 +2963,7 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND_STRING32(8, mono_mask, srcoff, dword_count); WRITE_COMMAND_STRING8(8 + (dword_count << 2), mono_mask, - srcoff + (dword_count << 2), byte_count); + srcoff + (dword_count << 2), byte_count); /* UPDATE POINTERS */ @@ -2921,8 +2978,11 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, base = ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000)) | ((gp3_fb_base << 14) + (((gp3_scratch_base + - indent) & 0xFFC00000) >> 10)) | ((gp3_fb_base << 4) + - ((srcoffset & 0xFFC00000) >> 20)); + indent) & 0xFFC00000) >> 10)) | ((gp3_fb_base + << 4) + + ((srcoffset & + 0xFFC00000) + >> 20)); gp3_cmd_header |= GP3_BLT_HDR_RASTER_ENABLE | GP3_BLT_HDR_STRIDE_ENABLE | GP3_BLT_HDR_DST_OFF_ENABLE | @@ -2938,11 +2998,12 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, */ WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | 0xF0 | GP3_RM_SRC_TRANS | flags); + gp3_bpp | 0xF0 | GP3_RM_SRC_TRANS | flags); WRITE_COMMAND32(GP3_BLT_STRIDE, (total_dwords << 18) | gp3_dst_stride); WRITE_COMMAND32(GP3_BLT_DST_OFFSET, dstoffset & 0x3FFFFF); WRITE_COMMAND32(GP3_BLT_SRC_OFFSET, - ((gp3_scratch_base + indent) & 0x3FFFFF) | ((mono_srcx & 7) << 26)); + ((gp3_scratch_base + + indent) & 0x3FFFFF) | ((mono_srcx & 7) << 26)); WRITE_COMMAND32(GP3_BLT_WID_HEIGHT, (width << 16) | height); WRITE_COMMAND32(GP3_BLT_CH3_WIDHI, (width << 16) | height); WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); @@ -2951,9 +3012,10 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, WRITE_COMMAND32(GP3_BLT_CH3_OFFSET, srcoffset & 0x3FFFFF); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | gp3_ch3_bpp | - gp3_src_stride | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + gp3_src_stride | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) + << 20)); WRITE_COMMAND32(GP3_BLT_MODE, - gp3_blt_mode | GP3_BM_SRC_MONO | GP3_BM_SRC_FB); + gp3_blt_mode | GP3_BM_SRC_MONO | GP3_BM_SRC_FB); /* START THE BLT */ @@ -2974,8 +3036,8 @@ gp_screen_to_screen_masked(unsigned long dstoffset, unsigned long srcoffset, void gp_bresenham_line(unsigned long dstoffset, unsigned short length, - unsigned short initerr, unsigned short axialerr, - unsigned short diagerr, unsigned long flags) + unsigned short initerr, unsigned short axialerr, + unsigned short diagerr, unsigned long flags) { unsigned long base; long offset; @@ -3035,9 +3097,10 @@ gp_bresenham_line(unsigned long dstoffset, unsigned short length, /* 4MB segment we happen to be drawing to. */ WRITE_COMMAND32(GP3_VECTOR_VEC_ERR, - (((unsigned long)axialerr << 16) | (unsigned long)diagerr)); + (((unsigned long) axialerr << 16) | (unsigned long) + diagerr)); WRITE_COMMAND32(GP3_VECTOR_VEC_LEN, - (((unsigned long)length << 16) | (unsigned long)initerr)); + (((unsigned long) length << 16) | (unsigned long) initerr)); WRITE_COMMAND32(GP3_VECTOR_BASE_OFFSET, base); /* CHECK VECTOR PATTERN CASE */ @@ -3059,9 +3122,10 @@ gp_bresenham_line(unsigned long dstoffset, unsigned short length, WRITE_COMMAND32(GP3_VECTOR_DST_OFFSET, dstoffset); WRITE_COMMAND32(GP3_VECTOR_CH3_MODE_STR, - GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | - GP3_CH3_COLOR_PAT_ENABLE | GP3_CH3_SRC_8_8_8_8); - } else { + GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | + GP3_CH3_COLOR_PAT_ENABLE | GP3_CH3_SRC_8_8_8_8); + } + else { /* DISABLE CHANNEL 3 AND USE NORMAL PATTERN ORIGINS */ WRITE_COMMAND32(GP3_VECTOR_CH3_MODE_STR, 0); @@ -3093,16 +3157,15 @@ gp_bresenham_line(unsigned long dstoffset, unsigned short length, */ WRITE_COMMAND32(16, GP3_VEC_HDR_TYPE | GP3_VEC_HDR_VEC_MODE_ENABLE | - GP3_VEC_HDR_VEC_LEN_ENABLE); + GP3_VEC_HDR_VEC_LEN_ENABLE); WRITE_COMMAND32(16 + GP3_VECTOR_MODE, (gp3_vec_mode | flags)); WRITE_COMMAND32(16 + GP3_VECTOR_VEC_LEN, - (1 << 16) | (unsigned long)initerr); + (1 << 16) | (unsigned long) initerr); WRITE_COMMAND32(16 + GP3_VECTOR_COMMAND_SIZE, - GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE); + GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE); WRITE_COMMAND32(20 + GP3_VECTOR_COMMAND_SIZE, 0x100); - WRITE_COMMAND32(24 + GP3_VECTOR_COMMAND_SIZE, - (1 | GP3_LUT_DATA_TYPE)); + WRITE_COMMAND32(24 + GP3_VECTOR_COMMAND_SIZE, (1 | GP3_LUT_DATA_TYPE)); WRITE_COMMAND32(28 + GP3_VECTOR_COMMAND_SIZE, gp3_vec_pat); gp3_cmd_current += 32 + GP3_VECTOR_COMMAND_SIZE; @@ -3118,7 +3181,8 @@ gp_bresenham_line(unsigned long dstoffset, unsigned short length, void gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, - unsigned long y0, unsigned long x1, unsigned long y1, int inclusive) + unsigned long y0, unsigned long x1, unsigned long y1, + int inclusive) { unsigned long base; unsigned long length; @@ -3133,8 +3197,8 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, /* CALCULATE BRESENHAM TERMS */ - dx = (long)x1 - (long)x0; - dy = (long)y1 - (long)y0; + dx = (long) x1 - (long) x0; + dy = (long) y1 - (long) y0; if (dx < 0) dx = -dx; if (dy < 0) @@ -3148,7 +3212,8 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, flags |= CIMGP_POSMAJOR; if (y1 > y0) flags |= CIMGP_POSMINOR; - } else { + } + else { dmaj = dy; dmin = dx; flags = CIMGP_YMAJOR; @@ -3158,9 +3223,9 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, flags |= CIMGP_POSMAJOR; } - axialerr = (unsigned short)(dmin << 1); - diagerr = (unsigned short)((dmin - dmaj) << 1); - initerr = (unsigned short)((dmin << 1) - dmaj); + axialerr = (unsigned short) (dmin << 1); + diagerr = (unsigned short) ((dmin - dmaj) << 1); + initerr = (unsigned short) ((dmin << 1) - dmaj); if (!(flags & CIMGP_POSMINOR)) initerr--; @@ -3221,9 +3286,10 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, /* 4MB segment we happen to be drawing to. */ WRITE_COMMAND32(GP3_VECTOR_VEC_ERR, - (((unsigned long)axialerr << 16) | (unsigned long)diagerr)); + (((unsigned long) axialerr << 16) | (unsigned long) + diagerr)); WRITE_COMMAND32(GP3_VECTOR_VEC_LEN, - (((unsigned long)length << 16) | (unsigned long)initerr)); + (((unsigned long) length << 16) | (unsigned long) initerr)); WRITE_COMMAND32(GP3_VECTOR_BASE_OFFSET, base); /* CHECK VECTOR PATTERN CASE */ @@ -3245,9 +3311,10 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, WRITE_COMMAND32(GP3_VECTOR_DST_OFFSET, dstoffset); WRITE_COMMAND32(GP3_VECTOR_CH3_MODE_STR, - GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | - GP3_CH3_COLOR_PAT_ENABLE | GP3_CH3_SRC_8_8_8_8); - } else { + GP3_CH3_C3EN | GP3_CH3_REPLACE_SOURCE | + GP3_CH3_COLOR_PAT_ENABLE | GP3_CH3_SRC_8_8_8_8); + } + else { /* DISABLE CHANNEL 3 AND USE NORMAL PATTERN ORIGINS */ WRITE_COMMAND32(GP3_VECTOR_CH3_MODE_STR, 0); @@ -3278,16 +3345,15 @@ gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, */ WRITE_COMMAND32(16, GP3_VEC_HDR_TYPE | GP3_VEC_HDR_VEC_MODE_ENABLE | - GP3_VEC_HDR_VEC_LEN_ENABLE); + GP3_VEC_HDR_VEC_LEN_ENABLE); WRITE_COMMAND32(16 + GP3_VECTOR_MODE, (gp3_vec_mode | flags)); WRITE_COMMAND32(16 + GP3_VECTOR_VEC_LEN, - (1 << 16) | (unsigned long)initerr); + (1 << 16) | (unsigned long) initerr); WRITE_COMMAND32(16 + GP3_VECTOR_COMMAND_SIZE, - GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE); + GP3_LUT_HDR_TYPE | GP3_LUT_HDR_DATA_ENABLE); WRITE_COMMAND32(20 + GP3_VECTOR_COMMAND_SIZE, 0x100); - WRITE_COMMAND32(24 + GP3_VECTOR_COMMAND_SIZE, - (1 | GP3_LUT_DATA_TYPE)); + WRITE_COMMAND32(24 + GP3_VECTOR_COMMAND_SIZE, (1 | GP3_LUT_DATA_TYPE)); WRITE_COMMAND32(28 + GP3_VECTOR_COMMAND_SIZE, gp3_vec_pat); gp3_cmd_current += 32 + GP3_VECTOR_COMMAND_SIZE; @@ -3306,7 +3372,7 @@ gp_wait_until_idle(void) unsigned long temp; while (((temp = READ_GP32(GP3_BLT_STATUS)) & GP3_BS_BLT_BUSY) || - !(temp & GP3_BS_CB_EMPTY)) { + !(temp & GP3_BS_CB_EMPTY)) { ; } } @@ -3347,7 +3413,7 @@ gp_test_blt_pending(void) void gp_wait_blt_pending(void) { - while ((READ_GP32(GP3_BLT_STATUS)) & GP3_BS_BLT_PENDING) ; + while ((READ_GP32(GP3_BLT_STATUS)) & GP3_BS_BLT_PENDING); } /*--------------------------------------------------------------------------- @@ -3372,7 +3438,7 @@ gp_save_state(GP_SAVE_RESTORE * gp_state) /* RESET THE READ POINTER */ gp_set_command_buffer_base(gp_state->cmd_base, gp_state->cmd_top, - gp_state->cmd_bottom); + gp_state->cmd_bottom); } /*--------------------------------------------------------------------------- @@ -3389,26 +3455,25 @@ gp_restore_state(GP_SAVE_RESTORE * gp_state) WRITE_GP32(GP3_BASE_OFFSET, gp_state->base_offset); gp_set_command_buffer_base(gp_state->cmd_base, gp_state->cmd_top, - gp_state->cmd_bottom); + gp_state->cmd_bottom); } /* This is identical to gp_antialiased_text, except we support all one pass alpha operations similar to gp_set_alpha_operation */ - void gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, - unsigned long dataoffset, long stride, int operation, - int fourbpp) + unsigned long width, unsigned long height, + unsigned long dataoffset, long stride, int operation, + int fourbpp) { unsigned long indent; unsigned long size = ((width << 16) | height); unsigned long base, depth_flag; base = ((gp3_fb_base << 24) + (dstoffset & 0xFFC00000)) | - ((gp3_fb_base << 4) + (dataoffset >> 20)) | - (gp3_base_register & GP3_BASE_OFFSET_SRCMASK); + ((gp3_fb_base << 4) + (dataoffset >> 20)) | + (gp3_base_register & GP3_BASE_OFFSET_SRCMASK); /* ENABLE ALL RELEVANT REGISTERS */ /* We override the raster mode register to force the */ @@ -3430,7 +3495,8 @@ gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, depth_flag = GP3_CH3_SRC_4BPP_ALPHA; indent = (srcx >> 1) & 3; dataoffset += indent | ((srcx & 1) << 25); - } else { + } + else { depth_flag = GP3_CH3_SRC_8BPP_ALPHA; indent = srcx & 3; dataoffset += indent; @@ -3443,14 +3509,16 @@ gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, if (gp3_bpp == GP3_RM_BPPFMT_565) { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | - GP3_RM_ALPHA_TO_RGB | - ((unsigned long) (operation << 20)) | GP3_RM_SELECT_ALPHA_CHAN_3); - } else { + gp3_bpp | + GP3_RM_ALPHA_TO_RGB | + ((unsigned long) (operation << 20)) | + GP3_RM_SELECT_ALPHA_CHAN_3); + } + else { WRITE_COMMAND32(GP3_BLT_RASTER_MODE, - gp3_bpp | - GP3_RM_ALPHA_ALL | ((unsigned long) (operation << 20)) | - GP3_RM_SELECT_ALPHA_CHAN_3); + gp3_bpp | + GP3_RM_ALPHA_ALL | ((unsigned long) (operation << 20)) | + GP3_RM_SELECT_ALPHA_CHAN_3); } /* WRITE ALL REMAINING REGISTERS */ @@ -3465,7 +3533,8 @@ gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, WRITE_COMMAND32(GP3_BLT_BASE_OFFSET, base); WRITE_COMMAND32(GP3_BLT_CH3_MODE_STR, GP3_CH3_C3EN | (stride & 0xFFFF) | - depth_flag | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << 20)); + depth_flag | ((gp3_blt_flags & CIMGP_BLTFLAGS_PRES_LUT) << + 20)); WRITE_COMMAND32(GP3_BLT_MODE, GP3_BM_DST_REQ); diff --git a/src/cim/cim_init.c b/src/cim/cim_init.c index 71f20b6..e80eeb1 100644 --- a/src/cim/cim_init.c +++ b/src/cim/cim_init.c @@ -43,8 +43,7 @@ CIMARRON_STATIC unsigned long init_video_base = 0x80000900; *---------------------------------------------------------------------------*/ int -init_detect_cpu(unsigned long *cpu_revision, - unsigned long *companion_revision) +init_detect_cpu(unsigned long *cpu_revision, unsigned long *companion_revision) { unsigned long bus, device, i; unsigned long cpu_bus = 0, cpu_device = 0; @@ -74,7 +73,8 @@ init_detect_cpu(unsigned long *cpu_revision, *cpu_revision = CIM_CPU_GEODEGX; else *cpu_revision = CIM_CPU_GEODELX; - } else if (data == PCI_VENDOR_5535 || data == PCI_VENDOR_5536) { + } + else if (data == PCI_VENDOR_5535 || data == PCI_VENDOR_5536) { sb_found = 1; if (data == PCI_VENDOR_5535) *companion_revision = CIM_SB_5535; @@ -97,7 +97,7 @@ init_detect_cpu(unsigned long *cpu_revision, msr_init_table(); if (msr_read64(MSR_DEVICE_GEODELX_GLCP, GLCP_REVID, - &msr_value) != CIM_STATUS_OK) { + &msr_value) != CIM_STATUS_OK) { *cpu_revision = 0; return CIM_STATUS_CPUNOTFOUND; } @@ -106,7 +106,7 @@ init_detect_cpu(unsigned long *cpu_revision, ((msr_value.low & 0x0F) << 16); if (msr_read64(MSR_DEVICE_5535_GLCP, GLCP_REVID, - &msr_value) != CIM_STATUS_OK) { + &msr_value) != CIM_STATUS_OK) { *cpu_revision = 0; return CIM_STATUS_CPUNOTFOUND; } @@ -125,7 +125,8 @@ init_detect_cpu(unsigned long *cpu_revision, if (data == PCI_VENDOR_DEVICE_GEODEGX_VIDEO) { num_bars = 4; break; - } else if (data == PCI_VENDOR_DEVICE_GEODELX_VIDEO) { + } + else if (data == PCI_VENDOR_DEVICE_GEODELX_VIDEO) { num_bars = 5; break; } @@ -194,7 +195,7 @@ init_read_base_addresses(INIT_BASE_ADDRESSES * base_addresses) OUTW(0xAC1C, 0xFC53); OUTW(0xAC1C, 0x0200); - value = (unsigned long)(INW(0xAC1E)) & 0xFE; + value = (unsigned long) (INW(0xAC1E)) & 0xFE; base_addresses->framebuffer_size = value << 20; @@ -217,7 +218,7 @@ init_read_cpu_frequency(unsigned long *cpu_frequency) OUTW(0xAC1C, 0xFC53); OUTW(0xAC1C, 0x1201); - *cpu_frequency = (unsigned long)(INW(0xAC1E)); + *cpu_frequency = (unsigned long) (INW(0xAC1E)); return CIM_STATUS_OK; } diff --git a/src/cim/cim_modes.c b/src/cim/cim_modes.c index 04d7edd..f61c0e4 100644 --- a/src/cim/cim_modes.c +++ b/src/cim/cim_modes.c @@ -35,977 +35,928 @@ static const VG_DISPLAY_MODE CimarronDisplayModes[] = { /* 320 x 240 PANEL */ - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_QVGA, /* QVGA Panel size. */ - 320, 240, /* No scaling. */ - 320, 240, /* 320x240 active */ - 320, 240, /* 320x240 panel */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0140, 0x0148, 0x0162, 0x0180, 0x0188, 0x0190, /* horiz timings */ - 0x00F0, 0x00F4, 0x00F9, 0x00FD, 0x00FF, 0x0104, /* vertical timings */ - (31L << 16) | ((2000L * 65536L) / 10000L), /* freq = 31.2000 MHz */ - } + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_QVGA, /* QVGA Panel size. */ + 320, 240, /* No scaling. */ + 320, 240, /* 320x240 active */ + 320, 240, /* 320x240 panel */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0140, 0x0148, 0x0162, 0x0180, 0x0188, 0x0190, /* horiz timings */ + 0x00F0, 0x00F4, 0x00F9, 0x00FD, 0x00FF, 0x0104, /* vertical timings */ + (31L << 16) | ((2000L * 65536L) / 10000L), /* freq = 31.2000 MHz */ + } , /* 640 x 400 */ - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC, /* negative HSYNC */ - 640, 400, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x280, 0x288, 0x290, 0x2F0, 0x318, 0x320, /* horiz timings */ - 0x190, 0x197, 0x19C, 0x19E, 0x1BA, 0x1C1, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ - } + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC, /* negative HSYNC */ + 640, 400, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x280, 0x288, 0x290, 0x2F0, 0x318, 0x320, /* horiz timings */ + 0x190, 0x197, 0x19C, 0x19E, 0x1BA, 0x1C1, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ + } , /* 640x480 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0288, 0x0290, 0x02E8, 0x0318, 0x0320, /* horiz timings */ - 0x01E0, 0x01E8, 0x01EA, 0x01EC, 0x0205, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x0298, 0x02D8, 0x0330, 0x0330, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E2, 0x01E5, 0x01F4, 0x01F4, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (28L << 16) | ((5600L * 65536L) / 10000L), /* freq = 28.560 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0288, 0x0298, 0x02c0, 0x0338, 0x0340, /* horiz timings */ - 0x01e0, 0x01e8, 0x01e9, 0x01ec, 0x0200, 0x0208, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (31L << 16) | ((5000L * 65536L) / 10000L), /* freq = 31.5 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x0290, 0x02D0, 0x0348, 0x0348, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01F4, 0x01F4, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (31L << 16) | ((5000L * 65536L) / 10000L), /* freq = 31.5 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x02B8, 0x02F0, 0x0340, 0x0340, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (36L << 16) | ((0000L * 65536L) / 10000L), /* freq = 36.0 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x02A0, 0x02E0, 0x0340, 0x0340, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FA, 0x01FA, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (37L << 16) | ((8890L * 65536L) / 10000L), /* freq = 37.889 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 640, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x02A8, 0x02E8, 0x0350, 0x0350, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (43L << 16) | ((1630L * 65536L) / 10000L), /* freq = 43.163 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0288, 0x0290, 0x02E8, 0x0318, 0x0320, /* horiz timings */ + 0x01E0, 0x01E8, 0x01EA, 0x01EC, 0x0205, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x0298, 0x02D8, 0x0330, 0x0330, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E2, 0x01E5, 0x01F4, 0x01F4, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (28L << 16) | ((5600L * 65536L) / 10000L), /* freq = 28.560 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0288, 0x0298, 0x02c0, 0x0338, 0x0340, /* horiz timings */ + 0x01e0, 0x01e8, 0x01e9, 0x01ec, 0x0200, 0x0208, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (31L << 16) | ((5000L * 65536L) / 10000L), /* freq = 31.5 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x0290, 0x02D0, 0x0348, 0x0348, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01F4, 0x01F4, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (31L << 16) | ((5000L * 65536L) / 10000L), /* freq = 31.5 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x02B8, 0x02F0, 0x0340, 0x0340, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (36L << 16) | ((0000L * 65536L) / 10000L), /* freq = 36.0 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x02A0, 0x02E0, 0x0340, 0x0340, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FA, 0x01FA, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (37L << 16) | ((8890L * 65536L) / 10000L), /* freq = 37.889 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 640, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x02A8, 0x02E8, 0x0350, 0x0350, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E1, 0x01E4, 0x01FD, 0x01FD, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (43L << 16) | ((1630L * 65536L) / 10000L), /* freq = 43.163 MHz */ + } , /* 640 x 480 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 640, 480, /* No scaling. */ - 640, 480, /* 640x480 active */ - 640, 480, /* 640x480 panel */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x0290, 0x02E8, 0x0318, 0x0320, /* horiz timings */ - 0x01E0, 0x01E0, 0x01EA, 0x01EC, 0x0205, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 640, 480, /* No scaling. */ + 640, 480, /* 640x480 active */ + 640, 480, /* 640x480 panel */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x0290, 0x02E8, 0x0318, 0x0320, /* horiz timings */ + 0x01E0, 0x01E0, 0x01EA, 0x01EC, 0x0205, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ + } , /* 800x600 */ - {VG_SUPPORTFLAG_56HZ | /* refresh rate = 56 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0338, 0x0380, 0x0400, 0x0400, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025B, 0x0271, 0x0271, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (36L << 16) | ((0000L * 65536L) / 10000L), /* freq = 36.0 MHz */ - } - , - - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0328, 0x0348, 0x03D0, 0x0418, 0x0420, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.00 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0348, 0x0398, 0x0410, 0x0410, /* horiz timings */ - 0x0258, 0x0258, 0x025c, 0x025F, 0x0274, 0x0274, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (45L << 16) | ((7200L * 65536L) / 10000L), /* freq = 45.72 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0358, 0x03D0, 0x0410, 0x0410, /* horiz timings */ - 0x0258, 0x0258, 0x027D, 0x0283, 0x029A, 0x029A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (49L << 16) | ((5000L * 65536L) / 10000L), /* freq = 49.5 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0330, 0x0380, 0x0420, 0x0420, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025C, 0x0271, 0x0271, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (49L << 16) | ((5000L * 65536L) / 10000L), /* freq = 49.5 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0340, 0x0380, 0x0418, 0x0418, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x0277, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (56L << 16) | ((2500L * 65536L) / 10000L), /* freq = 56.25 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0348, 0x03A0, 0x0420, 0x0420, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025C, 0x0278, 0x0278, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (60L << 16) | ((650L * 65536L) / 10000L), /* freq = 60.065 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - 0, - 800, 600, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0350, 0x03A8, 0x0430, 0x0430, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x027C, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (68L << 16) | ((1790L * 65536L) / 10000L), /* freq = 68.179 MHz */ - } + {VG_SUPPORTFLAG_56HZ | /* refresh rate = 56 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0338, 0x0380, 0x0400, 0x0400, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025B, 0x0271, 0x0271, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (36L << 16) | ((0000L * 65536L) / 10000L), /* freq = 36.0 MHz */ + } + , + + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0328, 0x0348, 0x03D0, 0x0418, 0x0420, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.00 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0348, 0x0398, 0x0410, 0x0410, /* horiz timings */ + 0x0258, 0x0258, 0x025c, 0x025F, 0x0274, 0x0274, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (45L << 16) | ((7200L * 65536L) / 10000L), /* freq = 45.72 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0358, 0x03D0, 0x0410, 0x0410, /* horiz timings */ + 0x0258, 0x0258, 0x027D, 0x0283, 0x029A, 0x029A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (49L << 16) | ((5000L * 65536L) / 10000L), /* freq = 49.5 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0330, 0x0380, 0x0420, 0x0420, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025C, 0x0271, 0x0271, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (49L << 16) | ((5000L * 65536L) / 10000L), /* freq = 49.5 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0340, 0x0380, 0x0418, 0x0418, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x0277, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (56L << 16) | ((2500L * 65536L) / 10000L), /* freq = 56.25 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0348, 0x03A0, 0x0420, 0x0420, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025C, 0x0278, 0x0278, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (60L << 16) | ((650L * 65536L) / 10000L), /* freq = 60.065 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + 0, + 800, 600, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0350, 0x03A8, 0x0430, 0x0430, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025C, 0x0277, 0x027C, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (68L << 16) | ((1790L * 65536L) / 10000L), /* freq = 68.179 MHz */ + } , /* 800x600 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 800, 600, /* No scaling. */ - 800, 600, /* 800x600 active. */ - 800, 600, /* 800x600 panel */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x0348, 0x03C8, 0x0420, 0x0420, /* horiz timings */ - 0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 800, 600, /* No scaling. */ + 800, 600, /* 800x600 active. */ + 800, 600, /* 800x600 panel */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x0348, 0x03C8, 0x0420, 0x0420, /* horiz timings */ + 0x0258, 0x0258, 0x0259, 0x025D, 0x0274, 0x0274, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.00 MHz */ + } , /* 1024x768 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540, /* horiz timings */ - 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0418, 0x04A0, 0x0530, 0x0530, /* horiz timings */ - 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (75L << 16) | ((0000L * 65536L) / 10000L), /* freq = 75.0 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0438, 0x04A8, 0x0550, 0x0550, /* horiz timings */ - 0x0300, 0x0300, 0x0304, 0x0307, 0x0324, 0x0324, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (78L << 16) | ((7500L * 65536L) / 10000L), /* freq = 78.75 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0410, 0x0470, 0x0520, 0x0520, /* horiz timings */ - 0x0300, 0x0300, 0x0301, 0x0304, 0x0320, 0x0320, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (78L << 16) | ((7500L * 65536L) / 10000L), /* freq = 78.75 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0430, 0x0490, 0x0560, 0x0560, /* horiz timings */ - 0x0300, 0x0300, 0x0301, 0x0304, 0x0328, 0x0328, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (94L << 16) | ((5000L * 65536L) / 10000L), /* freq = 94.50 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0440, 0x04B0, 0x0560, 0x0560, /* horiz timings */ - 0x0300, 0x0300, 0x0301, 0x0304, 0x0329, 0x0329, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (100L << 16) | ((1870L * 65536L) / 10000L), /* freq = 100.187 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1024, 768, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0448, 0x04B8, 0x0570, 0x0570, /* horiz timings */ - 0x0300, 0x0300, 0x0301, 0x0304, 0x032E, 0x032E, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (113L << 16) | ((3100L * 65536L) / 10000L), /* freq = 113.31 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540, /* horiz timings */ + 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0418, 0x04A0, 0x0530, 0x0530, /* horiz timings */ + 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (75L << 16) | ((0000L * 65536L) / 10000L), /* freq = 75.0 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0438, 0x04A8, 0x0550, 0x0550, /* horiz timings */ + 0x0300, 0x0300, 0x0304, 0x0307, 0x0324, 0x0324, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (78L << 16) | ((7500L * 65536L) / 10000L), /* freq = 78.75 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0410, 0x0470, 0x0520, 0x0520, /* horiz timings */ + 0x0300, 0x0300, 0x0301, 0x0304, 0x0320, 0x0320, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (78L << 16) | ((7500L * 65536L) / 10000L), /* freq = 78.75 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0430, 0x0490, 0x0560, 0x0560, /* horiz timings */ + 0x0300, 0x0300, 0x0301, 0x0304, 0x0328, 0x0328, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (94L << 16) | ((5000L * 65536L) / 10000L), /* freq = 94.50 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0440, 0x04B0, 0x0560, 0x0560, /* horiz timings */ + 0x0300, 0x0300, 0x0301, 0x0304, 0x0329, 0x0329, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (100L << 16) | ((1870L * 65536L) / 10000L), /* freq = 100.187 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1024, 768, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0448, 0x04B8, 0x0570, 0x0570, /* horiz timings */ + 0x0300, 0x0300, 0x0301, 0x0304, 0x032E, 0x032E, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (113L << 16) | ((3100L * 65536L) / 10000L), /* freq = 113.31 MHz */ + } , /* 1024x768 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1024, 768, /* No scaling. */ - 1024, 768, /* 1024x768 active. */ - 1024, 768, /* 1024x768 panel */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540, /* horiz timings */ - 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1024, 768, /* No scaling. */ + 1024, 768, /* 1024x768 active. */ + 1024, 768, /* 1024x768 panel */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0418, 0x04A0, 0x0540, 0x0540, /* horiz timings */ + 0x0300, 0x0300, 0x0303, 0x0309, 0x0326, 0x0326, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ + } , /* 1152x864 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0, /* horiz timings */ - 0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (81L << 16) | ((6000L * 65536L) / 10000L), /* freq = 81.60 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C8, 0x0540, 0x0600, 0x0600, /* horiz timings */ - 0x0360, 0x0360, 0x0368, 0x036B, 0x038B, 0x038B, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (97L << 16) | ((5200L * 65536L) / 10000L), /* freq = 97.52 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610, /* horiz timings */ - 0x0360, 0x0360, 0x0367, 0x036A, 0x038B, 0x038B, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (101L << 16) | ((4200L * 65536L) / 10000L), /* freq = 101.42 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C0, 0x0540, 0x0640, 0x0640, /* horiz timings */ - 0x0360, 0x0360, 0x0361, 0x0364, 0x0384, 0x0384, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610, /* horiz timings */ - 0x0360, 0x0360, 0x0363, 0x0366, 0x038B, 0x038B, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (119L << 16) | ((6500L * 65536L) / 10000L), /* freq = 119.65 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620, /* horiz timings */ - 0x0360, 0x0360, 0x0369, 0x036C, 0x0396, 0x0396, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1152, 864, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620, /* horiz timings */ - 0x0360, 0x0360, 0x0363, 0x0366, 0x0396, 0x0396, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (144L << 16) | ((0000L * 65536L) / 10000L), /* freq = 144.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0, /* horiz timings */ + 0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (81L << 16) | ((6000L * 65536L) / 10000L), /* freq = 81.60 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C8, 0x0540, 0x0600, 0x0600, /* horiz timings */ + 0x0360, 0x0360, 0x0368, 0x036B, 0x038B, 0x038B, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (97L << 16) | ((5200L * 65536L) / 10000L), /* freq = 97.52 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610, /* horiz timings */ + 0x0360, 0x0360, 0x0367, 0x036A, 0x038B, 0x038B, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (101L << 16) | ((4200L * 65536L) / 10000L), /* freq = 101.42 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C0, 0x0540, 0x0640, 0x0640, /* horiz timings */ + 0x0360, 0x0360, 0x0361, 0x0364, 0x0384, 0x0384, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C8, 0x0548, 0x0610, 0x0610, /* horiz timings */ + 0x0360, 0x0360, 0x0363, 0x0366, 0x038B, 0x038B, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (119L << 16) | ((6500L * 65536L) / 10000L), /* freq = 119.65 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620, /* horiz timings */ + 0x0360, 0x0360, 0x0369, 0x036C, 0x0396, 0x0396, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1152, 864, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04D0, 0x0550, 0x0620, 0x0620, /* horiz timings */ + 0x0360, 0x0360, 0x0363, 0x0366, 0x0396, 0x0396, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (144L << 16) | ((0000L * 65536L) / 10000L), /* freq = 144.00 MHz */ + } , /* 1152x864 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1152, 864, /* No scaling. */ - 1152, 864, /* 1152x864 active. */ - 1152, 864, /* 1152x864 panel. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0, /* horiz timings */ - 0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (81L << 16) | ((6000L * 65536L) / 10000L), /* freq = 81.60 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1152, 864, /* No scaling. */ + 1152, 864, /* 1152x864 active. */ + 1152, 864, /* 1152x864 panel. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0480, 0x0480, 0x04C0, 0x0538, 0x05F0, 0x05F0, /* horiz timings */ + 0x0360, 0x0360, 0x0361, 0x0364, 0x037F, 0x037F, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (81L << 16) | ((6000L * 65536L) / 10000L), /* freq = 81.60 MHz */ + } , /* 1280x1024 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698, /* horiz timings */ - 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ - 0x0400, 0x0400, 0x0406, 0x0409, 0x042F, 0x042F, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ - 0x0400, 0x0400, 0x0407, 0x040A, 0x0431, 0x0431, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (133L << 16) | ((5000L * 65536L) / 10000L), /* freq = 133.50 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0510, 0x05A0, 0x0698, 0x0698, /* horiz timings */ - 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (135L << 16) | ((0000L * 65536L) / 10000L), /* freq = 135.0 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0540, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ - 0x0400, 0x0400, 0x0401, 0x0404, 0x0430, 0x0430, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (157L << 16) | ((5000L * 65536L) / 10000L), /* freq = 157.5 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0, /* horiz timings */ - 0x0400, 0x0400, 0x040C, 0x040F, 0x0442, 0x0442, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (172L << 16) | ((8000L * 65536L) / 10000L), /* freq = 172.80 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - 0, - 1280, 1024, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0, /* horiz timings */ - 0x0400, 0x0400, 0x0406, 0x0409, 0x0442, 0x0442, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (192L << 16) | ((0000L * 65536L) / 10000L), /* freq = 192.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698, /* horiz timings */ + 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ + 0x0400, 0x0400, 0x0406, 0x0409, 0x042F, 0x042F, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (129L << 16) | ((6000L * 65536L) / 10000L), /* freq = 129.60 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0558, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ + 0x0400, 0x0400, 0x0407, 0x040A, 0x0431, 0x0431, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (133L << 16) | ((5000L * 65536L) / 10000L), /* freq = 133.50 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0510, 0x05A0, 0x0698, 0x0698, /* horiz timings */ + 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (135L << 16) | ((0000L * 65536L) / 10000L), /* freq = 135.0 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0540, 0x05E0, 0x06C0, 0x06C0, /* horiz timings */ + 0x0400, 0x0400, 0x0401, 0x0404, 0x0430, 0x0430, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (157L << 16) | ((5000L * 65536L) / 10000L), /* freq = 157.5 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0, /* horiz timings */ + 0x0400, 0x0400, 0x040C, 0x040F, 0x0442, 0x0442, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (172L << 16) | ((8000L * 65536L) / 10000L), /* freq = 172.80 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + 0, + 1280, 1024, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0560, 0x05F0, 0x06E0, 0x06E0, /* horiz timings */ + 0x0400, 0x0400, 0x0406, 0x0409, 0x0442, 0x0442, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (192L << 16) | ((0000L * 65536L) / 10000L), /* freq = 192.00 MHz */ + } , /* 1280x1024 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1280, 1024, /* No scaling. */ - 1280, 1024, /* 1280x1024 active. */ - 1280, 1024, /* 1280x1024 panel */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698, /* horiz timings */ - 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1280, 1024, /* No scaling. */ + 1280, 1024, /* 1280x1024 active. */ + 1280, 1024, /* 1280x1024 panel */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0530, 0x05A0, 0x0698, 0x0698, /* horiz timings */ + 0x0400, 0x0400, 0x0401, 0x0404, 0x042A, 0x042A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (108L << 16) | ((0000L * 65536L) / 10000L), /* freq = 108.00 MHz */ + } , /* 1600 x 1200 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (189L << 16) | ((0000L * 65536L) / 10000L), /* freq = 189.0 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x06B0, 0x0760, 0x0880, 0x0880, /* horiz timings */ - 0x04B0, 0x04B0, 0x04BD, 0x04C0, 0x04EF, 0x04EF, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (198L << 16) | ((0000L * 65536L) / 10000L), /* freq = 198.0 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (202L << 16) | ((5000L * 65536L) / 10000L), /* freq = 202.5 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (229L << 16) | ((5000L * 65536L) / 10000L), /* freq = 229.5 MHz */ - } - , - - {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F0, 0x04F0, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (251L << 16) | ((1820L * 65536L) / 10000L), /* freq = 251.182 MHz */ - } - , - - {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1600, 1200, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F7, 0x04F7, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (280L << 16) | ((6400L * 65536L) / 10000L), /* freq = 280.64 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (189L << 16) | ((0000L * 65536L) / 10000L), /* freq = 189.0 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 72 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x06B0, 0x0760, 0x0880, 0x0880, /* horiz timings */ + 0x04B0, 0x04B0, 0x04BD, 0x04C0, 0x04EF, 0x04EF, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (198L << 16) | ((0000L * 65536L) / 10000L), /* freq = 198.0 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (202L << 16) | ((5000L * 65536L) / 10000L), /* freq = 202.5 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (229L << 16) | ((5000L * 65536L) / 10000L), /* freq = 229.5 MHz */ + } + , + + {VG_SUPPORTFLAG_90HZ | /* refresh rate = 90 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F0, 0x04F0, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (251L << 16) | ((1820L * 65536L) / 10000L), /* freq = 251.182 MHz */ + } + , + + {VG_SUPPORTFLAG_100HZ | /* refresh rate = 100 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1600, 1200, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x06C0, 0x0770, 0x08A0, 0x08A0, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04F7, 0x04F7, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (280L << 16) | ((6400L * 65536L) / 10000L), /* freq = 280.64 MHz */ + } , /* 1600 x 1200 PANEL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - VG_MODEFLAG_PANELOUT | /* Panel output. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ - 1600, 1200, /* No scaling. */ - 1600, 1200, /* 1600x1200 Active. */ - 1600, 1200, /* 1600x1200 Panel. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ - 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PANEL, /* Panel Mode. */ + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + VG_MODEFLAG_PANELOUT | /* Panel output. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC, /* negative syncs */ + 1600, 1200, /* No scaling. */ + 1600, 1200, /* 1600x1200 Active. */ + 1600, 1200, /* 1600x1200 Panel. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0640, 0x0640, 0x0680, 0x0740, 0x0870, 0x0870, /* horiz timings */ + 0x04B0, 0x04B0, 0x04B1, 0x04B4, 0x04E2, 0x04E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (162L << 16) | ((0000L * 65536L) / 10000L), /* freq = 162.0 MHz */ + } , /* 1920x1440 */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1920, 1440, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x0800, 0x08D0, 0x0A28, 0x0A28, /* horiz timings */ - 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (234L << 16) | ((0000L * 65536L) / 10000L), /* freq = 234.0 MHz */ - } - , - - {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1920, 1440, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50, /* horiz timings */ - 0x05A0, 0x05A0, 0x05A8, 0x05AB, 0x05E2, 0x05E2, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (278L << 16) | ((4000L * 65536L) / 10000L), /* freq = 278.4 MHz */ - } - , - - {VG_SUPPORTFLAG_72HZ | /* refresh rate = 70 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1920, 1440, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50, /* horiz timings */ - 0x05A0, 0x05A0, 0x05A4, 0x05A7, 0x05EB, 0x05EB, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (288L << 16) | ((0000L * 65536L) / 10000L), /* freq = 288.0 MHz */ - } - , - - {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1920, 1440, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x0810, 0x08F0, 0x0A50, 0x0A50, /* horiz timings */ - 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (297L << 16) | ((0000L * 65536L) / 10000L), /* freq = 297.0 MHz */ - } - , - - {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP - | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | - VG_SUPPORTFLAG_32BPP, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - 0, - 1920, 1440, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x0818, 0x08F0, 0x0A60, 0x0A60, /* horiz timings */ - 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05E8, 0x05E8, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings */ - (341L << 16) | ((3490L * 65536L) / 10000L), /* freq = 341.35 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1920, 1440, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x0800, 0x08D0, 0x0A28, 0x0A28, /* horiz timings */ + 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (234L << 16) | ((0000L * 65536L) / 10000L), /* freq = 234.0 MHz */ + } + , + + {VG_SUPPORTFLAG_70HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1920, 1440, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50, /* horiz timings */ + 0x05A0, 0x05A0, 0x05A8, 0x05AB, 0x05E2, 0x05E2, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (278L << 16) | ((4000L * 65536L) / 10000L), /* freq = 278.4 MHz */ + } + , + + {VG_SUPPORTFLAG_72HZ | /* refresh rate = 70 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1920, 1440, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x0818, 0x08E8, 0x0A50, 0x0A50, /* horiz timings */ + 0x05A0, 0x05A0, 0x05A4, 0x05A7, 0x05EB, 0x05EB, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (288L << 16) | ((0000L * 65536L) / 10000L), /* freq = 288.0 MHz */ + } + , + + {VG_SUPPORTFLAG_75HZ | /* refresh rate = 75 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1920, 1440, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x0810, 0x08F0, 0x0A50, 0x0A50, /* horiz timings */ + 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05DC, 0x05DC, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (297L << 16) | ((0000L * 65536L) / 10000L), /* freq = 297.0 MHz */ + } + , + + {VG_SUPPORTFLAG_85HZ | /* refresh rate = 85 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP + | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + 0, + 1920, 1440, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x0818, 0x08F0, 0x0A60, 0x0A60, /* horiz timings */ + 0x05A0, 0x05A0, 0x05A1, 0x05A4, 0x05E8, 0x05E8, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings */ + (341L << 16) | ((3490L * 65536L) / 10000L), /* freq = 341.35 MHz */ + } , /*-------------------------------*/ @@ -1014,238 +965,237 @@ static const VG_DISPLAY_MODE CimarronDisplayModes[] = { /* 720 x 480i NTSC */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC | /* NTSC Mode. */ - VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 | - VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT | /* Interlaced TV output */ - VG_MODEFLAG_HALFCLOCK | /* DotPLL = 1/2 VOP */ - VG_MODEFLAG_INT_FLICKER, /* Flicker Filter Out */ - 720, 480, /* No downscaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x02D0, 0x02D0, 0x02E1, 0x0320, 0x035A, 0x035A, /* horiz timings */ - 0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0107, 0x0107, /* vertical timings */ - 0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0106, 0x0106, /*Even field timings */ - (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ - } - , - - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC | /* NTSC Mode. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* TFT Output. */ - 640, 480, /* No downscaling. */ - 640, 480, /* 640x480 active. */ - 640, 480, /* 640x480 panel. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0280, 0x0280, 0x0333, 0x0373, 0x03A8, 0x03A8, /* horiz timings */ - 0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC | /* NTSC Mode. */ + VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 | + VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT | /* Interlaced TV output */ + VG_MODEFLAG_HALFCLOCK | /* DotPLL = 1/2 VOP */ + VG_MODEFLAG_INT_FLICKER, /* Flicker Filter Out */ + 720, 480, /* No downscaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x02D0, 0x02D0, 0x02E1, 0x0320, 0x035A, 0x035A, /* horiz timings */ + 0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0107, 0x0107, /* vertical timings */ + 0x00F0, 0x00F0, 0x00F4, 0x00F8, 0x0106, 0x0106, /*Even field timings */ + (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ + } + , + + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_NTSC | /* NTSC Mode. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* TFT Output. */ + 640, 480, /* No downscaling. */ + 640, 480, /* 640x480 active. */ + 640, 480, /* 640x480 panel. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0280, 0x0280, 0x0333, 0x0373, 0x03A8, 0x03A8, /* horiz timings */ + 0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ + } , /* 800 x 600 NTSC */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_NTSC | /* 800x600 NTSC. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 800, 600, /* No downscaling. */ - 800, 600, /* 800x600 active. */ - 800, 600, /* 800x600 active. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0, /* horiz timings */ - 0x0258, 0x0258, 0x026A, 0x0272, 0x028A, 0x028A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.000 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_NTSC | /* 800x600 NTSC. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 800, 600, /* No downscaling. */ + 800, 600, /* 800x600 active. */ + 800, 600, /* 800x600 active. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0, /* horiz timings */ + 0x0258, 0x0258, 0x026A, 0x0272, 0x028A, 0x028A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.000 MHz */ + } , /* 1024 x 768 NTSC */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_NTSC | /* 1024x768 NTSC. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_AVG_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 1024, 768, /* No downscaling. */ - 1024, 768, /* 1024x768 active. */ - 1024, 768, /* 1024x768 active. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0490, 0x04D0, 0x04E0, 0x04E0, /* horiz timings */ - 0x0300, 0x0300, 0x031B, 0x031D, 0x0339, 0x0339, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_NTSC | /* 1024x768 NTSC. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_AVG_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 1024, 768, /* No downscaling. */ + 1024, 768, /* 1024x768 active. */ + 1024, 768, /* 1024x768 active. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0490, 0x04D0, 0x04E0, 0x04E0, /* horiz timings */ + 0x0300, 0x0300, 0x031B, 0x031D, 0x0339, 0x0339, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ + } , /* 720 x 576i PAL */ {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PAL | /* PAL Mode. */ - VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 | VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_TVOUT | VG_MODEFLAG_INTERLACED | /* Interlaced TV out. */ - VG_MODEFLAG_HALFCLOCK | /* DotPLL = 1/2 VOP */ - VG_MODEFLAG_INT_FLICKER, /* Flicker Filter Out */ - 720, 576, /* No downscaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x02D0, 0x02D0, 0x02E4, 0x0324, 0x0360, 0x0360, /* horiz timings */ - 0x0120, 0x0120, 0x0123, 0x0127, 0x0139, 0x0139, /* vertical timings */ - 0x0120, 0x0120, 0x0123, 0x0127, 0x0138, 0x0138, /* Even timings */ - (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ - } + VG_SUPPORTFLAG_ADV7171 | VG_SUPPORTFLAG_SAA7127 | VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_TVOUT | VG_MODEFLAG_INTERLACED | /* Interlaced TV out. */ + VG_MODEFLAG_HALFCLOCK | /* DotPLL = 1/2 VOP */ + VG_MODEFLAG_INT_FLICKER, /* Flicker Filter Out */ + 720, 576, /* No downscaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x02D0, 0x02D0, 0x02E4, 0x0324, 0x0360, 0x0360, /* horiz timings */ + 0x0120, 0x0120, 0x0123, 0x0127, 0x0139, 0x0139, /* vertical timings */ + 0x0120, 0x0120, 0x0123, 0x0127, 0x0138, 0x0138, /* Even timings */ + (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ + } , {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_PAL | /* PAL Mode. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 640, 480, /* No downscaling. */ - 640, 480, /* No mode dimensions. */ - 640, 480, /* 640x480 active. */ - 0, 0, 0, 0, 0, /* 640x480 panel. */ - 0x0280, 0x0280, 0x030F, 0x034F, 0x0360, 0x0360, /* horiz timings */ - 0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ - } + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 640, 480, /* No downscaling. */ + 640, 480, /* No mode dimensions. */ + 640, 480, /* 640x480 active. */ + 0, 0, 0, 0, 0, /* 640x480 panel. */ + 0x0280, 0x0280, 0x030F, 0x034F, 0x0360, 0x0360, /* horiz timings */ + 0x01E0, 0x01E0, 0x01F5, 0x01F7, 0x020D, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (25L << 16) | ((1750L * 65536L) / 10000L), /* freq = 25.175 MHz */ + } , /* 800 x 600 PAL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_PAL | /* 800x600 PAL. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 800, 600, /* No downscaling. */ - 800, 600, /* 800x600 active. */ - 800, 600, /* 800x600 active. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0, /* horiz timings */ - 0x0258, 0x0258, 0x0270, 0x0272, 0x028A, 0x028A, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.000 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_8X6_PAL | /* 800x600 PAL. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 800, 600, /* No downscaling. */ + 800, 600, /* 800x600 active. */ + 800, 600, /* 800x600 active. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0320, 0x0320, 0x03A7, 0x03E7, 0x03F0, 0x03F0, /* horiz timings */ + 0x0258, 0x0258, 0x0270, 0x0272, 0x028A, 0x028A, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (40L << 16) | ((0000L * 65536L) / 10000L), /* freq = 40.000 MHz */ + } , /* 1024 x 768 PAL */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_PAL | /* 1024x768 NTSC. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_AVG_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 1024, 768, /* No downscaling. */ - 1024, 768, /* 1024x768 active. */ - 1024, 768, /* 1024x768 active. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0400, 0x0400, 0x0490, 0x04d0, 0x04e0, 0x04e0, /* horiz timings */ - 0x0300, 0x0300, 0x031b, 0x031d, 0x0339, 0x0339, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_10X7_PAL | /* 1024x768 NTSC. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_AVG_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_NEG_HSYNC | VG_MODEFLAG_NEG_VSYNC | /* negative syncs */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 1024, 768, /* No downscaling. */ + 1024, 768, /* 1024x768 active. */ + 1024, 768, /* 1024x768 active. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0400, 0x0400, 0x0490, 0x04d0, 0x04e0, 0x04e0, /* horiz timings */ + 0x0300, 0x0300, 0x031b, 0x031d, 0x0339, 0x0339, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (65L << 16) | ((0000L * 65536L) / 10000L), /* freq = 65.00 MHz */ + } , /* 720 x 480p HDTV */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P | /* 720x480P. */ - VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_TVOUT, /* Progressive TV out. */ - 720, 480, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x02D0, 0x02D0, 0x02E0, 0x0328, 0x035A, 0x035A, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E1, 0x01E3, 0x020D, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ - } - , - - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P | /* 720x480P. */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 720, 480, /* No scaling. */ - 720, 480, /* 720x480 active. */ - 720, 480, /* 720x480 panel. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x02D0, 0x02D0, 0x02E3, 0x0323, 0x035A, 0x035A, /* horiz timings */ - 0x01E0, 0x01E0, 0x01E4, 0x01EA, 0x020D, 0x020D, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P | /* 720x480P. */ + VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_TVOUT, /* Progressive TV out. */ + 720, 480, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x02D0, 0x02D0, 0x02E0, 0x0328, 0x035A, 0x035A, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E1, 0x01E3, 0x020D, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ + } + , + + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_480P | /* 720x480P. */ + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_LOW_BAND | /* Low bandwidth mode. */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 720, 480, /* No scaling. */ + 720, 480, /* 720x480 active. */ + 720, 480, /* 720x480 panel. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x02D0, 0x02D0, 0x02E3, 0x0323, 0x035A, 0x035A, /* horiz timings */ + 0x01E0, 0x01E0, 0x01E4, 0x01EA, 0x020D, 0x020D, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (27L << 16) | ((0000L * 65536L) / 10000L), /* freq = 27.0 MHz */ + } , /* 1280x720p HDTV */ {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_720P | /* 1280x720P */ - VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_TVOUT, /* Progressive TV out */ - 1280, 720, /* No scaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0546, 0x0596, 0x0672, 0x0672, /* horiz timings */ - 0x02D0, 0x02D0, 0x02D3, 0x02D8, 0x02EE, 0x02EE, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* even timings */ - (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ - } + VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_TVOUT, /* Progressive TV out */ + 1280, 720, /* No scaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0546, 0x0596, 0x0672, 0x0672, /* horiz timings */ + 0x02D0, 0x02D0, 0x02D3, 0x02D8, 0x02EE, 0x02EE, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* even timings */ + (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ + } , {VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_720P | /* 1280x720P */ - VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ - VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ - VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ - 1280, 720, /* No scaling. */ - 1280, 720, /* 1280x720 active. */ - 1280, 720, /* 1280x720 panel. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0500, 0x0500, 0x0547, 0x0597, 0x0672, 0x0672, /* horiz timings */ - 0x02D0, 0x02D0, 0x02D4, 0x02D9, 0x02EE, 0x02EE, /* vertical timings */ - 0, 0, 0, 0, 0, 0, /* No even timings. */ - (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ - } + VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, /* TV Mode. */ + VG_MODEFLAG_AVG_BAND | /* Avg bandwidth mode. */ + VG_MODEFLAG_PANELOUT | VG_MODEFLAG_INVERT_SHFCLK, /* Panel output */ + 1280, 720, /* No scaling. */ + 1280, 720, /* 1280x720 active. */ + 1280, 720, /* 1280x720 panel. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0500, 0x0500, 0x0547, 0x0597, 0x0672, 0x0672, /* horiz timings */ + 0x02D0, 0x02D0, 0x02D4, 0x02D9, 0x02EE, 0x02EE, /* vertical timings */ + 0, 0, 0, 0, 0, 0, /* No even timings. */ + (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ + } , /* 1920x1080i HDTV */ - {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ - VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_1080I | /* 1920x1080i Mode. */ - VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_FS454 | - VG_SUPPORTFLAG_TVOUT, - VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ - VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT | /* Interlaced TV out */ - /* Interlaced addressing */ - VG_MODEFLAG_INT_ADDRESS | VG_MODEFLAG_INVERT_SHFCLK, - 1920, 1080, /* 2:1 downscaling. */ - 0, 0, /* No mode dimensions. */ - 0, 0, /* No panel dimensions. */ - 0, 0, 0, 0, 0, /* No panel registers */ - 0x0780, 0x0780, 0x07AD, 0x0805, 0x0898, 0x0898, /* horiz timings */ - 0x021C, 0x021C, 0x021E, 0x0226, 0x0233, 0x0233, /* vertical timings */ - 0x021C, 0x021C, 0x021E, 0x0226, 0x0232, 0x0232, /*even field timings */ - (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ - } + {VG_SUPPORTFLAG_60HZ | /* refresh rate = 60 */ + VG_SUPPORTFLAG_8BPP | VG_SUPPORTFLAG_12BPP | VG_SUPPORTFLAG_15BPP | VG_SUPPORTFLAG_16BPP | VG_SUPPORTFLAG_24BPP | VG_SUPPORTFLAG_32BPP | VG_SUPPORTFLAG_1080I | /* 1920x1080i Mode. */ + VG_SUPPORTFLAG_ADV7300 | VG_SUPPORTFLAG_FS454 | VG_SUPPORTFLAG_TVOUT, + VG_MODEFLAG_HIGH_BAND | /* High bandwidth mode. */ + VG_MODEFLAG_INTERLACED | VG_MODEFLAG_TVOUT | /* Interlaced TV out */ + /* Interlaced addressing */ + VG_MODEFLAG_INT_ADDRESS | VG_MODEFLAG_INVERT_SHFCLK, + 1920, 1080, /* 2:1 downscaling. */ + 0, 0, /* No mode dimensions. */ + 0, 0, /* No panel dimensions. */ + 0, 0, 0, 0, 0, /* No panel registers */ + 0x0780, 0x0780, 0x07AD, 0x0805, 0x0898, 0x0898, /* horiz timings */ + 0x021C, 0x021C, 0x021E, 0x0226, 0x0233, 0x0233, /* vertical timings */ + 0x021C, 0x021C, 0x021E, 0x0226, 0x0232, 0x0232, /*even field timings */ + (74L << 16) | ((2500L * 65536L) / 10000L), /* freq = 74.25 MHz */ + } , }; @@ -1258,127 +1208,127 @@ static const VG_DISPLAY_MODE CimarronDisplayModes[] = { static const PLL_FREQUENCY CimarronPLLFrequencies[] = { {0x000031AC, (24L << 16) | ((9230L * 65536L) / 10000L)} - , /* 24.9230, - 4,27,13 */ + , /* 24.9230, - 4,27,13 */ {0x0000215D, (25L << 16) | ((1750L * 65536L) / 10000L)} - , /* 25.1750, - 3,22,14 */ + , /* 25.1750, - 3,22,14 */ {0x00001087, (27L << 16) | ((0000L * 65536L) / 10000L)} - , /* 27.0000, - 2, 9, 8 */ + , /* 27.0000, - 2, 9, 8 */ {0x0000216C, (28L << 16) | ((3220L * 65536L) / 10000L)} - , /* 28.3220, - 3,23,13 */ + , /* 28.3220, - 3,23,13 */ {0x0000218D, (28L << 16) | ((5600L * 65536L) / 10000L)} - , /* 28.5600, - 3,25,14 */ + , /* 28.5600, - 3,25,14 */ {0x000010C9, (31L << 16) | ((2000L * 65536L) / 10000L)} - , /* 31.2000, - 2,13,10 */ + , /* 31.2000, - 2,13,10 */ {0x00003147, (31L << 16) | ((5000L * 65536L) / 10000L)} - , /* 31.5000, - 4,21, 8 */ + , /* 31.5000, - 4,21, 8 */ {0x000010A7, (33L << 16) | ((320L * 65536L) / 10000L)} - , /* 33.0320, - 2,11, 8 */ + , /* 33.0320, - 2,11, 8 */ {0x00002159, (35L << 16) | ((1120L * 65536L) / 10000L)} - , /* 35.1120, - 3,22,10 */ + , /* 35.1120, - 3,22,10 */ {0x00004249, (35L << 16) | ((5000L * 65536L) / 10000L)} - , /* 35.5000, - 5,37,10 */ + , /* 35.5000, - 5,37,10 */ {0x00000057, (36L << 16) | ((0000L * 65536L) / 10000L)} - , /* 36.0000, - 1, 6, 8 */ + , /* 36.0000, - 1, 6, 8 */ {0x0000219A, (37L << 16) | ((8890L * 65536L) / 10000L)} - , /* 37.8890, - 3,26,11 */ + , /* 37.8890, - 3,26,11 */ {0x00002158, (39L << 16) | ((1680L * 65536L) / 10000L)} - , /* 39.1680, - 3,22, 9 */ + , /* 39.1680, - 3,22, 9 */ {0x00000045, (40L << 16) | ((0000L * 65536L) / 10000L)} - , /* 40.0000, - 1, 5, 6 */ + , /* 40.0000, - 1, 5, 6 */ {0x00000089, (43L << 16) | ((1630L * 65536L) / 10000L)} - , /* 43.1630, - 1, 9,10 */ + , /* 43.1630, - 1, 9,10 */ {0x000010E7, (44L << 16) | ((9000L * 65536L) / 10000L)} - , /* 44.9000, - 2,15, 8 */ + , /* 44.9000, - 2,15, 8 */ {0x00002136, (45L << 16) | ((7200L * 65536L) / 10000L)} - , /* 45.7200, - 3,20, 7 */ + , /* 45.7200, - 3,20, 7 */ {0x00003207, (49L << 16) | ((5000L * 65536L) / 10000L)} - , /* 49.5000, - 4,33, 8 */ + , /* 49.5000, - 4,33, 8 */ {0x00002187, (50L << 16) | ((0000L * 65536L) / 10000L)} - , /* 50.0000, - 3,25, 8 */ + , /* 50.0000, - 3,25, 8 */ {0x00004286, (56L << 16) | ((2500L * 65536L) / 10000L)} - , /* 56.2500, - 5,41, 7 */ + , /* 56.2500, - 5,41, 7 */ {0x000010E5, (60L << 16) | ((650L * 65536L) / 10000L)} - , /* 60.0650, - 2,15, 6 */ + , /* 60.0650, - 2,15, 6 */ {0x00004214, (65L << 16) | ((0000L * 65536L) / 10000L)} - , /* 65.0000, - 5,34, 5 */ + , /* 65.0000, - 5,34, 5 */ {0x00001105, (68L << 16) | ((1790L * 65536L) / 10000L)} - , /* 68.1790, - 2,17, 6 */ + , /* 68.1790, - 2,17, 6 */ {0x000031E4, (74L << 16) | ((2500L * 65536L) / 10000L)} - , /* 74.2500, - 4,31, 5 */ + , /* 74.2500, - 4,31, 5 */ {0x00003183, (75L << 16) | ((0000L * 65536L) / 10000L)} - , /* 75.0000, - 4,25, 4 */ + , /* 75.0000, - 4,25, 4 */ {0x00004284, (78L << 16) | ((7500L * 65536L) / 10000L)} - , /* 78.7500, - 5,41, 5 */ + , /* 78.7500, - 5,41, 5 */ {0x00001104, (81L << 16) | ((6000L * 65536L) / 10000L)} - , /* 81.6000, - 2,17, 5 */ + , /* 81.6000, - 2,17, 5 */ {0x00006363, (94L << 16) | ((5000L * 65536L) / 10000L)} - , /* 94.5000, - 7,55, 4 */ + , /* 94.5000, - 7,55, 4 */ {0x00005303, (97L << 16) | ((5200L * 65536L) / 10000L)} - , /* 97.5200, - 6,49, 4 */ + , /* 97.5200, - 6,49, 4 */ {0x00002183, (100L << 16) | ((1870L * 65536L) / 10000L)} - , /* 100.187, - 3,25, 4 */ + , /* 100.187, - 3,25, 4 */ {0x00002122, (101L << 16) | ((4200L * 65536L) / 10000L)} - , /* 101.420, - 3,19, 3 */ + , /* 101.420, - 3,19, 3 */ {0x000041B1, (106L << 16) | ((5000L * 65536L) / 10000L)} - , /* 106.50, - 5,28, 2 */ + , /* 106.50, - 5,28, 2 */ {0x00001081, (108L << 16) | ((0000L * 65536L) / 10000L)} - , /* 108.00, - 2, 9, 2 */ + , /* 108.00, - 2, 9, 2 */ {0x00006201, (113L << 16) | ((3100L * 65536L) / 10000L)} - , /* 113.31, - 7,33, 2 */ + , /* 113.31, - 7,33, 2 */ {0x00000041, (119L << 16) | ((6500L * 65536L) / 10000L)} - , /* 119.65, - 1, 5, 2 */ + , /* 119.65, - 1, 5, 2 */ {0x000041A1, (129L << 16) | ((6000L * 65536L) / 10000L)} - , /* 129.60, - 5,27, 2 */ + , /* 129.60, - 5,27, 2 */ {0x00002182, (133L << 16) | ((5000L * 65536L) / 10000L)} - , /* 133.50, - 3,25, 3 */ + , /* 133.50, - 3,25, 3 */ {0x000041B1, (135L << 16) | ((0000L * 65536L) / 10000L)} - , /* 135.00, - 5,28, 2 */ + , /* 135.00, - 5,28, 2 */ {0x00000051, (144L << 16) | ((0000L * 65536L) / 10000L)} - , /* 144.00, - 1, 6, 2 */ + , /* 144.00, - 1, 6, 2 */ {0x000041E1, (148L << 16) | ((5000L * 65536L) / 10000L)} - , /* 148.50, - 5,31, 2 */ + , /* 148.50, - 5,31, 2 */ {0x000062D1, (157L << 16) | ((5000L * 65536L) / 10000L)} - , /* 157.50, - 7,46, 2 */ + , /* 157.50, - 7,46, 2 */ {0x000031A1, (162L << 16) | ((0000L * 65536L) / 10000L)} - , /* 162.00, - 4,27, 2 */ + , /* 162.00, - 4,27, 2 */ {0x00000061, (169L << 16) | ((2030L * 65536L) / 10000L)} - , /* 169.203, - 1, 7, 2 */ + , /* 169.203, - 1, 7, 2 */ {0x00004231, (172L << 16) | ((8000L * 65536L) / 10000L)} - , /* 172.800, - 5,36, 2 */ + , /* 172.800, - 5,36, 2 */ {0x00002151, (175L << 16) | ((5000L * 65536L) / 10000L)} - , /* 175.50, - 3,22, 2 */ + , /* 175.50, - 3,22, 2 */ {0x000052E1, (189L << 16) | ((0000L * 65536L) / 10000L)} - , /* 189.00, - 6,47, 2 */ + , /* 189.00, - 6,47, 2 */ {0x00000071, (192L << 16) | ((0000L * 65536L) / 10000L)} - , /* 192.00, - 1, 8, 2 */ + , /* 192.00, - 1, 8, 2 */ {0x00003201, (198L << 16) | ((0000L * 65536L) / 10000L)} - , /* 198.00, - 4,33, 2 */ + , /* 198.00, - 4,33, 2 */ {0x00004291, (202L << 16) | ((5000L * 65536L) / 10000L)} - , /* 202.50, - 5,42, 2 */ + , /* 202.50, - 5,42, 2 */ {0x00001101, (204L << 16) | ((7500L * 65536L) / 10000L)} - , /* 204.75, - 2,17, 2 */ + , /* 204.75, - 2,17, 2 */ {0x00007481, (218L << 16) | ((2500L * 65536L) / 10000L)} - , /* 218.25, - 8,73, 2 */ + , /* 218.25, - 8,73, 2 */ {0x00004170, (229L << 16) | ((5000L * 65536L) / 10000L)} - , /* 229.50, - 5,24, 1 */ + , /* 229.50, - 5,24, 1 */ {0x00006210, (234L << 16) | ((0000L * 65536L) / 10000L)} - , /* 234.00, - 7,34, 1 */ + , /* 234.00, - 7,34, 1 */ {0x00003140, (251L << 16) | ((1820L * 65536L) / 10000L)} - , /* 251.182, - 4,21, 1 */ + , /* 251.182, - 4,21, 1 */ {0x00006250, (261L << 16) | ((0000L * 65536L) / 10000L)} - , /* 261.00, - 7,38, 1 */ + , /* 261.00, - 7,38, 1 */ {0x000041C0, (278L << 16) | ((4000L * 65536L) / 10000L)} - , /* 278.40, - 5,29, 1 */ + , /* 278.40, - 5,29, 1 */ {0x00005220, (280L << 16) | ((6400L * 65536L) / 10000L)} - , /* 280.64, - 6,35, 1 */ + , /* 280.64, - 6,35, 1 */ {0x00000050, (288L << 16) | ((0000L * 65536L) / 10000L)} - , /* 288.00, - 1, 6, 1 */ + , /* 288.00, - 1, 6, 1 */ {0x000041E0, (297L << 16) | ((0000L * 65536L) / 10000L)} - , /* 297.00, - 5,31, 1 */ + , /* 297.00, - 5,31, 1 */ {0x00002130, (320L << 16) | ((2070L * 65536L) / 10000L)} - , /* 320.207, - 3,20, 1 */ + , /* 320.207, - 3,20, 1 */ {0x00006310, (341L << 16) | ((3490L * 65536L) / 10000L)} - /* 341.349, - 7,50, 1 */ + /* 341.349, - 7,50, 1 */ }; #define NUM_CIMARRON_PLL_FREQUENCIES sizeof(CimarronPLLFrequencies) / \ @@ -1389,519 +1339,519 @@ static const PLL_FREQUENCY CimarronPLLFrequencies[] = { /*-----------------------------------*/ static const unsigned long CimarronHorizontalGraphicsFilter[][2] = { - {0x1284A7D5, 0x000017D5}, /* -43, 297, 296, -43, 5 */ - {0x12A497D7, 0x000013D6}, /* -41, 293, 298, -42, 4 */ - {0x12D48BD7, 0x000013D6}, /* -41, 290, 301, -42, 4 */ - {0x13147FD7, 0x000013D5}, /* -41, 287, 305, -43, 4 */ - {0x133473D8, 0x000013D5}, /* -40, 284, 307, -43, 4 */ - {0x136467D8, 0x000013D5}, /* -40, 281, 310, -43, 4 */ - {0x13945FD8, 0x000013D4}, /* -40, 279, 313, -44, 4 */ - {0x13B453D9, 0x000013D4}, /* -39, 276, 315, -44, 4 */ - {0x13E447D9, 0x000013D4}, /* -39, 273, 318, -44, 4 */ - {0x14143BDA, 0x000013D3}, /* -38, 270, 321, -45, 4 */ - {0x143433DA, 0x000013D3}, /* -38, 268, 323, -45, 4 */ - {0x146427DA, 0x000013D3}, /* -38, 265, 326, -45, 4 */ - {0x14941BDB, 0x000013D2}, /* -37, 262, 329, -46, 4 */ - {0x14C40FDB, 0x000013D2}, /* -37, 259, 332, -46, 4 */ - {0x14F407DA, 0x000017D1}, /* -38, 257, 335, -47, 5 */ - {0x1503FBDC, 0x000013D2}, /* -36, 254, 336, -46, 4 */ - {0x1543F3DB, 0x000017D0}, /* -37, 252, 340, -48, 5 */ - {0x1563E3DD, 0x000013D1}, /* -35, 248, 342, -47, 4 */ - {0x1593D7DD, 0x000013D1}, /* -35, 245, 345, -47, 4 */ - {0x15B3CFDD, 0x000013D1}, /* -35, 243, 347, -47, 4 */ - {0x15E3C3DE, 0x000013D0}, /* -34, 240, 350, -48, 4 */ - {0x1613B7DE, 0x000013D0}, /* -34, 237, 353, -48, 4 */ - {0x1633ABDF, 0x000013D0}, /* -33, 234, 355, -48, 4 */ - {0x16639FDF, 0x000013D0}, /* -33, 231, 358, -48, 4 */ - {0x167397E0, 0x000013D0}, /* -32, 229, 359, -48, 4 */ - {0x16B38BE0, 0x000013CF}, /* -32, 226, 363, -49, 4 */ - {0x16E383DF, 0x000017CE}, /* -33, 224, 366, -50, 5 */ - {0x170373E1, 0x000013CF}, /* -31, 220, 368, -49, 4 */ - {0x17236BE1, 0x000013CF}, /* -31, 218, 370, -49, 4 */ - {0x17435FE2, 0x000013CF}, /* -30, 215, 372, -49, 4 */ - {0x177353E2, 0x000013CF}, /* -30, 212, 375, -49, 4 */ - {0x17B34BE1, 0x000017CD}, /* -31, 210, 379, -51, 5 */ - {0x17C33FE3, 0x000013CE}, /* -29, 207, 380, -50, 4 */ - {0x17F333E3, 0x000013CE}, /* -29, 204, 383, -50, 4 */ - {0x181327E4, 0x000013CE}, /* -28, 201, 385, -50, 4 */ - {0x18431FE3, 0x000017CD}, /* -29, 199, 388, -51, 5 */ - {0x186313E4, 0x000013CE}, /* -28, 196, 390, -50, 4 */ - {0x188307E5, 0x000013CE}, /* -27, 193, 392, -50, 4 */ - {0x18B2FBE5, 0x000013CE}, /* -27, 190, 395, -50, 4 */ - {0x18C2F3E6, 0x000013CE}, /* -26, 188, 396, -50, 4 */ - {0x18F2E7E6, 0x000013CE}, /* -26, 185, 399, -50, 4 */ - {0x1912DBE7, 0x000013CE}, /* -25, 182, 401, -50, 4 */ - {0x1952D3E6, 0x000017CC}, /* -26, 180, 405, -52, 5 */ - {0x1972CBE6, 0x000017CC}, /* -26, 178, 407, -52, 5 */ - {0x1992BFE7, 0x000017CC}, /* -25, 175, 409, -52, 5 */ - {0x19C2B3E7, 0x000017CC}, /* -25, 172, 412, -52, 5 */ - {0x19D2A7E9, 0x000013CD}, /* -23, 169, 413, -51, 4 */ - {0x1A029FE8, 0x000017CC}, /* -24, 167, 416, -52, 5 */ - {0x1A1293E9, 0x000013CE}, /* -23, 164, 417, -50, 4 */ - {0x1A3287EA, 0x000013CE}, /* -22, 161, 419, -50, 4 */ - {0x1A627FE9, 0x000017CD}, /* -23, 159, 422, -51, 5 */ - {0x1A7273EB, 0x000013CE}, /* -21, 156, 423, -50, 4 */ - {0x1AA267EB, 0x000013CE}, /* -21, 153, 426, -50, 4 */ - {0x1AC25FEB, 0x000013CE}, /* -21, 151, 428, -50, 4 */ - {0x1AE253EC, 0x000013CE}, /* -20, 148, 430, -50, 4 */ - {0x1B124BEB, 0x000017CD}, /* -21, 146, 433, -51, 5 */ - {0x1B223FED, 0x000013CE}, /* -19, 143, 434, -50, 4 */ - {0x1B5237EC, 0x000017CD}, /* -20, 141, 437, -51, 5 */ - {0x1B622BED, 0x000013CF}, /* -19, 138, 438, -49, 4 */ - {0x1B821FEE, 0x000013CF}, /* -18, 135, 440, -49, 4 */ - {0x1BA217EE, 0x000013CF}, /* -18, 133, 442, -49, 4 */ - {0x1BC20BEF, 0x000013CF}, /* -17, 130, 444, -49, 4 */ - {0x1BE203EF, 0x000013CF}, /* -17, 128, 446, -49, 4 */ - {0x1C01FBEE, 0x000017CF}, /* -18, 126, 448, -49, 5 */ - {0x1C11EFF0, 0x000013D0}, /* -16, 123, 449, -48, 4 */ - {0x1C41E7EF, 0x000017CF}, /* -17, 121, 452, -49, 5 */ - {0x1C61DFEF, 0x000017CF}, /* -17, 119, 454, -49, 5 */ - {0x1C61D3F1, 0x000013D1}, /* -15, 116, 454, -47, 4 */ - {0x1C91CBF0, 0x000017D0}, /* -16, 114, 457, -48, 5 */ - {0x1CA1BFF2, 0x000013D1}, /* -14, 111, 458, -47, 4 */ - {0x1CC1B3F2, 0x000013D2}, /* -14, 108, 460, -46, 4 */ - {0x1CE1AFF1, 0x000017D1}, /* -15, 107, 462, -47, 5 */ - {0x1CF1A3F3, 0x000013D2}, /* -13, 104, 463, -46, 4 */ - {0x1D1197F3, 0x000013D3}, /* -13, 101, 465, -45, 4 */ - {0x1D3197F2, 0x000013D2}, /* -14, 101, 467, -46, 4 */ - {0x1D518BF3, 0x000013D2}, /* -13, 98, 469, -46, 4 */ - {0x1D6183F3, 0x000013D3}, /* -13, 96, 470, -45, 4 */ - {0x1D817BF3, 0x000013D3}, /* -13, 94, 472, -45, 4 */ - {0x1D916FF4, 0x000013D4}, /* -12, 91, 473, -44, 4 */ - {0x1DB167F4, 0x000013D4}, /* -12, 89, 475, -44, 4 */ - {0x1DC15FF4, 0x000013D5}, /* -12, 87, 476, -43, 4 */ - {0x1DE153F5, 0x000013D5}, /* -11, 84, 478, -43, 4 */ - {0x1DF14BF5, 0x000013D6}, /* -11, 82, 479, -42, 4 */ - {0x1E1143F5, 0x000013D6}, /* -11, 80, 481, -42, 4 */ - {0x1E1137F7, 0x00000FD8}, /* -9, 77, 481, -40, 3 */ - {0x1E3133F6, 0x000013D7}, /* -10, 76, 483, -41, 4 */ - {0x1E412BF6, 0x000013D8}, /* -10, 74, 484, -40, 4 */ - {0x1E611FF7, 0x000013D8}, /* -9, 71, 486, -40, 4 */ - {0x1E7117F7, 0x000013D9}, /* -9, 69, 487, -39, 4 */ - {0x1E810FF7, 0x000013DA}, /* -9, 67, 488, -38, 4 */ - {0x1E9107F8, 0x000013DA}, /* -8, 65, 489, -38, 4 */ - {0x1EA0FFF8, 0x000013DB}, /* -8, 63, 490, -37, 4 */ - {0x1EB0F3F9, 0x00000FDD}, /* -7, 60, 491, -35, 3 */ - {0x1ED0EFF8, 0x000013DC}, /* -8, 59, 493, -36, 4 */ - {0x1EE0E7F9, 0x00000FDD}, /* -7, 57, 494, -35, 3 */ - {0x1EF0DFF9, 0x00000FDE}, /* -7, 55, 495, -34, 3 */ - {0x1F00D7F9, 0x00000FDF}, /* -7, 53, 496, -33, 3 */ - {0x1F10CFFA, 0x00000FDF}, /* -6, 51, 497, -33, 3 */ - {0x1F20C7FA, 0x00000FE0}, /* -6, 49, 498, -32, 3 */ - {0x1F20C3FA, 0x00000FE1}, /* -6, 48, 498, -31, 3 */ - {0x1F30BBFA, 0x00000FE2}, /* -6, 46, 499, -30, 3 */ - {0x1F40AFFB, 0x00000FE3}, /* -5, 43, 500, -29, 3 */ - {0x1F50A7FB, 0x00000FE4}, /* -5, 41, 501, -28, 3 */ - {0x1F60A3FB, 0x00000FE4}, /* -5, 40, 502, -28, 3 */ - {0x1F709BFB, 0x00000FE5}, /* -5, 38, 503, -27, 3 */ - {0x1F7093FC, 0x00000FE6}, /* -4, 36, 503, -26, 3 */ - {0x1F808FFC, 0x00000BE7}, /* -4, 35, 504, -25, 2 */ - {0x1F9087FC, 0x00000BE8}, /* -4, 33, 505, -24, 2 */ - {0x1F9083FC, 0x00000BE9}, /* -4, 32, 505, -23, 2 */ - {0x1FA077FD, 0x00000BEA}, /* -3, 29, 506, -22, 2 */ - {0x1FA073FD, 0x00000BEB}, /* -3, 28, 506, -21, 2 */ - {0x1FB06BFD, 0x00000BEC}, /* -3, 26, 507, -20, 2 */ - {0x1FC063FD, 0x00000BED}, /* -3, 24, 508, -19, 2 */ - {0x1FC05BFE, 0x00000BEE}, /* -2, 22, 508, -18, 2 */ - {0x1FC057FE, 0x00000BEF}, /* -2, 21, 508, -17, 2 */ - {0x1FD053FE, 0x000007F0}, /* -2, 20, 509, -16, 1 */ - {0x1FD04BFE, 0x000007F2}, /* -2, 18, 509, -14, 1 */ - {0x1FE043FE, 0x000007F3}, /* -2, 16, 510, -13, 1 */ - {0x1FE03BFF, 0x000007F4}, /* -1, 14, 510, -12, 1 */ - {0x1FE037FF, 0x000007F5}, /* -1, 13, 510, -11, 1 */ - {0x1FE033FF, 0x000007F6}, /* -1, 12, 510, -10, 1 */ - {0x1FF02BFF, 0x000007F7}, /* -1, 10, 511, -9, 1 */ - {0x1FF027FF, 0x000003F9}, /* -1, 9, 511, -7, 0 */ - {0x1FF01C00, 0x000003FA}, /* 0, 7, 511, -6, 0 */ - {0x1FF01800, 0x000003FB}, /* 0, 6, 511, -5, 0 */ - {0x1FF01400, 0x000003FC}, /* 0, 5, 511, -4, 0 */ - {0x1FF00C00, 0x000003FE}, /* 0, 3, 511, -2, 0 */ - {0x1FF00800, 0x000003FF}, /* 0, 2, 511, -1, 0 */ - {0x1FF00400, 0x00000000}, /* 0, 1, 511, 0, 0 */ - {0x1FFFFC00, 0x00000002}, /* 0, -1, 511, 2, 0 */ - {0x1FFFF800, 0x00000003}, /* 0, -2, 511, 3, 0 */ - {0x1FFFF000, 0x00000005}, /* 0, -4, 511, 5, 0 */ - {0x1FFFEC00, 0x00000006}, /* 0, -5, 511, 6, 0 */ - {0x1FFFE800, 0x00000007}, /* 0, -6, 511, 7, 0 */ - {0x1FFFE400, 0x000FFC09}, /* 0, -7, 511, 9, -1 */ - {0x1FFFDC01, 0x000FFC0A}, /* 1, -9, 511, 10, -1 */ - {0x1FEFDC01, 0x000FFC0B}, /* 1, -9, 510, 11, -1 */ - {0x1FEFD401, 0x000FFC0D}, /* 1, -11, 510, 13, -1 */ - {0x1FEFD001, 0x000FFC0E}, /* 1, -12, 510, 14, -1 */ - {0x1FEFCC01, 0x000FF810}, /* 1, -13, 510, 16, -2 */ - {0x1FDFCC01, 0x000FF811}, /* 1, -13, 509, 17, -2 */ - {0x1FDFC401, 0x000FF813}, /* 1, -15, 509, 19, -2 */ - {0x1FCFC002, 0x000FF814}, /* 2, -16, 508, 20, -2 */ - {0x1FCFB802, 0x000FF816}, /* 2, -18, 508, 22, -2 */ - {0x1FCFB402, 0x000FF418}, /* 2, -19, 508, 24, -3 */ - {0x1FBFB402, 0x000FF419}, /* 2, -19, 507, 25, -3 */ - {0x1FAFB002, 0x000FF41B}, /* 2, -20, 506, 27, -3 */ - {0x1FAFA802, 0x000FF41D}, /* 2, -22, 506, 29, -3 */ - {0x1F9FA802, 0x000FF01F}, /* 2, -22, 505, 31, -4 */ - {0x1F9FA402, 0x000FF020}, /* 2, -23, 505, 32, -4 */ - {0x1F8FA002, 0x000FF022}, /* 2, -24, 504, 34, -4 */ - {0x1F7F9803, 0x000FF024}, /* 3, -26, 503, 36, -4 */ - {0x1F7F9403, 0x000FEC26}, /* 3, -27, 503, 38, -5 */ - {0x1F6F9003, 0x000FEC28}, /* 3, -28, 502, 40, -5 */ - {0x1F5F9003, 0x000FEC29}, /* 3, -28, 501, 41, -5 */ - {0x1F4F8C03, 0x000FEC2B}, /* 3, -29, 500, 43, -5 */ - {0x1F3F8C03, 0x000FE82D}, /* 3, -29, 499, 45, -6 */ - {0x1F2F8803, 0x000FE82F}, /* 3, -30, 498, 47, -6 */ - {0x1F2F8003, 0x000FE831}, /* 3, -32, 498, 49, -6 */ - {0x1F1F7C03, 0x000FE833}, /* 3, -33, 497, 51, -6 */ - {0x1F0F7C03, 0x000FE435}, /* 3, -33, 496, 53, -7 */ - {0x1EFF7803, 0x000FE437}, /* 3, -34, 495, 55, -7 */ - {0x1EEF7403, 0x000FE439}, /* 3, -35, 494, 57, -7 */ - {0x1EDF7004, 0x000FE03B}, /* 4, -36, 493, 59, -8 */ - {0x1EBF7403, 0x000FE43C}, /* 3, -35, 491, 60, -7 */ - {0x1EAF6C04, 0x000FE03F}, /* 4, -37, 490, 63, -8 */ - {0x1E9F6804, 0x000FE041}, /* 4, -38, 489, 65, -8 */ - {0x1E8F6804, 0x000FDC43}, /* 4, -38, 488, 67, -9 */ - {0x1E7F6404, 0x000FDC45}, /* 4, -39, 487, 69, -9 */ - {0x1E6F6004, 0x000FDC47}, /* 4, -40, 486, 71, -9 */ - {0x1E4F6404, 0x000FD849}, /* 4, -39, 484, 73, -10 */ - {0x1E3F6004, 0x000FD84B}, /* 4, -40, 483, 75, -10 */ - {0x1E1F6003, 0x000FDC4D}, /* 3, -40, 481, 77, -9 */ - {0x1E1F5804, 0x000FD450}, /* 4, -42, 481, 80, -11 */ - {0x1DFF5804, 0x000FD452}, /* 4, -42, 479, 82, -11 */ - {0x1DEF5404, 0x000FD454}, /* 4, -43, 478, 84, -11 */ - {0x1DCF5804, 0x000FD056}, /* 4, -42, 476, 86, -12 */ - {0x1DBF5004, 0x000FD059}, /* 4, -44, 475, 89, -12 */ - {0x1D9F5004, 0x000FD05B}, /* 4, -44, 473, 91, -12 */ - {0x1D8F5004, 0x000FCC5D}, /* 4, -44, 472, 93, -13 */ - {0x1D6F5004, 0x000FCC5F}, /* 4, -44, 470, 95, -13 */ - {0x1D5F4804, 0x000FCC62}, /* 4, -46, 469, 98, -13 */ - {0x1D3F4C04, 0x000FC864}, /* 4, -45, 467, 100, -14 */ - {0x1D1F4C04, 0x000FCC65}, /* 4, -45, 465, 101, -13 */ - {0x1CFF4804, 0x000FCC68}, /* 4, -46, 463, 104, -13 */ - {0x1CEF4405, 0x000FC46B}, /* 5, -47, 462, 107, -15 */ - {0x1CCF4804, 0x000FC86C}, /* 4, -46, 460, 108, -14 */ - {0x1CAF4404, 0x000FC86F}, /* 4, -47, 458, 111, -14 */ - {0x1C9F4005, 0x000FC072}, /* 5, -48, 457, 114, -16 */ - {0x1C6F4404, 0x000FC474}, /* 4, -47, 454, 116, -15 */ - {0x1C6F3C05, 0x000FBC77}, /* 5, -49, 454, 119, -17 */ - {0x1C4F3C05, 0x000FBC79}, /* 5, -49, 452, 121, -17 */ - {0x1C1F4004, 0x000FC07B}, /* 4, -48, 449, 123, -16 */ - {0x1C0F3C05, 0x000FB87E}, /* 5, -49, 448, 126, -18 */ - {0x1BEF3C04, 0x000FBC80}, /* 4, -49, 446, 128, -17 */ - {0x1BCF3C04, 0x000FBC82}, /* 4, -49, 444, 130, -17 */ - {0x1BAF3C04, 0x000FB885}, /* 4, -49, 442, 133, -18 */ - {0x1B8F3C04, 0x000FB887}, /* 4, -49, 440, 135, -18 */ - {0x1B6F3C04, 0x000FB48A}, /* 4, -49, 438, 138, -19 */ - {0x1B5F3405, 0x000FB08D}, /* 5, -51, 437, 141, -20 */ - {0x1B2F3804, 0x000FB48F}, /* 4, -50, 434, 143, -19 */ - {0x1B1F3405, 0x000FAC92}, /* 5, -51, 433, 146, -21 */ - {0x1AEF3804, 0x000FB094}, /* 4, -50, 430, 148, -20 */ - {0x1ACF3804, 0x000FAC97}, /* 4, -50, 428, 151, -21 */ - {0x1AAF3804, 0x000FAC99}, /* 4, -50, 426, 153, -21 */ - {0x1A7F3804, 0x000FAC9C}, /* 4, -50, 423, 156, -21 */ - {0x1A6F3405, 0x000FA49F}, /* 5, -51, 422, 159, -23 */ - {0x1A3F3804, 0x000FA8A1}, /* 4, -50, 419, 161, -22 */ - {0x1A1F3804, 0x000FA4A4}, /* 4, -50, 417, 164, -23 */ - {0x1A0F3005, 0x000FA0A7}, /* 5, -52, 416, 167, -24 */ - {0x19DF3404, 0x000FA4A9}, /* 4, -51, 413, 169, -23 */ - {0x19CF3005, 0x000F9CAC}, /* 5, -52, 412, 172, -25 */ - {0x199F3005, 0x000F9CAF}, /* 5, -52, 409, 175, -25 */ - {0x197F3005, 0x000F98B2}, /* 5, -52, 407, 178, -26 */ - {0x195F3005, 0x000F98B4}, /* 5, -52, 405, 180, -26 */ - {0x191F3804, 0x000F9CB6}, /* 4, -50, 401, 182, -25 */ - {0x18FF3804, 0x000F98B9}, /* 4, -50, 399, 185, -26 */ - {0x18CF3804, 0x000F98BC}, /* 4, -50, 396, 188, -26 */ - {0x18BF3804, 0x000F94BE}, /* 4, -50, 395, 190, -27 */ - {0x188F3804, 0x000F94C1}, /* 4, -50, 392, 193, -27 */ - {0x186F3804, 0x000F90C4}, /* 4, -50, 390, 196, -28 */ - {0x184F3405, 0x000F8CC7}, /* 5, -51, 388, 199, -29 */ - {0x181F3804, 0x000F90C9}, /* 4, -50, 385, 201, -28 */ - {0x17FF3804, 0x000F8CCC}, /* 4, -50, 383, 204, -29 */ - {0x17CF3804, 0x000F8CCF}, /* 4, -50, 380, 207, -29 */ - {0x17BF3405, 0x000F84D2}, /* 5, -51, 379, 210, -31 */ - {0x177F3C04, 0x000F88D4}, /* 4, -49, 375, 212, -30 */ - {0x174F3C04, 0x000F88D7}, /* 4, -49, 372, 215, -30 */ - {0x172F3C04, 0x000F84DA}, /* 4, -49, 370, 218, -31 */ - {0x170F3C04, 0x000F84DC}, /* 4, -49, 368, 220, -31 */ - {0x16EF3805, 0x000F7CE0}, /* 5, -50, 366, 224, -33 */ - {0x16BF3C04, 0x000F80E2}, /* 4, -49, 363, 226, -32 */ - {0x167F4004, 0x000F80E5}, /* 4, -48, 359, 229, -32 */ - {0x166F4004, 0x000F7CE7}, /* 4, -48, 358, 231, -33 */ - {0x163F4004, 0x000F7CEA}, /* 4, -48, 355, 234, -33 */ - {0x161F4004, 0x000F78ED}, /* 4, -48, 353, 237, -34 */ - {0x15EF4004, 0x000F78F0}, /* 4, -48, 350, 240, -34 */ - {0x15BF4404, 0x000F74F3}, /* 4, -47, 347, 243, -35 */ - {0x159F4404, 0x000F74F5}, /* 4, -47, 345, 245, -35 */ - {0x156F4404, 0x000F74F8}, /* 4, -47, 342, 248, -35 */ - {0x154F4005, 0x000F6CFC}, /* 5, -48, 340, 252, -37 */ - {0x150F4804, 0x000F70FE}, /* 4, -46, 336, 254, -36 */ - {0x14FF4405, 0x000F6901}, /* 5, -47, 335, 257, -38 */ - {0x14CF4804, 0x000F6D03}, /* 4, -46, 332, 259, -37 */ - {0x149F4804, 0x000F6D06}, /* 4, -46, 329, 262, -37 */ - {0x146F4C04, 0x000F6909}, /* 4, -45, 326, 265, -38 */ - {0x143F4C04, 0x000F690C}, /* 4, -45, 323, 268, -38 */ - {0x141F4C04, 0x000F690E}, /* 4, -45, 321, 270, -38 */ - {0x13EF5004, 0x000F6511}, /* 4, -44, 318, 273, -39 */ - {0x13BF5004, 0x000F6514}, /* 4, -44, 315, 276, -39 */ - {0x139F5004, 0x000F6117}, /* 4, -44, 313, 279, -40 */ - {0x136F5404, 0x000F6119}, /* 4, -43, 310, 281, -40 */ - {0x133F5404, 0x000F611C}, /* 4, -43, 307, 284, -40 */ - {0x131F5404, 0x000F5D1F}, /* 4, -43, 305, 287, -41 */ - {0x12DF5C04, 0x000F5D21}, /* 4, -41, 301, 289, -41 */ - {0x12AF5C04, 0x000F5D24}, /* 4, -41, 298, 292, -41 */ + {0x1284A7D5, 0x000017D5}, /* -43, 297, 296, -43, 5 */ + {0x12A497D7, 0x000013D6}, /* -41, 293, 298, -42, 4 */ + {0x12D48BD7, 0x000013D6}, /* -41, 290, 301, -42, 4 */ + {0x13147FD7, 0x000013D5}, /* -41, 287, 305, -43, 4 */ + {0x133473D8, 0x000013D5}, /* -40, 284, 307, -43, 4 */ + {0x136467D8, 0x000013D5}, /* -40, 281, 310, -43, 4 */ + {0x13945FD8, 0x000013D4}, /* -40, 279, 313, -44, 4 */ + {0x13B453D9, 0x000013D4}, /* -39, 276, 315, -44, 4 */ + {0x13E447D9, 0x000013D4}, /* -39, 273, 318, -44, 4 */ + {0x14143BDA, 0x000013D3}, /* -38, 270, 321, -45, 4 */ + {0x143433DA, 0x000013D3}, /* -38, 268, 323, -45, 4 */ + {0x146427DA, 0x000013D3}, /* -38, 265, 326, -45, 4 */ + {0x14941BDB, 0x000013D2}, /* -37, 262, 329, -46, 4 */ + {0x14C40FDB, 0x000013D2}, /* -37, 259, 332, -46, 4 */ + {0x14F407DA, 0x000017D1}, /* -38, 257, 335, -47, 5 */ + {0x1503FBDC, 0x000013D2}, /* -36, 254, 336, -46, 4 */ + {0x1543F3DB, 0x000017D0}, /* -37, 252, 340, -48, 5 */ + {0x1563E3DD, 0x000013D1}, /* -35, 248, 342, -47, 4 */ + {0x1593D7DD, 0x000013D1}, /* -35, 245, 345, -47, 4 */ + {0x15B3CFDD, 0x000013D1}, /* -35, 243, 347, -47, 4 */ + {0x15E3C3DE, 0x000013D0}, /* -34, 240, 350, -48, 4 */ + {0x1613B7DE, 0x000013D0}, /* -34, 237, 353, -48, 4 */ + {0x1633ABDF, 0x000013D0}, /* -33, 234, 355, -48, 4 */ + {0x16639FDF, 0x000013D0}, /* -33, 231, 358, -48, 4 */ + {0x167397E0, 0x000013D0}, /* -32, 229, 359, -48, 4 */ + {0x16B38BE0, 0x000013CF}, /* -32, 226, 363, -49, 4 */ + {0x16E383DF, 0x000017CE}, /* -33, 224, 366, -50, 5 */ + {0x170373E1, 0x000013CF}, /* -31, 220, 368, -49, 4 */ + {0x17236BE1, 0x000013CF}, /* -31, 218, 370, -49, 4 */ + {0x17435FE2, 0x000013CF}, /* -30, 215, 372, -49, 4 */ + {0x177353E2, 0x000013CF}, /* -30, 212, 375, -49, 4 */ + {0x17B34BE1, 0x000017CD}, /* -31, 210, 379, -51, 5 */ + {0x17C33FE3, 0x000013CE}, /* -29, 207, 380, -50, 4 */ + {0x17F333E3, 0x000013CE}, /* -29, 204, 383, -50, 4 */ + {0x181327E4, 0x000013CE}, /* -28, 201, 385, -50, 4 */ + {0x18431FE3, 0x000017CD}, /* -29, 199, 388, -51, 5 */ + {0x186313E4, 0x000013CE}, /* -28, 196, 390, -50, 4 */ + {0x188307E5, 0x000013CE}, /* -27, 193, 392, -50, 4 */ + {0x18B2FBE5, 0x000013CE}, /* -27, 190, 395, -50, 4 */ + {0x18C2F3E6, 0x000013CE}, /* -26, 188, 396, -50, 4 */ + {0x18F2E7E6, 0x000013CE}, /* -26, 185, 399, -50, 4 */ + {0x1912DBE7, 0x000013CE}, /* -25, 182, 401, -50, 4 */ + {0x1952D3E6, 0x000017CC}, /* -26, 180, 405, -52, 5 */ + {0x1972CBE6, 0x000017CC}, /* -26, 178, 407, -52, 5 */ + {0x1992BFE7, 0x000017CC}, /* -25, 175, 409, -52, 5 */ + {0x19C2B3E7, 0x000017CC}, /* -25, 172, 412, -52, 5 */ + {0x19D2A7E9, 0x000013CD}, /* -23, 169, 413, -51, 4 */ + {0x1A029FE8, 0x000017CC}, /* -24, 167, 416, -52, 5 */ + {0x1A1293E9, 0x000013CE}, /* -23, 164, 417, -50, 4 */ + {0x1A3287EA, 0x000013CE}, /* -22, 161, 419, -50, 4 */ + {0x1A627FE9, 0x000017CD}, /* -23, 159, 422, -51, 5 */ + {0x1A7273EB, 0x000013CE}, /* -21, 156, 423, -50, 4 */ + {0x1AA267EB, 0x000013CE}, /* -21, 153, 426, -50, 4 */ + {0x1AC25FEB, 0x000013CE}, /* -21, 151, 428, -50, 4 */ + {0x1AE253EC, 0x000013CE}, /* -20, 148, 430, -50, 4 */ + {0x1B124BEB, 0x000017CD}, /* -21, 146, 433, -51, 5 */ + {0x1B223FED, 0x000013CE}, /* -19, 143, 434, -50, 4 */ + {0x1B5237EC, 0x000017CD}, /* -20, 141, 437, -51, 5 */ + {0x1B622BED, 0x000013CF}, /* -19, 138, 438, -49, 4 */ + {0x1B821FEE, 0x000013CF}, /* -18, 135, 440, -49, 4 */ + {0x1BA217EE, 0x000013CF}, /* -18, 133, 442, -49, 4 */ + {0x1BC20BEF, 0x000013CF}, /* -17, 130, 444, -49, 4 */ + {0x1BE203EF, 0x000013CF}, /* -17, 128, 446, -49, 4 */ + {0x1C01FBEE, 0x000017CF}, /* -18, 126, 448, -49, 5 */ + {0x1C11EFF0, 0x000013D0}, /* -16, 123, 449, -48, 4 */ + {0x1C41E7EF, 0x000017CF}, /* -17, 121, 452, -49, 5 */ + {0x1C61DFEF, 0x000017CF}, /* -17, 119, 454, -49, 5 */ + {0x1C61D3F1, 0x000013D1}, /* -15, 116, 454, -47, 4 */ + {0x1C91CBF0, 0x000017D0}, /* -16, 114, 457, -48, 5 */ + {0x1CA1BFF2, 0x000013D1}, /* -14, 111, 458, -47, 4 */ + {0x1CC1B3F2, 0x000013D2}, /* -14, 108, 460, -46, 4 */ + {0x1CE1AFF1, 0x000017D1}, /* -15, 107, 462, -47, 5 */ + {0x1CF1A3F3, 0x000013D2}, /* -13, 104, 463, -46, 4 */ + {0x1D1197F3, 0x000013D3}, /* -13, 101, 465, -45, 4 */ + {0x1D3197F2, 0x000013D2}, /* -14, 101, 467, -46, 4 */ + {0x1D518BF3, 0x000013D2}, /* -13, 98, 469, -46, 4 */ + {0x1D6183F3, 0x000013D3}, /* -13, 96, 470, -45, 4 */ + {0x1D817BF3, 0x000013D3}, /* -13, 94, 472, -45, 4 */ + {0x1D916FF4, 0x000013D4}, /* -12, 91, 473, -44, 4 */ + {0x1DB167F4, 0x000013D4}, /* -12, 89, 475, -44, 4 */ + {0x1DC15FF4, 0x000013D5}, /* -12, 87, 476, -43, 4 */ + {0x1DE153F5, 0x000013D5}, /* -11, 84, 478, -43, 4 */ + {0x1DF14BF5, 0x000013D6}, /* -11, 82, 479, -42, 4 */ + {0x1E1143F5, 0x000013D6}, /* -11, 80, 481, -42, 4 */ + {0x1E1137F7, 0x00000FD8}, /* -9, 77, 481, -40, 3 */ + {0x1E3133F6, 0x000013D7}, /* -10, 76, 483, -41, 4 */ + {0x1E412BF6, 0x000013D8}, /* -10, 74, 484, -40, 4 */ + {0x1E611FF7, 0x000013D8}, /* -9, 71, 486, -40, 4 */ + {0x1E7117F7, 0x000013D9}, /* -9, 69, 487, -39, 4 */ + {0x1E810FF7, 0x000013DA}, /* -9, 67, 488, -38, 4 */ + {0x1E9107F8, 0x000013DA}, /* -8, 65, 489, -38, 4 */ + {0x1EA0FFF8, 0x000013DB}, /* -8, 63, 490, -37, 4 */ + {0x1EB0F3F9, 0x00000FDD}, /* -7, 60, 491, -35, 3 */ + {0x1ED0EFF8, 0x000013DC}, /* -8, 59, 493, -36, 4 */ + {0x1EE0E7F9, 0x00000FDD}, /* -7, 57, 494, -35, 3 */ + {0x1EF0DFF9, 0x00000FDE}, /* -7, 55, 495, -34, 3 */ + {0x1F00D7F9, 0x00000FDF}, /* -7, 53, 496, -33, 3 */ + {0x1F10CFFA, 0x00000FDF}, /* -6, 51, 497, -33, 3 */ + {0x1F20C7FA, 0x00000FE0}, /* -6, 49, 498, -32, 3 */ + {0x1F20C3FA, 0x00000FE1}, /* -6, 48, 498, -31, 3 */ + {0x1F30BBFA, 0x00000FE2}, /* -6, 46, 499, -30, 3 */ + {0x1F40AFFB, 0x00000FE3}, /* -5, 43, 500, -29, 3 */ + {0x1F50A7FB, 0x00000FE4}, /* -5, 41, 501, -28, 3 */ + {0x1F60A3FB, 0x00000FE4}, /* -5, 40, 502, -28, 3 */ + {0x1F709BFB, 0x00000FE5}, /* -5, 38, 503, -27, 3 */ + {0x1F7093FC, 0x00000FE6}, /* -4, 36, 503, -26, 3 */ + {0x1F808FFC, 0x00000BE7}, /* -4, 35, 504, -25, 2 */ + {0x1F9087FC, 0x00000BE8}, /* -4, 33, 505, -24, 2 */ + {0x1F9083FC, 0x00000BE9}, /* -4, 32, 505, -23, 2 */ + {0x1FA077FD, 0x00000BEA}, /* -3, 29, 506, -22, 2 */ + {0x1FA073FD, 0x00000BEB}, /* -3, 28, 506, -21, 2 */ + {0x1FB06BFD, 0x00000BEC}, /* -3, 26, 507, -20, 2 */ + {0x1FC063FD, 0x00000BED}, /* -3, 24, 508, -19, 2 */ + {0x1FC05BFE, 0x00000BEE}, /* -2, 22, 508, -18, 2 */ + {0x1FC057FE, 0x00000BEF}, /* -2, 21, 508, -17, 2 */ + {0x1FD053FE, 0x000007F0}, /* -2, 20, 509, -16, 1 */ + {0x1FD04BFE, 0x000007F2}, /* -2, 18, 509, -14, 1 */ + {0x1FE043FE, 0x000007F3}, /* -2, 16, 510, -13, 1 */ + {0x1FE03BFF, 0x000007F4}, /* -1, 14, 510, -12, 1 */ + {0x1FE037FF, 0x000007F5}, /* -1, 13, 510, -11, 1 */ + {0x1FE033FF, 0x000007F6}, /* -1, 12, 510, -10, 1 */ + {0x1FF02BFF, 0x000007F7}, /* -1, 10, 511, -9, 1 */ + {0x1FF027FF, 0x000003F9}, /* -1, 9, 511, -7, 0 */ + {0x1FF01C00, 0x000003FA}, /* 0, 7, 511, -6, 0 */ + {0x1FF01800, 0x000003FB}, /* 0, 6, 511, -5, 0 */ + {0x1FF01400, 0x000003FC}, /* 0, 5, 511, -4, 0 */ + {0x1FF00C00, 0x000003FE}, /* 0, 3, 511, -2, 0 */ + {0x1FF00800, 0x000003FF}, /* 0, 2, 511, -1, 0 */ + {0x1FF00400, 0x00000000}, /* 0, 1, 511, 0, 0 */ + {0x1FFFFC00, 0x00000002}, /* 0, -1, 511, 2, 0 */ + {0x1FFFF800, 0x00000003}, /* 0, -2, 511, 3, 0 */ + {0x1FFFF000, 0x00000005}, /* 0, -4, 511, 5, 0 */ + {0x1FFFEC00, 0x00000006}, /* 0, -5, 511, 6, 0 */ + {0x1FFFE800, 0x00000007}, /* 0, -6, 511, 7, 0 */ + {0x1FFFE400, 0x000FFC09}, /* 0, -7, 511, 9, -1 */ + {0x1FFFDC01, 0x000FFC0A}, /* 1, -9, 511, 10, -1 */ + {0x1FEFDC01, 0x000FFC0B}, /* 1, -9, 510, 11, -1 */ + {0x1FEFD401, 0x000FFC0D}, /* 1, -11, 510, 13, -1 */ + {0x1FEFD001, 0x000FFC0E}, /* 1, -12, 510, 14, -1 */ + {0x1FEFCC01, 0x000FF810}, /* 1, -13, 510, 16, -2 */ + {0x1FDFCC01, 0x000FF811}, /* 1, -13, 509, 17, -2 */ + {0x1FDFC401, 0x000FF813}, /* 1, -15, 509, 19, -2 */ + {0x1FCFC002, 0x000FF814}, /* 2, -16, 508, 20, -2 */ + {0x1FCFB802, 0x000FF816}, /* 2, -18, 508, 22, -2 */ + {0x1FCFB402, 0x000FF418}, /* 2, -19, 508, 24, -3 */ + {0x1FBFB402, 0x000FF419}, /* 2, -19, 507, 25, -3 */ + {0x1FAFB002, 0x000FF41B}, /* 2, -20, 506, 27, -3 */ + {0x1FAFA802, 0x000FF41D}, /* 2, -22, 506, 29, -3 */ + {0x1F9FA802, 0x000FF01F}, /* 2, -22, 505, 31, -4 */ + {0x1F9FA402, 0x000FF020}, /* 2, -23, 505, 32, -4 */ + {0x1F8FA002, 0x000FF022}, /* 2, -24, 504, 34, -4 */ + {0x1F7F9803, 0x000FF024}, /* 3, -26, 503, 36, -4 */ + {0x1F7F9403, 0x000FEC26}, /* 3, -27, 503, 38, -5 */ + {0x1F6F9003, 0x000FEC28}, /* 3, -28, 502, 40, -5 */ + {0x1F5F9003, 0x000FEC29}, /* 3, -28, 501, 41, -5 */ + {0x1F4F8C03, 0x000FEC2B}, /* 3, -29, 500, 43, -5 */ + {0x1F3F8C03, 0x000FE82D}, /* 3, -29, 499, 45, -6 */ + {0x1F2F8803, 0x000FE82F}, /* 3, -30, 498, 47, -6 */ + {0x1F2F8003, 0x000FE831}, /* 3, -32, 498, 49, -6 */ + {0x1F1F7C03, 0x000FE833}, /* 3, -33, 497, 51, -6 */ + {0x1F0F7C03, 0x000FE435}, /* 3, -33, 496, 53, -7 */ + {0x1EFF7803, 0x000FE437}, /* 3, -34, 495, 55, -7 */ + {0x1EEF7403, 0x000FE439}, /* 3, -35, 494, 57, -7 */ + {0x1EDF7004, 0x000FE03B}, /* 4, -36, 493, 59, -8 */ + {0x1EBF7403, 0x000FE43C}, /* 3, -35, 491, 60, -7 */ + {0x1EAF6C04, 0x000FE03F}, /* 4, -37, 490, 63, -8 */ + {0x1E9F6804, 0x000FE041}, /* 4, -38, 489, 65, -8 */ + {0x1E8F6804, 0x000FDC43}, /* 4, -38, 488, 67, -9 */ + {0x1E7F6404, 0x000FDC45}, /* 4, -39, 487, 69, -9 */ + {0x1E6F6004, 0x000FDC47}, /* 4, -40, 486, 71, -9 */ + {0x1E4F6404, 0x000FD849}, /* 4, -39, 484, 73, -10 */ + {0x1E3F6004, 0x000FD84B}, /* 4, -40, 483, 75, -10 */ + {0x1E1F6003, 0x000FDC4D}, /* 3, -40, 481, 77, -9 */ + {0x1E1F5804, 0x000FD450}, /* 4, -42, 481, 80, -11 */ + {0x1DFF5804, 0x000FD452}, /* 4, -42, 479, 82, -11 */ + {0x1DEF5404, 0x000FD454}, /* 4, -43, 478, 84, -11 */ + {0x1DCF5804, 0x000FD056}, /* 4, -42, 476, 86, -12 */ + {0x1DBF5004, 0x000FD059}, /* 4, -44, 475, 89, -12 */ + {0x1D9F5004, 0x000FD05B}, /* 4, -44, 473, 91, -12 */ + {0x1D8F5004, 0x000FCC5D}, /* 4, -44, 472, 93, -13 */ + {0x1D6F5004, 0x000FCC5F}, /* 4, -44, 470, 95, -13 */ + {0x1D5F4804, 0x000FCC62}, /* 4, -46, 469, 98, -13 */ + {0x1D3F4C04, 0x000FC864}, /* 4, -45, 467, 100, -14 */ + {0x1D1F4C04, 0x000FCC65}, /* 4, -45, 465, 101, -13 */ + {0x1CFF4804, 0x000FCC68}, /* 4, -46, 463, 104, -13 */ + {0x1CEF4405, 0x000FC46B}, /* 5, -47, 462, 107, -15 */ + {0x1CCF4804, 0x000FC86C}, /* 4, -46, 460, 108, -14 */ + {0x1CAF4404, 0x000FC86F}, /* 4, -47, 458, 111, -14 */ + {0x1C9F4005, 0x000FC072}, /* 5, -48, 457, 114, -16 */ + {0x1C6F4404, 0x000FC474}, /* 4, -47, 454, 116, -15 */ + {0x1C6F3C05, 0x000FBC77}, /* 5, -49, 454, 119, -17 */ + {0x1C4F3C05, 0x000FBC79}, /* 5, -49, 452, 121, -17 */ + {0x1C1F4004, 0x000FC07B}, /* 4, -48, 449, 123, -16 */ + {0x1C0F3C05, 0x000FB87E}, /* 5, -49, 448, 126, -18 */ + {0x1BEF3C04, 0x000FBC80}, /* 4, -49, 446, 128, -17 */ + {0x1BCF3C04, 0x000FBC82}, /* 4, -49, 444, 130, -17 */ + {0x1BAF3C04, 0x000FB885}, /* 4, -49, 442, 133, -18 */ + {0x1B8F3C04, 0x000FB887}, /* 4, -49, 440, 135, -18 */ + {0x1B6F3C04, 0x000FB48A}, /* 4, -49, 438, 138, -19 */ + {0x1B5F3405, 0x000FB08D}, /* 5, -51, 437, 141, -20 */ + {0x1B2F3804, 0x000FB48F}, /* 4, -50, 434, 143, -19 */ + {0x1B1F3405, 0x000FAC92}, /* 5, -51, 433, 146, -21 */ + {0x1AEF3804, 0x000FB094}, /* 4, -50, 430, 148, -20 */ + {0x1ACF3804, 0x000FAC97}, /* 4, -50, 428, 151, -21 */ + {0x1AAF3804, 0x000FAC99}, /* 4, -50, 426, 153, -21 */ + {0x1A7F3804, 0x000FAC9C}, /* 4, -50, 423, 156, -21 */ + {0x1A6F3405, 0x000FA49F}, /* 5, -51, 422, 159, -23 */ + {0x1A3F3804, 0x000FA8A1}, /* 4, -50, 419, 161, -22 */ + {0x1A1F3804, 0x000FA4A4}, /* 4, -50, 417, 164, -23 */ + {0x1A0F3005, 0x000FA0A7}, /* 5, -52, 416, 167, -24 */ + {0x19DF3404, 0x000FA4A9}, /* 4, -51, 413, 169, -23 */ + {0x19CF3005, 0x000F9CAC}, /* 5, -52, 412, 172, -25 */ + {0x199F3005, 0x000F9CAF}, /* 5, -52, 409, 175, -25 */ + {0x197F3005, 0x000F98B2}, /* 5, -52, 407, 178, -26 */ + {0x195F3005, 0x000F98B4}, /* 5, -52, 405, 180, -26 */ + {0x191F3804, 0x000F9CB6}, /* 4, -50, 401, 182, -25 */ + {0x18FF3804, 0x000F98B9}, /* 4, -50, 399, 185, -26 */ + {0x18CF3804, 0x000F98BC}, /* 4, -50, 396, 188, -26 */ + {0x18BF3804, 0x000F94BE}, /* 4, -50, 395, 190, -27 */ + {0x188F3804, 0x000F94C1}, /* 4, -50, 392, 193, -27 */ + {0x186F3804, 0x000F90C4}, /* 4, -50, 390, 196, -28 */ + {0x184F3405, 0x000F8CC7}, /* 5, -51, 388, 199, -29 */ + {0x181F3804, 0x000F90C9}, /* 4, -50, 385, 201, -28 */ + {0x17FF3804, 0x000F8CCC}, /* 4, -50, 383, 204, -29 */ + {0x17CF3804, 0x000F8CCF}, /* 4, -50, 380, 207, -29 */ + {0x17BF3405, 0x000F84D2}, /* 5, -51, 379, 210, -31 */ + {0x177F3C04, 0x000F88D4}, /* 4, -49, 375, 212, -30 */ + {0x174F3C04, 0x000F88D7}, /* 4, -49, 372, 215, -30 */ + {0x172F3C04, 0x000F84DA}, /* 4, -49, 370, 218, -31 */ + {0x170F3C04, 0x000F84DC}, /* 4, -49, 368, 220, -31 */ + {0x16EF3805, 0x000F7CE0}, /* 5, -50, 366, 224, -33 */ + {0x16BF3C04, 0x000F80E2}, /* 4, -49, 363, 226, -32 */ + {0x167F4004, 0x000F80E5}, /* 4, -48, 359, 229, -32 */ + {0x166F4004, 0x000F7CE7}, /* 4, -48, 358, 231, -33 */ + {0x163F4004, 0x000F7CEA}, /* 4, -48, 355, 234, -33 */ + {0x161F4004, 0x000F78ED}, /* 4, -48, 353, 237, -34 */ + {0x15EF4004, 0x000F78F0}, /* 4, -48, 350, 240, -34 */ + {0x15BF4404, 0x000F74F3}, /* 4, -47, 347, 243, -35 */ + {0x159F4404, 0x000F74F5}, /* 4, -47, 345, 245, -35 */ + {0x156F4404, 0x000F74F8}, /* 4, -47, 342, 248, -35 */ + {0x154F4005, 0x000F6CFC}, /* 5, -48, 340, 252, -37 */ + {0x150F4804, 0x000F70FE}, /* 4, -46, 336, 254, -36 */ + {0x14FF4405, 0x000F6901}, /* 5, -47, 335, 257, -38 */ + {0x14CF4804, 0x000F6D03}, /* 4, -46, 332, 259, -37 */ + {0x149F4804, 0x000F6D06}, /* 4, -46, 329, 262, -37 */ + {0x146F4C04, 0x000F6909}, /* 4, -45, 326, 265, -38 */ + {0x143F4C04, 0x000F690C}, /* 4, -45, 323, 268, -38 */ + {0x141F4C04, 0x000F690E}, /* 4, -45, 321, 270, -38 */ + {0x13EF5004, 0x000F6511}, /* 4, -44, 318, 273, -39 */ + {0x13BF5004, 0x000F6514}, /* 4, -44, 315, 276, -39 */ + {0x139F5004, 0x000F6117}, /* 4, -44, 313, 279, -40 */ + {0x136F5404, 0x000F6119}, /* 4, -43, 310, 281, -40 */ + {0x133F5404, 0x000F611C}, /* 4, -43, 307, 284, -40 */ + {0x131F5404, 0x000F5D1F}, /* 4, -43, 305, 287, -41 */ + {0x12DF5C04, 0x000F5D21}, /* 4, -41, 301, 289, -41 */ + {0x12AF5C04, 0x000F5D24}, /* 4, -41, 298, 292, -41 */ }; static const unsigned long CimarronVerticalGraphicsFilter[] = { - 0x3F840D05, /* 261, 259, -8 */ - 0x3F841D01, /* 257, 263, -8 */ - 0x3F8428FE, /* 254, 266, -8 */ - 0x3F8438FA, /* 250, 270, -8 */ - 0x3F8444F7, /* 247, 273, -8 */ - 0x3F8450F4, /* 244, 276, -8 */ - 0x3F845CF1, /* 241, 279, -8 */ - 0x3F8468EE, /* 238, 282, -8 */ - 0x3F8474EB, /* 235, 285, -8 */ - 0x3F8480E8, /* 232, 288, -8 */ - 0x3F7490E5, /* 229, 292, -9 */ - 0x3F749CE2, /* 226, 295, -9 */ - 0x3F74ACDE, /* 222, 299, -9 */ - 0x3F74B8DB, /* 219, 302, -9 */ - 0x3F74C0D9, /* 217, 304, -9 */ - 0x3F74CCD6, /* 214, 307, -9 */ - 0x3F74D8D3, /* 211, 310, -9 */ - 0x3F74E8CF, /* 207, 314, -9 */ - 0x3F74F4CC, /* 204, 317, -9 */ - 0x3F7500C9, /* 201, 320, -9 */ - 0x3F750CC6, /* 198, 323, -9 */ - 0x3F7518C3, /* 195, 326, -9 */ - 0x3F7520C1, /* 193, 328, -9 */ - 0x3F7530BD, /* 189, 332, -9 */ - 0x3F753CBA, /* 186, 335, -9 */ - 0x3F7548B7, /* 183, 338, -9 */ - 0x3F6558B4, /* 180, 342, -10 */ - 0x3F6560B2, /* 178, 344, -10 */ - 0x3F656CAF, /* 175, 347, -10 */ - 0x3F6578AC, /* 172, 350, -10 */ - 0x3F6584A9, /* 169, 353, -10 */ - 0x3F658CA7, /* 167, 355, -10 */ - 0x3F6598A4, /* 164, 358, -10 */ - 0x3F65A8A0, /* 160, 362, -10 */ - 0x3F65B09E, /* 158, 364, -10 */ - 0x3F65BC9B, /* 155, 367, -10 */ - 0x3F65C499, /* 153, 369, -10 */ - 0x3F65D096, /* 150, 372, -10 */ - 0x3F55E093, /* 147, 376, -11 */ - 0x3F55E891, /* 145, 378, -11 */ - 0x3F55F48E, /* 142, 381, -11 */ - 0x3F56008B, /* 139, 384, -11 */ - 0x3F560C88, /* 136, 387, -11 */ - 0x3F561486, /* 134, 389, -11 */ - 0x3F562083, /* 131, 392, -11 */ - 0x3F562881, /* 129, 394, -11 */ - 0x3F56347E, /* 126, 397, -11 */ - 0x3F56407B, /* 123, 400, -11 */ - 0x3F564879, /* 121, 402, -11 */ - 0x3F465876, /* 118, 406, -12 */ - 0x3F466074, /* 116, 408, -12 */ - 0x3F466872, /* 114, 410, -12 */ - 0x3F46746F, /* 111, 413, -12 */ - 0x3F467C6D, /* 109, 415, -12 */ - 0x3F46846B, /* 107, 417, -12 */ - 0x3F468C69, /* 105, 419, -12 */ - 0x3F469866, /* 102, 422, -12 */ - 0x3F46A064, /* 100, 424, -12 */ - 0x3F46AC61, /* 97, 427, -12 */ - 0x3F46B45F, /* 95, 429, -12 */ - 0x3F46BC5D, /* 93, 431, -12 */ - 0x3F46C45B, /* 91, 433, -12 */ - 0x3F46CC59, /* 89, 435, -12 */ - 0x3F36DC56, /* 86, 439, -13 */ - 0x3F36E454, /* 84, 441, -13 */ - 0x3F36EC52, /* 82, 443, -13 */ - 0x3F36F450, /* 80, 445, -13 */ - 0x3F36FC4E, /* 78, 447, -13 */ - 0x3F37004D, /* 77, 448, -13 */ - 0x3F370C4A, /* 74, 451, -13 */ - 0x3F371448, /* 72, 453, -13 */ - 0x3F371C46, /* 70, 455, -13 */ - 0x3F372444, /* 68, 457, -13 */ - 0x3F372C42, /* 66, 459, -13 */ - 0x3F373440, /* 64, 461, -13 */ - 0x3F37383F, /* 63, 462, -13 */ - 0x3F37403D, /* 61, 464, -13 */ - 0x3F37483B, /* 59, 466, -13 */ - 0x3F375039, /* 57, 468, -13 */ - 0x3F375438, /* 56, 469, -13 */ - 0x3F375C36, /* 54, 471, -13 */ - 0x3F376434, /* 52, 473, -13 */ - 0x3F376833, /* 51, 474, -13 */ - 0x3F377031, /* 49, 476, -13 */ - 0x3F377430, /* 48, 477, -13 */ - 0x3F377C2E, /* 46, 479, -13 */ - 0x3F37842C, /* 44, 481, -13 */ - 0x3F37882B, /* 43, 482, -13 */ - 0x3F47882A, /* 42, 482, -12 */ - 0x3F479028, /* 40, 484, -12 */ - 0x3F479427, /* 39, 485, -12 */ - 0x3F479C25, /* 37, 487, -12 */ - 0x3F47A024, /* 36, 488, -12 */ - 0x3F47A822, /* 34, 490, -12 */ - 0x3F47AC21, /* 33, 491, -12 */ - 0x3F47B020, /* 32, 492, -12 */ - 0x3F57B01F, /* 31, 492, -11 */ - 0x3F57B81D, /* 29, 494, -11 */ - 0x3F57BC1C, /* 28, 495, -11 */ - 0x3F57C01B, /* 27, 496, -11 */ - 0x3F57C41A, /* 26, 497, -11 */ - 0x3F67C818, /* 24, 498, -10 */ - 0x3F67CC17, /* 23, 499, -10 */ - 0x3F67D016, /* 22, 500, -10 */ - 0x3F67D415, /* 21, 501, -10 */ - 0x3F67D814, /* 20, 502, -10 */ - 0x3F77D813, /* 19, 502, -9 */ - 0x3F77DC12, /* 18, 503, -9 */ - 0x3F77E011, /* 17, 504, -9 */ - 0x3F87E010, /* 16, 504, -8 */ - 0x3F87E40F, /* 15, 505, -8 */ - 0x3F87E80E, /* 14, 506, -8 */ - 0x3F97E80D, /* 13, 506, -7 */ - 0x3F97EC0C, /* 12, 507, -7 */ - 0x3F97F00B, /* 11, 508, -7 */ - 0x3FA7F00A, /* 10, 508, -6 */ - 0x3FA7F409, /* 9, 509, -6 */ - 0x3FB7F408, /* 8, 509, -5 */ - 0x3FB7F408, /* 8, 509, -5 */ - 0x3FC7F806, /* 6, 510, -4 */ - 0x3FC7F806, /* 6, 510, -4 */ - 0x3FD7F805, /* 5, 510, -3 */ - 0x3FD7FC04, /* 4, 511, -3 */ - 0x3FE7FC03, /* 3, 511, -2 */ - 0x3FE7FC03, /* 3, 511, -2 */ - 0x3FF7FC02, /* 2, 511, -1 */ - 0x3FF7FC02, /* 2, 511, -1 */ - 0x0007FC01, /* 1, 511, 0 */ - 0x0007FC01, /* 1, 511, 0 */ - 0x0007FC01, /* 1, 511, 0 */ - 0x0027FFFF, /* -1, 511, 2 */ - 0x0027FFFF, /* -1, 511, 2 */ - 0x0037FFFE, /* -2, 511, 3 */ - 0x0037FFFE, /* -2, 511, 3 */ - 0x0047FFFD, /* -3, 511, 4 */ - 0x0047FBFE, /* -2, 510, 4 */ - 0x0057FBFD, /* -3, 510, 5 */ - 0x0067FBFC, /* -4, 510, 6 */ - 0x0077F7FC, /* -4, 509, 7 */ - 0x0077F7FC, /* -4, 509, 7 */ - 0x0087F7FB, /* -5, 509, 8 */ - 0x0097F3FB, /* -5, 508, 9 */ - 0x00A7F3FA, /* -6, 508, 10 */ - 0x00B7EFFA, /* -6, 507, 11 */ - 0x00C7EBFA, /* -6, 506, 12 */ - 0x00D7EBF9, /* -7, 506, 13 */ - 0x00E7E7F9, /* -7, 505, 14 */ - 0x00F7E3F9, /* -7, 504, 15 */ - 0x0107E3F8, /* -8, 504, 16 */ - 0x0117DFF8, /* -8, 503, 17 */ - 0x0127DBF8, /* -8, 502, 18 */ - 0x0137DBF7, /* -9, 502, 19 */ - 0x0147D7F7, /* -9, 501, 20 */ - 0x0157D3F7, /* -9, 500, 21 */ - 0x0167CFF7, /* -9, 499, 22 */ - 0x0177CBF7, /* -9, 498, 23 */ - 0x0197C7F6, /* -10, 497, 25 */ - 0x01A7C3F6, /* -10, 496, 26 */ - 0x01B7BFF6, /* -10, 495, 27 */ - 0x01C7BBF6, /* -10, 494, 28 */ - 0x01E7B3F6, /* -10, 492, 30 */ - 0x01F7B3F5, /* -11, 492, 31 */ - 0x0207AFF5, /* -11, 491, 32 */ - 0x0217ABF5, /* -11, 490, 33 */ - 0x0237A3F5, /* -11, 488, 35 */ - 0x02479FF5, /* -11, 487, 36 */ - 0x026797F5, /* -11, 485, 38 */ - 0x027793F5, /* -11, 484, 39 */ - 0x02978BF5, /* -11, 482, 41 */ - 0x02A78BF4, /* -12, 482, 42 */ - 0x02B787F4, /* -12, 481, 43 */ - 0x02D77FF4, /* -12, 479, 45 */ - 0x02F777F4, /* -12, 477, 47 */ - 0x030773F4, /* -12, 476, 48 */ - 0x03276BF4, /* -12, 474, 50 */ - 0x033767F4, /* -12, 473, 51 */ - 0x03575FF4, /* -12, 471, 53 */ - 0x037757F4, /* -12, 469, 55 */ - 0x038753F4, /* -12, 468, 56 */ - 0x03A74BF4, /* -12, 466, 58 */ - 0x03C743F4, /* -12, 464, 60 */ - 0x03E73BF4, /* -12, 462, 62 */ - 0x040737F3, /* -13, 461, 64 */ - 0x04272FF3, /* -13, 459, 66 */ - 0x044727F3, /* -13, 457, 68 */ - 0x04671FF3, /* -13, 455, 70 */ - 0x048717F3, /* -13, 453, 72 */ - 0x04A70FF3, /* -13, 451, 74 */ - 0x04C703F4, /* -12, 448, 76 */ - 0x04D6FFF4, /* -12, 447, 77 */ - 0x04F6F7F4, /* -12, 445, 79 */ - 0x0516EFF4, /* -12, 443, 81 */ - 0x0536E7F4, /* -12, 441, 83 */ - 0x0556DFF4, /* -12, 439, 85 */ - 0x0586CFF5, /* -11, 435, 88 */ - 0x05A6C7F5, /* -11, 433, 90 */ - 0x05C6BFF5, /* -11, 431, 92 */ - 0x05F6B7F4, /* -12, 429, 95 */ - 0x0616AFF4, /* -12, 427, 97 */ - 0x0636A3F5, /* -11, 424, 99 */ - 0x06569BF5, /* -11, 422, 101 */ - 0x06868FF5, /* -11, 419, 104 */ - 0x06A687F5, /* -11, 417, 106 */ - 0x06C67FF5, /* -11, 415, 108 */ - 0x06E677F5, /* -11, 413, 110 */ - 0x07166BF5, /* -11, 410, 113 */ - 0x073663F5, /* -11, 408, 115 */ - 0x07665BF4, /* -12, 406, 118 */ - 0x07964BF5, /* -11, 402, 121 */ - 0x07B643F5, /* -11, 400, 123 */ - 0x07D637F6, /* -10, 397, 125 */ - 0x08062BF6, /* -10, 394, 128 */ - 0x082623F6, /* -10, 392, 130 */ - 0x085617F6, /* -10, 389, 133 */ - 0x08760FF6, /* -10, 387, 135 */ - 0x08B603F5, /* -11, 384, 139 */ - 0x08D5F7F6, /* -10, 381, 141 */ - 0x0905EBF6, /* -10, 378, 144 */ - 0x0925E3F6, /* -10, 376, 146 */ - 0x0955D3F7, /* -9, 372, 149 */ - 0x0985C7F7, /* -9, 369, 152 */ - 0x09A5BFF7, /* -9, 367, 154 */ - 0x09D5B3F7, /* -9, 364, 157 */ - 0x0A05ABF6, /* -10, 362, 160 */ - 0x0A359BF7, /* -9, 358, 163 */ - 0x0A658FF7, /* -9, 355, 166 */ - 0x0A9587F6, /* -10, 353, 169 */ - 0x0AB57BF7, /* -9, 350, 171 */ - 0x0AE56FF7, /* -9, 347, 174 */ - 0x0B1563F7, /* -9, 344, 177 */ - 0x0B455BF6, /* -10, 342, 180 */ - 0x0B754BF7, /* -9, 338, 183 */ - 0x0BA53FF7, /* -9, 335, 186 */ - 0x0BD533F7, /* -9, 332, 189 */ - 0x0C0523F8, /* -8, 328, 192 */ - 0x0C251BF8, /* -8, 326, 194 */ - 0x0C550FF8, /* -8, 323, 197 */ - 0x0C9503F7, /* -9, 320, 201 */ - 0x0CC4F7F7, /* -9, 317, 204 */ - 0x0CF4EBF7, /* -9, 314, 207 */ - 0x0D24DBF8, /* -8, 310, 210 */ - 0x0D54CFF8, /* -8, 307, 213 */ - 0x0D84C3F8, /* -8, 304, 216 */ - 0x0DB4BBF7, /* -9, 302, 219 */ - 0x0DE4AFF7, /* -9, 299, 222 */ - 0x0E149FF8, /* -8, 295, 225 */ - 0x0E4493F8, /* -8, 292, 228 */ - 0x0E7483F9, /* -7, 288, 231 */ - 0x0EA477F9, /* -7, 285, 234 */ - 0x0ED46BF9, /* -7, 282, 237 */ - 0x0F045FF9, /* -7, 279, 240 */ - 0x0F4453F8, /* -8, 276, 244 */ - 0x0F7447F8, /* -8, 273, 247 */ - 0x0FA43BF8, /* -8, 270, 250 */ - 0x0FD42BF9, /* -7, 266, 253 */ - 0x10041FF9, /* -7, 263, 256 */ + 0x3F840D05, /* 261, 259, -8 */ + 0x3F841D01, /* 257, 263, -8 */ + 0x3F8428FE, /* 254, 266, -8 */ + 0x3F8438FA, /* 250, 270, -8 */ + 0x3F8444F7, /* 247, 273, -8 */ + 0x3F8450F4, /* 244, 276, -8 */ + 0x3F845CF1, /* 241, 279, -8 */ + 0x3F8468EE, /* 238, 282, -8 */ + 0x3F8474EB, /* 235, 285, -8 */ + 0x3F8480E8, /* 232, 288, -8 */ + 0x3F7490E5, /* 229, 292, -9 */ + 0x3F749CE2, /* 226, 295, -9 */ + 0x3F74ACDE, /* 222, 299, -9 */ + 0x3F74B8DB, /* 219, 302, -9 */ + 0x3F74C0D9, /* 217, 304, -9 */ + 0x3F74CCD6, /* 214, 307, -9 */ + 0x3F74D8D3, /* 211, 310, -9 */ + 0x3F74E8CF, /* 207, 314, -9 */ + 0x3F74F4CC, /* 204, 317, -9 */ + 0x3F7500C9, /* 201, 320, -9 */ + 0x3F750CC6, /* 198, 323, -9 */ + 0x3F7518C3, /* 195, 326, -9 */ + 0x3F7520C1, /* 193, 328, -9 */ + 0x3F7530BD, /* 189, 332, -9 */ + 0x3F753CBA, /* 186, 335, -9 */ + 0x3F7548B7, /* 183, 338, -9 */ + 0x3F6558B4, /* 180, 342, -10 */ + 0x3F6560B2, /* 178, 344, -10 */ + 0x3F656CAF, /* 175, 347, -10 */ + 0x3F6578AC, /* 172, 350, -10 */ + 0x3F6584A9, /* 169, 353, -10 */ + 0x3F658CA7, /* 167, 355, -10 */ + 0x3F6598A4, /* 164, 358, -10 */ + 0x3F65A8A0, /* 160, 362, -10 */ + 0x3F65B09E, /* 158, 364, -10 */ + 0x3F65BC9B, /* 155, 367, -10 */ + 0x3F65C499, /* 153, 369, -10 */ + 0x3F65D096, /* 150, 372, -10 */ + 0x3F55E093, /* 147, 376, -11 */ + 0x3F55E891, /* 145, 378, -11 */ + 0x3F55F48E, /* 142, 381, -11 */ + 0x3F56008B, /* 139, 384, -11 */ + 0x3F560C88, /* 136, 387, -11 */ + 0x3F561486, /* 134, 389, -11 */ + 0x3F562083, /* 131, 392, -11 */ + 0x3F562881, /* 129, 394, -11 */ + 0x3F56347E, /* 126, 397, -11 */ + 0x3F56407B, /* 123, 400, -11 */ + 0x3F564879, /* 121, 402, -11 */ + 0x3F465876, /* 118, 406, -12 */ + 0x3F466074, /* 116, 408, -12 */ + 0x3F466872, /* 114, 410, -12 */ + 0x3F46746F, /* 111, 413, -12 */ + 0x3F467C6D, /* 109, 415, -12 */ + 0x3F46846B, /* 107, 417, -12 */ + 0x3F468C69, /* 105, 419, -12 */ + 0x3F469866, /* 102, 422, -12 */ + 0x3F46A064, /* 100, 424, -12 */ + 0x3F46AC61, /* 97, 427, -12 */ + 0x3F46B45F, /* 95, 429, -12 */ + 0x3F46BC5D, /* 93, 431, -12 */ + 0x3F46C45B, /* 91, 433, -12 */ + 0x3F46CC59, /* 89, 435, -12 */ + 0x3F36DC56, /* 86, 439, -13 */ + 0x3F36E454, /* 84, 441, -13 */ + 0x3F36EC52, /* 82, 443, -13 */ + 0x3F36F450, /* 80, 445, -13 */ + 0x3F36FC4E, /* 78, 447, -13 */ + 0x3F37004D, /* 77, 448, -13 */ + 0x3F370C4A, /* 74, 451, -13 */ + 0x3F371448, /* 72, 453, -13 */ + 0x3F371C46, /* 70, 455, -13 */ + 0x3F372444, /* 68, 457, -13 */ + 0x3F372C42, /* 66, 459, -13 */ + 0x3F373440, /* 64, 461, -13 */ + 0x3F37383F, /* 63, 462, -13 */ + 0x3F37403D, /* 61, 464, -13 */ + 0x3F37483B, /* 59, 466, -13 */ + 0x3F375039, /* 57, 468, -13 */ + 0x3F375438, /* 56, 469, -13 */ + 0x3F375C36, /* 54, 471, -13 */ + 0x3F376434, /* 52, 473, -13 */ + 0x3F376833, /* 51, 474, -13 */ + 0x3F377031, /* 49, 476, -13 */ + 0x3F377430, /* 48, 477, -13 */ + 0x3F377C2E, /* 46, 479, -13 */ + 0x3F37842C, /* 44, 481, -13 */ + 0x3F37882B, /* 43, 482, -13 */ + 0x3F47882A, /* 42, 482, -12 */ + 0x3F479028, /* 40, 484, -12 */ + 0x3F479427, /* 39, 485, -12 */ + 0x3F479C25, /* 37, 487, -12 */ + 0x3F47A024, /* 36, 488, -12 */ + 0x3F47A822, /* 34, 490, -12 */ + 0x3F47AC21, /* 33, 491, -12 */ + 0x3F47B020, /* 32, 492, -12 */ + 0x3F57B01F, /* 31, 492, -11 */ + 0x3F57B81D, /* 29, 494, -11 */ + 0x3F57BC1C, /* 28, 495, -11 */ + 0x3F57C01B, /* 27, 496, -11 */ + 0x3F57C41A, /* 26, 497, -11 */ + 0x3F67C818, /* 24, 498, -10 */ + 0x3F67CC17, /* 23, 499, -10 */ + 0x3F67D016, /* 22, 500, -10 */ + 0x3F67D415, /* 21, 501, -10 */ + 0x3F67D814, /* 20, 502, -10 */ + 0x3F77D813, /* 19, 502, -9 */ + 0x3F77DC12, /* 18, 503, -9 */ + 0x3F77E011, /* 17, 504, -9 */ + 0x3F87E010, /* 16, 504, -8 */ + 0x3F87E40F, /* 15, 505, -8 */ + 0x3F87E80E, /* 14, 506, -8 */ + 0x3F97E80D, /* 13, 506, -7 */ + 0x3F97EC0C, /* 12, 507, -7 */ + 0x3F97F00B, /* 11, 508, -7 */ + 0x3FA7F00A, /* 10, 508, -6 */ + 0x3FA7F409, /* 9, 509, -6 */ + 0x3FB7F408, /* 8, 509, -5 */ + 0x3FB7F408, /* 8, 509, -5 */ + 0x3FC7F806, /* 6, 510, -4 */ + 0x3FC7F806, /* 6, 510, -4 */ + 0x3FD7F805, /* 5, 510, -3 */ + 0x3FD7FC04, /* 4, 511, -3 */ + 0x3FE7FC03, /* 3, 511, -2 */ + 0x3FE7FC03, /* 3, 511, -2 */ + 0x3FF7FC02, /* 2, 511, -1 */ + 0x3FF7FC02, /* 2, 511, -1 */ + 0x0007FC01, /* 1, 511, 0 */ + 0x0007FC01, /* 1, 511, 0 */ + 0x0007FC01, /* 1, 511, 0 */ + 0x0027FFFF, /* -1, 511, 2 */ + 0x0027FFFF, /* -1, 511, 2 */ + 0x0037FFFE, /* -2, 511, 3 */ + 0x0037FFFE, /* -2, 511, 3 */ + 0x0047FFFD, /* -3, 511, 4 */ + 0x0047FBFE, /* -2, 510, 4 */ + 0x0057FBFD, /* -3, 510, 5 */ + 0x0067FBFC, /* -4, 510, 6 */ + 0x0077F7FC, /* -4, 509, 7 */ + 0x0077F7FC, /* -4, 509, 7 */ + 0x0087F7FB, /* -5, 509, 8 */ + 0x0097F3FB, /* -5, 508, 9 */ + 0x00A7F3FA, /* -6, 508, 10 */ + 0x00B7EFFA, /* -6, 507, 11 */ + 0x00C7EBFA, /* -6, 506, 12 */ + 0x00D7EBF9, /* -7, 506, 13 */ + 0x00E7E7F9, /* -7, 505, 14 */ + 0x00F7E3F9, /* -7, 504, 15 */ + 0x0107E3F8, /* -8, 504, 16 */ + 0x0117DFF8, /* -8, 503, 17 */ + 0x0127DBF8, /* -8, 502, 18 */ + 0x0137DBF7, /* -9, 502, 19 */ + 0x0147D7F7, /* -9, 501, 20 */ + 0x0157D3F7, /* -9, 500, 21 */ + 0x0167CFF7, /* -9, 499, 22 */ + 0x0177CBF7, /* -9, 498, 23 */ + 0x0197C7F6, /* -10, 497, 25 */ + 0x01A7C3F6, /* -10, 496, 26 */ + 0x01B7BFF6, /* -10, 495, 27 */ + 0x01C7BBF6, /* -10, 494, 28 */ + 0x01E7B3F6, /* -10, 492, 30 */ + 0x01F7B3F5, /* -11, 492, 31 */ + 0x0207AFF5, /* -11, 491, 32 */ + 0x0217ABF5, /* -11, 490, 33 */ + 0x0237A3F5, /* -11, 488, 35 */ + 0x02479FF5, /* -11, 487, 36 */ + 0x026797F5, /* -11, 485, 38 */ + 0x027793F5, /* -11, 484, 39 */ + 0x02978BF5, /* -11, 482, 41 */ + 0x02A78BF4, /* -12, 482, 42 */ + 0x02B787F4, /* -12, 481, 43 */ + 0x02D77FF4, /* -12, 479, 45 */ + 0x02F777F4, /* -12, 477, 47 */ + 0x030773F4, /* -12, 476, 48 */ + 0x03276BF4, /* -12, 474, 50 */ + 0x033767F4, /* -12, 473, 51 */ + 0x03575FF4, /* -12, 471, 53 */ + 0x037757F4, /* -12, 469, 55 */ + 0x038753F4, /* -12, 468, 56 */ + 0x03A74BF4, /* -12, 466, 58 */ + 0x03C743F4, /* -12, 464, 60 */ + 0x03E73BF4, /* -12, 462, 62 */ + 0x040737F3, /* -13, 461, 64 */ + 0x04272FF3, /* -13, 459, 66 */ + 0x044727F3, /* -13, 457, 68 */ + 0x04671FF3, /* -13, 455, 70 */ + 0x048717F3, /* -13, 453, 72 */ + 0x04A70FF3, /* -13, 451, 74 */ + 0x04C703F4, /* -12, 448, 76 */ + 0x04D6FFF4, /* -12, 447, 77 */ + 0x04F6F7F4, /* -12, 445, 79 */ + 0x0516EFF4, /* -12, 443, 81 */ + 0x0536E7F4, /* -12, 441, 83 */ + 0x0556DFF4, /* -12, 439, 85 */ + 0x0586CFF5, /* -11, 435, 88 */ + 0x05A6C7F5, /* -11, 433, 90 */ + 0x05C6BFF5, /* -11, 431, 92 */ + 0x05F6B7F4, /* -12, 429, 95 */ + 0x0616AFF4, /* -12, 427, 97 */ + 0x0636A3F5, /* -11, 424, 99 */ + 0x06569BF5, /* -11, 422, 101 */ + 0x06868FF5, /* -11, 419, 104 */ + 0x06A687F5, /* -11, 417, 106 */ + 0x06C67FF5, /* -11, 415, 108 */ + 0x06E677F5, /* -11, 413, 110 */ + 0x07166BF5, /* -11, 410, 113 */ + 0x073663F5, /* -11, 408, 115 */ + 0x07665BF4, /* -12, 406, 118 */ + 0x07964BF5, /* -11, 402, 121 */ + 0x07B643F5, /* -11, 400, 123 */ + 0x07D637F6, /* -10, 397, 125 */ + 0x08062BF6, /* -10, 394, 128 */ + 0x082623F6, /* -10, 392, 130 */ + 0x085617F6, /* -10, 389, 133 */ + 0x08760FF6, /* -10, 387, 135 */ + 0x08B603F5, /* -11, 384, 139 */ + 0x08D5F7F6, /* -10, 381, 141 */ + 0x0905EBF6, /* -10, 378, 144 */ + 0x0925E3F6, /* -10, 376, 146 */ + 0x0955D3F7, /* -9, 372, 149 */ + 0x0985C7F7, /* -9, 369, 152 */ + 0x09A5BFF7, /* -9, 367, 154 */ + 0x09D5B3F7, /* -9, 364, 157 */ + 0x0A05ABF6, /* -10, 362, 160 */ + 0x0A359BF7, /* -9, 358, 163 */ + 0x0A658FF7, /* -9, 355, 166 */ + 0x0A9587F6, /* -10, 353, 169 */ + 0x0AB57BF7, /* -9, 350, 171 */ + 0x0AE56FF7, /* -9, 347, 174 */ + 0x0B1563F7, /* -9, 344, 177 */ + 0x0B455BF6, /* -10, 342, 180 */ + 0x0B754BF7, /* -9, 338, 183 */ + 0x0BA53FF7, /* -9, 335, 186 */ + 0x0BD533F7, /* -9, 332, 189 */ + 0x0C0523F8, /* -8, 328, 192 */ + 0x0C251BF8, /* -8, 326, 194 */ + 0x0C550FF8, /* -8, 323, 197 */ + 0x0C9503F7, /* -9, 320, 201 */ + 0x0CC4F7F7, /* -9, 317, 204 */ + 0x0CF4EBF7, /* -9, 314, 207 */ + 0x0D24DBF8, /* -8, 310, 210 */ + 0x0D54CFF8, /* -8, 307, 213 */ + 0x0D84C3F8, /* -8, 304, 216 */ + 0x0DB4BBF7, /* -9, 302, 219 */ + 0x0DE4AFF7, /* -9, 299, 222 */ + 0x0E149FF8, /* -8, 295, 225 */ + 0x0E4493F8, /* -8, 292, 228 */ + 0x0E7483F9, /* -7, 288, 231 */ + 0x0EA477F9, /* -7, 285, 234 */ + 0x0ED46BF9, /* -7, 282, 237 */ + 0x0F045FF9, /* -7, 279, 240 */ + 0x0F4453F8, /* -8, 276, 244 */ + 0x0F7447F8, /* -8, 273, 247 */ + 0x0FA43BF8, /* -8, 270, 250 */ + 0x0FD42BF9, /* -7, 266, 253 */ + 0x10041FF9, /* -7, 263, 256 */ }; diff --git a/src/cim/cim_msr.c b/src/cim/cim_msr.c index 4a6b72d..6dd4183 100644 --- a/src/cim/cim_msr.c +++ b/src/cim/cim_msr.c @@ -50,7 +50,7 @@ GEODELINK_NODE msr_dev_lookup[MSR_DEVICE_EMPTY]; int msr_init_table(void) { - Q_WORD msr_value = {0, 0}; + Q_WORD msr_value = { 0, 0 }; unsigned int i, j; int return_value = CIM_STATUS_OK; @@ -93,19 +93,16 @@ msr_init_table(void) msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU0].address_from_cpu = MSR_ADDRESS_GLIU0; - msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU0].device_id = - MSR_DEVICE_PRESENT; + msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU0].device_id = MSR_DEVICE_PRESENT; msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU1].address_from_cpu = MSR_ADDRESS_GLIU1; - msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU1].device_id = - MSR_DEVICE_PRESENT; + msr_dev_lookup[MSR_DEVICE_GEODELX_GLIU1].device_id = MSR_DEVICE_PRESENT; msr_dev_lookup[MSR_DEVICE_5535_GLIU].address_from_cpu = MSR_ADDRESS_GLIU2; msr_dev_lookup[MSR_DEVICE_5535_GLIU].device_id = MSR_DEVICE_PRESENT; msr_dev_lookup[MSR_DEVICE_GEODELX_VAIL].address_from_cpu = MSR_ADDRESS_VAIL; - msr_dev_lookup[MSR_DEVICE_GEODELX_VAIL].device_id = - MSR_DEVICE_PRESENT; + msr_dev_lookup[MSR_DEVICE_GEODELX_VAIL].device_id = MSR_DEVICE_PRESENT; for (i = 0; i < MSR_DEVICE_EMPTY; i++) { if (msr_dev_lookup[i].device_id == MSR_DEVICE_NOTFOUND) { @@ -123,7 +120,8 @@ msr_init_table(void) } } } - } else { + } + else { /* ERROR OUT THE GEODELINK TABLES */ for (i = 0; i < 24; i++) { @@ -157,7 +155,7 @@ msr_create_geodelink_table(GEODELINK_NODE * gliu_nodes) int glcp_count = 0; int usb_count = 0; int mpci_count = 0; - Q_WORD msr_value = {0, 0}; + Q_WORD msr_value = { 0, 0 }; /* ALL THREE GLIUS ARE IN ONE ARRAY */ /* Entries 0-7 contain the port information for GLIU0, entries */ @@ -199,7 +197,7 @@ msr_create_geodelink_table(GEODELINK_NODE * gliu_nodes) gliu_nodes[port].device_id = MSR_CLASS_CODE_UNPOPULATED; else { MSR_READ(MSR_GEODELINK_CAP, gliu_nodes[port].address_from_cpu, - &msr_value); + &msr_value); gliu_nodes[port].device_id = GET_DEVICE_ID(msr_value.high, msr_value.low); } @@ -230,7 +228,7 @@ msr_create_geodelink_table(GEODELINK_NODE * gliu_nodes) gliu_nodes[index].device_id = MSR_CLASS_CODE_UNPOPULATED; else { MSR_READ(MSR_GEODELINK_CAP, gliu_nodes[index].address_from_cpu, - &msr_value); + &msr_value); gliu_nodes[index].device_id = GET_DEVICE_ID(msr_value.high, msr_value.low); } @@ -272,7 +270,7 @@ msr_create_geodelink_table(GEODELINK_NODE * gliu_nodes) gliu_nodes[index].device_id = MSR_CLASS_CODE_UNPOPULATED; else { MSR_READ(MSR_GEODELINK_CAP, gliu_nodes[index].address_from_cpu, - &msr_value); + &msr_value); gliu_nodes[index].device_id = GET_DEVICE_ID(msr_value.high, msr_value.low); } @@ -397,13 +395,12 @@ msr_create_device_list(GEODELINK_NODE * gliu_nodes, int max_devices) *-------------------------------------------------------------------*/ int -msr_read64(unsigned long device, unsigned long msr_register, - Q_WORD * msr_value) +msr_read64(unsigned long device, unsigned long msr_register, Q_WORD * msr_value) { if (device < MSR_DEVICE_EMPTY) { if (msr_dev_lookup[device].device_id == MSR_DEVICE_PRESENT) { MSR_READ(msr_register, msr_dev_lookup[device].address_from_cpu, - msr_value); + msr_value); return CIM_STATUS_OK; } } @@ -421,12 +418,12 @@ msr_read64(unsigned long device, unsigned long msr_register, int msr_write64(unsigned long device, unsigned long msr_register, - Q_WORD * msr_value) + Q_WORD * msr_value) { if (device < MSR_DEVICE_EMPTY) { if (msr_dev_lookup[device].device_id == MSR_DEVICE_PRESENT) { MSR_WRITE(msr_register, msr_dev_lookup[device].address_from_cpu, - msr_value); + msr_value); return CIM_STATUS_OK; } } diff --git a/src/cim/cim_parm.h b/src/cim/cim_parm.h index ed1df8b..a8fa9b0 100644 --- a/src/cim/cim_parm.h +++ b/src/cim/cim_parm.h @@ -101,8 +101,7 @@ /* on a GeodeLink Interface Unit (GLIU) */ /*---------------------------------------------*/ -typedef struct tagGeodeLinkNode -{ +typedef struct tagGeodeLinkNode { unsigned long address_from_cpu; unsigned long device_id; @@ -113,8 +112,7 @@ typedef struct tagGeodeLinkNode /* 64-bit data structure for MSR acess. */ /*---------------------------------------------*/ -typedef struct tagQ_WORD -{ +typedef struct tagQ_WORD { unsigned long high; unsigned long low; @@ -124,8 +122,7 @@ typedef struct tagQ_WORD /* INITIALIZATION USER PARAMETERS */ /*===================================================*/ -typedef struct tagInitBaseAddresses -{ +typedef struct tagInitBaseAddresses { unsigned long framebuffer_base; unsigned long gp_register_base; unsigned long vg_register_base; @@ -212,8 +209,7 @@ typedef struct tagInitBaseAddresses /* USER STRUCTURE FOR SAVING/RESTORING GP STATE */ /*----------------------------------------------*/ -typedef struct tagGPSaveRestore -{ +typedef struct tagGPSaveRestore { unsigned long base_offset; unsigned long cmd_top; unsigned long cmd_bottom; @@ -326,8 +322,7 @@ typedef struct tagGPSaveRestore VG_MODEFLAG_EXCLUDEPLL | \ VG_MODEFLAG_LINEARPITCH) -typedef struct tagVGDisplayMode -{ +typedef struct tagVGDisplayMode { /* DISPLAY MODE FLAGS */ /* Includes BPP, refresh rate information, interlacing, etc. */ @@ -402,8 +397,7 @@ typedef struct tagVGDisplayMode /* USER STRUCTURE FOR QUERYING DISPLAY MODES */ /*-------------------------------------------*/ -typedef struct tagQueryDisplayMode -{ +typedef struct tagQueryDisplayMode { int interlaced; int halfclock; unsigned long active_width; @@ -425,8 +419,7 @@ typedef struct tagQueryDisplayMode /* USER STRUCTURE FOR QUERYING CURSOR DATA */ /*-------------------------------------------*/ -typedef struct tagCursorData -{ +typedef struct tagCursorData { int enable; int color_cursor; unsigned long cursor_offset; @@ -451,8 +444,7 @@ typedef struct tagCursorData /* USER STRUCTURE FOR SETTING COMPRESSION DATA */ /*------------------------------------------------*/ -typedef struct tagCompressionData -{ +typedef struct tagCompressionData { unsigned long compression_offset; unsigned long pitch; unsigned long size; @@ -464,8 +456,7 @@ typedef struct tagCompressionData /* USER STRUCTURE FOR CONFIGURING LINE INTERRUPTS */ /*-------------------------------------------------*/ -typedef struct tagInterruptInfo -{ +typedef struct tagInterruptInfo { unsigned long line; unsigned long flags; int enable; @@ -476,8 +467,7 @@ typedef struct tagInterruptInfo /* USER STRUCTURE FOR PANNING THE DESKTOP */ /*-------------------------------------------------*/ -typedef struct tagPanningInfo -{ +typedef struct tagPanningInfo { unsigned long start_x; unsigned long start_y; int start_updated; @@ -488,8 +478,7 @@ typedef struct tagPanningInfo /* USER STRUCTURE FOR SAVING/RESTORING THE VG STATE */ /*--------------------------------------------------*/ -typedef struct tagVGSaveRestore -{ +typedef struct tagVGSaveRestore { /* VG REGISTERS */ unsigned long unlock; @@ -680,8 +669,7 @@ typedef struct tagVGSaveRestore #define DF_SOURCEFLAG_HDTVSOURCE 0x0001 #define DF_SOURCEFLAG_IMPLICITSCALING 0x0002 -typedef struct tagVideoSourceInfo -{ +typedef struct tagVideoSourceInfo { unsigned long video_format; unsigned long y_offset; unsigned long u_offset; @@ -701,8 +689,7 @@ typedef struct tagVideoSourceInfo #define DF_POSFLAG_DIRECTCLIP 0x0001 #define DF_POSFLAG_INCLUDEBORDER 0x0002 -typedef struct tagVideoPosition -{ +typedef struct tagVideoPosition { long x; long y; unsigned long width; @@ -717,8 +704,7 @@ typedef struct tagVideoPosition /* USER STRUCTURE FOR CONFIGURING THE VIDEO CURSOR */ /*-------------------------------------------------*/ -typedef struct tagVideoCursorInfo -{ +typedef struct tagVideoCursorInfo { unsigned long key; unsigned long mask; unsigned long color1; @@ -735,8 +721,7 @@ typedef struct tagVideoCursorInfo #define DF_ALPHAFLAG_COLORENABLED 0x0001 #define DF_ALPHAFLAG_PERPIXELENABLED 0x0002 -typedef struct tagAlphaRegionInfo -{ +typedef struct tagAlphaRegionInfo { unsigned long x; unsigned long y; unsigned long width; @@ -753,8 +738,7 @@ typedef struct tagAlphaRegionInfo /* USER STRUCTURE FOR SAVING/RESTORING DF DATA */ /*-------------------------------------------------*/ -typedef struct tagDFSaveRestore -{ +typedef struct tagDFSaveRestore { unsigned long vcfg; unsigned long dcfg; unsigned long video_x; @@ -828,8 +812,7 @@ typedef struct tagDFSaveRestore /* USER STRUCTURE FOR CONFIGURING 601 SETTINGS */ /*---------------------------------------------*/ -typedef struct _TAG_VIP601PARAMS -{ +typedef struct _TAG_VIP601PARAMS { unsigned long flags; unsigned long horz_start; unsigned long width; @@ -886,8 +869,7 @@ typedef struct _TAG_VIP601PARAMS #define VIP_420CAPTURE_ALTERNATINGLINES 0x00000002 #define VIP_420CAPTURE_ALTERNATINGFIELDS 0x00000003 -typedef struct _TAG_SETMODEBUFFER -{ +typedef struct _TAG_SETMODEBUFFER { unsigned long flags; unsigned long stream_enables; unsigned long operating_mode; @@ -929,8 +911,7 @@ typedef struct _TAG_SETMODEBUFFER /* USER STRUCTURE FOR CONFIGURING THE VG VSYNC GENLOCK */ /*--------------------------------------------------------*/ -typedef struct _TAG_GENLOCKBUFFER -{ +typedef struct _TAG_GENLOCKBUFFER { unsigned long vip_signal_loss; unsigned long vsync_to_vg; unsigned long field_to_vg; @@ -943,8 +924,7 @@ typedef struct _TAG_GENLOCKBUFFER /* USER STRUCTURE FOR CONFIGURING VIP ANCILLARY CAPTURE */ /*------------------------------------------------------*/ -typedef struct _TAG_ANCILLARYBUFFER -{ +typedef struct _TAG_ANCILLARYBUFFER { unsigned long msg1_base; unsigned long msg2_base; unsigned long msg_size; @@ -975,8 +955,7 @@ typedef struct _TAG_ANCILLARYBUFFER #define VIP_BUFFER_B_ODD 0x0007 #define VIP_BUFFER_B_EVEN 0x0008 -typedef struct _TAG_INPUTBUFFER_ADDR -{ +typedef struct _TAG_INPUTBUFFER_ADDR { unsigned long even_base[VIP_MAX_BUFFERS]; unsigned long odd_base[VIP_MAX_BUFFERS]; unsigned long y_pitch; @@ -990,8 +969,7 @@ typedef struct _TAG_INPUTBUFFER_ADDR } VIPINPUTBUFFER_ADDR; -typedef struct _TAG_SETINPUTBUFFER -{ +typedef struct _TAG_SETINPUTBUFFER { unsigned long flags; VIPINPUTBUFFER_ADDR offsets[VIP_BUFFER_MAX_TASKS]; unsigned long current_buffer; @@ -1004,8 +982,7 @@ typedef struct _TAG_SETINPUTBUFFER /* USER STRUCTURE FOR CONFIGURING VIP SUBWINDOW CAPTURE */ /*------------------------------------------------------*/ -typedef struct _TAG_SUBWINDOWBUFFER -{ +typedef struct _TAG_SUBWINDOWBUFFER { int enable; unsigned long start; unsigned long stop; @@ -1016,8 +993,7 @@ typedef struct _TAG_SUBWINDOWBUFFER /* USER STRUCTURE FOR SAVING/RESTORING VIP REGISTERS */ /*--------------------------------------------------------*/ -typedef struct _TAG_VIPSTATEBUFFER -{ +typedef struct _TAG_VIPSTATEBUFFER { unsigned long control1; unsigned long control2; unsigned long vip_int; @@ -1108,8 +1084,7 @@ typedef struct _TAG_VIPSTATEBUFFER /* USER STRUCTURE FOR QUERYING VIP CAPABILITIES */ /*-------------------------------------------------*/ -typedef struct _TAG_CAPABILITIESBUFFER -{ +typedef struct _TAG_CAPABILITIESBUFFER { unsigned long revision_id; unsigned long device_id; unsigned long n_clock_domains; @@ -1121,8 +1096,7 @@ typedef struct _TAG_CAPABILITIESBUFFER /* USER STRUCTURE FOR CONFIGURING VIP POWER */ /*-------------------------------------------------*/ -typedef struct _TAG_POWERBUFFER -{ +typedef struct _TAG_POWERBUFFER { int glink_clock_mode; int vip_clock_mode; @@ -1132,8 +1106,7 @@ typedef struct _TAG_POWERBUFFER /* USER STRUCTURE FOR CONFIGURING VIP PRIORITIES */ /*-------------------------------------------------*/ -typedef struct _TAG_PRIORITYBUFFER -{ +typedef struct _TAG_PRIORITYBUFFER { unsigned long secondary; unsigned long primary; unsigned long pid; @@ -1164,8 +1137,7 @@ typedef struct _TAG_PRIORITYBUFFER #define VIP_DIAG_LOWER_FORMATTER 0x00000200 #define VIP_DIAG_LOWER_INPUT_CONTROL 0x00000400 -typedef struct _TAG_DEBUGBUFFER -{ +typedef struct _TAG_DEBUGBUFFER { unsigned long bist; unsigned long enable_upper; unsigned long select_upper; @@ -1182,8 +1154,7 @@ typedef struct _TAG_DEBUGBUFFER /* USER STRUCTURE FOR CONFIGURING VBI CAPTURE */ /*------------------------------------------------------*/ -typedef struct _TAG_VBIWINDOWBUFFER -{ +typedef struct _TAG_VBIWINDOWBUFFER { long horz_start; unsigned long vbi_width; unsigned long odd_line_capture_mask; @@ -1217,8 +1188,7 @@ typedef struct _TAG_VBIWINDOWBUFFER #define VOP_601_RGB_8_8_8 0x00000002 #define VOP_601_YUV_4_4_4 0x00000003 -typedef struct _TAG_VOP601 -{ +typedef struct _TAG_VOP601 { unsigned long flags; unsigned long vsync_shift; unsigned long vsync_shift_count; @@ -1262,8 +1232,7 @@ typedef struct _TAG_VOP601 #define VOP_MB_SYNCSEL_STATREG17 0x00000060 #define VOP_MB_SYNCSEL_STATREG17_INV 0x00000080 -typedef struct _TAG_VOPMODECONFIGURATIONBUFFER -{ +typedef struct _TAG_VOPMODECONFIGURATIONBUFFER { unsigned long flags; unsigned long mode; unsigned long conversion_mode; @@ -1276,8 +1245,7 @@ typedef struct _TAG_VOPMODECONFIGURATIONBUFFER /* USER STRUCTURE FOR SAVING/RESTORING VOP REGISTERS */ /*--------------------------------------------------------*/ -typedef struct _TAG_VOPSTATEBUFFER -{ +typedef struct _TAG_VOPSTATEBUFFER { unsigned long config; } VOPSTATEBUFFER; diff --git a/src/cim/cim_regs.h b/src/cim/cim_regs.h index 6d434a2..f0bc95a 100644 --- a/src/cim/cim_regs.h +++ b/src/cim/cim_regs.h @@ -636,8 +636,7 @@ /* and not the m, n and p from the PLL equation. The PLL */ /* equation adds 1 to each value. */ -typedef struct tagPLLFrequency -{ +typedef struct tagPLLFrequency { unsigned long pll_value; unsigned long frequency; diff --git a/src/cim/cim_rtns.h b/src/cim/cim_rtns.h index 60bdcd1..588d3d1 100644 --- a/src/cim/cim_rtns.h +++ b/src/cim/cim_rtns.h @@ -38,8 +38,7 @@ /* COMPILER OPTION FOR C++ PROGRAMS */ #ifdef __cplusplus -extern "C" -{ +extern "C" { #endif /*--------------------------*/ @@ -59,7 +58,7 @@ extern "C" /*----------------------------------------*/ int init_detect_cpu(unsigned long *cpu_revision, - unsigned long *companion_revision); + unsigned long *companion_revision); unsigned long init_read_pci(unsigned long address); int init_read_base_addresses(INIT_BASE_ADDRESSES * base_addresses); int init_read_cpu_frequency(unsigned long *cpu_frequency); @@ -70,7 +69,7 @@ extern "C" void gp_set_limit_on_buffer_lead(unsigned long lead); void gp_set_command_buffer_base(unsigned long address, - unsigned long start, unsigned long stop); + unsigned long start, unsigned long stop); void gp_set_frame_buffer_base(unsigned long address, unsigned long size); void gp_set_bpp(int bpp); void gp_declare_blt(unsigned long flags); @@ -78,69 +77,76 @@ extern "C" void gp_write_parameters(void); void gp_set_raster_operation(unsigned char ROP); void gp_set_alpha_operation(int alpha_operation, int alpha_type, - int channel, int apply_alpha, unsigned char alpha); + int channel, int apply_alpha, + unsigned char alpha); void gp_set_solid_pattern(unsigned long color); void gp_set_mono_pattern(unsigned long bgcolor, unsigned long fgcolor, - unsigned long data0, unsigned long data1, int transparent, int x, - int y); + unsigned long data0, unsigned long data1, + int transparent, int x, int y); void gp_set_pattern_origin(int x, int y); - void gp_set_color_pattern(unsigned long *pattern, int format, int x, - int y); + void gp_set_color_pattern(unsigned long *pattern, int format, int x, int y); void gp_set_mono_source(unsigned long bgcolor, unsigned long fgcolor, - int transparent); + int transparent); void gp_set_solid_source(unsigned long color); void gp_set_source_transparency(unsigned long color, unsigned long mask); void gp_program_lut(unsigned long *colors, int full_lut); void gp_set_vector_pattern(unsigned long pattern, unsigned long color, - int length); + int length); void gp_set_strides(unsigned long dst_stride, unsigned long src_stride); void gp_set_source_format(int format); void gp_pattern_fill(unsigned long dstoffset, unsigned long width, - unsigned long height); + unsigned long height); void gp_screen_to_screen_blt(unsigned long dstoffset, - unsigned long srcoffset, unsigned long width, - unsigned long height, int flags); + unsigned long srcoffset, unsigned long width, + unsigned long height, int flags); void gp_screen_to_screen_convert(unsigned long dstoffset, - unsigned long srcoffset, unsigned long width, - unsigned long height, int nibble); + unsigned long srcoffset, + unsigned long width, unsigned long height, + int nibble); void gp_color_bitmap_to_screen_blt(unsigned long dstoffset, - unsigned long srcx, unsigned long width, unsigned long height, - unsigned char *data, long pitch); + unsigned long srcx, unsigned long width, + unsigned long height, + unsigned char *data, long pitch); void gp_color_convert_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, unsigned char *data, - long pitch); + unsigned long width, unsigned long height, + unsigned char *data, long pitch); void gp_custom_convert_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, unsigned char *data, - long pitch); + unsigned long width, unsigned long height, + unsigned char *data, long pitch); void gp_rotate_blt(unsigned long dstoffset, unsigned long srcoffset, - unsigned long width, unsigned long height, int degrees); + unsigned long width, unsigned long height, int degrees); void gp_mono_bitmap_to_screen_blt(unsigned long dstoffset, - unsigned long srcx, unsigned long width, unsigned long height, - unsigned char *data, long stride); + unsigned long srcx, unsigned long width, + unsigned long height, unsigned char *data, + long stride); void gp_text_blt(unsigned long dstoffset, unsigned long width, - unsigned long height, unsigned char *data); + unsigned long height, unsigned char *data); void gp_mono_expand_blt(unsigned long dstoffset, unsigned long srcoffset, - unsigned long srcx, unsigned long width, unsigned long height, - int byte_packed); + unsigned long srcx, unsigned long width, + unsigned long height, int byte_packed); void gp_antialiased_text(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, unsigned char *data, - long stride, int fourbpp); - void gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, - unsigned long width, unsigned long height, unsigned long, - long stride, int operation, int fourbpp); - void gp_masked_blt(unsigned long dstoffset, unsigned long width, - unsigned long height, unsigned long mono_srcx, - unsigned long color_srcx, unsigned char *mono_mask, - unsigned char *color_data, long mono_pitch, long color_pitch); + unsigned long width, unsigned long height, + unsigned char *data, long stride, int fourbpp); + void gp_blend_mask_blt(unsigned long dstoffset, unsigned long srcx, + unsigned long width, unsigned long height, + unsigned long, long stride, int operation, + int fourbpp); + void gp_masked_blt(unsigned long dstoffset, unsigned long width, + unsigned long height, unsigned long mono_srcx, + unsigned long color_srcx, unsigned char *mono_mask, + unsigned char *color_data, long mono_pitch, + long color_pitch); void gp_screen_to_screen_masked(unsigned long dstoffset, - unsigned long srcoffset, unsigned long width, - unsigned long height, unsigned long mono_srcx, - unsigned char *mono_mask, long mono_pitch); + unsigned long srcoffset, + unsigned long width, unsigned long height, + unsigned long mono_srcx, + unsigned char *mono_mask, long mono_pitch); void gp_bresenham_line(unsigned long dstoffset, unsigned short length, - unsigned short initerr, unsigned short axialerr, - unsigned short diagerr, unsigned long flags); + unsigned short initerr, unsigned short axialerr, + unsigned short diagerr, unsigned long flags); void gp_line_from_endpoints(unsigned long dstoffset, unsigned long x0, - unsigned long y0, unsigned long x1, unsigned long y1, int inclusive); + unsigned long y0, unsigned long x1, + unsigned long y1, int inclusive); int gp_test_blt_pending(void); void gp_wait_blt_pending(void); @@ -155,50 +161,54 @@ extern "C" int vg_delay_milliseconds(unsigned long ms); int vg_set_display_mode(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, int bpp, int hz, - unsigned long flags); + unsigned long dst_width, unsigned long dst_height, + int bpp, int hz, unsigned long flags); int vg_set_panel_mode(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, - unsigned long panel_width, unsigned long panel_height, - int bpp, unsigned long flags); + unsigned long dst_width, unsigned long dst_height, + unsigned long panel_width, unsigned long panel_height, + int bpp, unsigned long flags); int vg_set_tv_mode(unsigned long *src_width, unsigned long *src_height, - unsigned long encoder, unsigned long tvres, int bpp, - unsigned long flags, unsigned long h_overscan, - unsigned long v_overscan); + unsigned long encoder, unsigned long tvres, int bpp, + unsigned long flags, unsigned long h_overscan, + unsigned long v_overscan); int vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp); int vg_set_display_bpp(int bpp); int vg_get_display_mode_index(VG_QUERY_MODE * query); int vg_get_display_mode_information(unsigned int index, - VG_DISPLAY_MODE * vg_mode); + VG_DISPLAY_MODE * vg_mode); int vg_get_display_mode_count(void); int vg_get_current_display_mode(VG_DISPLAY_MODE * current_display, - int *bpp); + int *bpp); int vg_set_scaler_filter_coefficients(long h_taps[][5], long v_taps[][3]); int vg_configure_flicker_filter(unsigned long flicker_strength, - int flicker_alpha); + int flicker_alpha); int vg_set_clock_frequency(unsigned long frequency, - unsigned long pll_flags); + unsigned long pll_flags); int vg_set_border_color(unsigned long border_color); int vg_set_cursor_enable(int enable); - int vg_set_mono_cursor_colors(unsigned long bkcolor, - unsigned long fgcolor); + int vg_set_mono_cursor_colors(unsigned long bkcolor, unsigned long fgcolor); int vg_set_cursor_position(long xpos, long ypos, - VG_PANNING_COORDINATES * panning); + VG_PANNING_COORDINATES * panning); int vg_set_mono_cursor_shape32(unsigned long memoffset, - unsigned long *andmask, unsigned long *xormask, - unsigned long x_hotspot, unsigned long y_hotspot); + unsigned long *andmask, + unsigned long *xormask, + unsigned long x_hotspot, + unsigned long y_hotspot); int vg_set_mono_cursor_shape64(unsigned long memoffset, - unsigned long *andmask, unsigned long *xormask, - unsigned long x_hotspot, unsigned long y_hotspot); - int vg_set_color_cursor_shape(unsigned long memoffset, - unsigned char *data, unsigned long width, unsigned long height, - long pitch, unsigned long x_hotspot, unsigned long y_hotspot); + unsigned long *andmask, + unsigned long *xormask, + unsigned long x_hotspot, + unsigned long y_hotspot); + int vg_set_color_cursor_shape(unsigned long memoffset, unsigned char *data, + unsigned long width, unsigned long height, + long pitch, unsigned long x_hotspot, + unsigned long y_hotspot); int vg_pan_desktop(unsigned long x, unsigned long y, - VG_PANNING_COORDINATES * panning); + VG_PANNING_COORDINATES * panning); int vg_set_display_offset(unsigned long address); int vg_set_display_pitch(unsigned long pitch); int vg_set_display_palette_entry(unsigned long index, - unsigned long palette); + unsigned long palette); int vg_set_display_palette(unsigned long *palette); int vg_set_compression_enable(int enable); int vg_configure_compression(VG_COMPRESSION_DATA * comp_data); @@ -218,17 +228,17 @@ extern "C" unsigned long vg_read_graphics_crc(int crc_source); unsigned long vg_read_window_crc(int crc_source, unsigned long x, - unsigned long y, unsigned long width, unsigned long height); + unsigned long y, unsigned long width, + unsigned long height); int vg_get_scaler_filter_coefficients(long h_taps[][5], long v_taps[][3]); int vg_get_flicker_filter_configuration(unsigned long *strength, - int *flicker_alpha); + int *flicker_alpha); unsigned long vg_get_display_pitch(void); unsigned long vg_get_frame_buffer_line_size(void); unsigned long vg_get_current_vline(void); unsigned long vg_get_display_offset(void); int vg_get_cursor_info(VG_CURSOR_DATA * cursor_data); - int vg_get_display_palette_entry(unsigned long index, - unsigned long *entry); + int vg_get_display_palette_entry(unsigned long index, unsigned long *entry); unsigned long vg_get_border_color(void); int vg_get_display_palette(unsigned long *palette); int vg_get_compression_info(VG_COMPRESSION_DATA * comp_data); @@ -242,25 +252,24 @@ extern "C" int df_set_crt_enable(int crt_output); int df_set_panel_enable(int panel_output); int df_configure_video_source(DF_VIDEO_SOURCE_PARAMS * video_source_odd, - DF_VIDEO_SOURCE_PARAMS * video_source_even); + DF_VIDEO_SOURCE_PARAMS * video_source_even); int df_set_video_offsets(int even, unsigned long y_offset, - unsigned long u_offset, unsigned long v_offset); + unsigned long u_offset, unsigned long v_offset); int df_set_video_scale(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, - unsigned long flags); + unsigned long dst_width, unsigned long dst_height, + unsigned long flags); int df_set_video_position(DF_VIDEO_POSITION * video_window); int df_set_video_filter_coefficients(long taps[][4], int phase256); int df_set_video_enable(int enable, unsigned long flags); int df_set_video_color_key(unsigned long key, unsigned long mask, - int graphics); + int graphics); int df_set_video_palette(unsigned long *palette); - int df_set_video_palette_entry(unsigned long index, - unsigned long palette); + int df_set_video_palette_entry(unsigned long index, unsigned long palette); int df_configure_video_cursor_color_key(DF_VIDEO_CURSOR_PARAMS * - cursor_color_key); + cursor_color_key); int df_set_video_cursor_color_key_enable(int enable); int df_configure_alpha_window(int window, - DF_ALPHA_REGION_PARAMS * alpha_data); + DF_ALPHA_REGION_PARAMS * alpha_data); int df_set_alpha_window_enable(int window, int enable); int df_set_no_ck_outside_alpha(int enable); int df_set_video_request(unsigned long x, unsigned long y); @@ -276,25 +285,28 @@ extern "C" unsigned long df_read_composite_crc(int crc_source); unsigned long df_read_composite_window_crc(unsigned long x, - unsigned long y, unsigned long width, unsigned long height, - int source); + unsigned long y, + unsigned long width, + unsigned long height, + int source); unsigned long df_read_panel_crc(void); int df_get_video_enable(int *enable, unsigned long *flags); int df_get_video_source_configuration(DF_VIDEO_SOURCE_PARAMS * - video_source_odd, DF_VIDEO_SOURCE_PARAMS * video_source_even); + video_source_odd, + DF_VIDEO_SOURCE_PARAMS * + video_source_even); int df_get_video_position(DF_VIDEO_POSITION * video_window); int df_get_video_scale(unsigned long *x_scale, unsigned long *y_scale); int df_get_video_filter_coefficients(long taps[][4], int *phase256); int df_get_video_color_key(unsigned long *key, unsigned long *mask, - int *graphics); - int df_get_video_palette_entry(unsigned long index, - unsigned long *palette); + int *graphics); + int df_get_video_palette_entry(unsigned long index, unsigned long *palette); int df_get_video_palette(unsigned long *palette); int df_get_video_cursor_color_key(DF_VIDEO_CURSOR_PARAMS * - cursor_color_key); + cursor_color_key); int df_get_video_cursor_color_key_enable(void); int df_get_alpha_window_configuration(int window, - DF_ALPHA_REGION_PARAMS * alpha_data); + DF_ALPHA_REGION_PARAMS * alpha_data); int df_get_alpha_window_enable(int window); int df_get_video_request(unsigned long *x, unsigned long *y); int df_get_output_color_space(int *color_space); @@ -307,9 +319,9 @@ extern "C" int msr_create_geodelink_table(GEODELINK_NODE * gliu_nodes); int msr_create_device_list(GEODELINK_NODE * gliu_nodes, int max_devices); int msr_read64(unsigned long device, unsigned long msr_register, - Q_WORD * msr_value); + Q_WORD * msr_value); int msr_write64(unsigned long device, unsigned long msr_register, - Q_WORD * msr_value); + Q_WORD * msr_value); /*----------------------------------------*/ /* VIP ROUTINE DEFINITIONS */ @@ -318,15 +330,15 @@ extern "C" int vip_initialize(VIPSETMODEBUFFER * buffer); int vip_update_601_params(VIP_601PARAMS * buffer); int vip_terminate(void); - int vip_configure_capture_buffers(int buffer_type, - VIPINPUTBUFFER * buffer); + int vip_configure_capture_buffers(int buffer_type, VIPINPUTBUFFER * buffer); int vip_toggle_video_offsets(int buffer_type, VIPINPUTBUFFER * buffer); int vip_max_address_enable(unsigned long max_address, int enable); int vip_set_interrupt_enable(unsigned long mask, int enable); unsigned long vip_get_interrupt_state(void); int vip_set_capture_state(unsigned long state); int vip_set_vsync_error(unsigned long vertical_count, - unsigned long window_before, unsigned long window_after, int enable); + unsigned long window_before, + unsigned long window_after, int enable); int vip_configure_fifo(unsigned long fifo_type, unsigned long fifo_size); int vip_set_loopback_enable(int bEnable); int vip_configure_genlock(VIPGENLOCKBUFFER * buffer); @@ -352,8 +364,7 @@ extern "C" int vip_get_current_mode(VIPSETMODEBUFFER * buffer); int vip_get_601_configuration(VIP_601PARAMS * buffer); - int vip_get_buffer_configuration(int buffer_type, - VIPINPUTBUFFER * buffer); + int vip_get_buffer_configuration(int buffer_type, VIPINPUTBUFFER * buffer); int vip_get_genlock_configuration(VIPGENLOCKBUFFER * buffer); int vip_get_genlock_enable(void); int vip_is_buffer_update_latched(void); @@ -391,5 +402,4 @@ extern "C" #ifdef __cplusplus } #endif - #endif diff --git a/src/cim/cim_vg.c b/src/cim/cim_vg.c index ff24221..bc429cb 100644 --- a/src/cim/cim_vg.c +++ b/src/cim/cim_vg.c @@ -76,8 +76,8 @@ vg_delay_milliseconds(unsigned long ms) int vg_set_display_mode(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, - int bpp, int hz, unsigned long flags) + unsigned long dst_width, unsigned long dst_height, + int bpp, int hz, unsigned long flags) { VG_QUERY_MODE crt_query; VG_DISPLAY_MODE crt_mode; @@ -130,9 +130,9 @@ vg_set_display_mode(unsigned long src_width, unsigned long src_height, int vg_set_panel_mode(unsigned long src_width, unsigned long src_height, - unsigned long dst_width, unsigned long dst_height, - unsigned long panel_width, unsigned long panel_height, - int bpp, unsigned long flags) + unsigned long dst_width, unsigned long dst_height, + unsigned long panel_width, unsigned long panel_height, + int bpp, unsigned long flags) { unsigned long sync_width; unsigned long sync_offset; @@ -233,8 +233,9 @@ vg_set_panel_mode(unsigned long src_width, unsigned long src_height, int vg_set_tv_mode(unsigned long *src_width, unsigned long *src_height, - unsigned long encoder, unsigned long tvres, int bpp, - unsigned long flags, unsigned long h_overscan, unsigned long v_overscan) + unsigned long encoder, unsigned long tvres, int bpp, + unsigned long flags, unsigned long h_overscan, + unsigned long v_overscan) { unsigned long sync_width; unsigned long sync_offset; @@ -260,17 +261,16 @@ vg_set_tv_mode(unsigned long *src_width, unsigned long *src_height, */ if (!(*src_width) || !(*src_height)) { - *src_width = CimarronDisplayModes[mode].hactive - - (h_overscan << 1); + *src_width = CimarronDisplayModes[mode].hactive - (h_overscan << 1); *src_height = CimarronDisplayModes[mode].vactive; if (CimarronDisplayModes[mode].flags & VG_MODEFLAG_INTERLACED) { if (((flags & VG_MODEFLAG_INT_OVERRIDE) && - (flags & VG_MODEFLAG_INT_MASK) == - VG_MODEFLAG_INT_LINEDOUBLE) + (flags & VG_MODEFLAG_INT_MASK) == + VG_MODEFLAG_INT_LINEDOUBLE) || (!(flags & VG_MODEFLAG_INT_OVERRIDE) - && (CimarronDisplayModes[mode]. - flags & VG_MODEFLAG_INT_MASK) == + && (CimarronDisplayModes[mode].flags & + VG_MODEFLAG_INT_MASK) == VG_MODEFLAG_INT_LINEDOUBLE)) { if (CimarronDisplayModes[mode].vactive_even > CimarronDisplayModes[mode].vactive) @@ -279,11 +279,13 @@ vg_set_tv_mode(unsigned long *src_width, unsigned long *src_height, /* ONLY 1/2 THE OVERSCAN FOR LINE DOUBLED MODES */ *src_height -= v_overscan; - } else { + } + else { *src_height += CimarronDisplayModes[mode].vactive_even; *src_height -= v_overscan << 1; } - } else { + } + else { *src_height -= v_overscan << 1; } @@ -344,7 +346,8 @@ vg_set_tv_mode(unsigned long *src_width, unsigned long *src_height, tv_mode.vsyncstart_even = tv_mode.vblankstart_even + sync_offset; tv_mode.vsyncend_even = tv_mode.vsyncstart_even + sync_width; - } else { + } + else { tv_mode.vactive -= v_overscan << 1; tv_mode.vblankstart = tv_mode.vactive + v_overscan; tv_mode.vblankend = tv_mode.vtotal - v_overscan; @@ -433,7 +436,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) hscale = (mode_params->src_width << 14) / (mode_params->mode_width - 1); irq_ctl |= (DC3_IRQFILT_ALPHA_FILT_EN | DC3_IRQFILT_GFX_FILT_EN); - } else { + } + else { starting_width = mode_params->hactive; hscale = 0x4000; } @@ -443,24 +447,28 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) vscale = (mode_params->src_height << 14) / (mode_params->mode_height - 1); irq_ctl |= (DC3_IRQFILT_ALPHA_FILT_EN | DC3_IRQFILT_GFX_FILT_EN); - } else { + } + else { starting_height = output_height; vscale = 0x4000; } - } else { + } + else { starting_width = mode_params->src_width; starting_height = mode_params->src_height; if (mode_params->src_width != mode_params->hactive) { hscale = (mode_params->src_width << 14) / (mode_params->hactive - 1); irq_ctl |= (DC3_IRQFILT_ALPHA_FILT_EN | DC3_IRQFILT_GFX_FILT_EN); - } else { + } + else { hscale = 0x4000; } if (mode_params->src_height != output_height) { vscale = (mode_params->src_height << 14) / (output_height - 1); irq_ctl |= (DC3_IRQFILT_ALPHA_FILT_EN | DC3_IRQFILT_GFX_FILT_EN); - } else { + } + else { vscale = 0x4000; } } @@ -480,9 +488,9 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) if (mode_params->flags & VG_MODEFLAG_INTERLACED) { if ((((mode_params->flags & VG_MODEFLAG_INT_MASK) == - VG_MODEFLAG_INT_FLICKER) && (mode_params->hactive > 1024)) + VG_MODEFLAG_INT_FLICKER) && (mode_params->hactive > 1024)) || (((mode_params->flags & VG_MODEFLAG_INT_MASK) == - VG_MODEFLAG_INT_ADDRESS) && irq_ctl)) { + VG_MODEFLAG_INT_ADDRESS) && irq_ctl)) { return CIM_STATUS_INVALIDSCALE; } } @@ -536,8 +544,9 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) if ((mode_params->flags & VG_MODEFLAG_INVERT_SHFCLK) && !(temp & DF_PM_INVERT_SHFCLK)) { WRITE_VID32(DF_POWER_MANAGEMENT, (temp | DF_PM_INVERT_SHFCLK)); - } else if (!(mode_params->flags & VG_MODEFLAG_INVERT_SHFCLK) && - (temp & DF_PM_INVERT_SHFCLK)) { + } + else if (!(mode_params->flags & VG_MODEFLAG_INVERT_SHFCLK) && + (temp & DF_PM_INVERT_SHFCLK)) { WRITE_VID32(DF_POWER_MANAGEMENT, (temp & ~DF_PM_INVERT_SHFCLK)); } @@ -552,13 +561,15 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) dith_ctl = DF_DEFAULT_DITHCTL; msr_value.low = DF_DEFAULT_XVGA_PAD_SEL_LOW; msr_value.high = DF_DEFAULT_XVGA_PAD_SEL_HIGH; - } else if (mode_params->flags & VG_MODEFLAG_CUSTOM_PANEL) { + } + else if (mode_params->flags & VG_MODEFLAG_CUSTOM_PANEL) { pmtim1 = mode_params->panel_tim1; pmtim2 = mode_params->panel_tim2; dith_ctl = mode_params->panel_dither_ctl; msr_value.low = mode_params->panel_pad_sel_low; msr_value.high = mode_params->panel_pad_sel_high; - } else { + } + else { pmtim1 = DF_DEFAULT_TFT_PMTIM1; pmtim2 = DF_DEFAULT_TFT_PMTIM2; dith_ctl = DF_DEFAULT_DITHCTL; @@ -585,7 +596,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) msr_write64(MSR_DEVICE_GEODELX_DF, MSR_GEODELINK_CONFIG, &msr_value); - } else if (mode_params->flags & VG_MODEFLAG_TVOUT) { + } + else if (mode_params->flags & VG_MODEFLAG_TVOUT) { vg3_panel_enable = 0; /* SET APPROPRIATE TV OUTPUT MODE */ @@ -607,7 +619,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) msr_value.low = DF_DEFAULT_TV_PAD_SEL_LOW; msr_value.high = DF_DEFAULT_TV_PAD_SEL_HIGH; msr_write64(MSR_DEVICE_GEODELX_DF, DF_MSR_PAD_SEL, &msr_value); - } else { + } + else { vg3_panel_enable = 0; /* SET OUTPUT TO CRT ONLY */ @@ -652,7 +665,7 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) /* DISABLE VG INTERRUPTS */ WRITE_REG32(DC3_IRQ, DC3_IRQ_MASK | DC3_VSYNC_IRQ_MASK | - DC3_IRQ_STATUS | DC3_VSYNC_IRQ_STATUS); + DC3_IRQ_STATUS | DC3_VSYNC_IRQ_STATUS); /* DISABLE GENLOCK */ @@ -663,8 +676,7 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) WRITE_VIP32(VIP_CONTROL1, 0); WRITE_VIP32(VIP_CONTROL2, 0); - WRITE_VIP32(VIP_INTERRUPT, - VIP_ALL_INTERRUPTS | (VIP_ALL_INTERRUPTS >> 16)); + WRITE_VIP32(VIP_INTERRUPT, VIP_ALL_INTERRUPTS | (VIP_ALL_INTERRUPTS >> 16)); /* DISABLE COLOR KEYING * The color key mechanism should be disabled whenever a mode switch @@ -686,8 +698,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) WRITE_VID32(DF_VID_MISC, (misc | DF_DAC_POWER_DOWN)); WRITE_VID32(DF_DISPLAY_CONFIG, - (config & ~(DF_DCFG_DIS_EN | DF_DCFG_HSYNC_EN | - DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN))); + (config & ~(DF_DCFG_DIS_EN | DF_DCFG_HSYNC_EN | + DF_DCFG_VSYNC_EN | DF_DCFG_DAC_BL_EN))); /* DISABLE COMPRESSION */ @@ -715,7 +727,7 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) /* WAIT FOR THE GP TO BE IDLE (JUST IN CASE) */ while (((temp = READ_GP32(GP3_BLT_STATUS)) & GP3_BS_BLT_BUSY) || - !(temp & GP3_BS_CB_EMPTY)) { + !(temp & GP3_BS_CB_EMPTY)) { ; } @@ -752,7 +764,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) WRITE_REG32(DC3_CURS_ST_OFFSET, 0); genlk_ctl = READ_REG32(DC3_GENLK_CTL) & ~(DC3_GC_ALPHA_FLICK_ENABLE | - DC3_GC_FLICKER_FILTER_ENABLE | DC3_GC_FLICKER_FILTER_MASK); + DC3_GC_FLICKER_FILTER_ENABLE | + DC3_GC_FLICKER_FILTER_MASK); /* ENABLE INTERLACING */ @@ -763,7 +776,7 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) VG_MODEFLAG_INT_ADDRESS) irq_ctl |= DC3_IRQFILT_INTL_ADDR; else if ((mode_params->flags & VG_MODEFLAG_INT_MASK) == - VG_MODEFLAG_INT_FLICKER) { + VG_MODEFLAG_INT_FLICKER) { genlk_ctl |= DC3_GC_FLICKER_FILTER_1_8 | DC3_GC_FLICKER_FILTER_ENABLE | DC3_GC_ALPHA_FLICK_ENABLE; } @@ -835,7 +848,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) gcfg |= DC3_GCFG_FDTY; pitch = size; - } else { + } + else { WRITE_REG32(DC3_DV_TOP, 0); } } @@ -866,8 +880,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) /* ENABLE TIMING GENERATOR, TIM. REG. UPDATES, PALETTE BYPASS */ /* AND VERT. INT. SELECT */ - dcfg |= (unsigned long)(DC3_DCFG_TGEN | DC3_DCFG_TRUP | DC3_DCFG_PALB | - DC3_DCFG_VISL); + dcfg |= (unsigned long) (DC3_DCFG_TGEN | DC3_DCFG_TRUP | DC3_DCFG_PALB | + DC3_DCFG_VISL); /* SET FIFO PRIORITIES AND DISPLAY FIFO LOAD ENABLE * Note that the bandwidth setting gets upgraded when scaling or flicker @@ -876,15 +890,17 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) msr_read64(MSR_DEVICE_GEODELX_VG, DC3_SPARE_MSR, &msr_value); msr_value.low &= ~(DC3_SPARE_DISABLE_CFIFO_HGO | - DC3_SPARE_VFIFO_ARB_SELECT | - DC3_SPARE_LOAD_WM_LPEN_MASK | DC3_SPARE_WM_LPEN_OVRD | - DC3_SPARE_DISABLE_INIT_VID_PRI | DC3_SPARE_DISABLE_VFIFO_WM); + DC3_SPARE_VFIFO_ARB_SELECT | + DC3_SPARE_LOAD_WM_LPEN_MASK | DC3_SPARE_WM_LPEN_OVRD | + DC3_SPARE_DISABLE_INIT_VID_PRI | + DC3_SPARE_DISABLE_VFIFO_WM); if ((mode_params->flags & VG_MODEFLAG_BANDWIDTHMASK) == - VG_MODEFLAG_HIGH_BAND - || ((mode_params->flags & VG_MODEFLAG_INTERLACED) - && (mode_params->flags & VG_MODEFLAG_INT_MASK) == - VG_MODEFLAG_INT_FLICKER) || (irq_ctl & DC3_IRQFILT_GFX_FILT_EN)) { + VG_MODEFLAG_HIGH_BAND || ((mode_params->flags & VG_MODEFLAG_INTERLACED) + && (mode_params-> + flags & VG_MODEFLAG_INT_MASK) == + VG_MODEFLAG_INT_FLICKER) || + (irq_ctl & DC3_IRQFILT_GFX_FILT_EN)) { /* HIGH BANDWIDTH */ /* Set agressive watermarks and disallow forced low priority */ @@ -894,8 +910,9 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) msr_value.low |= DC3_SPARE_DISABLE_CFIFO_HGO | DC3_SPARE_VFIFO_ARB_SELECT | DC3_SPARE_WM_LPEN_OVRD; - } else if ((mode_params->flags & VG_MODEFLAG_BANDWIDTHMASK) == - VG_MODEFLAG_AVG_BAND) { + } + else if ((mode_params->flags & VG_MODEFLAG_BANDWIDTHMASK) == + VG_MODEFLAG_AVG_BAND) { /* AVERAGE BANDWIDTH * Set average watermarks and allow small regions of forced low * priority. @@ -917,8 +934,9 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) temp = 127; acfg |= temp << 9; - } else if ((mode_params->flags & VG_MODEFLAG_BANDWIDTHMASK) == - VG_MODEFLAG_LOW_BAND) { + } + else if ((mode_params->flags & VG_MODEFLAG_BANDWIDTHMASK) == + VG_MODEFLAG_LOW_BAND) { /* LOW BANDWIDTH * Set low watermarks and allow larger regions of forced low priority */ @@ -939,7 +957,8 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) temp = 127; acfg |= temp << 9; - } else { + } + else { /* LEGACY CHARACTERISTICS */ /* Arbitration from a single set of watermarks. */ @@ -965,19 +984,17 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) temp = (mode_params->hblankstart - 1) | ((mode_params->hblankend - 1) << 16); WRITE_REG32(DC3_H_BLANK_TIMING, temp); - temp = (mode_params->hsyncstart - 1) | - ((mode_params->hsyncend - 1) << 16); + temp = (mode_params->hsyncstart - 1) | ((mode_params->hsyncend - 1) << 16); WRITE_REG32(DC3_H_SYNC_TIMING, temp); temp = (mode_params->vactive - 1) | ((mode_params->vtotal - 1) << 16); WRITE_REG32(DC3_V_ACTIVE_TIMING, temp); temp = (mode_params->vblankstart - 1) | ((mode_params->vblankend - 1) << 16); WRITE_REG32(DC3_V_BLANK_TIMING, temp); - temp = (mode_params->vsyncstart - 1) | - ((mode_params->vsyncend - 1) << 16); + temp = (mode_params->vsyncstart - 1) | ((mode_params->vsyncend - 1) << 16); WRITE_REG32(DC3_V_SYNC_TIMING, temp); temp = (mode_params->vactive_even - 1) | ((mode_params->vtotal_even - - 1) << 16); + 1) << 16); WRITE_REG32(DC3_V_ACTIVE_EVEN, temp); temp = (mode_params->vblankstart_even - 1) | ((mode_params->vblankend_even - 1) << 16); @@ -993,14 +1010,14 @@ vg_set_custom_mode(VG_DISPLAY_MODE * mode_params, int bpp) /* SET SOURCE DIMENSIONS */ WRITE_REG32(DC3_FB_ACTIVE, ((starting_width - 1) << 16) | - (starting_height - 1)); + (starting_height - 1)); /* SET SYNC POLARITIES */ temp = READ_VID32(DF_DISPLAY_CONFIG); temp &= ~(DF_DCFG_CRT_SYNC_SKW_MASK | DF_DCFG_PWR_SEQ_DLY_MASK | - DF_DCFG_CRT_HSYNC_POL | DF_DCFG_CRT_VSYNC_POL); + DF_DCFG_CRT_HSYNC_POL | DF_DCFG_CRT_VSYNC_POL); temp |= DF_DCFG_CRT_SYNC_SKW_INIT | DF_DCFG_PWR_SEQ_DLY_INIT; @@ -1060,7 +1077,7 @@ vg_set_display_bpp(int bpp) unlock = READ_REG32(DC3_UNLOCK); dcfg = READ_REG32(DC3_DISPLAY_CFG) & ~(DC3_DCFG_DISP_MODE_MASK | - DC3_DCFG_16BPP_MODE_MASK); + DC3_DCFG_16BPP_MODE_MASK); dcfg |= bpp_mask; WRITE_REG32(DC3_UNLOCK, DC3_UNLOCK_VALUE); @@ -1197,17 +1214,16 @@ vg_get_display_mode_index(VG_QUERY_MODE * query) for (mode = 0; mode < NUM_CIMARRON_DISPLAY_MODES; mode++) { if ((!(query->query_flags & VG_QUERYFLAG_PANEL) || - (CimarronDisplayModes[mode]. - internal_flags & VG_SUPPORTFLAG_PANEL)) + (CimarronDisplayModes[mode].internal_flags & VG_SUPPORTFLAG_PANEL)) && (!(query->query_flags & VG_QUERYFLAG_TVOUT) - || (CimarronDisplayModes[mode]. - internal_flags & VG_SUPPORTFLAG_TVOUT)) + || (CimarronDisplayModes[mode].internal_flags & + VG_SUPPORTFLAG_TVOUT)) && (!(query->query_flags & VG_QUERYFLAG_INTERLACED) - || (CimarronDisplayModes[mode]. - flags & VG_MODEFLAG_INTERLACED) == interlaced) + || (CimarronDisplayModes[mode].flags & VG_MODEFLAG_INTERLACED) + == interlaced) && (!(query->query_flags & VG_QUERYFLAG_HALFCLOCK) - || (CimarronDisplayModes[mode]. - flags & VG_MODEFLAG_HALFCLOCK) == halfclock) + || (CimarronDisplayModes[mode].flags & VG_MODEFLAG_HALFCLOCK) == + halfclock) && (!(query->query_flags & VG_QUERYFLAG_PANELWIDTH) || (CimarronDisplayModes[mode].panel_width == query->panel_width)) @@ -1215,11 +1231,9 @@ vg_get_display_mode_index(VG_QUERY_MODE * query) || (CimarronDisplayModes[mode].panel_height == query->panel_height)) && (!(query->query_flags & VG_QUERYFLAG_ACTIVEWIDTH) - || (CimarronDisplayModes[mode].hactive == - query->active_width)) + || (CimarronDisplayModes[mode].hactive == query->active_width)) && (!(query->query_flags & VG_QUERYFLAG_ACTIVEHEIGHT) - || (CimarronDisplayModes[mode].vactive == - query->active_height)) + || (CimarronDisplayModes[mode].vactive == query->active_height)) && (!(query->query_flags & VG_QUERYFLAG_TOTALWIDTH) || (CimarronDisplayModes[mode].htotal == query->total_width)) && (!(query->query_flags & VG_QUERYFLAG_TOTALHEIGHT) @@ -1231,17 +1245,15 @@ vg_get_display_mode_index(VG_QUERY_MODE * query) && (!(query->query_flags & VG_QUERYFLAG_ENCODER) || (CimarronDisplayModes[mode].internal_flags & enc_flag)) && (!(query->query_flags & VG_QUERYFLAG_TVMODE) - || ((CimarronDisplayModes[mode]. - internal_flags & VG_SUPPORTFLAG_TVMODEMASK) == - tv_flag)) + || + ((CimarronDisplayModes[mode].internal_flags & + VG_SUPPORTFLAG_TVMODEMASK) == tv_flag)) && (!(query->query_flags & VG_QUERYFLAG_PIXELCLOCK) - || (CimarronDisplayModes[mode].frequency == - query->frequency))) { + || (CimarronDisplayModes[mode].frequency == query->frequency))) { /* ALLOW SEARCHING BASED ON AN APPROXIMATE PIXEL CLOCK */ if (query->query_flags & VG_QUERYFLAG_PIXELCLOCK_APPROX) { - diff = query->frequency - - CimarronDisplayModes[mode].frequency; + diff = query->frequency - CimarronDisplayModes[mode].frequency; if (diff < 0) diff = -diff; @@ -1249,7 +1261,8 @@ vg_get_display_mode_index(VG_QUERY_MODE * query) minimum = diff; match = mode; } - } else { + } + else { match = mode; break; } @@ -1417,21 +1430,26 @@ vg_get_current_display_mode(VG_DISPLAY_MODE * current_display, int *bpp) if (temp == DC3_DCFG_DISP_MODE_8BPP) { iflags |= VG_SUPPORTFLAG_8BPP; *bpp = 8; - } else if (temp == DC3_DCFG_DISP_MODE_24BPP) { + } + else if (temp == DC3_DCFG_DISP_MODE_24BPP) { iflags |= VG_SUPPORTFLAG_24BPP; *bpp = 24; - } else if (temp == DC3_DCFG_DISP_MODE_32BPP) { + } + else if (temp == DC3_DCFG_DISP_MODE_32BPP) { iflags |= VG_SUPPORTFLAG_32BPP; *bpp = 32; - } else if (temp == DC3_DCFG_DISP_MODE_16BPP) { + } + else if (temp == DC3_DCFG_DISP_MODE_16BPP) { temp = READ_REG32(DC3_DISPLAY_CFG) & DC3_DCFG_16BPP_MODE_MASK; if (temp == DC3_DCFG_16BPP) { iflags |= VG_SUPPORTFLAG_16BPP; *bpp = 16; - } else if (temp == DC3_DCFG_15BPP) { + } + else if (temp == DC3_DCFG_15BPP) { iflags |= VG_SUPPORTFLAG_15BPP; *bpp = 15; - } else if (temp == DC3_DCFG_12BPP) { + } + else if (temp == DC3_DCFG_12BPP) { iflags |= VG_SUPPORTFLAG_12BPP; *bpp = 12; } @@ -1488,8 +1506,7 @@ vg_get_current_display_mode(VG_DISPLAY_MODE * current_display, int *bpp) p = msr_value.high & 0xF; n = (msr_value.high >> 4) & 0xFF; m = (msr_value.high >> 12) & 0x7; - current_display->frequency = - (0x300000 * (n + 1)) / ((p + 1) * (m + 1)); + current_display->frequency = (0x300000 * (n + 1)) / ((p + 1) * (m + 1)); return CIM_STATUS_INEXACTMATCH; } @@ -1572,13 +1589,14 @@ vg_set_scaler_filter_coefficients(long h_taps[][5], long v_taps[][3]) if (!h_taps) { temp0 = CimarronHorizontalGraphicsFilter[i][0]; temp1 = CimarronHorizontalGraphicsFilter[i][1]; - } else { - temp0 = ((unsigned long)h_taps[i][0] & 0x3FF) | - (((unsigned long)h_taps[i][1] & 0x3FF) << 10) | - (((unsigned long)h_taps[i][2] & 0x3FF) << 20); + } + else { + temp0 = ((unsigned long) h_taps[i][0] & 0x3FF) | + (((unsigned long) h_taps[i][1] & 0x3FF) << 10) | + (((unsigned long) h_taps[i][2] & 0x3FF) << 20); - temp1 = ((unsigned long)h_taps[i][3] & 0x3FF) | - (((unsigned long)h_taps[i][4] & 0x3FF) << 10); + temp1 = ((unsigned long) h_taps[i][3] & 0x3FF) | + (((unsigned long) h_taps[i][4] & 0x3FF) << 10); } WRITE_REG32(DC3_FILT_COEFF1, temp0); WRITE_REG32(DC3_FILT_COEFF2, temp1); @@ -1595,10 +1613,11 @@ vg_set_scaler_filter_coefficients(long h_taps[][5], long v_taps[][3]) if (!v_taps) { temp0 = CimarronVerticalGraphicsFilter[i]; - } else { - temp0 = ((unsigned long)v_taps[i][0] & 0x3FF) | - (((unsigned long)v_taps[i][1] & 0x3FF) << 10) | - (((unsigned long)v_taps[i][2] & 0x3FF) << 20); + } + else { + temp0 = ((unsigned long) v_taps[i][0] & 0x3FF) | + (((unsigned long) v_taps[i][1] & 0x3FF) << 10) | + (((unsigned long) v_taps[i][2] & 0x3FF) << 20); } WRITE_REG32(DC3_FILT_COEFF1, temp0); @@ -1636,7 +1655,7 @@ vg_configure_flicker_filter(unsigned long flicker_strength, int flicker_alpha) unlock = READ_REG32(DC3_UNLOCK); genlk_ctl = READ_REG32(DC3_GENLK_CTL) & ~(DC3_GC_FLICKER_FILTER_MASK | - DC3_GC_ALPHA_FLICK_ENABLE); + DC3_GC_ALPHA_FLICK_ENABLE); genlk_ctl |= flicker_strength; if (flicker_alpha) genlk_ctl |= DC3_GC_ALPHA_FLICK_ENABLE; @@ -1674,13 +1693,13 @@ vg_set_clock_frequency(unsigned long frequency, unsigned long pll_flags) pll_low = 0; if (!(pll_flags & VG_PLL_MANUAL)) { - min = (long)CimarronPLLFrequencies[0].frequency - (long)frequency; + min = (long) CimarronPLLFrequencies[0].frequency - (long) frequency; if (min < 0L) min = -min; for (i = 1; i < NUM_CIMARRON_PLL_FREQUENCIES; i++) { - diff = (long)CimarronPLLFrequencies[i].frequency - - (long)frequency; + diff = (long) CimarronPLLFrequencies[i].frequency - + (long) frequency; if (diff < 0L) diff = -diff; @@ -1691,7 +1710,8 @@ vg_set_clock_frequency(unsigned long frequency, unsigned long pll_flags) } pll_high = CimarronPLLFrequencies[index].pll_value & 0x00007FFF; - } else { + } + else { pll_high = frequency; } @@ -1713,7 +1733,7 @@ vg_set_clock_frequency(unsigned long frequency, unsigned long pll_flags) if ((msr_value.low & GLCP_DOTPLL_LOCK) && ((msr_value.low & (GLCP_DOTPLL_HALFPIX | GLCP_DOTPLL_BYPASS)) == - pll_low) && (msr_value.high == pll_high)) { + pll_low) && (msr_value.high == pll_high)) { return CIM_STATUS_OK; } @@ -1851,8 +1871,8 @@ vg_set_cursor_position(long xpos, long ypos, VG_PANNING_COORDINATES * panning) long y, yoffset; memoffset = vg3_cursor_offset; - x = xpos - (long)vg3_x_hotspot; - y = ypos - (long)vg3_y_hotspot; + x = xpos - (long) vg3_x_hotspot; + y = ypos - (long) vg3_y_hotspot; /* HANDLE NEGATIVE COORDINATES */ /* This routine supports operating systems that use negative */ @@ -1873,9 +1893,10 @@ vg_set_cursor_position(long xpos, long ypos, VG_PANNING_COORDINATES * panning) if ((vg3_mode_width > vg3_panel_width) || (vg3_mode_height > vg3_panel_height)) { vg_pan_desktop(xpos, ypos, panning); - x = x - (unsigned short)vg3_delta_x; - y = y - (unsigned short)vg3_delta_y; - } else { + x = x - (unsigned short) vg3_delta_x; + y = y - (unsigned short) vg3_delta_y; + } + else { panning->start_x = 0; panning->start_y = 0; panning->start_updated = 0; @@ -1891,21 +1912,23 @@ vg_set_cursor_position(long xpos, long ypos, VG_PANNING_COORDINATES * panning) if (x < 0) { xoffset = -x; x = 0; - } else { + } + else { xoffset = 0; } if (y < 0) { yoffset = -y; y = 0; - } else { + } + else { yoffset = 0; } if (vg3_color_cursor) - memoffset += (unsigned long)yoffset *192; + memoffset += (unsigned long) yoffset *192; else - memoffset += (unsigned long)yoffset << 4; + memoffset += (unsigned long) yoffset << 4; /* SET COLOR CURSOR BIT */ @@ -1921,10 +1944,10 @@ vg_set_cursor_position(long xpos, long ypos, VG_PANNING_COORDINATES * panning) WRITE_REG32(DC3_UNLOCK, DC3_UNLOCK_VALUE); WRITE_REG32(DC3_CURS_ST_OFFSET, memoffset); WRITE_REG32(DC3_GENERAL_CFG, gcfg); - WRITE_REG32(DC3_CURSOR_X, (unsigned long)x | - (((unsigned long)xoffset) << 11)); - WRITE_REG32(DC3_CURSOR_Y, (unsigned long)y | - (((unsigned long)yoffset) << 11)); + WRITE_REG32(DC3_CURSOR_X, (unsigned long) x | + (((unsigned long) xoffset) << 11)); + WRITE_REG32(DC3_CURSOR_Y, (unsigned long) y | + (((unsigned long) yoffset) << 11)); WRITE_REG32(DC3_UNLOCK, unlock); return CIM_STATUS_OK; @@ -1940,7 +1963,8 @@ vg_set_cursor_position(long xpos, long ypos, VG_PANNING_COORDINATES * panning) int vg_set_mono_cursor_shape32(unsigned long memoffset, unsigned long *andmask, - unsigned long *xormask, unsigned long x_hotspot, unsigned long y_hotspot) + unsigned long *xormask, unsigned long x_hotspot, + unsigned long y_hotspot) { int i; @@ -1990,7 +2014,8 @@ vg_set_mono_cursor_shape32(unsigned long memoffset, unsigned long *andmask, int vg_set_mono_cursor_shape64(unsigned long memoffset, unsigned long *andmask, - unsigned long *xormask, unsigned long x_hotspot, unsigned long y_hotspot) + unsigned long *xormask, unsigned long x_hotspot, + unsigned long y_hotspot) { int i; @@ -2032,8 +2057,8 @@ vg_set_mono_cursor_shape64(unsigned long memoffset, unsigned long *andmask, int vg_set_color_cursor_shape(unsigned long memoffset, unsigned char *data, - unsigned long width, unsigned long height, long pitch, - unsigned long x_hotspot, unsigned long y_hotspot) + unsigned long width, unsigned long height, long pitch, + unsigned long x_hotspot, unsigned long y_hotspot) { unsigned long y; @@ -2081,7 +2106,7 @@ vg_set_color_cursor_shape(unsigned long memoffset, unsigned char *data, int vg_pan_desktop(unsigned long x, unsigned long y, - VG_PANNING_COORDINATES * panning) + VG_PANNING_COORDINATES * panning) { unsigned long modeShiftPerPixel; unsigned long modeBytesPerScanline; @@ -2162,7 +2187,7 @@ vg_set_display_offset(unsigned long address) if (READ_REG32(DC3_GENERAL_CFG) & DC3_GCFG_CMPE) { gcfg = READ_REG32(DC3_GENERAL_CFG); WRITE_REG32(DC3_GENERAL_CFG, - (gcfg & ~(DC3_GCFG_CMPE | DC3_GCFG_DECE))); + (gcfg & ~(DC3_GCFG_CMPE | DC3_GCFG_DECE))); } } @@ -2203,24 +2228,28 @@ vg_set_display_pitch(unsigned long pitch) if (pitch > 4096) { dvsize = DC3_DV_LINE_SIZE_8192; - } else if (pitch > 2048) { + } + else if (pitch > 2048) { dvsize = DC3_DV_LINE_SIZE_4096; - } else if (pitch > 1024) { + } + else if (pitch > 1024) { dvsize = DC3_DV_LINE_SIZE_2048; - } else { + } + else { dvsize = DC3_DV_LINE_SIZE_1024; } temp = READ_REG32(DC3_DV_CTL); WRITE_REG32(DC3_DV_CTL, - (temp & ~DC3_DV_LINE_SIZE_MASK) | dvsize | 0x00000001); + (temp & ~DC3_DV_LINE_SIZE_MASK) | dvsize | 0x00000001); value = READ_REG32(DC3_GENERAL_CFG); if (pitch == 1024 || pitch == 2048 || pitch == 4096 || pitch == 8192) { value &= ~DC3_GCFG_FDTY; dvtop = 0; - } else { + } + else { value |= DC3_GCFG_FDTY; dvtop = (READ_REG32(DC3_FB_ACTIVE) & 0xFFF) + 1; @@ -2339,7 +2368,8 @@ vg_set_compression_enable(int enable) /* ENABLE COMPRESSION BITS */ gcfg |= DC3_GCFG_CMPE | DC3_GCFG_DECE; - } else { + } + else { gcfg &= ~(DC3_GCFG_CMPE | DC3_GCFG_DECE); } @@ -2442,8 +2472,8 @@ int vg_wait_vertical_blank(void) { if (vg_test_timing_active()) { - while (!vg_test_vertical_active()) ; - while (vg_test_vertical_active()) ; + while (!vg_test_vertical_active()); + while (vg_test_vertical_active()); } return CIM_STATUS_OK; } @@ -2494,7 +2524,8 @@ vg_configure_line_interrupt(VG_INTERRUPT_PARAMS * interrupt_info) if (interrupt_info->enable) { WRITE_REG32(DC3_IRQ_FILT_CTL, irq_line); WRITE_REG32(DC3_IRQ, ((irq_enable & ~DC3_IRQ_MASK) | DC3_IRQ_STATUS)); - } else { + } + else { WRITE_REG32(DC3_IRQ, (irq_enable | DC3_IRQ_MASK)); WRITE_REG32(DC3_IRQ_FILT_CTL, irq_line); } @@ -2680,17 +2711,15 @@ vg_save_state(VG_SAVE_RESTORE * vg_state) /* READ ALL VG MSRS */ - msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CAP, - &(vg_state->msr_cap)); + msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CAP, &(vg_state->msr_cap)); msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CONFIG, - &(vg_state->msr_config)); - msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_SMI, - &(vg_state->msr_smi)); + &(vg_state->msr_config)); + msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_SMI, &(vg_state->msr_smi)); msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_ERROR, - &(vg_state->msr_error)); + &(vg_state->msr_error)); msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_PM, &(vg_state->msr_pm)); msr_read64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_DIAG, - &(vg_state->msr_diag)); + &(vg_state->msr_diag)); msr_read64(MSR_DEVICE_GEODELX_VG, DC3_SPARE_MSR, &(vg_state->msr_spare)); msr_read64(MSR_DEVICE_GEODELX_VG, DC3_RAM_CTL, &(vg_state->msr_ram_ctl)); @@ -2799,8 +2828,8 @@ vg_restore_state(VG_SAVE_RESTORE * vg_state) /* RESTORE THE CURSOR DATA */ memoffset = READ_REG32(DC3_CURS_ST_OFFSET) & 0x0FFFFFFF; - WRITE_FB_STRING32(memoffset, (unsigned char *)&(vg_state->cursor_data[0]), - 3072); + WRITE_FB_STRING32(memoffset, (unsigned char *) &(vg_state->cursor_data[0]), + 3072); /* RESTORE THE PLL */ /* Use a common routine to use common code to poll for lock bit */ @@ -2809,17 +2838,15 @@ vg_restore_state(VG_SAVE_RESTORE * vg_state) /* RESTORE ALL VG MSRS */ - msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CAP, - &(vg_state->msr_cap)); + msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CAP, &(vg_state->msr_cap)); msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_CONFIG, - &(vg_state->msr_config)); - msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_SMI, - &(vg_state->msr_smi)); + &(vg_state->msr_config)); + msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_SMI, &(vg_state->msr_smi)); msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_ERROR, - &(vg_state->msr_error)); + &(vg_state->msr_error)); msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_PM, &(vg_state->msr_pm)); msr_write64(MSR_DEVICE_GEODELX_VG, MSR_GEODELINK_DIAG, - &(vg_state->msr_diag)); + &(vg_state->msr_diag)); msr_write64(MSR_DEVICE_GEODELX_VG, DC3_SPARE_MSR, &(vg_state->msr_spare)); msr_write64(MSR_DEVICE_GEODELX_VG, DC3_RAM_CTL, &(vg_state->msr_ram_ctl)); @@ -2901,9 +2928,10 @@ vg_read_graphics_crc(int crc_source) do { line = READ_REG32(DC3_LINE_CNT_STATUS); } while ((line & DC3_LNCNT_EVEN_FIELD) != field || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 10 || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 15); - } else { + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 10 || + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 15); + } + else { /* NON-INTERLACED - EVEN FIELD CRCS ARE INVALID */ if (crc_source & VG_CRC_SOURCE_EVEN) @@ -2917,7 +2945,7 @@ vg_read_graphics_crc(int crc_source) /* WAIT FOR THE CRC TO BE COMPLETED */ - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_SIGC)) ; + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_SIGC)); /* READ THE COMPLETED CRC */ @@ -2941,7 +2969,7 @@ vg_read_graphics_crc(int crc_source) unsigned long vg_read_window_crc(int crc_source, unsigned long x, unsigned long y, - unsigned long width, unsigned long height) + unsigned long width, unsigned long height) { Q_WORD msr_value; unsigned long crc = 0; @@ -3242,8 +3270,9 @@ vg_read_window_crc(int crc_source, unsigned long x, unsigned long y, msr_value.high = 0x00000000; msr_value.low = 0x002055AA; msr_write64(MSR_DEVICE_GEODELX_GLCP, GLCP_H0CTL + 3, &msr_value); - } else if (crc_source == VG_CRC_SOURCE_PREFLICKER - || crc_source == VG_CRC_SOURCE_PREFLICKER_EVEN) { + } + else if (crc_source == VG_CRC_SOURCE_PREFLICKER + || crc_source == VG_CRC_SOURCE_PREFLICKER_EVEN) { diag = 0x801F8032; /* ENABLE HW CLOCK GATING AND SET GLCP CLOCK TO GEODELINK CLOCK */ @@ -3276,7 +3305,8 @@ vg_read_window_crc(int crc_source, unsigned long x, unsigned long y, msr_value.high = 0x00000000; msr_value.low = 0x002D55AA; msr_write64(MSR_DEVICE_GEODELX_GLCP, GLCP_H0CTL + 3, &msr_value); - } else { + } + else { /* PREFILTER CRC */ diag = 0x80138048; @@ -3335,9 +3365,10 @@ vg_read_window_crc(int crc_source, unsigned long x, unsigned long y, do { line = READ_REG32(DC3_LINE_CNT_STATUS); } while ((line & DC3_LNCNT_EVEN_FIELD) != field || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 1 || - ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 5); - } else { + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) < 1 || + ((line & DC3_LNCNT_V_LINE_CNT) >> 16) > 5); + } + else { /* NON-INTERLACED - EVEN FIELD CRCS ARE INVALID */ if (crc_source & VG_CRC_SOURCE_EVEN) @@ -3362,11 +3393,11 @@ vg_read_window_crc(int crc_source, unsigned long x, unsigned long y, /* DELAY TWO FRAMES */ - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)) ; - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)) ; - while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA) ; + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)); + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA)); + while (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_VNA); /* VERIFY THAT XSTATE = 11 */ @@ -3468,8 +3499,7 @@ vg_get_scaler_filter_coefficients(long h_taps[][5], long v_taps[][3]) *--------------------------------------------------------------------------*/ int -vg_get_flicker_filter_configuration(unsigned long *strength, - int *flicker_alpha) +vg_get_flicker_filter_configuration(unsigned long *strength, int *flicker_alpha) { unsigned long genlk_ctl; @@ -3530,7 +3560,7 @@ vg_get_current_vline(void) current_line = READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_V_LINE_CNT; } while (current_line != - (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_V_LINE_CNT)); + (READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_V_LINE_CNT)); return (current_line >> 16); } @@ -3661,7 +3691,7 @@ vg_get_compression_info(VG_COMPRESSION_DATA * comp_data) comp_data->compression_offset = READ_REG32(DC3_CB_ST_OFFSET) & 0x0FFFFFFF; comp_data->pitch = (READ_REG32(DC3_GFX_PITCH) >> 13) & 0x7FFF8; comp_data->size = ((READ_REG32(DC3_LINE_SIZE) >> (DC3_LINE_SIZE_CB_SHIFT - - 3)) & 0x3F8) + 24; + 3)) & 0x3F8) + 24; return CIM_STATUS_OK; } diff --git a/src/cim/cim_vip.c b/src/cim/cim_vip.c index 025449b..9ecfad3 100644 --- a/src/cim/cim_vip.c +++ b/src/cim/cim_vip.c @@ -66,13 +66,15 @@ vip_initialize(VIPSETMODEBUFFER * buffer) if (buffer->planar_capture == VIP_420CAPTURE_EVERYLINE) { vip_control1 |= VIP_CONTROL1_DISABLE_DECIMATION; - } else if (buffer->planar_capture == VIP_420CAPTURE_ALTERNATINGFIELDS) { + } + else if (buffer->planar_capture == VIP_420CAPTURE_ALTERNATINGFIELDS) { if (buffer->flags & VIP_MODEFLAG_PROGRESSIVE) return CIM_STATUS_INVALIDPARAMS; vip_control1 |= VIP_CONTROL1_DISABLE_DECIMATION; vip_control3 |= VIP_CONTROL3_DECIMATE_EVEN; - } else if (buffer->planar_capture != VIP_420CAPTURE_ALTERNATINGLINES) + } + else if (buffer->planar_capture != VIP_420CAPTURE_ALTERNATINGLINES) return CIM_STATUS_INVALIDPARAMS; /* CONFIGURE THE VIDEO FIFO THRESHOLD BASED ON THE FIFO DEPTH */ @@ -80,7 +82,8 @@ vip_initialize(VIPSETMODEBUFFER * buffer) vip_control2 |= VIP_CONTROL2_DEFAULT_VIDTH_420 << VIP_CONTROL2_VIDTH_SHIFT; - } else { + } + else { vip_control2 |= VIP_CONTROL2_DEFAULT_VIDTH_422 << VIP_CONTROL2_VIDTH_SHIFT; } @@ -104,13 +107,13 @@ vip_initialize(VIPSETMODEBUFFER * buffer) } if ((buffer->operating_mode == VIP_MODE_MSG || - buffer->operating_mode == VIP_MODE_DATA) && + buffer->operating_mode == VIP_MODE_DATA) && (buffer->flags & VIP_MODEFLAG_FLIPMESSAGEWHENFULL)) { vip_control1 |= VIP_CONTROL1_MSG_STRM_CTRL; } else if (buffer->operating_mode == VIP_MODE_VIP2_8BIT || - buffer->operating_mode == VIP_MODE_VIP2_16BIT) { + buffer->operating_mode == VIP_MODE_VIP2_16BIT) { if (buffer->flags & VIP_MODEFLAG_ENABLEREPEATFLAG) vip_control2 |= VIP_CONTROL2_REPEAT_ENABLE; if (buffer->flags & VIP_MODEFLAG_INVERTTASKPOLARITY) @@ -172,13 +175,13 @@ vip_update_601_params(VIP_601PARAMS * buffer) WRITE_VIP32(VIP_601_VBI_START, buffer->vbi_start); WRITE_VIP32(VIP_601_VBI_END, buffer->vbi_start + buffer->vbi_height - 1); WRITE_VIP32(VIP_601_EVEN_START_STOP, - buffer->vert_start_even | ((buffer->vert_start_even + - buffer->even_height - 1) << 16)); + buffer->vert_start_even | ((buffer->vert_start_even + + buffer->even_height - 1) << 16)); WRITE_VIP32(VIP_601_ODD_START_STOP, - buffer->vert_start_odd | ((buffer->vert_start_odd + - buffer->odd_height - 1) << 16)); + buffer->vert_start_odd | ((buffer->vert_start_odd + + buffer->odd_height - 1) << 16)); WRITE_VIP32(VIP_ODD_FIELD_DETECT, - buffer->odd_detect_start | (buffer->odd_detect_end << 16)); + buffer->odd_detect_start | (buffer->odd_detect_end << 16)); /* SPECIAL CASE FOR HORIZONTAL DATA * 601 horizontal parameters are based on the number of clocks and not @@ -187,7 +190,7 @@ vip_update_601_params(VIP_601PARAMS * buffer) if ((vip_control1 & VIP_CONTROL1_MODE_MASK) == VIP_MODE_16BIT601) WRITE_VIP32(VIP_601_HORZ_END, - buffer->horz_start + (buffer->width << 1) + 3); + buffer->horz_start + (buffer->width << 1) + 3); else WRITE_VIP32(VIP_601_HORZ_END, buffer->horz_start + buffer->width + 3); @@ -225,24 +228,22 @@ vip_configure_capture_buffers(int buffer_type, VIPINPUTBUFFER * buffer) /* SET VIDEO PITCH */ WRITE_VIP32(VIP_TASKA_VID_PITCH, - offsets->y_pitch | (offsets->uv_pitch << 16)); + offsets->y_pitch | (offsets->uv_pitch << 16)); /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->even_base[cur_buffer]); - WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); if (buffer->flags & VIP_INPUTFLAG_VBI) { WRITE_VIP32(VIP_TASKA_VBI_ODD_BASE, offsets->vbi_even_base); WRITE_VIP32(VIP_TASKA_VBI_EVEN_BASE, offsets->vbi_odd_base); } - } else { - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); + } + else { + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->odd_base[cur_buffer]); WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); + offsets->even_base[cur_buffer]); if (buffer->flags & VIP_INPUTFLAG_VBI) { WRITE_VIP32(VIP_TASKA_VBI_ODD_BASE, offsets->vbi_odd_base); WRITE_VIP32(VIP_TASKA_VBI_EVEN_BASE, offsets->vbi_even_base); @@ -257,30 +258,29 @@ vip_configure_capture_buffers(int buffer_type, VIPINPUTBUFFER * buffer) WRITE_VIP32(VIP_TASKA_U_EVEN_OFFSET, offsets->even_uoffset); WRITE_VIP32(VIP_TASKA_V_EVEN_OFFSET, offsets->even_voffset); } - } else if (buffer_type == VIP_BUFFER_B) { + } + else if (buffer_type == VIP_BUFFER_B) { offsets = &buffer->offsets[VIP_BUFFER_TASK_B]; /* SET VIDEO PITCH */ WRITE_VIP32(VIP_TASKB_VID_PITCH, - offsets->y_pitch | (offsets->uv_pitch << 16)); + offsets->y_pitch | (offsets->uv_pitch << 16)); /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->even_base[cur_buffer]); - WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); if (buffer->flags & VIP_INPUTFLAG_VBI) { WRITE_VIP32(VIP_TASKB_VBI_ODD_BASE, offsets->vbi_even_base); WRITE_VIP32(VIP_TASKB_VBI_EVEN_BASE, offsets->vbi_odd_base); } - } else { - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); + } + else { + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->odd_base[cur_buffer]); WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); + offsets->even_base[cur_buffer]); if (buffer->flags & VIP_INPUTFLAG_VBI) { WRITE_VIP32(VIP_TASKB_VBI_ODD_BASE, offsets->vbi_odd_base); WRITE_VIP32(VIP_TASKB_VBI_EVEN_BASE, offsets->vbi_even_base); @@ -293,11 +293,13 @@ vip_configure_capture_buffers(int buffer_type, VIPINPUTBUFFER * buffer) WRITE_VIP32(VIP_TASKB_U_OFFSET, offsets->odd_uoffset); WRITE_VIP32(VIP_TASKB_V_OFFSET, offsets->odd_voffset); } - } else if (buffer_type == VIP_BUFFER_ANC || buffer_type == VIP_BUFFER_MSG) { + } + else if (buffer_type == VIP_BUFFER_ANC || buffer_type == VIP_BUFFER_MSG) { WRITE_VIP32(VIP_ANC_MSG1_BASE, buffer->ancillaryData.msg1_base); WRITE_VIP32(VIP_ANC_MSG2_BASE, buffer->ancillaryData.msg2_base); WRITE_VIP32(VIP_ANC_MSG_SIZE, buffer->ancillaryData.msg_size); - } else { + } + else { return CIM_STATUS_INVALIDPARAMS; } @@ -325,77 +327,73 @@ vip_toggle_video_offsets(int buffer_type, VIPINPUTBUFFER * buffer) /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->even_base[cur_buffer]); - WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); - } else { - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); + } + else { + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->odd_base[cur_buffer]); WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); + offsets->even_base[cur_buffer]); } - } else if (buffer_type == VIP_BUFFER_B) { + } + else if (buffer_type == VIP_BUFFER_B) { offsets = &buffer->offsets[VIP_BUFFER_TASK_B]; /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->even_base[cur_buffer]); - WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); - } else { - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); + } + else { + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->odd_base[cur_buffer]); WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); + offsets->even_base[cur_buffer]); } - } else if (buffer_type == VIP_BUFFER_A_ODD) { + } + else if (buffer_type == VIP_BUFFER_A_ODD) { offsets = &buffer->offsets[VIP_BUFFER_TASK_A]; /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->even_base[cur_buffer]); else - WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); - } else if (buffer_type == VIP_BUFFER_A_EVEN) { + WRITE_VIP32(VIP_TASKA_VID_ODD_BASE, offsets->odd_base[cur_buffer]); + } + else if (buffer_type == VIP_BUFFER_A_EVEN) { offsets = &buffer->offsets[VIP_BUFFER_TASK_A]; /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) - WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); else WRITE_VIP32(VIP_TASKA_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); - } else if (buffer_type == VIP_BUFFER_B_ODD) { + offsets->even_base[cur_buffer]); + } + else if (buffer_type == VIP_BUFFER_B_ODD) { offsets = &buffer->offsets[VIP_BUFFER_TASK_B]; /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->even_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->even_base[cur_buffer]); else - WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, - offsets->odd_base[cur_buffer]); - } else if (buffer_type == VIP_BUFFER_B_EVEN) { + WRITE_VIP32(VIP_TASKB_VID_ODD_BASE, offsets->odd_base[cur_buffer]); + } + else if (buffer_type == VIP_BUFFER_B_EVEN) { offsets = &buffer->offsets[VIP_BUFFER_TASK_B]; /* SET BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) - WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->odd_base[cur_buffer]); + WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, offsets->odd_base[cur_buffer]); else WRITE_VIP32(VIP_TASKB_VID_EVEN_BASE, - offsets->even_base[cur_buffer]); - } else + offsets->even_base[cur_buffer]); + } + else return CIM_STATUS_INVALIDPARAMS; return CIM_STATUS_OK; @@ -450,8 +448,7 @@ vip_terminate(void) /* DISABLE AND CLEAR ALL VIP INTERRUPTS */ - WRITE_VIP32(VIP_INTERRUPT, VIP_ALL_INTERRUPTS | - (VIP_ALL_INTERRUPTS >> 16)); + WRITE_VIP32(VIP_INTERRUPT, VIP_ALL_INTERRUPTS | (VIP_ALL_INTERRUPTS >> 16)); /* DISABLE VIP CAPTURE */ /* We will try to let the VIP FIFO flush before shutting it down. */ @@ -575,7 +572,7 @@ vip_set_interrupt_enable(unsigned long mask, int enable) int vip_set_vsync_error(unsigned long vertical_count, unsigned long window_before, - unsigned long window_after, int enable) + unsigned long window_after, int enable) { unsigned long vip_control2 = READ_VIP32(VIP_CONTROL2); unsigned long temp; @@ -589,14 +586,15 @@ vip_set_vsync_error(unsigned long vertical_count, unsigned long window_before, */ temp = ((window_before + - window_after) << VIP_VSYNC_ERR_WINDOW_SHIFT) & + window_after) << VIP_VSYNC_ERR_WINDOW_SHIFT) & VIP_VSYNC_ERR_WINDOW_MASK; temp |= (vertical_count - window_before) & VIP_VSYNC_ERR_COUNT_MASK; vip_control2 |= VIP_CONTROL2_VERTERROR_ENABLE; WRITE_VIP32(VIP_VSYNC_ERR_COUNT, temp); - } else { + } + else { vip_control2 &= ~VIP_CONTROL2_VERTERROR_ENABLE; } WRITE_VIP32(VIP_CONTROL2, vip_control2); @@ -624,7 +622,8 @@ vip_max_address_enable(unsigned long max_address, int enable) vip_control2 |= VIP_CONTROL2_ADD_ERROR_ENABLE; WRITE_VIP32(VIP_MAX_ADDRESS, max_address & VIP_MAXADDR_MASK); - } else { + } + else { /* DISABLE DETECTION */ vip_control2 &= ~VIP_CONTROL2_ADD_ERROR_ENABLE; @@ -792,12 +791,13 @@ vip_set_priority_characteristics(VIPPRIORITYBUFFER * buffer) q_word.low = q_word.high = 0; q_word.low |= (buffer->secondary << - VIP_MSR_MCR_SECOND_PRIORITY_SHIFT) & VIP_MSR_MCR_SECOND_PRIORITY_MASK; - q_word.low |= (buffer->primary << - VIP_MSR_MCR_PRIMARY_PRIORITY_SHIFT) & + VIP_MSR_MCR_SECOND_PRIORITY_SHIFT) & + VIP_MSR_MCR_SECOND_PRIORITY_MASK; + q_word.low |= + (buffer-> + primary << VIP_MSR_MCR_PRIMARY_PRIORITY_SHIFT) & VIP_MSR_MCR_PRIMARY_PRIORITY_MASK; - q_word.low |= (buffer->pid << VIP_MSR_MCR_PID_SHIFT) & - VIP_MSR_MCR_PID_MASK; + q_word.low |= (buffer->pid << VIP_MSR_MCR_PID_SHIFT) & VIP_MSR_MCR_PID_MASK; msr_write64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_CONFIG, &q_word); @@ -822,12 +822,10 @@ vip_set_debug_characteristics(VIPDEBUGBUFFER * buffer) q_word.high |= (buffer->bist << VIP_MSR_DIAG_BIST_SHIFT) & VIP_MSR_DIAG_BIST_WMASK; - q_word.low |= (buffer->enable_upper ? - VIP_MSR_DIAG_MSB_ENABLE : 0x00000000); + q_word.low |= (buffer->enable_upper ? VIP_MSR_DIAG_MSB_ENABLE : 0x00000000); q_word.low |= (buffer->select_upper << VIP_MSR_DIAG_SEL_UPPER_SHIFT) & VIP_MSR_DIAG_SEL_UPPER_MASK; - q_word.low |= (buffer->enable_lower ? - VIP_MSR_DIAG_LSB_ENABLE : 0x00000000); + q_word.low |= (buffer->enable_lower ? VIP_MSR_DIAG_LSB_ENABLE : 0x00000000); q_word.low |= (buffer->select_lower << VIP_MSR_DIAG_SEL_LOWER_SHIFT) & VIP_MSR_DIAG_SEL_LOWER_MASK; @@ -871,7 +869,7 @@ int vip_set_interrupt_line(int line) { WRITE_VIP32(VIP_CURRENT_TARGET, - (line << VIP_CTARGET_TLINE_SHIFT) & VIP_CTARGET_TLINE_MASK); + (line << VIP_CTARGET_TLINE_SHIFT) & VIP_CTARGET_TLINE_MASK); return CIM_STATUS_OK; } @@ -922,14 +920,17 @@ vip_set_subwindow_enable(VIPSUBWINDOWBUFFER * buffer) /* WRITE THE WINDOW VALUE */ WRITE_VIP32(VIP_VERTICAL_START_STOP, ((buffer->stop << - VIP_VSTART_VERTEND_SHIFT) & - VIP_VSTART_VERTEND_MASK) | ((buffer->start << - VIP_VSTART_VERTSTART_SHIFT) & VIP_VSTART_VERTSTART_MASK)); + VIP_VSTART_VERTEND_SHIFT) & + VIP_VSTART_VERTEND_MASK) | + ((buffer-> + start << VIP_VSTART_VERTSTART_SHIFT) & + VIP_VSTART_VERTSTART_MASK)); /* ENABLE IN THE CONTROL REGISTER */ vip_control2 |= VIP_CONTROL2_SWC_ENABLE; - } else { + } + else { /* DISABLE SUBWINDOW CAPTURE IN THE CONTROL REGISTER */ vip_control2 &= ~VIP_CONTROL2_SWC_ENABLE; @@ -1009,13 +1010,13 @@ vip_save_state(VIPSTATEBUFFER * save_buffer) /* READ ALL VIP MSRS */ msr_read64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_CONFIG, - &(save_buffer->msr_config)); + &(save_buffer->msr_config)); msr_read64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_SMI, - &(save_buffer->msr_smi)); + &(save_buffer->msr_smi)); msr_read64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_PM, - &(save_buffer->msr_pm)); + &(save_buffer->msr_pm)); msr_read64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_DIAG, - &(save_buffer->msr_diag)); + &(save_buffer->msr_diag)); return CIM_STATUS_OK; } @@ -1064,13 +1065,13 @@ vip_restore_state(VIPSTATEBUFFER * restore_buffer) /* RESTORE THE VIP MSRS */ msr_write64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_CONFIG, - &(restore_buffer->msr_config)); + &(restore_buffer->msr_config)); msr_write64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_SMI, - &(restore_buffer->msr_smi)); + &(restore_buffer->msr_smi)); msr_write64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_PM, - &(restore_buffer->msr_pm)); + &(restore_buffer->msr_pm)); msr_write64(MSR_DEVICE_GEODELX_VIP, MSR_GEODELINK_DIAG, - &(restore_buffer->msr_diag)); + &(restore_buffer->msr_diag)); /* RESTORE THE CONTROL WORDS LAST */ @@ -1185,7 +1186,8 @@ vip_get_current_mode(VIPSETMODEBUFFER * buffer) buffer->planar_capture = VIP_420CAPTURE_ALTERNATINGFIELDS; else buffer->planar_capture = VIP_420CAPTURE_EVERYLINE; - } else + } + else buffer->planar_capture = VIP_420CAPTURE_ALTERNATINGLINES; } @@ -1257,10 +1259,9 @@ vip_get_601_configuration(VIP_601PARAMS * buffer) if ((vip_control1 & VIP_CONTROL1_MODE_MASK) == VIP_MODE_16BIT601) buffer->width = (READ_VIP32(VIP_601_HORZ_END) - - buffer->horz_start - 3) >> 1; + buffer->horz_start - 3) >> 1; else - buffer->width = (READ_VIP32(VIP_601_HORZ_END) - - buffer->horz_start - 3); + buffer->width = (READ_VIP32(VIP_601_HORZ_END) - buffer->horz_start - 3); return CIM_STATUS_OK; } @@ -1293,20 +1294,18 @@ vip_get_buffer_configuration(int buffer_type, VIPINPUTBUFFER * buffer) /* READ BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - offsets->even_base[cur_buffer] = - READ_VIP32(VIP_TASKA_VID_ODD_BASE); - offsets->odd_base[cur_buffer] = - READ_VIP32(VIP_TASKA_VID_EVEN_BASE); + offsets->even_base[cur_buffer] = READ_VIP32(VIP_TASKA_VID_ODD_BASE); + offsets->odd_base[cur_buffer] = READ_VIP32(VIP_TASKA_VID_EVEN_BASE); if (buffer->flags & VIP_INPUTFLAG_VBI) { offsets->vbi_even_base = READ_VIP32(VIP_TASKA_VBI_ODD_BASE); offsets->vbi_odd_base = READ_VIP32(VIP_TASKA_VBI_EVEN_BASE); } - } else { + } + else { offsets->even_base[cur_buffer] = READ_VIP32(VIP_TASKA_VID_EVEN_BASE); - offsets->odd_base[cur_buffer] = - READ_VIP32(VIP_TASKA_VID_ODD_BASE); + offsets->odd_base[cur_buffer] = READ_VIP32(VIP_TASKA_VID_ODD_BASE); if (buffer->flags & VIP_INPUTFLAG_VBI) { offsets->vbi_even_base = READ_VIP32(VIP_TASKA_VBI_EVEN_BASE); @@ -1322,7 +1321,8 @@ vip_get_buffer_configuration(int buffer_type, VIPINPUTBUFFER * buffer) offsets->even_uoffset = READ_VIP32(VIP_TASKA_U_EVEN_OFFSET); offsets->even_voffset = READ_VIP32(VIP_TASKA_V_EVEN_OFFSET); } - } else if (buffer_type == VIP_BUFFER_B) { + } + else if (buffer_type == VIP_BUFFER_B) { offsets = &buffer->offsets[VIP_BUFFER_TASK_B]; /* READ VIDEO PITCH */ @@ -1333,20 +1333,18 @@ vip_get_buffer_configuration(int buffer_type, VIPINPUTBUFFER * buffer) /* READ BASE OFFSETS */ if (buffer->flags & VIP_INPUTFLAG_INVERTPOLARITY) { - offsets->even_base[cur_buffer] = - READ_VIP32(VIP_TASKB_VID_ODD_BASE); - offsets->odd_base[cur_buffer] = - READ_VIP32(VIP_TASKB_VID_EVEN_BASE); + offsets->even_base[cur_buffer] = READ_VIP32(VIP_TASKB_VID_ODD_BASE); + offsets->odd_base[cur_buffer] = READ_VIP32(VIP_TASKB_VID_EVEN_BASE); if (buffer->flags & VIP_INPUTFLAG_VBI) { offsets->vbi_even_base = READ_VIP32(VIP_TASKB_VBI_ODD_BASE); offsets->vbi_odd_base = READ_VIP32(VIP_TASKB_VBI_EVEN_BASE); } - } else { + } + else { offsets->even_base[cur_buffer] = READ_VIP32(VIP_TASKB_VID_EVEN_BASE); - offsets->odd_base[cur_buffer] = - READ_VIP32(VIP_TASKB_VID_ODD_BASE); + offsets->odd_base[cur_buffer] = READ_VIP32(VIP_TASKB_VID_ODD_BASE); if (buffer->flags & VIP_INPUTFLAG_VBI) { offsets->vbi_even_base = READ_VIP32(VIP_TASKB_VBI_EVEN_BASE); @@ -1360,11 +1358,13 @@ vip_get_buffer_configuration(int buffer_type, VIPINPUTBUFFER * buffer) offsets->odd_uoffset = READ_VIP32(VIP_TASKB_U_OFFSET); offsets->odd_voffset = READ_VIP32(VIP_TASKB_V_OFFSET); } - } else if (buffer_type == VIP_BUFFER_ANC || buffer_type == VIP_BUFFER_MSG) { + } + else if (buffer_type == VIP_BUFFER_ANC || buffer_type == VIP_BUFFER_MSG) { buffer->ancillaryData.msg1_base = READ_VIP32(VIP_ANC_MSG1_BASE); buffer->ancillaryData.msg2_base = READ_VIP32(VIP_ANC_MSG2_BASE); buffer->ancillaryData.msg_size = READ_VIP32(VIP_ANC_MSG_SIZE); - } else { + } + else { return CIM_STATUS_INVALIDPARAMS; } @@ -1450,7 +1450,7 @@ unsigned long vip_get_capture_state(void) { return ((READ_VIP32(VIP_CONTROL1) & VIP_CONTROL1_RUNMODE_MASK) >> - VIP_CONTROL1_RUNMODE_SHIFT); + VIP_CONTROL1_RUNMODE_SHIFT); } /*--------------------------------------------------------------------------- @@ -1569,8 +1569,8 @@ vip_get_power_characteristics(VIPPOWERBUFFER * buffer) /* DECODE THE CLOCK GATING BITS */ - buffer->glink_clock_mode = (int)(q_word.low & VIP_MSR_POWER_GLINK); - buffer->vip_clock_mode = (int)(q_word.low & VIP_MSR_POWER_CLOCK); + buffer->glink_clock_mode = (int) (q_word.low & VIP_MSR_POWER_GLINK); + buffer->vip_clock_mode = (int) (q_word.low & VIP_MSR_POWER_CLOCK); return CIM_STATUS_OK; } diff --git a/src/cim/cim_vop.c b/src/cim/cim_vop.c index 4b83c03..fe73e98 100644 --- a/src/cim/cim_vop.c +++ b/src/cim/cim_vop.c @@ -73,11 +73,12 @@ vop_set_vbi_window(VOPVBIWINDOWBUFFER * buffer) return CIM_STATUS_INVALIDPARAMS; hstart = buffer->horz_start + hsyncstart; - } else { + } + else { /* VERIFY THAT THE INPUT IS VALID */ - if (buffer->horz_start < ((long)hsyncstart - (long)htotal) || - buffer->horz_start > (long)hsyncstart || + if (buffer->horz_start < ((long) hsyncstart - (long) htotal) || + buffer->horz_start > (long) hsyncstart || buffer->vbi_width > htotal) { return CIM_STATUS_INVALIDPARAMS; } @@ -93,17 +94,24 @@ vop_set_vbi_window(VOPVBIWINDOWBUFFER * buffer) hstart--; hstop--; WRITE_REG32(DC3_VBI_HOR, ((hstop << DC3_VBI_HOR_END_SHIFT) & - DC3_VBI_HOR_END_MASK) | (hstart & DC3_VBI_HOR_START_MASK)); + DC3_VBI_HOR_END_MASK) | (hstart & + DC3_VBI_HOR_START_MASK)); /* WRITE LINE CAPTURE MASKS */ WRITE_REG32(DC3_VBI_LN_ODD, ((buffer->odd_line_offset << - DC3_VBI_ODD_LINE_SHIFT) & DC3_VBI_ODD_LINE_MASK) | - (buffer->odd_line_capture_mask & DC3_VBI_ODD_ENABLE_MASK)); + DC3_VBI_ODD_LINE_SHIFT) & + DC3_VBI_ODD_LINE_MASK) | (buffer-> + odd_line_capture_mask + & + DC3_VBI_ODD_ENABLE_MASK)); WRITE_REG32(DC3_VBI_LN_EVEN, ((buffer->even_line_offset << - DC3_VBI_EVEN_LINE_SHIFT) & DC3_VBI_EVEN_LINE_MASK) | - (buffer->even_line_capture_mask & DC3_VBI_EVEN_ENABLE_MASK)); + DC3_VBI_EVEN_LINE_SHIFT) & + DC3_VBI_EVEN_LINE_MASK) | (buffer-> + even_line_capture_mask + & + DC3_VBI_EVEN_ENABLE_MASK)); /* PROGRAM SOURCE OFFSETS * Start with the even offsets. Note that we always enable 16-bit VBI, @@ -115,18 +123,18 @@ vop_set_vbi_window(VOPVBIWINDOWBUFFER * buffer) if (buffer->enable_upscale) temp |= DC3_VBI_EVEN_CTL_UPSCALE; WRITE_REG32(DC3_VBI_EVEN_CTL, temp | - (buffer->even_address_offset & DC3_VBI_EVEN_CTL_OFFSET_MASK)); + (buffer->even_address_offset & DC3_VBI_EVEN_CTL_OFFSET_MASK)); /* ODD OFFSET */ temp = READ_REG32(DC3_VBI_ODD_CTL) & ~DC3_VBI_ODD_CTL_OFFSET_MASK; WRITE_REG32(DC3_VBI_ODD_CTL, temp | - (buffer->odd_address_offset & DC3_VBI_ODD_CTL_OFFSET_MASK)); + (buffer->odd_address_offset & DC3_VBI_ODD_CTL_OFFSET_MASK)); /* PITCH */ temp = ((buffer->data_size >> 3) << 16) | ((buffer->data_pitch >> 3) & - 0x0000FFFF); + 0x0000FFFF); WRITE_REG32(DC3_VBI_PITCH, temp); WRITE_REG32(DC3_UNLOCK, unlock); @@ -221,10 +229,11 @@ vop_set_configuration(VOPCONFIGURATIONBUFFER * config) if (config->vop601.vsync_shift == VOP_VSYNC_LATER_BY_X) { delta |= (config->vop601.vsync_shift_count & - DC3_601_VSYNC_SHIFT_MASK); + DC3_601_VSYNC_SHIFT_MASK); delta |= DC3_601_VSYNC_SHIFT_ENABLE; } - } else { + } + else { if (config->flags & VOP_FLAG_VBI) vop_config |= VOP_CONFIG_VBI; if (config->flags & VOP_FLAG_TASK) @@ -275,7 +284,8 @@ vop_set_configuration(VOPCONFIGURATIONBUFFER * config) alpha |= DF_CSC_VOP_RGB_TO_YUV; else alpha &= ~DF_CSC_VOP_RGB_TO_YUV; - } else { + } + else { /* YUV OUTPUT FROM THE MIXER */ /* As there is no YUV->RGB VOP conversion, we simply disable the */ /* VOP CSC and trust that the user is competent. */ @@ -384,14 +394,14 @@ vop_get_current_mode(VOPCONFIGURATIONBUFFER * config) /* READ 601 SETTINGS */ config->vop601.flags = vop_config & (VOP_CONFIG_INVERT_DISPE | - VOP_CONFIG_INVERT_HSYNC | VOP_CONFIG_INVERT_VSYNC); + VOP_CONFIG_INVERT_HSYNC | + VOP_CONFIG_INVERT_VSYNC); config->vop601.vsync_shift = vop_config & VOP_CONFIG_VSYNC_MASK; config->vop601.vsync_shift_count = READ_REG32(DC3_VID_DS_DELTA) & DC3_601_VSYNC_SHIFT_MASK; - if ((alpha & DF_CSC_GRAPHICS_RGB_TO_YUV) || - (alpha & DF_CSC_VOP_RGB_TO_YUV)) { + if ((alpha & DF_CSC_GRAPHICS_RGB_TO_YUV) || (alpha & DF_CSC_VOP_RGB_TO_YUV)) { /* YUV OUTPUT */ if (vop_config & VOP_CONFIG_DISABLE_DECIMATE) @@ -400,7 +410,8 @@ vop_get_current_mode(VOPCONFIGURATIONBUFFER * config) config->vop601.output_mode = VOP_601_YUV_16BIT; else config->vop601.output_mode = VOP_601_YUV_8BIT; - } else { + } + else { config->vop601.output_mode = VOP_601_RGB_8_8_8; } @@ -455,11 +466,12 @@ vop_get_vbi_configuration(VOPVBIWINDOWBUFFER * buffer) hstop = ((temp & DC3_VBI_HOR_END_MASK) >> DC3_VBI_HOR_END_SHIFT) + 1; if (buffer->horz_from_hsync) { buffer->horz_start = hstart + htotal - hsyncstart; - if (buffer->horz_start >= (long)htotal) + if (buffer->horz_start >= (long) htotal) buffer->horz_start -= htotal; - } else { + } + else { if (hstart > hsyncstart) - buffer->horz_start = (long)hstart - (long)htotal; + buffer->horz_start = (long) hstart - (long) htotal; else buffer->horz_start = hstart; } @@ -547,7 +559,7 @@ vop_get_crc(void) /* WAIT UNTIL NOT ACTIVE, THEN ACTIVE, NOT ACTIVE, THEN ACTIVE */ - while (!(READ_VOP32(VOP_CONFIGURATION) & VOP_CONFIG_SIGVAL)) ; + while (!(READ_VOP32(VOP_CONFIGURATION) & VOP_CONFIG_SIGVAL)); crc = READ_VOP32(VOP_SIGNATURE); @@ -586,7 +598,7 @@ vop_read_vbi_crc(void) /* WAIT FOR THE CRC TO BE COMPLETED */ - while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_SIGC)) ; + while (!(READ_REG32(DC3_LINE_CNT_STATUS) & DC3_LNCNT_SIGC)); /* READ THE COMPLETED CRC */ |