News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

Graphics card for CPC.

Started by steve, 19:30, 10 October 14

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

TotO

#25
Quote from: Trebmint on 10:18, 12 October 14Whats the difference between Graphics and Music then? When is a CPC no longer a CPC... Its a tricky subject and everyone decides that themselves I guess.
If you think about the PlayCity audio part, it sound like the CPC. The PlayCity allow to improve programs display too, but always look like the CPC does. In fact, programming it use CPC features and signals available from its expansion port.
If you add a V99xx with custom planes/sprites mode, it will no more look like a CPC but more like a MSX/SMS.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

CraigsBar

Quote from: ralferoo on 20:43, 12 October 14

<snip>

But now for us, the CPC scene, what the CPC is effectively how it was in history. Sure, we've got new toys - more RAM, more ROM, the HxC, but none of them change the CPC. But fundamentally changing the machine seems weird. TBH, whilst the discussion is about the screen, I kind of feel the same about the CTC-AY. It's kind of cool, I'd quite like one, but things written for it aren't really "for the CPC" any more. They're for "something else". But I can't quite put my finger on it.

Maybe it's just that someone could go to a car boot sale and pick up an Amiga PPC thing and get going with it. Nobody's going to find a CTC-AY or this graphics card at a car boot sale.

I also feel like I've just rambled on a bit and not really said anything useful!  :)

I see your points. But I don't think the same can be said for the ctc/ay or playcity. So long as games written for the playcity also run on on enhanced machines. Take cyberchicken for example, you can only get bfn and effects with a playcity, but the game still runs with no issue on all machines without the hardware ;).

The chances of graphicly enhanced stuff working on either a normal Cpc, or a plus machine are practically nil.

Craig.
IRC:  #Retro4All on Freenode

chinnyhill10

Quote from: Trebmint on 10:18, 12 October 14
Well Symbos would run far far better, and development on that is moving ahead fairly quickly... and we're not just talking new serious apps but games too. Whats the difference between Graphics and Music then? When is a CPC no longer a CPC... Its a tricky subject and everyone decides that themselves I guess.
But as for software I think Symbos will be the big bridge as we have a combined MSX, CPC and soon to be a few other platform communities which will benefit from cross platform development and with a leveling of graphics power that's no longer a compromise of resolutions and colours it might have been


The Amiga was a different range to the CPC. They had a variety of CPU's out of the factory and the system is designed to be upgradable in a way the CPC isn't.

--
ChinnyVision - Reviews Of Classic Games Using Original Hardware
chinnyhill10 - YouTube

Trebmint

As I said we all clearly have our ideas of where the CPC stops being a CPC. Personally I cant see why a significant improvement in sound is okay, but an improvement in graphics isn't. And the point of no software and being underused is a valid point, but I just take the optimistic view that people want to push hardware so perhaps we'd see something cool


However it also begs the question when does a community stop being a community, as people do seem to be really negative about what actually is a positive thing even if you would never buy one, or support it or have anything to do with it. Anything using, working with or running on a CPC is surely good, as its all about people still caring for the humble little Arnold. TBH if I was to make a piece of CPC hardware that mass murdered kittens I'd hope people on here would take a positive interest... because as a community we're here to support our fellow users.

CraigsBar

Quote from: Trebmint on 23:45, 12 October 14
As I said we all clearly have our ideas of where the CPC stops being a CPC. Personally I cant see why a significant improvement in sound is okay, but an improvement in graphics isn't. And the point of no software and being underused is a valid point, but I just take the optimistic view that people want to push hardware so perhaps we'd see something cool


However it also begs the question when does a community stop being a community, as people do seem to be really negative about what actually is a positive thing even if you would never buy one, or support it or have anything to do with it. Anything using, working with or running on a CPC is surely good, as its all about people still caring for the humble little Arnold. TBH if I was to make a piece of CPC hardware that mass murdered kittens I'd hope people on here would take a positive interest... because as a community we're here to support our fellow users.
I too will probably buy Any mx4 graphics enhancer that comes along. All support should be supported. And as for the kittens thing, can I have 2, just leave the puppies alone ;:-)
Craig
IRC:  #Retro4All on Freenode

TFM

Quote from: Prodatron on 10:27, 12 October 14
E.g. LDI (5us) is a little bit faster (not couple of times) than OUTI:INC B (6us), but you don't loose time for line jumping. You just define a rectangle where to copy the bitmap data into and then start the transfer.


That's the problem, you have to fill the complete area. On CPC I can have dedicated sprite routines / tile routines which only write what they need. btw. never used ldi for CC.  ;)  But of course it depends on the graphics mode and screen format you use.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

Quote from: andycadley on 14:31, 12 October 14
And, ultimately why stop at just a graphics card? Why not just stick a whole PC on the back end, then the CPC can play Crisis....


Sure why not? Lot's of other systems have similar stuff. Of course I wouldn't waste my time with that games, but I wouldn't need a dame PC at its own. And an AMD is a fair slave for the Z80.  ;)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

#32
Quote from: Prodatron on 20:46, 12 October 14
As we all know we had this discussion again and again.
1.) It's cool to get as much out of the old original machine as possible. How can we make software better and better for the CPC without "cheating" and adding new hardware?
2.) Most good computer systems are designed to be expandable (even 70ies home computers). In many cases it really makes fun to extend these old machines and use the new features in new software projects.

I am always going for both options. In my case: 1.) SymbOS will always run on an original CPC6128 directly from disc without any additional hardware (no rom expansion required, no additional ram etc., no mouse/joystick whatever...). But 2.) it's cool to have additional stuff to have a more powerful and modern feeling while still using the 8bit core - the Z80. Noone wants to replace the Z80 with a 32bit CPU. Maybe you want to run it at a faster speed, but nothing more.
The only good argument against new powerful hardware is, that noone will support it. But that's not a philosophical question but more the problem of the software-part of the project.

I pretty much agree with that. FutureOS will always run with a 6128 (and ROM expansion), but will always support as much hardware expansions as possible. I would even support a eZ80 / Z280 / Z380 for the CPC. Why not? The only limit is my limited amount of spare time for coding.


@Trebmint: You're totally right about the community! Can I have three of these machines for dogs?  :D

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

AMSDOS

Quote from: andycadley on 14:31, 12 October 14
The CPC already has an equivalent, the Plus machines, and they're woefully underused. Why do people assume that sticking something on the back of a machine will solve that prolem?


Simple fact that Amstrad Announced they would not release the CPC Plus range to Australia. Amstrad couldn't even bring out a Bloody GX4000 and had to settle for an Atari 2600 initially.


Other Add-ons seem to work, why not a Plus Add-on minus the Cartridge port.
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

TotO

Quote from: Trebmint on 23:45, 12 October 14
As I said we all clearly have our ideas of where the CPC stops being a CPC. Personally I cant see why a significant improvement in sound is okay, but an improvement in graphics isn't.
If you start to use a 9938/58 VDP for the display, that means the screen modes will no more match with what does the CPC or PLUS. The good way to improve the CPC display is to replace the Gate Array with a new version that handle CPC old and new screen modes matching with the CPC horizontal dans vertical frequencies.
There is a gap between improving features and stay CPC friendly OR replacing parts using IC from C64 or MSX world.
And, I think that some peoples don't see this difference because ideas not match with the reality.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Ygdrazil


I like all expansions for the CPC.. but I would prefere new expansions to create something new, instead of just reinventing the MSX! ...


No point in creating the look and feel off the MSX on the CPC ... anyway it would always be inferior to the MSX, just by taking the sheer amount of software utilising the MSX features into account!


If making a new graphics adapter for the CPC why not go for something more modern? (instead of a VDP from the 80's)


Just my thoughts


/Ygdrazil




PS. I own CPC, MSX and an Enterprise. All three machines has a very distinct look and feel  ;D

Quote from: TotO on 09:18, 13 October 14
If you start to use a 9938/58 VDP for the display, that means the screen modes will no more match with what does the CPC or PLUS. The good way to improve the CPC display is to replace the Gate Array with a new version that handle CPC old and new screen modes matching with the CPC horizontal dans vertical frequencies.
There is a gap between improving features and stay CPC friendly OR replacing parts using IC from C64 or MSX world.
And, I think that some peoples don't see this difference because ideas not match with the reality.

Prodatron

Quote from: TFM on 01:05, 13 October 14That's the problem, you have to fill the complete area.
No, only the area you defined (example: a 12x12 rectangle). And this is only for bitmap data, which can't be pre-stored in the hidden part of the VRAM. Usually you prepare everything which is needed in this invisible VRAM area (which is quite large, you have a total Vram of 128K) and let the VDP do the copy process to the screen, which is always the fastest way, while the Z80 is available for other tasks.

QuoteOn CPC I can have dedicated sprite routines / tile routines which only write what they need. btw. never used ldi for CC.  ;)   
As I said before, instead of using direct addressed sprites (e.g. LD (HL),xx:INC L:ld (HL),yy:INC L:etc...) you will always use hardware sprites on the VDP, which is of course many times faster.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

Trebmint

Obviously the best choice would be to have a FPGA that improved the graphics to say x2 or x4 the colour depth of the current modes while keeping complete backward compatibility and a larger palette. A 16x320x200 or a 256x160x200 would be an amazing leap. I would imagine the T-Rex FPGA code for nearly achieving this already exists. However if you did this then the Z80 wouldn't be able to shift the memory about so it would need help... and that kind of comes back to the VDP.
Problem is nobody has ever tried to do something like this, and I think a lot of non hardware guys see that its something a number of the clever hardware guys could do.
Also in a silly way the idea of using chip sets from the 80's sounds more authentic than using some brand new FPGA, but I dont see the issue really with either. Its a personal choice




steve

Quote from: Trebmint on 12:00, 13 October 14
Obviously the best choice would be to have a FPGA that improved the graphics to say x2 or x4 the colour depth of the current modes while keeping complete backward compatibility and a larger palette. A 16x320x200 or a 256x160x200 would be an amazing leap. I would imagine the T-Rex FPGA code for nearly achieving this already exists. However if you did this then the Z80 wouldn't be able to shift the memory about so it would need help... and that kind of comes back to the VDP.
Problem is nobody has ever tried to do something like this, and I think a lot of non hardware guys see that its something a number of the clever hardware guys could do.
Also in a silly way the idea of using chip sets from the 80's sounds more authentic than using some brand new FPGA, but I dont see the issue really with either. Its a personal choice

Quote from: Ygdrazil on 09:41, 13 October 14
I like all expansions for the CPC.. but I would prefere new expansions to create something new, instead of just reinventing the MSX! ...


No point in creating the look and feel off the MSX on the CPC ... anyway it would always be inferior to the MSX, just by taking the sheer amount of software utilising the MSX features into account!


If making a new graphics adapter for the CPC why not go for something more modern? (instead of a VDP from the 80's)


I started this thread because of the page linked to in the first post, someone had already designed a graphics card using the V9958, and I thought it might not be too difficult to attach that design to the cpc expansion bus via the motherX4.
It would also create some common ground between CPC and MSX software.

Using a different graphics chip or creating one in an FPGA would be much, much harder and an unreasonable suggestion.

TFM

Quote from: Ygdrazil on 09:41, 13 October 14
If making a new graphics adapter for the CPC why not go for something more modern? (instead of a VDP from the 80's)


Second that.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

TFM

#40
Quote from: Prodatron on 10:32, 13 October 14
No, only the area you defined (example: a 12x12 rectangle). And this is only for bitmap data, which can't be pre-stored in the hidden part of the VRAM. Usually you prepare everything which is needed in this invisible VRAM area (which is quite large, you have a total Vram of 128K) ...

128 KB is space for eight CPC screens, which is not that much. 1 MB would be acceptable, that would be space for enough level data and sprites.

Quote from: Prodatron on 10:32, 13 October 14As I said before, instead of using direct addressed sprites (e.g. LD (HL),xx:INC L:ld (HL),yy:INC L:etc...) you will always use hardware sprites on the VDP, which is of course many times faster.

Sorry, but no. I like to use sprites in dimensions not dictated by the VDP. Of course I would use them for shapes which just fit. But f.e. for my last game the MSX VDP wouldn't even have enough sprites.  ;)


Don't get me wrong, the MSX VDP is surely great for the 80ies, but the year is 2014 now.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Poliander

Quote from: Ygdrazil on 09:41, 13 October 14
If making a new graphics adapter for the CPC why not go for something more modern? (instead of a VDP from the 80's)

Make sure there will be both an AMD and a nVidia version! Just in case.
Schneider CPC 664 • X-MEM • Vortex F1-X Drive • CTM 644 • DMP 2160
Schneider CPC 6128 • Z-MEM • M4 Board • MultiPlay + Amiga Mouse • OSSC

TFM

No, one is enough, we don't need another multitude of mixed (non-)standards. So stick with one real standard - which ever it will be. Gladly on the CPC nearly everything has it's standard.

TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Bryce

The V9958 may be old, but it's about the limit that could be usefully implemented in a CPC. Even a basic low-res PC screen at 640x480 256 Colours would need more than 300K of data per screen. It may be pretty, but it's not going to be fast.

Bryce.

Prodatron

#44
Quote from: TFM on 17:43, 13 October 14128 KB is space for eight CPC screens, which is not that much. 1 MB would be acceptable, that would be space for enough level data and sprites.

So for every level you want to load 1MB from... what?  :laugh: The V9990 contains 512KB btw.
TBH this discussion currently seems to go into a strange direction... :o

Quote from: TFM on 17:43, 13 October 14Sorry, but no. I like to use sprites in dimensions not dictated by the VDP. Of course I would use them for shapes which just fit. But f.e. for my last game the MSX VDP wouldn't even have enough sprites.  ;)

The limitation is 8 sprites per line. Everything else can be multiplexed. Your game would run much faster on a VDP with hardware sprites.

Quote from: TFM on 17:43, 13 October 14Don't get me wrong
The VDP contains hardware sprites, a blitter and the possibility to copy bitmap graphic into the vram in a very fast way (even including logical operations). All three methodes are faster than using the Z80 directly for plotting and animating graphics. And I am not speaking especially about the 9938 but in general about this advanced type of video hardware. As you know it's the basic way how all todays' graphic hardware work.

GRAPHICAL Z80 MULTITASKING OPERATING SYSTEM

TFM

Eight sprites per line is not that much, but if you realize smaller objects in software it could be ok. Depends on the game too. Usually eight is enough probably.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

ralferoo

#46
Quote from: steve on 13:07, 13 October 14
Using a different graphics chip or creating one in an FPGA would be much, much harder and an unreasonable suggestion.
Not really. It's trivial for me to make my FPGA support ST/Amiga OCS resolutions, it's just a doubling of the bits per pixel. The problem comes, as Trebmint says, in that then the normal speed CPC (which can't fill the screen in a single frame already) is then even more overworked, so then it needs to be clocked faster (which again is trivial, I can run at 16MHz if I want) and then it feels even less like a CPC...

That said, I definitely plan to add a turbo mode. Because that doesn't really change the nature of the machine, just makes it a bit more fun... :)

I guess the point I was making is... take the C64 clones in a joystick thing. These can run in an extended C64 like mode, has a blitter, more colours and can run faster. But then all it does is fragment the system a bit more. There are some demos that only run on these joysticks, they're still called "C64 demos" but nobody can run them on a C64. They don't even run on all the joysticks, and in any case they were a limited production run and not made any more. It's definitely "cool", but it's not really positive for the C64 scene as a whole.

EDIT: just wanted to add that overall that post sounds negative in a "don't do it!" way. That's not really what I mean... if you want to do it, make it. You'll enjoy doing it, learn a lot and having something pretty cool. I'm just meaning that to others it might not feel like a CPC any more. Incidentally, personally I don't really think of the CPC+'s extra features as being CPCish. Nothing much uses them - apart from the cartridge games there are what 3 or 4 games and a handful of demos... So I guess, what I mean is that anything "CPC-like" will almost certainly be less prevalent than the CPC+ and so likely to be supported to about the same degree. I know people disagree with me on the CPC+ matter though and that's cool! :)

EDIT 2: even despite the last edit, sprites are cool and actually a CPC with sprites would be nice as it'd still feel like a CPC, but add some benefit as it offloads some work. I guess I kind of like the idea of the CPC+ and your project after all! :)

steve

@ralferoo, how hard would it be to replicate the plus features in an FPGA so that "old" CPCs can be upgraded to plus spec?

rpalmer

People,

It would be nice to get an adapter which can act like those of PC's.  I can envisage that the adapter having dual port memory and mirrors the same as that on the motherboard with the 6845, but the display processor works independently with drivers to control it via I/O ports.

Rpalmer

Optimus

I would like to see something like that, but only as a curious proof of concept. Could our little CPC have something like a GPU making simple flat polygons fast or hardware rotating sprites and such? If I was into electronics and that, I would love to think and work on such a project.


But I agree with Toto, it's not like we are gonna make games for a card 2-3 people might own. Or even if it's mass produced, I think I'll still enjoy more software for the original CPC.


It's an interesting curiosity for me, but not something where the scene would be willing to evolve.

Powered by SMFPacks Menu Editor Mod