You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
bzt 7ace64ba9f Initial commit 7 years ago
..
Makefile Initial commit 7 years ago
OLVASSEL.md Initial commit 7 years ago
README.md Initial commit 7 years ago
delays.c Initial commit 7 years ago
delays.h Initial commit 7 years ago
font.psf Initial commit 7 years ago
gpio.h Initial commit 7 years ago
kernel8.img Initial commit 7 years ago
lfb.c Initial commit 7 years ago
lfb.h Initial commit 7 years ago
link.ld Initial commit 7 years ago
main.c Initial commit 7 years ago
mbox.c Initial commit 7 years ago
mbox.h Initial commit 7 years ago
start.S Initial commit 7 years ago
uart.c Initial commit 7 years ago
uart.h Initial commit 7 years ago

README.md

Tutorial 0A - PC Screen Font

Drawing pixmaps is fun, but definitely there's a need to display characters as well. Basicaly fonts are nothing more than bitmaps for each character. For this tutorial I choosed PC Screen Font format, the same Linux Console uses.

Lfb.h, lfb.c

lfb_init() sets up resolution, depth, and color channel order. Also queries framebuffer's address.

lfb_print(x,y,s) displays a string on screen.

Font.psf

The font file. Use any file from /usr/share/kbd/consolefonts. Unicode table is not supported. Translating characters to glyph index using that table (instead of one-to-one relation) is a homework for you. This font is generated from the original IBM PC VGA 8x16 Font ROM, and includes 127 glyphs.

Makefile

I've added a new object file, generated from the psf. It's a good example of how to include and reference a binary file in C.

Main

Very simple. We set the resolution and display the string.