Thanks for the advice.I'm currently connecting them directly.
HOWEVER...
The pins I'm using for the dedicated VGA interface have 1.8V levels, which is far from ideal. They really should be level shifted up to proper TTL levels.
Adding a 120R resistor given a small amout of additional protection to the FPGA, but will potentially reduce the levels even further.
You really need to test this with the monitor you are intending to use.
Or better still, use HDMI. And as a bonus you'll get more colours.
On the Atom Core (but not currently on the Beeb Core) the VGA signals are duplicated to a second set of outputs called the gpio bus, and these outputs are 3.3V levels. But these outputs are multipurpose. So if you ever wanted to use the 6502 bus tracing feature (e.g. for debugging a machine code program) you would loose this copy of the VGA signals.
Sorry it's a bit complicated, that really just reflects this being more of an experimental project!
In light of the issues you've highlighted, I think I'll park the idea of adding a VGA port for the time being (although I'll still buy the components).
My main motivation for adding a VGA port was so that, with the aid of a suitable VGA to HDMI adapter, the Atom's audio signal could be output through the HDMI port. However, as you've indicated that HDMI audio will eventually be added to the AtomFpga core, I might just live with a separate audio connector for the time being.
That being said, I do own quite a few old CRT monitors, and it would be quite nice to be able to connect the board to one of those monitors through VGA, for the sake of authenticity.
One thing I've noticed when running AtomFpga on one of my more modern HDMI monitors, is that the text looks far too wide. This is presumably because the Atom was designed to be used with a 4:3 aspect ratio monitor, whereas most modern monitors have a widescreen 16:9 aspect ratio. I presume that BeebFpga exhibits the same behaviour?
Is this something that could possibly be addressed in the future? It occurs to me that the AtomFpga core could be amended so that it optionally outputs a wide VGA (FWVGA) resolution of 854*480 instead of the standard 640*480. You could then add 107 pixels to the left and right margins, and the usable display area in the centre of the screen would display with a correct 4:3 aspect ratio on a 16:9 monitor. Does this sound feasible?
Statistics: Posted by Grasshopper — Sun Jan 07, 2024 8:08 pm