Login
Back to forumReply to this topicGo to last reply

Posted By

Charlemagne
on 2025-01-05
15:38:04
 Godzilla in Yape(+SDL) and Soft Reset(F11)

Hello Everybody,

Not a deep secret that I am investigating how Commodore Plus/4 using border areas, so I was very surprised when I saw the same (side) effect in YapeSDL as in Fridi (LUMYDCTT) at the beginning of development that GODZILLA (and THE BORDER) shifted almost a half of a row-size to the right. I did not understand why.

The another strange thing was when I implemented Soft Reset (F11) into Fridi (LUMYDCTT) and started to try it in games (Digital Ball, Artúr kalandjai, Godzilla, etc.)... ...there is no anything to see in Yape( and SDL) after F11... why?





Have a good astonishment!

Posted By

Crown
on 2025-01-06
04:17:34
 Re: Godzilla in Yape(+SDL) and Soft Reset(F11)

Two things happen here:

When you press and hold the Reset button on the machine, it takes the Reset line high, this essentially stops the CPU executing instruction, but it doesn't stops the TED generating video and audio. The TED will generate the screen based on the last written TED registers, that's why you should see a broken up image, as the CPU has no chance to change the TED registers to the values which would generate the correct image. YapeSDL seems to be incorrect.
Yape sidesteps this by displaying the last complete frame during reset, or it simply doesn't emulates holding the reset button, whichever.

Second, ROM is not banked in when you press the Reset button, so the Reset Vector from the RAM will be used if ROM was turned off, when you did press the button. So if you overwrite the Reset Vector you can implement a Reset Protection, and it is up to the original developer what happens here. It is usually some special effects, and occasionally clearing RAM.

In the case of Godzilla it plays a digital sample, then black screen if I remember correctly. It seems that there was this hidden message as well, which you accidentally unearthed now. You apparently apply reset at somewhere on the frame where the background colour was set to white, or you override some TED registers in your reset code, and the reset code in Godzilla doesn't update it.

Posted By

Csabo
on 2025-01-06
09:56:56
 Re: Godzilla in Yape(+SDL) and Soft Reset(F11)

Actually it's a lot simpler. That text should be never visible (very nice find though!).

The end of the reset code in Godzilla (starting from $7968) writes $56 to $FF06/$FF07, which is an "invalid" combination. A nicer way of writing that - for PAL systems anyway - would be
>FF06 5B 18
This turns on ECM mode and multicolor mode at the same time, which is not possible. The TED will generate a blank, black screen. (The $56 value for $FF07 also switches the machines to NTSC mode, which is why YAPE and Plus4Emu display slightly different outputs.)

Posted By

Charlemagne
on 2025-01-06
19:14:11
 Re: Godzilla in Yape(+SDL) and Soft Reset(F11)

WTF(?) with Godzilla borders in VICE... happy



...and Digital Ball intro scroll...



Posted By

Csabo
on 2025-01-06
20:04:00
 Re: Godzilla in Yape(+SDL) and Soft Reset(F11)

That's not a big surprise at all; it's well known that VICE unfortunately has relatively poor Plus/4 emulation. Most new games/demos don't work properly on it.



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2025. Support Plus/4 World on Patreon