#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "console.h"
#include "cpu.h"
#include "devices.h"
#include "machine.h"
#include "memory.h"
#include "misc.h"
#include "x11.h"
Go to the source code of this file.
Macros | |
#define | FB_TICK_SHIFT 19 |
Functions | |
void | set_grayscale_palette (struct vfb_data *d, int ncolors) |
void | set_blackwhite_palette (struct vfb_data *d, int ncolors) |
void | dev_fb_resize (struct vfb_data *d, int new_xsize, int new_ysize) |
void | dev_fb_setcursor (struct vfb_data *d, int cursor_x, int cursor_y, int on, int cursor_xsize, int cursor_ysize) |
void | framebuffer_blockcopyfill (struct vfb_data *d, int fillflag, int fill_r, int fill_g, int fill_b, int x1, int y1, int x2, int y2, int from_x, int from_y) |
DEVICE_TICK (fb) | |
DEVICE_ACCESS (fb) | |
struct vfb_data * | dev_fb_init (struct machine *machine, struct memory *mem, uint64_t baseaddr, int vfb_type, int visible_xsize, int visible_ysize, int xsize, int ysize, int bit_depth, const char *name) |
struct vfb_data* dev_fb_init | ( | struct machine * | machine, |
struct memory * | mem, | ||
uint64_t | baseaddr, | ||
int | vfb_type, | ||
int | visible_xsize, | ||
int | visible_ysize, | ||
int | xsize, | ||
int | ysize, | ||
int | bit_depth, | ||
const char * | name | ||
) |
Definition at line 834 of file dev_fb.cc.
References vfb_data::bit_depth, vfb_data::bytes_per_line, CHECK_ALLOCATION, vfb_data::color32k, vfb_data::framebuffer, vfb_data::framebuffer_size, vfb_data::memory, vfb_data::name, vfb_data::psp_15bit, x11_md::scaledown, set_blackwhite_palette(), set_grayscale_palette(), vfb_data::update_x1, vfb_data::update_x2, vfb_data::update_y1, vfb_data::update_y2, VFB_DEC_MAXINE, VFB_DEC_VFB01, VFB_DEC_VFB02, VFB_PLAYSTATION2, VFB_REVERSE_START, vfb_data::vfb_scaledown, vfb_data::vfb_type, vfb_data::visible_xsize, vfb_data::visible_ysize, machine::x11_md, vfb_data::x11_xsize, vfb_data::x11_ysize, vfb_data::xsize, and vfb_data::ysize.
Referenced by dev_pmagja_init(), dev_px_init(), dev_sgi_gbe_init(), dev_turbochannel_init(), dev_vga_init(), DEVINIT(), and MACHINE_SETUP().
void dev_fb_resize | ( | struct vfb_data * | d, |
int | new_xsize, | ||
int | new_ysize | ||
) |
Definition at line 123 of file dev_fb.cc.
References vfb_data::bit_depth, vfb_data::bytes_per_line, CHECK_ALLOCATION, fatal(), vfb_data::framebuffer, vfb_data::framebuffer_size, vfb_data::memory, memory_device_update_data(), vfb_data::update_x1, vfb_data::update_x2, vfb_data::update_y1, vfb_data::update_y2, vfb_data::vfb_scaledown, vfb_data::visible_xsize, vfb_data::visible_ysize, vfb_data::x11_xsize, vfb_data::x11_ysize, vfb_data::xsize, and vfb_data::ysize.
void dev_fb_setcursor | ( | struct vfb_data * | d, |
int | cursor_x, | ||
int | cursor_y, | ||
int | on, | ||
int | cursor_xsize, | ||
int | cursor_ysize | ||
) |
Definition at line 193 of file dev_fb.cc.
References fb_window::cursor_on, fb_window::cursor_x, fb_window::cursor_xsize, fb_window::cursor_y, fb_window::cursor_ysize, vfb_data::fb_window, vfb_data::xsize, and vfb_data::ysize.
Referenced by DEVICE_ACCESS().
DEVICE_ACCESS | ( | fb | ) |
Definition at line 704 of file dev_fb.cc.
References vfb_data::bit_depth, vfb_data::bytes_per_line, data, fatal(), vfb_data::framebuffer, vfb_data::framebuffer_size, x11_md::in_use, cpu::machine, MEM_WRITE, vfb_data::update_x1, vfb_data::update_x2, vfb_data::update_y1, vfb_data::update_y2, machine::x11_md, and vfb_data::xsize.
DEVICE_TICK | ( | fb | ) |
Definition at line 405 of file dev_fb.cc.
References addr, vfb_data::bit_depth, vfb_data::bytes_per_line, fb_window::cursor_on, fb_window::cursor_x, fb_window::cursor_xsize, fb_window::cursor_y, fb_window::cursor_ysize, f(), fb_window::fb_number, vfb_data::fb_window, fb_window::fb_ximage, vfb_data::framebuffer, if(), x11_md::in_use, cpu::machine, cpu::mem, memory_device_dyntrans_access(), fb_window::OLD_cursor_on, fb_window::OLD_cursor_x, fb_window::OLD_cursor_xsize, fb_window::OLD_cursor_y, fb_window::OLD_cursor_ysize, vfb_data::redraw_func, vfb_data::rgb_palette, vfb_data::update_x1, vfb_data::update_x2, vfb_data::update_y1, vfb_data::update_y2, vfb_data::vfb_scaledown, vfb_data::visible_xsize, vfb_data::visible_ysize, fb_window::x11_display, fb_window::x11_fb_gc, fb_window::x11_fb_window, machine::x11_md, x11_redraw_cursor(), and vfb_data::xsize.
void framebuffer_blockcopyfill | ( | struct vfb_data * | d, |
int | fillflag, | ||
int | fill_r, | ||
int | fill_g, | ||
int | fill_b, | ||
int | x1, | ||
int | y1, | ||
int | x2, | ||
int | y2, | ||
int | from_x, | ||
int | from_y | ||
) |
Definition at line 234 of file dev_fb.cc.
References vfb_data::bit_depth, ether_data::buf, vfb_data::bytes_per_line, debug, fatal(), vfb_data::framebuffer, vfb_data::update_x1, vfb_data::update_x2, vfb_data::update_y1, vfb_data::update_y2, and vfb_data::xsize.
Referenced by DEVICE_ACCESS().
void set_blackwhite_palette | ( | struct vfb_data * | d, |
int | ncolors | ||
) |
Definition at line 92 of file dev_fb.cc.
References vfb_data::rgb_palette.
Referenced by dev_fb_init().
void set_grayscale_palette | ( | struct vfb_data * | d, |
int | ncolors | ||
) |
Definition at line 74 of file dev_fb.cc.
References vfb_data::rgb_palette.
Referenced by dev_fb_init(), and dev_sgi_gbe_init().