News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Badstarr

GX4000/Plus Range : Did Amstrad Miss The Point ?

Started by Badstarr, 22:16, 16 November 11

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

dragon

o o.k.Then maybe is necessary editing the wiki :P
"
Reducing Horizontal BLanking could cause another internal conflict when using DMA lists.In the worst case , this conflict can cause irreversible damage to the ASIC."
http://www.cpcwiki.eu/index.php/ASIC

TotO

Quote from: Bryce on 23:14, 19 November 11
Such rumours are absolute bullshit. There is definitely no way to destroy an ASIC with software.

Like that? :D
Spoiler: ShowHide
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

MacDeath

Would overheat count as destroy ? ;D

I mean, Asic sure is unefficient and buggy... but is this robust and solid ?

TFM

Quote from: MacDeath on 04:21, 20 November 11
Would overheat count as destroy ? ;D

I mean, Asic sure is unefficient and buggy... but is this robust and solid ?

Is it really buggy? I never had prolems and I never found a bug. However, every complex chip can be programmed in a way that causes problems. For example the CRTC, by programming it you can bring the CPC to a state where only a hard-reset allows to continue work. But what are the bugs of the ASIC?
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

fano

Quote from: TFM/FS on 07:03, 20 November 11
Is it really buggy? I never had prolems and I never found a bug.
Try to use DMA channel 0 interrupts with PRI interrupts , you'll have one  ::) (i loose some hairs on this one when working on RD128+)
"NOP" is the perfect program : short , fast and (known) bug free

Follow Easter Egg products on Facebook !

dragon

QuoteTry to use DMA channel 0 interrupts with PRI interrupts , you'll have one   (i loose some hairs on this one when working on RD128+)


Are you sure they not fix the problem?.I remember read,Exist different version of asic,With different colour border,when you turn on the computer without cartridge.


Maybe in one on these version it fix anything.

fano

Quote from: dragon on 13:37, 20 November 11

Are you sure they not fix the problem?.I remember read,Exist different version of asic,With different colour border,when you turn on the computer without cartridge.


Maybe in one on these version it fix anything.
Maybe , i was not aware about this.I didn't check this on my 5 Plus , only one.
But i saw a Plus asic with 12K pixel buffer instead of 4K for the actual one and vectorised instead of fixed sprites but i woke up , that was just a sweet and wet programmer dream  :(
"NOP" is the perfect program : short , fast and (known) bug free

Follow Easter Egg products on Facebook !

SyX

You need to add at your dream to be able to change the priority between sprites and background ... (we could use it for a simply parallax scroll :P)

dragon

#33
QuoteMaybe , i was not aware about this.I didn't check this on my 5 Plus , only one.


I found it,I read here:


http://www.cpctech.org.uk/docs/cpcplus.html





sigh

GX4000/Plus Range : Did Amstrad Miss The Point ?

I think that switching on a machine released in 1990 only to be welcomed with "1985" on the splash screen is definitely a bad move! (or was it 87? Haven't switched mine on in a while...)

If he was on the apprentice - he'd be fired! :D

TFM

Actually on a 464 Plus or 6128 Plus it was 1985.

However on a GX4000 ist was "Burning Rubber" 1990.
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

andycadley

Quote from: fano on 08:58, 20 November 11
Try to use DMA channel 0 interrupts with PRI interrupts , you'll have one  ::) (i loose some hairs on this one when working on RD128+)
Curious, I've never come across that one and I've mixed DMA channel 0 with the PRI before. Are you sure it wasn't the IM2 auto-clear interrupt bug?

fano

Quote from: andycadley on 21:33, 06 December 11
Curious, I've never come across that one and I've mixed DMA channel 0 with the PRI before. Are you sure it wasn't the IM2 auto-clear interrupt bug?
I am sure that was this bug , this is a known issue.Did you use DMA 0 to raise interrupts ?
"NOP" is the perfect program : short , fast and (known) bug free

Follow Easter Egg products on Facebook !

andycadley

Yep, it works as long as you keep the auto-clear feature turned off and manually reset the correct interrupt.

fano

So , in IM2 mode , Z80 will jump at channel 0 address instead of raster address randomly.

I posted something about this in 2009 at CPCrulez : http://cpcrulez.fr/forum/viewtopic.php?f=4&t=3813 (sorry , French only)

And there is a little program that show well this bug (need Asic unlock)
http://quasar.cpcscene.com/doku.php?id=assem:asic#listing_im_2_sur_cpc_plus

Type WHILE 1:? PEEK(0):WEND after ran the program , you'll have something else than always 255 that shows int branching is not correct.
"NOP" is the perfect program : short , fast and (known) bug free

Follow Easter Egg products on Facebook !

andycadley

Yep, your code has bit 0 of the ASIC IVR (&6805) set to 0, so the ASIC attempts to auto-clear the sound channel DMA interrupts. This is the buggy behaviour, which is probably why info on this was removed in v1.5 of the Arnold spec. If you set bit 0 to 1 and then manually clear sound channel interrupts by setting the relevant bit in the DCSR.

fano

You mean the vector bug doesn't occur with auto clear disabled ? this sounds interesting , i'll check that.
"NOP" is the perfect program : short , fast and (known) bug free

Follow Easter Egg products on Facebook !

andycadley

Nope, it works fine with auto clear off. I found this one ages ago and between Kev Thacker and myself we pretty much had the details of exactly what does happen worked out. I think Kev actually had some test code as proof at one point. I'd have to go rummaging through the archives of csa8 to find it though, as I can't see any docs on this on his site.

Executioner

Quote from: andycadley on 09:54, 07 December 11
Nope, it works fine with auto clear off. I found this one ages ago and between Kev Thacker and myself we pretty much had the details of exactly what does happen worked out. I think Kev actually had some test code as proof at one point. I'd have to go rummaging through the archives of csa8 to find it though, as I can't see any docs on this on his site.

Did you ever find any documentation on it? I'd like to check the bug occurs as expected in WinAPE.

Powered by SMFPacks Menu Editor Mod