Page 1 of 1

ADFFS 2.72

Posted: Sat Mar 02, 2019 12:56 pm
by JonAbbott
Available below as an attachment for non-networked/pre RiscPC machines, or via PackMan using the source URL:

This build is mainly a JIT stability update, with many of the known issues from 2.70 resolved. The full change log is detailed below, some highlights include:
  • Maximum Appspace under the ARM3 JIT has increased from 8MB to 12MB
  • Games crashing under the JIT are now handled, allowing the JIT to close down gracefully where possible
  • USBJoystick updated to 0.15, resolving several issues that caused problems with some titles
  • CPU speed is now set high around CPU intensive operations
  • DOS/Atari disc images now catalogue correctly and files can be accessed from the desktop. The Atari floppy file type (&FE3) can now be used for Atari floppy images
  • Some bug fixes to the JFD imager, allowing title selection by typing the first few characters of the game title
Additional games now supported on RISC OS 5:
  • F1046101 Burn'Out [SA version] (1997) (Oregan Developments)
  • F1043801 SimCity 2000 [A5000 version] (1994) (Krisalis Software)
  • F1033101 SimCity 2000 [RPC version] (1994) (Krisalis Software)
  • F1038601 Wizard Apprentice (1997) (The Datafile)

A305/A301/A410/A440/A540 requirements:
  • 4MB RAM minimum, 12MB RAM maximum
  • RISC OS 3.10
  • ADFFS must be installed to a hard-drive
RiscPC requirements:
  • 32MB RAM minimum
  • RISC OS 3.x, 4.x or 5.23 Jun 9th 2016 or newer. Note that some games will not work on 4.x due to the way it allocates screen memory in 1MB blocks
  • If you have VProtect loaded, you must prevent it from intercepting RMLoad / RMRun as it will cause the Module load to fail. You can do this via *UnSet Alias$RM*
  • Some RISC OS 4 builds (4.39 for example) have an inbuilt version of ZLib which contains a compression bug. You must *Unplug ZLib from the ROM if you wish to save/image JFD files
Iyonix requirements
  • RISC OS 5.27 Nov 16th 2018 or newer
  • To get legacy TV MODEs working (0 to 15), you can try this Monitor file for 75Hz EGA on VGA
Pi requirements:
  • Any revision Pi, from Pi 1 to Pi 3 Model B+, including Pi Zero
  • RISC OS 5.27 Nov 16th 2018 or newer (download link for latest Beta RPi ROM)
  • Ensure fake_vsync_isr=1 is uncommented in !Boot.Loader.CONFIG/TXT
  • You must disable GPU mode change support using the applicable method below:

    1. Hold SHIFT and browse to !Boot.Loader from the root of the drive
    2. Create CMDLINE/TXT with the following contents:

      Code: Select all

    1. Hold SHIFT at power on to enter the NOOBS configuration
    2. Select Edit Config
    3. Add the following to CMDLINE.TXT:

      Code: Select all

  • (optional) For a blocky pixel retro gaming look, turn off the default GPU filtered upscaling by editing !Boot.Loader.CONFIG/TXT and add the following lines:

    Code: Select all

    #set GPU upscaling to nearest neighbour
  • (optional) If your display supports 50Hz, you can force the Pi to use 50Hz by editing !Boot.Loader.CONFIG/TXT and adding the following lines. Uncomment one of the hdmi_mode values:

    Code: Select all

    #576p @ 50Hz
    #720p @ 50Hz
    #1080p @ 50Hz
    At other monitor frequencies, games will still run at the correct rate but micro stutter may be noticeable where extra frames are added to make up the difference

