Fantastic Adventures of Dizzy - losing sync when scrolling

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderators: B00daW, Moderators

Post Reply
krzysiobal
Posts: 759
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Fantastic Adventures of Dizzy - losing sync when scrolling

Post by krzysiobal » Sun Jul 19, 2015 4:36 am

Do you have any idea, why it loses sync on my tv on the title screen during scrolling the letter?
It is the only game that causes that. Tested on famiclone (based on single chip ua6561). On ua6527p+ua6538 it even skips the whole screen. Is it because of setting the dimming bits in ppu?
https://www.youtube.com/watch?v=9YyqN0Au3qM

User avatar
thefox
Posts: 3141
Joined: Mon Jan 03, 2005 10:36 am
Location: Tampere, Finland
Contact:

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by thefox » Sun Jul 19, 2015 6:13 am

This game uses the "blacker than black" palette entry $0D that can cause problems on some televisions. Some details (but not much) at http://wiki.nesdev.com/w/index.php/PPU_palettes

BTW, that video is private and cannot be viewed.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi

krzysiobal
Posts: 759
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by krzysiobal » Sun Jul 19, 2015 11:32 am

I have modified the video.

Great Hierophant
Posts: 769
Joined: Tue Nov 23, 2004 9:35 pm

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by Great Hierophant » Sun Jul 19, 2015 12:06 pm

Are you using a real cartridge? Otherwise that Famiclone is very inaccurate because the scroll does not descend like that on real hardware. On real hardware the scroll unrolls.

tepples
Posts: 22054
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by tepples » Sun Jul 19, 2015 12:24 pm

It's a Codemasters game. A lot of Codemasters stuff breaks on PPUs prior to revision G, which added support for snooping sprite evaluation through the OAM data port. Micro Machines, for example, will probably be glitched on anything that's cloned from a 2C02E or earlier.

User avatar
thefox
Posts: 3141
Joined: Mon Jan 03, 2005 10:36 am
Location: Tampere, Finland
Contact:

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by thefox » Mon Jul 20, 2015 12:46 am

tepples wrote:A lot of Codemasters stuff breaks on PPUs prior to revision G, which added support for snooping sprite evaluation through the OAM data port.
Have you actually checked the any game other than Micro Machines reads $2004?
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi

lidnariq
Posts: 9692
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by lidnariq » Mon Jul 20, 2015 10:55 am

At the very least, it's in other Codemasters games, such as Big Nose Freaks Out:

Code: Select all

-       $DB77  CA:          dex 
        $DB78  F0 05:       beq +               ; $DB7F
        $DB7A  2C 02 20:    bit $2002
        $DB7D  50 F8:       bvc -               ; $DB77
+       $DB7F  2C 04 20:    bit $2004
        $DB82  10 02:       bpl +               ; $DB86
I went and searched the entirety of GoodNES 3.14 for any of LDA, LDX, LDY, BIT, and CMP $2004. Interestingly, although I only ever found $2C $04 $20 = BIT $2004, I found 3000 hits in 1000 different files. Even restricting to just '[!]' it's still 200 files, and I definitely don't have the patience to run them all through clever-disasm to figure out which are false positives.

In case looking sounds fun, here's the list:
allGoodNES314_with_BIT2004.zip
(16.15 KiB) Downloaded 258 times
I got as far as deciding that the hit in Bonk's Adventure looked genuine (and some others were false positives) before I got bored.

Great Hierophant
Posts: 769
Joined: Tue Nov 23, 2004 9:35 pm

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by Great Hierophant » Wed Jul 22, 2015 5:26 pm

I tried Bonk's Adventure and the rest of the Camerica games in the GoodNES list on my older Famicom with the rev. E chips and could find no graphical glitches that were not seen on a Famicom AV.

lidnariq
Posts: 9692
Joined: Sun Apr 13, 2008 11:12 am
Location: Seattle

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by lidnariq » Wed Jul 22, 2015 7:35 pm

Most of the places that Bignose Freaks Out uses it, it's only adjusting timing by ±1 cycle / ±3 pixels. E.g. on the title screen, on scanline 165 (where the sprite 0 hit is), it adjusts the exact timing for the mid-screen parallax split. And during game-play, it does something similar with adjusting the exact time it turns off rendering at scanline 216.

However, I don't see any visual differences between Nintendulator and FCEU-0.98, so I'm not clear what Codemasters put it in there for.

Great Hierophant
Posts: 769
Joined: Tue Nov 23, 2004 9:35 pm

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by Great Hierophant » Wed Jul 22, 2015 10:23 pm

lidnariq wrote:Most of the places that Bignose Freaks Out uses it, it's only adjusting timing by ±1 cycle / ±3 pixels. E.g. on the title screen, on scanline 165 (where the sprite 0 hit is), it adjusts the exact timing for the mid-screen parallax split. And during game-play, it does something similar with adjusting the exact time it turns off rendering at scanline 216.

However, I don't see any visual differences between Nintendulator and FCEU-0.98, so I'm not clear what Codemasters put it in there for.
I can't see any real difference either on the real hardware with Big Nose. Nothing like Micro Machines, which is instantly noticeable when you do an A to B comparison.

krzysiobal
Posts: 759
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by krzysiobal » Wed Sep 30, 2015 2:47 pm

Hello! I discovered some news during repairing some famiclones.
In most famiclones (especially MT-777DX) there is UA6527P as CPU and UA6538 as PPU (working @ 26.601712 MHz crystal). These chips looks like (a'ka NEW CPU
Image
That is - they are dated from half of '90 to '94.

I bought some CPUs and PPUs for the replacement at aliexpress and they look different! The UMC logo is diffrent and the date is earlier - before half of '90, so they might be older revisions (a'ka OLD CPU):
Image

Then I checked how some games works (Big Nose the Caveman, Micro Machines, Dizzy Adventurer, Asterix) on these consoles by replacing CPU/PPU and putting them in various combinations (old cpu & old ppu, old cpu & new ppu, new cpu & old ppu, new cpu & new ppu) and the results are amazing - the way they plays depends not on the PPU but on the CPU!
Now the results!

GAME | OLD CPU | NEW CPU
Ordinary Micro Machines (dated 1991) | Glitches | No glitches
Alladdin Micro Machines (dated 1992) | No glitches | Doesnt even start
Big Nose Freaks Out | Glitches | No glitches
Alladdin Big Nose Freaks Out | Glitches | No glitches
Dizzy Adventurer | Doesnt break when paused | Breaks when paused

1991 Micro Machines at new cpu:
Image

Big Nose Freaks out at new cpu:
Image

1991 Micro Machines at old cpu:
Image

Big Nose Freaks out at old cpu:
Image

Big nose freaks out on old cpu:
https://youtu.be/C1uyC0tGr8k?t=3m4s

Big nose freaks out on new cpu:
https://youtu.be/C1uyC0tGr8k?t=12m

So if it is not because of ppu oam, have you got any ideas why the glitches?

User avatar
l_oliveira
Posts: 404
Joined: Wed Jul 13, 2011 6:51 am
Location: Brasilia, Brazil

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by l_oliveira » Wed Sep 30, 2015 9:51 pm

Old UMC CPU has broken DMC reader function. I don't know how exactly is broken but depending on the situation it just sounds bad on DPCM samples TMNT The Manhattan Project "Cowabunga" where it gets you "CowaCowa" instead or SMB3 where the drums samples are completely horribly mangled. Sometimes (randomly) it works correctly.

Basically, NES UMC CPU chips made before 1990 are certainly unreliable. I don't think I remember PPUs being troublesome (but I only have experience with the 60Hz versions of PPUs).

Now about this:
krzysiobal wrote:So if it is not because of ppu oam, have you got any ideas why the glitches?
UA6527P is NTSC CPU made to run at 26Mhz clock. It's for DENDY style famiclones. Those are made to run Japanese games on PAL televisions.

You are running a England made game which expects a REAL PAL NINTENDO to run. That's where your problem is.

User avatar
Dwedit
Posts: 4354
Joined: Fri Nov 19, 2004 7:35 pm
Contact:

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by Dwedit » Thu Oct 01, 2015 11:01 am

You can probably override the region detection with a game genie or something.
Here come the fortune cookies! Here come the fortune cookies! They're wearing paper hats!

alphamule
Posts: 62
Joined: Fri Aug 29, 2014 1:45 pm

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by alphamule » Mon Dec 21, 2015 6:48 pm

This is not region protection as you'd understand it. The chips literally had different timing and thus couldn't always run the same software. The more tricky games like Battletoads effectively had to be re-engineered for each version of the console. It's still one of the hardest to emulate.
Idealogical
From: I have an idea. It seems logical. Thus everyone must agree.

Fail, fail, fail again. Keep trying, then maybe this damn thing will work. Eventually you might even know why it worked.

Great Hierophant
Posts: 769
Joined: Tue Nov 23, 2004 9:35 pm

Re: Fantastic Adventures of Dizzy - losing sync when scrolli

Post by Great Hierophant » Mon Dec 21, 2015 10:11 pm

alphamule wrote:This is not region protection as you'd understand it. The chips literally had different timing and thus couldn't always run the same software. The more tricky games like Battletoads effectively had to be re-engineered for each version of the console. It's still one of the hardest to emulate.
It is not common for an NTSC game (at least those not programmed in the U.K.) to fail as Battletoads (either US or JP) does on a PAL console, but if Nestopia is accurate here, it will glitch and crash just before beginning play on level 1. I know JP Battletoads is more merciful than US Battletoads, but it does not seem that the exactitude of hardware fidelity that the US version's code expected was really relaxed for the Famicom. Old Famicoms do not seem to possess the most reliable PPU behavior, so maybe it was.

Post Reply