1
0
mirror of https://github.com/simh/simh.git synced 2026-02-08 09:12:10 +00:00

VIDEO: Allow setting alpha blending mode.

This commit is contained in:
Lars Brinkhoff
2020-11-23 09:32:45 +01:00
parent 10f3a9dea3
commit ed4b204584
2 changed files with 60 additions and 7 deletions

View File

@@ -157,6 +157,11 @@ extern "C" {
#define SIM_KEY_UNKNOWN 200
#define SIM_ALPHA_NONE 1
#define SIM_ALPHA_BLEND 2
#define SIM_ALPHA_ADD 3
#define SIM_ALPHA_MOD 4
typedef struct VID_DISPLAY VID_DISPLAY;
struct mouse_event {
@@ -214,12 +219,14 @@ t_stat vid_open_window (VID_DISPLAY **vptr, DEVICE *dptr, const char *title, uin
t_stat vid_close_window (VID_DISPLAY *vptr);
t_stat vid_close_all (void);
uint32 vid_map_rgb_window (VID_DISPLAY *vptr, uint8 r, uint8 g, uint8 b);
uint32 vid_map_rgba_window (VID_DISPLAY *vptr, uint8 r, uint8 g, uint8 b, uint8 a);
void vid_draw_window (VID_DISPLAY *vptr, int32 x, int32 y, int32 w, int32 h, uint32 *buf);
void vid_refresh_window (VID_DISPLAY *vptr);
t_stat vid_set_cursor_window (VID_DISPLAY *vptr, t_bool visible, uint32 width, uint32 height, uint8 *data, uint8 *mask, uint32 hot_x, uint32 hot_y);
t_bool vid_is_fullscreen_window (VID_DISPLAY *vptr);
t_stat vid_set_fullscreen_window (VID_DISPLAY *vptr, t_bool flag);
void vid_set_cursor_position_window (VID_DISPLAY *vptr, int32 x, int32 y); /* cursor position (set by calling code) */
t_stat vid_set_alpha_mode (VID_DISPLAY *vptr, int mode);
/* A device simulator can optionally set the vid_display_kb_event_process
* routine pointer to the address of a routine.