summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Mark Wooding [Fri, 18 Feb 2022 23:00:18 +0000 (23:00 +0000)]
dvd-sector-copy.c: Leave progress report visible before debugging.
Mark Wooding [Fri, 18 Feb 2022 22:58:34 +0000 (22:58 +0000)]
dvd-sector-copy.c: Fix formatting for debugging code.
Mark Wooding [Fri, 18 Feb 2022 23:00:00 +0000 (23:00 +0000)]
dvd-sector-copy.c: Dump buffer after final recovery.
Mark Wooding [Fri, 18 Feb 2022 22:59:00 +0000 (22:59 +0000)]
dvd-sector-copy.c: Don't dump fake-bad-block search if no bad blocks.
Mark Wooding [Fri, 18 Feb 2022 22:57:13 +0000 (22:57 +0000)]
dvd-sector-copy.c: Fix final recovery.
Write this the other way around, because it's easier to read that way.
And then notice that it's broken because it doesn't actually set the
return value properly.
Mark Wooding [Fri, 18 Feb 2022 22:55:57 +0000 (22:55 +0000)]
dvd-sector-copy.c: Write new data into the correct part of the buffer.
The debugging message had the right value, which made this annoyingly
hard to track down.
Mark Wooding [Fri, 18 Feb 2022 22:55:33 +0000 (22:55 +0000)]
dvd-sector-copy.c: Check more carefully for overflow conditions.
Mark Wooding [Fri, 18 Feb 2022 22:54:19 +0000 (22:54 +0000)]
dvd-sector-copy.c: Check `n' nonnegative before comparing with unsigned.
Otherwise it might be coerced to unsigned, at which point the comparison
means something completely different.
Mark Wooding [Fri, 18 Feb 2022 22:51:28 +0000 (22:51 +0000)]
dvd-sector-copy.c: Adjust the base position when shifting.
Fixes stupid bug.
Mark Wooding [Fri, 18 Feb 2022 22:50:16 +0000 (22:50 +0000)]
dvd-sector-copy.c: Fix formatting for `ssize_t'.
Mark Wooding [Fri, 18 Feb 2022 19:00:48 +0000 (19:00 +0000)]
dvd-sector-copy.c: Rewrite the bad-sector recovery machinery.
It's now much more aggressive about skipping good sectors squished
between bad ones.
Mark Wooding [Fri, 18 Feb 2022 18:58:47 +0000 (18:58 +0000)]
dvd-sector-copy.c: Extract the post-recovery code into a function.
The `goto' is ugly.
Mark Wooding [Fri, 18 Feb 2022 18:54:54 +0000 (18:54 +0000)]
dvd-sector-copy.c: Sink `report_bad_blocks_progress' towards recovery.
Mark Wooding [Fri, 18 Feb 2022 18:50:27 +0000 (18:50 +0000)]
dvd-sector-copy.c: Make `read_sectors' more persistent after short reads.
It now continues trying to read until it gets an error, end-of-file, or
it completes the task requested of it. For consistency, we must also
report an error after a short read forced by a synthetic bad sector,
which requires a little additional machinery.
Mark Wooding [Fri, 18 Feb 2022 18:46:13 +0000 (18:46 +0000)]
dvd-sector-copy.c: Move `i' to the debug-only variables block.
Mark Wooding [Thu, 17 Feb 2022 00:16:58 +0000 (00:16 +0000)]
dvd-sector-copy.c: Split bad-block recovery out into its own function.
Mark Wooding [Wed, 16 Feb 2022 23:37:50 +0000 (23:37 +0000)]
dvd-sector-copy.c: Add machinery for installing pretend bad sectors.
For testing the recovery algorithm(s).
Mark Wooding [Wed, 16 Feb 2022 21:20:10 +0000 (21:20 +0000)]
dvd-sector-copy.c: Force return to start of line on progress output.
Mark Wooding [Wed, 16 Feb 2022 21:19:42 +0000 (21:19 +0000)]
dvd-sector-copy.c: Merge adjacent retry ranges when reading from a file.
Mark Wooding [Wed, 16 Feb 2022 21:15:22 +0000 (21:15 +0000)]
dvd-sector-copy.c, dvdrip: Make input and output files positional args.
They're not really optional.
Mark Wooding [Wed, 16 Feb 2022 21:13:46 +0000 (21:13 +0000)]
dvd-sector-copy.c: Hoist out the common sector-range parsing machinery.
Mark Wooding [Wed, 16 Feb 2022 21:10:54 +0000 (21:10 +0000)]
dvd-sector-copy.c: Make `outfd' be global variable.
Mark Wooding [Wed, 16 Feb 2022 21:09:15 +0000 (21:09 +0000)]
dvd-sector-copy.c: Hoist `carefully_write' up near the system utilities.
Mark Wooding [Wed, 16 Feb 2022 18:55:24 +0000 (18:55 +0000)]
dvd-sector-copy.c: Split up the things which used to be in `struct source'.
Mark Wooding [Wed, 16 Feb 2022 18:53:16 +0000 (18:53 +0000)]
dvd-sector-copy.c: Eliminate `struct source'; just make the things global.
Mark Wooding [Wed, 16 Feb 2022 18:19:11 +0000 (18:19 +0000)]
dvd-sector-copy.c: Reorder things in a more sensible way.
Mark Wooding [Wed, 16 Feb 2022 18:02:16 +0000 (18:02 +0000)]
dvd-sector-copy.c: Introduce `moan' function for printing warnings.
Mark Wooding [Wed, 16 Feb 2022 18:00:31 +0000 (18:00 +0000)]
dvd-sector-copy.c: Introduce type alias and print macro for sector numbers.
Mark Wooding [Wed, 16 Feb 2022 10:10:05 +0000 (10:10 +0000)]
dvd-sector-copy.c: Support reading from a regular file.
This will be useful for testing. I hope.
Mark Wooding [Wed, 16 Feb 2022 10:08:06 +0000 (10:08 +0000)]
dvd-sector-copy.c: Order `STOP' before `WRITE'.
The bad-block parsers already filter out empty regions, so they won't
cause a problem. And this way we don't reject groups of adjacent bad
blocks, though we don't actually merge them as we probably should.
Mark Wooding [Wed, 16 Feb 2022 10:06:48 +0000 (10:06 +0000)]
build: Build locally and install in the usual way.
Accessing these programs over NFS is more annoying than useful, so do
things the old-fashioned way instead.
Mark Wooding [Tue, 15 Feb 2022 10:11:12 +0000 (10:11 +0000)]
dvdrip-upload: Inhibit the fancy rsync algorithm when copying.
On my system, at least, it actually slows copying down by a factor of at
least two.
Mark Wooding [Tue, 15 Feb 2022 10:10:58 +0000 (10:10 +0000)]
dvdrip: Ring the bell when the job is done.
Wake me up.
Mark Wooding [Tue, 15 Feb 2022 10:07:54 +0000 (10:07 +0000)]
dvd-sector-copy.c: Show overall progress if we're simply continuing.
If we're supposed to write a single region extending to the end of the
disc then show the percentage completion in terms of the absolute
position in the disc rather than as a percentage of the number of
sectors we're supposed to copy. This makes the percentage shown easier
to relate to that displayed by a previous interrupted operation.
Mark Wooding [Mon, 7 Feb 2022 22:29:51 +0000 (22:29 +0000)]
dvdrip: Cope with `/' in the output name.
Mark Wooding [Mon, 7 Feb 2022 21:00:16 +0000 (21:00 +0000)]
Initial commit.