News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_zhulien

New GFX Card for CPC - non-V9990

Started by zhulien, 07:40, 18 August 22

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

zhulien

Hi Everyone,

Given the sad news about CPC Graphics Cards from Tecnobytes.  What if someone wanted to take on the project here, any takers?

Thoughts:

One option could be to physically connect the Raspberry Pi to the CPC bus and continue / finish what I had started - seems to work for ZX Spectrum HDMI board, so perhaps it can work for the CPC 'other hardware' too?

or

a brand new FPGA-based graphics card for CPC?

Here is my wishlist for a CPC graphics card:

- capable to page in the graphics memory into the CPC RAM space as per a memory expansion or multiface 2, so at least 8kb block transfers are possible to the graphics card memory
- ideally full HDMI support or 720P support via HDMI to make easy connections to current monitors with a patched BASIC (if it ever get's patched)
- ideally Prodatron would want to make a Symbos driver for it
- support for hardware scrolling and hardware sprites
- minimum of 8bit colour, but ideally 32bit or true colour support
- MX4 form factor
- can a price point of less than US$150 be met?  (US$100?)

ajcasado

Hi,

A cheap and feasible option could be made using a Raspberry Pico using PICOVGA library.

http://www.breatharian.eu/hw/picovga/index_en.html
CPC 664

Empiezas a envejecer cuando dejas de aprender.
You start to get old when you stop learning.

revaldinho

Quote from: zhulien on 07:40, 18 August 22Here is my wishlist for a CPC graphics card:

- capable to page in the graphics memory into the CPC RAM space as per a memory expansion or multiface 2, so at least 8kb block transfers are possible to the graphics card memory
- ideally full HDMI support or 720P support via HDMI to make easy connections to current monitors with a patched BASIC (if it ever get's patched)
- ideally Prodatron would want to make a Symbos driver for it
- support for hardware scrolling and hardware sprites
- minimum of 8bit colour, but ideally 32bit or true colour support
- MX4 form factor
- can a price point of less than US$150 be met?  (US$100?)


If not needing any compatibility with existing cards, then the CPC-CPLINK interface to Raspberry pi already provides cheap and easily available hardware which can tick off almost everything on this list apart from the first item. In the CPLINK model the GPU has its own frame buffer. We have even demonstrated the board as a dedicated GPU supporting all the BBC Micro VDU codes with a very simple client program running on the Pi.




eto

Quote from: ajcasado on 08:22, 18 August 22Hi,

A cheap and feasible option could be made using a Raspberry Pico using PICOVGA library.

http://www.breatharian.eu/hw/picovga/index_en.html


First time I saw the PICOVGA library I thought, that this would be the ideal candidate for a CPC add-on. But in the end, just wishful thinking. Still far above my skills and so much time required to get it even started.

But here a few of my thoughts:

Especially a 320x200 mode would be still looking like a retro system and would be very promising for games as it leaves plenty of memory for tiles, sprites, even several screen layers would be possible (but then RAM becomes quickly a limitation on the Pico). No paged memory though, but I think it's acceptable to transfer all graphics in advance and then use only the local graphics memory on the chip, except for smaller updates.

The software side probably would require a bit lot of work, as the Z80 should not be bothered with too much work. But e.g. a tile based graphics system could mean that we only have to send a few bytes to the card, to scroll a screen of move a sprite.

It would also be possible to implement graphics primitives and core windowing functions for SymbOs so in higher resolutions the CPU does not have to do all the window drawing work. 640x480 or maybe even 800x600 in 16 colours would be an interesting resolution and should just fit into the RAM.

That's also the part that I like most about such a solution: Once the core electronics are done, it will be enhanced in pure software. No special skills or equipment required. Most of us don't really understand electronics or can deal with FPGA. But maybe there are more, that can support on the software side, especially with something that has such a huge community as the Pico. So even a simple first release could be improved over time to support more and more features. It could maybe even go so far, that the CPC not only sends graphics data to to the Pico but also executable code, that e.g. temporarily adds a special graphics effects routine for sprites for this particular game.

I like the aspect, that it's still quite limited due to the small RAM, as it would produce something, that could also have been possible in the late 80s/early 90s. It probably can also easily support 15.6KHz displays (at least for resolutions with up to 256 lines).

An external version could be used in parallel to the Gate Array. Multi-monitor for the CPC  ;-) or a built-in version (soldering required) that could even use a the same output for both (of course only one being actively outputting to the monitor).

Also the availability would be a great plus. It's super cheap and it will be available for years and in any quantities we need. Due to its widespread adoption, it probably will be easy to source even if it's no longer in production.

The price of the components will be less than 20€. PCB, MX4 connector, a few ICs (level shifters, address decoding to save some GPIO pins), VGA or DVI connector - and a 4€ Pico - and you're done.

TotO

What is the usage of the graphic card?

Last year, I have suggested to use the MSX2+ VDP to allow SymbOS native compatibility and easy ports from hundreds of MSX games (very motivating). The V9958 price was 2$ only... Today it is close to 35$ (stupid speculation from buyers), that is obviously no more interresting to make a 29.90€ graphic card for the CPC. :-\

"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

eto

Quote from: TotO on 10:31, 18 August 22What is the usage of the graphic card?
The same as the PlayCity: add more fun. 

Im my experience, the only add-ons that are really successful and widely (and actively used) are those, that give you access to more (new or existing) content. All the others are bought by enthusiasts for curiosity or simply "because I want one" and it's fascinating to see my old system perform like that. The market is already small - and it's get smaller, the higher the price is. I would also give such a cheap graphics card a try. 30€-50€ are worth the fun. But I won't invest 100€ or more into a graphics card, where I have to source my chips from China, and then it ends up as a "tech demo". 


TotO

@eto So, I think the best will be to have a custom circuit with the Plus display features (colours, sprites, scrolling). So, that will allow to play the commercials GX games and make new one for all the CPC users.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

zhulien

OK, I'm convinced with the CPC-CPLINK card - since I have the card I really haven't given it a good go.  I will try create some type of Graphics API to see what might be possible using that first and who knows, it might be pretty good.  In theory, I believe installing game assets into the card would work well and they can even be persisted in SDCARD on the Pi Side, and the Pi will basically be a protocol for certian operations.

eto

Quote from: TotO on 11:56, 18 August 22@eto So, I think the best will be to have a custom circuit with the Plus display features (colours, sprites, scrolling). So, that will allow to play the commercials GX games and make new one for all the CPC users.
I think it's totally fine that you have your opinion, that a graphics add-on is unnecessary and I have mine, that I also think it's unnecessary, but I would still think it's exciting and love to get one. No need to bring up ironic arguments.

TotO

#9
Quote from: eto on 14:11, 18 August 22
Quote from: TotO on 11:56, 18 August 22@eto So, I think the best will be to have a custom circuit with the Plus display features (colours, sprites, scrolling). So, that will allow to play the commercials GX games and make new one for all the CPC users.
I think it's totally fine that you have your opinion, that a graphics add-on is unnecessary and I have mine, that I also think it's unnecessary, but I would still think it's exciting and love to get one. No need to bring up ironic arguments.


What? :o

Please, keep cool man. Nothing ironic or offencing into my post.
Thinking to have the Plus features on a CPC to go ahead is not a joke.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

eto

Quote from: TotO on 14:16, 18 August 22What? :o

Please, keep cool man. Nothing ironic or offencing into my post.
Thinking to have the Plus features on a CPC to go ahead is not a joke.

I misunderstood, sorry.



rexbeng

I do see the interest for such an add-on as an 'ornamental toy' that someone would like to have just to have it. But in my eyes it serves not much beyond a 'what if the CPC was a whole different computer' type of hypothesis. Sure, Prodatron might put good use to such a thing under SymbOS, but isn't that regarded as a 'Z80 OS' rather than a CPC spesific one?

For me, as a creator for/on retro computers, I don't see anything particularly interesting. The reason I push pixels on the CPC (and therefore create demos and games on the platform) is because the CPC is what it is. If I needed to do a 320x200 pic with 32 colours, I'd do it on the Amiga. If I absolutely needed/wanted to do stuff on a Z80 machine with higher-res and h/w sprites, I'd go for the Master System (and then let Norecess convert it to the Plus :P ). Not a 'fantasy' computer.

That said, I'd really appreciate a h/w add-on that would solve display issues under certain CRTC applications when the CPC is connected to a LCD display. Some years ago I also expressed the wish for a cartridge on the CPC as a means to replace disks as primary storage media. I am happy I got that. :)

zhulien

For me, I like to program on my cpc but I would like a wider choice of monitors.  Ideally with a better resolution and more colours. Not everyone wants to use an original cpc monitor, heck I don't even have one anymore.

Cwiiis

Quote from: TotO on 11:56, 18 August 22@eto So, I think the best will be to have a custom circuit with the Plus display features (colours, sprites, scrolling). So, that will allow to play the commercials GX games and make new one for all the CPC users.

I couldn't agree with this more. I have bias as a Plus owner, but I'm far more interested in hardware that actually existed than a new add-on - especially when that new add-on obsoletes parts of your existing setup (such as your CTM644/CM14 monitor).

We've barely seen the potential of the Plus additions and they're all very sensible and era-appropriate, vs using something like a Pi. I'd love to see more software target the Plus and exploit its potential. The Ghosts'n'Goblins port and CRTC3 demos are very impressive already and Sonic GX is looking great, it'd be fantastic to open up these features to all CPC owners :)

