Retrochallenge 2026/10
RTX8080
This year for the retrochallenge, I am doing a purely software project. I am porting the 8080 emulator I originally ported to the TRS-80 Color Computer, to a modern platform. Except, instead of running in on the CPU, I'm going to run it on the GPU, an nVidia RTX3060. The plan is to port the emulator as a bytecode interpreter running in a glsl compute shader. If all goes well, this can instead be used as a pixel shader, and I can render a scene, in which each pixel is calculated by its own instance of an Altair running BASIC. This is a completey absurd and useless project.
This project is also being mirrored on the ACMS Forum
https://forum.acms.org.au/t/rc2026-10-rtx8080/1154
[viewing Newest] . . . |Older >>| . . . |Oldest|
(view all as one document)
October 26
Altair BASIC
Altair BASIC is working on the GPU. It doesn't do much yet but run BASIC programs on the terminal.
Next steps:
- Easy reading of BASIC program from disk instead of keyboard.
- Add some kind of memory COW (copy on write), so I can have MANY of these running at once.
- Deal with I/O: Right now any print or keyboard input makes the glsl code return to the CPU to handle. If a program is running and we just want the output, then what I think has to happen is the final output just needs to be put into a buffer.
- Try running thousands of compute shaders at once. A single instance will run up to a certain point. Then, execution will fork. Probably trigger by printing some special character, seems the easiest way to do it. After forking, input and output will be from a small fixed length buffer.
- Draw a picture with it. Each instance will accept a pixel coordinate from INPUT X,Y, and will PRINT R G B values. This should be to the per-instance fixed size buffer, so unless there is some error, there wouldn't be any need to jump back to the CPU.
- Use as a pixel shader? This one is trickier, since it will require the shader run in one-shot... I don't know how many 8080 instructions are reasonable to run at a time. When I set it to 100000, my entire computer gets sluggish... I'm stalling the GPU. 10000 the rest of my computer acts normal.
[viewing Newest] . . . |Older >>| . . . |Oldest|
(view all as one document)