Commit Graph

97 Commits

Author SHA1 Message Date
Rob Greene
157c55a86a Mostly accepting IDE suggestions to clean up 'throws' declarations. 2025-09-29 13:45:04 -05:00
Rob Greene
8bd6974ba4 Mostly accepting IDE suggestions of 'final' attributes. 2025-09-29 13:38:30 -05:00
Rob Greene
e541f81f56 Bumping to disassembler 6.0. 2025-09-29 12:32:49 -05:00
Rob Greene
5a53b531df Making errors for dump just print the error message and continue. This allows ranges to operate more usefully. 2025-09-06 16:51:56 -05:00
Rob Greene
4ddefa8184 Showing info for Source if no disks were recognized. 2025-09-06 13:51:47 -05:00
Rob Greene
4696fe1817 Updating scan to no longer mark "unknown" as success; tweaked some source code names to (hopefully) be more clear. 2025-09-06 13:51:22 -05:00
Rob Greene
e86d2f0fc8 Allowing info to display nibble details. 2025-09-05 22:34:11 -05:00
Rob Greene
3b5ad7abf0 Adding limited nibble disk scanning capability. 2025-09-05 21:53:02 -05:00
Rob Greene
e2b409534a Allowing nibble track dumps even if we don't recognize the disk. 2025-09-05 11:47:19 -05:00
Rob Greene
9c223a97b1 Changing how the TrackSectorNibbleDevice is created and identified (two new methods). This hopefully simplifies it's usage. 2025-09-04 21:25:19 -05:00
Rob Greene
e3601c46c9 Repackaging the nibble support components. 2025-09-03 21:32:43 -05:00
Rob Greene
da1615c1f2 Noticed some bugs with usage of Container. This should fix them. 2025-09-03 16:06:31 -05:00
Rob Greene
aa4f4df0f8 Capturing the NibbleTrackReaderWriter so that 'acx dump' can dump a nibble version of a track. Useful for sleuthing. 2025-09-03 15:55:13 -05:00
Rob Greene
53916cdd33 Moving DosFormatDisk to use a TrackSectorDevice. Impacted ProDOS and Pascal detection a bit, and those were corrected. 2025-09-02 20:25:39 -05:00
Rob Greene
4ae852fc48 Switching CP/M over to use a BlockDevice. 2025-08-31 18:45:50 -05:00
Rob Greene
696149056f 'acx' can now target a specific disk that is identified when multiple apply. This should help the UniDOS/OzDOS and multi-OS disks (CP/M + DOS or ProDOS + DOS). 2025-08-31 18:44:10 -05:00
Rob Greene
116b424dd9 Converting RDOS to use a block device. 2025-08-30 13:20:19 -05:00
Rob Greene
e2dc08db54 Changing the TrackSectorToBlockAdapter to (a) rely on the given TrackSectorDevice to handle sector skew (via the SkewedTrackSectorDevice) and (b) handle varying block sizes (RDOS, ProDOS/Pascal, CP/M). 2025-08-29 19:56:16 -05:00
Rob Greene
ad13e644c2 Making PascalFormatDisk use BlockDevice. 2025-08-28 22:12:30 -05:00
Rob Greene
db514fbee2 Making ProdosFormatDisk use BlockDevice instead of the old ImageOrder. Made it a container. Lots of percolating changes here! 2025-08-28 19:44:56 -05:00
Rob Greene
9312663e9d Adding interface layer in preparation of implementing BlockDevice and TrackSectorDevice. 2025-08-27 17:39:37 -05:00
Rob Greene
4ca86ec6b7 Adding GraalVM native-image to 'ac' and 'acx'. 2025-08-25 19:58:23 -05:00
Rob Greene
03cd4a6e53 Allowing 'acx dump' command to handle a range of blocks or tracks and sectors. 2025-08-24 10:37:40 -05:00
Rob Greene
2a404079bd Merged Disk and FormattedDisk. Moved constants to DiskConstants class. 2025-08-23 19:20:04 -05:00
Rob Greene
f2346dfeec Clearing out one Disk constructor. 2025-08-23 16:16:09 -05:00
Rob Greene
887bb2fdcd Updating comparisons to use updated DiskDiff with FormattedDisk. 2025-08-23 15:25:56 -05:00
Rob Greene
2efacef00c Updating FileStreamer API to use FormattedDisks. 2025-08-23 13:09:21 -05:00
Rob Greene
f46b43ae67 First round of moving away from Disk constructor to using Disks and/or Sources. 2025-08-23 11:41:21 -05:00
Rob Greene
5c02a9f742 Renaming diskImageManager to be source. 2025-08-23 08:55:09 -05:00
Rob Greene
b3bfc9b854 Extracting FilenameFilter to be an entity independent of Disk. 2025-08-22 14:10:51 -05:00
Rob Greene
7070a25511 Adding license to all the files missed before. 2025-08-22 13:08:20 -05:00
Rob Greene
ba580f0d2c Noticed that "scan" missed case extensions (specifically Unix and presumably Mac), so altering glob creation to be "*.{[Dd][Ss][Kk],...}" instead of (the more readable) "*.{dsk,...}". 2025-08-20 11:28:18 -05:00
Rob Greene
debe51c06b Adding a bit more detail for degradation reports. For now, not optional. 2025-08-16 10:46:24 -05:00
Rob Greene
de640a3c03 Two wrapped changes: (1) creating a ShrinkitSourceFactory to magically decode SHK/SDK/BXY files into a ProDOS image (removing that functionality from Disk) and (2) added DataBufferSource to support these generic images which (which also fit in with a lot of new images being created). 2025-08-14 19:21:05 -05:00
Rob Greene
2f48071ed4 Uncertain why the report had a default value -- stdout should be the default. 2025-08-12 19:21:10 -05:00
Rob Greene
a4b0c6079d Adding report capability to scan. 2025-08-12 16:37:44 -05:00
Rob Greene
f3bea76de5 Updating to JUnit 5. Primarily due to the parameterized tests being pretty nice. Also found one of the SWT Linux tests works now, so enabled it. 2025-08-10 14:29:32 -05:00
Rob Greene
3bbe418f1e Adding information for sources when requested ('acx info', 'ac -i', info tab in GUI). 2025-08-09 17:38:25 -05:00
Rob Greene
6525785405 Merge branch 'main' into feature/replace-order-with-device
# Conflicts:
#	lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/Disk.java
2025-08-09 12:30:30 -05:00
Rob Greene
5beb6f9fa0 Removing ByteArrayImageLayout and the related UniversalDiskImageLayout in favor of Source (FileSource, DiskCopyImage, and UniversalDiskImage). 2025-08-08 19:22:47 -05:00
Rob Greene
f76d411e8c Updating logging and allowing report(s) to be written to a file. 2025-08-07 13:31:31 -05:00
Rob Greene
6739adb74e Correcting subdirectory handling (oops); adding exception message to unreadable files. 2025-08-07 13:11:43 -05:00
Rob Greene
ee758e6618 Adjusting CPM blocks to read. 2025-08-07 11:17:40 -05:00
Rob Greene
fdc1f1521a Revising to be a bit more fault-tolerant and keep pushing. 2025-08-07 11:04:10 -05:00
Rob Greene
058bc4182b Start of scan command. 2025-08-07 10:05:36 -05:00
Rob Greene
d799be9d14 Bumping to Java 21. 2025-07-31 20:10:43 -05:00
Rob Greene
da0fdcc659 Upgrading to Gradle 8.13. What a pain! ;-) 2025-07-31 09:59:49 -05:00
Rob Greene
796631a9fb Allowing coordinates (T/S and blocks) to be specified as hex. 2025-07-28 15:59:41 -05:00
Rob Greene
8954b5b2d3 This corrects for a naming issue if the file is given on the command line; a full directory path causes issues. 2025-07-27 20:27:09 -05:00
Rob Greene
dca33021b7 Noticed a typo in CR code. 2025-07-13 12:19:14 -05:00