Jump to content
Falken

Simple GPUs for retro computing

Recommended Posts

Posted (edited)

I found this chip online, which seems to be still manufactured and cheap(?). Something like this was apparently part of the gameduino2.

Seeing that they went for an FPGA for the X16 (so far) I wonder, what simple graphics chips that are still manufactured _are_ out there?

https://www.ftdichip.com/Products/ICs/FT800.html

 

Even includes some form of audio, so not worse than VERA. 🙂

Does anyone know if this would be out of scope for the X16 instead of a FPGA based VERA? Or maybe already too advanced? 🙂


fT800.jpg.597072c9d76e2351e21c3fcdc13b7fbc.jpg

Edited by Falken

Share this post


Link to post
Share on other sites

First of all, that chip uses SPI or I2C to communicate with the host computer. That means (in case of Commander X16) that you'd be spending most of your cycles bit-banging its control and data lines through one of the VIAs. I think you'd need something on the order of 100 cycles just to send one byte over. Since one frame (assuming the display is still working at 60Hz) has approx. 133,333 cycles, you'd probably be able to send whopping 1300 bytes during one frame. Maybe it could be faster but still nowhere near the simplicity and speed of writing to a VERA data port.

Secondly, that chip works with display lists which themselves contain many different graphics primitives (and ones not so primitive):

Quote

Main features of the graphics engine are:

  • The primitive objects supported by the graphics processor are: lines, points, rectangles, bitmaps (comprehensive set of formats), text display, plotting bar graph, edge strips, and line strips, etc.
  • Operations such as stencil test, alpha blending and masking are useful for creating a rich set of effects such as shadows, transitions, reveals, fades and wipes.
  • Anti-aliasing of the primitive objects (except bitmaps) gives a smoothing effect to the viewer.
  • Bitmap transformations enable operations such as translate, scale and rotate.
  • Display pixels are plotted with 1/16th pixel precision.
  • Four levels of graphics states
  • Tag buffer detection

The graphics engine also supports customized build-in widgets and functionalities such as jpeg decode, screen saver, calibration etc

Essentially, you get something that performs anti-aliased blending of JPEG files and geometric primitives all on its own. That's not a video controller, that's a GPU. Think of it as a bastard child of Amiga's Copper and an early OpenGL accelerator. And I do think it's a bit over-the-top for this kind of computer.

 

Share this post


Link to post
Share on other sites

Very familiar with them. They are great for making things like thermostats, interface panel displays, and smart appliances, applications where having less than 1fps is ok.

 

 

Sent from my iPhone using Tapatalk

Share this post


Link to post
Share on other sites

 

On 1/9/2021 at 6:22 AM, Cyber said:

Some chips were proposed in Facebook group long time ago as a candidates for video chip.

These also all seem to do SPI like the FT chip I posted. I guess that was one of the reason to decide against them.

Thank you all for the explanations.

Share this post


Link to post
Share on other sites



 
These also all seem to do SPI

Nope. These can also use bus:
VS23S040D-B is a flexible four megabit SRAM memory and a PAL/NTSC video controller with SPI or 8-bit parallel bus.

Share this post


Link to post
Share on other sites
3 minutes ago, Cyber said:

Nope. These can also use bus:

Quote
VS23S040D-B is a flexible four megabit SRAM memory and a PAL/NTSC video controller with SPI or 8-bit parallel bus.

 

I'm blind .. *rubs eyes*

Share this post


Link to post
Share on other sites
Some chips were proposed in Facebook group long time ago as a candidates for video chip.
Here is some:
https://webstore.vlsi.fi/epages/vlsi.sf/en_GB/?ObjectPath=%2FShops%2F2015020901%2FCategories%2F"Circuits and KITs"%2FVS23S010

Works fine if all you wanna do is display static bitmap images. No tiles, no sprites, no scrolling.


Sent from my iPhone using Tapatalk

Share this post


Link to post
Share on other sites
3 minutes ago, Lorin Millsap said:

Works fine if all you wanna do is display static bitmap images. No tiles, no sprites, no scrolling.

Yeah, true. I remember these were the reasons why this and other similar suggestions were rejected in X16 Facebook group.

Share this post


Link to post
Share on other sites
On 1/8/2021 at 9:22 PM, Cyber said:

Some chips were proposed in Facebook group long time ago as a candidates for video chip.

Here is some:
https://webstore.vlsi.fi/epages/vlsi.sf/en_GB/?ObjectPath=%2FShops%2F2015020901%2FCategories%2F"Circuits and KITs"%2FVS23S010

Yeah, this really is re-hashing an old topic. VERA is the only practical choice, given David's constraints. 

 

Share this post


Link to post
Share on other sites

Quite a few retro designs use TMS9918/9928 chips, which were in the MSX amongst many, and are in many ways closer to Vera than the C64 is. I think they stopped making these years ago, though as with the Spectrum ULA there is an FPGA replacement. Most modern chips are designed for display systems not video gaming, so the speed doesn't really matter. (I think the original Vic20 display chip was as well, and was co-opted by Tramiel)

Share this post


