To WIMP or not to WIMP?

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

To WIMP or not to WIMP?

Post by JonAbbott »

Currently "Boot floppy" will quit the WIMP, which in turn triggers ADFFS to perform a simulated Shift-Reset.

This wasn't the best design decision looking back on it, as most games will run under the WIMP, it's only a few games that mess about with the memory map directly that are problematic. The biggest issue however (and the reason I went this route), is due to most game loader scripts failing when they try to set slot sizes.

Currently for games that have to run under the WIMP, the boot script re-loads the WIMP and asks it to run the game. So for example, BlowPipe will need to change from "Run <Obey$Dir>!Run" to "Desktop <Obey$Dir>" to work around its problems.

So...the question is, do we change this behaviour and default to staying in the Desktop and let the boot script close down the WIMP if required. I'm not entirely sure how to easily implement this though, as the script will need to resume somehow, once the WIMP is shut down.

There are currently 92 games with boot scripts, thse will all need testing and modifying should we decide to change the behaviour.
steve3000
Posts: 198
Joined: Thu May 02, 2013 9:25 pm

Re: To WIMP or not to WIMP?

Post by steve3000 »

My vote is to change - to default WIMP first, with quitting the desktop only available as an optional last resort (and should include a pop-up window with 'Are You Sure?' etc.).

On older Acorn-made machines this isn't much of an issue as you can't have much running on the desktop on a 1 or 2mb machine and still expect to load a game - also users of these machines are now mainly hobbyists/collectors - so users will expect to hard-reset or quit the desktop if needed.

But with newer kit like the Pi attracting new users to Risc OS and having 256Mb+ memory, there is real scope for people actually running quite a lot on their desktop when they decide to take a break and play a game... So having to quit the desktop to run a game just feels to me like a real step backwards.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: To WIMP or not to WIMP?

Post by JonAbbott »

There's two ways to implement this:

1. Implement a full Filecore file system for boot scripts (ironically re-implementing ADFFS v1), where ADFFS::0.$ contains everything related to the boot script. Anything that needs to happen after the WIMP is shutdown can go in a separate "PreWIMP" script.

The main advantage to this route is the flexibility it adds, allowing us to put more than just one Obey file in the boot sequence.


2. Completely do away with Boot scripts and use a delta write file, effectively re-writing the original floppy boot script.

Although this method is the easiest, as it needs to be implemented anyhow, it also has several major disadvantages: We'd be restricted in how much will fit on the original floppy, the delta file will have to accompany the JFD, overwriting protection sectors becomes an issue.


I feel (1) is probably the route to go and leave (2) for user/OEM changes, such as save games, high scores, CPU patching etc.
Post Reply