}
static int lightpen_y1[2], lightpen_y2[2];
-static int statusbar_y1, statusbar_y2;
void putpixel(uae_u8 *buf, uae_u8 *genlockbuf, int bpp, int x, xcolnr c8)
{
static void draw_frame_extras(struct vidbuffer *vb, int y_start, int y_end)
{
- if ((currprefs.leds_on_screen & STATUSLINE_CHIPSET) && softstatusline()) {
- int slx, sly;
- int mult = statusline_get_multiplier(vb->monitor_id) / 100;
- statusline_getpos(vb->monitor_id, &slx, &sly, vb->outwidth, vb->outheight);
- statusbar_y1 = sly + min_ypos_for_screen - 1;
- statusbar_y2 = statusbar_y1 + TD_TOTAL_HEIGHT * mult + 1;
- draw_status_line(vb->monitor_id, sly, -1);
- for (int i = 0; i < TD_TOTAL_HEIGHT * mult; i++) {
- int line = sly + i;
- draw_status_line(vb->monitor_id, line, i);
- }
- } else {
- statusbar_y1 = 0;
- statusbar_y1 = 0;
- }
if (debug_dma > 1 || debug_heatmap > 1) {
for (int i = 0; i < vb->outheight; i++) {
int line = i;
state = linestate + lineno;
changed |= ad->frame_redraw_necessary != 0 || refresh_indicator_buffer != NULL ||
((lineno >= lightpen_y1[0] && lineno < lightpen_y2[0]) ||
- (lineno >= lightpen_y1[1] && lineno < lightpen_y2[1]) ||
- (lineno >= statusbar_y1 && lineno < statusbar_y2));
+ (lineno >= lightpen_y1[1] && lineno < lightpen_y2[1]));
switch (how) {
case nln_normal:
static bool fb_get_surface(struct fb_struct *data)
{
struct amigadisplay *ad = &adisplays[data->monitor_id];
- bool gotsurf = false;
if (ad->picasso_on) {
if (data->surface == NULL) {
data->surface = gfx_lock_picasso(data->monitor_id, false);
- gotsurf = true;
- }
- if (data->surface && gotsurf) {
- if (softstatusline())
- picasso_statusline(data->monitor_id, data->surface);
}
}
return data->surface != NULL;
}
if (ad->picasso_on && !gb->resolutionchange) {
- if (!gb->monitor_id) {
- if (currprefs.leds_on_screen & STATUSLINE_RTG) {
- if (gb->gfxboard_surface == NULL) {
- gb->gfxboard_surface = gfx_lock_picasso(gb->monitor_id, false);
- }
- if (gb->gfxboard_surface) {
- if (softstatusline())
- picasso_statusline(gb->monitor_id, gb->gfxboard_surface);
- }
- }
- }
if (gb->fullrefresh > 0)
gb->fullrefresh--;
}
void draw_status_line_single(int monid, uae_u8 *buf, int bpp, int y, int totalwidth, uae_u32 *rc, uae_u32 *gc, uae_u32 *bc, uae_u32 *alpha);
void statusline_single_erase(int monid, uae_u8 *buf, int bpp, int y, int totalwidth);
void statusline_getpos(int monid, int *x, int *y, int width, int height);
-bool softstatusline(void);
#define STATUSTYPE_FLOPPY 1
#define STATUSTYPE_DISPLAY 2
int monid = currprefs.rtgboards[data->a2410_gfxboard].monitor_id;
struct amigadisplay *ad = &adisplays[monid];
- bool gotsurf = false;
if (ad->picasso_on) {
if (data->a2410_surface == NULL) {
data->a2410_surface = gfx_lock_picasso(monid, false);
- gotsurf = true;
- }
- if (data->a2410_surface && gotsurf) {
- if (softstatusline())
- picasso_statusline(monid, data->a2410_surface);
}
}
}
dstp = gfx_lock_picasso(monid, false);
}
if (dstp) {
- if (softstatusline()) {
- picasso_statusline(monid, dstp);
- }
maxy = vidinfo->height;
if (miny > vidinfo->height - TD_TOTAL_HEIGHT)
miny = vidinfo->height - TD_TOTAL_HEIGHT;
static bool statusline_was_updated;
static char *td_new_numbers;
-bool softstatusline(void)
-{
- return false;
-}
-
void deletestatusline(int monid)
{
if (monid)