*BSD News Article 16764


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!constellation!aardvark.ucs.uoknor.edu!ns1.nodak.edu!netnews.nwnet.net!usenet.coe.montana.edu!
 saimiri.primate.wisc.edu!caen!spool.mu.edu!howland.reston.ans.net!
 sol.ctr.columbia.edu!news.kei.com!news.byu.edu!cwis.isu.edu!fcom.cc.utah.edu!cs.weber.edu!terry
Newsgroups: comp.os.386bsd.questions
Subject: Re: How do I read the game port?
Message-ID: <1993Jun2.203952.761@fcom.cc.utah.edu>
From: terry@cs.weber.edu (A Wizard of Earth C)
Date: Wed, 2 Jun 93 20:39:52 GMT
Sender: news@fcom.cc.utah.edu
References: <raboczi.738995607@s1.elec.uq.oz.au>
Organization: Weber State University  (Ogden, UT)
Keywords: 386bsd game interface
Lines: 21

In article <raboczi.738995607@s1.elec.uq.oz.au> raboczi@s1.elec.uq.oz.au (Simon Raboczi) writes:
>The title line says it all: has anyone written a device driver, or
>used inb/outb to directly test the game port?

Most game cards require that you poll them -- they don't generate any
interrupts.  You *could* write a driver to do this, but it would generally
be a _bad_thing_(tm); DOS can live with polling because it's single tasking
and has nothing better to do with its time.  UNIX (and 386BSD) generally
like you to generate interrupts if you are a device that wants to be serviced.

The lack of a good way to do polling (or other forms of timed I/O) is what
makes it difficult to write game port drivers, drivers for some MIDI
interfaces, and drivers for QIC-40/QIC-80 tape drives under UNIX or UNIX
like systems.


					Terry Lambert
					terry@icarus.weber.edu
---
Any opinions in this posting are my own and not those of my present
or previous employers.