Quake On an Oscilloscope 71
An anonymous reader writes: Developer Pekka Väänänen has posted a fascinating report on how he got Quake running on an oscilloscope (video link). Obviously, the graphic details gets stripped down to basic lines, but even then, you need to cull any useless or unseen geometry to make things run smoothly. He says, "To cull the duplicates a std::unordered_set of the C++ standard library is used. The indices of the triangle edges are saved in pairs, packed in a single uint64_t, the lower index being first. The set is cleared between each object, so the same line could still be drawn twice or more if the same vertices are stored in different meshes. Before saving a line for end-of-the-frame-submit, its indices in the mesh are checked against the set, and discarded if already saved this frame. At the end of each frame all saved lines are checked against the depth buffer of the rendered scene. If a line lies completely behind the depth buffer, it can be safely discarded because it shouldn't be visible."
Looks a lot like... (Score:4, Insightful)
Re: (Score:2)
well no surprise.
however, I was thinking, can this be ported over to use vectrex as the display? maybe less flicker with it's screen?
He didn't get it running on an oscilloscope... (Score:5, Informative)
He's displaying it on an oscilloscope. Still cool, though.
Re: (Score:3)
As an undergrad, we had to do Breakout in assembly, but displayed on an analog oscilloscope. Kind of fun. Simple, but the point was to learn about interfacing to devices not the assembler or programming style.
Vector Graphics (Score:5, Insightful)
The irony is that it's only taken 40+ years to get to display resolutions for raster graphics to approximate vector graphics.
Not to say this isn't cool. I like that the youtube video is basically the following chain: raster Quake -> custom vector renderer -> vector scope -> raster camera capture -> raster video upload -> raster youtube video stream -> you eyes
In *no way* is the video as cool as that scope in real life!
Re:Vector Graphics (Score:5, Interesting)
It's what we've been prepared to put up with. If more people had bought those monster resolution IBM LCDs in the 1990s then economies of scale would have resulted in 4k screens earlier. It wasn't a technological barrier, it was a progression driven by tooling for whatever would sell. That's why we had the step backwards in resolution for a decade+ and I only gave up on CRTs a couple of years ago when 1600x1200 LCD prices dropped from the stratosphere.
Back to vectors - that old Star Wars video game still seems to impress kids despite their phone hardware outperforming it 100 to 1.
IBM LCD (Score:3)
The IBM T221 cost $17,999 when it was released. I can't imagine anyone outside a research lab or government agency buying one back then.
Re: (Score:2)
Middle ground at less cost was available but didn't happen. It was made out of 2400x900 panels which would have been pretty decent alone.
Re: (Score:2)
I got to play with the IBM T221 back when I worked at Tech Source. One dual-link DVI didn't have enough bandwidth for a decent framerate, so I helped adapt one of our dual-head air traffic control video cards to drive the display. That monitor was awesome. Retina display before its time!
Strawman cometh (Score:2)
The strawman in your head may have mentioned that but a resolution in my post was:
It looks like I'm a bit less fussy than the strawman in your head so I suggest you argue with him instead of me.
This is exactly the situation for that term (Score:2)
Please address me and not the strawman in your head. The term fits exactly since you've built something in a parody of my image and set fire to it.
Re: (Score:2)
I'm not sure why that's ironic. When you're only displaying the outlines of objects, you don't need nearly as much memory (or memory bandwidth) as you do with a raster display. On top of that, vector displays only get that resolution in monochrome; you lose it when you try to do color. (A color display can't exceed the resolution of its shadow mask.) I can tell you from experience: Qu
Re: (Score:2)
Re: (Score:2)
The irony is that it's only taken 40+ years to get to display resolutions for raster graphics to approximate vector graphics.
Assuming you only look at images optimized for vector graphics display, and you don't actually accurately measure the position of the lines.
Re: (Score:2)
That is about right given that my oldest digital storage oscilloscope was first produced in 1981 and has a 10 bit display for 1024x1024 in a 5:4 format of 10 cm x 8cm which yields 260x325 DPI. Oscilloscope CRTs however are a little unusual in that they use very high acceleration voltages to produce bright traces and this has a side effect of giving them a smaller spot size although i
Nice work (Score:2, Insightful)
No snarky commentary to offer like the above posters.
How many Mhz for Nethack? (Score:3)
Please vectorize my dog. Thx.
Nice (Score:5, Informative)
That is by far the geekiest thing I've seen in a long time. As someone who has also ported Quake [slashdot.org] to run on hardware it wasn't designed for, my hat's off to you.
Re:Nice (Score:5, Interesting)
How about a song that makes pictures?
https://www.youtube.com/watch?... [youtube.com]
Re: (Score:2)
Oscilloscopes are fun! I used to struggle with them during my labs, never imagined anyone doing this.
Re: (Score:2)
Now _that_ is fucking cool.
Just when I thought this place was turning into an ad infested swamp you pull out that gem!
Re: (Score:2)
I agree. He wins "the geekiest nerd" contest for this one. Big time. :)
Beautifully steam-punky (Score:5, Interesting)
In an alternative steampunk universe, this is how graphical displays MIGHT work.
Re: Beautifully steam-punky (Score:2)
It's actually not that far off from what MIT was doing with early millimeter wave radar in WWI, in some ways.
This is also just begging to be polished up some and used for a practical effect in a sci-fi movie.
Re: (Score:2)
The original Battlestar Galactica TV series was filled with Tektronix raster displays.
http://en.wikipedia.org/wiki/T... [wikipedia.org]
Re: (Score:2)
"vector"
I'm drunk.
Re: (Score:2)
Thank you for the link to that Wikipedia article - that's a fascinating read!!! And I thought I knew the history of computing relatively well.
Re: (Score:2)
Well, there's this:
http://www.computerhistory.org... [computerhistory.org]
and this
https://design.osu.edu/carlson... [osu.edu]
Re: (Score:2)
So you are saying the they should rather port Fallout 3 for this?
Doesn't Count (Score:3)
He didn't find all the secrets...
Cool Hack (Score:1)
Flat out, one of the coolest hacks in history.
Well Done!
The real question is... (Score:1)
I bet the water would have great waves....
I ain't afraid of no quake! (Score:1)
now run duke3d on it.
Seriously cool (Score:2)
Easier by several other methods (Score:2)
First off, In the late 90's Tektronix made a series of digital oscilloscopes that ran an embedded version of Windows 98.
But really, the easiest way to get Quake running on an oscilloscope is to take the raster signals from an analog CRT controller (like, for instance, a VGA card) and use the vertical and horizontal signals to properly drive the X and Y axis, and feed the video into the Z axis. Like, duh. Why would you vectorize it?
Re: (Score:2)
Pretty sure those old scopes ran winNT, not 98 (for obvious reasons)
If I remember rightly you could use a mouse/keyboard with them, so controls would be simple.
As for why vectorise it? Why not!
Re: (Score:1)
Nope. The scopes that I remember specifically had a Windows 98 bootup screen. There's no reason at all that a completely stable 'Oscilloscope' app can't be run on Windows 98, particularly if they make it fairly difficult to install a lot of the croft and crap that the typical 'desktop/home' user put on a Windows 98 machine back in the day. I suspect at that time, doing anything in snappy 'real time' on NT was much more difficult. Win 98 itself wasn't very good, but it gets the hell out of the way of wha
Re: (Score:2)
Those windows teks made the previous generation of tek scopes instantly more desirable. Office space used a red stapler, but in the real world, in real labs, people fight over the most recent tek scope that still has a useable interface.
Re: (Score:2)
Yep. Win98 for the Agilent ones too.
I remember, around 2001, buying a vibration motor for an old Nokia 3210 mobile phone that wasn't originally supplied with one, though the space inside was there. Fitting the motor was easy but I needed to flash the firmware to drive it. For this I needed DOS on a PC with a serial port. My home PC ran linux (obviously), my desktop at work was NT4 but the 'scope in the lab ran Win98 and had the serial port and floppy drive. 2 minutes later I had a vibrating phone.
Someone el
Re: (Score:2)
First off, In the late 90's Tektronix made a series of digital oscilloscopes that ran an embedded version of Windows 98.
As far as I know, every current Tek scope has either Windows (higher-end) or embedded Linux running it. All our 4000-series and up scopes have a mix of Win2K and XP, which is for us a disaster since we're not allowed to use them on the corporate network now that there's no longer any OS support for them. Weirdly, the Linux-based systems, which appear to have 2.2-era kernels, are freely allowed on the network and feature integral webservers so you can control them remotely without needing any fancy softwar
Re: (Score:2)
The current Tektronix 5000 series is Windows 7.
Re: (Score:2)
First off, In the late 90's Tektronix made a series of digital oscilloscopes that ran an embedded version of Windows 98.
And nowadays all the major high end scope vendors make scopes running an embedded version of windows 7.
Re: (Score:2)
Not unusual - a large amount of test equipment, especially higher end gear, run Windows today. Basically because the equipment is expensive enough they don't have to save cost by using low-powered SoCs and can just dump a full PC on it, getting you the speed and flexibility.
I have used a logic analyzer that used Windows 2000 embedded, and seen ones based on XP embedded and Windows 7 embedd
Nice (Score:3)
More of this!
I usually don't read the youtube comments but... (Score:1)
This one is classic:
"Please don't support this abuse of technology, Reddit. Oscilloscopes were invented to benefit mankind and save lives by being used for purposes such as monitoring heart rates. It's disgusting seeing a male program it to run a violent video game. This is exactly the same as going to a school for a shootout rather than for education. I hope this travesty is destroyed before a doctor mistakes it as a heart rate monitor and ends up shooting a female patient.
Berta Lovejoy, Feminist, Promoter
Has he not heard of the Z (blanking) axis? (Score:3)
Re: (Score:3)
Because it's just using a crummy sound card, initially AC coupled, then some hacked DC coupled one.
This would be much more interesting with 20-50x the bandwidth, which a scope like this could deal with easily. That would require a good data acquisition (DAQ) card with high sampling rate D/A converters.
Some low-end analog CRT scopes (like my 20MHz B&K) don't include Z axis inputs. I'm contemplating hacking one on to mine, and also building a generic set of deflection amplifiers to use old electrostat
Re: (Score:2)
That would require a good data acquisition (DAQ) card with high sampling rate D/A converters.
Or a cheap VGA output. Connect the RGB outputs to X, Y and Z and load the frame buffer with a suitable picture.
Re: (Score:2)
Yes but that requires a 3rd output. Instead, he uses the fact that vector display brightness is dependent on how fast you sweep the beam, so "off" lines are simply swept fast while lines meant to be shown are swept far slower.
Incidentally,
Where is my upvote button? (Score:3)
PS4? Xbone? PC? (Score:2)
Digital phosphors (Score:2)
To really make the circle complete he needs to pipe it to a digital phosphor oscilliscope. The would be the height of irony.
Another thought would have been to output the X and Y scans on red and blue of a video card to have much higher bandwidth than the audio channels provided.
In short, where the hell is my Geekport?!
made my eyes hurt (Score:2)
almost as bad as watching it on a WinCE device (yeah, tried playing Quake on a Dell Axim X5, wasn't happening).
Television (Score:2)
Very cool hack! Back in my younger days, I met a lab technician who would impress the much younger engineers by displaying broadcast TV on an oscilloscope.
pre-1980 computer graphics were vector (Score:2)
Our first image raster graphics terminal in 1980(AED) had 512x512 8bit-indexed-color resolution and cost $30K ($120K 2014 $$). Most of that was for screen buffer memory which was still several thousand dollars a megabyte then. PC memories were still counted in tens of killobytes (1984 Mac 128KB). I believe you can get this kind of display