From c5a46900b5d89aaaf9812f79be38702c3997152f Mon Sep 17 00:00:00 2001 From: Matt Godbolt Date: Fri, 16 Aug 2024 18:27:40 -0500 Subject: [PATCH] Fix SSD loading (#429) Don't stop "formatting" tracks beyond the end of the SSD; else we leave unformatted blank space into which we can't save or do anything useful. Closes #428 --- disc.js | 2 -- tests/unit/test-disc.js | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/disc.js b/disc.js index 2091d550..27b12024 100644 --- a/disc.js +++ b/disc.js @@ -538,8 +538,6 @@ export function loadSsd(disc, data, isDsd, onChange) { let offset = 0; for (let track = 0; track < SsdFormat.tracksPerDisc; ++track) { - if (offset >= data.length) break; - for (let side = 0; side < numSides; ++side) { const trackBuilder = disc.buildTrack(side === 1, track); // Sync pattern at start of track, as the index pulse starts, aka GAP 5. diff --git a/tests/unit/test-disc.js b/tests/unit/test-disc.js index e47524a4..ddfc9bdb 100644 --- a/tests/unit/test-disc.js +++ b/tests/unit/test-disc.js @@ -181,7 +181,7 @@ describe("SSD loader tests", function () { it("should load Elite", () => { const disc = new Disc(true, new DiscConfig(), "test.ssd"); loadSsd(disc, data, false); - assert.equal(disc.tracksUsed, 46); + assert.equal(disc.tracksUsed, 80); }); it("should roundtrip Elite", () => { const disc = new Disc(true, new DiscConfig(), "test.ssd");