Subject: [stella] Hiragana Font For The 2600 From: Chris Cracknell <crackers@xxxxxxxx> Date: Thu, 16 Apr 1998 20:25:28 -0400 (EDT) |
Well I needed some sprites to do some experiments on the 2600, so I decided to use some japanese characters... then I decided, "what the heck, let's make an entire hiragana font." If you want to add an exotic touch to your Atari 2600 programmes I've made a font that includes all the hiragana characters (these are characters that are used to spell native japanese words, as opposed to katagana characters that are used to spell words borrowed from other languages). Now I've set up the punctuation and other things to be used in the traditional japanese writing style, right to left, top to bottom... e l l w w T n i o o h h g k o u a i l e k l t s i d s i i i h n t s . This is okay because for the 2600 it would be easier to display japanese writing this way. Using the "six digit score routine" would really work great for printing japanese text. The only thing is the marks that give you the alternate pronounciation of a character had to be a seperate sprite placed beside the root character (since the sprites are only 8 bits wide I couldn't incorporate the marks into a single character with the root). For ease of use I restricted myself to 8x8bit blocks for the fonts. It was extremely challenging to make hiragana characters that are readable in such small packages, but I think I've pulled it off (although some characters might need to be written in context to be fully recognizable. nu and me were particularily hard to pull off, so was no picnic either). I'll be making a set of katagana fonts (which will probably be more useful, and much easier to make) later. But here's the font set now if anyone out there wants to use them, please help yourself. ----------------------------------------------------------------------------- ;Japanese Hiragana Font For The Atari 2600 ;Copyright 1998 Chris "Crackers" Cracknell ;Usage Rights released into the Public Domain ;all these characters are stored UPSIDE-DOWN! It's easier to read them ;into the program that way. a .byte %00111100 ;A - pronounced "ah" as in .byte %01001010 ;fAther .byte %01001010 .byte %00110010 .byte %00011100 .byte %00010000 .byte %00111000 .byte %00010000 i .byte %00100000 ;I - pronounced "e" as in .byte %00110000 ;skI .byte %01000000 .byte %01000000 .byte %01000010 .byte %01000010 .byte %00100100 .byte %00100100 u .byte %00011100 ;U - pronounced similar to "oo" as in .byte %00000010 ;cOOl .byte %00000010 .byte %01000010 .byte %00111100 .byte %00000000 .byte %00001000 .byte %00010000 e .byte %00100110 ;E - pronounced "a" as in .byte %00010100 ;pAy .byte %00001000 .byte %00001000 .byte %00111000 .byte %00000000 .byte %00001000 .byte %00010000 o .byte %00110100 ;O - pronounced "o" as in .byte %01010010 ;gO .byte %00110010 .byte %00011100 .byte %00010001 .byte %00010010 .byte %00111000 .byte %00010000 ka .byte %01000100 ;position dotdot second sprite to the .byte %00101010 ;right to make ga .byte %00100010 .byte %00100010 .byte %00010010 .byte %01111100 .byte %00010001 .byte %00010010 ki .byte %00111100 ;dotdot makes gi .byte %01000000 ;smallya below makes kya/gya .byte %01001000 ;smallyu makes kuy/gyu .byte %00010000 ;smallyo makes kyo/gyo .byte %01111100 .byte %00010000 .byte %00111000 .byte %00010000 ku .byte %00000100 ;dotdot makes gu .byte %00001000 .byte %00010000 .byte %00100000 .byte %00100000 .byte %00010000 .byte %00001000 .byte %00000100 ke .byte %00101000 ;dotdot makes ke .byte %00100100 .byte %01000100 .byte %01000100 .byte %01000100 .byte %01001110 .byte %00100100 .byte %00100100 ko .byte %00111100 ;dotdot makes go .byte %01000010 .byte %00000000 .byte %00000100 .byte %00011110 .byte %00100000 .byte %00000000 .byte %00000000 sa .byte %00111100 ;dotdot makes za .byte %01000000 .byte %01001000 .byte %00010000 .byte %00010000 .byte %00111000 .byte %00010000 .byte %00010000 shi .byte %00011000 ;dotdot makes ji .byte %00100100 ;smallya makes sha/jya .byte %00100010 ;smallyu makes shu/jyu .byte %00100000 ;smallyp makes sho/jyo .byte %00100000 .byte %00100000 .byte %00100000 .byte %00100000 su .byte %00010000 ;dotdot makes zu .byte %00001000 .byte %00011000 .byte %00101000 .byte %00011000 .byte %00001000 .byte %00111110 .byte %00001000 se .byte %00011100 ;dotdot makes ze .byte %00100010 .byte %00100000 .byte %00100000 .byte %01100100 .byte %00110100 .byte %00101110 .byte %00100100 so .byte %00001100 ;dotdot makes zo .byte %00010000 .byte %00001000 .byte %00111100 .byte %00100000 .byte %00010000 .byte %00001000 .byte %00110000 ta .byte %01000000 ;dotdot makes da .byte %01001110 .byte %01000000 .byte %01001100 .byte %00100010 .byte %00100000 .byte %01110000 .byte %00100000 chi .byte %00001100 ;dotdot makes di .byte %00000010 ;smallya makes cha .byte %00000010 ;smallyu makes chu .byte %00010010 ;smallyo makes cho .byte %00011100 .byte %00010000 .byte %00111000 .byte %00010000 tsu .byte %00011100 .byte %00100010 .byte %00000010 .byte %01100010 .byte %01010010 .byte %00001100 .byte %00000000 .byte %00000000 te .byte %00000100 ;dotdot makes de .byte %00001000 .byte %00001000 .byte %00001000 .byte %00001000 .byte %00000100 .byte %01100010 .byte %00011110 to .byte %00111000 ;dotdot makes do .byte %01000100 .byte %01000000 .byte %01000000 .byte %00111000 .byte %00010000 .byte %00010000 .byte %00000000 na .byte %00001010 .byte %00010100 .byte %00001100 .byte %01000100 .byte %00100100 .byte %00100000 .byte %01110010 .byte %00100100 ni .byte %00100000 .byte %00101110 .byte %01000000 .byte %01000000 .byte %01000000 .byte %01000000 .byte %00101110 .byte %00100000 nu .byte %00100101 .byte %01011010 .byte %10010110 .byte %10001010 .byte %01011010 .byte %00111100 .byte %00100100 .byte %01000010 ne .byte %00100010 .byte %11100101 .byte %10100010 .byte %01100010 .byte %00110010 .byte %00101100 .byte %00100000 .byte %00100000 no .byte %00110100 .byte %01010010 .byte %01010010 .byte %01010010 .byte %01010010 .byte %00110010 .byte %00001100 .byte %00000000 ha .byte %01000101 ;dotdot makes ba .byte %01101010 ;pdot makes pa .byte %10000110 .byte %10000010 .byte %10000010 .byte %10000010 .byte %01000111 .byte %01000010 hi .byte %00011100 ;dotdot makes bi .byte %00100010 ;pdot makes pi .byte %00100010 ;smallya makes hya/bya/pya .byte %00100010 ;smallyu makes hyu/byu/pyu .byte %00010011 ;smallyo makes hyo/byo/pyo .byte %01010010 .byte %00100000 .byte %00100000 fu .byte %01001010 ;dotdot makes bu .byte %10001001 ;pdot makes pu .byte %01010010 .byte %00010000 .byte %00010000 .byte %00001000 .byte %00001000 .byte %00010000 he .byte %00000000 ;dotdot makes be .byte %00000000 ;pdot makes pe .byte %00000001 .byte %00000010 .byte %01000100 .byte %00101000 .byte %00110000 .byte %00000000 ho .byte %01000101 ;dotdot makes bo .byte %01101010 ;pdot makes po .byte %10000110 .byte %10000010 .byte %10000010 .byte %10000111 .byte %01000010 .byte %01000111 ma .byte %01101100 .byte %01010000 .byte %01110000 .byte %00010000 .byte %00111000 .byte %00010000 .byte %00111000 .byte %00010000 mi .byte %01100000 ;smallya makes mya .byte %10100010 ;smallyu makes myu .byte %10100010 ;smallyo makes myo .byte %01100011 .byte %00111110 .byte %10100010 .byte %01100010 .byte %00100000 mu .byte %00001100 .byte %00010010 .byte %00110010 .byte %01010000 .byte %00110001 .byte %00010010 .byte %00111000 .byte %00010000 me .byte %00101010 .byte %01011001 .byte %01011001 .byte %01110101 .byte %00011110 .byte %00100100 .byte %00100100 .byte %00000000 mo .byte %00001100 .byte %00010010 .byte %00010010 .byte %00010000 .byte %00111000 .byte %00010000 .byte %00111000 .byte %00010000 ra .byte %00011100 .byte %00000010 .byte %00000010 .byte %01100010 .byte %01011100 .byte %01000000 .byte %00001000 .byte %00010000 ri .byte %00000100 ;smallya makes rya .byte %00000100 ;smallyu makes ryu .byte %00000010 ;smallyo makes ryo .byte %00000010 .byte %01000010 .byte %01100010 .byte %01010010 .byte %01001100 ru .byte %00001100 .byte %00001010 .byte %00000110 .byte %00100010 .byte %00011100 .byte %00001000 .byte %00000100 .byte %00111110 re .byte %00100100 .byte %11100100 .byte %10100010 .byte %01100010 .byte %00110010 .byte %00101110 .byte %00100000 .byte %00100000 ro .byte %00011100 .byte %00000010 .byte %00000010 .byte %00100010 .byte %00011100 .byte %00001000 .byte %00000100 .byte %00111110 ya .byte %00100000 .byte %00100000 .byte %00100110 .byte %10100001 .byte %01100001 .byte %00111110 .byte %00101010 .byte %00100000 yu .byte %00001000 .byte %01001010 .byte %01101001 .byte %01101001 .byte %01011001 .byte %01011110 .byte %01001000 .byte %00001000 yo .byte %01101100 .byte %01010000 .byte %01110000 .byte %00010000 .byte %00010000 .byte %00011100 .byte %00010000 .byte %00010000 wa .byte %00100100 .byte %11100010 .byte %10100001 .byte %01100001 .byte %00110010 .byte %00101100 .byte %00100000 .byte %00100000 wo .byte %00001100 ;object marker wo .byte %00010000 ;pronounced "o" .byte %00010100 .byte %00001110 .byte %00110100 .byte %00101000 .byte %01110000 .byte %00100000 period .byte %00000000 ;japanese style period .byte %00000000 .byte %00000000 .byte %00000000 .byte %00000010 .byte %00000101 .byte %00000010 .byte %00000000 pdot .byte %00000000 ;place this dot beside ha-ho .byte %00000000 ;characters to make them .byte %00000000 ;pa-po .byte %00000000 .byte %01000000 .byte %10100000 .byte %01000000 .byte %00000000 dotdot .byte %00000000 ;two little dashes are placed .byte %00000000 ;beside a character to give .byte %00000000 ;it a different pronounciation .byte %00000000 ;ka-ko/ga-go .byte %00100000 ;sa-so/za-zo .byte %01001000 ;ta-to/da-do .byte %10010000 ;ha-ho/ba-bo .byte %00100000 bquote .byte %00000000 ;japanese begin quotation mark .byte %00000000 .byte %00000000 .byte %00000000 .byte %01000000 .byte %01000000 .byte %01000000 .byte %01110000 equote .byte %00001110 ;japanese end quotation mark .byte %00000010 .byte %00000010 .byte %00000010 .byte %00000000 .byte %00000000 .byte %00000000 .byte %00000000 dblqotb .byte %00000000 ;japanese begin double quote .byte %00000000 .byte %00000000 .byte %11100000 .byte %10100000 .byte %10100000 .byte %10010000 .byte %11110000 dblqote .byte %00001111 ;japanese end double quote .byte %00001001 .byte %00001101 .byte %00000101 .byte %00000111 .byte %00000000 .byte %00000000 .byte %00000000 coma .byte %00000000 ;japanese coma .byte %00000000 .byte %00000000 .byte %00000000 .byte %00000010 .byte %00000110 .byte %00000100 .byte %00000000 smallya .byte %00000000 ;small ya, added below i-dan to make .byte %00000000 ;kya, gya, sha, jya, cha, hya, etc. .byte %00000000 .byte %00000100 .byte %00000101 .byte %00001111 .byte %00000100 .byte %00000000 smallyu .byte %00000000 ;small yu, added below i-dan to make .byte %00000000 ;kyu, gyu, shu, jyu, chu, hyu, etc. .byte %00000000 .byte %00000010 .byte %00001011 .byte %00001011 .byte %00000110 .byte %00000000 smallyo .byte %00000000 ;small yo, added below i-dan to make .byte %00000000 ;kyo, gyo, sho, jyo, cho, hyo, etc. .byte %00000000 .byte %00001100 .byte %00001100 .byte %00000110 .byte %00000100 .byte %00000000 smlltsu .byte %00000000 ;small tsu, placed before a character .byte %00000000 ;to double it's starting constanant. .byte %00000000 ;ka + small tsu + ta = katta .byte %00000010 .byte %00000001 .byte %00001001 .byte %00000110 .byte %00000000 ----------------------------------------------------------------------------- If anyone has wants to use japanese in a 2600 game and has questions feel free to ask. CRACKERS (Now that was fun from hell!!!) -- Accordionist - Wethifl Musician - Atari 2600 Collector | /\/\ *NEW CrAB URL* http://www.hwcn.org/~ad329/crab.html ***| \^^/ Bira Bira Devotee - FES Member - Samurai Pizza Cats Fan| =\/= -- Archives (includes files) at http://www.biglist.com/lists/stella/archives/ Unsub & more at http://www.biglist.com/lists/stella/stella.html
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: full-screen color playfield (wa, Chris Wilkson | Thread | Re: [stella] Hiragana Font For The , Nick S Bensema |
Re: Re: [stella] Classic people in , Glenn Saunders | Date | Re: [stella] Arrrg, Arrrg, and Doub, Chris Cracknell |
Month |