From fb2117dc2eed64a6e6b514c1d077a2940c4d5c5c Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Tue, 7 Jan 2020 22:14:00 -0500 Subject: [PATCH] sms/vdp: use fonts from kernel/fnt Instead of its own version of one. Additionally, add a 7x7 font to the collection. --- fonts/7x7.txt | 658 ++++++++++++++++++++++++++++++++++++ kernel/fnt/7x7.bin | Bin 0 -> 665 bytes kernel/sms/vdp.asm | 228 ++----------- recipes/sms/glue.asm | 3 + recipes/sms/kbd/glue.asm | 3 + recipes/sms/romasm/glue.asm | 3 + 6 files changed, 696 insertions(+), 199 deletions(-) create mode 100644 fonts/7x7.txt create mode 100644 kernel/fnt/7x7.bin diff --git a/fonts/7x7.txt b/fonts/7x7.txt new file mode 100644 index 0000000..edcabdf --- /dev/null +++ b/fonts/7x7.txt @@ -0,0 +1,658 @@ + .. + .. + .. + .. + .. + + .. +.. .. +.. .. +.. .. + + + + + .. .. + .. .. +....... + .. .. +....... + .. .. + .. .. + .. + ...... +.. . + ..... + . .. +...... + .. +.. +.. .. + .. + .. + .. +.. .. + .. + ... +.. .. +.. .. + ... +.. .. . +.. .. + ... .. + .. + .. + .. + + + + + .. + .. + .. + .. + .. + .. + .. + .. + .. + .. + .. + .. + .. + .. + + .. +...... + .... +...... + .. + + + .. + .. +...... + .. + .. + + + + + + + .. + .. + + + +...... + + + + + + + + + .. + .. + + .. + .. + .. + .. +.. + + .... +.. .. +.. ... +...... +... .. +.. .. + .... + .. + ... + .. + .. + .. + .. +...... + .... +.. .. + .. + .. + .. + .. +...... + .... +.. .. + .. + ... + .. +.. .. + .... + .. + ... + .... +.. .. +...... + .. + .. +...... +.. +..... + .. + .. +.. .. + .... + ... + .. +.. +..... +.. .. +.. .. + .... +...... + .. + .. + .. + .. + .. + .. + .... +.. .. +.. .. + .... +.. .. +.. .. + .... + .... +.. .. +.. .. + ..... + .. + .. + ... + + + .. + .. + + .. + .. + + + .. + .. + + .. + .. + .. + .. + .. +.. + .. + .. + .. + + +...... + +...... + + + .. + .. + .. + .. + .. + .. + .. + .... +.. .. + .. + .. + .. + + .. + .... +.. .. +.. ... +.. . . +.. ... +.. + .... + .... +.. .. +.. .. +...... +.. .. +.. .. +.. .. +..... +.. .. +.. .. +..... +.. .. +.. .. +..... + .... +.. .. +.. +.. +.. +.. .. + .... +.... +.. .. +.. .. +.. .. +.. .. +.. .. +.... +...... +.. +.. +..... +.. +.. +...... +...... +.. +.. +..... +.. +.. +.. + .... +.. .. +.. +.. ... +.. .. +.. .. + .... +.. .. +.. .. +.. .. +...... +.. .. +.. .. +.. .. +...... + .. + .. + .. + .. + .. +...... + ..... + .. + .. + .. + .. +.. .. + ... +.. .. +.. .. +.... +... +.... +.. .. +.. .. +.. +.. +.. +.. +.. +.. +...... +.. .. +... ... +....... +.. . .. +.. . .. +.. .. +.. .. +.. .. +.. .. +... .. +...... +.. ... +.. .. +.. .. + .... +.. .. +.. .. +.. .. +.. .. +.. .. + .... +..... +.. .. +.. .. +..... +.. +.. +.. + .... +.. .. +.. .. +.. .. +.. . . +.. .. + .. .. +..... +.. .. +.. .. +..... +.. .. +.. .. +.. .. + .... +.. .. +.. + .... + .. +.. .. + .... +...... + .. + .. + .. + .. + .. + .. +.. .. +.. .. +.. .. +.. .. +.. .. +.. .. + .... +.. .. +.. .. +.. .. +.. .. +.. .. + .... + .. +.. .. +.. .. +.. . .. +.. . .. +....... +... ... +.. .. +.. .. +.. .. + .... + .. + .... +.. .. +.. .. +.. .. +.. .. +.. .. + .... + .. + .. + .. +...... + .. + .. + .. + .. +.. +...... +..... +.. +.. +.. +.. +.. +..... + +.. + .. + .. + .. + .. + + ..... + .. + .. + .. + .. + .. + ..... + .. + .... +.. .. +. . + + + + + + + + + + + ... + .. .. + .. +..... + .. + .. +...... + + + .... + .. + ..... +.. .. + ..... +.. +.. +..... +.. .. +.. .. +.. .. +..... + + + .... +.. .. +.. +.. .. + .... + .. + .. + ..... +.. .. +.. .. +.. .. + ..... + + + .... +.. .. +...... +.. + .... + ... + .. + .. +..... + .. + .. + .. + + + ..... +.. .. +.. .. + ..... + .. +.. +.. +..... +.. .. +.. .. +.. .. +.. .. + .. + + ... + .. + .. + .. + .... + .. + + ... + .. + .. + .. + .. +.. +.. +.. .. +.. .. +.... +.. .. +.. .. + ... + .. + .. + .. + .. + .. + .... + + + .. .. +....... +.. . .. +.. . .. +.. .. + + +..... +.. .. +.. .. +.. .. +.. .. + + + .... +.. .. +.. .. +.. .. + .... + + +..... +.. .. +.. .. +..... +.. + + + ..... +.. .. +.. .. + ..... + .. + + +.. .. +... .. +.. +.. +.. + + + ..... +.. + .... + .. +..... + .. + .. +..... + .. + .. + .. + ... + + +.. .. +.. .. +.. .. +.. .. + ..... + + +.. .. +.. .. +.. .. + .... + .. + + +.. .. +.. . .. +.. . .. +....... + .. .. + + +.. .. + .... + .. + .... +.. .. + + +.. .. +.. .. +.. .. + ..... + .. + + +...... + .. + .. + .. +...... + .. + .. + .. +... + .. + .. + .. + .. + .. + .. + + .. + .. + .. + .. + .. + .. + ... + .. + .. + .. + .. . +.. . .. +. .. + + + + diff --git a/kernel/fnt/7x7.bin b/kernel/fnt/7x7.bin new file mode 100644 index 0000000000000000000000000000000000000000..75c1d7a119ef7821241d93b60e440f7b313339bc GIT binary patch literal 665 zcmXw1F>b>!4CDhe7aIBqj((2N*@LG-gU~5sAH~TNhYo=u6dCe>Ajs%}2zn={v=oWd z@yL@RGE8Zry?46v{KPlsub=i7YM!-tT6$l8{S$jau#}=1BQv5=Lq${rG{eRk$DRk0 zfHSFniJMnlSTL$H%4JGk^Hh7}9JVKTQ?cE>1`(xHY%wrf%F7^R1x!^EqY;t7C)hEi zdgdYOoiE0`aQFQf)y>T7qa)NGVYZvau^7%Sqt-}(9QN6uGWP}GE0T~5i}n88wsm#C z#VZ4Otbjw*^K+l+p$Ir@f|Nm~ID!#@UtQO2d)~oP(d!XHK`O8y6PgpMOVSdp0e1So zR*`8gdnu4zQ}YHeD0X-beE`F2^ulnTL>3VQTRM=gvY@GYEQ(9%(8myh_#aT92sxcB zXmWVFy;wy04IRRRK(MpGBtksO5|1~cz!@F|j$li8DhR~XE1z$?q88P6)$*}@Q{Eqb CE;-Zy literal 0 HcmV?d00001 diff --git a/kernel/sms/vdp.asm b/kernel/sms/vdp.asm index f8e0a45..f3cfb97 100644 --- a/kernel/sms/vdp.asm +++ b/kernel/sms/vdp.asm @@ -11,6 +11,8 @@ ; ; When reaching a new line, we clear that line and the next to help readability. ; +; *** Defines *** +; FNT_DATA: Pointer to 7x7 font data. ; *** Consts *** ; .equ VDP_CTLPORT 0xbf @@ -62,15 +64,37 @@ vdpInit: out (VDP_CTLPORT), a ld a, 0x40 out (VDP_CTLPORT), a - ld hl, vdpFontData - ld bc, vdpFontDataEnd-vdpFontData + ld hl, FNT_DATA + ld c, 0x7e-0x20 ; range of displayable chars in font. + ; Each row in FNT_DATA is a row of the glyph and there is 7 of them. + ; We insert a blank one at the end of those 7. For each row we set, we + ; need to send 3 zero-bytes because each pixel in the tile is actually + ; 4 bits because it can select among 16 palettes. We use only 2 of them, + ; which is why those bytes always stay zero. .loop2: + ld b, 7 +.loop3: ld a, (hl) out (VDP_DATAPORT), a + ; send 3 blanks + xor a + out (VDP_DATAPORT), a + nop ; the VDP needs 16 T-states to breathe + out (VDP_DATAPORT), a + nop + out (VDP_DATAPORT), a inc hl - dec bc - ld a, b - or c + djnz .loop3 + ; Send a blank row after the 7th row + xor a + out (VDP_DATAPORT), a + nop + out (VDP_DATAPORT), a + nop + out (VDP_DATAPORT), a + nop + out (VDP_DATAPORT), a + dec c jr nz, .loop2 ld a, 0b11000000 @@ -263,197 +287,3 @@ vdpPaletteDataEnd: vdpInitData: .db 0x04,0x80,0x00,0x81,0xff,0x82,0xff,0x85,0xff,0x86,0xff,0x87,0x00,0x88,0x00,0x89,0xff,0x8a vdpInitDataEnd: - -vdpFontData: -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x6C,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x36,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x36,0x00,0x00,0x00 -.db 0x7F,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x68,0x00,0x00,0x00,0x3E,0x00,0x00,0x00 -.db 0x0B,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x38,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x38,0x00,0x00,0x00 -.db 0x6D,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3B,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x76,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x0C,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x1C,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x1C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x6C,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x06,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x1C,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x06,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x6E,0x00,0x00,0x00,0x6A,0x00,0x00,0x00 -.db 0x6E,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x78,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x6E,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3E,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x0C,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x70,0x00,0x00,0x00 -.db 0x78,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x63,0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x6B,0x00,0x00,0x00 -.db 0x6B,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x76,0x00,0x00,0x00,0x7E,0x00,0x00,0x00 -.db 0x6E,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x6A,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x6C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x63,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x6B,0x00,0x00,0x00,0x6B,0x00,0x00,0x00 -.db 0x7F,0x00,0x00,0x00,0x77,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x7C,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x3E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x06,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x42,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,0x00 -.db 0x1C,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x06,0x00,0x00,0x00 -.db 0x3E,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x06,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x7E,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x1C,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7C,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x70,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x6C,0x00,0x00,0x00 -.db 0x78,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x38,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x7F,0x00,0x00,0x00 -.db 0x6B,0x00,0x00,0x00,0x6B,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x6C,0x00,0x00,0x00,0x76,0x00,0x00,0x00 -.db 0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x60,0x00,0x00,0x00 -.db 0x3C,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x30,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x00,0x00,0x00,0x6B,0x00,0x00,0x00 -.db 0x6B,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x66,0x00,0x00,0x00,0x66,0x00,0x00,0x00 -.db 0x66,0x00,0x00,0x00,0x3E,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x3C,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x0C,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x7E,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x0C,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x70,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x30,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x0E,0x00,0x00,0x00 -.db 0x18,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x31,0x00,0x00,0x00,0x6B,0x00,0x00,0x00,0x46,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 -vdpFontDataEnd: - diff --git a/recipes/sms/glue.asm b/recipes/sms/glue.asm index 5bca608..f1ef91e 100644 --- a/recipes/sms/glue.asm +++ b/recipes/sms/glue.asm @@ -56,5 +56,8 @@ init: call basInit jp basStart +FNT_DATA: +.bin "fnt/7x7.bin" + .fill 0x7ff0-$ .db "TMR SEGA", 0x00, 0x00, 0xfb, 0x68, 0x00, 0x00, 0x00, 0x4c diff --git a/recipes/sms/kbd/glue.asm b/recipes/sms/kbd/glue.asm index d6b5176..75a3fbc 100644 --- a/recipes/sms/kbd/glue.asm +++ b/recipes/sms/kbd/glue.asm @@ -68,6 +68,9 @@ init: call basInit jp basStart +FNT_DATA: +.bin "fnt/7x7.bin" + .fill 0x7ff0-$ .db "TMR SEGA", 0x00, 0x00, 0xfb, 0x68, 0x00, 0x00, 0x00, 0x4c diff --git a/recipes/sms/romasm/glue.asm b/recipes/sms/romasm/glue.asm index dea11b8..d94a82a 100644 --- a/recipes/sms/romasm/glue.asm +++ b/recipes/sms/romasm/glue.asm @@ -174,5 +174,8 @@ f1PutB: .fill 0x2400-$ .bin "zasm.bin" +FNT_DATA: +.bin "fnt/7x7.bin" + .fill 0x7ff0-$ .db "TMR SEGA", 0x00, 0x00, 0xfb, 0x68, 0x00, 0x00, 0x00, 0x4c