+arcadeshopper Posted May 10, 2018 Share Posted May 10, 2018 Are you trying to format on a Gotek or HxC? Mine was done on the HxC. HxC I have said that about 4 times, plus posted a video Quote Link to comment Share on other sites More sharing options...
RickyDean Posted May 10, 2018 Share Posted May 10, 2018 HxC I have said that about 4 times, plus posted a video Sorry, at work, so no time to look back, I really just glance, speed read and save the page for reference later. 1 Quote Link to comment Share on other sites More sharing options...
RickyDean Posted May 11, 2018 Share Posted May 11, 2018 Last night I tried repeatedly to format, in various ways, with various settings, setting the switches to various positions, and even tried the above settings that I used the night before to no avail. I then tried a CorComp controller and successfully formatted one, then went back to the HFDC and tried to read it, was successful, but then tried to format it and ran into the 'brick wall'. Kept getting the error message about media. Quote Link to comment Share on other sites More sharing options...
+9640News Posted May 11, 2018 Share Posted May 11, 2018 Last night I tried repeatedly to format, in various ways, with various settings, setting the switches to various positions, and even tried the above settings that I used the night before to no avail. I then tried a CorComp controller and successfully formatted one, then went back to the HFDC and tried to read it, was successful, but then tried to format it and ran into the 'brick wall'. Kept getting the error message about media. Same symptoms I had, except I went back with a the Myarc FDC which is not to be confused with the Myarc HFDC. The FDC formatted the image fine while the HFDC would not. Beery Quote Link to comment Share on other sites More sharing options...
RickyDean Posted May 11, 2018 Share Posted May 11, 2018 i'm trying to figure out 'What changed' I was able to format one(at least to verify) with the settings shown in the picture above, but not last night...hmm.. Quote Link to comment Share on other sites More sharing options...
+acadiel Posted May 11, 2018 Share Posted May 11, 2018 Here are Beery's Kyroflux images and converted HFE files for the HFDC formatted floppy. I've also attached how track 0 (side 0 and 1) look in the HxC track explorer view. Side 0 has 17 sectors in it, and side 1 looks a wee bit strange. Jeff will have to chime in. beery.zip beery2.zip 1 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted May 11, 2018 Author Share Posted May 11, 2018 This is what I get from my tool. But if that is actually a HFDC-formatted disk, which I won't doubt, it means that my implementation is correct: The data marks are all 0xF8, which normally means "deleted data" (instead of 0xFE). This is very likely a bug in the HFDC, a misinterpretation of the meaning of the bit in the command, or an error in the specification. michael@capella:~/mame/ti/util> java AnalyseHFE beery.hfe 0 0 sect Track analysis: Recording = MFM Sample rate = 249 kHz 0008: Gap 1 (562*4e) 023a: Sync (12*00) 0246: IDAM Track 0, head 0, sector 0, size 256 Header CRC = c93d (OK) 0250: Gap 2 (36*05) 0274: DDAM 0278: 48 46 44 43 46 4f 52 4d 41 54 05 a0 12 44 53 4b HFDCFORMAT...DSK 20 28 02 02 00 00 00 00 00 00 00 00 00 00 00 00 (.............. 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ................ ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ Data CRC = a718 (OK) 037a: Gap 3 (31*e1) 0399: IDAM Track 0, head 0, sector 6, size 256 Header CRC = 639b (OK) 03a3: Gap 2 (22*4e) 03b9: Sync (12*00) 03c5: DDAM 03c9: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 04cb: Gap 3 (20*4e) 04df: Sync (12*00) 04eb: IDAM Track 0, head 0, sector 12, size 256 Header CRC = 8c50 (OK) 04f5: Gap 2 (22*4e) 050b: Sync (12*00) 0517: DDAM 051b: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 061d: Gap 3 (20*4e) 0631: Sync (12*00) 063d: IDAM Track 0, head 0, sector 1, size 256 Header CRC = fa0c (OK) 0647: Gap 2 (36*f0) 066b: DDAM 066f: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ Data CRC = a09a (OK) 0771: Gap 3 (31*14) 0790: IDAM Track 0, head 0, sector 7, size 256 Header CRC = 50aa (OK) 079a: Gap 2 (22*4e) 07b0: Sync (12*00) 07bc: DDAM 07c0: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 08c2: Gap 3 (20*4e) 08d6: Sync (12*00) 08e2: IDAM Track 0, head 0, sector 13, size 256 Header CRC = bf61 (OK) 08ec: Gap 2 (22*4e) 0902: Sync (12*00) 090e: DDAM 0912: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 0a14: Gap 3 (20*4e) 0a28: Sync (12*00) 0a34: IDAM Track 0, head 0, sector 2, size 256 Header CRC = af5f (OK) 0a3e: Gap 2 (22*4e) 0a54: Sync (12*00) 0a60: DDAM 0a64: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 0b66: Gap 3 (20*4e) 0b7a: Sync (12*00) 0b86: IDAM Track 0, head 0, sector 8, size 256 Header CRC = 4094 (OK) 0b90: Gap 2 (22*4e) 0ba6: Sync (12*00) 0bb2: DDAM 0bb6: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 0cb8: Gap 3 (20*4e) 0ccc: Sync (12*00) 0cd8: IDAM Track 0, head 0, sector 14, size 256 Header CRC = ea32 (OK) 0ce2: Gap 2 (22*4e) 0cf8: Sync (12*00) 0d04: DDAM 0d08: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 0e0a: Gap 3 (20*4e) 0e1e: Sync (12*00) 0e2a: IDAM Track 0, head 0, sector 3, size 256 Header CRC = 9c6e (OK) 0e34: Gap 2 (22*4e) 0e4a: Sync (12*00) 0e56: DDAM 0e5a: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 0f5c: Gap 3 (20*4e) 0f70: Sync (12*00) 0f7c: IDAM Track 0, head 0, sector 9, size 256 Header CRC = 73a5 (OK) 0f86: Gap 2 (22*4e) 0f9c: Sync (12*00) 0fa8: DDAM 0fac: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 10ae: Gap 3 (20*4e) 10c2: Sync (12*00) 10ce: IDAM Track 0, head 0, sector 15, size 256 Header CRC = d903 (OK) 10d8: Gap 2 (22*4e) 10ee: Sync (12*00) 10fa: DDAM 10fe: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 1200: Gap 3 (20*4e) 1214: Sync (12*00) 1220: IDAM Track 0, head 0, sector 4, size 256 Header CRC = 05f9 (OK) 122a: Gap 2 (22*4e) 1240: Sync (12*00) 124c: DDAM 1250: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 1352: Gap 3 (20*4e) 1366: Sync (12*00) 1372: IDAM Track 0, head 0, sector 10, size 256 Header CRC = 26f6 (OK) 137c: Gap 2 (22*4e) 1392: Sync (12*00) 139e: DDAM 13a2: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 14a4: Gap 3 (20*4e) 14b8: Sync (12*00) 14c4: IDAM Track 0, head 0, sector 16, size 256 Header CRC = ca4e (OK) 14ce: Gap 2 (22*4e) 14e4: Sync (12*00) 14f0: DDAM 14f4: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 15f6: Gap 3 (20*4e) 160a: Sync (12*00) 1616: IDAM Track 0, head 0, sector 5, size 256 Header CRC = 36c8 (OK) 1620: Gap 2 (22*4e) 1636: Sync (12*00) 1642: DDAM 1646: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ Data CRC = 399f (OK) 1748: Gap 3 (20*4e) 175c: Sync (12*00) 1768: IDAM Track 0, head 0, sector 11, size 256 Header CRC = 15c7 (OK) 1772: Gap 2 (22*4e) 1788: Sync (12*00) 1794: DDAM 1798: e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 ................ e5 e5 e5 e5 e5 e5 e5 e5 e5 e5 .......... 1 Quote Link to comment Share on other sites More sharing options...
Jeff_HxC2001 Posted May 12, 2018 Share Posted May 12, 2018 Here are Beery's Kyroflux images and converted HFE files for the HFDC formatted floppy. I've also attached how track 0 (side 0 and 1) look in the HxC track explorer view. Side 0 has 17 sectors in it, and side 1 looks a wee bit strange. Jeff will have to chime in. I have fixed the KF Stream loader. this one was broken since a month. The dump is fine : But the bitrate is not quite 250000. 7.6us instead of 8us. And the lower part at 4us show something that look like an write compensation effect. unless the flux reversals on the disk are migrating... 2 Quote Link to comment Share on other sites More sharing options...
+acadiel Posted May 14, 2018 Share Posted May 14, 2018 I have fixed the KF Stream loader. this one was broken since a month. The dump is fine : But the bitrate is not quite 250000. 7.6us instead of 8us. And the lower part at 4us show something that look like an write compensation effect. unless the flux reversals on the disk are migrating... The disk image above is a freshly written image; it only went through the postal system first before I read it with the Kyroflux. :-) Quote Link to comment Share on other sites More sharing options...
+9640News Posted May 15, 2018 Share Posted May 15, 2018 OK, after all this. Does any of the information learned explain why a Myarc HFDC can not format successfully a Hxc Lotharek DS/DD disk image? Did the Myarc Eprom DSR have a bug that impacts formatting an image file? On the last note, did anyone ever have the source code for the Myarc HFDC eprom? I know we have the source for MDM5, but what about the source for the eprom? Beery Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted May 15, 2018 Share Posted May 15, 2018 What do you have the disk configured as on the hfdc? Sent from my LG-H872 using Tapatalk Quote Link to comment Share on other sites More sharing options...
+9640News Posted May 15, 2018 Share Posted May 15, 2018 As a DS/DD diskette. The Kyroflux details Jon posted are from my diskette. I'm wondering if what Michael learned about the mixup in bits is potentially the cause for the Lotharek image not being able to be formatted. Or, if there was something else at issue. Beery Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted May 15, 2018 Share Posted May 15, 2018 OK, after all this. Does any of the information learned explain why a Myarc HFDC can not format successfully a Hxc Lotharek DS/DD disk image? Did the Myarc Eprom DSR have a bug that impacts formatting an image file? On the last note, did anyone ever have the source code for the Myarc HFDC eprom? I know we have the source for MDM5, but what about the source for the eprom? Beery Source is available to the HFDC eprom though it might be version 12 which introduced a bug in some of the cluster calculations. That wouldn't matter for your formatting endeavor and I believe the format code is relatively self contained. Quote Link to comment Share on other sites More sharing options...
+9640News Posted May 15, 2018 Share Posted May 15, 2018 Source is available to the HFDC eprom though it might be version 12 which introduced a bug in some of the cluster calculations. That wouldn't matter for your formatting endeavor and I believe the format code is relatively self contained. Is the source on whtech? I looked a week or so ago, and did not see it. Beery Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted May 15, 2018 Share Posted May 15, 2018 Is the source on whtech? I looked a week or so ago, and did not see it. Beery It used to be out there as a disk image. whtech could use a cleanup and imho, a structure that doesn't follow image types and emulators as a primary means of categorization. But I digress. I'll hunt it down for you. Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted May 16, 2018 Share Posted May 16, 2018 Is the source on whtech? I looked a week or so ago, and did not see it. Beery The attached source should be for V12 if the file "H12EPRMFIX" refers to the files on this disk image. The message originated on GEnie - maybe you have it in your archives? There is a noted problem with both the cluster allocations and floppy formatting, the latter may or may no be related to this thread... Press <RETURN>? GEnie MAI L Page 200 GE Ma il 1. Display Queue of GE Mail Letters 2. Read (List) GE Mail 3. Read (List) All Letters in your Ma ilbox 4. Read (List) Letters From Specific User 5. Read (List) Letters From Specific Date 6. Compose and Send GE Mail Online 7. Upload a Text Letter 8. Search GE Mail Directory 9. GE Mail Command Mode 10. About GE Mail 11. Send (Upload) Attached Files 12. Receive (Download) Attached Files 13. Change GE Mail Directory Status Enter #, <P>revious, or <H>elp? 5 This allows you to list your mail since a specific date. Please enter a date in YYMMDD format, or hit <RETURN> to ret urn to the menu. Enter date (YYMMDD)? 940116 No letters waiting Item forwarded by BW.MILLER to T.TE SCH1 Item 7781293 94/01/16 22:04 From: BW.MILLER Beery W. Miller To: BW.MILLER Beery W. Miller BRADSNYDER@DELPHI.COM@INET# Internet Gateway Sub: HFDC Bug Brad, a user left me a message regarding the HFDC bug that he found in V12 of the eprom. The fix and description i s below: GEmail Item 0545699 94/01/1 6 19:56 From: GEOFF_TROTT@UOW.EDU.AU@INTERNET# To: BW.MILLER Beery W. Miller Sub: HFDCC fix From geoff_trott@uow.edu.au Mon Jan 17 0 0:34:32 1994 Received: from wyrm.cc.uow.edu.au by re lay2.geis.com with SMTP (1.37.109.4/15.6) id AA18745; Mon, 17 J an 94 00:34:32 GMT Return-Path: <geoff_trott@uow.edu.au> Received: from ms-gw.uow.edu.au (ms-gw. uow.edu.au [130.130.68.33]) by wyrm.cc. uow.edu.au (8.6.4/8.6.4) with SMTP id L AA02412 for <bw.miller@genie.geis.com>; Mon, 17 Jan 1994 11:34:26 +1100 Message-Id: <199401170034.LAA02412@wyrm .cc.uow.edu.au> Date: 17 Jan 1994 11:32:53 U From: "Geoff Trott" <geoff_trott@uow.ed u.au> Subject: HFDCC fix To: "Beery Miller" <bw.miller@genie.gei s.com> Myarc Hard and Floppy Disk Controller Card Bug by Geoff Trott I identified a bug in the HFDCC DSR in its handling of fractured files on floppy disks some time ago. Itried to find the problem by disassembling the DSR ROMs and examining the code but this was always going to be a long job. In the meantime, Rolf and I sent some money to Beery Miller to help with his buy out of the software from Myarc and asked him if there were the sources for the HFDCC. In due time he sent three disks, one of which contained the desired sources. A fter a bit of work, I managed to assemble a version which agreed with the contents of my EPROM (version 12) and then started to look for likely spots for the bug, with the benefit of names and comments. I found the problem rather quickly in the first page of the DSR. The way Myarc did the HFDCC, was to have addresses >4000 to >4FBF for the DSR (just less than 4 Kby tes), >4FC0 to >4FFF for memory mapped I/O, and >5000 to >5FFF for paged RAM in the DSR address space. The DSR code is 16 Kbytes large and so is made up of four 4 Kbyte pages and resides in a 27128 EPROM. In the first page, there are routines for deleting files. As part of these, the routines must read the file control block (FCB) and identify the sectors that are in use by the file. If the file is fragmented, they must pick out the correct sectors to be freed in the bitmap in sector 0 (the vo lume information block). When a file is re-written, as in the editor, it must do this by first deleting the file and then writin g the file to the sectors which are freed up in the bitmap by the delete process. If the wrong sectors are freed in the delete process, real problems arise with fragmented files, as data is written into sectors which are still in use by other files ( the reason files are fragmented in the first place is because there are other files in the way). This is where the problemwas. In fact there were two problems and its behaviour was far worse than I had originally thought. The fix was quite easy and I will show you with the actual code extract below. (This is located in a file called WIND3/S on the disk I received, near the end of the file.) ATTOP MOV @@FNLOCF(R3),@@STRTSR saveptr to first FCB ATTOP1 MOV R9,R6 get ptr inR6 ABS @@WDSFIL JEQ ATTOP2 BLWP @@GETVIB JEQ FRSER0 error AI R6,CLUSTR R6 containsaddress of byte CLR R10 R10 is thesize to date LI R5,76 76 clusters maximum FNTPR1 MOVB *R6+,R1 get firsttwo nibbles SWPB R1 MOVB *R6+,R1 put thirdnibble in front MOVB R1,R2 save first nibble of number ANDI R1,>0FFF get AU number <..missing information - probably during a log save to disk..> lar when doing a backup with DM5. It isa bit slow for single density disks, but they are smaller in size anyway. This was changed by changing a byte in the programmer's memory at >2088 from >04 to >07. It is interesting that page 1 uses addresses >2000 to >2FFF in the EPROM while page 2 uses addresses >1000 to >1FFF. A mixup between software and hardware, I guess. When programmed and put in the card, the new DSR worked as well as I wanted, handling fractured files correctly and formatting with the desired interlace. I realise that not many of our members have Myarc Hard and Floppy Disk Controller Cards but I hope they have found something of inter est in the explanation. For those that do have HFDCCs and would like a copy of the new EPROM (version 13), if they can get a blank EPROM (27C128 or27C256) to me at the next meeting or by mail I will be able to program it for them. I will be sending this to Beery Miller for him to distribute for others and the sa me conditions will hold for people overseas, except I will expe ct something to cover the cost of the postage. hfdceprm.dsk 2 Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted May 16, 2018 Share Posted May 16, 2018 (I missed my edit window. Doh! This issue probably deserves a new thread if anyone pursues it) Edit: I reviewed the full routine Geoff references. At first glance it seems that deleting (which also happens during some saves) will almost always free the wrong sectors, resulting in file corruption when the HFDC is used in a TI system. My H11 and H14 dumps seem to have this same code, so another set of eyes and/or testing would be helpful as I find it strange the issue hasn't been more prevalent. Maybe there are fixed variants out there? I don't know... * added comments 5-16-2018 CLR R10 LI R5,76 *max clusters per FDR FNTPR1 MOVB *R6+,R1 *get starting sector from cluster nibbles SWPB R1 MOVB *R6+,R1 MOVB R1,R2 ANDI R1,>0FFF *mask (note: maximum sector # 4095; no high density support) JEQ DONCLS SWPB R2 MOVB *R6+,R2 *get the highest logical sector offset (sector count) from the other nibbles SRL R2,4 *shift (and mask) to >0fff * * The next two lines of code reference R10. The DSR clears R10 before entering the cluster loop. * FRBITM uses R1 as the starting sector number, and R2 as the count. So do we need to remove the * next two lines? * FNTPR2 S R10,R2 ** error? MOV R2,R10 ** error? BLWP @FRBITM DEC R5 JNE FNTPR1 * NOW FREE UP THE FDR SECTOR ITSELF IF DELETE 1 Quote Link to comment Share on other sites More sharing options...
+9640News Posted May 16, 2018 Share Posted May 16, 2018 Wow, 24 years ago when those comments were written. I have no recollection of those details. With just about everything on the Geneve in the master DSR, it would have really only been an issue on the TI-99/4A. Beery Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted May 16, 2018 Share Posted May 16, 2018 Wow, 24 years ago when those comments were written. I have no recollection of those details. With just about everything on the Geneve in the master DSR, it would have really only been an issue on the TI-99/4A. Beery Yea, I think I confirmed this is an issue by using the same test I wrote for the HFDC cluster allocation problem testing. Once fractures are introduced, the DSR will free incorrect sectors from the bitmap. I deleted one of the two 'intertwined' files from my test, and then rewrote the file and the 2nd got corrupted. The MDOS DSR did not appear to exhibit this problem. There also seems to be a calculation error in that the first cluster's total sector count is one less than it should be. More research is needed. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.