Example: Frogger with VGA has green band around edge, like a picture frame, the component doesn't do this. Perhaps its just how my TV works, but I wish the frame could be black vs. green, or no frame at all. I have widescreen LCD TV.
It is not quite as simple as expanding to the edges (I wish it were). The original video format is a 4:3 ratio, so any time you display on a widescreen, your TV (or monitor) is going to either stretch the original video, or have bars on the sides.
The F18A is designed to produce a 640x480@60Hz 4:3 ratio signal, which is very different than an analog composite video signal. I spent a lot of time debating the final output format and resolution, and whether the F18A should reproduce the border (overscan) of the original VDP. These were the considerations:
* 640x480 is massively supported by almost every type of display made since the late 1980's. The other choices were 800x600 or 1024x768, but the higher the resolution, the higher the frequency and the more data that has to be pumped to the display. Since the original "resolution" of the 9918A is 256x192, anything over that resolution is a waste of time and complicates the circuit.
* The "border" of the original VDP is really the off-display overscan of a TV, and on a modern TV or computer monitor the display can be sized to fill the physical screen (no visible overscan). Not so much with old TVs, so the designers had to include fudge-factors so the VDP worked on all TVs. Since the border was visible on the original VDP, and the color of the border is programmable, I thought it was important to have some of that border visible in the F18A.
* Stretching vs dividing. In a CRT, the horizontal sweep does not have any resolution, it is truly analog. The number of pixels depends totally on how fast the color signal change, and how fast the CRT can respond to those changes, as well as the mask on the inside of the tube.
If during the duration of the horizontal sweep you only put out color changes for 256 pixels, then you will only see 256 pixels and it will fill the screen from edge-to-edge, no borders. The "modern day" problem is that monitors are not being made with CRTs any more, but with fixed resolution displays, i.e. LCD and LED flat panel monitors. Unlike a CRT, the number of pixels across the display is not truly analog, and if you ignore that fact and try to display a resolution that is not divisible by the monitor's native resolution, you will get artifacts as the analog pixels cross the physical pixel edges.
I tried the truly analog approach to the video and the results were unacceptable. Based on the strong support for 640x480, even in modern LCD and LED monitors, I decided to drive the monitor at that resolution and simply make "fat pixels" (each VDP pixel is a 4x4 block of VGA pixels) to match the 256x192 resolution of the original VDP. The math breaks down something like this:
256 * 2 = 512 display pixels to support the native 256 horizontal pixels
640 - 512 = 128 display pixels of border, 64 on each side
So the VGA display goes like this:
|<--64 pixels left border-->|<--512 pixels display-->|<--64 pixels right border-->|
Top and bottom is similar:
192 * 2 = 384 display lines
480 - 384 = 96 display lines of border, 48 on the top and bottom
I did consider 1024x768 for a time (1024/256=4 and 768/192=4), and use a 4x4 pixel block to make one native VDP pixel. While that would have let the display stretch to the edges, it would require pumping pixels at 80MHz vs 25MHz (which complicates the circuit design a *lot*) and there would be absolutely no simulated border that was available on the original VDP (and let me tell you right now, people would complain about that!)
Also, at 1024x768 you lose the ability to have 30-rows (the F18A offers the ability to display 30 tile rows instead of just 24).
Anyway, there are a lot of trade-offs and "stretching to the borders" is not as simple as it seems. Video and crossing formats is very complicated, and trying to support thousands of different monitors and TVs makes it even harder, as does trying to make everyone happy. If anyone thinks it is easy, I suggest they give it a try first.