![]() |
Forum Index : Microcontroller and PC projects : Fonts for Mites
![]() ![]() |
|||||
Author | Message | ||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Lemmings Font converted from the ZX Spectrum Game ![]() ' Font_Lemmings ' Font type : 59 Characters (UpperCase) ' Font size : 8x16 pixel ' Memory usage : 944 Bytes DefineFont #9 3B201008 00000000000000000000000000000000 30303030303030303030003000303030 FC6C6C24000000480000000000000000 FE6C6C006C6CFCFEEEFEFE6C00006C6C 7E3C10103870E0E67CFECE1C00101038 C6C6C2C218180C0C666630300086C6C6 D8D8F87070F8D8D8DEDEDAF80076FEDC 30181810000000300000000000000000 3818180C3030303038303030000C1818 38303060181818183818181800603030 7C541000FE7C38387C38387C00001054 101000007C7C10101010107C00000010 00000000000000003010000020607030 000000007C7C00000000007C00000000 00000000000000007020000000207070 0C0606023018180CC0606030000080C0 FE7C7C38C6C6C6C6FEC6C6C600387C7C 38787838181818181818181800181818 7EFEFC78783C1C0EFEE0E07000FEFEFE FEFEFE7C1C0E06C6FEC6060E007CFEFE 1C1C0C0C6C6C3C3CFEFEFECC000C0C0C C0FCFEFC3E7CF8C0FEC60606007CFEFE C0FC7C3CFEFCF8C0C6C6C6C6007CFEFE FEFEFEFE181C0C0C3038181800303030 C6FE7C7CFE7CC6C6C6C6C6FE007CFEFE C6FEFE7CC6C6C6C60E7EFEFE00783C1C 10000000103838383838100000001038 10000000103838383010000020607030 181C0C08607030381838307000080C1C 7C00000000007C7C7C7C7C0000000000 307060200C1C18383038181C00206070 7EFE7E3C181C0E060000181810383810 9EC47C38A6A6A6BE9EBEA6A6003C6240 FE7C7C38FEC6C6C6C6FEFEFE00C6C6C6 C6FEFCFCFCFCFEC6FEC6C6C600FCFEFE FE7E7E3CC0C0C0E6FEE6C0C0003C7E7E FEFCFCF8C2C2C6C6FEC6C6C200F8FCFC FCFEFEFCF8F8F0C0FCC0C0F000FCFEFE FCFEFEFCF8F8C0C0C0C0C0F800C0C0C0 F2FE7E3ECECEC0E0FEE2C6CE003E7E7E C6C6C6C6FEFEC6C6C6C6C6FE00C6C6C6 387C7C7C3838383838383838007C7C7C 0E0E0E048E0E0E0EEEEECECE00387C7C DCCCCCC4F0F0F8F8CCCCD8F800C6C6C6 E0E0E0C0E0E0E0E0FCE0E0E000FEFEFE FEEEC6C6D6FEFEFEC6C6C6C600C6C6C6 FEFCFCF8C6C6C6CEC6C6C6C600C6C6C6 EE7C7C38C6C6C6C6EEC6C6C600387C7C CEFCFCF8CEC6C6C6C0F8FCFC00C0C0C0 EE7C7C38C2C6C6C6EECEC2C2023A7E7E CEFCFCF8C6C6C6C6CCFCFCCE02C2C6C6 E6FEFE7C7CF8E0C0CE060E1E007CFEFE FEFEFEFE383838383838383800383838 C6C6C684C6C6C6C67CEEC6C600387C7C C6C682826CEEC6C638286C6C00101038 C6C6C682D6C6C6C6EEFEFEFE00C6C6EE EEC6C68238387C6CEE6C7C380082C6C6 C6C6C682387C6CEE3838383800383838 0EFEFEFE38181C0CFE60703000FEFEFE End DefineFont Edited 2025-08-10 01:15 by Martin H. 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Hey Martin, this is pretty impressive! Is there any chance that you come up with another font like the one you initially posted with german umlaute? I called it the "amiga" font, but I think it isn't what the file / font is named originaly, but there is the Amiga "A" in it ![]() ![]() Greetings Daniel |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Hey Daniel This was a 16x16 font, based on the template, whith "Umlauts" you posted. ![]() What exactly are you still missing for your happiness? ![]() Cheers Martin Edited 2025-08-10 01:37 by Martin H. 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Cool Martin, you did even remember what I was refering too! Yes, the "problem" I had is that there are not all characters, I mean I had to re-map them on my own font, on your font, in contrast (or the one you created) with the Amiga symbol, I didn't had to re-map the chars, the ÄäÜüöÖ and ß were already on their respective places when it comes to ASCII values. I hope you know what I mean. It is not only more convenient, it also has way more chars like "Anführungsstriche oben und unten" (Eng.: quotation marks up and down) and so on. I really love that font you made. You see I am using it here: ![]() ![]() There is only one thing: The font is with bigger HDMI resolutions a little bit small. But no complaints! I just wondered if you already made a bigger full character font with umlaute - who knows ![]() Greetings Daniel Edited 2025-08-10 01:45 by Amnesie |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Hi Daniel, So you are looking for a font with Codepage 858 in 16x16? ![]() did I get it right? Cheers Martin 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Yes, exactly! Don't has to be that specific one, but it looks great! Main reason is: bigger than 8x8 and all the "standard" characters + Umlaute on their right place, so that I don't have to re-map them. For me the font 1 (default) is about right. Is that 16x16? Just as your "Amiga" font. It is only a bit too small for big HDMI resolutions, that's why I thought, a bigger one would be handy. I don't even have a clue if this is possible, because this - of course - will take more memory. But as I udnerstand it, I could simply load it into flash library ![]() ![]() There are so many codepages, I have no idea about all of that ![]() Greetings Daniel Edited 2025-08-10 04:11 by Amnesie |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Hey Daniel Please try this Font (Memory usage : 7168 Bytes) Codepage858.zip ![]() Viel Erfolg (Good Luck) Martin Edited 2025-08-10 16:06 by Martin H. 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Hello Martin, I didn't expect, that you do all the work!! But I tested the new font and there are some problems: At first: the Umlaute have to be re-mapped. In general this isn't a problem at all, BUT: for re-mapping I am using the PS/2 keyboard "catch" commands via MM.Info(PS2) and therefore it is possible to re-map it of course, but I plan to make things also available fpr the USB variants and then I ALSO have to re-map the Umlaute again, and I don't even have a clue if there I can catch the USB keystrokes like with the PS/2 version. If this is also possible with USB, it is fine, just more re-mapping. I just wanted to explain why I prefer the "Amiga Font", there are all Umlaute on their right ASCII places. If you (or anybody from the german members) are interested, I attached an early version of my text-editor with both fonts integrated already (your new and the amiga font) including the example text. As you can see, on the Amiga font, everything works "out of the box", same text on the "new codepage font" didn't work so well. I also think it is too big, as it seems. I think the sweet spot is Font 1 of the PicoMite, does anybody know what size it is?! I thought it is 16x16, but as it turns out it isn't. ![]() Images: Your new Codepage Font: ![]() The well proven Amiga Font: ![]() And both programs you see in the picture with included font and example text: schriftart_text_editor.zip Since this is a english forum, of course I isn't friendly to write german without translating the text, you can see on the pictures: In a nutshell I have just written what I wrote here on english: "I think the font is too big and I still have to re-map the characters for their respective ASCII codes" Greetings Daniel |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Hello Daniel, yes I understand, just tell me which internal font comes closest to your wishes, then I can try to build a corresponding font, in a suitable size, with umlauts. We can manage that. Cheers Martin ![]() 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Hi Martin! oh this is awkward! This seems to be from the manual, right? I must have missed, that there is written what Size each font has ![]() I think the best font of all is still FONT 1, (8 x 12). It is the "sweet-spot" between high and low resolution and slightly bigger than the Amiga-Font. When it comes to your Codepage font - I really have almost no special requirements - except that all ÜüÄäÖöß should be on their correct places when it comes to ASCII values. This prevents re-mapping. Of course this means the Font MUST be a full-size 224 char Font like your Amiga font. It is called " font_Classic ' Font type : Full (224 Characters)" - just looked it up ![]() I am well aware that this eats memory space - but as said, If one would pack it in the flash library, there isn't a problem. The font itself should be well readable, maybe an old Windows / (Dos?) font like your codepage font would be ideal - in fact I love that DOS look! About all the other "special" characters, I have no requirements, so you could fill them with the ones you like. As said, only the Umlaute should be an their correct places. ![]() Greetings Daniel Edited 2025-08-11 23:02 by Amnesie |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Hallo Daniel, Here we have a font based on the DOS-VGA characterset with umlauts and 8x12 pixel, i.e. the same size as font 1. ![]() Font_DOS8x12.zip hope it fits like this Cheers Martin Edited 2025-08-13 02:35 by Martin H. 'no comment |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Martin! First of all: this font looks great! I love it. Old classic DOS theme ![]() But the Umlaute are still on their wrong places, so I looked up why that is and where the problems lies. ![]() My research results are the following: 1. there is not the standard when it comes to umlaute! 2. I always thought your "Amiga Font" (you named it classic font) has 224 Chars, that's why I said the new font you just created should also have 224 chars and then the Umlaute are on their correct places. But as I discovered, your "classic font" doesn't have 224 Chars, but the full set of 256 Chars!! I am talking about: ' font_Classic ' Font type : Full (224 Characters) <-- WRONG! it actually has 32x8=256! ' Font size : 8x8 pixels ' Memory usage : 1792 This actually has not 224 as stated, but the whole 256! : ![]() This was leading me to the false assumption the new DOS-font just has to be 224 and we are all good. For example the Unmlaut "ü" (kleines ü!) has the ASCII value of "252", so it is no suprise it isn't working with the new DOS-font. For my PS/2 programs it is no problem with re-mapping, but I looked in the manual and thought I found the equivalent of MM.INFO(PS2) = MM.INFO(USB) but it is not! This only gives the device number... I have no clue if re-mapping USB-keyboard inputs is possible at all, so I can "catch" the usb-code before the (re-mapped) Font character is printed. Peter ?? Anyone?? Is THIS possible with USB variants? : ![]() If this is also possible with USB variants, no problem. PS. From this website with the full ASCII 256 Table: ASCII 256 TABLE Greetings Daniel Edited 2025-08-13 05:18 by Amnesie |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
The Pico cannot display characters <32, so the fonts start at 32 (space), 256-32 then results in 224 As you can see from the picture (above), the umlauts are coded as follows: ä=&H84 Ä=&H8E ö=&H94 Ö=&H99 ü=&H81 Ü=&H9A ß=&HE1 you may be able to store this in your program Cheers Martin 'no comment |
||||
bfwolf Regular Member ![]() Joined: 03/01/2025 Location: GermanyPosts: 79 |
Hello Daniel. You several mentioned Amiga fonts.. Is this, what you are looking for? As far as i remember, Commodore used ISO 8859-1 fonts (also called ISO Latin 1) for the Amiga fonts coding.. ![]() https://en.wikipedia.org/wiki/ISO/IEC_8859-1 https://github.com/rewtnull/amigafonts/blob/master/README ![]() These fonts differed from MSDOS fonts coding and this was one of the reasons, why texts written on Amigas looked different on PCs (and vice versa), if the texts contained "Umlauts".. I'm not sure, but i think Windows later also used IEC_8859-1, before it switched to UNICODE. Greetings, bfwolf. |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
Daniel, Here is a quick, unconventional possible solution. If you look at the font data in a text editor (e.g. Notepad++), you will notice that each letter is stored in its own line. If you now fill the lines above with blank lines until the first character line is at 32, each letter is next to its character code. By simply exchanging the lines, you can place the umlauts on the character code where you need them. ![]() Give it a try Cheers Martin Edited 2025-08-13 15:34 by Martin H. 'no comment |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 8000 |
There is ASCII and ASCII. :) ASCII was originally a 7-bit code, so it finishes at character &h7F. It was intended for use on teletypes, which used 7-bit paper tape. You physically can't print 8-bit characters in ASCII code. :) There is no official standard 8-bit extension for ASCII. Please feel free to make your own. :) ISO-8859 defines several extensions. The ISO-8859-1 version (Latin-1) is for European languages. Microsoft did their own thing (as usual) and came up with Windows-1252, which includes printable codes from 128 to 159, which ISO-8859-1 reserves for control characters. As usual, there are plenty of standards to choose from. :) A couple of fun ASCII videos: Why 7-bit ASCII is really clever Code Pages and Kohuepts: The Chaos of 8 Bit Extended ASCII Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
Amnesie Guru ![]() Joined: 30/06/2020 Location: GermanyPosts: 688 |
Ha! Now I understand ![]() ![]() @ all: thanks for the links with the further ASCII explanation. This whole topic is way more complex than I ever thought. Greetings Daniel |
||||
Martin H.![]() Guru ![]() Joined: 04/06/2022 Location: GermanyPosts: 1260 |
You several mentioned Amiga fonts.. Hi bfwolf. I think he is referring to the fonts(8x8 and 16x16) on the first page of this entry. Cheers Martin 'no comment |
||||
![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |