News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_zhulien

Other Video Cards

Started by zhulien, 20:58, 11 May 24

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

zhulien

Discussion to group video card alternatives...

zhulien

#1
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

robcfg

I'd love just to have mode 1 with 16 colours...

Benedikt

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.

andycadley

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.

Prodatron

I agree to Andy, better graphic only makes sense, if there is a blitter/GPU included in the hardware like with the (VDP9990).

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

McArti0

only 20-25MHz z80, everything else makes no sense.
But T-rex already exists in FPGA.
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

SerErris

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.
Proud owner of 2 Schneider CPC 464, 1 Schneider CPC 6128, GT65 and lots of books
Still learning all the details on how things work.

eto

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€. 

zhulien

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.

SerErris

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 ... 
Proud owner of 2 Schneider CPC 464, 1 Schneider CPC 6128, GT65 and lots of books
Still learning all the details on how things work.

Benedikt

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".

McArti0

@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.
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

zhulien

#13

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***

zhulien

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... 

zhulien

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?

zhulien

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?

zhulien

#17
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)

PulkoMandy

I had some thoughts about:

  • making a modern graphics card using FTDI EVE hardware. This could output VGA or maybe even DVI/HDMI. With no compatibility whatsoever with anything else, of course, so the firmware will need some patching (can be done with an expansion ROM I think) to display on it, and anything that doesn't use the firmware would have to use its own code (or revert to the Gate Array video output).
  • I also looked as the EF9365 family of video controllers from ST Microelectronics. For a more realistic 1980s approach. There are some problems interfacing that with modern SRAM or even DRAM, and it's a bit strange to use (you don't have a direct framebuffer, you don't have tiles, instead you send commands to plot straight lines and dots, and draw characters at arbitrary pixel positions).
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