CPCWiki forum

General Category => Amstrad CPC hardware => Topic started by: zhulien on 20:58, 11 May 24

Title: Other Video Cards
Post by: zhulien on 20:58, 11 May 24
Discussion to group video card alternatives...
Title: Re: Other Video Cards
Post by: zhulien on 21:02, 11 May 24
Is the Zeal VGA card reasonable for a CPC if an adapter was made? An adapter would need to be in some ways similar to a memory expansion to service banking into the CPC.

https://zeal8bit.com/getting-started-zvb/
https://zeal8bit.com/docs/video_port/#overview
Title: Re: Other Video Cards
Post by: robcfg on 21:20, 11 May 24
I'd love just to have mode 1 with 16 colours...
Title: Re: Other Video Cards
Post by: Benedikt on 13:13, 12 May 24
Well, actually, it should be possible to build a RAM+video expansion that contains 64 KiB of shadow RAM for the CPC's internal RAM, regenerates the CPC's internal clock and control signals with accurate phase, contains a shadow CRTC of the same type as the internal one and contains pixel generators with access to the external (shadow) RAM, but with 16 bit data path to e.g. a pair of SRAM chips.

With appropriate pixel generators, you would get a 16 MHz 4-color mode, an 8 MHz 16-color mode and a 4 MHz 256-color mode.
From a programmer's point of view, you would essentially write two pictures with the normal CPC color depth: One to the internal 64 KiB (and thereby the external shadow RAM) and another to a specific area in the expansion's official RAM space.
With an appropriately designed bypassable write-back-latch in the second RAM chip's data path, block fill and block copy operations would be possible without speed penalty, regardless of the doubled bit depth.
Title: Re: Other Video Cards
Post by: andycadley on 14:20, 12 May 24
The problem I see with that sort of design is that 16KB is, quite frankly, already too much data for the CPU to push around. Double it to 32K and you'll have a machine that can display pretty graphics but absolutely crawls doing much with them.

