26bit Module support

Discuss development specific to the Pi version of ADFFS
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: 26bit Module support

Post by Vanfanel »

Do you know if it would be possible to install the game to HDD (sd actually) and play it from there using ADFFS without using the disk images? I mean, so the game saves to a file on the HDD instead of requesting a savedisk. A savedisk is something dangerous and one can overwrite game disks accidentally...
richw
Posts: 159
Joined: Sat Sep 14, 2013 9:05 pm

Re: 26bit Module support

Post by richw »

From what I remember of the 4D games, they come with a hard disk installer. Can you run that? Possibly with the aid of a custom boot script? Even if it works, you will still need to present disk 1 when you run it.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: 26bit Module support

Post by JonAbbott »

Vanfanel wrote:Do you know if it would be possible to install the game to HDD (sd actually) and play it from there using ADFFS without using the disk images? I mean, so the game saves to a file on the HDD instead of requesting a savedisk. A savedisk is something dangerous and one can overwrite game disks accidentally...
Provided the installer works, run it to install the game to the HD, then:
  1. Copy the disc 1 JFD into the folder
  2. Copy !ADFFS.obey.F1012901 as <install dir>.!Run
  3. Modify it so the first line mounts disc 1, aka ADFMount <Obey$Dir>.The<160>Dungeon<160>(1992)<160>(The<160>Fourth<160>Dimension)<160>F1012901
  4. Remove the Set <Obey$Dir> line
If the installer fails, copy !Dungeon off disc 1 and then copy everything from disc 2/3 into !Dungeon

There's an updated ADFFS and obey.zip on the dev site, which gets Arcendium and Minotaur working. Alerion is almost working, with no sound and a few other issues, you can watch the demo mode okay.

I've fixed a few more Page Zero bugs in Carnage Inc, so it's now playable. There's a few minor issues left to resolve - no music and no text in-game. The text issue occurs on RO3.71 but not on RO5 SA, so it may be memory allocation. I expect there's more Page Zero bugs and I'm not 100% certain on some of the bug fixes so it will need play testing to check it plays correctly. How this game ever worked on an original Arc is beyond me as it would have been overwriting the first 256 bytes in Page Zero and slowly corrupt Page Zero the further you played it.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: 26bit Module support

Post by JonAbbott »

Updated obey.zip on the dev site. As Pandora's Box, Cataclysm and Drop Ship all use the same protection Module as The Dungeon, I've patched them all to legally do what they need to do.

Pandora's Box works, it had the same bug in the Paint Module as Carnage Inc which is now patched. Cataclysm gets to the menu, but crashes when you start a level. Drop Ship hangs immediately. So some more debugging required to get the later two working. They're running on RO3.71 SA, I've not tested on RO5 SA yet, that will be the next test.

EDIT: Both Drop Ship and Cataclysm work on RO5 SA, so I suspect they're failing for the same reason as Inferno. I just need to track down the cause.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: 26bit Module support

Post by Vanfanel »

I installed The Dungeon to HDD with no problems at all, by running the included installer and then following your instructions, Jon!! Thanks!!

Waiting for the current bug to be found to re-test all the games :)
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: 26bit Module support

Post by JonAbbott »

Vanfanel wrote:I installed The Dungeon to HDD with no problems at all, by running the included installer and then following your instructions, Jon!! Thanks!!
Great. Was the speed of the game an issue? I need to fire it up on one of my original Arc's to see just how fast it should be.
Vanfanel wrote:Waiting for the current bug to be found to re-test all the games :)
It's proving somewhat tricky to pin down and in the process I've broken The Dungeon - there's something odd going on with Sound. One minute The Dungeon installs it's Voices okay and the next it fails so when I think I've fixed it, it's broken when I test it a day later.

I also need to track down why Cascade is getting screen corruption, I'm beginning to suspect there's an issue in the Abort handler where a particular instruction isn't being handled correctly. I found a game the other day (which I forgot to take note of at the time :roll:), which worked when run in SVC but got the same screen corruption as Cascade when run as USER - meaning there's almost certainly an issue in the Abort handler. Anyhow...need to fix the aforementioned bug before I start breaking anything else.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: 26bit Module support

Post by JonAbbott »

JonAbbott wrote:I also need to track down why Cascade is getting screen corruption
This appears to be nothing to do with ADFFS, as having just rewritten the game so it's natively 32bit it still gets screen corruption.

It only occurs on RO5 and happens under both emulation and physical, so isn't CPU specific. My first thought was register corruption across an SWI, or a difference in the behaviour of one of the SWI's between RO3/4 and RO5, so I'll have to try preserving all registers around every SWI and see if there's any difference.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: 26bit Module support

Post by Vanfanel »

Speed in The Dungeon is good but there's something strange: sometimes it starts and runs at about 12 FPS all the time which I think is the intended speed, and other times it starts and runs at half those frames per second all the time.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: 26bit Module support

Post by JonAbbott »

JonAbbott wrote:
JonAbbott wrote:I also need to track down why Cascade is getting screen corruption
This appears to be nothing to do with ADFFS, as having just rewritten the game so it's natively 32bit it still gets screen corruption.

It only occurs on RO5 and happens under both emulation and physical, so isn't CPU specific. My first thought was register corruption across an SWI, or a difference in the behaviour of one of the SWI's between RO3/4 and RO5, so I'll have to try preserving all registers around every SWI and see if there's any difference.
It appears the game relies on a bug in RISCOS versions prior to RO5, which I've now partially implemented in ADFFS! (see this post on The Icon Bar)

Updated Modules and obey.zip which fix Cascade and get Drop Ship working are on the dev site.
Vanfanel wrote:Speed in The Dungeon is good but there's something strange: sometimes it starts and runs at about 12 FPS all the time which I think is the intended speed, and other times it starts and runs at half those frames per second all the time.
At a guess, the game is trying to detect the refresh rate and getting it wrong. I've seen a few games that do that, Lotus Turbo Challenge 2 springs to mind as does Overload (Paradise)

When it gets the speed wrong, can you correct it by pressing CTRL-ALT-PgUp twice to force it to 50FPS, four times for 25FPS or eight for 12.5FPS? If so, I'll force it in the boot script. 12.5 FPS seems really slow to me and virtually unplayable! 50FPS is nice and smooth, 25FPS is probably as slow as you'd want to go.
Vanfanel
Posts: 576
Joined: Mon Sep 16, 2013 12:01 am

Re: 26bit Module support

Post by Vanfanel »

CTRL-ALT-PgUp doesn't make anything really. But if I do press 3 on the numeric keypad, there's a game message that says "Enhanced framerate selected. Only suitable for ARM3 processors." And then, even if the game has booted in "slow mode" (around 6 FPS), it gets to 25FPS.
If it has booted in "normal mode" (around 12FPS) it does 25FPS too.
Post Reply