Known issues
  • Does not support the protection used by Chequered Flag (RO2 version) when running on RISC OS 3.1x (talks directly to the FDC via IOC)
  • Shelling out of the desktop (Ctrl-Shift-F12 twice) hangs under RedSquirrel if an HD floppy is mounted on RO3.5+ ARM710
  • Although Caverns runs fine under VIDC translation on the A7000, on a RiscPC the scrolling isn't quite correct
  • Some games don't display on Kinetic (eg Zarch)
  • OMAP based cores are untested and may not work
  • Some games that use overscan may result in a blank screen on a RiscPC
  • 26bit WIMP app support under RISC OS 5 can randomly lock the machine (related to a feature of RISC OS, which doesn't preserve memory page access across a task switch)
  • Hardware scrolling is still in effect when returning from an emulated legacy mode, to the desktop under RISC OS 5
  • When switching between an emulated mode and the desktop, logical memory space is leaked eventually resulting in logical memory exhaustion. Please refer to the ROOL discussion for further details

Games that are made compatible with StrongARM or newer processors (tested on Pi 3):
F1000101 2067 BC (1993) (Oregan Developments)
F1000201 3D Construction Kit (1991) (Domark)
F1045101 Acheton & Kingom of Hamil (1987) (TOPOLOGIKA)
F1000401 Adventures, classic complication [Philosopher's Quest, Countdown to Doom, Return to Doom, Kingdom of Hamil, Acheton] (1988) (TOPOLOGIKA)
F1000402 Adventures, classic complication [Philosopher's Quest, Countdown to Doom, Return to Doom, Kingdom of Hamil, Acheton] (1988) (TOPOLOGIKA)
F1049202 Adventure Collection, The: Kidnapping (1993) (Alpine Software)
F1000601 Aggressor (1992) (Atomic Software)
F1000701 Air Supremacy (1991) (Superior Software)
F1001001 Alerion (1988) (DABS Press)
F1001501 Alone In the Dark (1995) (Krisalis Software)
F1001701 Apocalypse (1990) (The Fourth Dimension)
F1049301 Arc/A3000 Christmas Box, The: Brixx! (1990) (RTFM Software)
F1049302 Arc/A3000 Christmas Box, The: PON! in Winterland (1990) (RTFM Software)
F1049303 Arc/A3000 Christmas Box, The: Zap the red wierdos from Mars (1990) (RTFM Software)
F1001801 Arcade 3 (1988) (Clares Micro Supplies)
F1001901 Arcade Soccer (1989) (The Fourth Dimension)
F1002001 Arcendium (1988) (Alien Images)
F1002401 ArcPinball (1990) (Shibumi Soft)
F1002601 Arcturus (1994) (Oregan Developments)
F1003301 Asylum (1993) (Digital Psychosis)
F1048901 Avon & Murdac (1989) (TOPOLOGIKA)
F1003401 Axis (1993) (TBA Software)
F1023101 Ballarena (1990) (Sisteme)
F1003601 Ballarena (1994) (Uffenkamp Computer Systeme)
F1003701 Bambuzle (1991) (Arxe Systems)
F1003801 Battle Chess (1993) (Krisalis Software)
F1003901 Battle Tank (1990) (Minerva)
F1004101 Big Bang (1996) (Psycore)
F1004201 Birds of War (1993) (The Fourth Dimension)
F1064001 Blaston (1991) (Eterna)
F1004401 Blaston (1994) (Uffenkamp Computer Systeme)
F1004601 Blitz! (1991) (Arxe Systems)
F1004701 BloodLust (1998) (The Fourth Dimension)
F1004801 Blood Sport (1993) (Matt Black)
F1004901 BlowPipe (1990) (Eclipse)
F1005201 Bobby Blockhead vs The Dark Planet (1991) (Atomic Software)
F1005301 Boogie Buggy (1991) (The Fourth Dimension)
F1005501 Botkiller2 (1999) (Artex Software)
F1045201 Bouncer (1991) (RTFM Software)
F1005601 Break 147 & Superpool (1991) (The Fourth Dimension) (HD install only)
F1044301 Brutal Horse Power (1997) (TBA Software)
F1005701 Bubble Fair (1991) (Eterna)
F1005801 Bubble Impact (1997) (Moving Pixels)
F1005901 Bug Hunter & Moondash (1990) (Minerva)
F1006001 Bug Hunter in Space (1990) (Minerva)
F1006201 Burn'Out (1995) (Oregan Developments)
F1046101 Burn'Out [SA version] (1997) (Oregan Developments)
F1006501 Cannon Fodder (1994) (Krisalis Software)
F1006701 Carnage Inc. (1993) (The Fourth Dimension)
F1019501 Cartoon Line part one (1991) (Eterna)
F1002201 Cartoon Line part one (1993) (Uffenkamp Computer Systeme)
F1035501 Cascade (1992) (Milo Shaffer and Richard Norman)
F1006801 Casino (1989) (Minerva)
F1007101 Cataclysm (1991) (The Fourth Dimension)
F1048201 Cataclysm [SA version] (1998) (The Fourth Dimension)
F1007201 Caverns (1991) (Minerva)
F1049001 Champions: Jahangir Khan World Championship Squash (1991) (Krisalis Software)
F1049002 Champions: Manchester United (1992) (Krisalis Software)
F1049004 Champions: World Championship Boxing Manager (1992) (Krisalis Software)
F1049005 Champions: World Class Leaderboard (1992) (Krisalis Software)
F1062401 Chequered Flag [RO3 version] (1992) (Cambridge International Software)
F1007801 Chocks Away (1990) (The Fourth Dimension)
F1060601 Chocks Away Compendium [SA version] (2000) (The Fourth Dimension)
F1008001 Chopper Force (1992) (The Fourth Dimension)
F1008101 Chuck Rock (1991) (Krisalis Software)
F1014401 Chuck Rock [BUZZ version] (1994) (Krisalis Software)
F1008301 Cobalt Seed, The (1995) (TBA Software)
F1008801 Command Ship (1995) (TBA Software)
F1008901 Confusion (1989) (Cambridge International Software)
F1009001 Conqueror (1988) (Superior Software)
F1009101 COPS (1989) (Alpine Software)
F1009301 Corruption (1989) (Rainbird)
F1009501 Crisis (1990) (Cambridge International Software)
F1009601 Crystal Maze, The (1993) (Sherston Software)
F1009901 Cyber Ape (1995) (TBA Software)
F1010201b Cyborg (1992) (Alpine Software) (Text Adventure only)
F1010301 Cycloids (1993) (Software 42)
F1010401 DarkWood (1995) (Eclipse)
F1046201 Deadline (1996) (Network 23)
F1010901 Deeva (1990) (Calderglen Computers)
F1011501 Diggers (1994) (Millennium Interactive)
F1011701 DinoSaw (1993) (Five Star Marketing)
F1011801 Dominate (1991) (RTFM Software)
F1012101 DragonBall (1993) (TBA Software)
F1012501 Drifter (1997) (The Fourth Dimension)
F1012701 Drop Ship (1990) (The Fourth Dimension)
F1060101 Drop Ship [SA version] (1997) (The Fourth Dimension)
F1012801 Dune II - Battle for Arrakis (1995) (Eclipse) (v1.23F)
F1053501 Dune II - Battle for Arrakis (1997) (Eclipse) [CD version] (v1.32)
F1012901 Dungeon, The (1993) (The Fourth Dimension)
F1030701 Ego: Repton 4 (1992) (Superior Software)
F1013201 Empire Soccer '94 (1995) (Empire Software)
F1013401 Enter The Realm (1991) (The Fourth Dimension) (screen borders aren't correct)
F1045701 Enter The Realm [SA version] (1992) (The Fourth Dimension)
F1013501 Enthar Seven (1988) (Robico Software)
F1014001 E-Type (1989) (The Fourth Dimension)
F1014601 Exotic Adventures of Sylvia Layne, The (1993) (The Fourth Dimension)
F1015301 Fine Racer (1991) (Eterna)
F1015401 Fire & Ice (1995) (Warner Interactive Entertainment)
F1015701 Fireball II (1990) (Cambridge International Software) (F1015701b script for Fireball)
F1015801 Fish! (1988) (Rainbird)
F1015901 Flashback (1994) (U.S. Gold)
F1016301 Flying High: Euroblaster (1997) (GEK)
F1016302 Flying High: Joust (1997) (GEK)
F1063101 Formula Fun (1993) (Mystery Software)
F1016601 F.R.E.D. (1993) (Software 42) (provided you preload the 32bit version of ArcFS)
F1016701 Freddy's Folly (1988) (Minerva)
F1043701 Fugative's Quest (1989) (Robico Software)
F1017001 Galactic Dan (1992) (The Fourth Dimension)
F1055601 Games Minipack Four: Confusion (1989) (Cambridge International Software)
F1055602 Games Minipack Four: Orion (1988) (Minerva)
F1055603 Games Minipack Four: StarTrader (1989) (Gem Electronics)
F1055604 Games Minipack Four: Word Up Word Down (1989) (Gem Electronics)
F1059201 Games Minipack Five: Fireball II (1990) (Cambridge International Software) (F1059201b script for Fireball)
F1059202 Games Minipack Five: Fish! (1990) (Cambridge International Software)
F1059203 Games Minipack Five: PON! (1990) (Cambridge International Software)
F1017201 Gods (1992) (Krisalis Software)
F1017901 Gribbly's Day Out (1992) (Coin-Age)
F1017801 Grievous Bodily 'ARM (1991) (The Fourth Dimension) (hard to swap discs without it asking for disc 1)
F1024501 Grievous Bodily 'ARM (1991) (The Fourth Dimension) (hard to swap discs without it asking for disc 1)
F1018001 Groundhog (1998) (The Fourth Dimension)
F1041101 Guild of Thieves, The (1987) (Rainbird)
F1018301 Guile (1992) (Dream Software)
F1018801 Heimdall (1993) (Krisalis Software)
F1019201 Hero Quest (1991) (Krisalis Software)
F1019301 Heroes of Might and Magic 2: The Succession Wars (2000) (R-Comp Interactive) (no script)
F1019901 Holed Out!! (1989) (The Fourth Dimension)
F1020101 Hostages (1990) (Superior Software)
F1020201 HoverBod (1988) (Minerva)
F1056501 Humanoids and Robotix (1993) (Cambridge International Software)
F1020401 Ibix the Viking (1989) (Minerva)
F1020501 Inertia (1990) (The Fourth Dimension)
F1040801 Inferno (1996) (Paradise Games)
F1020601 Interdictor (1989) (Clares Micro Supplies)
F1020701 Interdictor II (1990) (Clares Micro Supplies)
F1020801 Iron Lord (1990) (Cygnus Software)
F1021001 Jahangir Khan World Championship Squash (1991) (Krisalis Software)
F1064901 Jahangir Khan World Championship Squash [BUZZ version] (1991) (Krisalis Software)
F1021101 James Pond (1990) (Krisalis Software)
F1059001 James Pond [BUZZ version] (1990) (Krisalis Software)
F1021201 James Pond II Robocod (1993) (Eclipse)
F1052501 James Pond II+ Robocod (1995) (Eclipse)
F1063301 James Pond Underwater Agent and Running Water (1995) (SkillsWare)
F1021301 Jet Fighter (1988) (Minerva)
F1021401 Jinxter (1989) (Rainbird)
F1021801 Kaptain Konflict (1990) (Calderglen Computers)
F1022001 KerBang! (1991) (Eterna)
F1048401 Krisalis Collection, The: Mad Professor Mariarti [BUZZ version] (1991) (Krisalis Software)
F1048402 Krisalis Collection, The: Pipe Mania (1993) (Krisalis Software)
F1048403 Krisalis Collection, The: Revelation! [BUZZ version] (1993) (Krisalis Software)
F1048404 Krisalis Collection, The: Terramex (1993) (Krisalis Software)
F1022101 Labyrinth (2000) (Acornsoft)
F1008401 Last Days of Doom, The & Hezarin (1990) (TOPOLOGIKA)
F1022301 Last Ninja, The (1992) (Superior Software)
F1022401 Leeds United (1993) (CDS Software)
F1022501 Legend of the Lost Temple, The (1992) (Eterna)
F1027701 Lemmings (1991) (Krisalis Software)
F1046901 Lemmings [Learning Curve version] (1991) (Krisalis Software)
F1022801 Lemmings 2: The Tribes (1994) (Krisalis Software)
F1022902 Logic Mania: Blindfold (1996) (The Fourth Dimension)
F1022903 Logic Mania: Gloop (1996) (The Fourth Dimension)
F1022904 Logic Mania: Tilt (1996) (The Fourth Dimension) (font palette issues if booted)
F1023201 Lotus Turbo Challenge 2 (1992) (Krisalis Software)
F1023301 Mad Professor Mariarti (1990) (Krisalis Software)
F1059301 Mad Professor Mariarti [BUZZ version] (1991) (Krisalis Software)
F1023501 Maddingly Hall (1989) (Minerva)
F1023601 Magic Pockets (1993) (Renegade)
F1023801 Magnetoids (1994) (Oregan Developments)
F1024101 Man at Arms (1990) (The Fourth Dimension)
F1024201 Manchester United (1990) (Krisalis Software)
F1049101 Manchester United Europe (1991) (Krisalis Software)
F1024401 Master Break (1990) (Superior Software)
F1056401 Memory Magic (1990) (Cambridge International Software)
F1024701 MicroDrive (1990) (Cambridge International Software)
F1045801 MicroDrive Designer (1992) (Cambridge International Software)
F1024801 MicroDrive World Edition (1991) (Cambridge International Software)
F1025001 MiG-29 Fulcrum (1991) (Domark)
F1040901 MiG-29M Super Fulcrum (1991) (Domark)
F1025101 Minotaur (1987) (Minerva)
F1025201 Mirror Image (1996) (TBA Software)
F1025301 Missile Control (1988) (Minerva)
F1025601 Morph (1998) (The Fourth Dimension)
F1025801 Mr Doo (1994) (Archimedes World)
F1026001 Nebulus (1992) (Krisalis Software)
F1026101 Nevryon (1990) (The Fourth Dimension)
F1061301 Nevryon [SA version] (2001) (The Fourth Dimension) (HD install only)
F1026301 No Excuses (1991) (Arcana Software)
F10266o1 OddBall (1995) (Digital Psychosis)
F1026701 Oh, No! More Lemmings (1992) (Krisalis Software)
F1026801 Olympics, The (1990) (The Fourth Dimension) (graphics issues under blitter)
F1026901 Omar Sharif's Bridge (1992) (Krisalis Software)
F1027001 Orion (1988) (Minerva)
F1027101 Overload (1989) (Clares Micro Supplies)
F1027201 Overload (2000) (Paradise Games)
F1050701 Pac-mania (1989) (Grandslam Entertainments)
F1044701 Pac-mania [Learning Curve version] (1991) (Domark)
F1027401 Pandora's Box (1991) (The Fourth Dimension)
F1047801 Pandora's Box [SA version] (1998) (The Fourth Dimension)
F1027501 Paradroid 2000 (1993) (Coin-Age)
F1027701 Pawn, The (1990) (Rainbird)
F1027801 Pesky Muskrats (1992) (Coin-Age)
F1028101 Pipe Mania (1989) (Krisalis Software)
F1041001 Plague Planet (1988) (Alpine Software)
F1048701 Play It Again Sam 3 disk 1 [Superior Golf, Zelanites] (1993) (Superior Software)
F1048702 Play It Again Sam 3 disk 2 [Letrouve, Top Banana] (1993) (Superior Software)
F1057407 Play It Again Sam 4: Last Ninja, The (1997) (ProAction)
F1028201 Poizone (1991) (Eterna)
F1028501 Populous (1992) (Krisalis Software)
F1028601 PowerBand (1990) (The Fourth Dimension) (v1.00)
F1061901 PowerBand (1990) (The Fourth Dimension) (v2.00)
F1060001 PowerBand [SA version] (1998) (The Fourth Dimension)
F1029301 Pushy (1997) (The Fourth Dimension)
F1029201 Put It! (1992) (Uffenkamp Computer Systeme) (sound issues)
F1029001 Pysanki (1990) (The Fourth Dimension)
F1029601 Quark (1993) (Oregan Developments)
F1029701 Quazer (1988) (Impact Software)
F1029801 Quest For Gold
F1048001 Quest For Gold [Learning Curve version] (1992) (Krisalis Software)
F1030101 Ravenskull (1997) (ProAction)
F1030201 Raw Power (1993) (Software 42)
F1030301 RedShift (1990) (Minerva)
F1047501 Rekall (1990) (RTFM Software)
F1065901 Repton 1 (1997) (ProAction)
F1030601 Repton 3 (1988) (Superior Software)
F1047901 Repton 3 Four Game Compilation (1992) (Superior Software)
F1030801 Revelation! (1992) (Krisalis Software)
F1059501 Revelation! [BUZZ version] (1993) (Krisalis Software)
F1030901 Revolver (1995) (Psycore)
F1031001 Rick Dangerous (1995) (The Hitmen Software)
F1031201 Rise in Crime (1988) (Robico Software)
F1031501 Rockfall (1991) (Eterna)
F1031601 Rotor (1989) (Arcana Software)
F1045901 Sally and Wally (1995) (Oregan Developments)
F1031801 Saloon Cars (1991) (The Fourth Dimension)
F1031901 Saloon Cars Deluxe (1992) (The Fourth Dimension)
F1061401 Saloon Cars Deluxe [SA version] (2000) (The Fourth Dimension) (F1061401b script for !Run replacement)
F1032601 Sensible Soccer (1993) (Renegade)
F1032701 Serpents (1993) (Cambridge International Software)
F1032901 Silver Ball (1997) (The Fourth Dimension)
F1043801 SimCity 2000 [A5000 version] (1994) (Krisalis Software)
F1033101 SimCity 2000 [RPC version] (1994) (Krisalis Software)
F1033201 Simon the Sorcerer (1994) (GamesWare)
F1045601 Slappit (1990) (RTFM Software)
F1033401 Small (1993) (Virgo Software)
F1059405 Software 42 Collection: Raw Power (1993) (Eclipse)
F1033801 SpeedBall 2 (1994) (Krisalis Software)
F1033901 Spheres of Chaos (1992) (Matt Black)
F1034101 Spobbleoid (1994) (Cybernation Entertainment Systems)
F1034201 Spobbleoid Fantasy (1994) (Cybernation Entertainment Systems)
F1034301 Sporting Triangles (1990) (CDS Software)
F1034401 SpySnatcher (1992) (TOPOLOGIKA)
F1034701 Starch (1990) (Alien Images)
F1034801 StarTrader (1989) (Gem Electronics)
F1035001 Stranded! (1989) (Robico Software)
F1035101 Stunt Racer 2000 (1993) (The Fourth Dimension)
F1044501 Stunt Racer 2000 [SA version] (1997) (The Fourth Dimension)
F1035601 Super Snail (1998) (The Fourth Dimension)
F1035701 Superior Golf (1990) (Superior Software) (speed issues, click on club to select instead of using MENU/ADJUST)
F1035901 S.W.I.V. (1992) (Krisalis Software)
F1056601 S.W.I.V. [BUZZ version] (1993) (Krisalis Software)
F1036001 Syndicate+ (1998) (R-Comp Interactive)
F1062901 Tactic (1990) (Eterna)
F1036101 Tactic (1996) (Uffenkamp Computer Systeme)
F1036201 Talisman (1989) (Minerva)
F1036401 Technodream (1993) (Superior Software)
F1036601 Terramex (1988) (Grandslam Entertainments)
F1036701 Thundermonk (1989) (Minerva)
F1037001 Top Banana (1988) (Hex)
F1037101 Tower of Babel (1991) (Cygnus Software)
F1037201 Trivial Pursuit (1989) (Domark)
F1037401 Twinworld (1990) (Cygnus Software)
F1037501 UIM (1990) (The Fourth Dimension)
F1037801 Warlocks (1993) (Network 23)
F1038101 White Magic (1989) (The Fourth Dimension)
F1038201 White Magic 2 (1989) (The Fourth Dimension)
F1038601 Wizard Apprentice (1997) (The Datafile)
F1038801 Wolfenstein 3D (1994) (Powerslave Software) (use the native 32bit version instead)
F1038701 WolfPack (1992) (Software 42)
F1038901 Wonderland (1991) (Virgin Mastertronic)
F1039001 Word Up Word Down (1989) (Gem Electronics)
F1039201 World Championship Boxing Manager (1991) (Krisalis Software)
F1039301 World Class Leaderboard (1988) (Krisalis Software)
F1039101 WorldScape [pre-release v0.91] (1990) (Eclipse)
F1065501 WorldScape (1990) (Eclipse)
F1039401 Worra Battle (1989) (Oak Solutions)
F1039601 Xenon 2: Megablast (1993) (Eclipse)
F1039701 X-Fire (1992) (The Fourth Dimension) (Spray sound doesn't work correctly)
F1032001 X-Run (1990) (XFM Software)
F1040101 Zalaga (1996) (Pro-Action)
F1040201 Zarch (1987) (Superior Software)
F1040301 Zelanites - The Onslaught (1991) (MicroPower)
F1003001 Zodiac - Aries: BlowPipe (1994) (GamesWare)
F1003004 Zodiac - Aries: Quizmaster (1994) (GamesWare)
F1003005 Zodiac - Aries: Square Route (1994) (GamesWare)

Changes since 2.70:
  • added a build option to display PC at every IRQ when in debug mode
  • JIT OS_ReadVduVariables / OS_ReadModeVariables removed as no longer required with full GraphicsV driver
  • ChannelHandler / IOC_trigger_device_9 weren't checking if the task was paged in before calling a ChannelHandler running under the JIT
  • Sound Scheduler was corrupting the stack if the task wasn't paged in
  • Sound_Configure wasn't tracking the task ID of the current handler
  • find_MODE was capturing MODE 256
  • removed some debug code that was left in discop
  • Service_ModeExtension handler wasn't notifying the Service_ModeChange handler that a ModeExtension was being processed (fixes *FModeOn in Fervour)
  • JIT 26bit Module entries now allocate/deallocate a transient stack to avoid stack conflict (fixes *FModeOn in Fervour)
  • JIT Wimp_SlotSize wasn't passing R1 (Next slot) through and wasn't rounding the slotsize to the next page boundary (fixes Global Effect)
  • JIT OS_ReadSysInfo 1 was being trapped on IOMD and returning TV
  • JIT SWI passed direct to the OS via OS_CallASWI / OS_CallASWIR12 weren't being passed correctly (fixes Elite)
  • JIT OS_CallASWI / OS_CallASWIR12 were being handled when SWI flag preservation wasn't required. ie on IOMD 26bit
  • _identify_disc in miscop was corrupting R3
  • JIT hv_call_voice_handler_setup (Voice Generator Instatiate / Free) wasn't checking if the handler was paged in before calling it
  • JIT moved local states to the stack for OS_Module, OS_ReadLine, Sound_InstallVoice, Sound_RemoveVoice
  • changed all hardcoded references to the SWI veneer and stack to variable based and removed use of SVC_CPSR
  • JIT increased Appspace from 8MB to 12MB
  • JIT 26bit Module header is now only checked for a messages file when emulating RISC OS 3.6+ (fixes TEK 1608)
  • JIT wasn't word aligning after copying the messages file (fixes tek05 in TEK 1608)
  • JIT BL codelets are now reused
  • JIT codelet allocate now reports if it runs out of codelet memory
  • JIT debug build wasn't cache flushing the addition instruction trace code added to codelets
  • JIT debug build wasn't creating the instruction trace DA in ADFRemapVideoMemory
  • JIT relocated 26bit exit points to just below &3700 and hardware vector entry point to the top of the codelet area
  • GOARM3JIT was trying to terminate the 26bit BASICTrans after it had already shut down the JIT
  • EXSound updated to 4.02 - all SWI changed to X versions
  • TimPlayer 1.26 and the DSymphonyPlayer 1.46 shim trackers added
  • GraphicsV driver was handling multiple palette changes destined for the GPU as single palette changes
  • GraphicsV driver wasn't passing palette changes through to the GPU if the current MODE wasn't being handled by itself
  • OS_FSControl 2 was calling the OS OS_FSControl 4 after loading the file being run, instead of before (fixes Wizard Apprentice)
  • OS_FSControl 2 wasn't reporting an error if the filename length overran the buffer
  • ADFRemapVideoMemory wasn't clearing MEMC_L1PT when shutting down on IOMD
  • ADFRemapVideoMemory wasn't shutting down if the JIT shuts down first
  • JIT report_abort wasn't turning off screen remapping
  • Moved RTFM Joystick check out of the GPU VSync code, so its not called in an IRQ context
  • JIT was increasing the task count when starting, even for tasks it was already handling, causing the JIT to fail to shutdown correctly
  • Blitter forces the CPU speed high whilst blitting and OS_Byte 19 idles the CPU if VSync's are being forced
  • ADFFS Module exit code wasn't resetting the JIT task count, so the JIT may have remained active
  • DOS/Atari discrecs didn't have the correct lowsector, which prevented them from being catalogued by FileCore
  • Atari check in ADFS_MiscOp 0 wasn't returning if it failed to match
  • Atari 360K discrec didn't have the sequenced bit set
  • Filer drag/drop now supports Atari floppy images (FE3)
  • Mount a floppy that couldn't be ID's would result in the root of the HD being opened, instead of reporting the appropriate FileCore error
  • ADFScreenLoad wasn't preserving R12 (fixes Battle Tank)
  • JIT wasn't terminating all tasks when reporting an abort
  • Atari floppy images (FE3) are now opened by ADFFS
  • GraphicsV driver now attempts to reset the desktop when ADFFS is terminated
  • GraphicsV 5 wasn't checking "pointer shape updated" correctly
  • IOC VFLYBK now pulled low by an out of phase 50Hz timer, allowing games to execute code after the frame is blitted (partially fixes original releases of Ballarena and Tactic)
  • Wrong version of ADFFS was being loaded on RISC OS 4.20 thru 4.39
  • JIT 26bit Module * command table entries weren't correct
  • JIT Entering a 26bit Module wasn't clearing down the stack
  • pass_SWI_on no longer corrupts R11
  • JIT if an error occurred while loading a 26bit Module it may have leaked 26bit RMA space
  • JIT low vector Page Zero handler wasn't checking for IRQ1V correctly and was corrupting registers on exit
  • JIT kill_vectors_in_range changed to use OS_CallASWI (fixes CTRL-SHIFT-F12 on IOMD)
  • Service handler was claiming the Channel Handler twice when SoundDMA starts
  • JIT Page Zero softFont generated (fixes Fireball)
  • OS_Byte 19 was incorrectly faking VSync when the blitter was active
  • JIT i_STM_Rn_in_reglist incorrectly reported STM if Rn wasn't the first register. Now only reports the instruction if ^ is used
  • JIT Environment handler weren't being released prior to FSControl_StartApplication and handlers 6 and 11 weren't being release at all - bug introduces in 2.68 (fixes Populous crashing after exit)
  • JIT Environment handler shims now free their codelet when passing the call to the previous claimant (fixes Elite return to desktop)
  • Exit and Error handlers are claimed before OS_FSControl is passed to the OS to allow the JIT to clean up before returning to the desktop
  • JIT CallBack handler wasn't reducing the register dump down to 16 registers (fixes Chequered Flag)
  • JIT CallBack handler wasn't checking if the regdump address was valid before copying it over (fixes Confusion)
  • GOARM3JIT wasn't filling &4000 to &8000 with hypercalls (fixes BlastOn Eterna)
  • Error/Exit handlers installed by OS_FSControl now use an SWI to perform the JIT shutdown process and the handlers themselves are now copied to an RMA block and orphaned when ADFFS is terminated to prevent existing apps from causing a fatal crash on error or exit
  • 26bit Module handler wasn't checking if a Start entry existed when a Module was RMRun
  • Fixed an issue in the JFD imager which was preventing title selection via the drop-down
  • JIT OS_CallASWI and OS_CallASWIR12 weren't passing the SWI back as an SWI instruction to hypervised_SWI
  • OS_Module may not have released the heap claim if a Module is found to be 32bit
  • JIT OS_Module 6 now ensures the minimum size is 32 bytes to match the actual OS_Module 6 (fixes Burn 'Out [SA version])
  • Debug build wasn't removing the instruction trace DA when RMKilled
  • JIT OS_SetEnv might corrupt R3
  • JIT OS_Control was returning the wrong value for R1
  • JIT BASIC26 assembler changed to only sync memory assembler instructions are written too (speeds up Drifter)
  • OS_SynchroniseCodeAreas wasn't validating the passed range
  • ADFPause modified to detect mouse buttons
  • 26bit Module handler was releasing the stub Module before it had got the Title and Start point for *RMRun (fixes Arcendium *NUTHATCH and 65Arthur in Enthar Seven)
  • JIT relocated 26bit exit points from JIT Page Zero to JIT RMA, as 65Host was overwriting them (bug introduced in 2.71l)
  • JIT 26bit exit points moved back to codelet space as Enthar Seven and Forumla Fun were crashing when terminated if the exit points were within the JIT RMA
  • JIT store_machine_state was enabling the VSync event instead of reading the current state
  • pass_SWI_on wasn't correct for RISC OS 3.11 (bug introduced in 2.71w)
  • imageJFD wasn't building the "disc in set" menu or remembering the "first disc in set" value after imaging a disc
  • GOARM3JIT wasn't collapsing the SVC stack before branching into user code
  • ADFGO added to allow code to be called with the correct environment
  • store/restore_machine_state were not preserving the force_vsync value
  • JIT 26bit Modules, every header entry is now checked for validity
  • JIT now reports if it fails to load BASIC26
  • Vector tracking is now done via OS_Claim / OS_Release (fixes The Fourth Dimension titles when DDEUtils is loaded after ADFFS)
(1.2 MiB) Downloaded 559 times

RISC OS 4 users also need to update ADFFSFiler:
(2.88 KiB) Downloaded 24 times

NOTE: On RISC OS 3.5+ use the PackMan distribution to receive automatic updates.

NOTE: You must use "Boot floppy" to run supported games. If you don't, you could end up with a machine that isn't bootable, as some games alter the CMOS. Provided "Boot floppy" is used, ADFFS will prevent games from altering both the CMOS and unplugging modules.
DO NOT try to run a game by launching it's Icon - it will almost certainly damage your machine.
(305.24 KiB) Downloaded 107 times

Re: ADFFS 2.72

Posted: Sat Apr 13, 2019 8:34 pm
by PaulV
When I try to launch this from a fresh download on my StrongARM RISC OS 4.39 RiscPC, it crashes with the following message:
Illegal header in field module
EDIT: The issue appears to be in ADFFSFiler


Re: ADFFS 2.72

Posted: Sun Apr 14, 2019 9:49 am
by JonAbbott
PaulV wrote:
Sat Apr 13, 2019 8:34 pm
When I try to launch this from a fresh download on my StrongARM RISC OS 4.39 RiscPC, it crashes with the following message:
Illegal header in field module
The RO4 service table wasn't terminated correctly in ADFFSFiler, a corrected build is attached to the OP.

Re: ADFFS 2.72

Posted: Sun Apr 14, 2019 10:48 am
by PaulV
Thanks Jon. Working perfectly again :-)


Re: ADFFS 2.72

Posted: Wed May 01, 2019 11:29 pm
by Trapper
Hi Jon,

Just to confirm the settings for RISC OS 4.39 on a RISC PC:

Is the asterix after Alias$RM correct, or a typo?
*UnSet Alias$RM*

*RMUnplug is not recognised on RISC OS 4.x can you confirm if it's the same command as *Unplug?
You must *RMUnplug ZLib from the ROM if you wish to save/image JFD files



Re: ADFFS 2.72

Posted: Thu May 02, 2019 7:37 am
by JonAbbott
Trapper wrote:
Wed May 01, 2019 11:29 pm
Is the asterix after Alias$RM correct, or a typo?
You need the * as there are several aliases that need to be removed.
Trapper wrote:
Wed May 01, 2019 11:29 pm
*RMUnplug is not recognised on RISC OS 4.x can you confirm if it's the same command as *Unplug?
It should read *Unplug

Although I've included some steps above for RISC OS 4.x and 6.x I don't officially support them and conduct no testing on them.

Re: ADFFS 2.72

Posted: Sun Aug 04, 2019 9:46 am
by JonAbbott
JonAbbott wrote:
Sun Apr 14, 2019 9:49 am
The RO4 service table wasn't terminated correctly in ADFFSFiler, a corrected build is attached to the OP.
I've updated the version distributed via !PackMan to include this patch.