comp.lang.ada
 help / color / mirror / Atom feed
From: mfb@mbunix.mitre.org (Michael F Brenner)
Subject: Re: Port I/O
Date: 1996/11/05
Date: 1996-11-05T00:00:00+00:00	[thread overview]
Message-ID: <55nf0f$7fq@top.mitre.org> (raw)
In-Reply-To: 327E46A1.58D2@thomsoft.com


Ed Falis of Thomson Software Products 617 221-7341 said:
 > you might ask yourself
 > why you're trying to do what you're doing (presumably direct hardware
 > manipulation) from user code under NT or W95 rather than going through
 > a device driver.

The obvious answer is that NT does not provide device drivers, or 
fast enough device drivers to do the kind of animation, serial control,
parallel control, disk access, and sound that the games, simulatons, and
robots we are building require. Extremely high level operating systems
have advantages for some types of software (like databases where speed
is not important). However, when controlling industrial or game processes,
you need much faster access to the bits of information (like pixels,
voxels, serial bits, and control bytes) than is possible with a four-level
security layer on top of an operating system kernel. The game developer
need to be able to by-pass the operating system whenever anything
interesting in the game needs to be programmed. As an example, in 
writing software that displays a map, even a background map, you need
direct hardware access to the memory mapped pixel in order to display it
fast enough that the user does not have to wait for it, and even then, 
you have to carefully control the order of the bits and bytes you display,
in order to gradually res and de-res the map up, to make up for the
extremely low bandwidth of current CRT-type displays. Until operating
systems realize this (as Windows NT 4 is beginning to, by granting
programmers a little bit of access to the pixels and some ports if they
buy an expensive game developers kit), programmers must resort to 
some not very nice practices in order to meet the performance requirements
of the software.
  




  reply	other threads:[~1996-11-05  0:00 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-11-03  0:00 Port I/O Robert P. Kuzmicki
1996-11-04  0:00 ` Ed Falis
1996-11-05  0:00   ` Michael F Brenner [this message]
1996-11-06  0:00     ` Robert S. White
  -- strict thread matches above, loose matches on Subject: below --
1996-11-06  0:00 tmoran
1996-11-07  0:00 ` Michael F Brenner
1996-11-13  0:00 Simon Johnston
1996-11-14  0:00 ` Michael F Brenner
1996-11-14  0:00   ` Robert Dewar
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox