X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=vgasrc%2Fstdvga.h;h=c9a9ba148085ff1be8012ec32e850ddbdf0b4323;hb=9f857fc97c0cdfa6f18a43d1548cd91014766c26;hp=ee143581ed0b4997c41687d177b98330a802f00d;hpb=160d34abcea594100f7322ba9d3a774ea33cb2c9;p=seabios.git diff --git a/vgasrc/stdvga.h b/vgasrc/stdvga.h index ee14358..c9a9ba1 100644 --- a/vgasrc/stdvga.h +++ b/vgasrc/stdvga.h @@ -2,7 +2,6 @@ #define __STDVGA_H #include "types.h" // u8 -#include "vgabios.h" // struct vgamode_s // VGA registers #define VGAREG_ACTL_ADDRESS 0x3c0 @@ -45,47 +44,12 @@ #define SEG_CTEXT 0xB800 #define SEG_MTEXT 0xB000 -struct stdvga_mode_s { - u16 mode; - struct vgamode_s info; - - u8 pelmask; - u8 *dac; - u16 dacsize; - u8 *sequ_regs; - u8 miscreg; - u8 *crtc_regs; - u8 *actl_regs; - u8 *grdc_regs; -}; - -struct saveVideoHardware { - u8 sequ_index; - u8 crtc_index; - u8 grdc_index; - u8 actl_index; - u8 feature; - u8 sequ_regs[4]; - u8 sequ0; - u8 crtc_regs[25]; - u8 actl_regs[20]; - u8 grdc_regs[9]; - u16 crtc_addr; - u8 plane_latch[4]; -}; - -struct saveDACcolors { - u8 rwmode; - u8 peladdr; - u8 pelmask; - u8 dac[768]; - u8 color_select; -}; - // stdvgamodes.c struct vgamode_s *stdvga_find_mode(int mode); +void stdvga_list_modes(u16 seg, u16 *dest, u16 *last); void stdvga_build_video_param(void); void stdvga_override_crtc(int mode, u8 *crtc); +int stdvga_set_mode(struct vgamode_s *vmode_g, int flags); // stdvgaio.c u8 stdvga_pelmask_read(void); @@ -120,24 +84,29 @@ void stdvga_get_all_palette_reg(u16 seg, u8 *data_far); void stdvga_toggle_intensity(u8 flag); void stdvga_select_video_dac_color_page(u8 flag, u8 data); void stdvga_read_video_dac_state(u8 *pmode, u8 *curpage); -void stdvga_save_dac_state(u16 seg, struct saveDACcolors *info); -void stdvga_restore_dac_state(u16 seg, struct saveDACcolors *info); void stdvga_perform_gray_scale_summing(u16 start, u16 count); void stdvga_set_text_block_specifier(u8 spec); void stdvga_planar4_plane(int plane); void stdvga_load_font(u16 seg, void *src_far, u16 count , u16 start, u8 destflags, u8 fontsize); u16 stdvga_get_crtc(void); +int stdvga_bpp_factor(struct vgamode_s *vmode_g); void stdvga_set_cursor_shape(u8 start, u8 end); -void stdvga_set_active_page(u16 address); -void stdvga_set_cursor_pos(u16 address); +void stdvga_set_cursor_pos(int address); void stdvga_set_scan_lines(u8 lines); u16 stdvga_get_vde(void); -void stdvga_save_state(u16 seg, struct saveVideoHardware *info); -void stdvga_restore_state(u16 seg, struct saveVideoHardware *info); -int stdvga_set_mode(int mode, int flags); +int stdvga_get_window(struct vgamode_s *vmode_g, int window); +int stdvga_set_window(struct vgamode_s *vmode_g, int window, int val); +int stdvga_get_linelength(struct vgamode_s *vmode_g); +int stdvga_set_linelength(struct vgamode_s *vmode_g, int val); +int stdvga_get_displaystart(struct vgamode_s *vmode_g); +int stdvga_set_displaystart(struct vgamode_s *vmode_g, int val); +int stdvga_get_dacformat(struct vgamode_s *vmode_g); +int stdvga_set_dacformat(struct vgamode_s *vmode_g, int val); +int stdvga_size_state(int states); +int stdvga_save_state(u16 seg, void *data, int states); +int stdvga_restore_state(u16 seg, void *data, int states); void stdvga_enable_video_addressing(u8 disable); -void stdvga_list_modes(u16 seg, u16 *dest, u16 *last); int stdvga_init(void); #endif // stdvga.h