From 0aa8dad20d075deac32362d957c0b39c54a6704a Mon Sep 17 00:00:00 2001 From: Rob Greene Date: Thu, 24 Jul 2025 17:09:46 -0500 Subject: [PATCH] Adding support for WOZ1 5.25" disks as well. --- .../applecommander/storage/Disk.java | 5 +- .../storage/physical/WozOrder.java | 51 ++++++++++++++---- .../storage/DiskHelperTest.java | 14 +++-- .../disks/DOS 3.3 System Master.woz1 | Bin 0 -> 233216 bytes ... Master.woz => DOS 3.3 System Master.woz2} | Bin 5 files changed, 55 insertions(+), 15 deletions(-) create mode 100644 lib/ac-api/src/test/resources/disks/DOS 3.3 System Master.woz1 rename lib/ac-api/src/test/resources/disks/{DOS 3.3 System Master.woz => DOS 3.3 System Master.woz2} (100%) diff --git a/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/Disk.java b/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/Disk.java index 722c69fd..5fd967b9 100644 --- a/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/Disk.java +++ b/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/Disk.java @@ -231,8 +231,9 @@ public class Disk { if ((diskImage[0] == 0x32) && (diskImage[1] == 0x49) && (diskImage[2] == 0x4D) && (diskImage[3]) == 0x47) { is2img = true; } - /* Does it have the WOZ header? */ - else if ((diskImage[0] == 0x57) && (diskImage[1] == 0x4f) && (diskImage[2] == 0x5a) && (diskImage[3]) == 0x32) { + /* Does it have the WOZ1 or WOZ2 header? */ + else if ((diskImage[0] == 0x57) && (diskImage[1] == 0x4f) && (diskImage[2] == 0x5a) + && ((diskImage[3] == 0x31) || (diskImage[3] == 0x32))) { isWoz = true; } /* Does it have the DiskCopy 4.2 header? */ diff --git a/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/physical/WozOrder.java b/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/physical/WozOrder.java index a0a48191..37337ced 100644 --- a/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/physical/WozOrder.java +++ b/lib/ac-api/src/main/java/com/webcodepro/applecommander/storage/physical/WozOrder.java @@ -18,6 +18,9 @@ import java.util.function.Function; import static com.webcodepro.applecommander.storage.physical.NibbleCodec.readSectorFromTrack; public class WozOrder extends ImageOrder { + // The magic bytes are read in little-endian order, so they do appear reversed here. + public static final int WOZ1_MAGIC = 0x315a4f57; + public static final int WOZ2_MAGIC = 0x325a4f57; public static final int INFO_CHUNK_ID = 0x4f464e49; public static final int TMAP_CHUNK_ID = 0x50414d54; public static final int TRKS_CHUNK_ID = 0x534b5254; @@ -34,6 +37,7 @@ public class WozOrder extends ImageOrder { private boolean blockDevice; private boolean trackAndSectorDevice; private int blocksOnDevice; + private Function trackReader = null; private Function blockReader = this::readBlock525; private BiFunction sectorReader = this::readSector525; @@ -45,8 +49,15 @@ public class WozOrder extends ImageOrder { int sig = bb.getInt(); int test = bb.getInt(); - if (sig != 0x325a4f57 || test != 0xa0d0aff) { - throw new RuntimeException("Not a WOZ v2 format file."); + final int testExpected = 0xa0d0aff; + if (sig == WOZ1_MAGIC && test == testExpected) { + this.trackReader = this::readTrackDataWOZ1; + } + else if (sig == WOZ2_MAGIC && test == testExpected) { + this.trackReader = this::readTrackDataWOZ2; + } + else { + throw new RuntimeException("Not a WOZ1 or WOZ2 format file."); } bb.getInt(); // ignoring CRC @@ -214,6 +225,7 @@ public class WozOrder extends ImageOrder { } private void readTrksChunk(byte[] data) { + // Note: WOZ2 only ByteBuffer bb = ByteBuffer.wrap(data); bb.order(ByteOrder.LITTLE_ENDIAN); for (int i=0; i<160; i++) { @@ -222,6 +234,10 @@ public class WozOrder extends ImageOrder { } protected byte[] readTrackData(int track) { + return this.trackReader.apply(track); + } + + protected byte[] readTrackDataWOZ2(int track) { TmapChunk map = tmap.get(track); int trkInfo = map.getOffset00(); if (trkInfo == 255) trkInfo = map.getOffset25(); @@ -232,6 +248,17 @@ public class WozOrder extends ImageOrder { return transformBitstream(rawData, trk.getBitCount()); } + protected byte[] readTrackDataWOZ1(int track) { + final int trackLength = 6656; + int start = 256 + (track * trackLength); + byte[] details = readBytes(start + 6646, 10); + int bytesUsed = AppleUtil.getWordValue(details, 0); + int bitCount = AppleUtil.getWordValue(details, 2); + int end = start + bytesUsed; + byte[] rawData = readBytes(start, end); + return transformBitstream(rawData, bitCount); + } + protected byte[] transformBitstream(byte[] rawData, int bitCount) { // NOTE: Uncertain if we need to track 0's (only 2 allowed by hardware) or not. ByteArrayOutputStream baos = new ByteArrayOutputStream(); @@ -285,14 +312,18 @@ public class WozOrder extends ImageOrder { byte[] creator = new byte[32]; bb.get(creator); this.creator = new String(creator); - this.diskSides = bb.get(); - this.bootSectorFormat = bb.get(); - this.optimalBitTiming = bb.get(); - this.compatibleHardware = bb.getShort(); - this.requiredRAM = bb.getShort(); - this.largestTrack = bb.getShort(); - this.fluxBlock = bb.getShort(); - this.largestFluxTrack = bb.getShort(); + if (this.version == 2) { + this.diskSides = bb.get(); + this.bootSectorFormat = bb.get(); + this.optimalBitTiming = bb.get(); + this.compatibleHardware = bb.getShort(); + this.requiredRAM = bb.getShort(); + this.largestTrack = bb.getShort(); + } + if (this.version == 3) { + this.fluxBlock = bb.getShort(); + this.largestFluxTrack = bb.getShort(); + } } public int getVersion() { diff --git a/lib/ac-api/src/test/java/com/webcodepro/applecommander/storage/DiskHelperTest.java b/lib/ac-api/src/test/java/com/webcodepro/applecommander/storage/DiskHelperTest.java index 331cf69e..d7693fbb 100644 --- a/lib/ac-api/src/test/java/com/webcodepro/applecommander/storage/DiskHelperTest.java +++ b/lib/ac-api/src/test/java/com/webcodepro/applecommander/storage/DiskHelperTest.java @@ -141,12 +141,20 @@ public class DiskHelperTest { showDirectory(config.getDiskDir() + "/D3151.dsk"); //$NON-NLS-1$ } - @Test - public void testLoadDos33SystemMasterWoz() throws IOException, DiskException { + public void testLoadDos33SystemMasterWoz1() throws IOException, DiskException { FormattedDisk[] disks = showDirectory(config.getDiskDir() + - "/DOS 3.3 System Master.woz"); + "/DOS 3.3 System Master.woz1"); + assertApplesoftFile(disks[0], "HELLO"); //$NON-NLS-1$ + assertIntegerFile(disks[0], "COPY"); //$NON-NLS-1$ + assertBinaryFile(disks[0], "BOOT13"); //$NON-NLS-1$ + } + + @Test + public void testLoadDos33SystemMasterWoz2() throws IOException, DiskException { + FormattedDisk[] disks = showDirectory(config.getDiskDir() + + "/DOS 3.3 System Master.woz2"); assertApplesoftFile(disks[0], "HELLO"); //$NON-NLS-1$ assertIntegerFile(disks[0], "COPY"); //$NON-NLS-1$ assertBinaryFile(disks[0], "BOOT13"); //$NON-NLS-1$ diff --git a/lib/ac-api/src/test/resources/disks/DOS 3.3 System Master.woz1 b/lib/ac-api/src/test/resources/disks/DOS 3.3 System Master.woz1 new file mode 100644 index 0000000000000000000000000000000000000000..ac8dca39235cd41774fac2092817b7d24ce0afb6 GIT binary patch literal 233216 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 f^9$_1+rsAd|Gd5EH{{`ynK