• R/O
  • SSH
  • HTTPS

chnosproject: コミット


コミットメタ情報

リビジョン306 (tree)
日時2011-12-02 06:08:24
作者hikarupsp

ログメッセージ

グラフィックモードでの半角文字出力を一応実装。
make環境の整備。

変更サマリ

差分

--- beta/tolset_chn_000/chnos_010/chnos/coredef2.h (nonexistent)
+++ beta/tolset_chn_000/chnos_010/chnos/coredef2.h (revision 306)
@@ -0,0 +1,4 @@
1+
2+/*システム外部リソース宣言*/
3+
4+extern uchar hankaku[4096]; /*hankaku.txt*/
--- beta/tolset_chn_000/chnos_010/chnos/hankaku.txt (nonexistent)
+++ beta/tolset_chn_000/chnos_010/chnos/hankaku.txt (revision 306)
@@ -0,0 +1,4653 @@
1+
2+char 0x00
3+........
4+........
5+........
6+........
7+........
8+........
9+........
10+........
11+........
12+........
13+........
14+........
15+........
16+........
17+........
18+........
19+
20+char 0x01
21+........
22+........
23+..***...
24+.*...*..
25+*.....*.
26+*.*.*.*.
27+*.*.*.*.
28+*.....*.
29+*.....*.
30+*.*.*.*.
31+*..*..*.
32+.*...*..
33+..***...
34+........
35+........
36+........
37+
38+char 0x02
39+........
40+........
41+..***...
42+.*****..
43+*******.
44+**.*.**.
45+**.*.**.
46+*******.
47+*******.
48+**.*.**.
49+***.***.
50+.*****..
51+..***...
52+........
53+........
54+........
55+
56+char 0x03
57+........
58+........
59+........
60+........
61+.**.**..
62+*******.
63+*******.
64+*******.
65+.*****..
66+..***...
67+...*....
68+........
69+........
70+........
71+........
72+........
73+
74+char 0x04
75+........
76+........
77+........
78+........
79+...*....
80+..***...
81+.*****..
82+*******.
83+.*****..
84+..***...
85+...*....
86+........
87+........
88+........
89+........
90+........
91+
92+char 0x05
93+........
94+........
95+........
96+........
97+...*....
98+..***...
99+.*.*.*..
100+*******.
101+.*.*.*..
102+...*....
103+..***...
104+........
105+........
106+........
107+........
108+........
109+
110+char 0x06
111+........
112+........
113+........
114+........
115+...*....
116+..***...
117+.*****..
118+*******.
119+**.*.**.
120+...*....
121+..***...
122+........
123+........
124+........
125+........
126+........
127+
128+char 0x07
129+........
130+........
131+........
132+........
133+........
134+........
135+...**...
136+..****..
137+..****..
138+...**...
139+........
140+........
141+........
142+........
143+........
144+........
145+
146+char 0x08
147+********
148+********
149+********
150+********
151+********
152+********
153+***..***
154+**....**
155+**....**
156+***..***
157+********
158+********
159+********
160+********
161+********
162+********
163+
164+char 0x09
165+........
166+........
167+........
168+........
169+........
170+..****..
171+.**..**.
172+.*....*.
173+.*....*.
174+.**..**.
175+..****..
176+........
177+........
178+........
179+........
180+........
181+
182+char 0x0a
183+********
184+********
185+********
186+********
187+********
188+**....**
189+*..**..*
190+*.****.*
191+*.****.*
192+*..**..*
193+**....**
194+********
195+********
196+********
197+********
198+********
199+
200+char 0x0b
201+........
202+...*....
203+..***...
204+.*.*.*..
205+*..*..*.
206+...*....
207+...*....
208+..***...
209+.*...*..
210+*.....*.
211+*.....*.
212+*.....*.
213+.*...*..
214+..***...
215+........
216+........
217+
218+char 0x0c
219+........
220+..***...
221+.*...*..
222+*.....*.
223+*.....*.
224+*.....*.
225+.*...*..
226+..***...
227+...*....
228+...*....
229+*******.
230+...*....
231+...*....
232+...*....
233+........
234+........
235+
236+char 0x0d
237+........
238+........
239+....**..
240+....***.
241+....*.**
242+....*.**
243+....*.*.
244+....*...
245+....*...
246+...**...
247+.****...
248+*****...
249+.***....
250+........
251+........
252+........
253+
254+char 0x0e
255+........
256+........
257+...*****
258+...*****
259+...*...*
260+...*...*
261+...*...*
262+...*...*
263+...*...*
264+...*...*
265+.***.***
266+********
267+.**..**.
268+........
269+........
270+........
271+
272+char 0x0f
273+........
274+........
275+........
276+........
277+...*....
278+.*.*.*..
279+..***...
280+..*.*...
281+..***...
282+.*.*.*..
283+...*....
284+........
285+........
286+........
287+........
288+........
289+
290+char 0x10
291+........
292+*.......
293+**......
294+***.....
295+****....
296+*****...
297+******..
298+*******.
299+******..
300+*****...
301+****....
302+***.....
303+**......
304+*.......
305+........
306+........
307+
308+char 0x11
309+........
310+......*.
311+.....**.
312+....***.
313+...****.
314+..*****.
315+.******.
316+*******.
317+.******.
318+..*****.
319+...****.
320+....***.
321+.....**.
322+......*.
323+........
324+........
325+
326+char 0x12
327+........
328+........
329+...*....
330+..***...
331+.*.*.*..
332+*..*..*.
333+...*....
334+...*....
335+...*....
336+*..*..*.
337+.*.*.*..
338+..***...
339+...*....
340+........
341+........
342+........
343+
344+char 0x13
345+........
346+........
347+.*...*..
348+.*...*..
349+.*...*..
350+.*...*..
351+.*...*..
352+.*...*..
353+.*...*..
354+.*...*..
355+........
356+........
357+.*...*..
358+.*...*..
359+........
360+........
361+
362+char 0x14
363+........
364+..*****.
365+.*..*.*.
366+*...*.*.
367+*...*.*.
368+*...*.*.
369+*...*.*.
370+.*..*.*.
371+..***.*.
372+....*.*.
373+....*.*.
374+....*.*.
375+....*.*.
376+....*.*.
377+........
378+........
379+
380+char 0x15
381+.*****..
382+*.....*.
383+.*......
384+..*.....
385+..***...
386+.*...*..
387+*.....*.
388+*.....*.
389+*.....*.
390+.*...*..
391+..***...
392+....*...
393+.....*..
394+*.....*.
395+.*****..
396+........
397+
398+char 0x16
399+........
400+........
401+........
402+........
403+........
404+........
405+........
406+........
407+........
408+........
409+........
410+*******.
411+*******.
412+*******.
413+........
414+........
415+
416+char 0x17
417+........
418+........
419+...*....
420+..***...
421+.*.*.*..
422+*..*..*.
423+...*....
424+...*....
425+...*....
426+*..*..*.
427+.*.*.*..
428+..***...
429+...*....
430+.*****..
431+........
432+........
433+
434+char 0x18
435+........
436+...*....
437+..***...
438+.*.*.*..
439+*..*..*.
440+...*....
441+...*....
442+...*....
443+...*....
444+...*....
445+...*....
446+...*....
447+...*....
448+...*....
449+........
450+........
451+
452+char 0x19
453+........
454+...*....
455+...*....
456+...*....
457+...*....
458+...*....
459+...*....
460+...*....
461+...*....
462+...*....
463+*..*..*.
464+.*.*.*..
465+..***...
466+...*....
467+........
468+........
469+
470+char 0x1a
471+........
472+........
473+........
474+........
475+...*....
476+....*...
477+.....*..
478+*******.
479+.....*..
480+....*...
481+...*....
482+........
483+........
484+........
485+........
486+........
487+
488+char 0x1b
489+........
490+........
491+........
492+........
493+...*....
494+..*.....
495+.*......
496+*******.
497+.*......
498+..*.....
499+...*....
500+........
501+........
502+........
503+........
504+........
505+
506+char 0x1c
507+........
508+........
509+........
510+........
511+........
512+........
513+........
514+........
515+........
516+........
517+........
518+*.......
519+*.......
520+*******.
521+........
522+........
523+
524+char 0x1d
525+........
526+........
527+........
528+........
529+........
530+..*.*...
531+.*...*..
532+*******.
533+.*...*..
534+..*.*...
535+........
536+........
537+........
538+........
539+........
540+........
541+
542+char 0x1e
543+........
544+........
545+........
546+........
547+...*....
548+...*....
549+..***...
550+..***...
551+.*****..
552+.*****..
553+*******.
554+*******.
555+........
556+........
557+........
558+........
559+
560+char 0x1f
561+........
562+........
563+........
564+........
565+*******.
566+*******.
567+.*****..
568+.*****..
569+..***...
570+..***...
571+...*....
572+...*....
573+........
574+........
575+........
576+........
577+
578+char 0x20
579+........
580+........
581+........
582+........
583+........
584+........
585+........
586+........
587+........
588+........
589+........
590+........
591+........
592+........
593+........
594+........
595+
596+char 0x21
597+........
598+...*....
599+...*....
600+...*....
601+...*....
602+...*....
603+...*....
604+...*....
605+...*....
606+...*....
607+........
608+........
609+...*....
610+...*....
611+........
612+........
613+
614+char 0x22
615+..*.*...
616+..*.*...
617+..*.*...
618+........
619+........
620+........
621+........
622+........
623+........
624+........
625+........
626+........
627+........
628+........
629+........
630+........
631+
632+char 0x23
633+........
634+.*...*..
635+.*...*..
636+.*...*..
637+*******.
638+.*...*..
639+.*...*..
640+.*...*..
641+.*...*..
642+.*...*..
643+*******.
644+.*...*..
645+.*...*..
646+.*...*..
647+........
648+........
649+
650+char 0x24
651+...*....
652+..***.*.
653+.*.*.**.
654+*..*..*.
655+*..*..*.
656+*..*....
657+.*.*....
658+..***...
659+...*.*..
660+...*..*.
661+*..*..*.
662+*..*..*.
663+**.*.*..
664+*.***...
665+...*....
666+...*....
667+
668+char 0x25
669+.**...*.
670+*..*..*.
671+*..*.*..
672+*..*.*..
673+.**.*...
674+....*...
675+...*....
676+...*....
677+..*.....
678+..*.**..
679+.*.*..*.
680+.*.*..*.
681+*..*..*.
682+*...**..
683+........
684+........
685+
686+char 0x26
687+........
688+.***....
689+*...*...
690+*...*...
691+*...*...
692+*..*....
693+.**.....
694+.*...***
695+*.*...*.
696+*..*..*.
697+*...*.*.
698+*....*..
699+.*...**.
700+..***..*
701+........
702+........
703+
704+char 0x27
705+.....*..
706+....*...
707+...*....
708+........
709+........
710+........
711+........
712+........
713+........
714+........
715+........
716+........
717+........
718+........
719+........
720+........
721+
722+char 0x28
723+......*.
724+.....*..
725+....*...
726+....*...
727+...*....
728+...*....
729+...*....
730+...*....
731+...*....
732+...*....
733+...*....
734+....*...
735+....*...
736+.....*..
737+......*.
738+........
739+
740+char 0x29
741+*.......
742+.*......
743+..*.....
744+..*.....
745+...*....
746+...*....
747+...*....
748+...*....
749+...*....
750+...*....
751+...*....
752+..*.....
753+..*.....
754+.*......
755+*.......
756+........
757+
758+char 0x2a
759+........
760+........
761+........
762+........
763+........
764+...*....
765+*..*..*.
766+.*.*.*..
767+..***...
768+.*.*.*..
769+*..*..*.
770+...*....
771+........
772+........
773+........
774+........
775+
776+char 0x2b
777+........
778+........
779+........
780+........
781+........
782+...*....
783+...*....
784+...*....
785+*******.
786+...*....
787+...*....
788+...*....
789+........
790+........
791+........
792+........
793+
794+char 0x2c
795+........
796+........
797+........
798+........
799+........
800+........
801+........
802+........
803+........
804+........
805+........
806+...**...
807+...**...
808+....*...
809+....*...
810+...*....
811+
812+char 0x2d
813+........
814+........
815+........
816+........
817+........
818+........
819+........
820+........
821+*******.
822+........
823+........
824+........
825+........
826+........
827+........
828+........
829+
830+char 0x2e
831+........
832+........
833+........
834+........
835+........
836+........
837+........
838+........
839+........
840+........
841+........
842+........
843+...**...
844+...**...
845+........
846+........
847+
848+char 0x2f
849+......*.
850+......*.
851+.....*..
852+.....*..
853+....*...
854+....*...
855+....*...
856+...*....
857+...*....
858+..*.....
859+..*.....
860+.*......
861+.*......
862+.*......
863+*.......
864+*.......
865+
866+char 0x30
867+........
868+...**...
869+..*..*..
870+..*..*..
871+.*....*.
872+.*....*.
873+.*....*.
874+.*....*.
875+.*....*.
876+.*....*.
877+.*....*.
878+..*..*..
879+..*..*..
880+...**...
881+........
882+........
883+
884+char 0x31
885+........
886+....*...
887+...**...
888+..*.*...
889+....*...
890+....*...
891+....*...
892+....*...
893+....*...
894+....*...
895+....*...
896+....*...
897+....*...
898+..*****.
899+........
900+........
901+
902+char 0x32
903+........
904+...**...
905+..*..*..
906+.*....*.
907+.*....*.
908+......*.
909+.....*..
910+....*...
911+...*....
912+..*.....
913+..*.....
914+.*......
915+.*......
916+.******.
917+........
918+........
919+
920+char 0x33
921+........
922+...**...
923+..*..*..
924+.*....*.
925+......*.
926+......*.
927+.....*..
928+...**...
929+.....*..
930+......*.
931+......*.
932+.*....*.
933+..*..*..
934+...**...
935+........
936+........
937+
938+char 0x34
939+........
940+....**..
941+....**..
942+....**..
943+...*.*..
944+...*.*..
945+...*.*..
946+..*..*..
947+..*..*..
948+.*...*..
949+.******.
950+.....*..
951+.....*..
952+...****.
953+........
954+........
955+
956+char 0x35
957+........
958+.*****..
959+.*......
960+.*......
961+.*......
962+.*.**...
963+.**..*..
964+......*.
965+......*.
966+......*.
967+......*.
968+.*....*.
969+..*..*..
970+...**...
971+........
972+........
973+
974+char 0x36
975+........
976+...**...
977+..*..*..
978+.*....*.
979+.*......
980+.*.**...
981+.**..*..
982+.*....*.
983+.*....*.
984+.*....*.
985+.*....*.
986+.*....*.
987+..*..*..
988+...**...
989+........
990+........
991+
992+char 0x37
993+........
994+.******.
995+.*....*.
996+.*....*.
997+.....*..
998+.....*..
999+....*...
1000+....*...
1001+....*...
1002+...*....
1003+...*....
1004+...*....
1005+...*....
1006+..***...
1007+........
1008+........
1009+
1010+char 0x38
1011+........
1012+...**...
1013+..*..*..
1014+.*....*.
1015+.*....*.
1016+.*....*.
1017+..*..*..
1018+...**...
1019+..*..*..
1020+.*....*.
1021+.*....*.
1022+.*....*.
1023+..*..*..
1024+...**...
1025+........
1026+........
1027+
1028+char 0x39
1029+........
1030+...**...
1031+..*..*..
1032+.*....*.
1033+.*....*.
1034+.*....*.
1035+.*....*.
1036+.*....*.
1037+..*..**.
1038+...**.*.
1039+......*.
1040+.*....*.
1041+..*..*..
1042+...**...
1043+........
1044+........
1045+
1046+char 0x3a
1047+........
1048+........
1049+........
1050+........
1051+........
1052+...**...
1053+...**...
1054+........
1055+........
1056+........
1057+........
1058+........
1059+...**...
1060+...**...
1061+........
1062+........
1063+
1064+char 0x3b
1065+........
1066+........
1067+........
1068+........
1069+........
1070+...**...
1071+...**...
1072+........
1073+........
1074+........
1075+........
1076+...**...
1077+...**...
1078+....*...
1079+....*...
1080+...*....
1081+
1082+char 0x3c
1083+........
1084+......*.
1085+.....*..
1086+....*...
1087+...*....
1088+..*.....
1089+.*......
1090+*.......
1091+*.......
1092+.*......
1093+..*.....
1094+...*....
1095+....*...
1096+.....*..
1097+......*.
1098+........
1099+
1100+char 0x3d
1101+........
1102+........
1103+........
1104+........
1105+........
1106+........
1107+*******.
1108+........
1109+........
1110+*******.
1111+........
1112+........
1113+........
1114+........
1115+........
1116+........
1117+
1118+char 0x3e
1119+........
1120+*.......
1121+.*......
1122+..*.....
1123+...*....
1124+....*...
1125+.....*..
1126+......*.
1127+......*.
1128+.....*..
1129+....*...
1130+...*....
1131+..*.....
1132+.*......
1133+*.......
1134+........
1135+
1136+char 0x3f
1137+........
1138+..***...
1139+.*...*..
1140+*.....*.
1141+*.....*.
1142+*.....*.
1143+.....*..
1144+....*...
1145+...*....
1146+...*....
1147+........
1148+........
1149+...**...
1150+...**...
1151+........
1152+........
1153+
1154+char 0x40
1155+........
1156+..***...
1157+.*...*..
1158+*.....*.
1159+*..**.*.
1160+*.*.*.*.
1161+*.*.*.*.
1162+*.*.*.*.
1163+*.*.*.*.
1164+*.*.*.*.
1165+*..***..
1166+*.......
1167+.*...**.
1168+..***...
1169+........
1170+........
1171+
1172+char 0x41
1173+........
1174+...**...
1175+...**...
1176+...**...
1177+...**...
1178+..*..*..
1179+..*..*..
1180+..*..*..
1181+..*..*..
1182+.******.
1183+.*....*.
1184+.*....*.
1185+.*....*.
1186+***..***
1187+........
1188+........
1189+
1190+char 0x42
1191+........
1192+****....
1193+.*..*...
1194+.*...*..
1195+.*...*..
1196+.*...*..
1197+.*..*...
1198+.****...
1199+.*...*..
1200+.*....*.
1201+.*....*.
1202+.*....*.
1203+.*...*..
1204+*****...
1205+........
1206+........
1207+
1208+char 0x43
1209+........
1210+..***.*.
1211+.*...**.
1212+.*....*.
1213+*.....*.
1214+*.......
1215+*.......
1216+*.......
1217+*.......
1218+*.......
1219+*.....*.
1220+.*....*.
1221+.*...*..
1222+..***...
1223+........
1224+........
1225+
1226+char 0x44
1227+........
1228+*****...
1229+.*...*..
1230+.*...*..
1231+.*....*.
1232+.*....*.
1233+.*....*.
1234+.*....*.
1235+.*....*.
1236+.*....*.
1237+.*....*.
1238+.*...*..
1239+.*...*..
1240+*****...
1241+........
1242+........
1243+
1244+char 0x45
1245+........
1246+*******.
1247+.*....*.
1248+.*....*.
1249+.*......
1250+.*......
1251+.*...*..
1252+.*****..
1253+.*...*..
1254+.*......
1255+.*......
1256+.*....*.
1257+.*....*.
1258+*******.
1259+........
1260+........
1261+
1262+char 0x46
1263+........
1264+*******.
1265+.*....*.
1266+.*....*.
1267+.*......
1268+.*......
1269+.*...*..
1270+.*****..
1271+.*...*..
1272+.*...*..
1273+.*......
1274+.*......
1275+.*......
1276+****....
1277+........
1278+........
1279+
1280+char 0x47
1281+........
1282+..***.*.
1283+.*...**.
1284+.*....*.
1285+*.....*.
1286+*.......
1287+*.......
1288+*..****.
1289+*.....*.
1290+*.....*.
1291+*.....*.
1292+.*....*.
1293+.*...**.
1294+..***...
1295+........
1296+........
1297+
1298+char 0x48
1299+........
1300+***..***
1301+.*....*.
1302+.*....*.
1303+.*....*.
1304+.*....*.
1305+.*....*.
1306+.******.
1307+.*....*.
1308+.*....*.
1309+.*....*.
1310+.*....*.
1311+.*....*.
1312+***..***
1313+........
1314+........
1315+
1316+char 0x49
1317+........
1318+.*****..
1319+...*....
1320+...*....
1321+...*....
1322+...*....
1323+...*....
1324+...*....
1325+...*....
1326+...*....
1327+...*....
1328+...*....
1329+...*....
1330+.*****..
1331+........
1332+........
1333+
1334+char 0x4a
1335+........
1336+...*****
1337+.....*..
1338+.....*..
1339+.....*..
1340+.....*..
1341+.....*..
1342+.....*..
1343+.....*..
1344+.....*..
1345+.....*..
1346+.....*..
1347+*....*..
1348+.*..*...
1349+..**....
1350+........
1351+
1352+char 0x4b
1353+........
1354+***..***
1355+.*....*.
1356+.*...*..
1357+.*..*...
1358+.*.*....
1359+.*.*....
1360+.**.....
1361+.*.*....
1362+.*.*....
1363+.*..*...
1364+.*...*..
1365+.*....*.
1366+***..***
1367+........
1368+........
1369+
1370+char 0x4c
1371+........
1372+****....
1373+.*......
1374+.*......
1375+.*......
1376+.*......
1377+.*......
1378+.*......
1379+.*......
1380+.*......
1381+.*......
1382+.*....*.
1383+.*....*.
1384+*******.
1385+........
1386+........
1387+
1388+char 0x4d
1389+........
1390+**....**
1391+.*....*.
1392+.**..**.
1393+.**..**.
1394+.**..**.
1395+.*.**.*.
1396+.*.**.*.
1397+.*.**.*.
1398+.*....*.
1399+.*....*.
1400+.*....*.
1401+.*....*.
1402+***..***
1403+........
1404+........
1405+
1406+char 0x4e
1407+........
1408+**...***
1409+.*....*.
1410+.**...*.
1411+.**...*.
1412+.*.*..*.
1413+.*.*..*.
1414+.*.*..*.
1415+.*..*.*.
1416+.*..*.*.
1417+.*..*.*.
1418+.*...**.
1419+.*...**.
1420+***...*.
1421+........
1422+........
1423+
1424+char 0x4f
1425+........
1426+..***...
1427+.*...*..
1428+*.....*.
1429+*.....*.
1430+*.....*.
1431+*.....*.
1432+*.....*.
1433+*.....*.
1434+*.....*.
1435+*.....*.
1436+*.....*.
1437+.*...*..
1438+..***...
1439+........
1440+........
1441+
1442+char 0x50
1443+........
1444+*****...
1445+.*...*..
1446+.*....*.
1447+.*....*.
1448+.*....*.
1449+.*...*..
1450+.****...
1451+.*......
1452+.*......
1453+.*......
1454+.*......
1455+.*......
1456+****....
1457+........
1458+........
1459+
1460+char 0x51
1461+........
1462+..***...
1463+.*...*..
1464+*.....*.
1465+*.....*.
1466+*.....*.
1467+*.....*.
1468+*.....*.
1469+*.....*.
1470+*.....*.
1471+*..*..*.
1472+*...*.*.
1473+.*...*..
1474+..***.*.
1475+........
1476+........
1477+
1478+char 0x52
1479+........
1480+******..
1481+.*....*.
1482+.*....*.
1483+.*....*.
1484+.*....*.
1485+.*****..
1486+.*...*..
1487+.*....*.
1488+.*....*.
1489+.*....*.
1490+.*....*.
1491+.*....*.
1492+***..***
1493+........
1494+........
1495+
1496+char 0x53
1497+........
1498+..***.*.
1499+.*...**.
1500+*.....*.
1501+*.....*.
1502+*.......
1503+.*......
1504+..***...
1505+.....*..
1506+......*.
1507+*.....*.
1508+*.....*.
1509+**...*..
1510+*.***...
1511+........
1512+........
1513+
1514+char 0x54
1515+........
1516+*******.
1517+*..*..*.
1518+*..*..*.
1519+...*....
1520+...*....
1521+...*....
1522+...*....
1523+...*....
1524+...*....
1525+...*....
1526+...*....
1527+...*....
1528+.*****..
1529+........
1530+........
1531+
1532+char 0x55
1533+........
1534+***..***
1535+.*....*.
1536+.*....*.
1537+.*....*.
1538+.*....*.
1539+.*....*.
1540+.*....*.
1541+.*....*.
1542+.*....*.
1543+.*....*.
1544+.*....*.
1545+..*..*..
1546+..****..
1547+........
1548+........
1549+
1550+char 0x56
1551+........
1552+***..***
1553+.*....*.
1554+.*....*.
1555+.*....*.
1556+.*....*.
1557+..*..*..
1558+..*..*..
1559+..*..*..
1560+..*..*..
1561+...**...
1562+...**...
1563+...**...
1564+...**...
1565+........
1566+........
1567+
1568+char 0x57
1569+........
1570+***..***
1571+.*....*.
1572+.*....*.
1573+.*....*.
1574+.*.**.*.
1575+.*.**.*.
1576+.*.**.*.
1577+.*.**.*.
1578+..*..*..
1579+..*..*..
1580+..*..*..
1581+..*..*..
1582+..*..*..
1583+........
1584+........
1585+
1586+char 0x58
1587+........
1588+***..***
1589+.*....*.
1590+.*....*.
1591+..*..*..
1592+..*..*..
1593+..*..*..
1594+...**...
1595+..*..*..
1596+..*..*..
1597+..*..*..
1598+.*....*.
1599+.*....*.
1600+***..***
1601+........
1602+........
1603+
1604+char 0x59
1605+........
1606+***.***.
1607+.*...*..
1608+.*...*..
1609+.*...*..
1610+..*.*...
1611+..*.*...
1612+..*.*...
1613+...*....
1614+...*....
1615+...*....
1616+...*....
1617+...*....
1618+.*****..
1619+........
1620+........
1621+
1622+char 0x5a
1623+........
1624+*******.
1625+*....*..
1626+*....*..
1627+....*...
1628+....*...
1629+...*....
1630+...*....
1631+..*.....
1632+..*.....
1633+.*......
1634+.*....*.
1635+*.....*.
1636+*******.
1637+........
1638+........
1639+
1640+char 0x5b
1641+........
1642+..*****.
1643+..*.....
1644+..*.....
1645+..*.....
1646+..*.....
1647+..*.....
1648+..*.....
1649+..*.....
1650+..*.....
1651+..*.....
1652+..*.....
1653+..*.....
1654+..*.....
1655+..*****.
1656+........
1657+
1658+char 0x5c
1659+*.......
1660+*.......
1661+.*......
1662+.*......
1663+..*.....
1664+..*.....
1665+..*.....
1666+...*....
1667+...*....
1668+....*...
1669+....*...
1670+.....*..
1671+.....*..
1672+.....*..
1673+......*.
1674+......*.
1675+
1676+char 0x5d
1677+........
1678+.*****..
1679+.....*..
1680+.....*..
1681+.....*..
1682+.....*..
1683+.....*..
1684+.....*..
1685+.....*..
1686+.....*..
1687+.....*..
1688+.....*..
1689+.....*..
1690+.....*..
1691+.*****..
1692+........
1693+
1694+char 0x5e
1695+........
1696+...*....
1697+..*.*...
1698+.*...*..
1699+*.....*.
1700+........
1701+........
1702+........
1703+........
1704+........
1705+........
1706+........
1707+........
1708+........
1709+........
1710+........
1711+
1712+char 0x5f
1713+........
1714+........
1715+........
1716+........
1717+........
1718+........
1719+........
1720+........
1721+........
1722+........
1723+........
1724+........
1725+........
1726+........
1727+*******.
1728+........
1729+
1730+char 0x60
1731+...*....
1732+....*...
1733+.....*..
1734+........
1735+........
1736+........
1737+........
1738+........
1739+........
1740+........
1741+........
1742+........
1743+........
1744+........
1745+........
1746+........
1747+
1748+char 0x61
1749+........
1750+........
1751+........
1752+........
1753+........
1754+.***....
1755+....*...
1756+.....*..
1757+..****..
1758+.*...*..
1759+*....*..
1760+*....*..
1761+*...**..
1762+.***.**.
1763+........
1764+........
1765+
1766+char 0x62
1767+**......
1768+.*......
1769+.*......
1770+.*......
1771+.*......
1772+.*.**...
1773+.**..*..
1774+.*....*.
1775+.*....*.
1776+.*....*.
1777+.*....*.
1778+.*....*.
1779+.**..*..
1780+.*.**...
1781+........
1782+........
1783+
1784+char 0x63
1785+........
1786+........
1787+........
1788+........
1789+........
1790+..**....
1791+.*..**..
1792+*....*..
1793+*....*..
1794+*.......
1795+*.......
1796+*.....*.
1797+.*...*..
1798+..***...
1799+........
1800+........
1801+
1802+char 0x64
1803+....**..
1804+.....*..
1805+.....*..
1806+.....*..
1807+.....*..
1808+..**.*..
1809+.*..**..
1810+*....*..
1811+*....*..
1812+*....*..
1813+*....*..
1814+*....*..
1815+.*..**..
1816+..**.**.
1817+........
1818+........
1819+
1820+char 0x65
1821+........
1822+........
1823+........
1824+........
1825+........
1826+..***...
1827+.*...*..
1828+*.....*.
1829+*.....*.
1830+******..
1831+*.......
1832+*.....*.
1833+.*....*.
1834+..****..
1835+........
1836+........
1837+
1838+char 0x66
1839+....***.
1840+...*....
1841+...*....
1842+...*....
1843+...*....
1844+.*****..
1845+...*....
1846+...*....
1847+...*....
1848+...*....
1849+...*....
1850+...*....
1851+...*....
1852+.*****..
1853+........
1854+........
1855+
1856+char 0x67
1857+........
1858+........
1859+........
1860+........
1861+........
1862+..**.**.
1863+.*..**..
1864+*....*..
1865+*....*..
1866+*....*..
1867+*....*..
1868+.*..**..
1869+..**.*..
1870+.....*..
1871+.....*..
1872+.****...
1873+
1874+char 0x68
1875+**......
1876+.*......
1877+.*......
1878+.*......
1879+.*......
1880+.*.**...
1881+.**..*..
1882+.*....*.
1883+.*....*.
1884+.*....*.
1885+.*....*.
1886+.*....*.
1887+.*....*.
1888+***...**
1889+........
1890+........
1891+
1892+char 0x69
1893+........
1894+...*....
1895+...*....
1896+........
1897+........
1898+..**....
1899+...*....
1900+...*....
1901+...*....
1902+...*....
1903+...*....
1904+...*....
1905+...*....
1906+..***...
1907+........
1908+........
1909+
1910+char 0x6a
1911+........
1912+.....*..
1913+.....*..
1914+........
1915+........
1916+....**..
1917+.....*..
1918+.....*..
1919+.....*..
1920+.....*..
1921+.....*..
1922+.....*..
1923+.....*..
1924+....*...
1925+....*...
1926+..**....
1927+
1928+char 0x6b
1929+**......
1930+.*......
1931+.*......
1932+.*......
1933+.*......
1934+.*..***.
1935+.*...*..
1936+.*..*...
1937+.*.*....
1938+.**.....
1939+.*.*....
1940+.*..*...
1941+.*...*..
1942+***..**.
1943+........
1944+........
1945+
1946+char 0x6c
1947+..**....
1948+...*....
1949+...*....
1950+...*....
1951+...*....
1952+...*....
1953+...*....
1954+...*....
1955+...*....
1956+...*....
1957+...*....
1958+...*....
1959+...*....
1960+..***...
1961+........
1962+........
1963+
1964+char 0x6d
1965+........
1966+........
1967+........
1968+........
1969+........
1970+****.**.
1971+.*..*..*
1972+.*..*..*
1973+.*..*..*
1974+.*..*..*
1975+.*..*..*
1976+.*..*..*
1977+.*..*..*
1978+**.**.**
1979+........
1980+........
1981+
1982+char 0x6e
1983+........
1984+........
1985+........
1986+........
1987+........
1988+**.**...
1989+.**..*..
1990+.*....*.
1991+.*....*.
1992+.*....*.
1993+.*....*.
1994+.*....*.
1995+.*....*.
1996+***...**
1997+........
1998+........
1999+
2000+char 0x6f
2001+........
2002+........
2003+........
2004+........
2005+........
2006+..***...
2007+.*...*..
2008+*.....*.
2009+*.....*.
2010+*.....*.
2011+*.....*.
2012+*.....*.
2013+.*...*..
2014+..***...
2015+........
2016+........
2017+
2018+char 0x70
2019+........
2020+........
2021+........
2022+........
2023+........
2024+**.**...
2025+.**..*..
2026+.*....*.
2027+.*....*.
2028+.*....*.
2029+.*....*.
2030+.*....*.
2031+.**..*..
2032+.*.**...
2033+.*......
2034+***.....
2035+
2036+char 0x71
2037+........
2038+........
2039+........
2040+........
2041+........
2042+..**.*..
2043+.*..**..
2044+*....*..
2045+*....*..
2046+*....*..
2047+*....*..
2048+*....*..
2049+.*..**..
2050+..**.*..
2051+.....*..
2052+....***.
2053+
2054+char 0x72
2055+........
2056+........
2057+........
2058+........
2059+........
2060+**.***..
2061+.**...*.
2062+.*....*.
2063+.*......
2064+.*......
2065+.*......
2066+.*......
2067+.*......
2068+***.....
2069+........
2070+........
2071+
2072+char 0x73
2073+........
2074+........
2075+........
2076+........
2077+........
2078+.****.*.
2079+*....**.
2080+*.....*.
2081+**......
2082+..***...
2083+.....**.
2084+*.....*.
2085+**....*.
2086+*.****..
2087+........
2088+........
2089+
2090+char 0x74
2091+........
2092+........
2093+...*....
2094+...*....
2095+...*....
2096+.*****..
2097+...*....
2098+...*....
2099+...*....
2100+...*....
2101+...*....
2102+...*....
2103+...*....
2104+....***.
2105+........
2106+........
2107+
2108+char 0x75
2109+........
2110+........
2111+........
2112+........
2113+........
2114+**...**.
2115+.*....*.
2116+.*....*.
2117+.*....*.
2118+.*....*.
2119+.*....*.
2120+.*....*.
2121+.*...**.
2122+..***.**
2123+........
2124+........
2125+
2126+char 0x76
2127+........
2128+........
2129+........
2130+........
2131+........
2132+***..***
2133+.*....*.
2134+.*....*.
2135+.*....*.
2136+..*..*..
2137+..*..*..
2138+..*..*..
2139+...**...
2140+...**...
2141+........
2142+........
2143+
2144+char 0x77
2145+........
2146+........
2147+........
2148+........
2149+........
2150+***..***
2151+.*....*.
2152+.*....*.
2153+.*.**.*.
2154+.*.**.*.
2155+.*.**.*.
2156+..*..*..
2157+..*..*..
2158+..*..*..
2159+........
2160+........
2161+
2162+char 0x78
2163+........
2164+........
2165+........
2166+........
2167+........
2168+**...**.
2169+.*...*..
2170+..*.*...
2171+..*.*...
2172+...*....
2173+..*.*...
2174+..*.*...
2175+.*...*..
2176+**...**.
2177+........
2178+........
2179+
2180+char 0x79
2181+........
2182+........
2183+........
2184+........
2185+........
2186+***..***
2187+.*....*.
2188+.*....*.
2189+..*..*..
2190+..*..*..
2191+..*..*..
2192+...**...
2193+...**...
2194+...*....
2195+...*....
2196+.**.....
2197+
2198+char 0x7a
2199+........
2200+........
2201+........
2202+........
2203+........
2204+*******.
2205+*.....*.
2206+*....*..
2207+....*...
2208+...*....
2209+..*.....
2210+.*....*.
2211+*.....*.
2212+*******.
2213+........
2214+........
2215+
2216+char 0x7b
2217+........
2218+.....**.
2219+....*...
2220+...*....
2221+...*....
2222+...*....
2223+...*....
2224+.**.....
2225+...*....
2226+...*....
2227+...*....
2228+...*....
2229+....*...
2230+.....**.
2231+........
2232+........
2233+
2234+char 0x7c
2235+...*....
2236+...*....
2237+...*....
2238+...*....
2239+...*....
2240+...*....
2241+...*....
2242+...*....
2243+...*....
2244+...*....
2245+...*....
2246+...*....
2247+...*....
2248+...*....
2249+...*....
2250+...*....
2251+
2252+char 0x7d
2253+........
2254+.**.....
2255+...*....
2256+....*...
2257+....*...
2258+....*...
2259+....*...
2260+.....**.
2261+....*...
2262+....*...
2263+....*...
2264+....*...
2265+...*....
2266+.**.....
2267+........
2268+........
2269+
2270+char 0x7e
2271+........
2272+.***..*.
2273+*...**..
2274+........
2275+........
2276+........
2277+........
2278+........
2279+........
2280+........
2281+........
2282+........
2283+........
2284+........
2285+........
2286+........
2287+
2288+char 0x7f
2289+........
2290+........
2291+........
2292+........
2293+...*....
2294+..*.*...
2295+.*...*..
2296+*.....*.
2297+*******.
2298+*.....*.
2299+*******.
2300+........
2301+........
2302+........
2303+........
2304+........
2305+
2306+char 0x80
2307+........
2308+..***...
2309+.*...*..
2310+*.....*.
2311+*.......
2312+*.......
2313+*.......
2314+*.......
2315+*.......
2316+*.......
2317+*.......
2318+*.....*.
2319+.*...*..
2320+..***...
2321+...*....
2322+..*.....
2323+
2324+char 0x81
2325+........
2326+........
2327+..*..*..
2328+..*..*..
2329+........
2330+*.....*.
2331+*.....*.
2332+*.....*.
2333+*.....*.
2334+*.....*.
2335+*.....*.
2336+*.....*.
2337+.*....*.
2338+..*****.
2339+........
2340+........
2341+
2342+char 0x82
2343+....**..
2344+....*...
2345+...*....
2346+........
2347+........
2348+..***...
2349+.*...*..
2350+*.....*.
2351+*.....*.
2352+*******.
2353+*.......
2354+*.....*.
2355+.*...*..
2356+..***...
2357+........
2358+........
2359+
2360+char 0x83
2361+........
2362+...*....
2363+..*.*...
2364+.*...*..
2365+........
2366+.****...
2367+.....*..
2368+.....*..
2369+..****..
2370+.*...*..
2371+*....*..
2372+*....*..
2373+.*...*..
2374+..*****.
2375+........
2376+........
2377+
2378+char 0x84
2379+........
2380+........
2381+..*..*..
2382+..*..*..
2383+........
2384+.****...
2385+.....*..
2386+.....*..
2387+..****..
2388+.*...*..
2389+*....*..
2390+*....*..
2391+.*...*..
2392+..*****.
2393+........
2394+........
2395+
2396+char 0x85
2397+...*....
2398+....*...
2399+.....*..
2400+........
2401+........
2402+.****...
2403+.....*..
2404+.....*..
2405+..****..
2406+.*...*..
2407+*....*..
2408+*....*..
2409+.*...*..
2410+..*****.
2411+........
2412+........
2413+
2414+char 0x86
2415+........
2416+...**...
2417+..*..*..
2418+...**...
2419+........
2420+.****...
2421+.....*..
2422+.....*..
2423+..****..
2424+.*...*..
2425+*....*..
2426+*....*..
2427+.*...*..
2428+..*****.
2429+........
2430+........
2431+
2432+char 0x87
2433+........
2434+........
2435+........
2436+........
2437+........
2438+..****..
2439+.*....*.
2440+*.......
2441+*.......
2442+*.......
2443+*.......
2444+*.......
2445+.*....*.
2446+..****..
2447+....*...
2448+...*....
2449+
2450+char 0x88
2451+........
2452+...*....
2453+..*.*...
2454+.*...*..
2455+........
2456+..***...
2457+.*...*..
2458+*.....*.
2459+*.....*.
2460+*******.
2461+*.......
2462+*.....*.
2463+.*...*..
2464+..***...
2465+........
2466+........
2467+
2468+char 0x89
2469+........
2470+........
2471+..*..*..
2472+..*..*..
2473+........
2474+..***...
2475+.*...*..
2476+*.....*.
2477+*.....*.
2478+*******.
2479+*.......
2480+*.....*.
2481+.*...*..
2482+..***...
2483+........
2484+........
2485+
2486+char 0x8a
2487+...*....
2488+....*...
2489+.....*..
2490+........
2491+........
2492+..***...
2493+.*...*..
2494+*.....*.
2495+*.....*.
2496+*******.
2497+*.......
2498+*.....*.
2499+.*...*..
2500+..***...
2501+........
2502+........
2503+
2504+char 0x8b
2505+........
2506+........
2507+..*..*..
2508+..*..*..
2509+........
2510+...*....
2511+...*....
2512+...*....
2513+...*....
2514+...*....
2515+...*....
2516+...*....
2517+...*....
2518+...*....
2519+........
2520+........
2521+
2522+char 0x8c
2523+........
2524+...*....
2525+..*.*...
2526+.*...*..
2527+........
2528+...*....
2529+...*....
2530+...*....
2531+...*....
2532+...*....
2533+...*....
2534+...*....
2535+...*....
2536+...*....
2537+........
2538+........
2539+
2540+char 0x8d
2541+...*....
2542+....*...
2543+.....*..
2544+........
2545+........
2546+...*....
2547+...*....
2548+...*....
2549+...*....
2550+...*....
2551+...*....
2552+...*....
2553+...*....
2554+...*....
2555+........
2556+........
2557+
2558+char 0x8e
2559+..*..*..
2560+..*..*..
2561+........
2562+..***...
2563+.*...*..
2564+*.....*.
2565+*.....*.
2566+*.....*.
2567+*.....*.
2568+*******.
2569+*.....*.
2570+*.....*.
2571+*.....*.
2572+*.....*.
2573+........
2574+........
2575+
2576+char 0x8f
2577+........
2578+..***...
2579+.*...*..
2580+..***...
2581+.*...*..
2582+*.....*.
2583+*.....*.
2584+*.....*.
2585+*.....*.
2586+*******.
2587+*.....*.
2588+*.....*.
2589+*.....*.
2590+*.....*.
2591+........
2592+........
2593+
2594+char 0x90
2595+....**..
2596+....*...
2597+...*....
2598+*******.
2599+*.......
2600+*.......
2601+*.......
2602+*.......
2603+*****...
2604+*.......
2605+*.......
2606+*.......
2607+*.......
2608+*******.
2609+........
2610+........
2611+
2612+char 0x91
2613+........
2614+........
2615+........
2616+........
2617+........
2618+.**.....
2619+...***..
2620+...*..*.
2621+.***..*.
2622+*..****.
2623+*..*....
2624+*..*....
2625+*..*..*.
2626+.**.**..
2627+........
2628+........
2629+
2630+char 0x92
2631+....**..
2632+...*....
2633+..*.....
2634+..*.*...
2635+..*.*...
2636+..*.*...
2637+*******.
2638+..*.*...
2639+..*.*...
2640+..*.*...
2641+..*.*...
2642+..*.*...
2643+..*.*...
2644+..*.*...
2645+........
2646+........
2647+
2648+char 0x93
2649+........
2650+...*....
2651+..*.*...
2652+.*...*..
2653+........
2654+..***...
2655+.*...*..
2656+*.....*.
2657+*.....*.
2658+*.....*.
2659+*.....*.
2660+*.....*.
2661+.*...*..
2662+..***...
2663+........
2664+........
2665+
2666+char 0x94
2667+........
2668+........
2669+..*..*..
2670+..*..*..
2671+........
2672+..***...
2673+.*...*..
2674+*.....*.
2675+*.....*.
2676+*.....*.
2677+*.....*.
2678+*.....*.
2679+.*...*..
2680+..***...
2681+........
2682+........
2683+
2684+char 0x95
2685+...*....
2686+....*...
2687+.....*..
2688+........
2689+........
2690+..***...
2691+.*...*..
2692+*.....*.
2693+*.....*.
2694+*.....*.
2695+*.....*.
2696+*.....*.
2697+.*...*..
2698+..***...
2699+........
2700+........
2701+
2702+char 0x96
2703+........
2704+...*....
2705+..*.*...
2706+.*...*..
2707+........
2708+*.....*.
2709+*.....*.
2710+*.....*.
2711+*.....*.
2712+*.....*.
2713+*.....*.
2714+*.....*.
2715+.*....*.
2716+..*****.
2717+........
2718+........
2719+
2720+char 0x97
2721+...*....
2722+....*...
2723+.....*..
2724+........
2725+........
2726+*.....*.
2727+*.....*.
2728+*.....*.
2729+*.....*.
2730+*.....*.
2731+*.....*.
2732+*.....*.
2733+.*....*.
2734+..*****.
2735+........
2736+........
2737+
2738+char 0x98
2739+........
2740+........
2741+..*..*..
2742+..*..*..
2743+........
2744+*.....*.
2745+*.....*.
2746+.*...*..
2747+.*...*..
2748+..*.*...
2749+..*.*...
2750+...*....
2751+...*....
2752+..*.....
2753+..*.....
2754+.*......
2755+
2756+char 0x99
2757+..*..*..
2758+..*..*..
2759+........
2760+..***...
2761+.*...*..
2762+*.....*.
2763+*.....*.
2764+*.....*.
2765+*.....*.
2766+*.....*.
2767+*.....*.
2768+*.....*.
2769+.*...*..
2770+..***...
2771+........
2772+........
2773+
2774+char 0x9a
2775+..*..*..
2776+..*..*..
2777+........
2778+*.....*.
2779+*.....*.
2780+*.....*.
2781+*.....*.
2782+*.....*.
2783+*.....*.
2784+*.....*.
2785+*.....*.
2786+*.....*.
2787+.*...*..
2788+..***...
2789+........
2790+........
2791+
2792+char 0x9b
2793+........
2794+..*.*...
2795+..*.*...
2796+..*.*...
2797+..****..
2798+.**.*.*.
2799+*.*.*...
2800+*.*.*...
2801+*.*.*...
2802+*.*.*...
2803+*.*.*...
2804+.**.*.*.
2805+..****..
2806+..*.*...
2807+..*.*...
2808+..*.*...
2809+
2810+char 0x9c
2811+........
2812+....**..
2813+...*..*.
2814+..*.....
2815+..*.....
2816+..*.....
2817+******..
2818+..*.....
2819+..*.....
2820+..*.....
2821+.**.....
2822+*.*.....
2823+*.**..*.
2824+.*..**..
2825+........
2826+........
2827+
2828+char 0x9d
2829+........
2830+*.....*.
2831+*.....*.
2832+.*...*..
2833+..*.*...
2834+...*....
2835+*******.
2836+...*....
2837+...*....
2838+*******.
2839+...*....
2840+...*....
2841+...*....
2842+...*....
2843+........
2844+........
2845+
2846+char 0x9e
2847+........
2848+***.....
2849+*..*....
2850+*...*...
2851+*...*...
2852+*...*...
2853+*..*.*..
2854+***..*..
2855+*..*****
2856+*....*..
2857+*....*..
2858+*....*..
2859+*....*..
2860+*....*..
2861+........
2862+........
2863+
2864+char 0x9f
2865+........
2866+....**..
2867+...*..*.
2868+...*....
2869+...*....
2870+...*....
2871+*******.
2872+...*....
2873+...*....
2874+...*....
2875+...*....
2876+...*....
2877+*..*....
2878+.**.....
2879+........
2880+........
2881+
2882+char 0xa0
2883+....**..
2884+....*...
2885+...*....
2886+........
2887+........
2888+.****...
2889+.....*..
2890+.....*..
2891+..****..
2892+.*...*..
2893+*....*..
2894+*....*..
2895+.*...*..
2896+..*****.
2897+........
2898+........
2899+
2900+char 0xa1
2901+........
2902+........
2903+........
2904+........
2905+........
2906+........
2907+........
2908+........
2909+........
2910+........
2911+........
2912+........
2913+.**.....
2914+*..*....
2915+*..*....
2916+.**.....
2917+
2918+char 0xa2
2919+****....
2920+*.......
2921+*.......
2922+*.......
2923+*.......
2924+*.......
2925+*.......
2926+*.......
2927+*.......
2928+*.......
2929+........
2930+........
2931+........
2932+........
2933+........
2934+........
2935+
2936+char 0xa3
2937+........
2938+........
2939+........
2940+........
2941+........
2942+.......*
2943+.......*
2944+.......*
2945+.......*
2946+.......*
2947+.......*
2948+.......*
2949+.......*
2950+.......*
2951+.......*
2952+....****
2953+
2954+char 0xa4
2955+........
2956+........
2957+........
2958+........
2959+........
2960+........
2961+........
2962+........
2963+........
2964+........
2965+........
2966+*.......
2967+*.......
2968+.*......
2969+..*.....
2970+...*....
2971+
2972+char 0xa5
2973+........
2974+........
2975+........
2976+........
2977+........
2978+........
2979+........
2980+........
2981+.******.
2982+........
2983+........
2984+........
2985+........
2986+........
2987+........
2988+........
2989+
2990+char 0xa6
2991+........
2992+********
2993+.......*
2994+.......*
2995+.......*
2996+.......*
2997+.......*
2998+*******.
2999+......*.
3000+.....*..
3001+.....*..
3002+....*...
3003+....*...
3004+...*....
3005+.**.....
3006+........
3007+
3008+char 0xa7
3009+........
3010+........
3011+........
3012+........
3013+........
3014+........
3015+........
3016+........
3017+........
3018+.*******
3019+.......*
3020+....*.*.
3021+....*...
3022+...*....
3023+..*.....
3024+........
3025+
3026+char 0xa8
3027+........
3028+........
3029+........
3030+........
3031+........
3032+........
3033+........
3034+........
3035+........
3036+......**
3037+....**..
3038+..**....
3039+**..*...
3040+....*...
3041+....*...
3042+........
3043+
3044+char 0xa9
3045+........
3046+........
3047+........
3048+........
3049+........
3050+........
3051+........
3052+........
3053+........
3054+...*....
3055+********
3056+*......*
3057+......*.
3058+.....*..
3059+....*...
3060+........
3061+
3062+char 0xaa
3063+........
3064+........
3065+........
3066+........
3067+........
3068+........
3069+........
3070+........
3071+........
3072+.*****..
3073+...*....
3074+...*....
3075+...*....
3076+*******.
3077+........
3078+........
3079+
3080+char 0xab
3081+........
3082+........
3083+........
3084+........
3085+........
3086+........
3087+........
3088+........
3089+........
3090+....*...
3091+*******.
3092+...**...
3093+..*.*...
3094+.*..*...
3095+*...*...
3096+....*...
3097+
3098+char 0xac
3099+........
3100+........
3101+........
3102+........
3103+........
3104+........
3105+........
3106+........
3107+..*.....
3108+..*.****
3109+****..*.
3110+..*..*..
3111+...*....
3112+...*....
3113+...*....
3114+...*....
3115+
3116+char 0xad
3117+........
3118+........
3119+........
3120+........
3121+........
3122+........
3123+........
3124+........
3125+........
3126+.****...
3127+....*...
3128+....*...
3129+....*...
3130+....*...
3131+********
3132+........
3133+
3134+char 0xae
3135+........
3136+........
3137+........
3138+........
3139+........
3140+........
3141+........
3142+........
3143+........
3144+********
3145+.......*
3146+.......*
3147+********
3148+.......*
3149+.......*
3150+********
3151+
3152+char 0xaf
3153+........
3154+........
3155+........
3156+........
3157+........
3158+........
3159+........
3160+........
3161+........
3162+.*..*..*
3163+.*..*..*
3164+.......*
3165+......*.
3166+.....*..
3167+....*...
3168+...*....
3169+
3170+char 0xb0
3171+........
3172+........
3173+........
3174+........
3175+........
3176+........
3177+........
3178+........
3179+.......*
3180+*******.
3181+........
3182+........
3183+........
3184+........
3185+........
3186+........
3187+
3188+char 0xb1
3189+........
3190+........
3191+********
3192+.......*
3193+...*..*.
3194+...*.*..
3195+...*....
3196+...*....
3197+...*....
3198+...*....
3199+..*.....
3200+..*.....
3201+.*......
3202+.*......
3203+*.......
3204+........
3205+
3206+char 0xb2
3207+........
3208+........
3209+.......*
3210+......**
3211+....**..
3212+..**....
3213+**..*...
3214+*...*...
3215+....*...
3216+....*...
3217+....*...
3218+....*...
3219+....*...
3220+....*...
3221+........
3222+........
3223+
3224+char 0xb3
3225+........
3226+........
3227+...*....
3228+...*....
3229+********
3230+*......*
3231+*......*
3232+......*.
3233+......*.
3234+.....*..
3235+.....*..
3236+....*...
3237+....*...
3238+...*....
3239+..*.....
3240+........
3241+
3242+
3243+char 0xb4
3244+........
3245+........
3246+.*****..
3247+...*....
3248+...*....
3249+...*....
3250+...*....
3251+...*....
3252+...*....
3253+...*....
3254+...*....
3255+...*....
3256+...*....
3257+*******.
3258+........
3259+........
3260+
3261+
3262+char 0xb5
3263+........
3264+........
3265+........
3266+....*...
3267+....*...
3268+********
3269+...**...
3270+...**...
3271+..*.*...
3272+..*.*...
3273+.*..*...
3274+.*..*...
3275+*...*...
3276+...**...
3277+....*...
3278+........
3279+
3280+
3281+char 0xb6
3282+........
3283+........
3284+...*....
3285+...*....
3286+********
3287+...*...*
3288+..*....*
3289+..*....*
3290+..*....*
3291+..*....*
3292+.*.....*
3293+.*....*.
3294+*..*..*.
3295+....**.
3296+.....*..
3297+........
3298+
3299+
3300+char 0xb7
3301+........
3302+........
3303+...*....
3304+...*....
3305+...*.***
3306+..***...
3307+**.*....
3308+....*.**
3309+...***..
3310+***.*...
3311+....*...
3312+....*...
3313+....*...
3314+.....*..
3315+.....*..
3316+........
3317+
3318+
3319+char 0xb8
3320+........
3321+........
3322+........
3323+...*****
3324+...*...*
3325+...*...*
3326+...*...*
3327+...*...*
3328+..*....*.
3329+..*....*.
3330+.*....*.
3331+......*.
3332+.....*..
3333+.....*..
3334+....*...
3335+........
3336+
3337+
3338+char 0xb9
3339+........
3340+........
3341+..*.....
3342+..*.....
3343+..******
3344+..*...*.
3345+.*....*.
3346+.*....*.
3347+*....*..
3348+.....*..
3349+.....*..
3350+....*...
3351+....*...
3352+...*....
3353+..*.....
3354+........
3355+
3356+
3357+char 0xba
3358+........
3359+........
3360+........
3361+........
3362+.*******
3363+.......*
3364+.......*
3365+.......*
3366+.......*
3367+.......*
3368+.......*
3369+.*******
3370+........
3371+........
3372+........
3373+........
3374+
3375+
3376+char 0xbb
3377+........
3378+........
3379+.*...*..
3380+.*...*..
3381+********
3382+.*...*..
3383+*....*..
3384+*....*..
3385+....*...
3386+....*...
3387+....*...
3388+...*....
3389+...*....
3390+..*.....
3391+..*.....
3392+........
3393+
3394+
3395+char 0xbc
3396+........
3397+........
3398+........
3399+.**.....
3400+...**...
3401+.......*
3402+.**....*
3403+...**..*
3404+......*.
3405+......*.
3406+.....*..
3407+....*...
3408+...*....
3409+..*.....
3410+.*......
3411+........
3412+
3413+
3414+char 0xbd
3415+........
3416+........
3417+........
3418+******..
3419+.....*..
3420+.....*..
3421+....*...
3422+....*...
3423+...*....
3424+...*....
3425+..*.*...
3426+..*.*...
3427+.*...*..
3428+.*...*..
3429+*.....*.
3430+........
3431+
3432+
3433+char 0xbe
3434+........
3435+........
3436+........
3437+..*.....
3438+..*.....
3439+..*.....
3440+..******
3441+***....*
3442+..*...*.
3443+..*.....
3444+..*.....
3445+..*.....
3446+..*.....
3447+...*****
3448+........
3449+........
3450+
3451+
3452+char 0xbf
3453+........
3454+........
3455+........
3456+.*.....*
3457+..*....*
3458+..*....*
3459+...*...*
3460+......*.
3461+......*.
3462+......*.
3463+......*.
3464+.....*..
3465+.....*..
3466+....*...
3467+...*....
3468+........
3469+
3470+char 0xc0
3471+........
3472+........
3473+..******
3474+..*....*
3475+..*....*
3476+.*.....*
3477+.*.**..*
3478+*....**.
3479+......*.
3480+......*.
3481+.....*..
3482+.....*..
3483+....*...
3484+....*...
3485+...*....
3486+........
3487+
3488+
3489+char 0xc1
3490+........
3491+........
3492+........
3493+....**..
3494+..***...
3495+....*...
3496+....*...
3497+********
3498+....*...
3499+...*....
3500+...*....
3501+...*....
3502+..*.....
3503+..*.....
3504+.*......
3505+........
3506+
3507+
3508+char 0xc2
3509+........
3510+........
3511+........
3512+.*..*..*
3513+.*..*..*
3514+.*..*..*
3515+.......*
3516+......*.
3517+......*.
3518+......*.
3519+......*.
3520+.....*..
3521+.....*..
3522+....*...
3523+...*....
3524+........
3525+
3526+
3527+char 0xc3
3528+........
3529+........
3530+........
3531+.******.
3532+........
3533+........
3534+********
3535+....*...
3536+....*...
3537+....*...
3538+...*....
3539+...*....
3540+..*.....
3541+..*.....
3542+.*......
3543+........
3544+
3545+
3546+char 0xc4
3547+........
3548+........
3549+...*....
3550+...*....
3551+...*....
3552+...*....
3553+...*....
3554+...**...
3555+...*.*..
3556+...*.*..
3557+...*..*.
3558+...*..*.
3559+...*....
3560+...*....
3561+...*....
3562+........
3563+
3564+
3565+char 0xc5
3566+........
3567+........
3568+........
3569+....*...
3570+....*...
3571+....*...
3572+********
3573+....*...
3574+...*....
3575+...*....
3576+...*....
3577+..*.....
3578+..*.....
3579+..*.....
3580+.*......
3581+........
3582+
3583+
3584+char 0xc6
3585+........
3586+........
3587+........
3588+........
3589+.******.
3590+........
3591+........
3592+........
3593+........
3594+........
3595+********
3596+........
3597+........
3598+........
3599+........
3600+........
3601+
3602+
3603+char 0xc7
3604+........
3605+........
3606+........
3607+********
3608+.......*
3609+......*.
3610+......*.
3611+..*..*..
3612+...*.*..
3613+....*...
3614+....**..
3615+...*..*.
3616+...*....
3617+..*.....
3618+..*.....
3619+........
3620+
3621+
3622+
3623+char 0xc8
3624+........
3625+........
3626+...*....
3627+...*....
3628+.******.
3629+......*.
3630+.....*..
3631+....*...
3632+...***..
3633+..*.*.*.
3634+.*..*..*
3635+*...*...
3636+....*...
3637+....*...
3638+....*...
3639+........
3640+
3641+
3642+char 0xc9
3643+........
3644+........
3645+......*.
3646+......*.
3647+......*.
3648+......*.
3649+......*.
3650+.....*..
3651+.....*..
3652+....*...
3653+....*...
3654+...*....
3655+...*....
3656+..*.....
3657+..*.....
3658+........
3659+
3660+
3661+
3662+char 0xca
3663+........
3664+........
3665+........
3666+........
3667+..*..*..
3668+.*....*.
3669+.*....*.
3670+.*....*.
3671+*......*
3672+*......*
3673+*......*
3674+*......*
3675+*......*
3676+*......*
3677+........
3678+........
3679+
3680+
3681+char 0xcb
3682+........
3683+........
3684+........
3685+..*.....
3686+..*.....
3687+..*..***
3688+..***...
3689+..*.....
3690+..*.....
3691+..*.....
3692+..*.....
3693+..*.....
3694+..*.....
3695+...*....
3696+....****
3697+........
3698+
3699+
3700+char 0xcc
3701+........
3702+........
3703+........
3704+********
3705+.......*
3706+.......*
3707+.......*
3708+.......*
3709+.......*
3710+.......*
3711+......*.
3712+......*.
3713+.....*..
3714+....*...
3715+...*....
3716+........
3717+
3718+
3719+char 0xcd
3720+........
3721+........
3722+........
3723+........
3724+...*....
3725+..*.*...
3726+.*...*..
3727+*....*..
3728+......*.
3729+......*.
3730+.......*
3731+.......*
3732+........
3733+........
3734+........
3735+........
3736+
3737+
3738+char 0xce
3739+........
3740+........
3741+...*....
3742+...*....
3743+...*....
3744+********
3745+...*....
3746+...*....
3747+.*.*.*..
3748+.*.*.*..
3749+*..*..*.
3750+*..*..*.
3751+...*....
3752+...*....
3753+........
3754+........
3755+
3756+
3757+char 0xcf
3758+........
3759+........
3760+........
3761+********
3762+.......*
3763+......*.
3764+......*.
3765+.....*..
3766+.*...*..
3767+..*.*...
3768+...**...
3769+....*...
3770+.....*..
3771+......*.
3772+.......*
3773+........
3774+
3775+
3776+char 0xd0
3777+........
3778+........
3779+.**.....
3780+...**...
3781+.....**.
3782+........
3783+........
3784+.**.....
3785+...**...
3786+.....**.
3787+........
3788+........
3789+.**.....
3790+...**...
3791+.....**.
3792+........
3793+
3794+
3795+char 0xd1
3796+........
3797+........
3798+........
3799+....*...
3800+....*...
3801+...*....
3802+...*....
3803+..*.....
3804+..*.....
3805+.*......
3806+.*...*..
3807+.*....*.
3808+.*..**.*
3809+****...*
3810+........
3811+........
3812+
3813+
3814+char 0xd2
3815+........
3816+........
3817+.....*..
3818+.....*..
3819+.*..*...
3820+..*.*...
3821+...*....
3822+...**...
3823+...*.*..
3824+..*...*.
3825+..*.....
3826+.*......
3827+.*......
3828+*.......
3829+*.......
3830+........
3831+
3832+
3833+char 0xd3
3834+........
3835+........
3836+........
3837+........
3838+********
3839+...*....
3840+...*....
3841+...*....
3842+********
3843+...*....
3844+...*....
3845+...*....
3846+...*....
3847+....*...
3848+.....***
3849+........
3850+
3851+
3852+char 0xd4
3853+........
3854+........
3855+.*......
3856+.*....**
3857+.*..**.*
3858+..**..*.
3859+***.....
3860+..*.....
3861+...*....
3862+...*....
3863+...*....
3864+....*...
3865+....*...
3866+....*...
3867+.....*..
3868+........
3869+
3870+
3871+char 0xd5
3872+........
3873+........
3874+........
3875+........
3876+.******.
3877+......*.
3878+......*.
3879+.....*..
3880+.....*..
3881+....*...
3882+....*...
3883+********
3884+........
3885+........
3886+........
3887+........
3888+
3889+
3890+char 0xd6
3891+........
3892+........
3893+.******.
3894+......*.
3895+......*.
3896+......*.
3897+......*.
3898+.******.
3899+......*.
3900+......*.
3901+......*.
3902+......*.
3903+.******.
3904+........
3905+........
3906+........
3907+
3908+
3909+char 0xd7
3910+........
3911+........
3912+.******.
3913+........
3914+........
3915+********
3916+.......*
3917+.......*
3918+.......*
3919+.......*
3920+......*.
3921+......*.
3922+.....*..
3923+.....*..
3924+....*...
3925+........
3926+
3927+
3928+char 0xd8
3929+........
3930+........
3931+.*....*.
3932+.*....*.
3933+.*....*.
3934+.*....*.
3935+.*....*.
3936+......*.
3937+......*.
3938+.....*..
3939+.....*..
3940+....*...
3941+....*...
3942+...*....
3943+...*....
3944+........
3945+
3946+
3947+char 0xd9
3948+........
3949+........
3950+....*...
3951+..*.*...
3952+..*.*...
3953+..*.*...
3954+.*..*...
3955+.*..*...
3956+.*..*...
3957+*...*..*
3958+*...*.*.
3959+*...**..
3960+....*...
3961+........
3962+........
3963+........
3964+
3965+
3966+char 0xda
3967+........
3968+........
3969+.*......
3970+.*......
3971+.*......
3972+.*......
3973+.*......
3974+.*.....*
3975+.*....*.
3976+.*...*..
3977+.*..*...
3978+.*.*....
3979+.**.....
3980+........
3981+........
3982+
3983+
3984+char 0xdb
3985+........
3986+........
3987+........
3988+.******.
3989+.*....*.
3990+.*....*.
3991+.*....*.
3992+.*....*.
3993+.*....*.
3994+.*....*.
3995+.*....*.
3996+.******.
3997+.*....*.
3998+........
3999+........
4000+........
4001+
4002+
4003+char 0xdc
4004+........
4005+........
4006+........
4007+.*******
4008+.*.....*
4009+.*.....*
4010+.......*
4011+.......*
4012+.......*
4013+.......*
4014+.......*
4015+......*.
4016+......*.
4017+.....*..
4018+....*...
4019+........
4020+
4021+
4022+char 0xdd
4023+........
4024+........
4025+........
4026+***....*
4027+...**..*
4028+.......*
4029+.......*
4030+......*.
4031+......*.
4032+.....*..
4033+.....*..
4034+....*...
4035+....*...
4036+...*....
4037+.**.....
4038+........
4039+
4040+
4041+
4042+char 0xde
4043+........
4044+..*.....
4045+*..*....
4046+.*......
4047+........
4048+........
4049+........
4050+........
4051+........
4052+........
4053+........
4054+........
4055+........
4056+........
4057+........
4058+........
4059+
4060+
4061+char 0xdf
4062+........
4063+.*......
4064+*.*.....
4065+.*......
4066+........
4067+........
4068+........
4069+........
4070+........
4071+........
4072+........
4073+........
4074+........
4075+........
4076+........
4077+........
4078+
4079+char 0xe0
4080+........
4081+........
4082+........
4083+........
4084+........
4085+........
4086+........
4087+........
4088+........
4089+........
4090+........
4091+........
4092+........
4093+........
4094+........
4095+........
4096+
4097+char 0xe1
4098+........
4099+........
4100+........
4101+........
4102+........
4103+........
4104+........
4105+........
4106+........
4107+........
4108+........
4109+........
4110+........
4111+........
4112+........
4113+........
4114+
4115+char 0xe2
4116+........
4117+........
4118+........
4119+........
4120+........
4121+........
4122+........
4123+........
4124+........
4125+........
4126+........
4127+........
4128+........
4129+........
4130+........
4131+........
4132+
4133+char 0xe3
4134+........
4135+........
4136+........
4137+........
4138+........
4139+........
4140+........
4141+........
4142+........
4143+........
4144+........
4145+........
4146+........
4147+........
4148+........
4149+........
4150+
4151+char 0xe4
4152+........
4153+........
4154+........
4155+........
4156+........
4157+........
4158+........
4159+........
4160+........
4161+........
4162+........
4163+........
4164+........
4165+........
4166+........
4167+........
4168+
4169+char 0xe5
4170+........
4171+........
4172+........
4173+........
4174+........
4175+........
4176+........
4177+........
4178+........
4179+........
4180+........
4181+........
4182+........
4183+........
4184+........
4185+........
4186+
4187+char 0xe6
4188+........
4189+........
4190+........
4191+........
4192+........
4193+........
4194+........
4195+........
4196+........
4197+........
4198+........
4199+........
4200+........
4201+........
4202+........
4203+........
4204+
4205+char 0xe7
4206+........
4207+........
4208+........
4209+........
4210+........
4211+........
4212+........
4213+........
4214+........
4215+........
4216+........
4217+........
4218+........
4219+........
4220+........
4221+........
4222+
4223+char 0xe8
4224+........
4225+........
4226+........
4227+........
4228+........
4229+........
4230+........
4231+........
4232+........
4233+........
4234+........
4235+........
4236+........
4237+........
4238+........
4239+........
4240+
4241+char 0xe9
4242+........
4243+........
4244+........
4245+........
4246+........
4247+........
4248+........
4249+........
4250+........
4251+........
4252+........
4253+........
4254+........
4255+........
4256+........
4257+........
4258+
4259+char 0xea
4260+........
4261+........
4262+........
4263+........
4264+........
4265+........
4266+........
4267+........
4268+........
4269+........
4270+........
4271+........
4272+........
4273+........
4274+........
4275+........
4276+
4277+char 0xeb
4278+........
4279+........
4280+........
4281+........
4282+........
4283+........
4284+........
4285+........
4286+........
4287+........
4288+........
4289+........
4290+........
4291+........
4292+........
4293+........
4294+
4295+char 0xec
4296+........
4297+........
4298+........
4299+........
4300+........
4301+........
4302+........
4303+........
4304+........
4305+........
4306+........
4307+........
4308+........
4309+........
4310+........
4311+........
4312+
4313+char 0xed
4314+........
4315+........
4316+........
4317+........
4318+........
4319+........
4320+........
4321+........
4322+........
4323+........
4324+........
4325+........
4326+........
4327+........
4328+........
4329+........
4330+
4331+char 0xee
4332+........
4333+........
4334+........
4335+........
4336+........
4337+........
4338+........
4339+........
4340+........
4341+........
4342+........
4343+........
4344+........
4345+........
4346+........
4347+........
4348+
4349+char 0xef
4350+........
4351+........
4352+........
4353+........
4354+........
4355+........
4356+........
4357+........
4358+........
4359+........
4360+........
4361+........
4362+........
4363+........
4364+........
4365+........
4366+
4367+char 0xf0
4368+........
4369+........
4370+........
4371+........
4372+........
4373+........
4374+........
4375+........
4376+........
4377+........
4378+........
4379+........
4380+........
4381+........
4382+........
4383+........
4384+
4385+char 0xf1
4386+........
4387+........
4388+........
4389+........
4390+........
4391+........
4392+........
4393+........
4394+........
4395+........
4396+........
4397+........
4398+........
4399+........
4400+........
4401+........
4402+
4403+char 0xf2
4404+........
4405+........
4406+........
4407+........
4408+........
4409+........
4410+........
4411+........
4412+........
4413+........
4414+........
4415+........
4416+........
4417+........
4418+........
4419+........
4420+
4421+char 0xf3
4422+........
4423+........
4424+........
4425+........
4426+........
4427+........
4428+........
4429+........
4430+........
4431+........
4432+........
4433+........
4434+........
4435+........
4436+........
4437+........
4438+
4439+char 0xf4
4440+........
4441+........
4442+........
4443+........
4444+........
4445+........
4446+........
4447+........
4448+........
4449+........
4450+........
4451+........
4452+........
4453+........
4454+........
4455+........
4456+
4457+char 0xf5
4458+........
4459+........
4460+........
4461+........
4462+........
4463+........
4464+........
4465+........
4466+........
4467+........
4468+........
4469+........
4470+........
4471+........
4472+........
4473+........
4474+
4475+char 0xf6
4476+........
4477+........
4478+........
4479+........
4480+........
4481+........
4482+........
4483+........
4484+........
4485+........
4486+........
4487+........
4488+........
4489+........
4490+........
4491+........
4492+
4493+char 0xf7
4494+........
4495+........
4496+........
4497+........
4498+........
4499+........
4500+........
4501+........
4502+........
4503+........
4504+........
4505+........
4506+........
4507+........
4508+........
4509+........
4510+
4511+char 0xf8
4512+........
4513+........
4514+........
4515+........
4516+........
4517+........
4518+........
4519+........
4520+........
4521+........
4522+........
4523+........
4524+........
4525+........
4526+........
4527+........
4528+
4529+char 0xf9
4530+........
4531+........
4532+........
4533+........
4534+........
4535+........
4536+........
4537+........
4538+........
4539+........
4540+........
4541+........
4542+........
4543+........
4544+........
4545+........
4546+
4547+char 0xfa
4548+........
4549+........
4550+........
4551+........
4552+........
4553+........
4554+........
4555+........
4556+........
4557+........
4558+........
4559+........
4560+........
4561+........
4562+........
4563+........
4564+
4565+char 0xfb
4566+........
4567+........
4568+........
4569+........
4570+........
4571+........
4572+........
4573+........
4574+........
4575+........
4576+........
4577+........
4578+........
4579+........
4580+........
4581+........
4582+
4583+char 0xfc
4584+........
4585+........
4586+........
4587+........
4588+........
4589+........
4590+........
4591+........
4592+........
4593+........
4594+........
4595+........
4596+........
4597+........
4598+........
4599+........
4600+
4601+char 0xfd
4602+........
4603+........
4604+........
4605+........
4606+........
4607+........
4608+........
4609+........
4610+........
4611+........
4612+........
4613+........
4614+........
4615+........
4616+........
4617+........
4618+
4619+char 0xfe
4620+........
4621+........
4622+........
4623+........
4624+........
4625+........
4626+........
4627+........
4628+........
4629+........
4630+........
4631+........
4632+........
4633+........
4634+........
4635+........
4636+
4637+char 0xff
4638+........
4639+........
4640+........
4641+........
4642+........
4643+........
4644+........
4645+........
4646+........
4647+........
4648+........
4649+........
4650+........
4651+........
4652+........
4653+........
--- beta/tolset_chn_000/chnos_010/chnos/drawing.c (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/drawing.c (revision 306)
@@ -68,6 +68,40 @@
6868 return;
6969 }
7070
71+void Drawing08_Put_Font(void *vram, uint xsize, uint x, uint y, uint c, const uchar *font)
72+{
73+ int i;
74+ uchar d;
75+ uchar *p;
76+
77+ for (i = 0; i < 16; i++) {
78+ p = (uchar *)(vram + (y + i) * xsize + x);
79+ d = font[i];
80+ if ((d & 0x80) != 0) { p[0] = (uchar)c; }
81+ if ((d & 0x40) != 0) { p[1] = (uchar)c; }
82+ if ((d & 0x20) != 0) { p[2] = (uchar)c; }
83+ if ((d & 0x10) != 0) { p[3] = (uchar)c; }
84+ if ((d & 0x08) != 0) { p[4] = (uchar)c; }
85+ if ((d & 0x04) != 0) { p[5] = (uchar)c; }
86+ if ((d & 0x02) != 0) { p[6] = (uchar)c; }
87+ if ((d & 0x01) != 0) { p[7] = (uchar)c; }
88+ }
89+ return;
90+}
91+
92+void Drawing08_Put_String(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s)
93+{
94+ c = RGB_32_To_08(c);
95+ for(; *s != 0x00; s++){
96+ if(x > xsize - 8){
97+ break;
98+ }
99+ Drawing08_Put_Font(vram, xsize, x, y, c, hankaku + *s * 16);
100+ x += 8;
101+ }
102+ return;
103+}
104+
71105 uchar RGB_32_To_08(uint c32)
72106 {
73107 uchar c8;
--- beta/tolset_chn_000/chnos_010/chnos/Makefile (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/Makefile (revision 306)
@@ -1,6 +1,7 @@
11
22 #OBJS_BOOTPACK = naskfunc.obj hankaku.obj gdtidt.obj graphic.obj grap_08.obj grap_16.obj grap_32.obj init.obj intrpt.obj io.obj memory.obj paging.obj sheet.obj fifo.obj mtask.obj timer.obj keyboard.obj mouse.obj window.obj console.obj file.obj uuid.obj api.obj bootpack.obj
3-OBJS_BOOTPACK = nasfunc0.obj nasfunc1.obj nasfunc2.obj callbios.obj cfunc.obj drawing.obj dsctbl.obj emu86.obj emu86asm.obj error.obj fifo.obj intrpt.obj keyboard.obj memory.obj mtask.obj serial.obj system.obj timer.obj vgatmode.obj xception.obj bootpack.obj
3+OBJS_BOOTPACK = nasfunc0.obj nasfunc1.obj nasfunc2.obj hankaku.obj callbios.obj cfunc.obj drawing.obj dsctbl.obj emu86.obj emu86asm.obj error.obj fifo.obj intrpt.obj keyboard.obj memory.obj mtask.obj serial.obj system.obj timer.obj vgatmode.obj xception.obj bootpack.obj
4+HEADS_BOOTPACK = core.h coredef0.h coredef1.h coredef2.h keyid.h
45 TOOLPATH = ../../z_tools/
56 INCPATH = ../../z_tools/CHNOSProject/
67
@@ -38,8 +39,8 @@
3839 asmhead.bin : asmhead.nas Makefile
3940 $(NASK) asmhead.nas asmhead.bin asmhead.lst
4041
41-bootpack.gas : bootpack.c Makefile
42- $(CC1) -o bootpack.gas bootpack.c
42+bootpack.gas : bootpack.ca $(HEADS_BOOTPACK) Makefile
43+ $(CC1) -o bootpack.gas bootpack.ca
4344
4445 bootpack.nas : bootpack.gas Makefile
4546 $(GAS2NASK) bootpack.gas bootpack.nas
@@ -73,7 +74,7 @@
7374 %.ca : %.c Makefile
7475 $(SJISCONV) $*.c $*.ca
7576
76-%.gas : %.ca core.h Makefile
77+%.gas : %.ca $(HEADS_BOOTPACK) Makefile
7778 $(CC1) -o $*.gas $*.ca
7879
7980 %.nas : %.gas Makefile
@@ -112,6 +113,7 @@
112113 -$(DEL) *.lst
113114 -$(DEL) *.gas
114115 -$(DEL) *.obj
116+ -$(DEL) *.ca
115117 -$(DEL) bootpack.nas
116118 -$(DEL) bootpack.map
117119 -$(DEL) bootpack.bim
--- beta/tolset_chn_000/chnos_010/chnos/core.h (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/core.h (revision 306)
@@ -2,6 +2,7 @@
22 /*includes*/
33 #include "coredef0.h" /*システム定数宣言*/
44 #include "coredef1.h" /*システムデータ型宣言*/
5+#include "coredef2.h" /*システム外部リソース宣言*/
56
67 /*functions*/
78 /*bootpack.c 基幹部分*/
@@ -36,6 +37,8 @@
3637 void Drawing08_Initialise_Palette(void);
3738 void Drawing08_Set_Palette(uint start, uint end, uchar *rgb);
3839 void Drawing08_Fill_Rectangle(void *vram, uint xsize, uint c, uint x0, uint y0, uint x1, uint y1);
40+void Drawing08_Put_Font(void *vram, uint xsize, uint x, uint y, uint c, const uchar *font);
41+void Drawing08_Put_String(void *vram, uint xsize, uint x, uint y, uint c, const uchar *s);
3942 uchar RGB_32_To_08(uint c32);
4043 uchar RGB_32_To_08_xy(uint c32, int x, int y);
4144 ushort RGB_32_To_16(uint c32);
--- beta/tolset_chn_000/chnos_010/chnos/bootpack.c (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/bootpack.c (revision 306)
@@ -54,6 +54,7 @@
5454 Drawing08_Initialise_Palette();
5555 Drawing08_Fill_Rectangle(VGA_VRAM_ADR, VGA08_VRAM_XSIZE, 0xffffff, 0, 0, VGA08_VRAM_XSIZE - 1, VGA08_VRAM_YSIZE - 1);
5656 Drawing08_Fill_Rectangle(VGA_VRAM_ADR, VGA08_VRAM_XSIZE, 0x00ff00, 100, 100, VGA08_VRAM_XSIZE - 10 - 1, VGA08_VRAM_YSIZE - 10);
57+ Drawing08_Put_String(VGA_VRAM_ADR, VGA08_VRAM_XSIZE, 10, 10, 0x000000, "Welcome to CHNOSProject!");
5758
5859 for(;;){
5960
--- beta/tolset_chn_000/chnos_010/chnos/keyid.h (nonexistent)
+++ beta/tolset_chn_000/chnos_010/chnos/keyid.h (revision 306)
@@ -0,0 +1,115 @@
1+
2+/*KeyIdentifier キーID宣言*/
3+
4+//16bitを使用。つまり、0-65535,0x0000-0xffff
5+//bit00-06 :ASCIIコード(拡張フラグが0のとき)
6+// :拡張キーID(拡張フラグが1のとき)
7+//bit07 :Make,Break種別(0:Make,1:Break)(0:種別なし)
8+//bit08 :テンキー種別(0:フルキー,1:テンキー)(0:種別なし)
9+//bit19 :Shiftキー状態(0:オフ,1:オン)
10+//bit10 :Ctrlキー状態(0:オフ,1:オン)
11+//bit11 :Altキー状態(0:オフ,1:オン)
12+//bit12 :NumLock状態(0:オフ,1:オン)
13+//bit13 :CapsLock状態(0:オフ,1:オン)
14+//bit14 :ScrollLock状態(0:オフ,1:オン)
15+//bit15 :拡張フラグ(0:ASCII,1:拡張キーコード)
16+//bit09-14 :予約
17+
18+//つまり、FIFOで受け取って、バイアスを引いたら、KEYID_EXTENDEDフラグを調べる。
19+//次に、BREAKフラグを調べる。
20+//そして、下位8ビットのみを参照する。
21+
22+#define KEYID_MASK_ID 0x007f
23+#define KEYID_MASK_BREAK 0x0080
24+#define KEYID_MASK_TENKEY 0x0100
25+#define KEYID_MASK_STATE_SHIFT 0x0200
26+#define KEYID_MASK_STATE_CTRL 0x0400
27+#define KEYID_MASK_STATE_ALT 0x0800
28+#define KEYID_MASK_STATE_LOCK_NUM 0x1000
29+#define KEYID_MASK_STATE_LOCK_CAPS 0x2000
30+#define KEYID_MASK_STATE_LOCK_SCROOL 0x4000
31+#define KEYID_MASK_EXTENDED 0x8000
32+
33+#define KEYID_ASCII_NUL 0x0000
34+#define KEYID_ASCII_SOH 0x0001
35+#define KEYID_ASCII_STX 0x0002
36+#define KEYID_ASCII_ETX 0x0003
37+#define KEYID_ASCII_EOT 0x0004
38+#define KEYID_ASCII_ENQ 0x0005
39+#define KEYID_ASCII_ACK 0x0006
40+#define KEYID_ASCII_BEL 0x0007
41+#define KEYID_ASCII_BS 0x0008 /*0x0e*/
42+#define KEYID_ASCII_HT 0x0009 /*0x0f*/
43+#define KEYID_ASCII_LF 0x000a /*0x1c*/
44+#define KEYID_ASCII_VT 0x000b
45+#define KEYID_ASCII_FF 0x000c
46+#define KEYID_ASCII_CR 0x000d
47+#define KEYID_ASCII_SO 0x000e
48+#define KEYID_ASCII_SI 0x000f
49+#define KEYID_ASCII_DLE 0x0010
50+#define KEYID_ASCII_DC1 0x0011
51+#define KEYID_ASCII_DC2 0x0012
52+#define KEYID_ASCII_DC3 0x0013
53+#define KEYID_ASCII_DC4 0x0014
54+#define KEYID_ASCII_NAK 0x0015
55+#define KEYID_ASCII_SYN 0x0016
56+#define KEYID_ASCII_ETB 0x0017
57+#define KEYID_ASCII_CAN 0x0018
58+#define KEYID_ASCII_EM 0x0019
59+#define KEYID_ASCII_SUB 0x001a
60+#define KEYID_ASCII_ESC 0x001b
61+#define KEYID_ASCII_FS 0x001c
62+#define KEYID_ASCII_GS 0x001d
63+#define KEYID_ASCII_RS 0x001e
64+#define KEYID_ASCII_US 0x001f
65+#define KEYID_ASCII_CHAR_START 0x0020
66+#define KEYID_ASCII_CHAR_END 0x007e
67+#define KEYID_ASCII_DEL 0x007f
68+
69+#define KEYID_ESC 0x0000
70+#define KEYID_F1 0x0001
71+#define KEYID_F2 0x0002
72+#define KEYID_F3 0x0003
73+#define KEYID_F4 0x0004
74+#define KEYID_F5 0x0005
75+#define KEYID_F6 0x0006
76+#define KEYID_F7 0x0007
77+#define KEYID_F8 0x0008
78+#define KEYID_F9 0x0009
79+#define KEYID_F10 0x000a
80+#define KEYID_F11 0x000b
81+#define KEYID_F12 0x000c
82+#define KEYID_LOCK_NUM 0x000d
83+#define KEYID_LOCK_SCROOL 0x000e
84+#define KEYID_LOCK_CAPS 0x000f
85+#define KEYID_SHIFT_L 0x0010
86+#define KEYID_SHIFT_R 0x0011
87+#define KEYID_CTRL_L 0x0012
88+#define KEYID_CTRL_R 0x0013
89+#define KEYID_ALT_L 0x0014
90+#define KEYID_ALT_R 0x0015
91+#define KEYID_DELETE 0x0016
92+#define KEYID_INSERT 0x0017
93+#define KEYID_PAUSE 0x0018
94+#define KEYID_BREAK 0x0019
95+#define KEYID_PRINT_SCREEN 0x001a
96+#define KEYID_SYS_RQ 0x001b
97+#define KEYID_CURSOR_U 0x001c
98+#define KEYID_CURSOR_D 0x001d
99+#define KEYID_CURSOR_L 0x001e
100+#define KEYID_CURSOR_R 0x001f
101+#define KEYID_PAGE_UP 0x0020
102+#define KEYID_PAGE_DOWN 0x0021
103+#define KEYID_HOME 0x0022
104+#define KEYID_END 0x0023
105+#define KEYID_ICON_L 0x0024
106+#define KEYID_ICON_R 0x0025
107+#define KEYID_MENU 0x0026
108+#define KEYID_KANJI 0x0027
109+#define KEYID_HIRAGANA 0x0028
110+#define KEYID_HENKAN 0x0029
111+#define KEYID_MUHENKAN 0x002a
112+
113+#define KEYID_KBD_ERROR 0x007e
114+#define KEYID_UNKNOWN 0x007f
115+
--- beta/tolset_chn_000/chnos_010/chnos/fifo.c (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/fifo.c (revision 306)
@@ -10,9 +10,11 @@
1010 fifo->size = size;
1111 fifo->buf = Memory_Allocate(memctrl, size);
1212 fifo->free = size; /*freesize*/
13- fifo->flags.flags = 0;
13+ fifo->flags.initialized = False;
14+ fifo->flags.overflow = False;
1415 fifo->p = 0; /*write*/
1516 fifo->q = 0; /*read*/
17+ fifo->flags.initialized = true;
1618 return fifo;
1719 }
1820
@@ -20,16 +22,20 @@
2022 {
2123 uint eflags;
2224
25+ if(!fifo->flags.initialized){
26+ return -1;
27+ }
28+
2329 eflags = IO_Load_EFlags();
2430 IO_CLI();
2531
26- if (fifo->free == 0 ) {
27- fifo->flags.bit.overflow = True;
32+ if(fifo->free == 0){
33+ fifo->flags.overflow = True;
2834 return -1;
29- }
35+ }
3036 fifo->buf[fifo->p] = data;
3137 fifo->p++;
32- if(fifo->p == fifo->size) {
38+ if(fifo->p == fifo->size){
3339 fifo->p = 0;
3440 }
3541 fifo->free--;
@@ -51,6 +57,10 @@
5157 uint *vargs;
5258 uint eflags;
5359
60+ if(!fifo->flags.initialized){
61+ return -1;
62+ }
63+
5464 eflags = IO_Load_EFlags();
5565 IO_CLI();
5666
@@ -79,6 +89,11 @@
7989 uint FIFO32_Get(DATA_FIFO32 *fifo)
8090 {
8191 int data;
92+
93+ if(!fifo->flags.initialized){
94+ return 0;
95+ }
96+
8297 if (fifo->free == fifo->size) { /*バッファが空の時は、最後に読みとられたデータを繰り返し返す*/
8398 if(fifo->q == 0){ /*読みだしポイントが最初のときは、最後に読みとられたデータは終端にある*/
8499 return fifo->buf[fifo->size];
@@ -96,17 +111,25 @@
96111
97112 uint FIFO32_Status(DATA_FIFO32 *fifo)
98113 {
114+ if(!fifo->flags.initialized){
115+ return 0;
116+ }
117+
99118 return fifo->size - fifo->free; /*バッファに存在するデータのエントリ数(エントリ数=uintの個数->エントリ数*4=使われているバイト数)*/
100119 }
101120
102121 void FIFO32_Free(DATA_FIFO32 *fifo)
103122 {
123+ if(!fifo->flags.initialized){
124+ return;
125+ }
126+
104127 System_Memory_Free(fifo->buf, fifo->size);
105128
106129 fifo->size = 0;
107130 fifo->buf = 0;
108131 fifo->free = 0; /*freesize*/
109- fifo->flags.flags = 0;
132+ fifo->flags.initialized = False;
110133 fifo->p = 0; /*write*/
111134 fifo->q = 0; /*read*/
112135
--- beta/tolset_chn_000/chnos_010/chnos/coredef0.h (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/coredef0.h (revision 306)
@@ -6,8 +6,9 @@
66
77 #ifdef CHNOSPROJECT_DEBUG
88 //#define CHNOSPROJECT_DEBUG_MEMORY /*定義するとメモリ関連のデバッグをオンにする*/
9- #define CHNOSPROJECT_DEBUG_EMULATOR_X86
10- #define CHNOSPROJECT_DEBUG_CALLBIOS
9+ //#define CHNOSPROJECT_DEBUG_EMULATOR_X86
10+ //#define CHNOSPROJECT_DEBUG_CALLBIOS
11+ //#define CHNOSPROJECT_DEBUG_FIFO
1112 #endif
1213
1314 /*defines*/
--- beta/tolset_chn_000/chnos_010/chnos/coredef1.h (revision 305)
+++ beta/tolset_chn_000/chnos_010/chnos/coredef1.h (revision 306)
@@ -197,11 +197,9 @@
197197 typedef struct FIFO32 {
198198 uint *buf;
199199 uint p, q, size, free;
200- union FIFO32_FLAGS {
201- uint flags;
202- struct FIFO32_FLAGS_BITS {
203- unsigned overflow : 1;
204- } bit;
200+ struct FIFO32_FLAGS {
201+ unsigned initialized : 1;
202+ unsigned overflow : 1;
205203 } flags;
206204 } DATA_FIFO32;
207205
旧リポジトリブラウザで表示