Omnimaga
General Discussion => Art => Topic started by: Zera on July 06, 2010, 01:48:36 pm
-
A pretty extensive font I did based on a more archaic / Gothic / medieval style. This one is 8x8, so it's not quite suitable for TI platforms. (then again, maybe there are some people who work with such large fonts)
There are quite a few icons and other special characters included. This is also very suitable for ROM-hacking / translation.
Feel free to use, modify or redistribute as you see fit.
-
It could maybe be used on calc, but as long as the text can scroll like in Zelda text display, not dissapear and new text displays, else it gets a bit hard to follow. Looks nice btw
-
I *could* see the calc being used for 8*8 fonts as you can change the font from 6*8 to 8*8 in the LCD driver's Ram. ;D
Nice font! :D
-
You can? O.o I didn't know that. That said, if someone writes a routine to display custom fonts from sprites, he can always do that too. For fonts of a 4 pixel width, I am fairly certain there could be a way to use half-byte compression to not waste the other 4 bit of pixels in each sprites too, but the way I am thinking about, it migth be a lil bit slower to display. (since you would need to display each rows of pixels for the letters one by one)
-
LL1 uses an 8x8 px font. (which was pretty crammed on that tiny screen)
Anyone is free to modify the font in any shape, form or fashion, though.
Guess I should show the font in action, too. This is on a GB screen resolution, though:
-
Wow great :D
Since the TI-89 is 160x100 I think those could be used very well for that calc model
-
You can? O.o I didn't know that.
To quote Asm in 28:
Word Size
The last feature of the T6A04 is the ability to change the word size from 8-bit to 6-bit. Technically, a word is defined as a string of bits that can occupy a single addressable location. This kind of conflicts with the popular definition of a word being a size of 16 bits, which is due to the fact that Intel made some computers with 16-bit words that were very popular. But this is the official Toshiba name, and I can't think of a better one, so oh well.
The word size is changed with two commands:
$00 Configure six bits per word
$01 Configure eight bits per word
What can we use this for? Well, Toshiba thought it would be nice if computers could have two font sizes, and in fact the 6x8 character routines do use 6-bit word mode to display characters. Maybe we could make a custom large font routine?
Program 26-4
b_call(_ClrLCDFull)
b_call(_HomeUp)
LD HL, text
CALL CustomStr
RET
text: .DB "Hello ", 1, 0
CustomStr:
LD A, (HL)
OR A
RET Z
CP 1
JR NZ, NormalChar ; Trap for char $01 (custom)
PUSH AF
XOR A ; Configure word size
OUT ($10), A
LD A, $05 ; Configure X auto-increment
CALL $000B
OUT ($10), A
LD A, (CurCol) ; Set LCD Row
ADD A, $20
CALL $000B
OUT ($10), A
LD A, (CurRow) ; Set LCD Row
ADD A, A
ADD A, A
ADD A, A
ADD A, $80
OUT ($10), A
LD DE, Smilie
LD B, 8
FontLoop:
LD A, (DE)
CALL $000B
OUT ($11), A
INC DE
DJNZ FontLoop
LD A, (CurCol) ; Advance cursor position
INC A
AND %00001111
LD (CurCol), A
JR NZ, DoneCustomFont
LD A, (CurRow) ; Advance row. This doesn't check for a bad
INC A ; position or scroll. Do that on your own time.
LD (CurRow), A
DoneCustomFont:
POP AF
JR DoneChar
NormalChar:
b_call(_PutC)
DoneChar:
INC HL
JR CustomStr
; Our custom character!
smilie:
.DB %00011110
.DB %00101101
.DB %00101101
.DB %00111111
.DB %00101101
.DB %00110011
.DB %00011110
.DB %00000000
-
Aaah I see, interesting
-
Looks nice as always! :D