[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 5/7] artist: Allow to turn cursor on or off
From: |
Helge Deller |
Subject: |
[PULL 5/7] artist: Allow to turn cursor on or off |
Date: |
Wed, 18 May 2022 18:17:56 +0200 |
Bit 0x80 in the cursor_cntrl register specifies if the cursor
should be visible. Prevent rendering the cursor if it's invisible.
Signed-off-by: Helge Deller <deller@gmx.de>
Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
---
hw/display/artist.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/hw/display/artist.c b/hw/display/artist.c
index 780cb15026..b8930b7c5a 100644
--- a/hw/display/artist.c
+++ b/hw/display/artist.c
@@ -353,10 +353,20 @@ static void artist_get_cursor_pos(ARTISTState *s, int *x,
int *y)
}
}
+static inline bool cursor_visible(ARTISTState *s)
+{
+ /* cursor is visible if bit 0x80 is set in cursor_cntrl */
+ return s->cursor_cntrl & 0x80;
+}
+
static void artist_invalidate_cursor(ARTISTState *s)
{
int x, y;
+ if (!cursor_visible(s)) {
+ return;
+ }
+
artist_get_cursor_pos(s, &x, &y);
artist_invalidate_lines(&s->vram_buffer[ARTIST_BUFFER_AP],
y, s->cursor_height);
@@ -1218,6 +1228,10 @@ static void artist_draw_cursor(ARTISTState *s)
struct vram_buffer *cursor0, *cursor1 , *buf;
int cx, cy, cursor_pos_x, cursor_pos_y;
+ if (!cursor_visible(s)) {
+ return;
+ }
+
cursor0 = &s->vram_buffer[ARTIST_BUFFER_CURSOR1];
cursor1 = &s->vram_buffer[ARTIST_BUFFER_CURSOR2];
buf = &s->vram_buffer[ARTIST_BUFFER_AP];
--
2.35.3
- [PULL 0/7] Artist cursor fix final patches, Helge Deller, 2022/05/18
- [PULL 3/7] artist: Use human-readable variable names instead of reg_xxx, Helge Deller, 2022/05/18
- [PULL 6/7] artist: Emulate screen blanking, Helge Deller, 2022/05/18
- [PULL 7/7] artist: Fix X cursor position calculation in X11, Helge Deller, 2022/05/18
- [PULL 5/7] artist: Allow to turn cursor on or off,
Helge Deller <=
- [PULL 2/7] artist: Introduce constant for max cursor size, Helge Deller, 2022/05/18
- [PULL 4/7] artist: Fix vertical X11 cursor position in HP-UX, Helge Deller, 2022/05/18
- [PULL 1/7] seabios-hppa: Update SeaBIOS-hppa to VERSION 5, Helge Deller, 2022/05/18
- Re: [PULL 0/7] Artist cursor fix final patches, Richard Henderson, 2022/05/18