convert any CRT TV or monitor into a vector (XY) monitor?
From HackIt: New uses for old CRT monitors
It would be very hard to do, but it is possible a CRT could be converted to a vector monitor. Perfect for playing Asteroids, perhaps under MAME.
You would have to replace all the control circuits, probably with an FPGA and three ADCs (x/y/intensity).
Posted at 8:58 am on Feb 25th, 2008 by MoJo
Television and PC monitor experiments
old cga/vga monitor to oscilloscope ?
Maybe I am over-simplifying but I was reading one of those examples of hacking into a CRT's horizontal & vertical yoke controls to sync to music:
and had the idea that it should be possible to create a DIY XY monitor (vector display like on an oscilloscope, Vectrex, Asteroids, etc.) for an Arduino or other uC, MAME or Vectrex emulator, from any TV or CRT, once you have hacked into the electron gun's yokes.
My understanding being:
Raster display: the horizontal yoke (an electromagnet) sweeps the electron gun from left to right turning on the beam wherever there's a "pixel" at that line (which lights up the phosphor at that point making it visible), then it starts over at the next line (vertical yoke moves down) and draws the next line, and so on,
Vector display: instead of rendering a moving image frame-by-frame using top to bottom/left to right scanning, shapes are drawn directly to the screen by positioning the horizontal & vertical yokes at the starting point, the beam turns on, and the yokes repoint to the end point, thus "drawing" the line inbetween the 2 points (I would assume this is for straight lines, not sure if circles or arcs are possible?) then the beam turns off, and the yokes get re-positioned to the next line's starting point. I'm not sure what turns the beam on & off or what kind of timing might be involved, obviously that needs to be controlled somehow. Or for color, where instead of a single white (or green, amber, etc) phosphor exists per pixel, there are multiple (red, green, blue) per pixel, and the beam hits each one at varying strengths (or for a varying length of time?) to 'mix" the primaries to the desired color? I'm not sure how that gets handled in a color vector monitor, but I would assume it's something similar to raster?
So if we can hack into a CRT's X/Y yokes and move them around with an audio signal, can we control the yokes more deliberately from a microcontroller to plot specific shapes or text, hence a vector display?
For those audio/TV hacks, what is the audio signal doing to the yokes that causes them to move? Whatever it is - voltage, resistance, etc - this is what our device would have to control.
Possible proof of concept version: make a device to control the yokes' position etch-a-sketch style with a couple of potentiometers, and turn on the beam with a switch or button. If you see a dot of light moving across the screen then it works.
I am thinking the controller might need to be "calibrated" for the individual CRT? (Maybe build some kind of calibration mode into the device.)
You might dedicate a microcontroller to driving the display - it could receive text or vector shape coordinates via serial, store the shapes to draw in its own memory, and persist or refresh the image independently, freeing up processing power for whatever device it's displaying for.
Another idea would be maybe add some kind of way to read light pen's coordinates, thus making the CRT an input device that can be read from the microcontroller or PC (the Vectrex had a light pen right?) [This would be a cool mod for the Arduino composite TVout as well.]
So is this idea possible without a ridiculous amount of work & parts? I may be dead wrong about how this stuff works (I'm sure that if this was possible, someone would have done it by now?) but figured it can't hurt** to put the idea out there.
I have visions of 4-player vector Arduino pong, Asteroids, Tempest, PDP-1 Spacewar!, vector NES Duck Hunt, a vector etch-a-sketch or lightpen drawing or animation program, or vector Atari Video Music. Possibly an open source color vector games system. Or just a vector display system for any Arduino or microcontroller project, made from any TV.
**WARNING: maybe it CAN hurt... Evidently hacking into any CRT can be deadly, you have to discharge the CRT and capacitors properly or you can get killed. So please be careful. This definitely is NOT for kids to try at home.