, 14 tweets, 3 min read Read on Twitter
a project i've been thinking about for a really long time, if I decided to get into FPGA Bullshit, is a video card for emulators. a USB device with composite/svid/etc that can plug into an emulator and output raw 240p
of course, this is really just a larger expression of my *immense* frustration with computer video: computers don't support multiple display devices. they absolutely don't, in any effective, meaningful way.
windows and macos (i don't care about linux literally don't @ me) only understand the computers video as a single big rectangle. done. period. you can plug in as many video cards as you want, but they just get a window into the rectangle. there's no further abstraction.
It's impossible - *impossible*, through any means, the OS does not understand it - to tell windows "no, this video card is not part of the big rectangle. do not make it a desktop. it will display nothing but what I tell it to."
This is why you see BSODs on billboards. because nobody has ever solved this problem - Windows has no support for solving this problem. The APIs do not have a concept for separate video outputs. You would need to design your own hardware, driver and API. Nobody does.
Literally the only way to get video out of Windows, for the last 30 years, has been to configure a video card to get a slice of the desktop, then carefully position your desired picture in that slice. You cannot turn off Windows' automation regarding this.
It is impossible - FLAT OUT impossible, by design and specification - to:
- position a window in an absolute location from which it will never move
- make that window be the topmost window at all times
- display nothing but that window on a given device
the desktop is absolute
Obviously i know I can install a second graphics card, set the output to a nonstandard video mode, and put that through a converter. Duh. And that's fragile, INCREDIBLY fragile. Windows HATES it and fights it tooth and claw.
You have to install a bunch of tweakui bullshit if you want any hope of cordoning off a display device. When apps go fullscreen on other displays they'll fuck up your dedicated one. Etc. etc. it's hokey, cracker jack horseshit and we deserve better.
Anyway. I wish I had any of the necessary skillsets to build the thing I'm talking about because it's one of those conceptually simple things that, of course, is not simple at all.
It is """""not hard"""" to make an FPGA output 240P video. it's """""straightforward"""" to make an emulator output its raw RGB data to an API instead of to the screen. The USB driver is """"simple"""". in practice that's all nightmarish
i know I don't have the patience for any of it. Debugging an FPGA - christ, I nearly threw my Arduino and shitty USB logic analyzer across the room last night. I absolutely do not have the patience or the domain knowledge for it.
It's a bummer, because you can't really "commission" this kind of work. Even if I had the money (i absolutely don't), nobody would make something like this except out of personal passion or as part of an actual steady job
it's like $100k of labor, long nights sobbing at the MSDN docs (god forbid you want to make it Mac or Linux compatible as well), skipping parties and not having friends over
Missing some Tweet in this thread?
You can try to force a refresh.

Like this thread? Get email updates or save it to PDF!

Subscribe to Gravis: The Posts Lizard
Profile picture

Get real-time email alerts when new unrolls are available from this author!

This content may be removed anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!