I'm new here - n00b questions

Discuss the project, or ask a general question
User avatar
matburton
Posts: 22
Joined: Fri Oct 18, 2019 11:00 am
Location: Cambridge

I'm new here - n00b questions

Post by matburton »

Hey all, I'm new!

Can I start by saying this project looks amazing, and JonAbbott looks to be an absolute legend.

I am a bit confused about the releases, what's preserved, the formats involved and what can be done with them.

Am I right in thinking that JASPP has the rights to the released software and allows free download?
Is there a reason why dumps of the original media are not available?

If I understand correctly those releases and the JFD format are somewhat like WHDLoad for the Amiga?
i.e. the copy protection is removed, compatibility fixes are added, bug are fixed and other enhancements might be applied?
Will there ever be access to preserved originals, warts and all?

On the format front am I to understand that the APD format is sufficient to preserve both data and copy protection for all Archimedes disks?
Indeed I dumped my copy of Louts 2 using a Kryoflux and converted it to ADP which then worked Arculator while the ADF didn't seem to.

Is there any route from APD to other formats? e.g. Can an APD be translated back to RAW Kryoflux file to repair failed media? Or to HFEv3 for floppy emulators like the HxC and Gotek?

Are the APD and JFD file formats documented somewhere?

Again sorry if I'm asking dumb questions or have made any bad assumptions!
hubersn
Posts: 23
Joined: Tue Mar 31, 2015 3:02 pm

Re: I'm new here - n00b questions

Post by hubersn »

matburton wrote: Wed Oct 23, 2019 9:40 pm Are the APD and JFD file formats documented somewhere?
Look inside the ADFFS archive, !ADFFS.!Structure describes both APD and JFD.

Have fun
hubersn
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: I'm new here - n00b questions

Post by JonAbbott »

matburton wrote: Wed Oct 23, 2019 9:40 pm Can I start by saying this project looks amazing, and JonAbbott looks to be an absolute legend.
Thanks for the support.
matburton wrote: Wed Oct 23, 2019 9:40 pm I am a bit confused about the releases, what's preserved, the formats involved and what can be done with them.
The preservation of each title is detailed on this page. Everything is archived in JFD format for use with ADFFS.
matburton wrote: Wed Oct 23, 2019 9:40 pm Am I right in thinking that JASPP has the rights to the released software and allows free download?
The rights are detailed in the download page of each title. Essentially the current rights holders grant JASPP distribution rights.
matburton wrote: Wed Oct 23, 2019 9:40 pm Is there a reason why dumps of the original media are not available?
The JFD files are the original dumps, they're imaged on Archimedes using ADFFS.
matburton wrote: Wed Oct 23, 2019 9:40 pm If I understand correctly those releases and the JFD format are somewhat like WHDLoad for the Amiga?
ADFFS is possibly the RISC OS equivalent of WHDLoad. It contains a 1772 FDC emulator for APD files, a VMM for A-series emulation and an ARM3 JIT so code runs on the latest ARM instruction revisions.
matburton wrote: Wed Oct 23, 2019 9:40 pm i.e. the copy protection is removed, compatibility fixes are added, bug are fixed and other enhancements might be applied?
Will there ever be access to preserved originals, warts and all?
JFD's are the original dumps with disc protection intact, warts and all. Some of the boot scripts contain bug fixes, where I've come across them. There's no enhancements. Compatibility comes from the VMM on ARMv5+ machines.
matburton wrote: Wed Oct 23, 2019 9:40 pm On the format front am I to understand that the APD format is sufficient to preserve both data and copy protection for all Archimedes disks?
Yes, APD contains three dumps of the floppy in SD, DD and QD so does preserve copy protection. I don't think Fire & Ice works with APD, but everything else I've tested does.
matburton wrote: Wed Oct 23, 2019 9:40 pm Indeed I dumped my copy of Lotus 2 using a Kryoflux and converted it to ADP which then worked Arculator while the ADF didn't seem to.
Lotus Turbo Challenge 2 has disc protection, so will not work as ADF.
matburton wrote: Wed Oct 23, 2019 9:40 pm Is there any route from APD to other formats? e.g. Can an APD be translated back to RAW Kryoflux file to repair failed media? Or to HFEv3 for floppy emulators like the HxC and Gotek?
I'm not aware of any APD conversion tools, shouldn't be too hard to code one though.
matburton wrote: Wed Oct 23, 2019 9:40 pm Are the APD and JFD file formats documented somewhere?
Yes, in !ADFFS.!Structure
matburton wrote: Wed Oct 23, 2019 9:40 pm Again sorry if I'm asking dumb questions or have made any bad assumptions!
No problem, happy to answer any questions. I did write a lot longer reply this morning whilst on the train, which was promptly lost when I submitted just as I lost WiFi! Hopefully I've covered everything with the abridged answers above.
hoji
Posts: 1
Joined: Thu Oct 24, 2019 12:36 pm