SkulleateR



I'll sign for that, where can I buy one of these  ;D ?

zhulien

There are so many ways to go about this, even a NES on a chip can provide a pretty good graphics card perhaps connected to CP-CPLINK.

I like the idea of a plus compatible card, is it possible? What about a ++ one with the features of a plus and more... but in a low cost that everyone wants one.  I don't mean lockout features to force people to be compatible with plus machines. Good programmers should be able to cater for plus and non plus currently for most types of games, but of course it takes time to develop for both and there will usually be tradeoffs for non plus machines if plus is utilized to the fullest 

I found my CP-CPLINK card, now looking for my pi... seems misplaced.  I am thinking two things for this POC.  1, couple of new text modes for programming on cpc using hdmi and... 2, I want to see how easy or hard it will be to make a vector graphics API.  IDEALLY both the text and vector API should work on standard display and via the PI. 

Anyone good at vector graphics matrix operations already?  For z80 and for PI so we can eg... make wireframe on cpc and with hidden line removal on pi or even just higher frame rate?


SkulleateR

I don't think it has to be cheap, it has to be USEFUL ! If you deliver something so that people with "normal" CPCs can have the benefits of a Plus machine, this would be a banger. 

Maybe consider everything else (cheap, more features) as a bonus :)

I would love to help, but I cannot code. I could make a proto on Kicad if you like but that's it  ::)

