The Abduction of Oscar Z on a real CPC

Started by mikezt, 19:33, 02 May 21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

mikezt

Hello!
I'm trying to play Abduction of Oscar Z on a real CPC, but the picture is very wrong. Look at the attachment. Why is this happening? Is it because of the wrong CRCT type?
Cheers,mike/zeroteam

roudoudou

Quote from: mikezt on 19:33, 02 May 21
Hello!
I'm trying to play Abduction of Oscar Z on a real CPC, but the picture is very wrong. Look at the attachment. Why is this happening? Is it because of the wrong CRCT type?
Cheers,mike/zeroteam
because this is not a cathodic screen, there is sync issues
use RASM, the best assembler ever made :p

I will survive

XeNoMoRPH

yes, it is a bug already reported, @tulinmola promised to fix it, but the fix is ​​not posted yet

on the other side, @CyrilAmstrad , He also has a corrected version available, but it is not yet published:



https://youtu.be/kHq44o0-dg0
your amstrad news source in spanish language : https://auamstrad.es

tulinmola

Hi all, here Tulo!


Yes, I'm fully aware of the sync bug. As @XeNoMoRPH said there will be a fix for this (with other minor changes/fixes). And it will be available as soon as I can steal some time to my real life. I hope it to be sooner than later!


Cheers!

mikezt

Hi tulinmola!
That's good news and don't worry, I know the problem with free time. I'm looking forward to play it on a real hw.

jesusdelmas

Hello all!


Any news about the fix version??

Rhino

Quote from: tulinmola on 14:34, 03 May 21
Hi all, here Tulo!


Yes, I'm fully aware of the sync bug. As @XeNoMoRPH said there will be a fix for this (with other minor changes/fixes). And it will be available as soon as I can steal some time to my real life. I hope it to be sooner than later!


Cheers!
Hey @tulinmola , congrats on the game! It's really beautiful and a genre that doesn't have a lot of good games on CPC so it's even more appreciated.  :)

About the sync bug, I debugged the code and I think I found where you have the problem.

I saw that you use the same screen configuration of the Mario demo I made and the code you use to configure the screen is basically the same I wrote for that demo but with a modification that causes the desync:

In the third interrupt, when CRTC register 9 is set to 7 to make the character 8 pixels height again, it is done prematurely, when still VCC=#14 and VLC=#01, and as a consequence the character #14 becomes 8 pixels high instead of the 2 pixels it should be, because the rest of the code is set to generate a 50Hz signal (or 312 scanlines) only if that character is 2 pixels high. That little timing mismatch is producing extra scanlines and a signal a bit slower than the PAL standard and that's why it doesn't sync well on monitors with low tolerance to frequency mismatches. To fix it, just set register 9 to 7 about 20 cycles later, just like in the Mario demo.

Also keep in mind that fixing it will take a few hundred cycles per frame and if you're on the speed limit to keep the game's refresh rate you may need to do some additional speed optimisation, although I hope that's not the case.

Then, in the second interrupt I think there may be another possible issue because register 9 is set to 1 at the very beginning of the first line of the character and, although it may work, on not very accurate emulators it could fail unnecessarily. Although I don't know if you need this modification to have a bigger delay margin in the interrupt but, if this is not the case and you always have the interrupts enabled, it would be better to do it a few cycles later for better stability/compatibility.

And that's all! I hope this will help you to get the fix out soon, as I think there are many people waiting to have your great game fixed!

Regards!



Powered by SMFPacks Menu Editor Mod