Re: I'm new here - n00b questions

Post by hoji »

Echoing MattBurton, thanks - this is indeed an ace project and your post has also answered my questions. Thanks again JohnAbbot.
User avatar
matburton
Posts: 22
Joined: Fri Oct 18, 2019 11:00 am
Location: Cambridge

Re: I'm new here - n00b questions

Post by matburton »

Thanks for the detailed reply Jon! Sorry for my slow reply and sorry you had to reply twice :o
Essentially the current rights holders grant JASPP distribution rights.
Ah! Understood. Does that dictate what format software can be released in? I notice many titles use JFD but some like Zool and Wolfenstein are hard disk installs. Is that due to multiple publishers?
JFD's are the original dumps with disc protection intact, warts and all.
It contains a 1772 FDC emulator for APD files, a VMM for A-series emulation and an ARM3 JIT so code runs on the latest ARM instruction revisions.
Sweet! That makes ADFFS + JFD more like SPS' IPF and WHDLoad rolled in to one! Colour me impressed!

For anyone else reading WHDLoad (or JST) uses slaves which typically patch floppy images which can't express copy protection. Those patches typically eliminate copy protection checks, disk swapping and add fixes for compatibility with other setups.
I don't think Fire & Ice works with APD
Does that mean that JFD is the superior preservation format which replaces APD?
Lotus Turbo Challenge 2 has disc protection, so will not work as ADF.
Yes it was the very first disk I dumped and noticed track 79 seemed to have a bad CRC.
It also has XLock (c) Daniel Simms, is the copy protection in this case just a bad CRC!
I'm not aware of any APD conversion tools, shouldn't be too hard to code one though.
Yes, in !ADFFS.!Structure
Thanks! Would it be OK if I were to have a stab at making such converters? It'll take me many months due to limited time and having a lot to learn, but it feels like something I could realistically contribute (I promise nothing though!)

Really I want to allow people to 'save' degraded original media by re-writing something that's as close to original as possible, and to let those without hard drives use original software from floppy emulators, or even real media. I for one had a sad number of mouldy or scraped disks that need attention.
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: I'm new here - n00b questions

Post by JonAbbott »

matburton wrote: Tue Oct 29, 2019 2:01 am Does that dictate what format software can be released in? I notice many titles use JFD but some like Zool and Wolfenstein are hard disk installs. Is that due to multiple publishers?
Original floppies are imaged to JFD files, Zool and Wolfenstein were both modified from their original. In the case of Wolfenstein where I have the source code, I made quite a few code changes, adding missing sound samples, fixing issues with the FM emulation and adding the red screen fade when you're shot.
matburton wrote: Tue Oct 29, 2019 2:01 am Does that mean that JFD is the superior preservation format which replaces APD?
JFD and APD serve different purposed. JFD's are aimed at emulating ADFS' responses to disc operations where APD is aimed at full floppy emulation.
matburton wrote: Tue Oct 29, 2019 2:01 am
Lotus Turbo Challenge 2 has disc protection, so will not work as ADF.
Yes it was the very first disk I dumped and noticed track 79 seemed to have a bad CRC.
It also has XLock (c) Daniel Simms, is the copy protection in this case just a bad CRC!
I don't have the details to hand, from memory XLock does a bit more than just check for a bad CRC. I'll check my notes later to confirm what it does.
matburton wrote: Tue Oct 29, 2019 2:01 am Would it be OK if I were to have a stab at making such converters? It'll take me many months due to limited time and having a lot to learn, but it feels like something I could realistically contribute
Of course, ADFFS isn't suitable for machines with less than 4mb of RAM, so converters are useful for folk that want to use hardware floppy emulators.
User avatar
matburton
Posts: 22
Joined: Fri Oct 18, 2019 11:00 am
Location: Cambridge