GUNHED

What do you think about his one:
- Better solution
- More colors at the same time
- Include it between CPC and monitor
- You see a mix of both pictures
- Price: for free

How to do it?
- Use the BTX module from Siemens which is somewhere in storage since BTX was discontinued

Additional gain:
- Free serial port
http://futureos.de --> Get the revolutionary FutureOS (Update: 2023.11.30)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.12.26)

SkulleateR

Quote from: GUNHED on 18:03, 23 August 22What do you think about his one:
- Better solution
- More colors at the same time
- Include it between CPC and monitor
- You see a mix of both pictures
- Price: for free

How to do it?
- Use the BTX module from Siemens which is somewhere in storage since BTX was discontinued

Additional gain:
- Free serial port
Does this add Plus compatability ?

eto

Quote from: GUNHED on 18:03, 23 August 22What do you think about his one:
- Better solution
- More colors at the same time
- Include it between CPC and monitor
- You see a mix of both pictures
- Price: for free

How to do it?
- Use the BTX module from Siemens which is somewhere in storage since BTX was discontinued

Additional gain:
- Free serial port
Where can we get a BTX module for free?

TotO

Quote from: GUNHED on 18:03, 23 August 22What do you think about his one:
- Better solution
- More colors at the same time
- Include it between CPC and monitor
- You see a mix of both pictures
- Price: for free

How to do it?
- Use the BTX module from Siemens which is somewhere in storage since BTX was discontinued

Please, explain what is your idea to have a free expansion. It is not a clue game. ;D
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

rexbeng

@eto Du-uh! They grow on BTX trees, silly!

MaV

Quote from: rexbeng on 11:08, 24 August 22@eto Du-uh! They grow on BTX trees, silly!
Just water it daily and wait a few months.
Black Mesa Transit Announcement System:
"Work safe, work smart. Your future depends on it."

zhulien

What does it cost to put an fpga on an mx board?  Since an entire cpc can fit inside the fpga, why not just put an fpga on board?

zhulien

How about someone make a MX4 slot to Vera adapter, could it work without much effort on CPC?


https://www.youtube.com/watch?v=AcWqMGju7fk

https://github.com/fvdhoef/vera-module

Powered by SMFPacks Menu Editor Mod