diff options
author | Alex Auvolat <alex@adnab.me> | 2015-03-11 19:18:59 +0100 |
---|---|---|
committer | Alex Auvolat <alex@adnab.me> | 2015-03-11 19:18:59 +0100 |
commit | 50b5427a8edbb8d59215334f5a250e7f8d6d7ca7 (patch) | |
tree | 7263505b2a6145256ce1f494108a4ceb853c4de0 /res | |
parent | 0b76aff59b586d87ee0449bc7deda878f4633515 (diff) | |
download | kogata-50b5427a8edbb8d59215334f5a250e7f8d6d7ca7.tar.gz kogata-50b5427a8edbb8d59215334f5a250e7f8d6d7ca7.zip |
Add keyboard handling code. New font thanks to Muazzam from OSDev!
Diffstat (limited to 'res')
-rw-r--r-- | res/fonts/Makefile | 10 | ||||
-rw-r--r-- | res/fonts/muazzam.s | 2006 | ||||
-rw-r--r-- | res/fonts/pcvga.c (renamed from res/fonts/default.c) | 11 | ||||
-rw-r--r-- | res/keymaps/Makefile | 10 | ||||
-rw-r--r-- | res/keymaps/fr.c | 68 |
5 files changed, 2095 insertions, 10 deletions
diff --git a/res/fonts/Makefile b/res/fonts/Makefile index c4de63d..8b50213 100644 --- a/res/fonts/Makefile +++ b/res/fonts/Makefile @@ -1,10 +1,18 @@ CC=gcc CFLAGS=-I../../src/lib/include -std=c11 +AS=nasm +ASFLAGS=-fbin %.bf: %.c $(CC) $(CFLAGS) -o $<.bin $< ./$<.bin > $@ rm $<.bin -all: default.bf +%.bf: %.s + $(AS) $(ASFLAGS) -o $@ $< + +all: pcvga.bf muazzam.bf + +clean: + rm *.bf || exit 0 diff --git a/res/fonts/muazzam.s b/res/fonts/muazzam.s new file mode 100644 index 0000000..43c74a8 --- /dev/null +++ b/res/fonts/muazzam.s @@ -0,0 +1,2006 @@ +;---------------------------------------------------------; +; Written by: Muazzam Ali Kazmi ; +; Public domain ; +;---------------------------------------------------------; + +magic: + dd 0xD184C274 +glyph_geom: + dw 8, 16 +nchars: + dd 127 + +times 512 db 0 + +.space: ;[space] + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + +.exclamation: ;! + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00000000b + db 00010000b + db 00000000b + db 00000000b + db 00000000b + +.quotation: ;" + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 01101100b + db 01001000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + +.hash: ;# + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00100010b + db 00100010b + db 01111111b + db 00100010b + db 01000100b + db 01000100b + db 11111111b + db 01000100b + db 01000100b + db 00000000b + db 00000000b + db 00000000b + + +.dollor: ;$ + db 00000000b + db 00000000b + db 00000000b + db 00010000b + + db 00111100b + db 01010010b + db 01010000b + db 01010000b + db 00111100b + db 00010010b + db 00010010b + db 01010010b + db 00111100b + + db 00010000b + db 00000000b + db 00000000b + + +.percent: ;% + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000010b + db 00100010b + db 01010100b + db 00100100b + db 00001000b + db 00001010b + db 00010101b + db 00010010b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + + +.ampersand: ;& + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00110000b + db 01001000b + db 00110000b + db 00110100b + db 01001000b + db 01000101b + db 00111110b + db 00000001b + + db 00000000b + db 00000000b + db 00000000b + + +.apostrophe: ;' + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00010000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.parenthesis.left: ;( + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00100000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 00100000b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + + +.parenthesis.right: ;) + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00000100b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00000100b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + + +.astrisk: ;* + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00101010b + db 00011100b + db 00011100b + db 00101010b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.plus: ;+ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00001000b + db 00001000b + db 00001000b + db 01111111b + db 00001000b + db 00001000b + db 00001000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.comma: ;, + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00011000b + db 00011000b + + db 00001000b + db 00010000b + db 00000000b + + +.minus: ;- + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 01111110b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.fullStop: ;. + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00011000b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + + +.slash: ;/ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000010b + db 00000010b + db 00000100b + db 00000100b + db 00001000b + db 00001000b + db 00010000b + db 00010000b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + +;Numbers +; + +.zero: ;0 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00100100b + db 01000010b + db 01000010b + db 01011010b + db 01000010b + db 01000010b + db 00100100b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + + +.one: ;1 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00010000b + db 00110000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00111000b + + db 00000000b + db 00000000b + db 00000000b + +.two: ;2 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 00000010b + db 00000100b + db 00001000b + db 00010000b + db 00100000b + db 01000000b + db 01111110b + + db 00000000b + db 00000000b + db 00000000b + +.three: ;3 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 00000010b + db 00000100b + db 00111000b + db 00000100b + db 00000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + +.four: ;4 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001100b + db 00010100b + db 00100100b + db 01000100b + db 01000100b + db 01111110b + db 00000100b + db 00000100b + db 00000100b + + db 00000000b + db 00000000b + db 00000000b + +.five: ;5 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111110b + db 01000000b + db 01000000b + db 01000000b + db 01111100b + db 00000010b + db 00000010b + db 00000010b + db 01111100b + + db 00000000b + db 00000000b + db 00000000b + +.six: ;6 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000000b + db 01000000b + db 01000000b + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + +.seven: ;7 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111110b + db 00000010b + db 00000100b + db 00001000b + db 00001000b + db 00010000b + db 00010000b + db 00100000b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + +.eight: ;8 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + +.nine: ;9 + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 00111110b + db 00000010b + db 00000010b + db 00000100b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + +.colon: ;: + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00011000b + db 00000000b + db 00000000b + db 00000000b + db 00011000b + db 00011000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + +.semicolon: ;; + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00011000b + db 00000000b + db 00000000b + db 00000000b + db 00011000b + db 00011000b + db 00001000b + db 00010000b + + db 00000000b + db 00000000b + db 00000000b + +.less: ;< + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000100b + db 00001000b + db 00010000b + db 00100000b + db 01000000b + db 00100000b + db 00010000b + db 00001000b + db 00000100b + + db 00000000b + db 00000000b + db 00000000b + +.equal: ;= + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 01111110b + db 00000000b + db 01111110b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + +.greater: ;> + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00100000b + db 00010000b + db 00001000b + db 00000100b + db 00000010b + db 00000100b + db 00001000b + db 00010000b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + + +.question: ;? + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 00000010b + db 00000100b + db 00001000b + db 00010000b + db 00010000b + db 00000000b + db 00010000b + + db 00000000b + db 00000000b + db 00000000b + + +.at: ;@ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000010b + db 01001110b + db 01010010b + db 01001110b + db 01000000b + db 01000000b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +;Upper case +; + +.A: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00100100b + db 01000010b + db 01000010b + db 01111110b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + + db 00000000b + db 00000000b + db 00000000b + + +.B: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + + db 00000000b + db 00000000b + db 00000000b + + +.C: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111110b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 00111110b + + db 00000000b + db 00000000b + db 00000000b + + +.D: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111000b + db 01000100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000100b + db 01111000b + + db 00000000b + db 00000000b + db 00000000b + + +.E: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111110b + db 01000000b + db 01000000b + db 01000000b + db 01111110b + db 01000000b + db 01000000b + db 01000000b + db 01111110b + + db 00000000b + db 00000000b + db 00000000b + + +.F: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111110b + db 01000000b + db 01000000b + db 01000000b + db 01111110b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + + db 00000000b + db 00000000b + db 00000000b + + +.G: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000000b + db 01000000b + db 01000000b + db 01001110b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.H: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01111110b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + + db 00000000b + db 00000000b + db 00000000b + + +.I: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00111000b + + db 00000000b + db 00000000b + db 00000000b + + +.J: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001110b + db 00000100b + db 00000100b + db 00000100b + db 00000100b + db 00000100b + db 01000100b + db 01000100b + db 00111000b + + db 00000000b + db 00000000b + db 00000000b + + +.K: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000010b + db 01000100b + db 01001000b + db 01010000b + db 01100000b + db 01010000b + db 01001000b + db 01000100b + db 01000010b + + db 00000000b + db 00000000b + db 00000000b + + +.L: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01111111b + + db 00000000b + db 00000000b + db 00000000b + + +.M: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01100110b + db 01100110b + db 01100110b + db 01011010b + db 01011010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + + db 00000000b + db 00000000b + db 00000000b + + +.N: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01100010b + db 01100010b + db 01100010b + db 01010010b + db 01010010b + db 01001010b + db 01001010b + db 01000110b + db 01000110b + + db 00000000b + db 00000000b + db 00000000b + + +.O: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.P: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + + db 00000000b + db 00000000b + db 00000000b + + +.Q: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01001010b + db 01000110b + db 00111110b + + db 00000001b + db 00000000b + db 00000000b + + +.R: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + db 01100000b + db 01010000b + db 01001000b + db 01000100b + + db 00000000b + db 00000000b + db 00000000b + +.S: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111100b + db 01000010b + db 01000000b + db 01000000b + db 00111100b + db 00000010b + db 00000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.T: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111111b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + + db 00000000b + db 00000000b + db 00000000b + + +.U: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.V: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 00100100b + db 00100100b + db 00011000b + + db 00000000b + db 00000000b + db 00000000b + + +.W: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01011010b + db 01011010b + db 01100110b + db 01100110b + db 01100110b + + db 00000000b + db 00000000b + db 00000000b + + +.X: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000100b + db 01000100b + db 00101000b + db 00101000b + db 00010000b + db 00010000b + db 00101000b + db 01000100b + db 01000100b + + db 00000000b + db 00000000b + db 00000000b + + +.Y: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000100b + db 01000100b + db 00101000b + db 00101000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + + db 00000000b + db 00000000b + db 00000000b + + +.Z: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111110b + db 00000100b + db 00001000b + db 00001000b + db 00010000b + db 00010000b + db 00100000b + db 01000000b + db 01111110b + + db 00000000b + db 00000000b + db 00000000b + + +.squreBracket.left: ;[ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01111000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01111000b + + db 00000000b + db 00000000b + db 00000000b + +.backSlash: ; back slash + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000000b + db 01000000b + db 00100000b + db 00100000b + db 00010000b + db 00010000b + db 00001000b + db 00001000b + db 00000100b + + db 00000000b + db 00000000b + db 00000000b + + + +.squreBracket.right: ;] + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011110b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00000010b + db 00011110b + + db 00000000b + db 00000000b + db 00000000b + + +.caret: ;^ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001000b + db 00010100b + db 00100010b + db 01000001b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.underScore: ;_ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 11111111b + db 00000000b + db 00000000b + + +.graveAccent: ;` + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011000b + db 00001000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + + db 00000000b + db 00000000b + db 00000000b + + + + +;Lower case +; +.a: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01111100b + db 00000010b + db 00000010b + db 00111110b + db 01000010b + db 01000010b + db 00111101b + + db 00000000b + db 00000000b + db 00000000b + + +.b: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000000b + db 01000000b + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + + db 00000000b + db 00000000b + db 00000000b + + +.c: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111100b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 01000000b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.d: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000100b + db 00000100b + db 00111100b + db 01000100b + db 01000100b + db 01000100b + db 01000100b + db 01000100b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.e: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111100b + db 01000010b + db 01000010b + db 01111110b + db 01000000b + db 01000000b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.f: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00011100b + db 00100000b + db 00100000b + db 01111100b + db 00100000b + db 00100000b + db 00100000b + db 00100000b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + + +.g: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111110b + db 01000010b + db 01000010b + db 01000010b + db 00111110b + db 00000010b + db 00000010b + + db 01111100b + db 00000000b + db 00000000b + + +.h: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000000b + db 01000000b + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + + db 00000000b + db 00000000b + db 00000000b + + +.i: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001000b + db 00000000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + + db 00000000b + db 00000000b + db 00000000b + + +.j: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001000b + db 00000000b + db 00011100b + db 00000100b + db 00000100b + db 00000100b + db 00000100b + db 00000100b + db 00000100b + + db 00111000b + db 00000000b + db 00000000b + + +.k: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 01000000b + db 01000000b + db 01000000b + db 01001000b + db 01010000b + db 01100000b + db 01010000b + db 01001000b + db 01000100b + + db 00000000b + db 00000000b + db 00000000b + + +.l: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00111000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00001000b + db 00000110b + + db 00000000b + db 00000000b + db 00000000b + + +.m: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 11110110b + db 00101010b + db 00101010b + db 00101010b + db 00101010b + db 00101010b + db 00101010b + + db 00000000b + db 00000000b + db 00000000b + + +.n: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01111100b + db 00100010b + db 00100010b + db 00100010b + db 00100010b + db 00100010b + db 00100010b + + db 00000000b + db 00000000b + db 00000000b + + +.o: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111100b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.p: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01111100b + db 01000010b + db 01000010b + db 01000010b + db 01111100b + db 01000000b + db 01000000b + + db 01000000b + db 00000000b + db 00000000b + + +.q: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111110b + db 01000010b + db 01000010b + db 01000010b + db 00111110b + db 00000010b + db 00000010b + + db 00000010b + db 00000000b + db 00000000b + + +.r: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00101111b + db 00110000b + db 00100000b + db 00100000b + db 00100000b + db 00100000b + db 00100000b + + db 00000000b + db 00000000b + db 00000000b + + +.s: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 00111100b + db 01000000b + db 01000000b + db 00111100b + db 00000010b + db 00000010b + db 00111100b + + db 00000000b + db 00000000b + db 00000000b + + +.t: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00010000b + db 00010000b + db 01111100b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00001110b + + db 00000000b + db 00000000b + db 00000000b + + +.u: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 01000010b + db 00111110b + + db 00000000b + db 00000000b + db 00000000b + + +.v: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01000010b + db 01000010b + db 01000010b + db 00100100b + db 00100100b + db 00011000b + db 00000000b + + db 00000000b + db 00000000b + db 00000000b + + +.w: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01000010b + db 01000010b + db 01000010b + db 01011010b + db 01011010b + db 01100110b + db 01100110b + + db 00000000b + db 00000000b + db 00000000b + + +.x: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01000100b + db 01000100b + db 00101000b + db 00010000b + db 00101000b + db 01000100b + db 01000100b + + db 00000000b + db 00000000b + db 00000000b + + +.y: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01000010b + db 01000010b + db 01000010b + db 00100100b + db 00011000b + db 00001000b + db 00010000b + + db 01100000b + db 00000000b + db 00000000b + + +.z: + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00000000b + db 00000000b + db 01111110b + db 00000100b + db 00001000b + db 00010000b + db 00100000b + db 01000000b + db 01111110b + + db 00000000b + db 00000000b + db 00000000b + + +.curlyBracket.left: ;{ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00001100b + db 00010000b + db 00010000b + db 00010000b + db 01100000b + db 00010000b + db 00010000b + db 00010000b + db 00001100b + + db 00000000b + db 00000000b + db 00000000b + + +.verticalBar: ;| + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + db 00010000b + + db 00010000b + db 00000000b + db 00000000b + + +.curlyBracket.right: ;} + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + db 00110000b + db 00001000b + db 00001000b + db 00001000b + db 00000110b + db 00001000b + db 00001000b + db 00001000b + db 00110000b + + db 00000000b + db 00000000b + db 00000000b + + +.tilde: ;~ + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00110010b + db 01001100b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + db 00000000b + + diff --git a/res/fonts/default.c b/res/fonts/pcvga.c index 43fddce..b646eb8 100644 --- a/res/fonts/default.c +++ b/res/fonts/pcvga.c @@ -1,4 +1,3 @@ -#include <stdlib.h> #include <stdio.h> #include <proto/font_file.h> @@ -270,14 +269,8 @@ ascii_bitmap_font_header h = { }; int main() { - FILE *f = fopen("default.bf", "wb"); - if (f == 0) { - fprintf(stderr, "Could not open default.bf\n"); - exit(1); - } - - fwrite(&h, 1, sizeof(h), f); - fwrite(font_data, 256, 16, f); + fwrite(&h, 1, sizeof(h), stdout); + fwrite(font_data, 256, 16, stdout); return 0; } diff --git a/res/keymaps/Makefile b/res/keymaps/Makefile new file mode 100644 index 0000000..394685e --- /dev/null +++ b/res/keymaps/Makefile @@ -0,0 +1,10 @@ +CC=gcc +CFLAGS=-I../../src/lib/include -std=c11 + +%.km: %.c + $(CC) $(CFLAGS) -o $<.bin $< + ./$<.bin > $@ + rm $<.bin + +all: fr.km + diff --git a/res/keymaps/fr.c b/res/keymaps/fr.c new file mode 100644 index 0000000..f039142 --- /dev/null +++ b/res/keymaps/fr.c @@ -0,0 +1,68 @@ +#include <stdio.h> + +#include <proto/keymap_file.h> + +keymap_t fr_keymap = { + { // normal + /* 0x00 */ 0, 0, '&', L'é', '"', '\'', '(', '-', L'è', '_', L'ç', L'à', ')', '=', 0, 0, + /* 0x10 */ 'a', 'z', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '^', '$', 0, 0, 'q', 's', + /* 0x20 */ 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'm', L'ù', L'²', 0, '*', 'w', 'x', 'c', 'v', + /* 0x30 */ 'b', 'n', ',', ';', ':', '!', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0, + /* 0x40 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0, + /* 0x50 */ 0, 0, 0, 0, 0, 0, '<', 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x60 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x70 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + { // shift + /* 0x00 */ 0, 0, '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', L'°', '+', 0, 0, + /* 0x10 */ 'A', 'Z', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', L'¨', L'£', 0, 0, 'Q', 'S', + /* 0x20 */ 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'M', '%', '~', 0, L'µ', 'W', 'X', 'C', 'V', + /* 0x30 */ 'B', 'N', '?', '.', '/', L'§', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0, + /* 0x40 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0, + /* 0x50 */ 0, 0, 0, 0, 0, 0, '>', 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x60 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x70 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + { // caps + /* 0x00 */ 0, 0, '&', L'É', '"', '\'', '(', '-', L'È', '_', L'Ç', L'À', ')', '=', 0, 0, + /* 0x10 */ 'A', 'Z', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', L'¨', '$', 0, 0, 'Q', 'S', + /* 0x20 */ 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'M', L'Ù', L'²', 0, '*', 'W', 'X', 'C', 'V', + /* 0x30 */ 'B', 'N', ',', ';', ':', '!', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0, + /* 0x40 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0, + /* 0x50 */ 0, 0, 0, 0, 0, 0, '>', 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x60 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x70 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }, + { // alt gr + /* 0x00 */ 0, 0, L'¹', '~', '#', '{', '[', '|', '`', '\\', '^', '@', ']', '}', 0, 0, + /* 0x10 */ L'æ', L'«', L'€', L'¶', L'ŧ', L'←', L'↓', L'→', + L'ø', L'þ', L'¨', L'¤', 0, 0, '@', L'ß', + /* 0x20 */ L'ð', L'đ', L'ŋ', L'ħ', 'j', L'ĸ', L'ł', L'µ', + '^', L'¬', 0, '`', L'ł', L'»', L'¢', L'“', + /* 0x30 */ L'”', 'n', L'´', ';', L'·', '!', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0, + /* 0x40 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0, + /* 0x50 */ 0, 0, 0, 0, 0, 0, '|', 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x60 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x70 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + { // shift + alt gr + /* 0x00 */ 0, 0, L'¡', L'⅛', L'£', '$', L'⅜', L'⅝', L'⅞', L'™', L'±', L'°', L'¿', L'˛', 0, 0, + /* 0x10 */ L'Æ', '<', L'¢', L'®', L'Ŧ', L'¥', L'↑', L'ı', L'Ø', L'Þ', L'°', L'¯', 0, 0, L'Ω', L'§', + /* 0x20 */ L'Ð', L'ª', L'Ŋ', L'Ħ', 'J', '&', L'Ł', L'º', L'ˇ', L'¬', 0, L'˘', L'Ł', '>', L'©', L'‘', + /* 0x30 */ L'’', 'N', L'˝', L'×', L'÷', L'˙', 0, '*', 0, ' ', 0, 0, 0, 0, 0, 0, + /* 0x40 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '-', 0, 0, 0, '+', 0, + /* 0x50 */ 0, 0, 0, 0, 0, 0, L'¦', 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x60 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + /* 0x70 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + }, + true, +}; + + +int main() { + fwrite(&fr_keymap, 1, sizeof(fr_keymap), stdout); + + return 0; +} + +/* vim: set ts=4 sw=4 tw=0 noet :*/ |