⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0-readme

📁 linux 下svgalib编的一个界面程序示例
💻
📖 第 1 页 / 共 3 页
字号:
       Linear  graphics	 is  working  on this card, both with and       without BACKGROUND enabled, and vga_runinbackground works.       I  decided  it  was best to quit working on more modes and       try to get acceleration and sprites working.       My et6000 card is on a PCI bus.	The card will  run  on	a       vesa  bus,  but	since  I  don't	 have one on my machine I       couldn't develop vesa bus handling.  I quit if the bus  is       a vesa bus.       I  check	 for  an  et6000 card, which can be unequivocally       identified. The et4000 driver does not  properly	 identify       et4000  cards. It thinks the et6000 card is an et4000, but       can only run it in vga modes.       I have found the following four modelines to be useful  in       libvga.config  or  in  ~/.svgalibrc  for proper display of       some modes.       Modeline "512x384@79" 25.175 512 560 592 640  384 428  436       494       Modeline	 "400x300@72" 25.000 400 456 472 520  300 319 332       350 DOUBLESCAN       Modeline "512x480@71" 25.175 512 584 600 656  480 500  510       550       Modeline	 "400x600@72" 25.000 400 440 488 520  600 639 644       666       Don Secrest <secrest@uiuc.edu> Aug 21, 1999   Oak Technologies OTI-037/67/77/87       First a few comments of me  (Michael  Weller  <eowmob@exp-       math.uni-essen.de>):Svgalib 1.4.1		 16 December 1999		       14svgalib(7)	       Svgalib User Manual	       svgalib(7)       As  of  this  writing  (1.2.8)  fixes were made to the oak       driver by  Frodo	 Looijaard  <frodol@dds.nl>  to	 reenable       OTI-067	support.  It  is  unknown right now if they might       have broken OTI-087 support. The author of the '87 support       Christopher  Wiles  <wileyc@moscow.com>	owns no longer an       OTI-087 card and can thus no longer give	 optimal  support       to this driver. Thus you might be better off contacting me       or Frodo for questions. If you are a knowledgable  OTI-087       user  and  experience  problems you are welcome to provide       fixes.  No user of a OTI-087 is currently known to me,  so       if  you are able to fix problems with the driver please do       so (and contact me) as noone else can.       Michael.       Now back to the original Oak information:       The original OTI driver, which supported the OTI-067/77 at       640x480x256,  has  been	augmented with the following fea-       tures:       1)     Supported resolutions/colors have been expanded  to	      640x480x32K,   800x600x256/32K,  1024x768x256,  and	      1280x1024x16.       2)     The OTI-087 (all variants) is now supported.  Video	      memory is correctly recognized.       The  driver as it exists now is somewhat schizoid.  As the       '87 incorporates a completely different	set  of	 extended       registers, I found it necessary to split its routines from       the others.  Further, I did not have access  to	either	a       '67  or	a  '77 for testing the new resolutions.	 If using       them causes your monitor/video card to fry,  your  dog  to       bite you, and so forth, I warned you.  The driver works on       my '87, and that's all I guarantee.  Period.       Heh.  Now, if someone wants to try them	out  ...  let  me       know if they work.       New from last release:       32K  modes now work for 640x480 and 800x600.  I found that       the Sierra DAC information in VGADOC3.ZIP is, well, wrong.       But,  then  again,  the	information for the '87 was wrong       also.       64K modes do not work.  I can't even  get  Oak's	 BIOS  to       enter those modes.       I  have included a 1280x1024x16 mode, but I haven't tested       it.  My monitor can't handle that  resolution.	AccordingSvgalib 1.4.1		 16 December 1999		       15svgalib(7)	       Svgalib User Manual	       svgalib(7)       to  the	documentation, with 2 megs the '87 should be able       to do an interlaced 1280x1024x256 ...  again,  I	 couldn't       get  the BIOS to do the mode.  I haven't 2 megs anyway, so       there it sits.       I have included routines for entering and  leaving  linear       mode.   They should work, but they don't.  It looks like a       pointer to  the	frame  buffer  is  not	being  passed  to       SVGALIB.	  I've	been  fighting with this one for a month.       If anyone wants to play with this, let me know if  it  can       be make to work.	 I've got exams that I need to pass.       Tidbit:	I  pulled  the	extended register info out of the       video BIOS.  When the information thus obtained failed  to       work,  I	 procured the OTI-087 data book.  It appears that       Oak's video BIOS sets various modes incorrectly (e.g. set-       ting 8-bit color as 4, wrong dot clock frequencies, etc.).       Sort of makes me wonder ...       Christopher M. Wiles (a0017097@wsuaix.csc.wsu.edu)       12 September 19946. GOALS       I think the ability to use a VGA/SVGA graphics  resolution       in  one virtual	 console, and being able to switch to any       other virtual console  and  back	 makes	a  fairly  useful       implementation of graphics modes in the Linux console.       Programs	 that  use  svgalib  must be setuid root. I don't       know how desirable it is to have this changed; direct port       access can hardly be done without. Root privileges can now       be given up right after	initialization.	 I  noticed  some       unimplemented stuff in the kernel header files that may be       useful, although doing all register  I/O	 via  the  kernel       would  incur  a significant context-switching overhead. An       alternative might be to have a pseudo /dev/vga device that       yields  the  required  permissions when opened, the device       being readable by programs in group vga.       It is important that textmode  is  restored  properly  and       reliably;  it  is  fairly reliable at the moment, but fast       console switching back and forth between two consoles run-       ning  graphics  can  give  problems.  Wild virtual console       switching also sometimes	 corrupts  the	contents  of  the       textmode	 screen	 buffer	 (not  the  textmode registers or       font).  Also if a program crashes it may	 write	into  the       area  where the saved textmode registers are stored, caus-       ing textmode not be restored correctly. It would be a good       idea  to	 somehow  store this information in a 'safe' area       (say a kernel buffer). Note  that  the  vga_safety_fork(3)       thing has the same idea.       Currently,   programs   that  are  in  graphics	mode  areSvgalib 1.4.1		 16 December 1999		       16svgalib(7)	       Svgalib User Manual	       svgalib(7)       suspended while not in the current virtual console.  Would       it  be a good idea to let them run in the background, vir-       tualizing framebuffer actions (this should not be too hard       for  linear  banked SVGA modes)? It would be nice to have,       say, a raytracer with a real-time display run in the back-       ground  (although  just using a separate real-time viewing       program is much more elegant).       Anyone wanting to rewrite it all in a cleaner  way  (some-       thing  with loadable kernel modules shouldn't hurt perfor-       mance with linear framebuffer/vgagl type applications)  is       encouraged.       Also, if anyone feels really strongly about a low-resource       and truecolor supporting graphical window environment with       cut-and-paste,  I  believe it would be surprisingly little       work to come up with a  simple  but  very  useful  client-       server  system  with  shmem,  the most useful applications       being fairly trivial to write (e.g. shell window,   bitmap       viewer).	    And many X apps would port trivially.       This   is   old	 information,  please  be  sure	 to  read       svgalib.faq(7) if you are interested in further goals.7. REFERENCES       The latest  version  of	svgalib	 can  be  found	 on  sun-       site.unc.edu in /pub/Linux/libs/graphics or tsx-11.mit.edu       in /pub/linux/sources/libs as svgalib-X.X.X.tar.gz.  As of       this  writing  the latest version is svgalib-1.4.1.tar.gz.       There are countless mirrors of these ftp	 servers  in  the       world. Certainly a server close to you will carry it.       The     original	    VGAlib    is    on	  tsx-11.mit.edu,       pub/linux/sources/libs/vgalib12.tar.Z.	tvgalib-1.0.tar.Z       is in the same directory.       SLS  has	 long been distributing an old version of VGAlib.       Slackware keeps a fairly up-to-date  version  of	 svgalib,       but it may be installed in different directories from what       svgalib likes  to  do  by  default.  The	 current  svgalib       install	tries  to  remove  most	 of this. It also removes       /usr/bin/setmclk and /usr/bin/convfont, which is	 a  secu-       rity  risk  if  setuid-root. Actually the recent makefiles       try to do a really good job to cleanup the mess which some       distributions make.       If  you	want  to  recompile the a.out shared library, you       will   need   the   DLL	 'tools'   package   (found    on       tsx-11.mit.edu, GCC dir).  To make it work with recent ELF       compiler's you actually need to hand patch it. You  should       probably	 not try to compile it. Compiling the ELF library       is deadly simple.Svgalib 1.4.1		 16 December 1999		       17svgalib(7)	       Svgalib User Manual	       svgalib(7)       And here is a list of other references which  is	 horribly       outdated.   There  are  many  more svgalib applications as       well as the  directories	 might	have  changed.	 However,       these will give you a start point and names to hunt for on       CD's or in ftp archives.   Viewers   (in   /pub/Linux/apps/graphics/viewers    on    sun-       site.unc.edu):       spic   Picture  viewer; JPG/PPM/GIF; truecolor; scrolling.       zgv    Full-featured viewer with nice file selector.       see-jpeg	      Shows picture as it is being built up.       mpeg-linux	      svgalib  port  of	  the	Berkeley   MPEG	  decoder	      (mpeg_play); it also includes an X binary.       flip   FLI/FLC player (supports SVGA-resolution).   Games (in /pub/Linux/games on sunsite.unc.edu):       bdash  B*lderdash clone with sound.       sasteroids	      Very smooth arcade asteroids game.       yatzy  Neat mouse controlled dice game.       vga_cardgames	      Collection of graphical card games.       vga_gamespack	      Connect4, othello and mines.       wt     Free state-of-the-art Doom-like engine.       Maelstrom	      A very nice asteroids style game port from Mac.       Koules A game. (I've no idea what it looks like)   Docs       In the vga directory of the SIMTEL MSDOS collection, there       is a package called  vgadoc3  which  is	a  collection  of       VGA/SVGA register information.       The  XFree86  driver sources distributed with the link-kit       may be helpful.   Miscellaneous       There's an alternative RAW-mode keyboard library	 by  Rus-       sell Marks for use with svgalib on sunsite.unc.edu.       LIBGRX,	the  extensive framebuffer library by Csaba Biegl       distributed with DJGPP, has been ported to Linux.  Contact       Hartmut	Schirmer (phc27@rz.uni-kiel.d400.de, subject pre-       fix "HARTMUT:"). A more up-to-date port by Daniel  Jackson       (djackson@icomp.intel.com) is on sunsite.unc.edu.       The  vgalib ghostscript device driver sources can be foundSvgalib 1.4.1		 16 December 1999		       18svgalib(7)	       Svgalib User Manual	       svgalib(7)       on sunsite.unc.edu, /pub/Linux/apps/graphics.  Ghostscript       patches	from  Slackware:  ftp.cdrom.com, /pub/linux/misc.       gnuplot patches are on sunsite.unc.edu.       Mitch D'Souza has written font functions that work  in  16       color  modes  and  can  use VGA textmode (codepage format)       fonts; these can be found in his	 g3fax	package	 in  sun-       site.unc.edu.  These functions may go into a later version       of svgalib.8. KNOWN BUGS       This section is most  probably  outdated,  none	of  these       problems are no longer reported.       Using  a	 132  column textmode may cause graphics modes to       fail. Try using something like 80x28.       The console switching doesn't preserve some registers that       may be used to draw in planar VGA modes.       Wild  console  switching	 can  cause the text screen to be       corrupted, especially when switching between two	 graphics       consoles.       On  ET4000,  having  run XFree86 may cause high resolution       modes to fail (this is more XFree86's fault).       The Trident probing routine  in	the  XFree86  server  may       cause standard VGA modes to fail after exiting X on a Cir-       rus. Try putting a 'Chipset' line in your Xconfig to avoid       the  Trident  probe, or use the link kit to build a server       without the  Trident  driver.  Saving  and  restoring  the       textmode	 registers  with  savetextmode/textmode (restore-       textmode) should also work. [Note: svgalib now resets  the       particular  extended  register,	but  only  if  the Cirrus       driver is used (i.e. the chipset is not	forced	to  VGA)]       [This is fixed in XFree86 v2.1]       Some  Paradise VGA cards may not work even in standard VGA       modes. Can anyone confirm this?       Piping data into a graphics program has problems. I am not       sure  why. A pity, since zcatting a 5Mb FLC file into flip       on a 4Mb machine would be fun.       The tseng3.exe  DOS  program  include  as  source  in  the       svgalib	distribution  doesn't recognize any modes on some       ET4000 cards.  Also ET4000 cards with a Acumos/Cirrus  DAC       may only work correctly in 64K color mode.FILES       /etc/vga/libvga.configSvgalib 1.4.1		 16 December 1999		       19svgalib(7)	       Svgalib User Manual	       svgalib(7)       /etc/vga/libvga.et4000SEE ALSO       svgalib.et4000(7),   svgalib.chips(7),  svgalib.mach32(7),       vgagl(7), libvga.config(5), 3d(6),  accel(6),  bg_test(6),       eventtest(6), forktest(6), fun(6), keytest(6), lineart(5),       mousetest(6),  joytest(6),   mjoytest(6),   scrolltest(6),       speedtest(6),  spin(6),	testaccel(6), testgl(6), testlin-       ear(6), vgatest(6),  plane(6),  wrapdemo(6),  convfont(1),       dumpreg(1),	    fix132x43(1),	  restorefont(1),       restorepalette(1),      restoretextmode(1),	 runx(1),       savetextmode(1), setmclk(1), textmode(1), mach32info(1).AUTHOR       There are many authors of svgalib. This page was edited by       Michael Weller <eowmob@exp-math.uni-essen.de>.  The origi-       nal  documentation  and	most  of svgalib was done by Harm       Hanemaayer <H.Hanemaayer@inter.nl.net> though.Svgalib 1.4.1		 16 December 1999		       20

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -