Moved graphics_initDefaultFont functionality -> font_initEmbedded
This commit is contained in:
18
src/font.c
18
src/font.c
@@ -22,6 +22,24 @@ const char *font_init(font_t *self, const char *filename) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const char *font_initEmbedded(font_t *self) {
|
||||||
|
#include "font_embedded.c"
|
||||||
|
memset(self, 0, sizeof(*self));
|
||||||
|
image_initBlank(&self->image, font_width, font_height);
|
||||||
|
int i, j;
|
||||||
|
char *p = font_data;
|
||||||
|
for (i = 0; i < font_width * font_height; i += 8) {
|
||||||
|
for (j = 0; j < 8; j++) {
|
||||||
|
int res = (*p >> j) & 1;
|
||||||
|
self->image.data[i + j] = res ? 0xf : 0x00;
|
||||||
|
self->image.mask[i + j] = res ? 0x0 : 0xff;
|
||||||
|
}
|
||||||
|
p++;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void font_deinit(font_t *self) {
|
void font_deinit(font_t *self) {
|
||||||
image_deinit(&self->image);
|
image_deinit(&self->image);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ typedef struct {
|
|||||||
} font_t;
|
} font_t;
|
||||||
|
|
||||||
const char *font_init(font_t *self, const char *filename);
|
const char *font_init(font_t *self, const char *filename);
|
||||||
|
const char *font_initEmbedded(font_t *self);
|
||||||
void font_deinit(font_t *self);
|
void font_deinit(font_t *self);
|
||||||
void font_blit(font_t *self, pixel_t *buf, int bufw, int bufh,
|
void font_blit(font_t *self, pixel_t *buf, int bufw, int bufh,
|
||||||
const char *str, int dx, int dy);
|
const char *str, int dx, int dy);
|
||||||
|
|||||||
@@ -24,25 +24,10 @@ font_t *graphics_font = &graphics_defaultFont;
|
|||||||
int graphics_flip = 0;
|
int graphics_flip = 0;
|
||||||
|
|
||||||
|
|
||||||
static void graphics_initDefaultFont(void) {
|
|
||||||
#include "font_embedded.c"
|
|
||||||
image_initBlank(&graphics_defaultFont.image, font_width, font_height);
|
|
||||||
int i, j;
|
|
||||||
char *p = font_data;
|
|
||||||
for (i = 0; i < font_width * font_height; i += 8) {
|
|
||||||
for (j = 0; j < 8; j++) {
|
|
||||||
int res = (*p >> j) & 1;
|
|
||||||
graphics_defaultFont.image.data[i + j] = res ? 0xf : 0x00;
|
|
||||||
graphics_defaultFont.image.mask[i + j] = res ? 0x0 : 0xff;
|
|
||||||
}
|
|
||||||
p++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
void graphics_init(void) {
|
void graphics_init(void) {
|
||||||
image_initBlank(&graphics_screen, VGA_WIDTH, VGA_HEIGHT);
|
image_initBlank(&graphics_screen, VGA_WIDTH, VGA_HEIGHT);
|
||||||
graphics_initDefaultFont();
|
font_initEmbedded(&graphics_defaultFont);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user