From f982ad22f0211a20e6c049cd3b6bf63c8f5948c5 Mon Sep 17 00:00:00 2001 From: John Morris Date: Wed, 6 Jun 2018 13:56:22 -0700 Subject: [PATCH] Revert "Some code cleanup." This reverts commit 6a0fb9b4f1f0b9bb396b0dd7757a0b8b9bb02277. --- dsk2woz.c | 53 ++-- dsk2woz/dsk2woz.xcodeproj/project.pbxproj | 279 ------------------ .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../UserInterfaceState.xcuserstate | Bin 21948 -> 0 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 5 - .../xcschemes/dsk2woz.xcscheme | 101 ------- .../xcschemes/xcschememanagement.plist | 22 -- 8 files changed, 26 insertions(+), 449 deletions(-) delete mode 100644 dsk2woz/dsk2woz.xcodeproj/project.pbxproj delete mode 100644 dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcuserdata/john.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist delete mode 100644 dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/dsk2woz.xcscheme delete mode 100644 dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/dsk2woz.c b/dsk2woz.c index 29596ad..830f7a3 100644 --- a/dsk2woz.c +++ b/dsk2woz.c @@ -48,7 +48,7 @@ int main(int argc, char *argv[]) { // Create a buffer for the portion of the WOZ image that comes after // the 12-byte header. The header will house the CRC, which will be // calculated later. - const size_t woz_image_size = 256 - 12 + 35*6656; + const size_t woz_image_size = 256 + 35*6656; uint8_t woz[woz_image_size]; #define set_int32(location, value) \ woz[location] = (value) & 0xff; \ @@ -98,22 +98,23 @@ int main(int argc, char *argv[]) { // // The remaining quarter-track position maps to nothing, which in // WOZ is indicated with a value of 255. - // Let's start by filling the entire TMAP with empty tracks. - memset(&woz[76], 0xff, 160); - // Then we will add in the mappings. for(int c = 0; c < 35; ++c) { - int track_position = 76 + (c << 2); - if (c > 0) woz[track_position - 1] = c; - woz[track_position] = woz[track_position + 1] = c; + if (c > 0) woz[75 + (c << 2)] = c; + woz[76 + (c << 2)] = woz[77 + (c << 2)] = c; + woz[78 + (c << 2)] = woz[79 + (c << 2)] = 255; } + // So there are 20 track slots that a DSK doesn't reach; set them + // to no-track-mapped. + memset(&woz[76 + (35 << 2)], 20, 0xff); + /* WOZ image item 3: a TRKS chunk. */ strcpy((char *)&woz[236], "TRKS"); // Chunk ID. - set_int32(240, 35*6656); // Chunk size. + set_int32(240, 35*65536); // Chunk size. // The output pointer holds a byte position into the WOZ buffer. size_t output_pointer = 244; @@ -365,17 +366,17 @@ static void serialise_track(uint8_t *dest, const uint8_t *src, uint8_t track_num size_t track_position = 0; // This is the track position **in bits**. memset(dest, 0, 6646); - // Write the gap 1. - for(int c = 0; c < 16; ++c) { - track_position = write_sync(dest, track_position); - } - // Step through the physical sector. for(int sector = 0; sector < 16; ++sector) { /* Write the sector header. */ + // Lead-in. + for(int c = 0; c < 10; ++c) { + track_position = write_sync(dest, track_position); + } + // Prologue. track_position = write_byte(dest, track_position, 0xd5); track_position = write_byte(dest, track_position, 0xaa); @@ -393,14 +394,14 @@ static void serialise_track(uint8_t *dest, const uint8_t *src, uint8_t track_num track_position = write_byte(dest, track_position, 0xeb); - // Write the gap 2. - for(int c = 0; c < 7; ++c) { - track_position = write_sync(dest, track_position); - } - + /* Write the sector body. */ + // Lead-in. + for(int c = 0; c < 10; ++c) { + track_position = write_sync(dest, track_position); + } // Prologue. track_position = write_byte(dest, track_position, 0xd5); @@ -421,19 +422,17 @@ static void serialise_track(uint8_t *dest, const uint8_t *src, uint8_t track_num track_position = write_byte(dest, track_position, 0xde); track_position = write_byte(dest, track_position, 0xaa); track_position = write_byte(dest, track_position, 0xeb); - - // Write the gap 3. - for(int c = 0; c < 16; ++c) { - track_position = write_sync(dest, track_position); - } - } + } + // Pad out to roughly 50,000 bits. + while(track_position < 50000) { + track_position = write_sync(dest, track_position); + } + // Add the track suffix. dest[6646] = (track_position >> 3) & 0xff; dest[6647] = (track_position >> 11) & 0xff; // Byte count. dest[6648] = track_position & 0xff; dest[6649] = (track_position >> 8) & 0xff; // Bit count. - dest[6650] = dest[6651] = 0x00; // Splice information. - dest[6652] = 0xff; - dest[6653] = 10; + dest[6650] = dest[6651] = 0xff; // Splice information: none. } diff --git a/dsk2woz/dsk2woz.xcodeproj/project.pbxproj b/dsk2woz/dsk2woz.xcodeproj/project.pbxproj deleted file mode 100644 index da90f92..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/project.pbxproj +++ /dev/null @@ -1,279 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - 520B9CA520C86EE80055ADF8 /* dsk2woz.c in Sources */ = {isa = PBXBuildFile; fileRef = 520B9CA420C86EE80055ADF8 /* dsk2woz.c */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 520B9C9820C86ED40055ADF8 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = /usr/share/man/man1/; - dstSubfolderSpec = 0; - files = ( - ); - runOnlyForDeploymentPostprocessing = 1; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 520B9C9A20C86ED40055ADF8 /* dsk2woz */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = dsk2woz; sourceTree = BUILT_PRODUCTS_DIR; }; - 520B9CA420C86EE80055ADF8 /* dsk2woz.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dsk2woz.c; path = ../../dsk2woz.c; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 520B9C9720C86ED40055ADF8 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 520B9C9120C86ED40055ADF8 = { - isa = PBXGroup; - children = ( - 520B9C9C20C86ED40055ADF8 /* dsk2woz */, - 520B9C9B20C86ED40055ADF8 /* Products */, - ); - sourceTree = ""; - }; - 520B9C9B20C86ED40055ADF8 /* Products */ = { - isa = PBXGroup; - children = ( - 520B9C9A20C86ED40055ADF8 /* dsk2woz */, - ); - name = Products; - sourceTree = ""; - }; - 520B9C9C20C86ED40055ADF8 /* dsk2woz */ = { - isa = PBXGroup; - children = ( - 520B9CA420C86EE80055ADF8 /* dsk2woz.c */, - ); - path = dsk2woz; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 520B9C9920C86ED40055ADF8 /* dsk2woz */ = { - isa = PBXNativeTarget; - buildConfigurationList = 520B9CA120C86ED40055ADF8 /* Build configuration list for PBXNativeTarget "dsk2woz" */; - buildPhases = ( - 520B9C9620C86ED40055ADF8 /* Sources */, - 520B9C9720C86ED40055ADF8 /* Frameworks */, - 520B9C9820C86ED40055ADF8 /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = dsk2woz; - productName = dsk2woz; - productReference = 520B9C9A20C86ED40055ADF8 /* dsk2woz */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 520B9C9220C86ED40055ADF8 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0930; - ORGANIZATIONNAME = "Evolution Interactive"; - TargetAttributes = { - 520B9C9920C86ED40055ADF8 = { - CreatedOnToolsVersion = 9.3.1; - }; - }; - }; - buildConfigurationList = 520B9C9520C86ED40055ADF8 /* Build configuration list for PBXProject "dsk2woz" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - ); - mainGroup = 520B9C9120C86ED40055ADF8; - productRefGroup = 520B9C9B20C86ED40055ADF8 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 520B9C9920C86ED40055ADF8 /* dsk2woz */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXSourcesBuildPhase section */ - 520B9C9620C86ED40055ADF8 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 520B9CA520C86EE80055ADF8 /* dsk2woz.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 520B9C9F20C86ED40055ADF8 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Mac Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.13; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - }; - name = Debug; - }; - 520B9CA020C86ED40055ADF8 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "Mac Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.13; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - }; - name = Release; - }; - 520B9CA220C86ED40055ADF8 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = Z8VRXJGJ89; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 520B9CA320C86ED40055ADF8 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = Z8VRXJGJ89; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 520B9C9520C86ED40055ADF8 /* Build configuration list for PBXProject "dsk2woz" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 520B9C9F20C86ED40055ADF8 /* Debug */, - 520B9CA020C86ED40055ADF8 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 520B9CA120C86ED40055ADF8 /* Build configuration list for PBXNativeTarget "dsk2woz" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 520B9CA220C86ED40055ADF8 /* Debug */, - 520B9CA320C86ED40055ADF8 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 520B9C9220C86ED40055ADF8 /* Project object */; -} diff --git a/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index f08a50d..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d9810..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcuserdata/john.xcuserdatad/UserInterfaceState.xcuserstate b/dsk2woz/dsk2woz.xcodeproj/project.xcworkspace/xcuserdata/john.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index b4fa61d069a7021eddbebe2631b2ef80b7192360..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21948 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 bf69H3$K`oC&Ps@3_)h`7A=lwwp7;L;bC=j7 diff --git a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist deleted file mode 100644 index fe2b454..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/dsk2woz.xcscheme b/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/dsk2woz.xcscheme deleted file mode 100644 index 3dfbbd4..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/dsk2woz.xcscheme +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/xcschememanagement.plist b/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/xcschememanagement.plist deleted file mode 100644 index 71281af..0000000 --- a/dsk2woz/dsk2woz.xcodeproj/xcuserdata/john.xcuserdatad/xcschemes/xcschememanagement.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - SchemeUserState - - dsk2woz.xcscheme - - orderHint - 0 - - - SuppressBuildableAutocreation - - 520B9C9920C86ED40055ADF8 - - primary - - - - -