vxBoot/src/gui/fx9860g.c

52 lines
1.1 KiB
C

#include "vxBoot/gui.h"
#include "vxBoot/loader.h"
#include <gint/display.h>
#if FX9860G
/* fx9860g_display() : Hardcoded display for the fx9860g */
void gui_fx9860g_display(struct gui_meta *disp)
{
char const * name;
int posy;
int tmp;
int sy;
int i;
dprint_opt(
DWIDTH / 2, 1,
C_WHITE, C_BLACK,
DTEXT_CENTER, DTEXT_TOP,
"VxBoot version %s",
VXBOOT_VERSION
);
drect_border(8, 8, 120, 50, C_NONE, 1, C_WHITE);
if (disp->scroll.offset > 0) {
sy = disp->scroll.y + (disp->list.anchor * disp->scroll.offset);
dline(118, sy, 118, sy + disp->scroll.width, C_WHITE);
}
i = disp->list.anchor - 1;
while (++i < disp->list.count && i - disp->list.anchor < 6) {
posy = 10 + ((i - disp->list.anchor) * 7);
name = loader_kernel_img_get(i)->inode->name;
dtext(11, posy + 1, C_WHITE, name);
if (i != disp->list.select)
continue;
tmp = (disp->scroll.offset > 0) ? 116 : 118;
drect(10, posy, tmp, posy + 6, C_INVERT);
}
dprint_opt(
DWIDTH / 2, 54,
C_WHITE, C_BLACK,
DTEXT_CENTER, DTEXT_MIDDLE,
"Use arrows to select"
);
dprint_opt(
DWIDTH / 2, 60,
C_WHITE, C_BLACK,
DTEXT_CENTER, DTEXT_MIDDLE,
"Press [EXE] to boot"
);
}
#endif