home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / DRI-archive / roche / QXFONT.TXT < prev    next >
Internet Message Format  |  2009-12-11  |  10KB

  1. From: "Arobase, Salle multimΘdia" <salle.arob...@wanadoo.fr>
  2. Newsgroups: comp.os.cpm
  3. Subject: Better font for CP/M-86 Plus
  4. Date: Wed, 2 Apr 2003 14:01:11 +0200
  5. Organization: Wanadoo, l'internet avec France Telecom
  6. Lines: 179
  7. Message-ID: <b6ej8h$c21$1@news-reader12.wanadoo.fr>
  8. Reply-To: "Arobase, Salle multimΘdia" <salle.arob...@wanadoo.fr>
  9. NNTP-Posting-Host: apoitiers-106-2-1-185.abo.wanadoo.fr
  10. X-Trace: news-reader12.wanadoo.fr 1049284689 12353 193.253.213.185 (2 Apr 2003 11:58:09 GMT)
  11. X-Complaints-To: abuse@wanadoo.fr
  12. NNTP-Posting-Date: 2 Apr 2003 11:58:09 GMT
  13. X-Priority: 3
  14. X-MSMail-Priority: Normal
  15. X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
  16. X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
  17.  
  18. QXFONT.TXT
  19. ----------
  20.  
  21. I am very pleased today to give you  an utility  that, I  think,
  22. will be very useful to everybody still playing  with CP/M  on an
  23. IBM Clown.
  24.  
  25. The first thing that  I noticed  2 years  ago, was  that CP/M-86
  26. Plus  was  displaying "double  column" (or  bold) characters  on
  27. screen. It was striking for me, since the Epson QX-10 that I had
  28. used during  the last  15 years  had beautiful,  "single column"
  29. characters that had never tired my eyes.
  30.  
  31. On the IBM Clown, however, I was having headaches after a fairly
  32. normal duration  of use  of the  screen. Clearly,  those awfully
  33. badly designed characters were the culprit,  and maybe  also the
  34. fact that the Epson QX-10 has a "Black and Green"  screen, while
  35. my TANDON 286 12-MHz  has a  "color VGA"  screen. I  have always
  36. thinked that color screens were not suitable for serious work.
  37.  
  38. Unfortunately,  monochrome  screens  are  now  a  rarity on  IBM
  39. Clowns, so we are ogliged to use color screens. The  first thing
  40. to do is then to select green chars on black background.
  41.  
  42. Recently, I suffered from  a flu  epidemic. 5  days later,  when
  43. starting to recover, I reviewed what was on the hard disk of the
  44. MS-DOS  portable  that  I  use  to  type  my  messages  to   the
  45. comp.os.cpm Newsgroup.
  46.  
  47. Among  various  mixed things,  I found  one ISOFONT.CMD  by Kirk
  48. Lawrence. What it was doing striked a chord inside me, so I went
  49. to find an old paper file where I had dumped the ROM font of the
  50. Epson QX-10. Thank God, I found it easily.
  51.  
  52. Now, the problem was to recreate a source code, with pages after
  53. pages  of  DB  defining  each  line  of rows  of pixels  of each
  54. characters. I had no idea where was the  original BASIC  program
  55. that I had used 15 years ago.  So,  the "simplest"  solution was
  56. to recreate it... (It is amazing the number of time  I re-invent
  57. some wheels!)
  58.  
  59. This  time,  seeing  what  I  had  at  my  disposal,  I  took my
  60. DUMPFILE.BAS program and, instead of displaying the 16  bytes on
  61. a line, I modified it to display the pixels on  16 lines,  first
  62. in  normal  binary  for  the  HEX  value,  then  in what  I call
  63. "symbolic binary" (where "." stands for "0", and "O" stands  for
  64. "1". This makes the shape of characters stands out from the maze
  65. of binary digits.). For example:
  66.  
  67. ;
  68. ;-------------------------------- 21h = !
  69. ;
  70.         DB      00010000b       ; ...O....
  71.         DB      00010000b       ; ...O...
  72.         DB      00010000b       ; ...O....
  73.         DB      00010000b       ; ...O....
  74.         DB      00010000b       ; ...O....
  75.         DB      00010000b       ; ...O....
  76.         DB      00010000b       ; ...O....
  77.         DB      00010000b       ; ...O....
  78.         DB      00000000b       ; ........
  79.         DB      00000000b       ; ........
  80.         DB      00010000b       ; ...O....
  81.         DB      00010000b       ; ...O....
  82.         DB      00000000b       ; ........
  83.         DB      00000000b       ; ........
  84.         DB      00000000b       ; ........
  85.         DB      00000000b       ; ........
  86.  
  87. After recreating the source code of the font of ISOFONT,  I took
  88. my  editor,  zeroed  the  above fields,  then spent  one morning
  89. entering the binary and symbolic binary corresponding to the ROM
  90. font used by the Epson QX-10 in "hardware mode". (There  is also
  91. a "software mode" where you can change the font at  will, thanks
  92. to the power of the NEC uPD 7220 GDC.)
  93.  
  94. Finally, I disassembled the snippet of code. It was very easy to
  95. understand with the "System BIOS" book  of Phoenix  Technologies
  96. Ltd. Kirk Lawrence had written a  real nice  and small  piece of
  97. code.
  98.  
  99. I added a STARTUP.SUB file on my CP/M-86  Plus system,  so that,
  100. from now on, it  will automatically  change the  screen font  on
  101. cold boot. (The only thing missing from a real 8-bit system is a
  102. RAMdisk,  especially  since  so  many IBM  Clowns only  have one
  103. single floppy disk drive. But I  am in  the process  of building
  104. one dream system.)
  105.  
  106. Since then, I like so much this font,  that I  have added  it in
  107. the  AUTOEXEC.BAT  file of  the MS-DOS  portable that  I use  to
  108. prepare my messages.
  109.  
  110. I don't know how is your  eyesight, but  mine is  getting older,
  111. and it is nice to be able to use such an old, proven, font  with
  112. faster hardware. I highly recommend it.
  113.  
  114.  
  115. Yours Sincerely,
  116. "French Luser"
  117.  
  118.  
  119. -------- Begin QXFONT.H86 -------
  120. :0400000300000000F9
  121. :1B000081BE8100AC3C2074FB3C2B74253C2D740AB109BA1D01CDE0E95500B199
  122. :1B001B8109BAA901CDE0B400B003CD10B109BAAC01CDE0E93E00CD11253000C3
  123. :1B0036813D3000740AB41AB000CD103C1A740AB109BA7B01CDE0E92000FAB4C0
  124. :1B00518111B000B710B300B95E00BA2100551E07BDC001CD105DFBB109BAA5A0
  125. :07006C8101CDE033C9CDE0B5
  126. :1B0100820D0A205158464F4E542020627920456D6D616E75656C20524F434890
  127. :1B011B8245200D0A0755736167653A095158464F4E54202B2020496E73746122
  128. :1B0136826C6C7320746865206E657720415343494920666F6E740D0A095158ED
  129. :1B015182464F4E54202D2020526573746F726573207468652064656661756C04
  130. :1B016C827420415343494920666F6E740D0A24075761726E696E673A205468F4
  131. :1B01878269732070726F6772616D2072657175697265732056474120766964F6
  132. :1B01A282656F241B6232241B30241B62372400000000000000000000000000AE
  133. :1B01BD8200000010101010101010100000101000000000505050000000000015
  134. :1B01D88200000000000000000828282E38E82E38E82828200000000010107C8A
  135. :1B01F3829290907C1212927C101000000062949468081010202C52528C000059
  136. :1B020E82000000304848502050908A8A847A00000000181808102000000000C9
  137. :1B022982000000000000000408101020202020201010080400000040201010C0
  138. :1B024482080808080810102040000000001010925438103854921010000000E9
  139. :1B025F8200000010101010FE1010101000000000000000000000000000303024
  140. :1B027A82102040000000000000000000FE000000000000000000000000000079
  141. :1B02958200000000003030000000000204040808101020204040808000000072
  142. :1B02B0823844868A8A9292A2A2C24438000000001030501010101010101010E5
  143. :1B02CB827C000000003844828202040810204080FE0000000038448202043862
  144. :1B02E682040202824438000000000C14142424444484FE04040400000000FEE5
  145. :1B030182808080B8C4020202824438000000000810204040B884828282443869
  146. :1B031C82000000007E42828404040808081010100000000038448282443844EE
  147. :1B0337828282824438000000003844828282463A040408102000000000000065
  148. :1B035282303000000000003030000000000000001818000000001818081020B6
  149. :1B036D8200000002040810204080402010080402000000000000FE0000000079
  150. :1B038882FE0000000000000080402010080402040810204080000000384482E2
  151. :1B03A382820408101000001010000000003C42828E92A2A2A29C80403E00004F
  152. :1B03BE820000101028282844447C8282828200000000F84442424478444242BA
  153. :1B03D9824244F80000000038448282808080808282443800000000F844424249
  154. :1B03F48242424242424244F800000000FE80808080FC8080808080FE0000002C
  155. :1B040F8200FE80808080FC808080808080000000003844828280809E828282B2
  156. :1B042A82463A000000008282828282FE828282828282000000007C1010101065
  157. :1B0445821010101010107C000000003E08080808080808088888700000000040
  158. :1B04608282848890A0C0C0A09088848200000000808080808080808080808083
  159. :1B047B82FE000000008282C6C6AAAA929282828282000000008282C2A2A2923A
  160. :1B049682928A8A8682820000000038448282828282828282443800000000F899
  161. :1B04B1828482828284F880808080800000000038448282828282829AA6443A62
  162. :1B04CC8200000000F884828284F8888884848282000000003844828240300C7F
  163. :1B04E782028282443800000000FE101010101010101010101000000000828244
  164. :1B05028282828282828282824438000000008282828244444428282810100064
  165. :1B051D820000008282828282929292AAAA444400000000828244442810102829
  166. :1B053882444482820000000082828244442828101010101000000000FE0204E8
  167. :1B0553820408081010202040FE000000003C20202020202020202020203C0081
  168. :1B056E82000080404020201010080804040202000000780808080808080808BC
  169. :1B05898208080878000000102844820000000000000000000000000000000047
  170. :1B05A4820000000000000000FE00000018181008040000000000000000000070
  171. :1B05BF82000000007804043C448484847A00000000808080B0C884848484840D
  172. :1B05DA82C8B00000000000000038448280808082443800000000040404344C04
  173. :1B05F58284848484844C340000000000000038448282FE808244380000000059
  174. :1B06108218242020F820202020202020000000000000023A44444438407C827B
  175. :1B062B82827C000000808080B8C48484848484848400000000100000701010FC
  176. :1B06468210101010107C000000000400001C04040404040444443800000080D3
  177. :1B0661828080848890A0C0A09088840000000070101010101010101010107C38
  178. :1B067C82000000000000006C929292929292929200000000000000B8C4848461
  179. :1B069782848484848400000000000000384482828282824438000000000000B0
  180. :1B06B28200B8C482828282C4B880800000000000003A4682828282463A02029F
  181. :1B06CD8200000000000098A4C08080808080800000000000000078848460189C
  182. :1B06E8820484847800000000202020F8202020202022221C0000000000000099
  183. :1B07038284848484848484847A00000000000000828282444428281010000041
  184. :1B071E8200000000008282829292AAAA44440000000000000082824428102810
  185. :1B07398244828200000000000000828244442828101020400000000000007E01
  186. :1B07548202040810204080FC000000000C10101010106010101010100C0000F6
  187. :1B076F8200101010101010101010101010100000006010101010100C10101031
  188. :16078A8210106000000060920C0000000000000000000000000059
  189. :00000001FF
  190. -------- End   QXFONT.H86 -------
  191.  
  192.  
  193. EOF
  194.