David Given
533b217c8f
Eliminate the broken tpi system for a simple drive/format type field.
2023-10-29 21:10:14 +01:00
dg
dcb92db519
Remove old build system.
2023-10-26 19:29:01 +00:00
David Given
ca6b90f8c1
Split C and C++ libraries, so that you can use C++ compiler flags. Build with
...
C++17.
2023-10-24 22:00:09 +02:00
David Given
07aa416975
Make the tests work.
2023-10-22 22:57:54 +02:00
David Given
986be921f4
First working command-line executable.
2023-10-22 19:18:14 +02:00
David Given
f5f223f622
First steps towards reworking the build system... again.
2023-10-21 23:02:46 +02:00
Eric Anderson
96d4df296d
Micropolis: Add Vector ECC support
2023-07-29 14:03:08 -07:00
Eric Anderson
c623d95a80
Micropolis: Fix encoder and decoder to support encodedecodetest
...
These changes should not impact reading/writing from real disks. This
includes a bug fix to Fluxmap where it might miss a trailing interval
when adding bits, as mentioned in #333 .
With the Fluxmap bug fixed, the encoder now includes index pulses in its
output. The decoder was relaxed to allow reading precisely one track.
We don't actually add an encodedecodetest for micropolis, though,
because the SCP encoder is unhappy with so many revolutions.
2023-07-29 07:08:23 -07:00
David Given
6ce3ce20d0
Remove stray debugging code.
2023-07-07 01:03:31 +02:00
dg
b7634da310
Work around Apple dev kit stupidity (definiting BYTE_SIZE in a standard
...
header...)
2023-05-15 22:51:16 +00:00
dg
dcfcc6271c
Sort out a whole bunch of other things, including cleaning up the way the
...
verification source is handled.
2023-05-12 23:28:25 +00:00
dg
e61eeb8c6f
Fetching the flux source is now done through Config.
2023-05-12 21:25:54 +00:00
dg
baaeb0bca7
Fix mangled formatting caused by clang-format.
2023-05-09 21:39:35 +00:00
dg
466c3c34e5
Replace the Error() object with an error() function which takes fmt
...
formatspecs, making for much cleaner code. Reformatted everything.
This actually happened in multiple steps but then I corrupted my local
repository and I had to recover from the working tree.
2023-05-09 20:59:44 +00:00
Eric Anderson
d298f5b16e
Micropolis: disk rotate period is 200 ms
...
The disks are expected to contain 100,000 bitcells, so clock_period_us
and rotational_period_ms need to align.
2023-04-23 13:54:50 -07:00
dg
ef60bfff6b
Looks like the Roland D-20 format is the same as Brother240???
2023-04-06 17:07:00 +00:00
dg
a633b73e12
Add boilerplate for Roland D20 decoder.
2023-04-05 22:36:54 +00:00
David Given
b78a057c81
Merge branch 'master' into basis
2023-03-31 22:10:47 +01:00
dg
0551ddc276
Add write support for Apple II 640kB disks.
2023-03-28 20:36:43 +00:00
dg
27a04ee22b
Add initial support for the Basis-108.
2023-03-27 23:07:59 +00:00
dg
921e178e83
Tone down the bad-sector-size warning a bit.
2023-03-26 18:23:25 +00:00
dg
7ea4e116cc
Add a warning if the configured sector size doesn't match the one on disk.
2023-03-26 16:25:40 +00:00
dg
3f85c9f006
Adjust timings to be more correct.
2023-01-06 21:28:51 +00:00
dg
4984a53bfd
First hypothetically working version of the agat encoder.
2023-01-05 18:36:01 +00:00
dg
b0c77653a2
Add the boilerplate for the Agat encoder.
2023-01-05 12:04:36 +00:00
dg
86d0893261
Adjust mac encoder clock to be more like the real thing.
2022-12-05 20:27:52 +00:00
dg
c374ffd15e
Increase the smaky disk signature to 32 bits.
2022-11-26 22:56:45 +00:00
dg
cf975b74bf
Rename smaky to smaky6.
2022-11-26 11:18:38 +00:00
dg
5d65dcf3c8
Even better Smaky reads, and maybe with sector 0 in the right place.
2022-11-25 21:28:59 +00:00
dg
f299ec1f8d
More Smaky improvements.
2022-11-25 20:23:24 +00:00
dg
3c7c4639a9
Massively improved the quality of Smaky reads.
2022-11-25 19:33:29 +00:00
dg
7e9a1268a5
Add an extremely prototype version of the Smaky decoder.
2022-11-23 21:44:40 +00:00
dg
a60b8e68ca
Add a Bytes method for reversing each bit.
2022-11-23 21:44:10 +00:00
David Given
d0fb85e712
Rename all the remaining layout and location variables to trackInfo (where
...
appropriate).
2022-09-16 00:20:54 +02:00
David Given
81cbd00cc8
Rename Track to TrackInfo, which better describes what it is.
2022-09-16 00:09:39 +02:00
David Given
4a565b5ea0
Split the Layout class.
2022-09-16 00:07:22 +02:00
David Given
82f61eee12
Eliminate Location in favour of Layout.
2022-09-15 23:52:07 +02:00
David Given
88fc7ff9c3
Begin cleaning up the Layout stuff.
2022-09-15 21:45:12 +02:00
David Given
9a8fc80220
Massive overhaul of how the physical/logical layout mapping is done, to make it
...
more consistent and bidirectional everywhere and just generally better.
Hopefully this fixes that pesky 1581 problem.
2022-09-15 20:23:33 +02:00
David Given
6b7e81d7fb
Move requiredSectors() to the base class.
2022-09-13 00:32:04 +02:00
David Given
dce6248193
Victor9k no longer uses collectSectors().
2022-09-13 00:22:46 +02:00
David Given
0e349ede4c
TIDS990 no longer uses collectSectors.
2022-09-13 00:19:45 +02:00
David Given
60117471a7
No more collectSectors in Brother.
2022-09-13 00:06:55 +02:00
David Given
3c23e7b047
Merge.
2022-09-12 23:58:03 +02:00
David Given
b48e1ba9e0
Remove the trivial collectSectors() methods which have been replaced by the
...
base class.
2022-09-12 23:55:52 +02:00
David Given
1267191e8e
Abstract is for Java.
2022-09-12 23:52:24 +02:00
David Given
49b6bbff37
Add sector skew support to SectorListProto; add a partial definition for the
...
Victor 9000.
2022-09-12 23:10:24 +02:00
David Given
339e9cca10
Hopefully actually fix the C64 side issue, this time, by rethinking how the IBM
...
encoder/decoder handles side swapping. We want to be able to swap everything,
or just the side bytes.
2022-09-12 22:04:58 +02:00
David Given
c63a761ca4
Actually fix the c64 1581 side issue. Turns out the data's not flipped between
...
the two sides, only the bit in the sector header...
2022-09-12 15:34:21 +02:00
David Given
3cb098f9ba
Rip out the old approach to soft sector remapping as it wasn't working.
2022-09-11 17:05:40 +02:00