From 62a907d0b37d58c38b1cdf7bb1bac42231851f17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Thu, 7 Dec 2017 17:33:39 +0100 Subject: [PATCH] Kernel 0.9.1 : LibGui, MemMgr allow loading resources (FON,PIX....) into AUX MEM --- .Docs/KERNEL.md | 32 +- .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes .Fonts/SYS6X7.bdf | 3599 -------------------------------------- .Fonts/SYS8x16.fnt | Bin 0 -> 5232 bytes .Fonts/SYS8x8.fnt | Bin 0 -> 3200 bytes DRV/DHGR.DRV.S.BLT.txt | 18 +- FNT2FON.S.txt | 381 ++++ INC/A2osX.I.txt | 4 +- INC/KERNEL.I.txt | 13 +- INC/LIBGUI.I.txt | 14 +- INC/MACROS.I.txt | 4 +- SBIN/GUI.S.txt | 20 +- SBIN/GUIOSD.S.txt | 18 + SYS/KERNEL.S.JMP.txt | 4 +- SYS/KERNEL.S.MEM.txt | 122 +- 16 files changed, 578 insertions(+), 3651 deletions(-) delete mode 100644 .Fonts/SYS6X7.bdf create mode 100644 .Fonts/SYS8x16.fnt create mode 100644 .Fonts/SYS8x8.fnt create mode 100644 FNT2FON.S.txt diff --git a/.Docs/KERNEL.md b/.Docs/KERNEL.md index b1057124..fa2f804f 100644 --- a/.Docs/KERNEL.md +++ b/.Docs/KERNEL.md @@ -308,26 +308,48 @@ Create a new copy of this C-String ## Out: + A=hMem -# LoadStkObj.YA +# NewStkObj.YA -## In: +## In: ++ Y,A = Size Requested ## Out: -+ A=hMem ++ CC : success + + YA = PTR to Mem (Uninitialised) +* X = hMem ++ CS : + + A = EC + +# LoadStkObj +Load a file in AUX memory (Stock Objects) + +## In: ++ PUSHW = AUXTYPE (Handled by.... ++ PUSHB = TYPE ... ++ PUSHB = MODE ... ++ PUSHW = PATH ...FOpen) + +## Out: ++ Y,A = File Length ++ X = hMem of Loaded Object in AUX mem # GetStkObj.A ## In: ++ A = hMem ## Out: -+ A=hMem ++ Y,A = PTR to MemBlock (AUX Mem) ++ (X unmodified) # FreeStkObj.A ## In: ++ A = hMem To Free (AUX Memory) ## Out: -+ A=hMem ++ none. ++ (X,Y unmodified) # GetMemStat.YA diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 55c1bbf72b99663ed6b289c1832ff9b9018fa054..7fc16deee18f5241289e71fe805b39c4732ca3b4 100644 GIT binary patch delta 12170 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 acC3rvu`Xf9I>U~2BX+DC`Nq1$@&66e{eqAH delta 6432 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 NxWc@imI=1c{~M3W{8s<~ diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 4d36cf64f46534dd2ed8365d2b9bf50f9d4b0865..46e0fddfa7ce2932c60fe9887de0de2d278cdc32 100644 GIT binary patch delta 13884 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 L`;t!FrG5PW$as?# delta 13973 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 diff --git a/.Fonts/SYS6X7.bdf b/.Fonts/SYS6X7.bdf deleted file mode 100644 index 12b5e775..00000000 --- a/.Fonts/SYS6X7.bdf +++ /dev/null @@ -1,3599 +0,0 @@ -STARTFONT 2.1 -COMMENT Exported by Fony v1.4.7 -FONT SYS6X7 -SIZE 7 96 96 -FONTBOUNDINGBOX 9 6 0 -1 -STARTPROPERTIES 6 -COPYRIGHT "Created with Fony 1.4.7" -RESOLUTION_X 96 -RESOLUTION_Y 96 -FONT_ASCENT 6 -FONT_DESCENT 1 -DEFAULT_CHAR 0 -ENDPROPERTIES -CHARS 256 -STARTCHAR 000 -ENCODING 0 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -18 -20 -78 -84 -88 -84 -78 -ENDCHAR -STARTCHAR 001 -ENCODING 1 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -78 -84 -CC -84 -B4 -84 -78 -ENDCHAR -STARTCHAR 002 -ENCODING 2 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -78 -FC -B4 -FC -CC -FC -78 -ENDCHAR -STARTCHAR 003 -ENCODING 3 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -50 -F8 -F8 -70 -20 -00 -ENDCHAR -STARTCHAR 004 -ENCODING 4 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -70 -F8 -70 -20 -00 -ENDCHAR -STARTCHAR 005 -ENCODING 5 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -30 -30 -CC -CC -30 -78 -00 -ENDCHAR -STARTCHAR 006 -ENCODING 6 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -30 -78 -FC -FC -30 -78 -00 -ENDCHAR -STARTCHAR 007 -ENCODING 7 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -00 -60 -F0 -F0 -60 -00 -ENDCHAR -STARTCHAR 008 -ENCODING 8 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -FC -FC -CC -84 -84 -CC -FC -ENDCHAR -STARTCHAR 009 -ENCODING 9 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -00 -60 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 010 -ENCODING 10 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -FC -FC -CC -B4 -B4 -CC -FC -ENDCHAR -STARTCHAR 011 -ENCODING 11 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -38 -18 -68 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 012 -ENCODING 12 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -70 -88 -70 -20 -70 -20 -00 -ENDCHAR -STARTCHAR 013 -ENCODING 13 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -60 -40 -60 -40 -C0 -C0 -00 -ENDCHAR -STARTCHAR 014 -ENCODING 14 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -78 -48 -78 -48 -D8 -D8 -00 -ENDCHAR -STARTCHAR 015 -ENCODING 15 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -A8 -50 -A8 -50 -A8 -00 -ENDCHAR -STARTCHAR 016 -ENCODING 16 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -20 -F8 -20 -20 -20 -ENDCHAR -STARTCHAR 017 -ENCODING 17 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -20 -60 -E0 -60 -20 -00 -ENDCHAR -STARTCHAR 018 -ENCODING 18 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -70 -A8 -20 -A8 -70 -20 -ENDCHAR -STARTCHAR 019 -ENCODING 19 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -A0 -A0 -A0 -00 -A0 -00 -ENDCHAR -STARTCHAR 020 -ENCODING 20 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -78 -A8 -A8 -68 -28 -28 -00 -ENDCHAR -STARTCHAR 021 -ENCODING 21 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -20 -F8 -00 -00 -00 -ENDCHAR -STARTCHAR 022 -ENCODING 22 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -F8 -20 -20 -20 -ENDCHAR -STARTCHAR 023 -ENCODING 23 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -20 -20 -20 -E0 -20 -20 -20 -ENDCHAR -STARTCHAR 024 -ENCODING 24 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -70 -A8 -20 -20 -20 -20 -ENDCHAR -STARTCHAR 025 -ENCODING 25 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -80 -80 -80 -E0 -80 -80 -80 -ENDCHAR -STARTCHAR 026 -ENCODING 26 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -10 -F8 -10 -20 -00 -ENDCHAR -STARTCHAR 027 -ENCODING 27 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -40 -F8 -40 -20 -00 -ENDCHAR -STARTCHAR 028 -ENCODING 28 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -00 -80 -80 -F0 -00 -00 -ENDCHAR -STARTCHAR 029 -ENCODING 29 -SWIDTH 504 0 -DWIDTH 7 0 -BBX 7 7 0 -1 -BITMAP -00 -28 -44 -FE -44 -28 -00 -ENDCHAR -STARTCHAR 030 -ENCODING 30 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -20 -70 -F8 -00 -00 -ENDCHAR -STARTCHAR 031 -ENCODING 31 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -F8 -70 -20 -00 -00 -ENDCHAR -STARTCHAR 032 -ENCODING 32 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 033 -ENCODING 33 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -80 -80 -80 -80 -00 -80 -00 -ENDCHAR -STARTCHAR 034 -ENCODING 34 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -D8 -48 -90 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 035 -ENCODING 35 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -50 -F8 -50 -F8 -50 -00 -ENDCHAR -STARTCHAR 036 -ENCODING 36 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -78 -A0 -70 -28 -F0 -20 -ENDCHAR -STARTCHAR 037 -ENCODING 37 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -90 -20 -40 -90 -90 -00 -ENDCHAR -STARTCHAR 038 -ENCODING 38 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -60 -90 -60 -68 -90 -68 -00 -ENDCHAR -STARTCHAR 039 -ENCODING 39 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -C0 -40 -80 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 040 -ENCODING 40 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -80 -80 -80 -80 -40 -00 -ENDCHAR -STARTCHAR 041 -ENCODING 41 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -80 -40 -40 -40 -40 -80 -00 -ENDCHAR -STARTCHAR 042 -ENCODING 42 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -A8 -70 -A8 -20 -00 -ENDCHAR -STARTCHAR 043 -ENCODING 43 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -20 -F8 -20 -20 -00 -ENDCHAR -STARTCHAR 044 -ENCODING 44 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -00 -00 -00 -00 -40 -40 -80 -ENDCHAR -STARTCHAR 045 -ENCODING 45 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -00 -E0 -00 -00 -00 -ENDCHAR -STARTCHAR 046 -ENCODING 46 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -80 -00 -ENDCHAR -STARTCHAR 047 -ENCODING 47 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -20 -20 -40 -40 -80 -80 -00 -ENDCHAR -STARTCHAR 048 -ENCODING 48 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -B0 -D0 -90 -60 -00 -ENDCHAR -STARTCHAR 049 -ENCODING 49 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -C0 -40 -40 -40 -E0 -00 -ENDCHAR -STARTCHAR 050 -ENCODING 50 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -20 -40 -80 -F0 -00 -ENDCHAR -STARTCHAR 051 -ENCODING 51 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -20 -10 -90 -60 -00 -ENDCHAR -STARTCHAR 052 -ENCODING 52 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -80 -80 -80 -A0 -F0 -20 -00 -ENDCHAR -STARTCHAR 053 -ENCODING 53 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -F0 -80 -E0 -10 -90 -60 -00 -ENDCHAR -STARTCHAR 054 -ENCODING 54 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -70 -80 -E0 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 055 -ENCODING 55 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -20 -40 -40 -80 -80 -00 -ENDCHAR -STARTCHAR 056 -ENCODING 56 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -60 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 057 -ENCODING 57 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -70 -10 -10 -E0 -00 -ENDCHAR -STARTCHAR 058 -ENCODING 58 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -80 -00 -00 -80 -00 -00 -ENDCHAR -STARTCHAR 059 -ENCODING 59 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -00 -00 -40 -00 -40 -40 -80 -ENDCHAR -STARTCHAR 060 -ENCODING 60 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -20 -40 -80 -40 -20 -00 -ENDCHAR -STARTCHAR 061 -ENCODING 61 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -E0 -00 -E0 -00 -00 -ENDCHAR -STARTCHAR 062 -ENCODING 62 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -80 -40 -20 -40 -80 -00 -ENDCHAR -STARTCHAR 063 -ENCODING 63 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -70 -88 -10 -20 -00 -20 -00 -ENDCHAR -STARTCHAR 064 -ENCODING 64 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -70 -88 -A8 -A8 -A8 -A8 -B0 -ENDCHAR -STARTCHAR 065 -ENCODING 65 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 066 -ENCODING 66 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -E0 -90 -E0 -90 -90 -E0 -00 -ENDCHAR -STARTCHAR 067 -ENCODING 67 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -80 -80 -90 -60 -00 -ENDCHAR -STARTCHAR 068 -ENCODING 68 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -E0 -90 -90 -90 -90 -E0 -00 -ENDCHAR -STARTCHAR 069 -ENCODING 69 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -80 -C0 -80 -80 -E0 -00 -ENDCHAR -STARTCHAR 070 -ENCODING 70 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -80 -C0 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 071 -ENCODING 71 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -80 -B0 -90 -60 -00 -ENDCHAR -STARTCHAR 072 -ENCODING 72 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -A0 -A0 -A0 -E0 -A0 -A0 -00 -ENDCHAR -STARTCHAR 073 -ENCODING 73 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -40 -40 -40 -40 -E0 -00 -ENDCHAR -STARTCHAR 074 -ENCODING 74 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -40 -40 -40 -40 -80 -00 -ENDCHAR -STARTCHAR 075 -ENCODING 75 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -80 -90 -A0 -C0 -A0 -90 -00 -ENDCHAR -STARTCHAR 076 -ENCODING 76 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -80 -80 -80 -80 -80 -E0 -00 -ENDCHAR -STARTCHAR 077 -ENCODING 77 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -88 -D8 -A8 -88 -88 -88 -00 -ENDCHAR -STARTCHAR 078 -ENCODING 78 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -D0 -B0 -90 -90 -90 -00 -ENDCHAR -STARTCHAR 079 -ENCODING 79 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 080 -ENCODING 80 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -E0 -90 -E0 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 081 -ENCODING 81 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -90 -90 -A0 -50 -00 -ENDCHAR -STARTCHAR 082 -ENCODING 82 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -E0 -90 -E0 -C0 -A0 -90 -00 -ENDCHAR -STARTCHAR 083 -ENCODING 83 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -80 -60 -10 -90 -60 -00 -ENDCHAR -STARTCHAR 084 -ENCODING 84 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -40 -40 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 085 -ENCODING 85 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -90 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 086 -ENCODING 86 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -88 -88 -50 -50 -20 -20 -00 -ENDCHAR -STARTCHAR 087 -ENCODING 87 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -88 -88 -88 -A8 -D8 -88 -00 -ENDCHAR -STARTCHAR 088 -ENCODING 88 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -A0 -A0 -40 -40 -A0 -A0 -00 -ENDCHAR -STARTCHAR 089 -ENCODING 89 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -A0 -A0 -A0 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 090 -ENCODING 90 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -E0 -20 -40 -40 -80 -E0 -00 -ENDCHAR -STARTCHAR 091 -ENCODING 91 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -C0 -80 -80 -80 -80 -C0 -00 -ENDCHAR -STARTCHAR 092 -ENCODING 92 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -80 -80 -40 -40 -20 -20 -00 -ENDCHAR -STARTCHAR 093 -ENCODING 93 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -C0 -40 -40 -40 -40 -C0 -00 -ENDCHAR -STARTCHAR 094 -ENCODING 94 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -50 -88 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 095 -ENCODING 95 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -F8 -ENDCHAR -STARTCHAR 096 -ENCODING 96 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -80 -40 -20 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 097 -ENCODING 97 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -C0 -20 -60 -A0 -60 -00 -ENDCHAR -STARTCHAR 098 -ENCODING 98 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -80 -C0 -A0 -A0 -C0 -00 -ENDCHAR -STARTCHAR 099 -ENCODING 99 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -60 -80 -80 -80 -60 -00 -ENDCHAR -STARTCHAR 100 -ENCODING 100 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -20 -60 -A0 -A0 -60 -00 -ENDCHAR -STARTCHAR 101 -ENCODING 101 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -40 -A0 -E0 -80 -60 -00 -ENDCHAR -STARTCHAR 102 -ENCODING 102 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -60 -80 -C0 -80 -80 -00 -ENDCHAR -STARTCHAR 103 -ENCODING 103 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -60 -90 -90 -70 -10 -60 -ENDCHAR -STARTCHAR 104 -ENCODING 104 -SWIDTH 648 0 -DWIDTH 9 0 -BBX 9 7 0 -1 -BITMAP -0000 -8000 -8000 -E000 -9000 -9000 -0000 -ENDCHAR -STARTCHAR 105 -ENCODING 105 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -80 -00 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 106 -ENCODING 106 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -00 -40 -00 -40 -40 -40 -80 -ENDCHAR -STARTCHAR 107 -ENCODING 107 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -80 -80 -A0 -C0 -A0 -00 -ENDCHAR -STARTCHAR 108 -ENCODING 108 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -80 -80 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 109 -ENCODING 109 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -50 -A8 -A8 -A8 -A8 -00 -ENDCHAR -STARTCHAR 110 -ENCODING 110 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -C0 -A0 -A0 -A0 -A0 -00 -ENDCHAR -STARTCHAR 111 -ENCODING 111 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -40 -A0 -A0 -A0 -40 -00 -ENDCHAR -STARTCHAR 112 -ENCODING 112 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -E0 -90 -90 -90 -E0 -80 -ENDCHAR -STARTCHAR 113 -ENCODING 113 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -70 -90 -90 -90 -70 -10 -ENDCHAR -STARTCHAR 114 -ENCODING 114 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -B0 -C0 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 115 -ENCODING 115 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -70 -80 -60 -10 -E0 -00 -ENDCHAR -STARTCHAR 116 -ENCODING 116 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -80 -C0 -80 -80 -60 -00 -ENDCHAR -STARTCHAR 117 -ENCODING 117 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -A0 -A0 -A0 -A0 -40 -00 -ENDCHAR -STARTCHAR 118 -ENCODING 118 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -A0 -A0 -A0 -40 -40 -00 -ENDCHAR -STARTCHAR 119 -ENCODING 119 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -A8 -A8 -A8 -A8 -50 -00 -ENDCHAR -STARTCHAR 120 -ENCODING 120 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -A0 -A0 -40 -A0 -A0 -00 -ENDCHAR -STARTCHAR 121 -ENCODING 121 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -90 -90 -70 -10 -E0 -00 -ENDCHAR -STARTCHAR 122 -ENCODING 122 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -E0 -20 -40 -80 -E0 -00 -ENDCHAR -STARTCHAR 123 -ENCODING 123 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -30 -40 -40 -C0 -40 -40 -30 -ENDCHAR -STARTCHAR 124 -ENCODING 124 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -80 -80 -80 -80 -80 -80 -80 -ENDCHAR -STARTCHAR 125 -ENCODING 125 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -C0 -20 -20 -30 -20 -20 -C0 -ENDCHAR -STARTCHAR 126 -ENCODING 126 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -A0 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 127 -ENCODING 127 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -A8 -50 -A8 -50 -A8 -50 -A8 -ENDCHAR -STARTCHAR 128 -ENCODING 128 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -30 -48 -E0 -40 -E0 -48 -30 -ENDCHAR -STARTCHAR 129 -ENCODING 129 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 130 -ENCODING 130 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -00 -00 -00 -C0 -40 -80 -00 -ENDCHAR -STARTCHAR 131 -ENCODING 131 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -10 -20 -20 -70 -20 -20 -C0 -ENDCHAR -STARTCHAR 132 -ENCODING 132 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -D8 -48 -90 -00 -ENDCHAR -STARTCHAR 133 -ENCODING 133 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -A8 -00 -ENDCHAR -STARTCHAR 134 -ENCODING 134 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -F8 -20 -20 -20 -20 -20 -ENDCHAR -STARTCHAR 135 -ENCODING 135 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -F8 -20 -20 -20 -F8 -20 -ENDCHAR -STARTCHAR 136 -ENCODING 136 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -50 -88 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 137 -ENCODING 137 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -C8 -D0 -20 -20 -58 -98 -00 -ENDCHAR -STARTCHAR 138 -ENCODING 138 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -70 -80 -60 -10 -E0 -00 -ENDCHAR -STARTCHAR 139 -ENCODING 139 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -20 -40 -80 -40 -20 -00 -ENDCHAR -STARTCHAR 140 -ENCODING 140 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -7C -90 -98 -90 -90 -7C -00 -ENDCHAR -STARTCHAR 141 -ENCODING 141 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -08 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 142 -ENCODING 142 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -F0 -20 -40 -80 -F0 -00 -ENDCHAR -STARTCHAR 143 -ENCODING 143 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 144 -ENCODING 144 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 145 -ENCODING 145 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -80 -C0 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 146 -ENCODING 146 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -C0 -40 -80 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 147 -ENCODING 147 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -48 -90 -D8 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 148 -ENCODING 148 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -D8 -48 -90 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 149 -ENCODING 149 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -00 -40 -E0 -40 -00 -ENDCHAR -STARTCHAR 150 -ENCODING 150 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -E0 -00 -ENDCHAR -STARTCHAR 151 -ENCODING 151 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -F8 -00 -ENDCHAR -STARTCHAR 152 -ENCODING 152 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -A0 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 153 -ENCODING 153 -SWIDTH 576 0 -DWIDTH 8 0 -BBX 8 7 0 -1 -BITMAP -00 -00 -F1 -5B -55 -51 -00 -ENDCHAR -STARTCHAR 154 -ENCODING 154 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -70 -80 -60 -10 -E0 -00 -ENDCHAR -STARTCHAR 155 -ENCODING 155 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -80 -40 -20 -40 -80 -00 -ENDCHAR -STARTCHAR 156 -ENCODING 156 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -78 -A0 -B0 -A0 -78 -00 -ENDCHAR -STARTCHAR 157 -ENCODING 157 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 158 -ENCODING 158 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -00 -F0 -20 -40 -F0 -00 -ENDCHAR -STARTCHAR 159 -ENCODING 159 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -50 -88 -88 -70 -20 -20 -00 -ENDCHAR -STARTCHAR 160 -ENCODING 160 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 161 -ENCODING 161 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -80 -00 -80 -80 -80 -80 -ENDCHAR -STARTCHAR 162 -ENCODING 162 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -20 -70 -80 -70 -20 -00 -ENDCHAR -STARTCHAR 163 -ENCODING 163 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -30 -48 -C0 -70 -40 -F8 -00 -ENDCHAR -STARTCHAR 164 -ENCODING 164 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -88 -70 -50 -70 -88 -00 -ENDCHAR -STARTCHAR 165 -ENCODING 165 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -88 -50 -20 -70 -20 -70 -20 -ENDCHAR -STARTCHAR 166 -ENCODING 166 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -80 -80 -80 -00 -80 -80 -80 -ENDCHAR -STARTCHAR 167 -ENCODING 167 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -C0 -60 -30 -90 -60 -ENDCHAR -STARTCHAR 168 -ENCODING 168 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -A0 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 169 -ENCODING 169 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -78 -84 -B4 -A4 -B4 -84 -78 -ENDCHAR -STARTCHAR 170 -ENCODING 170 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -C0 -20 -60 -A0 -60 -00 -00 -ENDCHAR -STARTCHAR 171 -ENCODING 171 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -28 -50 -A0 -50 -28 -00 -ENDCHAR -STARTCHAR 172 -ENCODING 172 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -00 -F0 -10 -10 -00 -00 -ENDCHAR -STARTCHAR 173 -ENCODING 173 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 174 -ENCODING 174 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -78 -84 -B4 -A4 -A4 -84 -78 -ENDCHAR -STARTCHAR 175 -ENCODING 175 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -F8 -00 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 176 -ENCODING 176 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -A0 -40 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 177 -ENCODING 177 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -D8 -20 -20 -F8 -00 -ENDCHAR -STARTCHAR 178 -ENCODING 178 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -A0 -40 -80 -E0 -00 -00 -ENDCHAR -STARTCHAR 179 -ENCODING 179 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -C0 -20 -40 -20 -C0 -00 -00 -ENDCHAR -STARTCHAR 180 -ENCODING 180 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -80 -00 -00 -00 -00 -00 -ENDCHAR -STARTCHAR 181 -ENCODING 181 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -A0 -A0 -A0 -E0 -80 -ENDCHAR -STARTCHAR 182 -ENCODING 182 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -78 -E8 -E8 -68 -28 -28 -28 -ENDCHAR -STARTCHAR 183 -ENCODING 183 -SWIDTH 72 0 -DWIDTH 1 0 -BBX 1 7 0 -1 -BITMAP -00 -00 -00 -80 -00 -00 -00 -ENDCHAR -STARTCHAR 184 -ENCODING 184 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -40 -80 -ENDCHAR -STARTCHAR 185 -ENCODING 185 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -C0 -40 -40 -00 -00 -00 -ENDCHAR -STARTCHAR 186 -ENCODING 186 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -A0 -A0 -40 -00 -00 -00 -ENDCHAR -STARTCHAR 187 -ENCODING 187 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -A0 -50 -28 -50 -A0 -00 -ENDCHAR -STARTCHAR 188 -ENCODING 188 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -C4 -48 -50 -28 -4C -84 -00 -ENDCHAR -STARTCHAR 189 -ENCODING 189 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -C4 -48 -50 -2C -44 -88 -0C -ENDCHAR -STARTCHAR 190 -ENCODING 190 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -80 -44 -88 -50 -A8 -4C -84 -ENDCHAR -STARTCHAR 191 -ENCODING 191 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -00 -20 -40 -88 -70 -00 -ENDCHAR -STARTCHAR 192 -ENCODING 192 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -40 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 193 -ENCODING 193 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 194 -ENCODING 194 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 195 -ENCODING 195 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 196 -ENCODING 196 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 197 -ENCODING 197 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -20 -50 -50 -F8 -88 -00 -ENDCHAR -STARTCHAR 198 -ENCODING 198 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -3C -30 -58 -50 -F0 -9C -00 -ENDCHAR -STARTCHAR 199 -ENCODING 199 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -90 -80 -80 -90 -60 -C0 -ENDCHAR -STARTCHAR 200 -ENCODING 200 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -40 -F0 -80 -E0 -80 -F0 -00 -ENDCHAR -STARTCHAR 201 -ENCODING 201 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -20 -F0 -80 -E0 -80 -F0 -00 -ENDCHAR -STARTCHAR 202 -ENCODING 202 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -F0 -80 -E0 -80 -F0 -00 -ENDCHAR -STARTCHAR 203 -ENCODING 203 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -F0 -80 -E0 -80 -F0 -00 -ENDCHAR -STARTCHAR 204 -ENCODING 204 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -80 -40 -40 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 205 -ENCODING 205 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -80 -80 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 206 -ENCODING 206 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -A0 -40 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 207 -ENCODING 207 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -A0 -40 -40 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 208 -ENCODING 208 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -70 -48 -48 -E8 -48 -70 -00 -ENDCHAR -STARTCHAR 209 -ENCODING 209 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -B0 -D0 -B0 -90 -90 -00 -ENDCHAR -STARTCHAR 210 -ENCODING 210 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -40 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 211 -ENCODING 211 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -20 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 212 -ENCODING 212 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 213 -ENCODING 213 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 214 -ENCODING 214 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 215 -ENCODING 215 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -00 -00 -A0 -40 -A0 -00 -00 -ENDCHAR -STARTCHAR 216 -ENCODING 216 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -70 -A8 -A8 -70 -40 -00 -ENDCHAR -STARTCHAR 217 -ENCODING 217 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -40 -28 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 218 -ENCODING 218 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -A8 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 219 -ENCODING 219 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -50 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 220 -ENCODING 220 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -50 -88 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 221 -ENCODING 221 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -A8 -88 -70 -20 -20 -00 -ENDCHAR -STARTCHAR 222 -ENCODING 222 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -80 -E0 -90 -90 -90 -E0 -80 -ENDCHAR -STARTCHAR 223 -ENCODING 223 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -70 -48 -70 -48 -48 -70 -C0 -ENDCHAR -STARTCHAR 224 -ENCODING 224 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -40 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 225 -ENCODING 225 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -20 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 226 -ENCODING 226 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 227 -ENCODING 227 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 228 -ENCODING 228 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 229 -ENCODING 229 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -E0 -10 -70 -90 -70 -00 -ENDCHAR -STARTCHAR 230 -ENCODING 230 -SWIDTH 432 0 -DWIDTH 6 0 -BBX 6 7 0 -1 -BITMAP -00 -2C -50 -58 -F0 -9C -00 -ENDCHAR -STARTCHAR 231 -ENCODING 231 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -60 -90 -80 -90 -60 -C0 -ENDCHAR -STARTCHAR 232 -ENCODING 232 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -40 -60 -90 -F0 -80 -70 -00 -ENDCHAR -STARTCHAR 233 -ENCODING 233 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -20 -60 -90 -F0 -80 -70 -00 -ENDCHAR -STARTCHAR 234 -ENCODING 234 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -60 -90 -F0 -80 -70 -00 -ENDCHAR -STARTCHAR 235 -ENCODING 235 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -60 -90 -F0 -80 -70 -00 -ENDCHAR -STARTCHAR 236 -ENCODING 236 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -80 -40 -00 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 237 -ENCODING 237 -SWIDTH 144 0 -DWIDTH 2 0 -BBX 2 7 0 -1 -BITMAP -40 -80 -00 -80 -80 -80 -00 -ENDCHAR -STARTCHAR 238 -ENCODING 238 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -40 -A0 -00 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 239 -ENCODING 239 -SWIDTH 216 0 -DWIDTH 3 0 -BBX 3 7 0 -1 -BITMAP -A0 -00 -40 -40 -40 -40 -00 -ENDCHAR -STARTCHAR 240 -ENCODING 240 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 241 -ENCODING 241 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -E0 -90 -90 -90 -90 -00 -ENDCHAR -STARTCHAR 242 -ENCODING 242 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -40 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 243 -ENCODING 243 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -20 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 244 -ENCODING 244 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -60 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 245 -ENCODING 245 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -50 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 246 -ENCODING 246 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -90 -60 -90 -90 -90 -60 -00 -ENDCHAR -STARTCHAR 247 -ENCODING 247 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -20 -00 -F8 -00 -20 -00 -ENDCHAR -STARTCHAR 248 -ENCODING 248 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -78 -98 -A8 -A8 -C8 -F0 -80 -ENDCHAR -STARTCHAR 249 -ENCODING 249 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -40 -A8 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 250 -ENCODING 250 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -A8 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 251 -ENCODING 251 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -20 -D8 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 252 -ENCODING 252 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -50 -88 -88 -88 -88 -78 -00 -ENDCHAR -STARTCHAR 253 -ENCODING 253 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -10 -A8 -88 -70 -20 -20 -00 -ENDCHAR -STARTCHAR 254 -ENCODING 254 -SWIDTH 288 0 -DWIDTH 4 0 -BBX 4 7 0 -1 -BITMAP -00 -80 -E0 -90 -90 -E0 -80 -ENDCHAR -STARTCHAR 255 -ENCODING 255 -SWIDTH 360 0 -DWIDTH 5 0 -BBX 5 7 0 -1 -BITMAP -00 -00 -00 -00 -00 -00 -00 -ENDCHAR -ENDFONT diff --git a/.Fonts/SYS8x16.fnt b/.Fonts/SYS8x16.fnt new file mode 100644 index 0000000000000000000000000000000000000000..7fd0ac651ec478302ffcf6339d1689e0039706b8 GIT binary patch literal 5232 zcmZ9PKaV3x8Ha1TfnC7R!`;R^BS(;|jF$kUMy>Njq!tm`c^SbVce|~#4d-e9s+xGgCPp^LW*~{lwzx>UwfA#$8qt~ymZ2HYrd;R9R{pfZsPvs9`_^n&qwLPJ#mu@ci|rW@A5J}(##()qtFF3us{lYuLaR zc5r|roS+z?4`Z0Z4Cb(a7FMu^4Qyct2ROnBil3klW0=AW=CFVkR8BeHg(9n8FO^uz(g;u!aq6VFw2|!U>8G(1$ThVFq(pKnp8a z!v?mng99Al1jUEw!x*M8gE=gqg%zw}16$a^0giBj;wkzthAGURK5_G>jeqBF_P&Yb zi?Z97u}NJDF*PyWq^e1=PAN52=|YS#c;`wUYV3Tlan)2Qb>*cGKE~SJmL^bMW&w9A z4T);q^_I`^=MQFm%{$$W*<_j_FcEH5{gX-0i&s-_f=ijRoRq* z9+SRO!_Q=*2-giWF)-$N?e;IK7^@fi{kzaK;oaWLcEk~fGM~;N$mfXoVjL;HvLryl z^PUJb$;zMI1jsF+ZZ8&`;=4yyy9MTGcdF zyS{VJSwCnusF2FB!}w%086A`AxoY|wwc+_X5Z#* zQ1(x+k=cxsS9T8R5T_wFl1Q(;9>y zx<==b=5sv1)w)REE^FpvRa(9JdfsGz!$jJ?k3;#emivZ$sd>c`I<7qVBZnB*a_KG} z=1BqdFlp_VJ@bk9y~Rf{X!rTC;>)xu#=+;d(hZ{1qo&&DbHHpCv(I6Jv)k=5mU=(k z5M!e;E__M8W$_!vmN0r{D9<~5LYoKXFVAJ7p`g7!YjV6vabh*5teH6WzeJuJyRT^d!oKdLa( zIUK^$MhO^VUenUoH1k||^!dW$dSwIHE_Lp6uje%RuU_^w)cK|NbS`x7lb+Z0SL_4E z+5j4BLu)K``J?9XpABI4yqoCoR#En{FN}G22-R9>5)szPB2A}1wR-NgAMAyJF?L|i z21%wq!RrRMqlo|3^S(kt^|bqp{5FBxgYy$BZVde5MzoCN`!4bdI^RE$+v?%C&#%2O z2tBYK>F?K*(eK!khv)l=dAlESIOY%G>pmiSA7tO=bF_q$FErNm%BS6)EU0NcAiiYf zmt_Tye-@AS4L`asw1IU0=$AQu$p@y;_sWxvrEX)1SpD-DdDKmwp1N?A^z(VFd0p8i z#}=SKy0a_QXDEl|A92QZwIX9y`8V9^EI&|GihISkX1-7l_fzaT0gOXSU~3~ z-tc{g{X%_lxUVn%4d;)@q~vS^D4rocwx0QK{^A3^^FX3rJ%Q-P?ZeUgg5pYD!6SY* z)@jpN8P@u0%BK>qGRR_Xsqf7U*Jt%?`Sl}m6RYTv{m=Vn%YVCP%iDkOMW@1FwgU;o z9~{yJr0ZUWb3Yunz90FAKQG=r{OOv9KWsK@hH6Si^k(wBc~@=tFT8=%X`^m7EtPvX1#d3?kC5dSc5 zE3h8>7%~ z&-I7;%3t#*=Le0P-|Sy+97U~Y`aI&ll?Tn9^JM6UNsZ6j@Lau~4?Xu?#}^)+^zR>C zw>p8m3+y=Rbn8I!UBz0$X{DLlP|x{igd2)Xrg_QiWr}a(V931`wi#Inq02t`7SBE?v z*2A>@$~&5@S#R4#8L=x%wW2zzsmXJZujMI U^+fIW*X^gTKKtZ#9u1%W2b_n-bpQYW literal 0 HcmV?d00001 diff --git a/.Fonts/SYS8x8.fnt b/.Fonts/SYS8x8.fnt new file mode 100644 index 0000000000000000000000000000000000000000..a80998e53e18c1e8474d1520052b58916b7da361 GIT binary patch literal 3200 zcmYk-K}aOo8Nl&xJBed9g(IE{ZB}Xaka!p>&f-?2P|`WYQ;_7+r`mR`nUUI!^bBsT z+uP1~S|o?yX_P=f$fb{xlVqS!Xo3_I@GyuPX*@U}!yqQiG*VRO|GjF%zV_Fz->X;e zd+*h&rxc!8B0r!1#n^BDxb#i!@xw+><<6;>hphPOl_?{;1n8{o?4?N7?9TW-creMpNy_eD#y{%L>-8 zjty*K8%^wB7kfCsA&zm5OI+gyg`f1x#~8veN*KokrclN#=1@Tui>P4*Ygoqywy=#R zcCd>*9N-YgIL9Tfaf3o1@iBy9lrWA7OreZf%%OrR7E!|r*07EZY+)Ns>|hsrIKUx} zagIw|;|7I0#K#bZQNlPTFoiN^F^3AOSVRpgSi?Ftu!U_jv4dUg;Q)s?#yKu=jT;pD ziH{)+ql9rxUO#U2iDh+~}N64$sv!6H6}FpLt$F@Y(RF^f4=P_-J*|MvXl=JQ6Qd(z#1 z(`|%Vmet)s8FcF=ck6DJy&iN2O~s%qVtbw~((S(4r+rtvpj-|->F#g7e7U*by?f{G zcS({&UJwMH-LPlw&p6J~ReN=Qb$nDGh4smGDkp`%t}J3&j_&|N-Fmc{pD)6RB$ z-*;?*&2N#w>v{o~94Dp2JT2)3NqZ%|CVdvI<7W~jr|H`y66eYxrIan#Px9QNzUYNX zW?7QP9ZSouA9q*?NfYhBr+uP-n%6CRi4Zys4a^sDHHwZ;!|MR}tv6~MTjyJEot>S< z#HWKaNhA$|dJv>MPS%a*nT9-vFqN$OD0)=Q^4z~N*IxzG!ZYT!L|8piB%fFelkr>x zVH5@za>epggG^fQve&IvOIjE2&t8$cA*IkY@qGFtd~zBUO*slLD7W3B&hzhizg#Az z8jtQB;qKSjJNly&y3%@v5J{H2aH_3LBI5dfBszJkuON|b5IbT&hb@-jHgz4dHd>6V zI?uK3GyUKnT25l(7cHu(*K*1_xuMULt|%|-ig((6xEwG~U2KhSn@C4XZC@AQ!qjTL z$Xi_i@{Z2H^r!12a>|Npho-+zM2(Y>R zFJ~^MtmBL8eID(ChVN-Rvp%#ldD2^tddp=99{1<#ljIvscP9-K;-!A%>&{%YR+Ckk zX1gcJD=zY<>vNlH$CRlzlUa&p&@?=AVCmoqt%g z|EG@m)v-07B)x|Q%1nM+|GrP_ZxdI0<@bGh{As=BHodS(Ov?MU?NL*2+j=Z&>Y8}e zlbbSMT9wz2ntJW;bN!n9+?mlvGUMds50dxOl@Gn^T2HU0esc1Isn=-QPMh4e*Z#Gq zuDNe=Qv20WjB2IiarM_s@4EJH`q9CWZs(=r?)H+l*PmCtbhnqZPOtIao&NKb_bN&{ zNrxwxwK(`fd?(fYnAf_wN^KUq1fo3q44Fkp2g;e1*{f literal 0 HcmV?d00001 diff --git a/DRV/DHGR.DRV.S.BLT.txt b/DRV/DHGR.DRV.S.BLT.txt index 4e82b126..cc27a76e 100644 --- a/DRV/DHGR.DRV.S.BLT.txt +++ b/DRV/DHGR.DRV.S.BLT.txt @@ -18,7 +18,23 @@ AUTO 6 * S.CB.DstPtr : pointer to Save Buffer *-------------------------------------- BITBLT >LDYA CB.CACHE+S.CB.SrcPtr - >STYA ZPBMDataPtr + bne BITBLT.1 + +* CB.CACHE+S.CB.SrcPtr+1 = 0, AUX Handle in CB.CACHE+S.CB.SrcPtr + + tya + >SYSCALL GetStkObj.A + + sta SETREADAUX + sta SETWRITEAUX + + jsr BITBLT.1 + + sta CLRREADAUX + sta CLRWRITEAUX + rts + +BITBLT.1 >STYA ZPBMDataPtr ldy #S.BM-1 diff --git a/FNT2FON.S.txt b/FNT2FON.S.txt new file mode 100644 index 00000000..ac18d4cc --- /dev/null +++ b/FNT2FON.S.txt @@ -0,0 +1,381 @@ +PR#3 +PREFIX /A2OSX.BUILD +NEW +INC 1 +AUTO 6 + .LIST OFF + .OP 65C02 + .OR $2000 + .TF /A2OSX.BUILD/FNT2FON +*-------------------------------------- + .INB /A2OSX.BUILD/INC/MACROS.I + .INB /A2OSX.BUILD/INC/A2OSX.I + .INB /A2OSX.BUILD/INC/LIBGUI.I +*-------------------------------------- +ZPPTR1 .EQ ZPBIN +ZPInputBufPtr .EQ ZPBIN+2 +ZPInputBufLen .EQ ZPBIN+4 +ZPInputDataPtr .EQ ZPBIN+6 +ZPBMPRowBytes .EQ ZPBIN+8 +ZPPIXRowBytes .EQ ZPBIN+10 +ZPBufPtr .EQ ZPBIN+12 +ZPLineCount .EQ ZPBIN+14 +*-------------------------------------- +* File Header (16 Bytes) +*-------------------------------------- +CS.START cld + jmp (.1,x) + .DA #$61 6502,Level 1 (65c02) + .DA #1 BIN Layout Version 1 + .DA 0 + .DA CS.END-CS.START CS + .DA DS.END-DS.START DS + .DA #64 SS + .DA #16 ZP + .DA 0 +*-------------------------------------- +* Relocation Table +*-------------------------------------- +.1 .DA CS.INIT + .DA CS.RUN + .DA CS.DOEVENT + .DA CS.QUIT +L.MSG.USAGE .DA MSG.USAGE +L.MSG.FILE.OK .DA MSG.FILE.OK +L.MSG.HEADER.OK .DA MSG.HEADER.OK +L.MSG.HEADER.KO .DA MSG.HEADER.KO +L.MSG.DONE .DA MSG.DONE + .DA 0 +*-------------------------------------- +CS.INIT +.1 >INC.G ArgCount + >SYSCALL GetArg.A + bcs .7 + + >STYA ZPPtr1 + + lda (ZPPtr1) + cmp #'-' + bne .4 + + ldy #1 + lda (ZPPtr1),y + + ldx OptionList + +.2 cmp OptionList,x + beq .3 + dex + bne .2 + +.99 >LDYA L.MSG.USAGE + >SYSCALL PrintF.YA + lda #K.E.SYN + sec + rts + +.3 ldy OptionVars-1,x + lda #$80 + sta (pData),y + bra .1 + +.4 >LDA.G hInputBuf + bne .5 + jsr CS.INIT.OPENINPUT + bcc .1 scan for any other args + rts + +.5 >LDA.G hOutputFile + bne .99 + jsr CS.INIT.CREATEOUTPUT + bcc .1 scan for any other args + rts + +.7 >LDA.G hOutputFile + beq .99 + + >LDYAI 256 + >SYSCALL GetMem.YA + bcs CS.INIT.RTS + + >STYA ZPBufPtr + txa + >STA.G hBuf + +.8 clc +CS.INIT.RTS rts +*-------------------------------------- +CS.INIT.OPENINPUT + >PUSHWI 0 Aux type + >PUSHBI 0 Type + >PUSHBI SYS.FOpen.R + >PUSHW ZPPtr1 + >SYSCALL LoadFile + bcs CS.INIT.RTS + + >STYA ZPInputBufLen + >PUSHYA + + txa + >STA.G hInputBuf + >SYSCALL GetMemPtr.A + >STYA ZPInputBufPtr + + >LDYA L.MSG.FILE.OK + >SYSCALL PrintF.YA + + lda (ZPInputBufPtr) + cmp #'B' + bne .99 + + ldy #1 + lda (ZPInputBufPtr),y + cmp #'M' + bne .99 + + ldy #$1C BBP LO + lda (ZPInputBufPtr),y + cmp #1 + bne .99 + iny BBP HI + lda (ZPInputBufPtr),y + bne .99 + + ldy #$16 H LO + lda (ZPInputBufPtr),y + >STA.G PIX.Header+S.BM.H + pha + eor #$ff + sta ZPLineCount + + ldy #$17 H HI + lda (ZPInputBufPtr),y + >STA.G PIX.Header+S.BM.H+1 + >PUSHA + eor #$ff + sta ZPLineCount+1 + + pla + >PUSHA + + ldy #$12 W LO + lda (ZPInputBufPtr),y + >STA.G PIX.Header+S.BM.W + pha + + ldy #$13 W HI + lda (ZPInputBufPtr),y + >STA.G PIX.Header+S.BM.W+1 + >PUSHA + pla + >PUSHA + + >LDYA L.MSG.HEADER.OK + >SYSCALL PrintF.YA + clc + rts + +.99 >LDYA L.MSG.HEADER.KO + >SYSCALL PrintF.YA + lda #K.E.IBIN + sec + rts +*-------------------------------------- +CS.INIT.CREATEOUTPUT + >PUSHWI 0 Aux type + >PUSHBI $CB PIX Type + >PUSHBI SYS.FOpen.W+SYS.FOpen.X + >PUSHW ZPPtr1 + >SYSCALL FOpen + bcs .9 + >STA.G hOutputFile +.9 rts +*-------------------------------------- +CS.RUN lda #S.BM.F.BBP1 + >STA.G PIX.Header+S.BM.F + + >LDA.G PIX.Header+S.BM.W + sta ZPBMPRowBytes + sta ZPPIXRowBytes + + iny + lda (pData),y + sta ZPBMPRowBytes+1 + sta ZPPIXRowBytes+1 + + lda ZPBMPRowBytes + and #%00011111 + beq .1 + lda ZPBMPRowBytes + and #%11100000 + clc + adc #%00100000 + bcc .1 + + inc ZPBMPRowBytes+1 + +.1 lsr ZPBMPRowBytes+1 + ror + lsr ZPBMPRowBytes+1 + ror + lsr ZPBMPRowBytes+1 + ror + sta ZPBMPRowBytes + + lda ZPPIXRowBytes + and #%00000111 + beq .2 + lda ZPPIXRowBytes + and #%11111000 + clc + adc #%00001000 + bcc .2 + + inc ZPPIXRowBytes+1 + +.2 lsr ZPPIXRowBytes+1 + ror + lsr ZPPIXRowBytes+1 + ror + lsr ZPPIXRowBytes+1 + ror + sta ZPPIXRowBytes + >STA.G PIX.Header+S.BM.RowBytes + + lda ZPInputBufPtr + clc + adc ZPInputBufLen + sta ZPInputDataPtr + lda ZPInputBufPtr+1 + adc ZPInputBufLen+1 + sta ZPInputDataPtr+1 + + >PUSHEA.G PIX.Header + >PUSHWI S.BM + >LDA.G hOutputFile + >PUSHA + >SYSCALL FWrite + bcs CS.RUN.RTS + +CS.RUN.LOOP inc ZPLineCount + bne .1 + inc ZPLineCount+1 + beq .8 + +.1 lda ZPInputDataPtr + sec + sbc ZPBMPRowBytes + sta ZPInputDataPtr + lda ZPInputDataPtr+1 + sbc ZPBMPRowBytes+1 + sta ZPInputDataPtr+1 + + >LDYA ZPBufPtr + >STYA ZPPTR1 + + ldy #0 + +.2 lda (ZPInputDataPtr),y + tax + lda TWIST,x + sta (ZPPTR1) + inc ZPPTR1 + bne .3 + + inc ZPPTR1+1 + +.3 iny + cpy ZPPIXRowBytes + bne .2 + + >PUSHW ZPBufPtr + >PUSHW ZPPIXRowBytes + >LDA.G hOutputFile + >PUSHA + >SYSCALL FWrite + bcs CS.RUN.RTS + + + + bra CS.RUN.LOOP + + +.8 >LDYA L.MSG.DONE + >SYSCALL PrintF.YA + + lda #0 + sec +CS.RUN.RTS rts +*-------------------------------------- +CS.DOEVENT sec + rts +*-------------------------------------- +CS.QUIT >LDA.G hBuf + beq .1 + >SYSCALL FreeMem.A + +.1 >LDA.G hOutputFile + beq .8 + + >SYSCALL FClose.A + +.8 clc + rts +*-------------------------------------- +CS.END +TWIST .DA #%00000000,#%10000000,#%01000000,#%11000000,#%00100000,#%10100000,#%01100000,#%11100000 + .DA #%00010000,#%10010000,#%01010000,#%11010000,#%00110000,#%10110000,#%01110000,#%11110000 + .DA #%00001000,#%10001000,#%01001000,#%11001000,#%00101000,#%10101000,#%01101000,#%11101000 + .DA #%00011000,#%10011000,#%01011000,#%11011000,#%00111000,#%10111000,#%01111000,#%11111000 + .DA #%00000100,#%10000100,#%01000100,#%11000100,#%00100100,#%10100100,#%01100100,#%11100100 + .DA #%00010100,#%10010100,#%01010100,#%11010100,#%00110100,#%10110100,#%01110100,#%11110100 + .DA #%00001100,#%10001100,#%01001100,#%11001100,#%00101100,#%10101100,#%01101100,#%11101100 + .DA #%00011100,#%10011100,#%01011100,#%11011100,#%00111100,#%10111100,#%01111100,#%11111100 + .DA #%00000010,#%10000010,#%01000010,#%11000010,#%00100010,#%10100010,#%01100010,#%11100010 + .DA #%00010010,#%10010010,#%01010010,#%11010010,#%00110010,#%10110010,#%01110010,#%11110010 + .DA #%00001010,#%10001010,#%01001010,#%11001010,#%00101010,#%10101010,#%01101010,#%11101010 + .DA #%00011010,#%10011010,#%01011010,#%11011010,#%00111010,#%10111010,#%01111010,#%11111010 + .DA #%00000110,#%10000110,#%01000110,#%11000110,#%00100110,#%10100110,#%01100110,#%11100110 + .DA #%00010110,#%10010110,#%01010110,#%11010110,#%00110110,#%10110110,#%01110110,#%11110110 + .DA #%00001110,#%10001110,#%01001110,#%11001110,#%00101110,#%10101110,#%01101110,#%11101110 + .DA #%00011110,#%10011110,#%01011110,#%11011110,#%00111110,#%10111110,#%01111110,#%11111110 + .DA #%00000001,#%10000001,#%01000001,#%11000001,#%00100001,#%10100001,#%01100001,#%11100001 + .DA #%00010001,#%10010001,#%01010001,#%11010001,#%00110001,#%10110001,#%01110001,#%11110001 + .DA #%00001001,#%10001001,#%01001001,#%11001001,#%00101001,#%10101001,#%01101001,#%11101001 + .DA #%00011001,#%10011001,#%01011001,#%11011001,#%00111001,#%10111001,#%01111001,#%11111001 + .DA #%00000101,#%10000101,#%01000101,#%11000101,#%00100101,#%10100101,#%01100101,#%11100101 + .DA #%00010101,#%10010101,#%01010101,#%11010101,#%00110101,#%10110101,#%01110101,#%11110101 + .DA #%00001101,#%10001101,#%01001101,#%11001101,#%00101101,#%10101101,#%01101101,#%11101101 + .DA #%00011101,#%10011101,#%01011101,#%11011101,#%00111101,#%10111101,#%01111101,#%11111101 + .DA #%00000011,#%10000011,#%01000011,#%11000011,#%00100011,#%10100011,#%01100011,#%11100011 + .DA #%00010011,#%10010011,#%01010011,#%11010011,#%00110011,#%10110011,#%01110011,#%11110011 + .DA #%00001011,#%10001011,#%01001011,#%11001011,#%00101011,#%10101011,#%01101011,#%11101011 + .DA #%00011011,#%10011011,#%01011011,#%11011011,#%00111011,#%10111011,#%01111011,#%11111011 + .DA #%00000111,#%10000111,#%01000111,#%11000111,#%00100111,#%10100111,#%01100111,#%11100111 + .DA #%00010111,#%10010111,#%01010111,#%11010111,#%00110111,#%10110111,#%01110111,#%11110111 + .DA #%00001111,#%10001111,#%01001111,#%11001111,#%00101111,#%10101111,#%01101111,#%11101111 + .DA #%00011111,#%10011111,#%01011111,#%11011111,#%00111111,#%10111111,#%01111111,#%11111111 +*-------------------------------------- +OptionList >PSTR "Vv" +OptionVars .DA #bVerbose,#bVerbose +MSG.USAGE >CSTR "Usage : FNT2FON FNT-File \r\n -V : Verbose Mode\r\n" +MSG.FILE.OK >CSTR "Font File Loaded, %D Bytes Read\r\n" +MSG.HEADER.OK >CSTR "Font File Size : %D x %D pixels\r\n" +MSG.HEADER.KO >CSTR "Invalid Input File Format\r\n" +MSG.DONE >CSTR "All Done!!!\r\n" +*-------------------------------------- + .DUMMY + .OR 0 +DS.START +PIX.Header .BS S.BM +ArgCount .BS 1 +hInputBuf .BS 1 +hOutputFile .BS 1 +bVerbose .BS 1 +hBuf .BS 1 +DS.END + .ED +*-------------------------------------- +MAN +SAVE /A2OSX.BUILD/FNT2FON.S +ASM diff --git a/INC/A2osX.I.txt b/INC/A2osX.I.txt index be580863..57860d92 100644 --- a/INC/A2osX.I.txt +++ b/INC/A2osX.I.txt @@ -220,8 +220,8 @@ SYS.GetMemStat.YA .EQ $EE * .EQ $F4 * .EQ $F6 -* .EQ $F8 -SYS.LoadStkObj.YA .EQ $FA +SYS.NewStkObj.YA .EQ $F8 +SYS.LoadStkObj .EQ $FA SYS.GetStkObj.A .EQ $FC SYS.FreeStkObj.A .EQ $FE *-------------------------------------- diff --git a/INC/KERNEL.I.txt b/INC/KERNEL.I.txt index 4918246b..b4ca5773 100644 --- a/INC/KERNEL.I.txt +++ b/INC/KERNEL.I.txt @@ -37,6 +37,17 @@ H.BIN.DRV.REL.TABLE .EQ 0 ZPKERNEL .EQ $0 ZPMEMMGR .EQ $8 *-------------------------------------- +* MoveAux / XFer +*-------------------------------------- +A1L .EQ $3C +A2L .EQ $3E +A4L .EQ $42 + +XFer.JMP .EQ $3ED + +AuxMove .EQ $C311 +XFer .EQ $C314 CS:M->X, VS:Use Aux ZP +*-------------------------------------- * $42-$47 ProDOS Block Device Drivers Main *-------------------------------------- * $5E-$C8 RESERVED APPLESOFT Main/Aux (ROM Call, no need to switch back MainZP) @@ -91,7 +102,7 @@ K.SP.PARAMS .EQ $0360 Max 9 bytes K.MLI.PATH .EQ $0369 64+1 K.MLI.PARAMS .EQ $03AA Main, 18 bytes min for GetFileInfo (ATLK needs MORE!!!...32 max for now) *-------------------------------------- -K.STACKTOP .EQ $03EF down to $3E0 +K.STACKTOP .EQ $03ED XFer !!! down to $3E0 *-------------------------------------- *** $3F0-$3FF IRQ Handler.... *** *-------------------------------------- diff --git a/INC/LIBGUI.I.txt b/INC/LIBGUI.I.txt index fb925284..247b9963 100644 --- a/INC/LIBGUI.I.txt +++ b/INC/LIBGUI.I.txt @@ -52,7 +52,8 @@ S.CB.MODE.MONO .EQ %00000001 b/w (1 bit/pixel) *S.CB.MODE.C8 .EQ %00000100 S.CB.MODE.C16 .EQ %00001000 16 colors (4 bits/pixel) *S.CB.MODE.C256 .EQ %00010000 256 colors (8 bits/pixel) -S.CB.COLOR .EQ 3 +S.CB.COLOR .EQ 3 xPIXEL,xLINE,FILLRECT +S.CB.FONT .EQ 3 DRAWTEXT S.CB.X1 .EQ 4 xPIXEL,xLINE,FILLRECT,BITBLT,GETRECTBUFSIZE,DRAWLINE S.CB.Y1 .EQ 6 xPIXEL,xLINE,FILLRECT,BITBLT,GETRECTBUFSIZE,DRAWLINE S.CB.X2 .EQ 8 VLINE,FILLRECT,DRAWLINE @@ -87,6 +88,17 @@ S.BM.MASK.OFS .EQ 6 * S.BM .EQ 8 *-------------------------------------- +S.FON.H .EQ 0 +S.FON.Ascent .EQ 1 +S.FON.PixW .EQ 2 if 0, variable W +S.FON.PixH .EQ 3 +S.FON.First .EQ 4 +S.FON.Last .EQ 5 +S.FON.Default .EQ 6 +S.FON.Break .EQ 7 +* +S.FON .EQ 8 +*-------------------------------------- S.MOUSE.X1 .EQ 0 S.MOUSE.Y1 .EQ 2 S.MOUSE.X2 .EQ 4 diff --git a/INC/MACROS.I.txt b/INC/MACROS.I.txt index 1c9763b5..3c650554 100644 --- a/INC/MACROS.I.txt +++ b/INC/MACROS.I.txt @@ -306,11 +306,11 @@ AUTO 6 *-------------------------------------- .MA LDYA .DO ]#=2 - lda ]1+1,]2 ldy ]1,]2 + lda ]1+1,]2 .ELSE - lda ]1+1 ldy ]1 + lda ]1+1 .FIN .EM *-------------------------------------- diff --git a/SBIN/GUI.S.txt b/SBIN/GUI.S.txt index 24e603c1..77fb25ed 100644 --- a/SBIN/GUI.S.txt +++ b/SBIN/GUI.S.txt @@ -59,22 +59,10 @@ CS.INIT >LDYA L.MSG.INIT >PUSHBI $CB Type >PUSHBI SYS.FOpen.R >PUSHW L.FILENAME - >SYSCALL LoadFile + >SYSCALL LoadStkObj bcs .9 - txa - >SYSCALL GetMemPtr.A - >STYA CB.BitBlt+S.CB.SrcPtr - >STYA ZPPtr1 - - ldy #S.BM.W+3 - ldx #3 - -.1 lda (ZPPtr1),y - sta CB.BitBlt+S.CB.SrcW,x - dey - dex - bpl .1 + sta CB.BitBlt+S.CB.SrcPtr jsr Destop.Paint @@ -206,8 +194,8 @@ CB.BitBlt .DA #S.CB.CMD.BITBLT .DA #0 .DA 0 X1 .DA 0 Y1 - .BS 2 W - .BS 2 H + .DA 141 W + .DA 150 H .DA 200 DestX .DA 60 DestY .BS 2 SrcPtr diff --git a/SBIN/GUIOSD.S.txt b/SBIN/GUIOSD.S.txt index dd5ddeec..cc1bea5a 100644 --- a/SBIN/GUIOSD.S.txt +++ b/SBIN/GUIOSD.S.txt @@ -188,6 +188,22 @@ BITBLT *-------------------------------------- GETRECTBUFSIZE *-------------------------------------- +* In: +* S.CB.S.CB.FONT : hFont +* S.CB.SrcPtr : Ptr to Text +* S.CB.DstPtr : Buffer Size (in bytes) +*-------------------------------------- +GETTEXTSIZE lda CB.Cache+S.CB.FONT + ldx #SYS.GetMemPtr.A + jsr GO.Kernel + >STYA ZPFontPtr +*-------------------------------------- +* In: +* S.CB.S.CB.FONT : hFont +* S.CB.SrcPtr : Ptr to Text +* S.CB.DstPtr : Buffer Size (in bytes) +*-------------------------------------- +DRAWTEXT *-------------------------------------- * IN: * Y,A = num1 (16) @@ -221,6 +237,8 @@ YAMultX stx GBYTE bne .2 rts *-------------------------------------- +GO.Kernel jmp ($E000,x) +*-------------------------------------- Mono.NMasks .DA #%11111110 .DA #%11111101 .DA #%11111011 diff --git a/SYS/KERNEL.S.JMP.txt b/SYS/KERNEL.S.JMP.txt index 41db45d7..60e5e965 100644 --- a/SYS/KERNEL.S.JMP.txt +++ b/SYS/KERNEL.S.JMP.txt @@ -151,8 +151,8 @@ K.SYSCALL.JMP .DA 0 $00 .DA 0 .DA 0 .DA 0 - .DA 0 - .DA K.LoadStkObj.YA + .DA K.NewStkObj.YA + .DA K.LoadStkObj .DA K.GetStkObj.A .DA K.FreeStkObj.A *-------------------------------------- diff --git a/SYS/KERNEL.S.MEM.txt b/SYS/KERNEL.S.MEM.txt index 19146c9e..c0aa2cb4 100644 --- a/SYS/KERNEL.S.MEM.txt +++ b/SYS/KERNEL.S.MEM.txt @@ -34,14 +34,14 @@ Mem.ReqFlags .EQ ZPMEMMGR+6 store requested Flags *\-------------------------------------- K.GetMem >PULLB Mem.ReqFlags store requested flags - >PULLA get requested size LO - tay - >PULLA get requested size HI - sta Mem.ReqSize+1 - + >PULLYA get requested size + bit Mem.ReqFlags S.MEM.F.AUX ? bpl K.GetMem.I + .HS 2C bit abs +K.GetMemAux.YA stz Mem.ReqFlags + sta SETREADAUX Aux Mem requested,switch to AUX sta SETWRITEAUX @@ -64,7 +64,7 @@ K.GetMem >PULLB Mem.ReqFlags store requested flags *\-------------------------------------- K.GetMem0.YA ldx #S.MEM.F.INIT0 stx Mem.ReqFlags - .HS 2C bit abs + .HS 2C bit abs */-------------------------------------- * # GetMem.YA * ## In: @@ -77,9 +77,10 @@ K.GetMem0.YA ldx #S.MEM.F.INIT0 * A = EC *\-------------------------------------- K.GetMem.YA stz Mem.ReqFlags - sta Mem.ReqSize+1 -K.GetMem.I tya +K.GetMem.I sta Mem.ReqSize+1 + + tya bit #$0F 16 bytes aligned ? beq .10 yes, request it @@ -443,21 +444,21 @@ K.NewStr.YA >STYA .1+1 >STYA .4+1 stz Mem.ReqFlags - stz Mem.ReqSize+1 ldy #0 + lda #0 -.1 lda $ffff,y +.1 ldx $ffff,y beq .2 iny bne .1 - inc Mem.ReqSize+1 + inc inc .1+2 bne .1 .2 iny Add one for ending 0 bne .3 - inc Mem.ReqSize+1 + inc .3 jsr K.GetMem.I bcs .9 @@ -532,29 +533,106 @@ K.SListFree *-------------------------------------- MEM.SList.Next - - */-------------------------------------- -* # LoadStkObj.YA -* ## In: +* # NewStkObj.YA +* ## In: +* Y,A = Size Requested * ## Out: -* A=hMem +* CC : success +* YA = PTR to Mem (Uninitialised) +* X = hMem +* CS : +* A = EC *\-------------------------------------- -K.LoadStkObj.YA +K.NewStkObj.YA sta SETREADAUX + sta SETWRITEAUX + + jsr K.GetMem.YA + + sta CLRREADAUX + sta CLRWRITEAUX + rts +*/-------------------------------------- +* # LoadStkObj +* Load a file in AUX memory (Stock Objects) +* ## In: +* PUSHW = AUXTYPE (Handled by.... +* PUSHB = TYPE ... +* PUSHB = MODE ... +* PUSHW = PATH ...FOpen) +* ## Out: +* Y,A = File Length +* X = hMem of Loaded Object in AUX mem +*\-------------------------------------- +K.LoadStkObj >SYSCALL LoadFile + bcs .99 + + stx .8+1 Save MAIN hMem + >STYA A2L Save LEN temporarly + + jsr K.GetMemAux.YA + bcs .9 + stx .80+1 + >STYA A4L Save Destination Address in AUX + + lda .8+1 + jsr K.GetMemPtr.A + + >STYA A1L Save MAIN base Ptr + + pha Add Allocated LEN + tya + clc + adc A2L + sta A2L + pla + adc A2L+1 + sta A2L+1 to get End address in A2L/H + + sec Main To Aux + jsr AuxMove + +.8 lda #$ff SELF MODIFIED + jsr K.FreeMem.A release MAIN memory + +.80 lda #$ff Returns AUX hMem + rts + +.9 pha + jsr .8 + pla + sec +.99 rts */-------------------------------------- * # GetStkObj.A * ## In: +* A = hMem * ## Out: -* A=hMem +* Y,A = PTR to MemBlock (AUX Mem) +* (X unmodified) *\-------------------------------------- -K.GetStkObj.A +K.GetStkObj.A sta SETREADAUX + + jsr K.GetMemPtr.A + + sta CLRREADAUX + rts */-------------------------------------- * # FreeStkObj.A * ## In: +* A = hMem To Free (AUX Memory) * ## Out: -* A=hMem +* none. +* (X,Y unmodified) *\-------------------------------------- -K.FreeStkObj.A +K.FreeStkObj.A sta SETREADAUX + sta SETWRITEAUX + + jsr K.FreeMem.A + + sta CLRREADAUX + sta CLRWRITEAUX + rts */-------------------------------------- * # GetMemStat.YA * ## In: