dirkwhoffmann / vAmiga

vAmiga is a user-friendly Amiga 500, 1000, 2000 emulator for macOS
https://dirkwhoffmann.github.io/vAmiga
Other
297 stars 25 forks source link

Ghostown - Sushi Boyz : Scrolling logo issue #390

Closed emoon closed 4 years ago

emoon commented 4 years ago

In this demo https://demozoo.org/productions/136336/ https://files.scene.org/get/parties/2015/revision15/demo_amiga/gtn-sushiboyz-party.adf

At 1:58 there should be text coming in from the right to the left (see this youtube ref) http://www.youtube.com/watch?v=msRTT5f8BGg&t=1m58s then there should be a logo scrolling in the middle but in vAmiga it gets stuck on the left side. Also the credits names that comes in looks incorrect as well

000

I have validated that it works correct on original A500

dirkwhoffmann commented 4 years ago

Hmm, yes, the version on YouTube looks better πŸ€”.

Here is an X-ray and the relevant part of the Copper list:

Bildschirmfoto 2020-07-26 um 15 24 10 Bildschirmfoto 2020-07-26 um 15 29 58

To me, this looks like the BPLxPT registers start incrementing too early. All I can say for sure at the moment is that there are no sprites involved.

dirkwhoffmann commented 4 years ago

Interesting. The scene is broken in UAE, too, but it works well on the real machine.

Bildschirmfoto 2020-08-01 um 15 29 36 Bildschirmfoto 2020-08-01 um 15 30 12

I'll add @tonioni to this thread.

UAE and vAmiga seem to make the exact same error here...

emoon commented 4 years ago

Ah that is interesting. I only tested on my original A500 for comparision.

emoon commented 4 years ago

I think the youtube capture is done in WinUAE tho. Maybe it requires some specific setting?

tonioni commented 4 years ago

It is OCS/ECS difference. There probably is also fixed version available so make sure everyone uses same version.

dirkwhoffmann commented 4 years ago

It is OCS/ECS difference

Confirmed. It runs perfectly well with an ECS Agnus in UAE. In vAmiga, I did select an ECS Agnus, so there must be some ECS feature that is still emulated the OCS way in my emulator.

emoon commented 4 years ago

but my A500 is OCS and it works there?

dirkwhoffmann commented 4 years ago

but my A500 is OCS and it works there?

Seems like a quest for star commander @mithrendal with his old spaceship, the A1000.

mithrendal commented 4 years ago

So you guys want me to unearth the old rusty spaceship again. ✌️ It will be a pleasure πŸ§‘πŸ»β€πŸš€

It was part of the federal terranian space war fleet long ago ... and it was its flagship πŸ‘©πŸΏβ€πŸš€

Is the demo working with 512 KB only ?

emoon commented 4 years ago

I think it needs 1 MB of ram

dirkwhoffmann commented 4 years ago

I think it needs 1 MB of ram

Yes, doesn't run with 512KB, only πŸ™.

Bildschirmfoto 2020-08-01 um 16 22 32
mithrendal commented 4 years ago

Ohh 😭 ... then we leave A1000 spaceship in the hangar. It has only a 256Kb extension in the front slot. In total it has 512kb...

dirkwhoffmann commented 4 years ago

I've recorded some debugging output for line 236 (the line where the parameters for the bottom area are set):

...
[13394] (236,122) C0E14C  0 -CBS-A 6020 07C1 Agnus: setBPLxPTL(4, 19F8)
[13394] (236,132) C0E14C  0 -CBS-A 6020 07C1 [0614C8] Agnus: pokeBPLCON1(88)
[13394] (236,132) C0E14C  0 -CBS-A 6020 07C1 [0614C8] Denise: pokeBPLCON1(88)
[13394] (236,133) C0E14C  0 -CBS-A 6020 07C1 Agnus: setBPLCON1(0,88)
[13394] (236,133) C0E14C  0 -CBS-A 6020 07C1 Denise: setBPLCON1(88)
[13394] (236,140) C0E14C  0 -CBS-A 6020 07C1 [0614D0] Agnus: pokeBPL1MOD(2E)
[13394] (236,142) C0E14C  0 -CBS-A 6020 07C1 Agnus: setBPL1MOD(2E)
[13394] (236,144) C0E14C  0 -CBS-A 6020 07C1 [0614D4] Agnus: pokeBPL2MOD(2E)
[13394] (236,146) C0E14C  0 -CBS-A 6020 07C1 Agnus: setBPL2MOD(2E)
[13394] (236,148) C0E14C  0 -CBS-A 6020 07C1 [0614D8] Agnus: pokeBPLCON1(0)
[13394] (236,148) C0E14C  0 -CBS-A 6020 07C1 [0614D8] Denise: pokeBPLCON1(0)
[13394] (236,149) C0E14C  0 -CBS-A 6020 07C1 Agnus: setBPLCON1(88,0)
[13394] (236,149) C0E14C  0 -CBS-A 6020 07C1 Denise: setBPLCON1(0)
[13394] (236,160) C0E14C  0 -CBS-A 6020 07C1 [0614E0] Agnus: pokeDMACON(8100)
[13394] (236,162) C0E14C  0 -CBS-A 6020 07C1 Agnus: setDMACON(6ef, 8100)
[13394] (236,162) C0E14C  0 BCBS-A 6020 07C1 Denise: Bitplane DMA switched on

I guess the issue has something to do with bitplane DMA being switched on in the middle of the line (hpos = 162).

tonioni commented 4 years ago

You probably don't have the original party version if it does not glitch on OCS A500. (I just retested and the scroller does glitch on 8371 Agnus A500)

And yes, bitplane DMA mid scanline works differently on OCS vs ECS/AGA.

I didn't check but it probably is same side-effect as in demo Subtle Shades / Nuance. (Credits part)

emoon commented 4 years ago

Ok, I'm going to double check :)

emoon commented 4 years ago

So https://files.scene.org/get/parties/2015/revision15/demo_amiga/gtn-sushiboyz-party.adf linked above works fine on my A500 πŸ€”

tonioni commented 4 years ago

ADF I tested had CRC32=b2b78929. And it did have the problem, scroller is misaligned towards left. You really sure you do have 8371 Agnus? :)

emoon commented 4 years ago

CRC matches. Are there more than one revision of the OCS chip? I'm 100% sure it's not an ECS machine.

tonioni commented 4 years ago

Perhaps there is simple misunderstanding: I am talking about ECS Agnus only, not "full" ECS (which usually means A500+ or A600 or A3000 unless someone swapped Denise) hardware that includes both ECS Denise and Agnus. Agnus being OCS or ECS is the important bit. (But some demos also do have issues with ECS Denise: Screen is totally blank..)

Run SysInfo (or any other system info program). Does it say "DMA/Gfx ECS Agnus" or not?

emoon commented 4 years ago

It actually say ECS Agnus indeed :) (and STD Denise)

tonioni commented 4 years ago

Time to buy another A500, OCS and ECS Agnus A500 is the minimum requirement :D

mithrendal commented 4 years ago

@tonioni do you think 512kb is not enough anymore in 2020? please don’t tell me that I have to buy a ram expansion 😬

dirkwhoffmann commented 4 years ago

do you think 512kb is not enough anymore in 2020?

ACA500plus 🀀. Works like a charm.

dirkwhoffmann commented 4 years ago

Fixed in v0.9.10

Bildschirmfoto 2020-08-03 um 15 50 52