log in | register | forums
Show:
Go:
Forums
Username:

Password:

User accounts
Register new account
Forgot password
Forum stats
List of members
Search the forums

Advanced search
Recent discussions
- Elsear brings super-fast Networking to Risc PC/A7000/A7000+ (News:)
- Latest hardware upgrade from RISCOSbits (News:)
- Accessing old floppy disks (Gen:1)
- RISCOSbits releases a new laptop solution (News:4)
- Announcing the TIB 2024 Advent Calendar (News:2)
- RISC OS London Show Report 2024 (News:1)
- Code GCC produces that makes you cry #12684 (Prog:39)
- Rougol November 2024 meeting on monday (News:)
- Drag'n'Drop 14i1 edition reviewed (News:)
- WROCC November 2024 talk o...ay - Andrew Rawnsley (ROD) (News:2)
Latest postings RSS Feeds
RSS 2.0 | 1.0 | 0.9
Atom 0.3
Misc RDF | CDF
 
View on Mastodon
@www.iconbar.com@rss-parrot.net
Site Search
 
Article archives
The Icon Bar: General: ADF floppy disc image reader
 
  ADF floppy disc image reader
  This is a long thread. Click here to view the threaded list.
 
Jon Abbott Message #119561, posted by sirbod at 18:32, 9/2/2012
Member
Posts: 563
Having fired up my Arc last week ... the first time in 22 years! I soon realised that there was no software available to mount ADF floppy images, without writing them to floppy, or modifying the files first.

So..in frustration, I wrote a FileCore file system to open them.

Download ADFFS here

Contact me: jon at jaspp dot org dot uk

Help wanted...if you'd like to get involved in this software preservation project, the following tasks have yet to be done. If you fancy picking up a task, let me know:

1. (JA - DONE) MemAlloc module needs re-writing so it's 32-bit safe

2. (JA - DONE) *RMFaster needs recoding to fail silently when a module is already in RAM

3. (JA - DONE) Define a new standard for storing disc images, with an expandable directory structure containing the following:

ART\BOX\JPG files of box scans (optional)
ART\COVER\PNG file of cover art (optional), max 256x256
ART\DISCS\JPG files of floppy disc scans
ART\MARKET\JPG files of marketing material (optional)
CHEATS\Cheat files - format to be decided (optional)
DISCS\Disc images, Fxxxxx01.jfd being disc 1
ICON\containing a !Sprites RISC OS file and a Windows Icon file
MATERIAL\Documents that come with the game in PDF or JPG. The manual, competition cards, key map etc.
PATCHES\Patches for modern kit/RISC OS - format to be decided (optional)
PROTECTION\PNG, ASCII files containing code wheels or protection codes (optional)
SNAP\PNG files containing screen shots. snap1.png being the game menu screen, snap2.png being in-play and snap3+ relevant additional screenshots
SOURCE\changelog - ASCII file containing the disc image version changes (optional)
SOURCE\desc - ASCII file containing the game description (optional)
SOURCE\history - ASCII file containing the game history (optional)
SOURCE\instruct - ASCII file containing the game instructions (optional)
SOURCE\version - ASCII file containing the game version (optional)

These files will be wrapped into one file and deflated with ZLib. The wrapper file could be an IFF style or ZIP for flexibility.

4. (JA - DONE) A front-end is required for disc capture, it will be passed a list of sectors by ADFFS, containing the following information: 1st 4 bytes of the Disc Sig (Log2secsize, secspertrack, heads, density), no. of bytes read from sector and any error returned by ADFS. It should then read the Disc sig from the disc and attempt to fill in the gaps. The user should be able to modify this list, before the app finally uses it to read the disc sector by sector and builds a file based on (3) above. Where CRC errors occur, this should be noted in the resulting disc image sector header and the data returned stored in the sector.

A variety of disc protection methods are known and documented, where they are detected the app can use a template as the starting point - provided the sectors passed to it match what's in the template.

5. (JA - DONE) Debugging and coming up with patches for games so they work on newer kit: Drop Ship, Gribbly, The Dungeon, Gods, Magic Pockets, Sensible Soccer, Zarch. A lot of this work has already been done in !GameOn, !GameOn2 and StrongGuard, if the source is available and agreement to use reached.

