Skip to content

Commit 88fe176

Browse files
committed
thin 8x8 CGA bitmap font
1 parent bb0df45 commit 88fe176

5 files changed

Lines changed: 270 additions & 7 deletions

File tree

Features_Speedtest.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
filledrect,
5353
font8x14,
5454
font8x8,
55+
font8x8thin,
5556
getcolorname2RGBdict,
5657
getdefaultlumrange,
5758
getIFSparams,
@@ -184,10 +185,12 @@ def main():
184185
fnt)
185186
plotstring(bmp, 400, 45,
186187
'Copyright 2021 by Joel C. Alcarez (joelalcarez1975@gmail.com)',1,1,0,c['brightwhite'],fnt)
188+
fnt = font8x8thin
187189
plotstring(bmp, 300, 64,
188190
strtest, 1, 0, 0,
189191
c['brightgreen'],
190192
fnt)
193+
fnt = font8x8
191194
plotstringupsidedown(bmp,
192195
10, 737,
193196
strtest, 1, 0, 0,

Python_BMP/BITMAPlib.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,10 @@
259259
from .fileutils import checklink, checklinks
260260

261261
from .fonts import(
262-
font8x8, font8x14, getcharfont)
262+
font8x8,
263+
font8x8thin,
264+
font8x14,
265+
getcharfont)
263266

264267
from .fractals import(
265268
cliffordattractorlist,

Python_BMP/fonts.py

Lines changed: 258 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,264 @@
274274
0x00, 0x00, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, #0xfe
275275
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00])#0xff
276276

