ADFFS 2.89 public beta

Discuss ADFFS development and download test releases
Post Reply
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

ADFFS 2.89 public beta

Post by JonAbbott »

ADFFS now avoids writing game boot scripts to the filesystem when a game is run. This removes the risk of filesystem corruption should a game hard-lock immediately.
It's now aware of the RPCEMu Extended Graphics Card and will switch back to the VIDC20 driver while games are running.

Changes since 2.88
  • *ADFBootFloppy now uses PipeFS to pipe extracted boot scripts to Obey, which avoids writes to the filesystem and potentially causing filesystem corruption if the game hard-locks immediately
  • changed ZIP_extract to support appending the extracted file to an existing file handle
  • Wasn't checking for Bootcommands 1.25, which caused the "X" commands in the ADFFS !Run to fail on OS's that include early versions of the Module
  • recoded strcmp / strcmp_insensitive and moved to global functions
  • recoded the checks for ARM / ARM3Support Modules
  • moved more in-line variables into vars
  • Switches the RPCEmu Extended Graphics Card off while a game is running
  • MkSetVars was setting ADFFS$ARMv7 incorrectly on a Pi1
  • JIT wasn't cleaning the Dcache correctly if the end address of the block was 1 byte short of the next cache line
Known issues
  • Will hard-lock immediately if loaded on a Pinebook Pro. Neither the Pinebook or Pinebook Pro can run ADFFS due to an issue in their video driver
  • If a WiFi stack is loaded (ROD or ROOL), SDIODriver will randomly get into a race condition and appear to hard-lock the machine. This has been reported, but the root cause has yet to be identified
  • Audio is glitchy when the blitter is active, which is noticeable on a Pi when in MODE 32
  • Audio can be glitchy on a RiscPC SA 26bit
  • F1003801 Battle Chess (1993) (Krisalis Software) - slow on StrongARM
  • F1006501 Cannon Fodder (1994) (Krisalis Software) - goes into an unsupported video mode on RiscPC
  • F1060201 Chuck Rock [SA version] (2001) (R-Comp Interactive) - display is wrong when on a RiscPC
  • F1015401 Fire & Ice (1995) (Warner Interactive Entertainment) - copperbar timing is incorrect on a RiscPC, causing screen flickering
  • F1054501 Gods [RPC version] (2001) (R-Comp Interactive) - no sound effects and goes into an unsupported video mode on RiscPC
  • F1059801 Lemmings 2: The Tribes [SA version] (2001) (R-Comp Interactive) - music slows down in places on a RiscPC
  • R-Comp RPC/SA versions of games mostly rely on Mode definition files to work and return to the desktop in the game mode. eg. James Pond, Chuck Rock, Gods etc
Fixed issues
  • Games failing to start when run on a Pi1
Script changes
  • None
Attachments
adffs289.zip
28th Aug 2026
(1.18 MiB) Downloaded 24 times
richw
Posts: 175
Joined: Sat Sep 14, 2013

Re: ADFFS 2.89 public beta

Post by richw »

I've just tried this on a Pi 1B with 'RISC OS Pi' with 5.30, and also a recent RISC OS 5.31 ROM, and running Mad Professor Mariarti hard-locks the machine, sometimes with some noise coming from the TV, and 'press SPACE or click mouse...'. The previous release version of ADFFS also does it.

It's been a while since I used the Pi, so it's entirely possible I am doing something daft. I am trying out an 'improved' USBJoystick, but tried disabling that and reverting to the 0.22 supplied with ADFFS. No improvement.

I was able to run Pacmania, so perhaps it is something specific to MadProf? This is using the disc images from here.

I also tried E-Type, which locked the machine after drawing the 'E-Type' graphic (where I would expect the fade and the 'insert tracks disc' bit).

I can supply any more info as needed.
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

Re: ADFFS 2.89 public beta

Post by JonAbbott »

I’ll check both games and come back if I can reproduce it.
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

Re: ADFFS 2.89 public beta

Post by JonAbbott »

I'm seeing the same thing on a Pi1. They work on a RiscPC and Pi3 so the issue is specific to the ARMv5/v6 build.

I'll get it fixed in the next test release.
richw
Posts: 175
Joined: Sat Sep 14, 2013

Re: ADFFS 2.89 public beta

Post by richw »

Great, thanks. I was pretty much convinced I was doing something wrong, as it's been a while...
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

Re: ADFFS 2.89 public beta

Post by JonAbbott »

It broke with 2.85 on ARMv5/v6.

There's actually two issues. The ARMv7 detection isn't correct in SetVars, which causes the ARMv7 version of ADFFS to be loaded and the second issue is cache-line flushing isn't working on the Pi1.

The cache-line flushing is handled by the IMB_List ARMop in the OS, so it might be an OS bug.

EDIT: Not an OS bug, but a rare-case alignment issue in ADFFS. How the problem doesn't occur on SA, Pi2 and Pi3 is interesting.
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

Re: ADFFS 2.89 public beta

Post by JonAbbott »

richw wrote: Tue Aug 25, 2026 running Mad Professor Mariarti hard-locks the machine
New build in the OP, which fixes this issue
richw
Posts: 175
Joined: Sat Sep 14, 2013

Re: ADFFS 2.89 public beta

Post by richw »

Indeed it does - perfect, thanks.
richw
Posts: 175
Joined: Sat Sep 14, 2013

Re: ADFFS 2.89 public beta

Post by richw »

This may be an issue in that last update: Zool doesn't work (Pi model and OS unchanged). I mount the floppy image (downloaded from this site), choose 'Boot floppy', click 'YES', and nothing happens. I am 99% sure that with the previous version (where MadProf failed), Zool ran OK.

Interestingly, if I try to run MadProf after a failed attempt to run Zool, then MadProf also fails (the screen clears, then it freezes). If I restart and run MadProf first, that's fine, and then attempting to run Zool will always fail. So I assume that once Zool fails, some things within ADFFS (or even RISC OS itself) get into a bad state.
JonAbbott
Posts: 3301
Joined: Thu Apr 11, 2013
Location: Essex
Contact:

Re: ADFFS 2.89 public beta

Post by JonAbbott »

Zool is 32bit native, it doesn't have a boot script. Just run it.

The other game failing after trying to boot Zool - that's possibly an issue. I'll try to reproduce it.
Post Reply