ADFFS 2.57 beta

Discuss development specific to the Pi version of ADFFS
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

Vanfanel wrote:-Overload shows a red message on the loading screen "Warning: screen rate is to high! Game will run too fast", and stays there playing the loader music.
Hmm, just double checked and it still working okay on mine. I'll have to test at 50Hz, as I can't think of another differences. It does do some odd things to work out the screen refresh rate - as noted by the fact it doesn't work and thinks that 50Hz on the Pi is too high!
Vanfanel wrote:-Magnetoids: This one works now! What a music! True MOD love there...
There momentary are gaps in the tittle music, once in a while.
Good, I suspect it's using FPU instructions then.

I hadn't noticed it before but now you've mentioned it I'm not sure how I didn't notice it. They seem to be consistent at the same points in the music so I suspect a Tracker issue. It uses DSymphonyPlayer internally, which I've already had to patch up on two other games as it exits leaving IRQ/FIQ disabled - it was this that was causing the issues in Overload and Burn 'Out. Watching the CPU state under the debug build, I can see FIQ's are randomly being left disabled and IRQ's are always disabled at VSync.
Vanfanel wrote:The regressions are still there.
These has been around since 2.55f, not sure how we missed it previously, I'll investigate.

Ending on a positive note...I received Arcade Soccer in the post today :D. I've imaged it, created the boot script and put it on the dev site, seems to work okay on the Pi. Not the best football game, but pretty rare as it's taken five years to locate a copy. I was seeing a random crash after pressing SPACE at the title screen on the RiscPC, although haven't reproduced it under emulation yet to diagnose.

EDIT: Lemmings etc are fixed in today's build - it was using the wrong MODE VIDC_list table on GPU's.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

Updated obey.zip and Modules on the dev site which get Simon the Sorcerer working :). I've put the floppy images on there as well.

To install Simon the Sorcerer boot disc 9, once its fully installed reboot the machine (as you can't shut the JIT down cleanly when in WIMP mode, which is highly experimental), then replace !Run with F1033201 commenting out the 1st line. When run for the first time, it will remove the protection check, so just click three times to get past the "Manual protection" - it was failing most of the time and severely hampering my debugging, so it had to go :evil:

Incidentally, you no longer need to strip off the /jfd extension for disc swapping to work :D

Let me know if Overload is still hanging, I did notice it ends up on a blank screen if left on the demo loop - which may be related to the issue you're having. Another game with a really good tracker mod.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: ADFFS 2.57 beta

Post by Vanfanel »

@Jon:

-The palette problems in Lemmings, etc are gone.
However, Cannon Fodder plays in sloooow motion.

-Simon boots, I installed it fine and works. However, it's not detecting the clicking on action words well. The only actions that can be clicked are the right column actions. Any oter clicking selects an action on that column, on the same vertical position. So one can not walk outside Calipso's house or pick up the scissors, etc..

-Overload is still staying on the screen rate warning forever. It's not haging: music plays, loader color bars move... but that's all. No key on the keyboard seems to convince it to continue.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

Could you run Overload under the debug build and let me know the two addresses below the last instruction encoded please.

Cannon Fodder - I've yet to look at it, although you could try CTRL-SHIFT-PgUp twice and see if that fixes it.

Simon - it seemed to be working when I play tested it on Fri, but will double check tonight.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: ADFFS 2.57 beta

Post by Vanfanel »

@Jon:
-Overload: With the debug module, I get a black screen instead of the red warning about refresh rate.
-Cannon Fodder: The slowdown mode happens sometimes, other times it's smooth and runs at normal speed. Now I can't reproduce the slowdown mode! :(
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

Vanfanel wrote:-Cannon Fodder: The slowdown mode happens sometimes
I have a vague recollection of this happening previously on your Pi.

Simon the Sorcerer - I can repeat the mouse issue on both StrongARM (which is even worse) and my Pi, although looking at the code I can't see what the issue is. I suspect it's elevated self-modifying code, as there's several CallBack handlers.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: ADFFS 2.57 beta

Post by Vanfanel »

@Jon: Yes, the Cannon Fodder slowdown problem happened time ago, but it was gone forever at some point. Now it's back.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

Update obey.zip and Modules on the dev site, which get X-Fire working. It still has at least one page zero access bug I need to look at, so it may do odd things under the non-debug build and report Page Zero access under the debug build.

I found a fatal bug in the MemCopy code, which was corrupting memory - it's been around since 2.49b (15th March 2015!) How this hasn't caused more issues to date I don't know, as it's used for every disc access. I also added tracking of event 11 (key transition) as X-Fire was crashing whenever a key was pressed (ADFFS enables event 11 to check for discswaps etc), I've subsequently turned off all of X-Fire's Environment handlers, as they were causing a crash when an UpCall occurred and were randomly corrupting USER R13.

I've spent most of the day looking at Simon the Sorcerer's issue and not really got very far. I managed to make it worse when I altered it's SWI code to not stack the SWI before executing it - so it may be SWI related. It's far worse on RO3.71 StrongARM, so possibly a hypervised SWI at fault as the majority of SWI's on RO3.71 are untouched (it doesn't require SWI flag preservation.)

Whilst recoding X-Fire's os_swi function to not stack code, I've spotted a potential issue in that the spray sound is silent when the code isn't stacked. It shouldn't make any difference if the code is running from the stack or elsewhere, so either there's code that's running elevated, or there's a bug in the JIT's SWI handler.
Vanfanel wrote:@Jon: Yes, the Cannon Fodder slowdown problem happened time ago, but it was gone forever at some point. Now it's back.
As before, I can't reproduce it. Are you running from HD or via floppy? Is there any difference?
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

JonAbbott wrote:I managed to make it worse when I altered it's SWI code to not stack the SWI before executing it - so it may be SWI related. It's far worse on RO3.71 StrongARM, so possibly a hypervised SWI at fault as the majority of SWI's on RO3.71 are untouched (it doesn't require SWI flag preservation.)
It's OS_AddCallBack when there's already an identical CallBack that's causing the problem, I'm investigating why.

EDIT: Scrub that, it's due to the main game code running elevated via the CallBack.
EDIT2: It's not code elevation, I've tried calling the CallBack in USER and it still exhibits the problem. The only things left are a bug in the JIT or a hypervised SWI.
EDIT3: I've ruled out hypervised SWI as the cause
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS 2.57 beta

Post by JonAbbott »

There's a new build on the dev site, which fixes some issues with the way apps are run under the JIT.

There's enough major bug fixes in 2.57 to release it, as soon as I've tested a random selection of games.
Post Reply