https://git.sr.ht/~tevo/simh-vec-osc
Scope courtesy of @lhc
Implementation is very silly, it uses PortAudio's synchronous interface and effectively limits the speed of the emulated machine. I've tried an async implementation on a ring buffer overwriting samples regardless of whether they've been drawn, but that just looks jittery. There's only so much you can push though an audio interface. Maybe there's a way to make that nicer somehow?
I've heard of some people using VGA as an analog out, setting a modeline with a tiny VSYNC/HSYNC and drawing according to how you want your signal to come out; then we'd get a few MHz rather that 48 or 96kHz, I guess.