David Given
1b85464b85
Convert the JV3 and IMD image readers; overhaul the IMD reader.
2021-06-09 23:00:48 +02:00
David Given
644f592df3
Make the JV3 imagereader work again; allow the imagereader to act as a geometry
...
mapper for formats which have track/side/sector information.
2021-05-30 23:57:14 +02:00
David Given
1440c3c8d6
Make the Macintosh encoder work again; convert the diskcopy reader to work with
...
the new geometry system.
2021-05-29 00:04:13 +02:00
David Given
2935c2d925
Replace the d64 image reader with an appropriate img reader configuration.
2021-05-27 23:47:43 +02:00
David Given
99b9145a0d
Convert the imagereader to a simple block fetcher and hook up the geometry
...
mapper to it. Seems to work given some basic testing.
2021-05-27 00:06:50 +02:00
David Given
e7348eaa4f
Added a functioning (I hope) sketch of the disassembling geometry mapper code.
2021-05-26 00:00:52 +02:00
David Given
bf4831be9f
Migrate the Northstar code to the new framework.
2021-05-24 23:20:59 +02:00
David Given
0f83082cf0
Merge branch 'northstar' of https://github.com/hharte/fluxengine into hharte-northstar
2021-05-24 21:39:51 +02:00
David Given
9bf309eb5c
Add physical mapping options.
2021-05-23 23:57:22 +02:00
David Given
4614b63c30
Convert wybren1971's D64 reader and 1541 encoder to work with the new
...
architecture.
2021-05-21 23:34:28 +02:00
David Given
cf41b6cbb2
Merge branch 'Commodore-64-encoder' of https://github.com/wybren1971/fluxengine into wybren1971-Commodore-64-encoder
2021-05-21 23:02:04 +02:00
David Given
1997abcde6
Warning fix pass.
2021-05-21 22:12:14 +02:00
David Given
a1f4014738
Rework the ibm encoder to allow per-track configurations. Rename everything for
...
consistency.
2021-05-19 23:01:32 +02:00
David Given
a0164b8de3
Rip out dataspecs everywhere.
2021-05-18 22:22:06 +02:00
David Given
9df35c1814
Fix a bunch of documentation strings.
2021-05-18 21:10:59 +02:00
David Given
05aaa2634b
Don't hard-code references to the global config in the
...
updateConfigForFilename() methods.
2021-05-18 19:57:23 +02:00
Howard M. Harte
5b1a3173f8
Add support for North Star hard-sectored floppies.
...
North Star Floppy disks use 10-sector hard sectored disks with either FM
or MFM encoding. They may be single- or double-sided. Each of the 10
sectors contains 256 (FM) or 512 (MFM) bytes of data. The disk has 35
cylinders, with tracks 0-34 on side 0, and tracks 35-69 on side 1.
Tracks on side 1 are numbered "backwards" in that track 35 corresponds
to cylinder 34, side 1, and track 69 corresponds to cylinder 0, side 1.
The North Star sector format does not include any head positioning
information. As such, reads from North Star floppies need to be
synchronized with the index pulse, in order to properly identify the
sector being read. While there is a command line option:
--sync-with-index, that does this, the North Star reader forces this
behavior by default.
MFM sectors have 32 bytes of 00's followed by two sync characters,
specified in the North Star MDS manual as 0xFBFB.
This is true for most disks; however, I found a few disks, including an
original North Star DOS/BASIC v2.2.1 DQ disk, that uses 0xFBnn, where
nn is an incrementing pattern.
While searching for the start of a sector header, seekToPattern()
ignores the sector pulses. If a sector header cannot be decoded for any
reason, seekToPattern() will advance past one or more sector pulses.
For this reason, the _hardSectorId is calulated after the sector header
is found.
Due to the nature of the track ordering on side 1, an .nsi image reader
and writer are provided for double-sided disks. The .nsi image format
supports both single- and double-sided disks; however, single-sided .nsi
images are equivalent to .img images.
2021-05-16 15:41:55 -07:00
David Given
225a93330d
Rename more config stuff.
2021-05-15 22:37:29 +02:00
David Given
41b36649a9
Rename a bunch of config fields for clarity.
2021-05-15 22:23:42 +02:00
David Given
ed0f38748b
Add helper flags to fe-read and fe-write for setting common parameters.
2021-05-15 21:28:02 +02:00
David Given
93dcc7e242
Convert the image readers and Mac encoder and decoder.
2021-05-15 12:33:22 +02:00
David Given
f7c31281e0
Convert the C64 decoder to the new configuration scheme. Also convert all the
...
imagewriters.
2021-05-15 00:25:32 +02:00
David Given
5a186b6960
Rename all protos to end with 'Proto' to avoid name conflicts.
2021-05-13 18:05:08 +02:00
David Given
3a8ddf8025
The writer now works with the new config system.
2021-05-13 15:55:05 +02:00
David Given
6ff84b3693
Bash the imagewriter stuff into working with the new config system.
2021-05-12 23:08:17 +02:00
wybren1971
5dad5de548
removed a testmessage
2021-05-12 10:14:12 +02:00
wybren1971
295325a20b
Added some checks on sector status
2021-05-12 10:11:51 +02:00
wybren1971
f92814b24b
Added option to write d64 images back to disk
2021-05-11 19:54:50 +02:00
David Given
a8f1469d36
Flesh out the proto config stuff some more.
2021-05-10 22:38:04 +02:00
wybren1971
6527ceb913
Added comment
2021-05-08 12:41:11 +02:00
wybren1971
64a57ba837
Change sectorskew IMD starts numbering with 1
2021-05-08 12:39:28 +02:00
David Given
1b0ec50711
Add lots more protobuf machinery.
2021-05-07 23:38:31 +02:00
David Given
1b5b170557
Add support for possibly writing 40-track disks on an 80-track drive.
2021-05-07 22:01:20 +02:00
wybren1971
928435a31d
Added error catching to exit gracely on an error
2021-05-07 15:59:03 +02:00
wybren1971
26ac92eaa3
Standardized messages in classes
2021-05-07 13:25:25 +02:00
wybren1971
2974c08b08
Fix bug in printing sectorskew to screen
2021-05-07 13:11:43 +02:00
wybren1971
5a7b0b3050
Warning was commented out. Fixed
2021-05-07 13:03:41 +02:00
wybren1971
52942c3d2a
Fixed a bug with sectorskew for 1.44 diskettes
2021-05-06 17:40:57 +02:00
wybren1971
3061499860
Small bugfixes and added a check on the sectorskew
2021-05-06 14:18:40 +02:00
wybren1971
57e0bc784a
Fix bug in startsectorID
2021-05-01 09:12:38 +02:00
wybren1971
425afa93da
Better Comment reading with string
2021-04-30 21:45:22 +02:00
wybren1971
259b2cebc7
Added optional cylindermap and sector head map
2021-04-30 20:33:39 +02:00
wybren1971
2245cd982a
Leave destination as is
2021-04-30 19:38:02 +02:00
wybren1971
065b50769f
Update IMD writing based on geometry in image
2021-04-30 15:26:06 +02:00
David Given
bf8f6ae687
Add imagereader offset and step modes, and hardware forty-track modes. Not sure
...
this is the right way to do it.
2021-04-21 00:41:36 +02:00
David Given
b51f2c1ec8
Fix C++ standard issue.
2021-04-19 20:27:44 +02:00
wybren1971
07f2bd8cab
small fix in tracks info
2021-04-18 09:49:06 +02:00
wybren1971
3efd492525
add IMD file reader
2021-04-17 18:52:41 +02:00
wybren1971
c712c15a30
add IMD file reader
2021-04-17 16:55:25 +02:00
wybren1971
0c541db8e0
add IMD file reader
2021-04-17 16:55:07 +02:00