The Plus models took the right idea, IMO. Keep the RAM usage down but allow better colour selection. Provide hardware acceleration for scrolling and separate sprite hardware so the screen needs minimal updates. There are some pain points in the design, like not packing the hardware sprite images this requiring double the number of writes (and having no way to share images). I'd still take that over having to push double the screen data around.
Title: Re: Other Video Cards
Post by: Prodatron on 22:10, 12 May 24
I agree to Andy, better graphic only makes sense, if there is a blitter/GPU included in the hardware like with the GFX9000 (https://www.youtube.com/watch?v=plQf9_7zPSA) (VDP9990).
Title: Re: Other Video Cards
Post by: McArti0 on 22:23, 12 May 24
only 20-25MHz z80, everything else makes no sense.
But T-rex already exists in FPGA.
Title: Re: Other Video Cards
Post by: SerErris on 08:23, 13 May 24
Regarding the Zeal graphics linked above, that might not be the case, as it does support tile graphics. This is one of the major limitations of the CPC design as of today, as it simply does not have tiles nor sprites.

So if you would have tiles and just need to instruct the graphics card on where each tile goes and then can use graphics cards scrolling and tile display, you actually gain a lot of time for doing logic instead of copying graphic data around.

However the question is if that will ever be successful. The point is, that you need to write code specific to that card and if it is not widle adopted, no one will write code for it. The classic henn and egg problem.
Title: Re: Other Video Cards
Post by: eto on 09:19, 13 May 24
Quote from: SerErris on 08:23, 13 May 24The classic henn and egg problem.
Not necessarily. It was already discussed in other threads and Benedikt also mentioned it: 

With a graphics card that mirrors the lower RAM and mimics/emulates the GateArray/CRTC combo it could be possible to build a perfect DVI/HDMI output. Instead of connecting the CRT to the normal output you would connect the graphics card to a LCD. Slightly enhanced it could even support the Plus graphics features. And from there on it should be possible to implement further graphics modes or add more features like sprites, tiles, bit blitting, drawing graphics primitives and so on. 

I personally would love to have a system that I turn on and I can use in a proper resolution with a nice UI to navigate my collection - and then it smoothly switched into CPC modes where I use the original software as it was supposed to be used. 

The adoption would not result from the "graphics card" feature but from the fact that it makes the CPC more accessible and easy to connect to a modern LCD - and then it becomes interesting for a much bigger audience than if its just a graphics card on its own that you have to connect to a different monitor or where you have to switch cables when you use it. 

It could even be based on something as cheap as a Raspberry Pico - or more likely on a (hopefully coming soon) successor with more GPIO and more RAM. Hardware costs could be as low as 10-20€. 
Title: Re: Other Video Cards
Post by: zhulien on 15:18, 13 May 24
Qell that zeal gfx card exists and looking at the specs is designed to work on other computers if interfaced with it correctly.  Also, it has tiles and hardware sprites and is cheaper than the v9990.  It might be a good candidate to make an adapter for it.
Title: Re: Other Video Cards
Post by: SerErris on 14:59, 14 May 24
Quote from: eto on 09:19, 13 May 24
Quote from: SerErris on 08:23, 13 May 24The classic henn and egg problem.
Not necessarily. It was already discussed in other threads and Benedikt also mentioned it:

With a graphics card that mirrors the lower RAM and mimics/emulates the GateArray/CRTC combo it could be possible to build a perfect DVI/HDMI output. Instead of connecting the CRT to the normal output you would connect the graphics card to a LCD. Slightly enhanced it could even support the Plus graphics features. And from there on it should be possible to implement further graphics modes or add more features like sprites, tiles, bit blitting, drawing graphics primitives and so on.

I personally would love to have a system that I turn on and I can use in a proper resolution with a nice UI to navigate my collection - and then it smoothly switched into CPC modes where I use the original software as it was supposed to be used.

The adoption would not result from the "graphics card" feature but from the fact that it makes the CPC more accessible and easy to connect to a modern LCD - and then it becomes interesting for a much bigger audience than if its just a graphics card on its own that you have to connect to a different monitor or where you have to switch cables when you use it.

It could even be based on something as cheap as a Raspberry Pico - or more likely on a (hopefully coming soon) successor with more GPIO and more RAM. Hardware costs could be as low as 10-20€.
I was specifically referring to the zeal gfx. 
It has a complete different graphics model, which is more like a C64 or Commander X16 or so. That is nothing bad about it, but just mirroring does not work at all.

That is where it is no software support und no adoption and then it will be very niche. Not that I do not like the card. It is great and would make a CPC even greater, but if there is nothing to do with it ... 
Title: Re: Other Video Cards
Post by: Benedikt on 17:31, 14 May 24
So... let's sum up the debate:

A CPC... is bad.
Making it "not a CPC"... is bad.

How can we add to a CPC without making it "not a CPC"?

Let's think outside the box, shall we?

We take a CPC, but it can't do game logic and pretty graphics at the same time, so we take the CPC and add to it... a CPC?
Then we have a CPC that takes care of input, game logic and sound, and a CPC that does nothing but graphics.

The graphics of a CPC are not pretty enough, you say? Well, let's add... another CPC? And maybe yet another?

Our cluster of four CPCs would then have four times the processing power and four times the RAM. Also four times the polyphony, actually.
Synchronizing the CRTCs and combining three monochrome video outputs into a single RGB output would give us 4096 colors on screen.

And nothing about it is "not a CPC".
Title: Re: Other Video Cards
Post by: McArti0 on 21:37, 14 May 24
@Benedikt
Orthodoxy looks like this. If you add anything that wasn't available in the 80s and early 90s, it's not retro and it's not CPC. No one will write even a broken line of code for it.
Title: Re: Other Video Cards
Post by: zhulien on 18:11, 15 May 24

I dont use my CPC because it's retro, I use it because I enjoy programming it.  If people don't want to add some hardware they are not forced to buy, they don't have to.  For someone to say that those who want to add new hardware to their CPC shouldn't have that opportunity then those types of people are just *ssho***
Title: Re: Other Video Cards
Post by: zhulien on 18:14, 15 May 24
Just a related note, I wonder how many of those idiots who don't like new hardware that wasn't around in the 80s or 90s and complain adding new hardware to a CPC have some of the best hardware ever made for rhe CPC... cyboard, m4, usifac, Xmass, speak&sid, symbiface 3 to name a few... 
Title: Re: Other Video Cards
Post by: zhulien on 18:16, 15 May 24
Quote from: SerErris on 08:23, 13 May 24The classic henn and egg problem.
Don't you mean the classic egg, face hugger, alien problem?
Title: Re: Other Video Cards
Post by: zhulien on 18:19, 15 May 24
2 currently available graphics solutions...
 
Lilygo vga32 and Zeal VGA card. Both have their pros and cons.  Cheapest is vga32 likely on a llamdaspeak or usifac or minibooster.

Vga32 may even be a good candidate for symbos support?
Title: Re: Other Video Cards
Post by: zhulien on 18:26, 15 May 24
Quote from: Benedikt on 17:31, 14 May 24Our cluster of four CPCs would then have four times the processing power and four times the RAM.
Funny you mention that, but a sort of cluster is coming...

https://www.cpcwiki.eu/forum/programming/z80-clusters/

(Yes off topic for replacement gfx cards)
Title: Re: Other Video Cards
Post by: PulkoMandy on 13:11, 17 May 24
I had some thoughts about:

At this time I'm not really willing to start yet another hardware project, however. Quite a lot of other things I'd like to finish instead :)
Powered by SMFPacks Menu Editor Mod