Re: vectorbeam hardware

From: Adam Wiggins <adam_at_angel.com>
Date: Fri Nov 26 1999 - 06:02:34 EST

On Thu, 25 Nov 1999, Rodger Boots wrote:
> The Vectorbeam/Cinimatronics used the DACs to charge a capacitor to the
> starting point and then had the DACs charge the capacitor to a finishing
> point that (through a resistor) that was WAY past where they wanted to go.
> Then they only used a small part of the charging of the capacitor as their
> line. This gave them a relatively linear line out of an exponential
> charging curve. A timer determined how long to generate the line.

Ah ha! This is the information I was looking for.

> Doing it your way you'll need a software version of a rate multiplier.
> Initialize the DACs to the starting point. For example, let's say you then
> want to draw a line that's moving to a finishing point 50 steps in the X
> direction and 30 steps in the Y direction, take the larger number (50) and
> make a for-next loop that changes X from the starting to the ending value.
> Inside that loop you will change X by 1 for each iteration and Y by 30/50
> (.6). This will create your smooth line. Just don't go faster than the
> monitor can move and you'll be OK. NONE of this needs to be floating
> point math.

In other words, draw a line the exact same way that you would on a raster
monitor. :)

Yes, that was the first thing I thought of, and I think I mentioned that
in my first post (that Zonn replied to). My problem is that I get a series
of very close together bright points, which of course is not what I want.
Since I refuse to believe that a 450mHz processor is not able to compute
a few thousand points per second, I determined that the slowdown is happening
at the level of my analog output card. Checking the documentation, it lists
70 microseconds as the settling time of each DAC channel. Glancing at the
specs for the AM6012 used in Atari vector games, it reports a latency of
250 *nano*seconds. Quite a difference. So I must assume that the board
I'm using is too slow.

So that leads me to a whole new question: what's the best way to get an
analog output from a PC that is fast enough to control a vector monitor
beam accurately? Is it the ISA bus of the PC that is not fast enough?
Would a PCI board do the trick? (The best I've seen in premade analog output
boards is 2us, which is still larger than 250ns.) I'd really like to be
able to just buy a couple of speedy 16 bit DACs and slap them onto the back
of my PC, but of course there's no convenient high-speed output. Serial
and parallel are probably too slow, and USB is probably too complicated for
me to wire up.

Any thoughts? Right offhand it seems that the best option would be to
build a PCI board that just has a couple of DACs on it, but my knowledge
of electronics and the PCI bus are both minimal enough that I'm not even
sure how complicated of an endevour this would be, or even if I could
achieve speeds fast enough to draw nice smooth vector lines.

Thanks again!
Adam
Received on Fri Nov 26 04:45:42 1999

This archive was generated by hypermail 2.1.8 : Fri Aug 01 2003 - 00:32:29 EDT