Keir Fraser
f155a3dcbf
usb: Let NoClickStep fail silently in Unit.seek() error path.
2022-02-09 16:02:33 +00:00
Keir Fraser
ffdecb17bc
usb: Special error report path for BadCylinder only for Seek command.
...
Refs #159
2022-02-03 09:15:47 +00:00
Keir Fraser
2db8e3e0a3
setup.sh: Ensure that wheel package is installed before building c_ext
...
Refs #157
2022-01-29 13:29:14 +00:00
Keir Fraser
848324987f
gw.py: Pretty-print a warning about missing version.py file.
2022-01-29 12:59:04 +00:00
Keir Fraser
467c147083
gw rpm: Print 3dp and print summary stats.
...
Refs #156
2022-01-28 16:54:18 +00:00
Keir Fraser
1bf858c1ae
gw read,write,erase: Improved --rpm/--fake-index arg parsing
...
1. Rename --rpm to --adjust-speed.
2. --adjust-speed and --fake-index take a SPEED option.
SPEED can be floating-point and any of ms,us,ns,scp,rpm.
Refs #156
2022-01-28 16:54:14 +00:00
Keir Fraser
f5915c0ba7
flux: Correctly generate WriteoutFlux when write is not index cued.
...
Refs #156
2022-01-28 16:54:10 +00:00
Keir Fraser
2796652506
gw read.write,erase: New option --fake-index=N to fake an index at N rpm.
...
Useful when the disk drive provides no index pulse (eg. flipped 5.25" disk)
Refs #156
2022-01-28 16:54:00 +00:00
Keir Fraser
233034f327
gw read/write: All format decoders adjust raw data to correct track speed (RPM).
...
When reads are not index-synced (gw read, gw write verify) use a measurement
we took previously, for flux.ticks_per_rev (fixes crash).
Fixes #153
2022-01-27 11:39:59 +00:00
Keir Fraser
920d944e76
gw: Clean up metavar names in command-line help strings
2022-01-26 08:12:49 +00:00
Keir Fraser
62bf6a3ff9
gw read: Re-seek after N retries.
...
Fixes #154
2022-01-26 08:08:19 +00:00
Keir Fraser
7c5f825ec8
flux: Fix Flux.append() to support new flux acquired at a different sample rate.
2022-01-25 17:01:33 +00:00
Keir Fraser
d56fe22761
TSPEC: New step=1/d syntax to divide logical cylinder by 'd'
...
eg. "c=0-81/2:step=1/2" will read sequential cylinders on a 40T drive,
mapping them to logical cylinders 0,2,4,...,80
Refs #150
2022-01-11 13:52:42 +00:00
Keir Fraser
375a40006e
TSPEC: New cylinder syntax <min>-<max>/<step>
...
Eg. c=0-10/2 <=> c=0,2,4,6,8,10
Refs #150
2022-01-11 13:42:48 +00:00
Keir Fraser
df5f97bbfa
gw erase: New option --hfreq to write a high-frequency flux signal.
...
This usually creates a No Flux Area. It is the same erasure method
as used by Supercard Pro software.
Refs #152
2022-01-11 13:26:08 +00:00
Keir Fraser
3dbea17c84
gw seek: Handle flippy-modded drive inward stepping
2022-01-11 13:12:30 +00:00
Keir Fraser
c6afd30251
gw convert: Fix --out-tracks to default to c= and h= from --tracks.
...
Continue to ignore all other --tracks sub-options for defaults.
2022-01-10 16:33:46 +00:00
Keir Fraser
3553b3272d
1581/d81: Disk sides are physically swapped (sector H bytes are swapped).
...
Refs #149
2022-01-08 22:45:18 +00:00
Keir Fraser
5edf7d496c
gw convert: Respect cyl/head conversion ops in trackspec passed to --tracks=.
...
Add a new option --out-tracks= for changing output behaviour.
Refs #149
2022-01-08 22:45:07 +00:00
Keir Fraser
5d138aa505
hfe: Auto-detect output bitrate, or require it to be manually specified
2022-01-05 14:39:55 +00:00
Keir Fraser
0bb855fa01
gw convert: Fix print_summary() for partial sumamry dicts.
2022-01-05 14:26:56 +00:00
Keir Fraser
ad10f6403a
gw: Require Python version >= 3.7.
...
Earlier versions are EOL, and gw may be using features which do
not exist in these earlier versions (it's untested).
2022-01-05 13:32:18 +00:00
Keir Fraser
b07ffb6a8b
gw: Configure stderr line buffering on Python 3.7+
2022-01-05 13:18:10 +00:00
Keir Fraser
92c8f04cf0
gw read, write, erase: Tidy up per-track logging
2022-01-05 09:35:15 +00:00
Keir Fraser
3583fa7079
scp: More robust input parsing. Fixes handling older FluxEngine image files.
...
Fixes #131
2022-01-05 08:39:55 +00:00
Keir Fraser
73b0200b79
gw: Update the test-build warning message
2022-01-04 14:00:52 +00:00
Keir Fraser
9e81373f4e
gw rpm: Number of iterations configurable. Tweak output.
2022-01-04 13:40:05 +00:00
Thomas Daede
b864ec5721
Add command to measure spindle RPM
...
Fixes #57
2022-01-04 13:29:03 +00:00
Keir Fraser
0f22bb8a2c
gw erase: Get rid of line overwrites.
2022-01-04 13:24:51 +00:00
Keir Fraser
cf0579c101
gw write: Get rid of line overwrites. Barf on raw input file with missing sectors.
2022-01-04 13:23:18 +00:00
Keir Fraser
9ffb18ad96
Redirect stdout to stderr.
...
1. Keeps stdout clean for future use
2. stderr is unbuffered, so wrappers can pipe the output line-by-line
Fixes #141
2022-01-04 13:08:43 +00:00
Keir Fraser
f1fd55c414
Better summary string for MasterTrack
2022-01-04 12:02:05 +00:00
Keir Fraser
6e60c29fb7
codec/ibm: Fix bitslices past end of bitarray.
2022-01-04 12:01:22 +00:00
Keir Fraser
dabc6478fc
gw convert: New subcommand to convert between image formats
2022-01-04 11:41:09 +00:00
Keir Fraser
14864b63f3
Add struct.error to list of always-backtrace exceptions
2022-01-03 21:16:14 +00:00
Keir Fraser
970760e6a3
gw read: Allow format verification only, output raw stream (--raw)
2022-01-03 15:19:19 +00:00
Keir Fraser
62eb40e777
gw read: Remove option --rate and make it an HFE sub-option instead.
...
Eg. "gw read my.hfe::bitrate=500" to read a high-density micro-diskette
2022-01-03 14:23:22 +00:00
Keir Fraser
c7ea8d9f7c
gw info: Add a hardware model name for Adafruit.
...
Refs #142
2022-01-03 00:41:38 +00:00
Keir Fraser
409fad2956
In strings, "Greaseweazle" -> "Device" or "Greaseweazle device"
2022-01-03 00:29:53 +00:00
Keir Fraser
5d8e296f59
gw: Update --device help text to mention COM/serial port
2022-01-03 00:23:53 +00:00
Keir Fraser
9537af3617
gw read: Save partial output file on Ctrl-C exit
...
Fixes #91
2022-01-02 11:44:29 +00:00
Keir Fraser
b65409e7e9
gw read: New option -n/--no-clobber prevents overwriting existing files
...
Fixes #92
2022-01-02 11:33:49 +00:00
Keir Fraser
28eb1ac5b8
seek: Check TRK0 signal after seek is completed
2022-01-02 10:53:50 +00:00
Keir Fraser
8bb20bd78d
Bump required firmware version to v0.31
2022-01-02 10:36:03 +00:00
Keir Fraser
4648d417ab
Add 'hswap' option to trackspec
2021-12-31 11:44:35 +00:00
Keir Fraser
aec79f7e63
Format SF7/SF700 -> SF7000
2021-12-31 11:26:31 +00:00
Keir Fraser
6d5965ba78
Windows: Fix build of Python C extension using setuptools-60.x
...
We need to install using pip, rather than invoking setup.py directly.
Fixes #137
2021-12-30 09:38:11 +00:00
Keir Fraser
bff764a9e8
Support .SF7 file extension for Sega SF7 image files.
2021-12-29 12:16:47 +00:00
Keir Fraser
11ad4e544d
Support Sega SF7 (SF-7000)
2021-12-29 08:39:28 +00:00
Keir Fraser
22940df78f
Fix up cx_Freeze excludes list: 'email' is a dependency for 'requests'
2021-12-28 17:34:14 +00:00