6. (JA - DONE) Collation of screen shots (native res PNG), cover art (300 DPI JPG), instructions etc for (3) / (7) and agreement to use where appropriate.

7. (JA - DONE) A maintained list of games, the Acorn Gaming Database is a very good starting point. As is, Acorn Archimedes Games

8. (JA - DONE) General !Boot / !Run patching instructions / scripts for all existing APD / ADF's that require it

9. (JA - DONE) A conversion utility for all existing ADF / APD (and possibly other known formats: IPF, FDI) into the standard defined in (3). 1772 emulation is available to assist with this.

10. A front-end along the lines of MAMEUI

11. (JA - DONE) For (5) / (7) testing of every game will need to be performed on all hardware variations and OS versions. This is a massive task and will need to be performed with a mixture of emulation and physical kit.


Known protection methods:
0 - No protection
1 - Protection wheel (eg The Legend of the Lost Temple)
2 - General unformatted track (eg The Last Ninja)
3 - General sector CRC error (eg Air Supremacy)
4 - General read track (eg Slappit)
5 - Oregan Developments (eg Arcturus)
6 - SoftLock (eg Gods)
7 - Daniel Simms X Lock2 (eg Gribbly)
8 - DSPS (eg Xenon II)
9 - Daniel Simms X Lock (eg Populous)
10 - Peter Gillett ZFiler module 1.0 (eg Chock Away Extra Missions)
11 - Variation on X Lock (9) (eg Wolfenstein)
12 - R.A. North (eg Zarch)
13 - Variation on Gordon J.Key (18) (The Dungeon)
14 - Gordian Lock (eg Fire & Ice)
15 - Protector (eg Pandora's Box)
16 - DM Protection Systems (eg Darkwood)
17 - Martin Piper Protection_Module 3.12 (eg Formula Two Thousand)
18 - Gordon J. Key (eg Drop Ship)
19 - Variation on Protector (15) (eg Cataclysm)


Potential game fixes for RISC OS 3.x

NOTE: Complete !Run replacement scripts are available in the !ADFFS.obey ZIP archive.

Air Supremacy
!Run, add "ADFForceVSync 2" as the 1st line

Alerion (original)
!Run, replace "Run <Alerion$Dir>.!RunImage" with:
Set Alias$L. LOAD
RMAFree 200
ScreenSize 160
RMEnsure BANG RMLoad <Alerion$Dir>.SBANG
RMEnsure MORT RMLoad <Alerion$Dir>.SMORT
RMEnsure WAVE RMLoad <Alerion$Dir>.SWAVE
RMEnsure HOME RMLoad <Alerion$Dir>.SHOME
BASIC <Alerion$Dir>.Menu

Alerion (March 1994 version)
!Run, add "Set Alias$L. LOAD" as the 1st line

Apocalypse
!Run, add "Dir ADFS::0.$" as the 1st line

Arcade 3
1. From an F12 prompt: ADFProtectCMOS
2. Load via the ADFFS Filer "Boot floppy" option

Arcendium
Replace !Boot with the following obey file:
ADFS
DIR ADFS::0.$
RMAFree 128
SpriteFree 128
BASIC Boot2

Battle Chess
!Run2, replace "<Battle$Dir>.batmem" with:
ADFS
Dir ADFS::0.$
ScreenSize 80

Blood Sport
This game doesn't work with newer versions of FPEmulator (past 2.87), so won't work past RO3.1

Burn 'Out (RO4)
!Run, add the following as the first line:
ADFHideHourglass

Bug Hunter / Bug Hunter in Space
!Run, add the following as the 1st line:
Echo <22><13>

Cataclysm
!Run, replace "RUN <Obey$Dir>.!SETCODE" with "ScreenSize 160"

Chocks Away / Chocks Away Compendium
1. &.!Boot, add the following before the 1st line:
Set Alias$Dismount ADFDoNothing 0
Set Alias$RMClear ADFDoNothing 0
Set Alias$Format ADFFormat %*1
2. Boot via "Boot floppy" in the Filer

Chuck Rock
!Chuck.!Run, add "DIR ADFS::0.$" as the 1st line, and run via Icon

Conqueror
1. Shift-F12 to shut down the desktop
2. Shift-F12 to go to command line
3. ADFForceVSync 4
4. ADFS
5. Dir ADFS::0.$
6. ADFCacheOff 1000 (StrongARM / Pi)
7. Conqueror

COPS
!Run, add "Dir ADFS::0.$" as the 1st line

Cyber Ape (RO3.5 to 4.x)
After loading go to Options and turn of Copper Bars

Cycloids
!Run, add "Dir ADFS::0.$" as the 1st line

DarkWood
1. At an F12 prompt:
DIR ADFS::0.$.!DarkWood
!RunGame

Deeva
1. From an F12 prompt: DIR ADFS::0.$
2. Perform a Shift-Reset
NOTE: Do not run !DEEVA - it will change your CMOS settings

DragonBall
!Run, add "Set Alias$L. LOAD<32>" as the 1st line

Drop Ship
1. !Run2, add "Set Alias$L. LOAD" as the 1st line
2. Replace "RUN <Drop1$Dir>.SetUp" with the following:
SpriteFree 100
ScreenSize 240

The Dungeon
!Run, comment out the line "Run <Obey$Dir>.!Setup"

E-Type
!Run, add "Set Alias$L. LOAD" as the 1st line

E-Type Track Designer
!Run, add the following as the first lines:
Set Alias$L. LOAD
Dir ADFS::0.$

Emotions
1. From an F12 prompt "Set Alias$Dismount ADFDoNothing 0"
2. Install via the installer
3. If you receive the error "Path variable had multiple entries" follow steps 3.1 and 3.2
3.1. From an F12 prompt enter "Set Choices$Path <Choices$Dir>"
3.2. Run the installer again
4. <install dir>.Emotions.!Emotions.!Run, add "ADFForceVSync 1" as the first line to stop video tearing.

Enter The Realm
!RUN, replace "RMCLEAR" with "Set Alias$L. LOAD"

Fire & Ice
!Run, add the following as the first lines:
ADFHideHourglass
ADFEmulateFDC 710

Flying High
1. From an F12 prompt "Set Alias$Dismount ADFDoNothing 0"
2. Install via the installer
3. If you receive the error "Path variable had multiple entries" follow steps 3.1, 3.2 and 3.3
3.1. From an F12 prompt enter "Set Choices$Path <Choices$Dir>"
3.2. Run the installer again
3.3. Edit <install dir>.EuroBlastr.!EuroBlast.!Run and add "Set Choices$Path <Choices$Dir>" as the 1st line
3.4. Edit <install dir>.Joust.!Joust.!Run and add "Set Choices$Path <Choices$Dir>" as the 1st line

Formula Two Thousand (RO3.5 > RO3.7, some RO4 machines)
!Run, add the following as the first lines:
ADFRemapVideoMemory 13 160
ADFHideHourglass

Freddy's Folly
1. Load $.Freddy.!Run and change line 80 from:
80 IFFNa_osver<1:PROCa_chain
to:
80 PROCa_chain
2. Replace !Boot with the following Obey file:
ADFS
DIR ADFS::0.$
Unset Alias$Logon
ScreenSize 160
SpriteFree 500
ADFForceVsync 4
BASIC Freddy.!Run
3. Run !Boot

The Guild of Thieves
!Run, add "RMKILL SharedCLibrary" as the 1st line

Holed Out!!
1. !Boot, replace CHAIN"DRIVER" with:
*RMAFree 200
*ScreenSize 240
*SpriteFree 240
*Set Alias$L. LOA.
*Dir ADFS::0.$
CHAIN"HOLEDOUT2"
2. Load via "Boot floppy" menu option

Holed Out!! Extra Courses 1 / 2
1. !Boot, add "Set Alias$L. LOAD" as the 1st line
2. Load via "Boot floppy" menu option

HoverBod
Replace !Boot with the following:
ADFS
DIR ADFS::0.$
|The two lines below need a SPACE after LOAD
Set Alias$L. LOAD
Set Alias$LO. LOAD
|
|Uncomment the next line for RO3.5>3.7
|ADFRemapVideoMemory 13 160
ScreenSize 160
BASIC BJS1
2. Load via "Boot floppy" menu option

Ibix The Viking
1. Load $.!Boot and remove the following lines
70*rmclear
140PROCrecon
2. Run using the following Obey file:
ADFS
DIR ADFS::0.$
Set Alias$cha. ChannelVoic.
Set Alias$mou. ADFDoNothing
Set Alias$poi. Pointer
Set Alias$sch. SChoose
Set Alias$Alphabet ADFDoNothing 0
ScreenSize 80
SpriteFree 96
Basic ADFS::0.$.!Boot

Jinxter
!Run, add "RMKILL SharedCLibrary" as the 1st line

K.V.
1. !Run, add "Unset Alias$Logon" as the 1st line

Kaptain Konflict
1. Replace &.!BOOT with the following Obey file:
ADFS
DIR ADFS::0.$.!KONFLIKT
ScreenSize 160
SpriteFree 32
WimpSlot 720K
BASIC NEWVERT
2. Load via "Boot floppy" menu option

The Last Ninja
!Run, comment out the line "RUN <Last$Dir>.SetUp"

The Legend of the Lost Temple
!RUN, replace "RUN <LT1$Dir>.SetUp" with "Set Alias$L. LOAD"

Master Break
!Run, add "DIR ADFS::0.$" as the 1st line

Minotaur
!BOOT, add "*DIR ADFS::0.$" as the 1st line

Missile Control
1. Load $.!Boot and change the following line:
100IFFNa_osver<1:PROCa_chain
to:
100PROCa_chain
2. Run using the following Obey file:
ADFS
DIR ADFS::0.$
ScreenSize 160
FontFree 64
Basic ADFS::0.$.!Boot

Moondash
!Run, add the following as the 1st lines:
Echo <22><13>
ADFForceVSync 2

Nevryon (RO3.5 > RO3.7 only)
!Run, add "ADFRemapVideoMemory 13 160" as the first line

Orion
From an F12 prompt:
ADFS
DIR ADFS::0.$.Orion
SpriteFree 200
BASIC Orion_BAS

Pac-mania
From an F12 prompt:
ADFS
DIR ADFS::0.$
PACMANIA

Pandora's Box
1. !Run, comment out the line "*RMclear"
2. Replace "*<Merlin$Dir>.!Setup" with:
SpriteFree 64
ScreenSize 240

Paradroid 2000
!Run, replace "RUN <Para$Dir>.!SetUp" with "ScreenSize 80"

Pesky Muskrats
!Run, add "ADFS" as the 1st line

Poizone
!RUN3, comment out the two "rmClear" lines

PowerBand
!Run, add "Set Alias$L. LOAD" as the 1st line

The Punter's Predictor
!Run, comment out the "RMCLEAR" line

Quazer
!Run, replace "ScreenSize 320K" with "ScreenSize 160"

Repton 3
Replace !BOOT with the following Obey file:
ADFS
DIR ADFS::0.$
ADFForceVSync 4
ScreenSize 80
RMAFree 80
RMLoad RM_Tunes
TUNE1
RUN REPTON3

Rotor (RO3.1x only)
Run using the following Obey file:
ADFS
Dir ADFS::0.$
ScreenSize 160
ADFProtectCMOS
LOAD !BOOT
MEMORYA 9344 3A000003
GO 8024

Sensible Soccer
1. From an F12 prompt: ADFHideHourglass
2. Load normally via icon

Saloon Cars
!Run, comment out the "RMCLEAR" line

Sensible Soccer
1. From an F12 prompt: ADFHideHourglass
2. Load normally via icon

Serpents
!Run, add "ADFCacheOff 500" as the 1st line (SA/Pi)

Slappit (RO3.5 > RO3.7 only)
!Run, add "ADFRemapVideoMemory 13 160" as the first line

Small
!Run, add "Dir ADFS::0.$" as the 1st line

Square Root
1. Mount the floppy
2. At an F12 prompt "RUN ADFS::0.$.!Route.!Run"

Starch
From an F12 prompt:
DIR ADFS::0.$
LOAD !Starch.!Starch 8000
GO 8000

StarTrader
Replace !Boot with the following Obey file:
RMAFree 200
SpriteFree 32
ADFS
Dir ADFS::0.$
BASIC Library.StarTrader

Superior Golf
Load via "Boot floppy" menu option

Talisman
1. !Run, add "Unset Alias$Logon" as the 1st line, if that doesn't work use step 2 instead
2. !Talisman.Talisman, change the following lines from "L." to "LOAD ":
70*L.objcode FB90
80*L.Graphics 119E0
90*L.CHARSET
320*L.GameData 56294
480OSCLI("L.font8 "+Str$~sfont)

Technodream
1. !Run, add "Set Alias$L. LOAD" as the 1st line
2. &.!Techdream.Loader.RUNNER, change line 351 from "TIME=0" to "TIME=50" (only required for the ADF version)

Terramex
From an F12 prompt:
ADFS
DIR ADFS::0.$
TERRACODE

Thundermonk
!Run, add "Set Alias$LO. LOAD<32>" as the 1st line

Trivial Pursuit
!RUN, remove "ERROR <memerror>" from the following lines:
SYSTEMSIZE 24K ERROR <memerror>
SCREENSIZE 160K ERROR <memerror>
FONTSIZE 40K ERROR <memerror>
SPRITESIZE 207K ERROR <memerror>

White Magic / White Magic 2
1. From an F12 prompt: DIR ADFS::0.$
ScreenSize 80
RMAFree 520
BASIC -chain LOADER

Wonderland
!Run, replace "Wonder1" with "WIN" (RO3.1 only)

Word Up Word Down
Replace !Boot with the following Obey file:
ScreenSize 160
RMAFree 200
ADFS
Dir ADFS::0.$
URD ADFS::0.$
BASIC Library.WordUpDown

World Class Leaderboard
!Run, comment or increase the value of "screensize 80K ..."

X-Fire
!Run, add the following as the 1st line:
Echo <22><13>

Zarch (RO3.5 > RO3.7 only)
1. Shift-F12 to shut down the desktop
2. Shift-F12 to go to command line
3. ADFRemapVideoMemory 13 160
4. ADFForceVSync 4
5. ADFS
6. Dir ADFS::0.$
7. ADFCacheOff 1000 (StrongARM / Pi)
8. !BOOT

Zelanites
1. !Run, add "ScreenSize 224" at the start
2. Replace "Run <Zelanites$Dir>.!RunImage" with "Filer_Run <Zelanites$Dir>.!ZZ"


[Edited by sirbod at 08:40, 9/10/2013]

[Edited by sirbod at 07:40, 29/3/2020]
  ^[ Log in to reply ]
 
Andrew Rawnsley Message #119562, posted by arawnsley at 18:47, 9/2/2012, in reply to message #119561
R-Comp chap
Posts: 600
Maybe get in touch with www.riscos.info?

Or pop it on your own site if you have one, and post about it to comp.sys.acorn.announce.

Incidentally, if you have the skills to just knock up a filecore filing system, the community would *really* benefit from your abilities. Would you be interested in getting involved? Might be worth checking out http://www.riscosopen.org/
  ^[ Log in to reply ]
 
Trevor Johnson Message #119563, posted by trevj at 20:28, 9/2/2012, in reply to message #119562
Member
Posts: 660
Maybe get in touch with www.riscos.info?
You'll have to give the licensing some thought if you want to host it there.
  ^[ Log in to reply ]
 
Dominic Holton Message #119564, posted by holtond at 01:14, 10/2/2012, in reply to message #119561
Member
Posts: 1
Sounds similar to !FCFS... Anyway I have some space on my website if you're looking for somewhere to post it.

Let me know if you're interested.
  ^[ Log in to reply ]
 
Jason Togneri Message #119565, posted by filecore at 06:40, 10/2/2012, in reply to message #119561

Posts: 3868
I wrote a FileCore file system to open them.
Sounds awesome.

My question is, where's the best place to post it as I'm sure many of you will find it useful. Is there an FTP or website where apps can be posted?
The RO scene is currently kind of a mess, but I'm happy to host currently hosting it on the Acorn/RISC OS section of my own site if you like. Sounds like something useful that should be available to all smile

[Edited by filecore at 16:01, 10/2/2012]

[Edited by filecore at 18:05, 12/2/2012]
  ^[ Log in to reply ]
 
Jon Abbott Message #119566, posted by sirbod at 11:34, 10/2/2012, in reply to message #119564
Member
Posts: 563
Wow, wasn't expecting so many responses so quickly! The scene isn't as dead as I thought.

Jason / Dominic - how get I send the ZIP to you? It's not quite at v1.0, so there's still some development to do, expect updates over the coming weeks; as and when I get time.

Answering the points above:

It's similar to !FCFS, however its aim is slightly different:

1. It's read / write, so ADF's can be used as normal floppies - no need to copy to a HD first. By default changes aren't written back, but you can flush them back or save as another ADF file.

2. The ADF's remain native, no need to attach 256 bytes to the end!

3. It's floppy images only, no HD's and it totally RAM based.

4. It's not for capturing ADF files, only mounting and using them.

It's almost complete, bar a desktop filer - which isn't playing ball at the minute. It currently handles D/E/F format ADF's, although I've obviously only tested it on the ones I have, which number around 120, so I expect a few bugs.

Due to lack of documentation, I've had to take some guesses...such as where the disc sig appears on F format floppies. I've also been unable to find any documentation on the APD file structure, so they are currently unsupported. I would like to add this as there are many protected games that don't work as ADF.


I should probably introduce myself at this point...Back in 1987-1990 I was heavily involved in programming on the Archimedes, including writing demos, drivers for podules, ArmSI, SoundSynth, Dungeon Quest, Arcanoid, ModeExt to name a few.

Anyhow, I moved onto PC's in 1989 and it was only when my current PC died over Christmas that I dragged the RiscPC out; which I'd collected from a school over 10 years ago and not touched since.

Having replaced the HD with a SecureSD, replaced the leaking battery and increased the RAM etc, I thought I'd copy all my floppies onto it before they became useless and ended up writing a FileCore last week to use them.
  ^[ Log in to reply ]
 
Jason Togneri Message #119567, posted by filecore at 14:19, 10/2/2012, in reply to message #119566

Posts: 3868
Well I myself have been involved mostly as a user in RO from about 1990 until I switched to XP in 2003, I still keep my Kinetic RPC up and running sometimes but never really progressed beyond RO 4.03. The disputes and fragmentation that followed, and finally the rabid nostalgic fanboyism, dented my ardour and made me quite cynical about many RO users. The new blood from the enthusiastic Beagleboarders is quite refreshing, if a different form of zealotry.

There are quite a lot of preservation projects going around for old RO software, some of which I've been peripherally involved with (and received quite a flaming on the boards for), but I do believe that we should try and save the old stuff without requiring the poor end users to remortgage their house and sell their firstborn for the questional privelege of acquiring (sometimes quite buggy or beta-level) 10-15 year old software.

Jason / Dominic - how get I send the ZIP to you?
Email it to me! jason + at + filecore + dot + net, and I'll stick it up next to my other Acorn stuff.
  ^[ Log in to reply ]
 
Jason Togneri Message #119568, posted by filecore at 15:59, 10/2/2012, in reply to message #119567

Posts: 3868
Holding page and copy of the file available at http://www.filecore.net/riscos/public/adffs updated link: http://adffs.filecore.net

More detailed info and a better webpage (and, hopefully, more versions of the app itself) to come shortly!

[Edited by filecore at 18:06, 12/2/2012]
  ^[ Log in to reply ]
 
David Holden Message #119569, posted by apdl at 16:54, 10/2/2012, in reply to message #119568
Member
Posts: 138
Holding page and copy of the file available at http://www.filecore.net/riscos/public/adffs
Which would appear to be a corrupt zip file.
  ^[ Log in to reply ]
 
Jason Togneri Message #119570, posted by filecore at 19:35, 10/2/2012, in reply to message #119569

Posts: 3868
Which would appear to be a corrupt zip file.
Perhaps I deliberately corrupted it, or filled it with viruses. Probably it just didn't upload well. I'll remove it and put a fresh copy up now (adffs07a.zip). I have not had time yet to test it on RISC OS, so if it's a problem with the original, you need to quiz Jon about it.

[Edited by filecore at 18:07, 12/2/2012]
  ^[ Log in to reply ]
 
Jason Togneri Message #119571, posted by filecore at 21:42, 10/2/2012, in reply to message #119570

Posts: 3868
Jon - I emailed you back but got no response so far, I do noticed that the reply-to address in your email is spam@yourdomain.ext so please let me know somehow that you got my messages and they weren't just eaten by some spam filter smile
  ^[ Log in to reply ]
 
Jon Abbott Message #119572, posted by sirbod at 21:57, 10/2/2012, in reply to message #119571
Member
Posts: 563
Sorry folk, we'll have it available soon.
  ^[ Log in to reply ]
 
Trevor Johnson Message #119573, posted by trevj at 05:35, 11/2/2012, in reply to message #119561
Member
Posts: 660
Does ArcEm accept ADFs? If so, then there may be a few people longing for an Android port of that, so the old demos can reach a wider audience. (Apparently the port of UAE4All was largely done over a weekend.)
  ^[ Log in to reply ]
 
Jon Abbott Message #119574, posted by sirbod at 09:07, 11/2/2012, in reply to message #119573
Member
Posts: 563
ArcEm v1.0 states "Support for .adf floppy disc images"

It would certainly be ironic, having ARM SoC based phones emulating their distant relatives.
  ^[ Log in to reply ]
 
Jon Abbott Message #119575, posted by sirbod at 23:23, 11/2/2012, in reply to message #119561
Member
Posts: 563
Thanks to Jason, you may now download from:

http://adffs.filecore.net
  ^[ Log in to reply ]
 
Jason Togneri Message #119576, posted by filecore at 09:12, 12/2/2012, in reply to message #119575

Posts: 3868
Thanks to Jason, you may now download from:

http://adffs.filecore.net
Reason being, Jon now has direct FTP access to that subdomain and can upload and update things himself, so you'll get the new versions directly. It's better than the previous long-winded process, and also a more direct channel helps avoid something getting corrupted or broken during various emails and uploads smile

[Edited by filecore at 18:04, 12/2/2012]
  ^[ Log in to reply ]
 
Jason Togneri Message #119577, posted by filecore at 18:21, 12/2/2012, in reply to message #119576

Posts: 3868
Jon

Some feedback:

1. Trying to open your archive with ArcFS2 results in "Can't handle this archive error when reading ADFS::HardDisc4.$.adffs07".

2. Trying to open your archive with SparkFS, however, works.

3. Trying to run the resulting application results in "File 'ADFS::HardDisc4.$.adffs07.!Run' not found".

4. Running the !Boot directly probably works (or at least, doesn't throw back an error), but due to having no ADF images immediately to hand, I couldn't test it big smile

Hope this helps.
  ^[ Log in to reply ]
 
Jon Abbott Message #119578, posted by sirbod at 19:43, 12/2/2012, in reply to message #119577
Member
Posts: 563
Points in order:

1. I've also noticed the differences in the archivers causing issues with ZIP files. It's a bit hit and miss, perhaps I should ZIP in 7-Zip on the PC, obviously you lose the file type attributes that way though.

3. I didn't include a !Run, I'll correct that

4. You shouldn't need to manually run !Boot, it should run automatically when the filer sees it. Well, it does on mine at any rate.

I would appreciate if people could test on their own ADF files, particularity floppies over 800kb as I'm not convinced my type detection for F format is 100%.

I'm working on the Filer currently, then I'll look at APD support. IPF is an option, but unlikely considering the closed nature of SPS. Not to mention the complete lack of any IPF files or the ability to create them in the first place.
  ^[ Log in to reply ]
 
Martin Bazley Message #119579, posted by swirlythingy at 00:44, 13/2/2012, in reply to message #119578

Posts: 460
Working rather excellently for me - thank you! This is exactly the utility I've wanted to exist for ages.
1. I've also noticed the differences in the archivers causing issues with ZIP files. It's a bit hit and miss, perhaps I should ZIP in 7-Zip on the PC, obviously you lose the file type attributes that way though.
<plug>Have you tried using Infozip?</plug>
  ^[ Log in to reply ]
 
Jon Abbott Message #119580, posted by sirbod at 19:36, 13/2/2012, in reply to message #119561
Member
Posts: 563
Version 0.81 now up on the site, with a basic Filer.

!Boot only loads ADFFS, launch the app to load ADFFS Filer - or modify !Boot.
  ^[ Log in to reply ]
 
Michael Drake Message #119581, posted by tlsa at 22:16, 13/2/2012, in reply to message #119580

Posts: 1097
This sounds really useful. smile

I've just tried it on an Iyonix, but version 0.81 doesn't seem to be 32-bit compatible.
  ^[ Log in to reply ]
 
Jon Abbott Message #119582, posted by sirbod at 23:26, 13/2/2012, in reply to message #119581
Member
Posts: 563
As far as I'm aware, the code is 32-bit compatible. I coded it from scratch to work on 32-bit.

Q's:
1. Does the ADFFS module load and stay resident?
1.1. Does *ADFMount <file> work?
1.2. Does *ADF select the file system?
1.3. Does *. return a catalogue?
1.4. Does *ADFOpen <file> open a filer window?

2. Does the ADFFSFiler module load and stay resident?
2.1 Does the ADFFS icon appear in the filer area?

3. What OS version are you running?

4. What version of ARM CPU do you have?

5. Do you get any errors reported?

I'll try to emulate it, to repro.
  ^[ Log in to reply ]
 
Paul Vernon Message #119583, posted by PaulV at 23:58, 13/2/2012, in reply to message #119582
Member
Posts: 135
Wow, nice work... Just tried it on my Arc A410/1 and A5000. Works a treat, now I need to dig out the A3000 and install it on there... big grin

Paul
  ^[ Log in to reply ]
 
Michael Drake Message #119584, posted by tlsa at 16:05, 14/2/2012, in reply to message #119582

Posts: 1097
A's:
1. No.
1.1. No.
1.2. No.
1.3. No.
1.4. No.

2. No.
2.1. No. (Nothing on the iconbar, if that's where you mean.)

3. RISC OS 5.16

4. XScale (Iyonix)

5. Yes:

"Application may have gone wrong. Click Continue to try to resume or Quit to stop application." Click "Describe" -> "Module 'ADFFS' is not 32-bit compatible."

Perhaps you could reproduce it with RISC OS 5 IOMD version and RPCEmu.
  ^[ Log in to reply ]
 
Jon Abbott Message #119585, posted by sirbod at 17:19, 14/2/2012, in reply to message #119584
Member
Posts: 563
Version 0.82 up, which fixes the 32-bit compatibility.

Thanks Michael, for the bug report.
  ^[ Log in to reply ]
 
Michael Drake Message #119587, posted by tlsa at 21:32, 14/2/2012, in reply to message #119585

Posts: 1097
That's working fine now, thanks! It's a good companion to ArcEm, because now I can see what what's going to be on the floppy disc before I run the emulator. (ArcEm doesn't allow changing disc while its running.)
  ^[ Log in to reply ]
 
Patric Aristide Message #119588, posted by Tin Hat at 23:51, 14/2/2012, in reply to message #119585
Member
Posts: 56
That's fantastic Jon! Works fine on this Beagleboard (ARMini OS2) and will come in really handy with my A4000. Finally there's a point in using ADF images instead of simply zipping the floppy content. My Arc has two solid state 512MB drives and having to write everything to floppy first seemed a bit cumbersome.

thanks!
  ^[ Log in to reply ]
 
Andrew Rawnsley Message #119592, posted by arawnsley at 17:26, 15/2/2012, in reply to message #119588
R-Comp chap
Posts: 600
This has me intrigued... I don't suppose anyone would be willing to write a short "how to" to transfer stuff (floppies, files) from an old machine to Beagle/ARMini using this?

It'd make for an excellent beginner's guide to cover migration from older kit.
  ^[ Log in to reply ]
 
Paul Vernon Message #119594, posted by PaulV at 18:14, 15/2/2012, in reply to message #119585
Member
Posts: 135
Over the last couple of days of use, one thing I have found with ADFFS is it's memory usage is a tad on the high side for 4MB machines. When you "eject" the disc, the memory isn't returned either and the module area sits there hogging most of the RAM.

If the allocated RAM could be released when a disc is ejected (dismounted) then that would be just fine. As it stands, if I open an F disc, I can't do much else with it because I've got no RAM left unhappy

Now if ADFFS were to go down the same route as !CDFaker which provides access to virutal CDs and is very low on memory requirements, that'd be an excellent forward step for me big grin

Paul
  ^[ Log in to reply ]
 
Jon Abbott Message #119596, posted by sirbod at 18:34, 15/2/2012, in reply to message #119594
Member
Posts: 563
LOL - 4MB! Those were the days.

CDFaker implements virtual hardware. I did consider this, but couldn't find any documentation on how to present a virtual floppy controller back to RISC OS. It would be a major piece of code, involving emulating MFM etc. CDFaker will also be disc based, where ADFFS is RAM based to simplify the code.

I'll add "disc based" to the feature request list.

As for releasing on eject, I'll fix that.

[Edited by sirbod at 18:34, 15/2/2012]
  ^[ Log in to reply ]
 
Pages (8): 1 > >|

The Icon Bar: General: ADF floppy disc image reader