Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need assistance with Unicode to font table mappings for the ws0010 class #296

Open
dhrone opened this issue Aug 28, 2020 · 1 comment
Open

Comments

@dhrone
Copy link
Collaborator

dhrone commented Aug 28, 2020

The new ws0010 (and related winstar_weh) classes contain embedded fonts. The data for these fonts are contained within luma.oled.device.const.py in a dict called FONTDATA. One key in FONTDATA is 'mappings' which is a list of four dicts (one for each of the four fonts that the ws0010 supports). Each dict contains a collection of key value pairs which provide unicode values for as many of the table values as I could decode. I'm looking for help to fill in the missing values and validate that I've correctly assigned the ones that are there. I'd also be interested in any look-alike values that should be added (e.g. unicode codepoints that look the same as a mapping that already exists. A good example of that would be the series of cyrillic mappings I've included for their english equivalents.

Here's a small example of what the tables looks like...

            {   # FT00 ENGLISH_JAPANESE CHARACTER FONT
                # Missing maps for
                # 10-1F, 80-9f, a0, a1, e7, e9, ea, f8, f9, fa, fc, fe
                0x0410:   0x41,  # А CYRILLIC CAPITAL LETTER A
                0x0412:   0x42,  # В CYRILLIC CAPITAL LETTER VE
                0x30f8:   0xa5,  # ヸ KATAKANA LETTER VI
                0x30f2:   0xa6,  # ヲ KATAKANA LETTER WO
                0x30a1:   0xa7,  # ァ KATAKANA LETTER SMALL A
                0x30a3:   0xa8,  # ィ KATAKANA LETTER SMALL I
                0x30a5:   0xa9,  # ゥ KATAKANA LETTER SMALL U
                0x30a7:   0xaa,  # ェ KATAKANA LETTER SMALL E
                0x30a9:   0xab,  # ォ KATAKANA LETTER SMALL O
                0x30e3:   0xac,  # ャ KATAKANA LETTER SMALL YA
                0x30e5:   0xad,  # ュ KATAKANA LETTER SMALL YU
                0x30e7:   0xae,  # ョ KATAKANA LETTER SMALL YO
                0x30c3:   0xaf,  # ッ KATAKANA LETTER SMALL TU
}

The font tables are in the [ws0010 IC specification document](https://picaxe.com/docs/oled.pdf) on pages 7-10.  
@thijstriemstra
Copy link
Collaborator

maybe @GRA0007 can help out here, I don't have access to such a device atm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants