Re: Graphical install disks Ben Pfaff is doing
Hartmut Koptein <koptein@et-inf.fho-emden.de> writes:
> I suppose we need a framebuffer version of cfdisk. Now that WOULD be a fun
> thing to have.
Yeah! And much more! The ggilib is the user-interface. Someone should test
if it will work with all svgalib binaries. After that we can remove svgalib
and then we have much less problems on porting! I think zgv is a good
starting point -- not for the boot-floppies but in generell.
I'm not putting ggilib on my bootdisks, I'm writing a very tiny
graphics library of my own. Current, or perhaps slightly old (the
machine that has the latest version isn't on now), header shown below:
/* BOGL - Ben's Own Graphics Library.
Written by Ben Pfaff <pfaffben@debian.org>.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA. */
#ifndef bogl_h
#define bogl_h
/* Proportional font structure definition. */
struct bogl_font
{
int height; /* Height in pixels. */
unsigned long *content; /* 32-bit right-padded bitmap array. */
short *offset; /* 256 offsets into content. */
short *width; /* 256 character widths. */
};
/* Pixmap structure definition. */
struct bogl_pixmap
{
int width, height; /* Width, height in pixels. */
int ncols; /* Number of colors. */
int transparent; /* Transparent color or -1 if none. */
unsigned char (*palette)[3]; /* Palette. */
unsigned char *data; /* Run-length compressed data. */
};
/* Standard fonts - use bdftobogl to make more. */
extern const struct bogl_font bogl_helv08;
extern const struct bogl_font bogl_helv10;
extern const struct bogl_font bogl_helv14;
extern const struct bogl_font bogl_times08;
extern const struct bogl_font bogl_times10;
extern const struct bogl_font bogl_times12;
/* Screen parameters. */
int bogl_xres, bogl_yres, bogl_ncols;
/* Generic routines. */
int bogl_init (void);
int bogl_metrics (char *s, int *cy, const struct bogl_font *font);
/* Device-specific routines. */
void (*bogl_hline) (int x1, int x2, int y, int c);
void (*bogl_vline) (int x, int y1, int y2, int c);
void (*bogl_text) (int x, int y, char *s, int fg, int bg,
const struct bogl_font *font);
void (*bogl_clear) (int x1, int y1, int x2, int y2, int c);
void (*bogl_move) (int sx, int sy, int dx, int dy, int w, int h);
void (*bogl_put) (int x, int y, struct bogl_pixmap *pixmap, int ofs);
void (*bogl_setpalette) (int c, int nc, unsigned char (*palette)[3]);
#endif /* bogl_h */
Reply to: