home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / smldrv21.zip / readme < prev    next >
Text File  |  1993-06-04  |  13KB  |  316 lines

  1. OS/2 2.1GA small resource SVGA display driver for 1024x768x256
  2. --------------------------------------------------------------
  3.  
  4. Release date:     04 June 1993
  5. Package source:    Daniel J Neades
  6.  
  7. CONTENTS
  8.  
  9.     Introduction
  10.     Contacting the author
  11.     Limitations
  12.     Disclaimer
  13.     Installation
  14.     Configuring Win-OS2 to use small fonts
  15.     How this driver was created
  16.     Blatant plug
  17.  
  18. INTRODUCTION
  19.  
  20. This driver basically gives you the resources used by the 640x480 display
  21. driver at 1024x768 resolution, thus effectively giving you more screen real
  22. estate. The main differences between this and the standard 1024x768x256 SVGA
  23. driver are:
  24.  
  25.     Small fonts
  26.         Small system fonts (esp. useful when viewing help)
  27.         8.Helv is now *really* tiny!
  28.  
  29.     Small icons
  30.         Full-sized icons are 32x32 pixels and not 40x40
  31.  
  32.     Small title bars
  33.         Title bars have shrunk along with everything else;
  34.         they are now the same height (in pixels) as in 640x480
  35.         resolution.
  36.  
  37. CONTACTING THE AUTHOR
  38.  
  39. This section is misleadingly titled since I am merely the modifier of the
  40. driver included with this package and not the author.
  41.  
  42. I would be grateful if you would let me know how you get on with this
  43. driver. Send me a post-card, even if just to say 'Thankyou'! I like
  44. post-cards :-) I welcome both positive and negative comments.
  45.  
  46. My snail-mail address is
  47.  
  48.     Daniel J Neades
  49.     c/o 45 Causley Drive
  50.     Warmley
  51.     Bristol
  52.     BS15 7BA
  53.     England
  54.  
  55. I can be contacted via Internet e-mail until 23 June 1993. My id is 
  56. djn@ukc.ac.uk
  57.  
  58. LIMITATIONS
  59.  
  60. This driver is only suitable as a replacement for 1024x768x256 resolution
  61. SVGA display drivers. It therefore supports cards such as those with Tseng
  62. and Trident chipsets. It will *not* work 8514 or XGA cards. Basically, if
  63. your card uses the IBMDEV32.DLL driver unpacked from SV768256.DLL on Display
  64. Driver Diskette 2 then this driver will probably work.
  65.  
  66. This driver is a modified version of that distributed with OS/2 2.1GA. It
  67. *may* work with the December or March 2.1 betas, but this is untested.
  68. If you attempt to use this driver with either beta (or even 2.0GA+SP),
  69. please let me know how you get on.
  70.  
  71.     NOTE
  72.     Some dialogs may be slightly cramped using this driver.
  73.     This is due to the way that OS/2 handles spacing of dialog box
  74.     components. This is a feature, not a bug :-) The media player
  75.     included with 2.1GA exhibits this problem.
  76.  
  77. This display driver is *very* similar to the standard distribution SVGA
  78. 1024x768x256 driver. Any bugs are therefore probably present in the 2.1GA
  79. SVGA driver. Having said that, I would like to know if you encounter
  80. problems.
  81.  
  82. DISCLAIMER
  83.  
  84. This driver was created for my own use only. I have made it available merely
  85. as a service to others who are also fed-up with having their screen
  86. resolution wasted. I accept no responsibility or liability for any loss or
  87. damage arising from or as a result of the use of this driver.
  88.  
  89. If anyone at IBM is upset that I've uploaded some modified OS/2 2.1GA code
  90. then I'm *really* sorry. You could sue me, but I haven't got any money so it
  91. probably wouldn't be worth it :-) Seriously, let me know if there are
  92. problems with making this driver available and I'll get it removed ASAP.
  93. What would be wonderful would be to have IBM make small resource 1024x768
  94. drivers available as part of the standard OS/2 distribution.
  95.  
  96. If anyone has any influence with the IBM people responsible for OS/2, please
  97. pressure them to include small font resource drivers with the standard
  98. distribution in future. It would be trivial for them...
  99.  
  100. INSTALLATION
  101.  
  102.     NOTE FOR MARCH BETA ONLY
  103.     The following procedure is for 2.1GA *only*. Even if this driver
  104.     works with the March beta (probable), the following instructions
  105.     may not work. For the March beta, you should copy both display
  106.     driver disks into a directory on your hard disk, copy SV768256.DL_
  107.     included with this package to that directory and then run dspinstl.exe
  108.     and point it at the directory.
  109.  
  110. Since you are reading this I assume that you have managed to unzip the file
  111. containing the replacement driver!
  112.  
  113. 1.    You should verify that your video card is supported by this driver
  114.     (see LIMITATIONS).
  115.  
  116. 2.    Ensure that OS/2 is currently running your display adapter in
  117.     1024x768x256 resolution.
  118.  
  119. 3.    Make a copy of Display Driver Diskette 2 (see the online help for
  120.     diskcopy if you are unsure how to do this). Label this disk
  121.     'Small resource 1024x768x256 SVGA display driver'.
  122.  
  123. 4.    Copy the file SV768256.DL_ included with this package onto the
  124.     copy of Display Driver Diskette 2 which you have just made.
  125.  
  126. 5.    Run the program DSPINSTL.EXE included with OS/2 2.1GA, and follow
  127.     the usual procedure for installing the display driver for your card.
  128.     When prompted for Display Driver Disk 2, insert the modified copy
  129.     made in steps 3 and 4.
  130.  
  131. 6.    If you have at some stage changed the default system font (for example,
  132.     by running the REXX script given in the OS/2 README file), then you
  133.     should run FONT.CMD. This resets the default system font to to
  134.     default.
  135.  
  136. 7.    Shut down and reboot. You should now have OS/2 running in 1024x768x256
  137.     resolution with small icons, fonts and title bars.
  138.  
  139.     NOTE
  140.     This procedure simply replaces the IBMDEV32.DLL in your \OS2\DLL
  141.     directory with the (unpacked) contents of SV768256.DL_ included
  142.     with this package. If you are an experienced OS/2 user, you
  143.     may wish to directly replace this file. Note that the file is 
  144.     locked whilst Presentation Manager is running, and so you will
  145.     need to boot OS/2 without Presentation Manager.
  146.  
  147. CONFIGURING WIN-OS2 TO USE SMALL FONTS
  148.  
  149. Win-OS2 defaults to enormous fonts for 1024x768x256 resolution (both seemless
  150. and full-screen). Fortunately, the 2.1GA distribution is capable of running
  151. Win-OS2 at 1024x768 with small fonts. Follow the procedure below to configure
  152. WIN-OS2 to use small fonts.
  153.  
  154.     NOTE
  155.     Re-installing the OS/2 display driver (for example, by following
  156.     the procedure above) will reset your Win-OS2 SYSTEM.INI settings.
  157.     You will therefore have to make the changes described below
  158.     *after* installing the OS/2 small resource driver.
  159.  
  160. 1.    Insert OS/2 Display Driver Disk 2 into drive A:
  161.  
  162. 2.    Type
  163.  
  164.         UNPACK A:\WSPDSF.DR_ X:
  165.         UNPACK A:\WSPDSSF.DR_ X:
  166.  
  167.     where X: is the drive on which Win-OS/2 is installed.
  168.  
  169. 3.    Edit the file X:\OS2\MDOS\WINOS2\SYSTEM.INI. Again, X:
  170.     is the drive on which Win-OS/2 is installed.
  171.  
  172. 4.    You now have to change several lines:
  173.  
  174.     Change the following lines in the [boot] section
  175.  
  176.         display.drv=wspdbf.drv
  177.         sdisplay.drv=wspdsbf.drv
  178.         fonts.fon=xgasys.fon
  179.         fixedfon.fon=xgafix.fon
  180.         oemfonts.fon=xgaoem.fon
  181.  
  182.     to
  183.  
  184.         display.drv=wspdsf.drv
  185.         sdisplay.drv=wspdssf.drv
  186.         fonts.fon=vgasys.fon
  187.         fixedfon.fon=vgafix.fon
  188.         oemfonts.fon=vgaoem.fon
  189.  
  190.     repectively.
  191.  
  192.     In the [boot.description] section will be two lines similar to
  193.     
  194.         display.drv=1024x768x256 Large fonts 1M ET4000
  195.         sdisplay.drv=1024x768x256 Large fonts 1M ET4000
  196.  
  197.     Note that 'ET4000' may be replaced with the name of your
  198.     SVGA card's chipset. This is unimportant. ALl you must do
  199.     is change the word 'Large' to 'Small' in both lines.
  200.  
  201. 5.    Save the SYSTEM.INI file, and quit your editor. Win-OS2 should
  202.     now be configured to run with small fonts.
  203.  
  204.     NOTE
  205.     If you follow this procedure, and the Win-OS2 fonts are not
  206.     displayed correctly, it may be that the small (VGA) Win-OS2
  207.     fonts are not installed. To correct this, install a low
  208.     resolution driver (640x480), reinstall the driver included with
  209.     this package and then follow the above instructions to instruct
  210.     Win-OS2 to use small fonts.
  211.  
  212. HOW THIS DRIVER WAS CREATED
  213.  
  214. If your video card isn't supported by this driver then you may wish (if
  215. you're feeling brave and/or foolish) to attempt to create a small resources
  216. driver of your own.  I therefore describe how I created the small resource
  217. driver.
  218.  
  219. Like many people, I was fed up with the large fonts and icons used in the
  220. standard 1024x768 SVGA display driver. Desiring an excuse to avoid doing
  221. revision for my finals, I downloaded a binary editor (beav) and dug out my
  222. copy of Borland's Resource Workshop for OS/2 (supplied with Borland C++ for
  223. OS/2). Then I played...
  224.  
  225. A little experimentation showed that IBMDEV32.DLL was the DLL responsible for
  226. the display resolution and resources used. In other words, IBMDEV32.DLL is
  227. the display driver. Cleverly, only one IBMDEV32.DLL is used for all the SVGA
  228. display cards supported by the OS/2 2.1.
  229.  
  230. Next, I made a copy of IBMDEV32.DLL and fired up Resource Workshop (RW from
  231. here on).  I deleted all the resources attached to the DLL and then saved
  232. the result to 1024.DLL.
  233.  
  234. I manually unpacked the 640x480x256 IBMDEV32.DLL from Display Driver Disk 2.
  235. I loaded this into RW and saved the resources as a .RES file (640.RES).
  236.  
  237. Feeling brave, I loaded 1024.DLL into beav. From my Windoze days I knew that
  238. the large font drivers had a device resolution of 120 something or others.
  239. The small font drivers had a resolution of 96. Knowing 120 to 78 hexadecimal
  240. (well, I didn't *know*, I used my trusty HP calculator :-), I browsed
  241. through 1024.DLL searching for something that might prove relevant.
  242. Eventually, I found two sequences of four bytes.  Both sequences were
  243. 78 00 00 00 (all numbers are hex). I changed the 78 to 60 in both instances
  244. (60 hex being 96 decimal). I saved 1024.DLL and quit beav.  Actually, I've
  245. made it sound simple. I could pretend that I got it right first time and
  246. impress you all, but then I'd be lying ;-) I'll spare you the grief...
  247.  
  248. Using RC.EXE (supplied with OS/2), I bound the contents of 640.RES to the
  249. newly modified 1024.DLL. Automagically, I had a small resource IBMDEV32.DLL
  250. (albeit called 1024.DLL, but that was easily changed).
  251.  
  252. Anyhow, I replaced my C:\OS2\DLL\IBMDEV32.EXE with the 1024.DLL just created.
  253. I rebooted.
  254.  
  255. Well, I had small icons and small title bars. Unfortunately, I still had that
  256. enormously large system font which IBM for some reason has seen fit to
  257. inflict upon all owners of display cards/monitors capable of at least
  258. 1024x768. Why they assume that we wish to waste our high resolution with
  259. enormous fonts I really don't know. I only have a 15" monitor and they're
  260. far too large for me. I pity those with 20" monitors. I guess they must have
  261. long keyboard leads and sit about six feet back from the screen...
  262.  
  263. Okay, "Simple!" I think to myself. The OS/2 2.1 lets you change the
  264. default system font (there's a little REXX script in the README).
  265. So I change it to 8.Helv.  Bad move. Sure, it worked. However, the WPS
  266. settings notebooks insisted on using the *real* (giant) system font, and not
  267. the default that I'd set. This would have been bearable had they not tried
  268. to space the dialog components according to the 8.Helv font metrics...
  269.  
  270. I reset the default system font to 10.System Proportional. I needed another
  271. solution.  I'm sure that there is some magic in IBMDEV32.DLL which dictates
  272. which sized system font to use (you know, sensible size, or stupid size).
  273. Most likely, it simply contains the resource ID of the font to use. However,
  274. Turbo Debugger GX wouldn't let me disassemble IBMDEV32.DLL to see what it
  275. was doing (it's not an executable program and so TDGX didn't want to know)
  276. and I wasn't brave enough to attempt to force IBMDEV32.DLL into submission
  277. with beav. I therefore cast my attentions elsewhere.
  278.  
  279. It turns out that DSPRES.DLL contains the system fonts (ISO System
  280. Proportional, non-ISO System Proportional and System VIO) used by OS/2.
  281. Further inspection revealed that there are three versions of both of the
  282. System Proportional fonts. Why three? I've no idea. I thought there were
  283. only two variations: small and large. Apparently not, but I digress. The
  284. System Proportional (ISO) font appears to be stored under resource IDs 100,
  285. 101 and 102. The non-ISO versions under 200, 201 and 202. Using my skill and
  286. cunning (okay, so I guessed :-) I copied the contents of resource 100 to 101
  287. and 102.  Likewise, I replaced 201 and 202 by the contents of resource 200.
  288. Then I saved DSPRES.DLL.
  289.  
  290. I replaced my C:\OS2\DLL\DSPRES.DLL with the new version and rebooted.
  291. Heaven! Bliss!  Screen space! Finally, I could use the available screen
  292. resolution in a sensible way.  Somewhere along the line, System VIO fonts
  293. had disappeared from the font palette, but that was a small price to pay...
  294.  
  295. 'Where', you cry, 'Where is DSPRES.DLL?' 'Why is it not included with this
  296. package?'
  297.  
  298. Well, I mentioned a couple of paragraphs ago that IBMDEV32.DLL contained
  299. some magic to make it use large fonts. Further investigation (with my
  300. trusty binary editor) revealed this magic. There is a sequence of four
  301. bytes: 65 00 00 00 which specifies that font resource 101 in DSPRES.DLL
  302. is to be used. Changing the 65 to 64 makes it use resource 100, which is
  303. a small font. There is therefore no longer any need to modify DSPRES.DLL.
  304. This has the welcome side effect of allowing you to continue to use
  305. the System VIO fonts from the Font Palette.
  306.  
  307. BLATANT PLUG
  308.  
  309. One final note, you may wish to try out my first ever PM program. It's a
  310. graphical process display/kill utility (standard stuff...) called PMps.
  311. It's on hobbes in pub/os2/2.x/sysutils/pmps.zip.
  312.  
  313. I've just finished writing a really whizzy little application which you'd
  314. all love.  Unfortunately, it's under wraps at the moment and so you'll have
  315. to wait for it...
  316.