home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / sys / ibm / pc / hardware / 35480 < prev    next >
Encoding:
Internet Message Format  |  1993-01-11  |  2.9 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!howland.reston.ans.net!paladin.american.edu!gatech!concert!rutgers!njitgw.njit.edu!hertz.njit.edu!dic5340
  2. From: dic5340@hertz.njit.edu (David Charlap)
  3. Newsgroups: comp.sys.ibm.pc.hardware
  4. Subject: Re: PC graphics programming
  5. Message-ID: <1993Jan11.214830.378@njitgw.njit.edu>
  6. Date: 11 Jan 93 21:48:30 GMT
  7. References: <VAITKUS.93Jan7122736@ceres.lexmark.com>
  8. Sender: news@njit.edu
  9. Organization: New Jersey Institute of Technology, Newark, N.J.
  10. Lines: 51
  11. Nntp-Posting-Host: hertz.njit.edu
  12.  
  13. In article <VAITKUS.93Jan7122736@ceres.lexmark.com> vaitkus@lexmark.com (Keith Vaitkus) writes:
  14. >I need info on:
  15. >
  16. >Register/assembly level controls for graphics cards.
  17. >How to write device drivers for cards.
  18. >The practical differences btw one resolution and another. 
  19. >The practical differences btw one card or chip-set and another.
  20. >
  21. >I have no interest in CGA and EGA. So I want to focus on VGA and higher
  22. >resolutions, ie XGA, SVGA, etc.
  23.  
  24. You should learn about CGA and EGA.  They both do things that all
  25. other modes do, and in a simpler way.  For instance, it's easier to
  26. learn 4-plane pixel maps on an EGA than on an super VGA, where you
  27. also have to know about memory banks and other overflow registers,
  28. etc.
  29.  
  30. I assume you already know assembly-language in general.  Otherwise,
  31. you're not going to be able to write much in the way of device
  32. drivers.  C can only get you so far on a device level.
  33.  
  34. As for differences between modes and chipsets, there are tons.  For
  35. CGA/EGA/VGA modes, everything is standard, but for sVGA, everything is
  36. manufacturer dependant.  It becomes critical to know the manufacturer
  37. of the board, and you'll need separate procedures for each card.
  38.  
  39. For 8514, XGA, and S3 boards, there's a world of difference.  These
  40. three are co-processor based.  You'll be accessing another
  41. microprocessor when you use them, instead of setting values into
  42. memory somewhere, like other boards do.
  43.  
  44. >Thanks in advance, and please note that I am looking for _PC_ specific
  45. >information and not general graphics algorithms.
  46.  
  47. There are tons of books on the subject.  For VGA, it's rather simple,
  48. and most people will tell you to use the BIOS for everything but
  49. actually drawing pixels.  And that isn't very hard.  For sVGA, its
  50. also not that hard.
  51.  
  52. Note, that if you're running your PC in protected mode (like under
  53. OS/2 or Unix), you can't access the BIOS, leaving you to directly mess
  54. with I/O ports.  There is plenty of documentation on them for
  55. IBM-standard modes, but sVGA has much less.  Some vendors (like ATI)
  56. try to keep all their register-level documentation under lock-and-key,
  57. making it difficult (if not impossible) to do anything with them
  58. without the BIOS.
  59. -- 
  60.   |)  David Charlap          | .signature confiscated by FBI due to
  61.  /|_  dic5340@hertz.njit.edu | an ongoing investigation into the
  62. ((|,)                        | source of these .signature virusses
  63.  ~|~
  64.