ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Discuss the project, or ask a general question
Post Reply
djp
Posts: 5
Joined: Tue Apr 30, 2024 11:59 am

ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by djp »

Hi,

Have struggled over the past few days to get ADFFS working with my Raspberry Pi 3 Model B+. I'm running RISC OS 5.30, which was installed successfully via an upgrade from previous stable version 5.28.

ADFFS 2.83 was installed via !Packman. A CMDLINE/TXT file was created in !Boot.Loader with the line 'disable_mode_changes' added. The latest BOOTCODE/BIN, FIXUP/DAT and START/ELF have all been put in the !Boot.Loader directory. 'fake_vsync_isr=1' is present in the CONFIG/TXT file and uncommented.

Games tested were all downloaded via !Packman. They were 'Acheton & Kingdom of Hamil', 'Alone in the Dark', 'Cannon Fodder', 'Lemmings', 'Nebulus', 'Pac-Mania', and 'Sensible Soccer'.

!ADFFS appears to open correctly, appearing in the bottom menu bar. The game file is then either double-clicked or dragged over the !ADFFS icon and then 'Boot floppy' clicked. Either way the response is the same:
Error

Application may have gone wrong. Click Continue to try to resume or Quit to stop Application'
If I click on 'Describe' it reports (or similar):
Internal error: abort on data transfer at &20626cb8
Clicking on 'Quit' exits the error prompt, however if I click 'Continue' it freezes my Pi.

One thing that might be of significance is the screen I use with my Raspberry Pi. It is the official Raspberry Pi 7" (touch)screen. It only has a maximum resolution of 800x480.

Any advice appreciated.

-- djp
JonAbbott
Posts: 2971
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by JonAbbott »

Switch it back to EDID (ie remove disable_mode_changes from CMDLINE/TXT) and try the ADFFS 2.84 beta which will use a scaled overlay instead of changing screen resolution. Provided your desktop is 800x480 16M, it should hopefully scale to fit your desktop and appear to be fullscreen.

If you still see the abort, please post the output of both *Where and *ShowRegs
djp
Posts: 5
Joined: Tue Apr 30, 2024 11:59 am

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by djp »

Switched back to EDID and downloaded and installed ADFFS 2.84 beta. To confirm, the display is set to 800x480 16M.

Unfortunately, same error occurs.
*Where
Address &206B8438 is at offset &0000CE24 in module 'ADFFS'
*ShowRegs
Register dump (stored at &20003110) is:
R0 = EE100810 R1 = EE100810 R2 = EE100810 R3 = 01C10000
R4 = EE100810 R5 = EE100810 R6 = EE100810 R7 = EE100810
R8 = EE100810 R9 = 00000000 R10 = 00000000 R11 = 00000000
R12 = 206AF738 R13 = FA207A04 R14 = 00000000 R15 = 206B8438
Mode SVC32 flags set: nzcvqjggggeAift PSR = 00000113
The game tested was 'Acheton and Kingdom of Hamil', downloaded via !Packman.
JonAbbott
Posts: 2971
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by JonAbbott »

djp wrote: Wed May 01, 2024 4:03 pm Unfortunately, same error occurs.
ADFFS allocated 31MB of RAM, which succeeded, but actually only got 28MB which triggered an Aborted when it hit the unexpected memory limit.

Are you running any software that might cap memory allocation? Try bypassing !Boot at power-on, then run !ADFFS and try a game again making sure no other apps are loaded.
djp
Posts: 5
Joined: Tue Apr 30, 2024 11:59 am

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by djp »

Hmmm. I tried bypassing !Boot at power-on by holding down SHIFT while starting the Pi. However, it didn't appear to work. Apologies if this is not the correct procedure, I came across the advice when searching.

I turned off all running applications that I could see in the Tasks window and tried running !ADFFS and the game again, but still encountered the same issue. This is no doubt due to me not carrying out the correct instructions that you advised.
djp
Posts: 5
Joined: Tue Apr 30, 2024 11:59 am

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by djp »

Aha! Thank you Jon!

It was Aemulor. Removed it from !Boot.Choices.Boot.PreDesk, rebooted and it works! Simply exiting Aemulor obviously didn't work.

There is an initial flickering issue, but I'm sure this can be fixed if I look into things.

This is going to be fun. :D
JonAbbott
Posts: 2971
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by JonAbbott »

djp wrote: Wed May 01, 2024 10:01 pm There is an initial flickering issue, but I'm sure this can be fixed if I look into things.
Yes, there are still some issues with BCMVideo which I've reported. Overlays weren't implemented in the OS with gaming in mind, so there's been some teething issues.

The current state is that BCMVideo will drop overlay changes if either the GPU is busy or the machine is threaded (ie handling an IRQ). I recoded ADFFS so overlay changes aren't threaded to avoid the later, but there's nothing ADFFS can do if the GPU is busy as BCMVideo doesn't report the failure back.

I think that's what's causing the initial flickering, possibly because the GPU is handling the initial palette changes and dropped the initial setup requests. It's worse if you go to BASIC and simply change to a legacy mode (ie MODE 13) - sometimes you don't get anything displayed, which I reported here.

I suspect both issues are the same problem, the games are flickering initially because they're bank switching in DA2 which will cause ADFFS to update the overlay and as some of the tri-buffer banks that ADFFS uses in the GPU haven't been setup correctly they appear blank.
djp
Posts: 5
Joined: Tue Apr 30, 2024 11:59 am

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by djp »

Would you recommend sticking with the beta release, or now that the memory issue has been addressed, should I revert to the latest stable release and reinsert the CMDLINE/TXT file?

Thanks for the explanation regards the flickering.
JonAbbott
Posts: 2971
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: ADFFS fail on Raspberry Pi 3 Model B+ running RISC OS 5.30

Post by JonAbbott »

That's up to you. 2.83 obviously won't flicker as its not using overlays. You could also stick with 2.84 and copy ADFFS550 over the top of ADFFS550ov so it's not using overlays.

Either way, you will need "disable_mode_changes" in CMDLINE/TXT so it can change resolution.
Post Reply