Link to post
Share on other sites
52 minutes ago, paulscottrobson said:

Quite a few retro designs use TMS9918/9928 chips, which were in the MSX amongst many, and are in many ways closer to Vera than the C64 is. I think they stopped making these years ago, though as with the Spectrum ULA there is an FPGA replacement. Most modern chips are designed for display systems not video gaming, so the speed doesn't really matter. (I think the original Vic20 display chip was as well, and was co-opted by Tramiel)

Pretty much in stock if somebody desires to build his own system around these:
https://www.digipart.com/part/TMS9918
https://www.digipart.com/part/TMS9928

Share this post


Link to post
Share on other sites
9 hours ago, TomXP411 said:

Yeah, this really is re-hashing an old topic. VERA is the only practical choice, given David's constraints.

I didn't mean to reopen the topic, I was just curious if there even are chips produced nowadays that work as intended. I am regretfully not very well versed in the topic yet. Is there a website that goes into this topic maybe? I'll gladly read up on this.

Share this post


Link to post
Share on other sites
7 hours ago, Cyber said:

Funny.... following your thread, I landed on the wikipedia page.
And reading it, I stumble upon this:
 

Quote

The CPU communicates with the VDP through an 8-bit bus. A pin controlled by the CPU separates this bus into two "ports", a control port and a data port. To write or read a byte of video memory, the CPU first has to write two bytes on the VDP's control port to the VDC's internal address register. Next, the CPU performs the actual write or read on the VDP's data port. As a data byte is written or read, the TMS9918 automatically increments the internal address register. This auto-increment feature accelerates writes and reads of blocks of data. The control port is also used to access various internal registers.

Sounds like there's a touch of 9918 in VERA 😉

  • Like 2

Share this post


Link to post
Share on other sites

There was even more before experience showed the main bottlenecks with that approach resulting in more control registers being directly addressable. AFAIU, that was what used up the pins that had been slated for the built in serial port.

It also has similarities with how the C128 80 column display is accessed.

 

Share this post


Link to post
Share on other sites
11 hours ago, Cyber said:

The Texas Instruments TMS9918

That reminds me: TI _still_ makes graphical calculators. I wonder what those use, but it's probably some of the simpler forms of adressing a display.

Edited by Falken

Share this post


Link to post
Share on other sites
10 minutes ago, Falken said:

That reminds me: TI _still_ makes graphical calculators. I wonder what those use, but it's probably some of the simpler forms of adressing a display.

They are custom made for their custom LCD displays, so not something designed to work on a standard TV or monitor. Generally, they are extremely slow frame rates, like 5 fps, so not good for gaming - various attempts at Doom and Tetris notwithstanding.

  • Like 1

Share this post


Link to post
Share on other sites
13 hours ago, SlithyMatt said:

They are custom made for their custom LCD displays, so not something designed to work on a standard TV or monitor. Generally, they are extremely slow frame rates, like 5 fps, so not good for gaming - various attempts at Doom and Tetris notwithstanding.

I wrote a Z80 scrolling sprite and tile engine for one a few years ago and while it worked fine the quality of the display took a bit of a thumping.

  • Like 3

Share this post


Link to post
Share on other sites
On 1/12/2021 at 6:25 AM, SlithyMatt said:

They are custom made for their custom LCD displays, so not something designed to work on a standard TV or monitor. Generally, they are extremely slow frame rates, like 5 fps, so not good for gaming - various attempts at Doom and Tetris notwithstanding.

Definitely, the target for CX16 Doom outght to be 12.5fps, for that familiar stop motion effect from 1980s music videos.

  • Haha 1

Share this post


Link to post
Share on other sites

Call me megalomaniac but did anybody ever approach some company like WDC to build something like VERA for real?  🤪

There seem to be a ton of 8bit projects, all falling back to doing sound and graphics in an FPGA because nobody builds these things anymore. They might say no of course but you might never know, might be a market nieche and they already build 8bit CPUs (which seems a nieche market to begin with).

Share this post


Link to post
Share on other sites
9 minutes ago, Falken said:

Call me megalomaniac but did anybody ever approach some company like WDC to build something like VERA for real?  🤪

There seem to be a ton of 8bit projects, all falling back to doing sound and graphics in an FPGA because nobody builds these things anymore. They might say no of course but you might never know, might be a market nieche and they already build 8bit CPUs (which seems a nieche market to begin with).

I bet @Frank van den Hoef wouldn't mind a fat royalty check to have WDC convert VERA to an ASIC, but the likelihood of that check coming is practically nil.

  • Like 1

Share this post


Link to post
Share on other sites
On 1/15/2021 at 5:19 AM, Falken said:

Call me megalomaniac but did anybody ever approach some company like WDC to build something like VERA for real?  🤪

There seem to be a ton of 8bit projects, all falling back to doing sound and graphics in an FPGA because nobody builds these things anymore. They might say no of course but you might never know, might be a market nieche and they already build 8bit CPUs (which seems a nieche market to begin with).

Also using an FPGA because that is the current technology for market niches of this size.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

Please review our Terms of Use