Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Hollywood MAL AMIStore App Store A600 Memory

AuthorTopic: Quarterback now GPL, sources on Aminet  (Read 441 times)

0 Members and 1 Guest are viewing this topic.

Offline kolla

Quarterback now GPL, sources on Aminet
« on: March 21, 2018, 09:53:14 AM »
Because Quarterback Tools saved my butt so many times back in the days, I think this is pretty awesome news. This makes it possible to update it for use with newer versions of FFS (and who knows, maybe even PFS3AIO and whatever else).

http://aminet.net/package/disk/bakup/quarterback_src
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
 

Offline olsen

Re: Quarterback now GPL, sources on Aminet
« Reply #1 on: March 21, 2018, 02:58:50 PM »
Quote from: kolla;837563
Because Quarterback Tools saved my butt so many times back in the days, I think this is pretty awesome news. This makes it possible to update it for use with newer versions of FFS (and who knows, maybe even PFS3AIO and whatever else).

http://aminet.net/package/disk/bakup/quarterback_src


Wow! But a little scary too... Who knew that the original software (1991) was written entirely in assembly language...
 

Offline olsen

Re: Quarterback now GPL, sources on Aminet
« Reply #2 on: March 22, 2018, 01:55:45 PM »
Quote from: kolla;837563
Because Quarterback Tools saved my butt so many times back in the days, I think this is pretty awesome news. This makes it possible to update it for use with newer versions of FFS (and who knows, maybe even PFS3AIO and whatever else).

I had a look at the "Quarterback Tools Deluxe" code, and for the most part the implementation is pretty solid. It covers the file system features introduced with Kickstart 3.0, namely the DCFS (directory cache mode, fast dir mode) format. It also handles both soft and hard links. I find this quite impressive, considering how little documentation existed for these features in 1992/1993. The repair functionality is limited to detecting issues with DCFS blocks (corruption). It does not repair them, though, and leaves the job to the file system validator.

One limitation which I could find concerns the block size. Up until Kickstart 2.0 a block was always the same size as a sector (e.g. 512 bytes). This was changed, by allowing a block to consist of several sectors (2, 4, 8, 16, 32, 64, or 128), up to 65536 bytes per block. The "Quarterback Tools Deluxe" programs which deal with direct disk access are unaware of the block size settings, they assume the block size and the sector size to be identical.

More serious is the handling of storage devices larger than 4 Gigabytes. All arithmetic operations on block numbers are performed using unsigned 32 bit integers. Any partition extending beyond or residing entirely beyond the 4 Gigabyte "barrier" cannot be safely modified, and reading from it may not retrieve the expected data.

So, from the looks of it, if you are already using the "Quarterback Tools Deluxe" tools, you should limit yourself to partition sizes smaller than 4 Gigabytes, with the partitions residing completely within the first 4 Gigabytes of a storage medium. I haven't checked (this is hard to figure out just by looking at the code), but it might just be possible that only the first 2 Gigabytes of a storage medium may be safe to use and repair after all.

From my experience, adapting an existing application to handle large storage devices can be really tricky. Translating the block numbers into 64 bit integer position values may be simple enough if the relevant code isn't scattered all over the place. You put a translation layer in place and that's it. The harder part is in dealing with the larger storage space: what worked with a 400 Megabyte partition no longer works so well with a 2 Gigabyte partition. Scalability issues pop up, e.g. linked lists are no longer adequate as the "workhorse" of managing the contents of a volume.
« Last Edit: March 22, 2018, 01:58:53 PM by olsen »
 

Offline kolla

Re: Quarterback now GPL, sources on Aminet
« Reply #3 on: March 22, 2018, 02:06:07 PM »
@Olsen

Wow, big thanks for the analysis :)

I think the largest drive I ever used it with, was a 1.2 GB Seagate disk once upon a time. As disks got larger it was easier to have "backup partitions" to do emergency boots and restores from, than to actually try fixing corrupted filesystems. In that respect, these types of programs are even less relevant today.
B5D6A1D019D5D45BCC56F4782AC220D8B3E2A6CC
 

Offline olsen

Re: Quarterback now GPL, sources on Aminet
« Reply #4 on: March 22, 2018, 02:54:01 PM »
Quote from: kolla;837635
@Olsen

Wow, big thanks for the analysis :)

I think the largest drive I ever used it with, was a 1.2 GB Seagate disk once upon a time.


Those were the days... must have been around 1992/1993. "Quarterback Tools Deluxe" was perfectly adequate for storage devices of this size.

Quote
As disks got larger it was easier to have "backup partitions" to do emergency boots and restores from, than to actually try fixing corrupted filesystems. In that respect, these types of programs are even less relevant today.


Data recovery without side-effects always was preferable over the alternative, it just wasn't necessarily cost-effective and sufficiently efficient back in the early 1990'ies. I recall the underlying "groan" in a comment made at the time that now hard disk drives of 4 Gigabytes or larger were available (1994-1995), it was becoming near impossible to back up and restore their contents to tape (DAT). One had to ponder backing up to a second drive of the same size. For which you had to shell out real money, and even then the time it took to back up the data wasn't well spent.

The cost/time gap between primary storage (first floppy disk, then hard disk) and secondary storage (first floppy disk, then tape, then DAT, then CD-R) just kept stretching.

This is what, ironically, made the repair operations more useful because they could deliver (in theory anyway) a sufficiently sound file system more quickly than dragging an older version of the data out of the archive, and certainly at a lower cost. Doubly ironic for the fact that no such repair tool shipped with the Amiga operating system in the day (Disk Doctor wasn't kicked to the curb until Workbench 2.1 started shipping).