277+
font8x8thin = array('B',[8,
278+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, #0x00
279+
0x7e, 0x81, 0xa5, 0x81, 0xbd, 0x99, 0x81, 0x7e, #0x01
280+
0x7e, 0xff, 0xdb, 0xff, 0xc3, 0xe7, 0xff, 0x7e, #0x02
281+
0x6c, 0xfe, 0xfe, 0xfe, 0x7c, 0x38, 0x10, 0x00, #0x03
282+
0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x38, 0x10, 0x00, #0x04
283+
0x38, 0x7c, 0x38, 0xfe, 0xfe, 0xd6, 0x10, 0x38, #0x05
284+
0x10, 0x10, 0x38, 0x7c, 0xfe, 0x7c, 0x10, 0x38, #0x06
285+
0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x00, 0x00, #0x07
286+
0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xe7, 0xff, 0xff, #0x08
287+
0x00, 0x3c, 0x66, 0x42, 0x42, 0x66, 0x3c, 0x00, #0x09
288+
0xff, 0xc3, 0x99, 0xbd, 0xbd, 0x99, 0xc3, 0xff, #0x0a
289+
0x0f, 0x03, 0x05, 0x7d, 0x84, 0x84, 0x84, 0x78, #0x0b
290+
0x3c, 0x42, 0x42, 0x42, 0x3c, 0x18, 0x7e, 0x18, #0x0c
291+
0x3f, 0x21, 0x3f, 0x20, 0x20, 0x60, 0xe0, 0xc0, #0x0d
292+
0x3f, 0x21, 0x3f, 0x21, 0x23, 0x67, 0xe6, 0xc0, #0x0e
293+
0x18, 0xdb, 0x3c, 0xe7, 0xe7, 0x3c, 0xdb, 0x18, #0x0f
294+
0x80, 0xe0, 0xf8, 0xfe, 0xf8, 0xe0, 0x80, 0x00, #0x10
295+
0x02, 0x0e, 0x3e, 0xfe, 0x3e, 0x0e, 0x02, 0x00, #0x11
296+
0x18, 0x3c, 0x7e, 0x18, 0x18, 0x7e, 0x3c, 0x18, #0x12
297+
0x24, 0x24, 0x24, 0x24, 0x24, 0x00, 0x24, 0x00, #0x13
298+
0x7f, 0x92, 0x92, 0x72, 0x12, 0x12, 0x12, 0x00, #0x14
299+
0x3e, 0x63, 0x38, 0x44, 0x44, 0x38, 0xcc, 0x78, #0x15
300+
0x00, 0x00, 0x00, 0x00, 0x7e, 0x7e, 0x7e, 0x00, #0x16
301+
0x18, 0x3c, 0x7e, 0x18, 0x7e, 0x3c, 0x18, 0xff, #0x17
302+
0x10, 0x38, 0x7c, 0x54, 0x10, 0x10, 0x10, 0x00, #0x18
303+
0x10, 0x10, 0x10, 0x54, 0x7c, 0x38, 0x10, 0x00, #0x19
304+
0x00, 0x18, 0x0c, 0xfe, 0x0c, 0x18, 0x00, 0x00, #0x1a
305+
0x00, 0x30, 0x60, 0xfe, 0x60, 0x30, 0x00, 0x00, #0x1b
306+
0x00, 0x00, 0x40, 0x40, 0x40, 0x7e, 0x00, 0x00, #0x1c
307+
0x00, 0x24, 0x66, 0xff, 0x66, 0x24, 0x00, 0x00, #0x1d
308+
0x00, 0x10, 0x38, 0x7c, 0xfe, 0xfe, 0x00, 0x00, #0x1e
309+
0x00, 0xfe, 0xfe, 0x7c, 0x38, 0x10, 0x00, 0x00, #0x1f
310+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, #0x20
311+
0x10, 0x38, 0x38, 0x10, 0x10, 0x00, 0x10, 0x00, #0x21
312+
0x24, 0x24, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, #0x22
313+
0x24, 0x24, 0x7e, 0x24, 0x7e, 0x24, 0x24, 0x00, #0x23
314+
0x18, 0x3e, 0x40, 0x3c, 0x02, 0x7c, 0x18, 0x00, #0x24
315+
0x00, 0x62, 0x64, 0x08, 0x10, 0x26, 0x46, 0x00, #0x25
316+
0x30, 0x48, 0x30, 0x56, 0x88, 0x88, 0x76, 0x00, #0x26
317+
0x10, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, #0x27
318+
0x10, 0x20, 0x40, 0x40, 0x40, 0x20, 0x10, 0x00, #0x28
319+
0x20, 0x10, 0x08, 0x08, 0x08, 0x10, 0x20, 0x00, #0x29
320+
0x00, 0x44, 0x38, 0xfe, 0x38, 0x44, 0x00, 0x00, #0x2a
321+
0x00, 0x10, 0x10, 0x7c, 0x10, 0x10, 0x00, 0x00, #0x2b
322+
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x20, #0x2c
323+
0x00, 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, #0x2d
324+
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, #0x2e
325+
0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x00, #0x2f
326+
0x3c, 0x42, 0x46, 0x4a, 0x52, 0x62, 0x3c, 0x00, #0x30
327+
0x10, 0x30, 0x50, 0x10, 0x10, 0x10, 0x7c, 0x00, #0x31
328+
0x3c, 0x42, 0x02, 0x0c, 0x30, 0x42, 0x7e, 0x00, #0x32
329+
0x3c, 0x42, 0x02, 0x1c, 0x02, 0x42, 0x3c, 0x00, #0x33
330+
0x08, 0x18, 0x28, 0x48, 0xfe, 0x08, 0x1c, 0x00, #0x34
331+
0x7e, 0x40, 0x7c, 0x02, 0x02, 0x42, 0x3c, 0x00, #0x35
332+
0x1c, 0x20, 0x40, 0x7c, 0x42, 0x42, 0x3c, 0x00, #0x36
333+
0x7e, 0x42, 0x04, 0x08, 0x10, 0x10, 0x10, 0x00, #0x37
334+
0x3c, 0x42, 0x42, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0x38
335+
0x3c, 0x42, 0x42, 0x3e, 0x02, 0x04, 0x38, 0x00, #0x39
336+
0x00, 0x10, 0x10, 0x00, 0x00, 0x10, 0x10, 0x00, #0x3a
337+
0x00, 0x10, 0x10, 0x00, 0x00, 0x10, 0x10, 0x20, #0x3b
338+
0x08, 0x10, 0x20, 0x40, 0x20, 0x10, 0x08, 0x00, #0x3c
339+
0x00, 0x00, 0x7e, 0x00, 0x00, 0x7e, 0x00, 0x00, #0x3d
340+
0x10, 0x08, 0x04, 0x02, 0x04, 0x08, 0x10, 0x00, #0x3e
341+
0x3c, 0x42, 0x02, 0x04, 0x08, 0x00, 0x08, 0x00, #0x3f
342+
0x3c, 0x42, 0x5e, 0x52, 0x5e, 0x40, 0x3c, 0x00, #0x40
343+
0x18, 0x24, 0x42, 0x42, 0x7e, 0x42, 0x42, 0x00, #0x41
344+
0x7c, 0x22, 0x22, 0x3c, 0x22, 0x22, 0x7c, 0x00, #0x42
345+
0x1c, 0x22, 0x40, 0x40, 0x40, 0x22, 0x1c, 0x00, #0x43
346+
0x78, 0x24, 0x22, 0x22, 0x22, 0x24, 0x78, 0x00, #0x44
347+
0x7e, 0x22, 0x28, 0x38, 0x28, 0x22, 0x7e, 0x00, #0x45
348+
0x7e, 0x22, 0x28, 0x38, 0x28, 0x20, 0x70, 0x00, #0x46
349+
0x1c, 0x22, 0x40, 0x40, 0x4e, 0x22, 0x1e, 0x00, #0x47
350+
0x42, 0x42, 0x42, 0x7e, 0x42, 0x42, 0x42, 0x00, #0x48
351+
0x38, 0x10, 0x10, 0x10, 0x10, 0x10, 0x38, 0x00, #0x49
352+
0x0e, 0x04, 0x04, 0x04, 0x44, 0x44, 0x38, 0x00, #0x4a
353+
0x62, 0x24, 0x28, 0x30, 0x28, 0x24, 0x63, 0x00, #0x4b
354+
0x70, 0x20, 0x20, 0x20, 0x20, 0x22, 0x7e, 0x00, #0x4c
355+
0x63, 0x55, 0x49, 0x41, 0x41, 0x41, 0x41, 0x00, #0x4d
356+
0x62, 0x52, 0x4a, 0x46, 0x42, 0x42, 0x42, 0x00, #0x4e
357+
0x18, 0x24, 0x42, 0x42, 0x42, 0x24, 0x18, 0x00, #0x4f
358+
0x7c, 0x22, 0x22, 0x3c, 0x20, 0x20, 0x70, 0x00, #0x50
359+
0x3c, 0x42, 0x42, 0x42, 0x4a, 0x3c, 0x03, 0x00, #0x51
360+
0x7c, 0x22, 0x22, 0x3c, 0x28, 0x24, 0x72, 0x00, #0x52
361+
0x3c, 0x42, 0x40, 0x3c, 0x02, 0x42, 0x3c, 0x00, #0x53
362+
0x7f, 0x49, 0x08, 0x08, 0x08, 0x08, 0x1c, 0x00, #0x54
363+
0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x3c, 0x00, #0x55
364+
0x41, 0x41, 0x41, 0x41, 0x22, 0x14, 0x08, 0x00, #0x56
365+
0x41, 0x41, 0x41, 0x49, 0x49, 0x49, 0x36, 0x00, #0x57
366+
0x41, 0x22, 0x14, 0x08, 0x14, 0x22, 0x41, 0x00, #0x58
367+
0x41, 0x22, 0x14, 0x08, 0x08, 0x08, 0x1c, 0x00, #0x59
368+
0x7f, 0x42, 0x04, 0x08, 0x10, 0x21, 0x7f, 0x00, #0x5a
369+
0x78, 0x40, 0x40, 0x40, 0x40, 0x40, 0x78, 0x00, #0x5b
370+
0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, #0x5c
371+
0x78, 0x08, 0x08, 0x08, 0x08, 0x08, 0x78, 0x00, #0x5d
372+
0x10, 0x28, 0x44, 0x82, 0x00, 0x00, 0x00, 0x00, #0x5e
373+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, #0x5f
374+
0x10, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, #0x60
375+
0x00, 0x00, 0x3c, 0x02, 0x3e, 0x42, 0x3f, 0x00, #0x61
376+
0x60, 0x20, 0x20, 0x2e, 0x31, 0x31, 0x2e, 0x00, #0x62
377+
0x00, 0x00, 0x3c, 0x42, 0x40, 0x42, 0x3c, 0x00, #0x63
378+
0x06, 0x02, 0x02, 0x3a, 0x46, 0x46, 0x3b, 0x00, #0x64
379+
0x00, 0x00, 0x3c, 0x42, 0x7e, 0x40, 0x3c, 0x00, #0x65
380+
0x0c, 0x12, 0x10, 0x38, 0x10, 0x10, 0x38, 0x00, #0x66
381+
0x00, 0x00, 0x3d, 0x42, 0x42, 0x3e, 0x02, 0x7c, #0x67
382+
0x60, 0x20, 0x2c, 0x32, 0x22, 0x22, 0x62, 0x00, #0x68
383+
0x10, 0x00, 0x30, 0x10, 0x10, 0x10, 0x38, 0x00, #0x69
384+
0x02, 0x00, 0x06, 0x02, 0x02, 0x42, 0x42, 0x3c, #0x6a
385+
0x60, 0x20, 0x24, 0x28, 0x30, 0x28, 0x26, 0x00, #0x6b
386+
0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x38, 0x00, #0x6c
387+
0x00, 0x00, 0x76, 0x49, 0x49, 0x49, 0x49, 0x00, #0x6d
388+
0x00, 0x00, 0x5c, 0x62, 0x42, 0x42, 0x42, 0x00, #0x6e
389+
0x00, 0x00, 0x3c, 0x42, 0x42, 0x42, 0x3c, 0x00, #0x6f
390+
0x00, 0x00, 0x6c, 0x32, 0x32, 0x2c, 0x20, 0x70, #0x70
391+
0x00, 0x00, 0x36, 0x4c, 0x4c, 0x34, 0x04, 0x0e, #0x71
392+
0x00, 0x00, 0x6c, 0x32, 0x22, 0x20, 0x70, 0x00, #0x72
393+
0x00, 0x00, 0x3e, 0x40, 0x3c, 0x02, 0x7c, 0x00, #0x73
394+
0x10, 0x10, 0x7c, 0x10, 0x10, 0x12, 0x0c, 0x00, #0x74
395+
0x00, 0x00, 0x42, 0x42, 0x42, 0x46, 0x3a, 0x00, #0x75
396+
0x00, 0x00, 0x41, 0x41, 0x22, 0x14, 0x08, 0x00, #0x76
397+
0x00, 0x00, 0x41, 0x49, 0x49, 0x49, 0x36, 0x00, #0x77
398+
0x00, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, #0x78
399+
0x00, 0x00, 0x42, 0x42, 0x42, 0x3e, 0x02, 0x7c, #0x79
400+
0x00, 0x00, 0x7c, 0x08, 0x10, 0x20, 0x7c, 0x00, #0x7a
401+
0x0c, 0x10, 0x10, 0x60, 0x10, 0x10, 0x0c, 0x00, #0x7b
402+
0x10, 0x10, 0x10, 0x00, 0x10, 0x10, 0x10, 0x00, #0x7c
403+
0x30, 0x08, 0x08, 0x06, 0x08, 0x08, 0x30, 0x00, #0x7d
404+
0x32, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, #0x7e
405+
0x00, 0x08, 0x14, 0x22, 0x41, 0x41, 0x7f, 0x00, #0x7f
406+
0x3c, 0x42, 0x40, 0x42, 0x3c, 0x0c, 0x02, 0x3c, #0x80
407+
0x00, 0x44, 0x00, 0x44, 0x44, 0x44, 0x3e, 0x00, #0x81
408+
0x0c, 0x00, 0x3c, 0x42, 0x7e, 0x40, 0x3c, 0x00, #0x82
409+
0x3c, 0x42, 0x38, 0x04, 0x3c, 0x44, 0x3e, 0x00, #0x83
410+
0x42, 0x00, 0x38, 0x04, 0x3c, 0x44, 0x3e, 0x00, #0x84
411+
0x30, 0x00, 0x38, 0x04, 0x3c, 0x44, 0x3e, 0x00, #0x85
412+
0x10, 0x00, 0x38, 0x04, 0x3c, 0x44, 0x3e, 0x00, #0x86
413+
0x00, 0x00, 0x3c, 0x40, 0x40, 0x3c, 0x06, 0x1c, #0x87
414+
0x3c, 0x42, 0x3c, 0x42, 0x7e, 0x40, 0x3c, 0x00, #0x88
415+
0x42, 0x00, 0x3c, 0x42, 0x7e, 0x40, 0x3c, 0x00, #0x89
416+
0x30, 0x00, 0x3c, 0x42, 0x7e, 0x40, 0x3c, 0x00, #0x8a
417+
0x24, 0x00, 0x18, 0x08, 0x08, 0x08, 0x1c, 0x00, #0x8b
418+
0x7c, 0x82, 0x30, 0x10, 0x10, 0x10, 0x38, 0x00, #0x8c
419+
0x30, 0x00, 0x18, 0x08, 0x08, 0x08, 0x1c, 0x00, #0x8d
420+
0x42, 0x18, 0x24, 0x42, 0x7e, 0x42, 0x42, 0x00, #0x8e
421+
0x18, 0x18, 0x00, 0x3c, 0x42, 0x7e, 0x42, 0x00, #0x8f
422+
0x0c, 0x00, 0x7c, 0x20, 0x38, 0x20, 0x7c, 0x00, #0x90
423+
0x00, 0x00, 0x33, 0x0c, 0x3f, 0x44, 0x3b, 0x00, #0x91
424+
0x1f, 0x24, 0x44, 0x7f, 0x44, 0x44, 0x47, 0x00, #0x92
425+
0x18, 0x24, 0x00, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0x93
426+
0x00, 0x42, 0x00, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0x94
427+
0x20, 0x10, 0x00, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0x95
428+
0x18, 0x24, 0x00, 0x42, 0x42, 0x42, 0x3c, 0x00, #0x96
429+
0x20, 0x10, 0x00, 0x42, 0x42, 0x42, 0x3c, 0x00, #0x97
430+
0x00, 0x42, 0x00, 0x42, 0x42, 0x3e, 0x02, 0x3c, #0x98
431+
0x42, 0x18, 0x24, 0x42, 0x42, 0x24, 0x18, 0x00, #0x99
432+
0x42, 0x00, 0x42, 0x42, 0x42, 0x42, 0x3c, 0x00, #0x9a
433+
0x08, 0x08, 0x3e, 0x40, 0x40, 0x3e, 0x08, 0x08, #0x9b
434+
0x18, 0x24, 0x20, 0x70, 0x20, 0x42, 0x7c, 0x00, #0x9c
435+
0x44, 0x28, 0x7c, 0x10, 0x7c, 0x10, 0x10, 0x00, #0x9d
436+
0xf8, 0x4c, 0x78, 0x44, 0x4f, 0x44, 0x45, 0xe6, #0x9e
437+
0x1c, 0x12, 0x10, 0x7c, 0x10, 0x10, 0x90, 0x60, #0x9f
438+
0x0c, 0x00, 0x38, 0x04, 0x3c, 0x44, 0x3e, 0x00, #0xa0
439+
0x0c, 0x00, 0x18, 0x08, 0x08, 0x08, 0x1c, 0x00, #0xa1
440+
0x04, 0x08, 0x00, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0xa2
441+
0x00, 0x04, 0x08, 0x42, 0x42, 0x42, 0x3c, 0x00, #0xa3
442+
0x32, 0x4c, 0x00, 0x7c, 0x42, 0x42, 0x42, 0x00, #0xa4
443+
0x34, 0x4c, 0x00, 0x62, 0x52, 0x4a, 0x46, 0x00, #0xa5
444+
0x3c, 0x44, 0x44, 0x3e, 0x00, 0x7e, 0x00, 0x00, #0xa6
445+
0x38, 0x44, 0x44, 0x38, 0x00, 0x7c, 0x00, 0x00, #0xa7
446+
0x10, 0x00, 0x10, 0x20, 0x40, 0x42, 0x3c, 0x00, #0xa8
447+
0x00, 0x00, 0x00, 0x7e, 0x40, 0x40, 0x00, 0x00, #0xa9
448+
0x00, 0x00, 0x00, 0x7e, 0x02, 0x02, 0x00, 0x00, #0xaa
449+
0x42, 0xc4, 0x48, 0xf6, 0x29, 0x43, 0x8c, 0x1f, #0xab
450+
0x42, 0xc4, 0x4a, 0xf6, 0x2a, 0x5f, 0x82, 0x02, #0xac
451+
0x00, 0x10, 0x00, 0x10, 0x10, 0x10, 0x10, 0x00, #0xad
452+
0x00, 0x12, 0x24, 0x48, 0x24, 0x12, 0x00, 0x00, #0xae
453+
0x00, 0x48, 0x24, 0x12, 0x24, 0x48, 0x00, 0x00, #0xaf
454+
0x22, 0x88, 0x22, 0x88, 0x22, 0x88, 0x22, 0x88, #0xb0
455+
0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, 0x55, 0xaa, #0xb1
456+
0xdb, 0x77, 0xdb, 0xee, 0xdb, 0x77, 0xdb, 0xee, #0xb2
457+
0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, #0xb3
458+
0x10, 0x10, 0x10, 0x10, 0xf0, 0x10, 0x10, 0x10, #0xb4
459+
0x10, 0x10, 0xf0, 0x10, 0xf0, 0x10, 0x10, 0x10, #0xb5
460+
0x14, 0x14, 0x14, 0x14, 0xf4, 0x14, 0x14, 0x14, #0xb6
461+
0x00, 0x00, 0x00, 0x00, 0xfc, 0x14, 0x14, 0x14, #0xb7
462+
0x00, 0x00, 0xf0, 0x10, 0xf0, 0x10, 0x10, 0x10, #0xb8
463+
0x14, 0x14, 0xf4, 0x04, 0xf4, 0x14, 0x14, 0x14, #0xb9
464+
0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, #0xba
465+
0x00, 0x00, 0xfc, 0x04, 0xf4, 0x14, 0x14, 0x14, #0xbb
466+
0x14, 0x14, 0xf4, 0x04, 0xfc, 0x00, 0x00, 0x00, #0xbc
467+
0x14, 0x14, 0x14, 0x14, 0xfc, 0x00, 0x00, 0x00, #0xbd
468+
0x10, 0x10, 0xf0, 0x10, 0xf0, 0x00, 0x00, 0x00, #0xbe
469+
0x00, 0x00, 0x00, 0x00, 0xf0, 0x10, 0x10, 0x10, #0xbf
470+
0x10, 0x10, 0x10, 0x10, 0x1f, 0x00, 0x00, 0x00, #0xc0
471+
0x10, 0x10, 0x10, 0x10, 0xff, 0x00, 0x00, 0x00, #0xc1
472+
0x00, 0x00, 0x00, 0x00, 0xff, 0x10, 0x10, 0x10, #0xc2
473+
0x10, 0x10, 0x10, 0x10, 0x1f, 0x10, 0x10, 0x10, #0xc3
474+
0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, #0xc4
475+
0x10, 0x10, 0x10, 0x10, 0xff, 0x10, 0x10, 0x10, #0xc5
476+
0x10, 0x10, 0x1f, 0x10, 0x1f, 0x10, 0x10, 0x10, #0xc6
477+
0x14, 0x14, 0x14, 0x14, 0x17, 0x14, 0x14, 0x14, #0xc7
478+
0x14, 0x14, 0x17, 0x10, 0x1f, 0x00, 0x00, 0x00, #0xc8
479+
0x00, 0x00, 0x1f, 0x10, 0x17, 0x14, 0x14, 0x14, #0xc9
480+
0x14, 0x14, 0xf7, 0x00, 0xff, 0x00, 0x00, 0x00, #0xca
481+
0x00, 0x00, 0xff, 0x00, 0xf7, 0x14, 0x14, 0x14, #0xcb
482+
0x14, 0x14, 0x17, 0x10, 0x17, 0x14, 0x14, 0x14, #0xcc
483+
0x00, 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, #0xcd
484+
0x14, 0x14, 0xf7, 0x00, 0xf7, 0x14, 0x14, 0x14, #0xce
485+
0x10, 0x10, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, #0xcf
486+
0x14, 0x14, 0x14, 0x14, 0xff, 0x00, 0x00, 0x00, #0xd0
487+
0x00, 0x00, 0xff, 0x00, 0xff, 0x10, 0x10, 0x10, #0xd1
488+
0x00, 0x00, 0x00, 0x00, 0xff, 0x14, 0x14, 0x14, #0xd2
489+
0x14, 0x14, 0x14, 0x14, 0x1f, 0x00, 0x00, 0x00, #0xd3
490+
0x10, 0x10, 0x1f, 0x10, 0x1f, 0x00, 0x00, 0x00, #0xd4
491+
0x00, 0x00, 0x1f, 0x10, 0x1f, 0x10, 0x10, 0x10, #0xd5
492+
0x00, 0x00, 0x00, 0x00, 0x1f, 0x14, 0x14, 0x14, #0xd6
493+
0x14, 0x14, 0x14, 0x14, 0xff, 0x14, 0x14, 0x14, #0xd7
494+
0x10, 0x10, 0xff, 0x10, 0xff, 0x10, 0x10, 0x10, #0xd8
495+
0x10, 0x10, 0x10, 0x10, 0xf0, 0x00, 0x00, 0x00, #0xd9
496+
0x00, 0x00, 0x00, 0x00, 0x1f, 0x10, 0x10, 0x10, #0xda
497+
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, #0xdb
498+
0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, #0xdc
499+
0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, #0xdd
500+
0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, #0xde
501+
0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, #0xdf
502+
0x00, 0x00, 0x31, 0x4a, 0x44, 0x4a, 0x31, 0x00, #0xe0
503+
0x00, 0x3c, 0x42, 0x7c, 0x42, 0x7c, 0x40, 0x40, #0xe1
504+
0x00, 0x7e, 0x42, 0x40, 0x40, 0x40, 0x40, 0x00, #0xe2
505+
0x00, 0x3f, 0x54, 0x14, 0x14, 0x14, 0x14, 0x00, #0xe3
506+
0x7e, 0x42, 0x20, 0x18, 0x20, 0x42, 0x7e, 0x00, #0xe4
507+
0x00, 0x00, 0x3e, 0x48, 0x48, 0x48, 0x30, 0x00, #0xe5
508+
0x00, 0x44, 0x44, 0x44, 0x7a, 0x40, 0x40, 0x80, #0xe6
509+
0x00, 0x33, 0x4c, 0x08, 0x08, 0x08, 0x08, 0x00, #0xe7
510+
0x7c, 0x10, 0x38, 0x44, 0x44, 0x38, 0x10, 0x7c, #0xe8
511+
0x18, 0x24, 0x42, 0x7e, 0x42, 0x24, 0x18, 0x00, #0xe9
512+
0x18, 0x24, 0x42, 0x42, 0x24, 0x24, 0x66, 0x00, #0xea
513+
0x1c, 0x20, 0x18, 0x3c, 0x42, 0x42, 0x3c, 0x00, #0xeb
514+
0x00, 0x62, 0x95, 0x89, 0x95, 0x62, 0x00, 0x00, #0xec
515+
0x02, 0x04, 0x3c, 0x4a, 0x52, 0x3c, 0x40, 0x80, #0xed
516+
0x0c, 0x10, 0x20, 0x3c, 0x20, 0x10, 0x0c, 0x00, #0xee
517+
0x3c, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x00, #0xef
518+
0x00, 0x7e, 0x00, 0x7e, 0x00, 0x7e, 0x00, 0x00, #0xf0
519+
0x10, 0x10, 0x7c, 0x10, 0x10, 0x00, 0x7c, 0x00, #0xf1
520+
0x10, 0x08, 0x04, 0x08, 0x10, 0x00, 0x7e, 0x00, #0xf2
521+
0x08, 0x10, 0x20, 0x10, 0x08, 0x00, 0x7e, 0x00, #0xf3
522+
0x0c, 0x12, 0x12, 0x10, 0x10, 0x10, 0x10, 0x10, #0xf4
523+
0x10, 0x10, 0x10, 0x10, 0x10, 0x90, 0x90, 0x60, #0xf5
524+
0x18, 0x18, 0x00, 0x7e, 0x00, 0x18, 0x18, 0x00, #0xf6
525+
0x00, 0x32, 0x4c, 0x00, 0x32, 0x4c, 0x00, 0x00, #0xf7
526+
0x30, 0x48, 0x48, 0x30, 0x00, 0x00, 0x00, 0x00, #0xf8
527+
0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, #0xf9
528+
0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, #0xfa
529+
0x0f, 0x08, 0x08, 0x08, 0x08, 0xc8, 0x28, 0x18, #0xfb
530+
0x78, 0x44, 0x44, 0x44, 0x44, 0x00, 0x00, 0x00, #0xfc
531+
0x30, 0x48, 0x10, 0x20, 0x78, 0x00, 0x00, 0x00, #0xfd
532+
0x00, 0x00, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, #0xfe
533+
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00]) #0xff
534+
277535
font8x14 = array('B',[14,
278536
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, #0x00
279537
0x00, 0x00, 0x7e, 0x81, 0xa5, 0x81, 0x81, 0xbd, 0x99, 0x81, 0x7e, 0x00, 0x00, 0x00, #0x01
3.97 KB
Binary file not shown.

source_code_gen/loadfont.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,8 @@ def plot8bitpatternastext(
2828
def getcharbmp(filename: str, ch: str):
2929
a = ""
3030
with open(filename, 'rb') as f:
31-
f.seek(1626 + 14 * ord(ch))
32-
#f.seek(1626 + 8 * ord(ch))
33-
a = f.read(14)
31+
f.seek(1626 + 8 * ord(ch))
32+
a = f.read(8)
3433
return a
3534

3635
def getcharset(filename: str, dataptr: int = 1626, databytes: int = 8):
@@ -45,18 +44,18 @@ def getcharset(filename: str, dataptr: int = 1626, databytes: int = 8):
4544

4645
def main():
4746
scriptdir = path.dirname(__file__)
48-
filename = scriptdir + "/Bm437_IBM_EGA_8x14.FON" #"/Bm437_IBM_CGA.FON"
47+
filename = scriptdir + "/Bm437_IBM_CGAthin.FON" #"/Bm437_IBM_CGA.FON"
4948
ch = ">"
5049
a = getcharbmp(filename, ch)
5150
print(a)
5251
print(plot8bitpatternastext(a,"*"," "))
53-
c = 14
52+
c = 8
5453
sz = 256 * c
5554
s = getcharset(filename, 1626, c)
5655
b = '[{:01d},\n'.format(c)
5756
for i in range(sz):
5857
b += "0x{:02x}".format(s[i])
59-
b += ", " if i < sz else "] "
58+
b += ", "
6059
if (i + 1) % c == 0:
6160
b += "#0x{:02x}\n".format(i // c)
6261
print(b)

0 commit comments

Comments
 (0)