Re: I'm new here - n00b questions

Post by matburton »

JonAbbott wrote: Tue Oct 29, 2019 5:19 pm
matburton wrote: Tue Oct 29, 2019 2:01 am Would it be OK if I were to have a stab at making such converters? It'll take me many months due to limited time and having a lot to learn, but it feels like something I could realistically contribute
Of course, ADFFS isn't suitable for machines with less than 4mb of RAM, so converters are useful for folk that want to use hardware floppy emulators.
So I've finally got around to 'mucking around' with this.
I've hacked-up a quick and dirty .JFD parser.

I gave it Lotus Turbo Challenge 2 (1992) (Krisalis Software) F1023201.jfd and as expected it indicates the invalid data CRC on track 79 side 1 sector 0.

However what I wasn't expecting was the number of missing sectors? Am I doing something wrong?

These tracks have no sectors at all in the .JFD file: 69 side 1, 70 side 0, 70 side 1, 71 side 0, 71 side 1, 72 side 0.

These tracks have one or more absent sectors in the .JFD file: track 12 side 1, track 55 side 0, track 65 side 1, track 69 side 0, track 72 side 1, track 73 side 0, track 79 side 1.

I dumped my original copy and the sectors that are present in the .JFD match, but there don't seem to be any missing sectors in the original disk. Some of those sectors are 'null' (all 0's) but many do seem to contain data. I don't think I've dumped the original incorrectly.

How should I be treating missing sectors in the .JFD file?
Is it possible I have a slightly different original version to the one dumped?

(Many thanks for the excellent doc explaining the file formats)
JonAbbott
Posts: 2938
Joined: Thu Apr 11, 2013 12:13 pm
Location: Essex
Contact:

Re: I'm new here - n00b questions

Post by JonAbbott »

matburton wrote: Tue Jun 07, 2022 10:27 am How should I be treating missing sectors in the .JFD file?
A missing sector means the game didn't touch it. You can just zero them as they're not required.
User avatar
matburton
Posts: 22
Joined: Fri Oct 18, 2019 11:00 am
Location: Cambridge

Re: I'm new here - n00b questions

Post by matburton »

JonAbbott wrote: Wed Jun 08, 2022 6:49 pm
matburton wrote: Tue Jun 07, 2022 10:27 am How should I be treating missing sectors in the .JFD file?
A missing sector means the game didn't touch it. You can just zero them as they're not required.
Huh! How strange :D

Thanks for your quick reply Jon I'll continue having a go at writing a .JDF back to a disk then
User avatar
matburton
Posts: 22
Joined: Fri Oct 18, 2019 11:00 am
Location: Cambridge

Re: I'm new here - n00b questions

Post by matburton »

matburton wrote: Wed Jun 08, 2022 9:46 pm I'll continue having a go at writing a .JDF back to a disk then
I created a .HFE from the .JFD for both Lotus Turbo Challenge 2 and Sim City.
I 'burnt' those to real floppies using a Greaseweazle, and they both worked fine it seems.

Next I tried Magic Pockets. The game started to load but then asked me to insert the original disk.
I'm guessing the copy protection is based-on track 79 side 0.
That track has sectors 240, 240, 242 and 242 in the .JFD all with sector sizes of 512 bytes.
JonAbbott wrote: Wed Jun 08, 2022 6:49 pm A missing sector means the game didn't touch it. You can just zero them as they're not required.
I added another sector to track 79 (side 0) to have 5 sectors as normal.
Should I maybe not include a 5th sector at all? Maybe this would be better for all missing sectors?

I gave it number 243 since I had no clue what number would be a good choice, and a length of 1024 bytes.
Maybe that's wrong and there should be a zero'd sector 0-5 etc, or some other length, maybe 512 bytes?

Any chance you'd be able to take a look at the .HFE in case you can give me a hint at what I'm doing wrong?
https://drive.google.com/uc?export=down ... HPimwucZ8l

P.S. this thanks again, I'm having fun mucking around with this!
Post Reply