davidgiven / fluxengine

PSOC5 floppy disk imaging interface
MIT License
354 stars 68 forks source link

Kaypro II 200K SS/DD Profile - Need help. #300

Open ldkraemer opened 3 years ago

ldkraemer commented 3 years ago

I have created two Kaypro Profiles for the SS/DD & DS/DD Kaypro's Kaypro-readables.zip

I can use these as well as the IBM profile, and get the same results for the data.

$ ./fluxengine read ibm --heads.step=1 --decoder.ibm.sector_id_base=0 --decoder.ibm.required_sectors=0-9 -c 0-39 -h 0 -s drive:1 -o mykpiiboot.img --copy-flux-to mykpiiboot.flux > mykpiiboot.log

$ ./fluxengine read kayii_525 -s drive:1 -o mykpiitst1.img --copy-flux-to mykpiitst1.flux > mykpiitst1.log

My log file is: Measuring rotational speed... 203ms 0.0: 243.098 ms in 67904 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 0.0; 5120 bytes decoded. 1.0: 242.853 ms in 65984 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 1.0; 5120 bytes decoded. 2.0: 242.963 ms in 68416 bytes 26 records, 13 sectors; 2.03us clock (493kHz); logical track 2.0; 5120 bytes decoded. 3.0: 242.934 ms in 68288 bytes 24 records, 12 sectors; 2.02us clock (496kHz); logical track 3.0; 5120 bytes decoded. 4.0: 242.869 ms in 68544 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 4.0; 5120 bytes decoded. 5.0: 242.947 ms in 68672 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 5.0; 5120 bytes decoded. 6.0: 243.189 ms in 68992 bytes 22 records, 11 sectors; 2.01us clock (498kHz); logical track 6.0; 5120 bytes decoded. 7.0: 242.967 ms in 68352 bytes 24 records, 12 sectors; 2.02us clock (496kHz); logical track 7.0; 5120 bytes decoded. 8.0: 243.048 ms in 68608 bytes 24 records, 12 sectors; 2.03us clock (493kHz); logical track 8.0; 5120 bytes decoded. 9.0: 243.161 ms in 66368 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 9.0; 5120 bytes decoded. 10.0: 242.776 ms in 68672 bytes 25 records, 12 sectors; 2.01us clock (497kHz); logical track 10.0; 5120 bytes decoded. 11.0: 242.806 ms in 68288 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 11.0; 5120 bytes decoded. 12.0: 242.728 ms in 68864 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 12.0; 5120 bytes decoded. 13.0: 242.72 ms in 68416 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 13.0; 5120 bytes decoded. 14.0: 242.662 ms in 68928 bytes 24 records, 12 sectors; 2.03us clock (493kHz); logical track 14.0; 5120 bytes decoded. 15.0: 242.737 ms in 68288 bytes 27 records, 12 sectors; 2.01us clock (496kHz); logical track 15.0; 5120 bytes decoded. 16.0: 242.699 ms in 68096 bytes 24 records, 12 sectors; 2.00us clock (500kHz); logical track 16.0; 5120 bytes decoded. 17.0: 242.789 ms in 68288 bytes 24 records, 12 sectors; 2.02us clock (495kHz); logical track 17.0; 5120 bytes decoded. 18.0: 242.851 ms in 68736 bytes 22 records, 11 sectors; 2.01us clock (497kHz); logical track 18.0; 5120 bytes decoded. 19.0: 242.795 ms in 68544 bytes 24 records, 12 sectors; 2.01us clock (498kHz); logical track 19.0; 5120 bytes decoded. 20.0: 242.884 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (496kHz); logical track 20.0; 5120 bytes decoded. 21.0: 242.863 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (498kHz); logical track 21.0; 5120 bytes decoded. 22.0: 242.883 ms in 68416 bytes 24 records, 12 sectors; 2.00us clock (500kHz); logical track 22.0; 5120 bytes decoded. 23.0: 242.961 ms in 68480 bytes 24 records, 12 sectors; 2.01us clock (496kHz); logical track 23.0; 5120 bytes decoded. 24.0: 242.969 ms in 68480 bytes 24 records, 12 sectors; 2.01us clock (498kHz); logical track 24.0; 5120 bytes decoded. 25.0: 242.941 ms in 68672 bytes 22 records, 11 sectors; 2.01us clock (496kHz); logical track 25.0; 5120 bytes decoded. 26.0: 242.979 ms in 68480 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 26.0; 5120 bytes decoded. 27.0: 242.981 ms in 68480 bytes 24 records, 12 sectors; 2.00us clock (500kHz); logical track 27.0; 5120 bytes decoded. 28.0: 242.917 ms in 68416 bytes 24 records, 12 sectors; 2.02us clock (496kHz); logical track 28.0; 5120 bytes decoded. 29.0: 242.959 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (499kHz); logical track 29.0; 5120 bytes decoded. 30.0: 242.993 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 30.0; 5120 bytes decoded. 31.0: 243.029 ms in 68736 bytes 22 records, 11 sectors; 2.01us clock (497kHz); logical track 31.0; 5120 bytes decoded. 32.0: 242.883 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 32.0; 5120 bytes decoded. 33.0: 242.86 ms in 68544 bytes 24 records, 12 sectors; 2.00us clock (500kHz); logical track 33.0; 5120 bytes decoded. 34.0: 242.836 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (499kHz); logical track 34.0; 5120 bytes decoded. 35.0: 242.973 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 35.0; 5120 bytes decoded. 36.0: 242.824 ms in 68416 bytes 24 records, 12 sectors; 2.01us clock (498kHz); logical track 36.0; 5120 bytes decoded. 37.0: 243.031 ms in 68800 bytes 24 records, 12 sectors; 2.01us clock (498kHz); logical track 37.0; 5120 bytes decoded. 38.0: 243 ms in 68480 bytes 24 records, 12 sectors; 2.01us clock (497kHz); logical track 38.0; 5120 bytes decoded. 39.0: 242.817 ms in 68416 bytes 24 records, 12 sectors; 2.00us clock (500kHz); logical track 39.0; 5120 bytes decoded. Tracks -> 1 2 3
H.SS 0123456789012345678901234567890123456789

  1. 0 ........................................
  2. 1 ........................................
  3. 2 ........................................
  4. 3 ........................................
  5. 4 ........................................
  6. 5 ........................................
  7. 6 ........................................
  8. 7 ........................................
  9. 8 ........................................
  10. 9 ........................................ Good sectors: 400/400 (100%) Missing sectors: 0/400 (0%) Bad sectors: 0/400 (0%) wrote 40 tracks, 1 sides, 200 kB total

The problem I an seeing is the CP/M directory is supposed to be located at 0x2800 and there are no directory entries in the IMG file. There are NO directory entries anywhere in the IMG file.

00002800 01 0E 06 1E FF CD 05 00 FE 00 28 F5 FE 1B CA B6 ..........(..... 00002810 01 FE 0A 20 EC C3 D2 0C 0E 06 1E FF CD 05 00 FE ... ............ 00002820 00 28 F5 FE 1B 20 05 E1 2A 2C 13 E9 FE 0A 20 08 .(... ..*,.... . 00002830 3A 61 02 3C 32 61 02 C9 FE 0D 20 DC 3A 61 02 87 :a.<2a.... .:a.. 00002840 11 00 00 5F 21 51 0D 19 5E 23 56 EB ED 5B 25 13 ..._!Q..^#V..[%. 00002850 E9 59 0D 69 0D 77 0D 81 0D 1A CB 8F CB C7 12 21 .Y.i.w.........! 00002860 E9 0C 3E 02 32 61 02 D1 E9 1A CB 87 CB 8F 12 3A ..>.2a.........: 00002870 61 02 3C 32 61 02 C9 1A CB B7 CB FF 12 21 FB 0C a.<2a........!.. 00002880 E9 1A CB BF CB B7 12 C9 C3 B7 0C 1A 0D 0A 0D 0A ................ 00002890 09 44 65 66 61 75 6C 74 20 73 65 74 74 69 6E 67 .Default setting 000028A0 73 09 50 6F 73 69 62 69 6C 65 20 63 68 61 6E 67 s.Posibile chang 000028B0 65 73 0D 0A 09 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D es...----------- 000028C0 2D 2D 2D 2D 2D 09 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D -----.---------- 000028D0 2D 2D 2D 2D 2D 2D 0D 0A 0D 0A 09 43 4F 4E 3A 3D ------.....CON:= 000028E0 43 52 54 3A 09 09 43 4F 4E 3A 3D 54 54 59 3A 09 CRT:..CON:=TTY:. 000028F0 54 79 70 65 20 74 68 65 20 5B 4C 49 4E 45 20 46 Type the [LINE F

Here is a .RAW file of my KAYPRO II Boot Image that was converted to .RAW (Sector Dump)

00002800 00 41 53 4D 20 20 20 20 20 43 4F 4D 00 00 00 40 .ASM COM...@ 00002810 04 05 06 07 08 09 0A 0B 00 00 00 00 00 00 00 00 ................ 00002820 00 43 4F 4E 46 49 47 38 33 43 4F 4D 00 00 00 3E .CONFIG83COM...> 00002830 0C 0D 0E 0F 10 11 12 13 00 00 00 00 00 00 00 00 ................ 00002840 00 43 50 59 20 20 20 20 20 43 4F 4D 00 00 00 19 .CPY COM.... 00002850 14 15 16 17 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00002860 00 43 55 52 53 4F 52 20 20 43 4F 4D 00 00 00 05 .CURSOR COM.... 00002870 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00002880 00 44 20 20 20 20 20 20 20 43 4F 4D 00 00 00 18 .D COM.... 00002890 19 1A 1B 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 000028A0 00 44 44 54 20 20 20 20 20 43 4F 4D 00 00 00 26 .DDT COM...& 000028B0 1C 1D 1E 1F 20 00 00 00 00 00 00 00 00 00 00 00 .... ........... 000028C0 00 44 49 53 4B 34 54 53 54 43 4F 4D 00 00 00 15 .DISK4TSTCOM.... 000028D0 21 22 23 00 00 00 00 00 00 00 00 00 00 00 00 00 !"#............. 000028E0 00 44 55 4D 50 20 20 20 20 43 4F 4D 00 00 00 04 .DUMP COM.... 000028F0 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 $............... 00002900 00 45 44 20 20 20 20 20 20 43 4F 4D 00 00 00 34 .ED COM...4 00002910 25 26 27 28 29 2A 2B 00 00 00 00 00 00 00 00 00 %&'()*+.........

The Kaypro II Definitions are: BEGIN KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10 DENSITY MFM LOW CYLINDERS 40 SIDES 1 SECTORS 10 512 SKEW 4 SIDE1 0 0,1,2,3,4,5,6,7,8,9 BSH 3 BLM 7 EXM 0 DSM 194 DRM 63 AL0 0F0H AL1 0 OFS 1 END

; KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10 diskdef kay1 seclen 512 tracks 40 sectrk 10 secbase 0 blocksize 1024 maxdir 64 dirblks 2 skew 1 boottrk 1 os 2.2 end

; libdsk data below [kay1] description = KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10 cylinders = 40 heads = 1 secsize = 512 sectors = 10 secbase = 0 datarate = DD

Attached are the .SCP and .RAW images that were created with a Supercard Pro (.SCP) and SAMDisk (.RAW).

mykpiiboot.zip

I have created the Kaypro Write Profiles, but don't know enough to get them functional. Images written with the IBM180_525 do not boot. ( I am needing 512 bytes times 10 sectors)

Kaypro-writables.zip

Will you have a look at the problem I am having, and correct the writables, so I can write a floppy that boots with the development version.

Thanks.

Larry

ldkraemer commented 3 years ago

I tested creating an IMG (.RAW) file from the mykpiiboot1.scp file with the following:

$ ./fluxengine read kayii_525 -s mykpiiboot1.scp -o kaypro2tst.img > kaypro2tst.log

Listing of kaypro2tst.log:

SCP tracks 0-39, heads 0-1 SCP sample resolution: 25 ns 0.0: 200.868 ms in 56606 bytes 20 records, 10 sectors; 2.01us clock (498kHz); logical track 0.0; 5120 bytes decoded. 1.0: 200.899 ms in 55201 bytes 20 records, 10 sectors; 2.01us clock (497kHz); logical track 1.0; 5120 bytes decoded. 2.0: 200.906 ms in 54953 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 2.0; 5120 bytes decoded. 3.0: 201.047 ms in 57127 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 3.0; 5120 bytes decoded. 4.0: 201.048 ms in 57096 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 4.0; 5120 bytes decoded. 5.0: 201.042 ms in 57267 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 5.0; 5120 bytes decoded. 6.0: 201.012 ms in 57098 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 6.0; 5120 bytes decoded. 7.0: 201.008 ms in 57205 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 7.0; 5120 bytes decoded. 8.0: 200.97 ms in 57343 bytes 20 records, 10 sectors; 2.02us clock (494kHz); logical track 8.0; 5120 bytes decoded. 9.0: 201.018 ms in 57369 bytes 20 records, 10 sectors; 2.03us clock (493kHz); logical track 9.0; 5120 bytes decoded. 10.0: 201.067 ms in 57745 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 10.0; 5120 bytes decoded. 11.0: 201.085 ms in 57055 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 11.0; 5120 bytes decoded. 12.0: 201.021 ms in 56677 bytes 20 records, 10 sectors; 2.01us clock (497kHz); logical track 12.0; 5120 bytes decoded. 13.0: 201.046 ms in 56989 bytes 20 records, 10 sectors; 2.01us clock (497kHz); logical track 13.0; 5120 bytes decoded. 14.0: 201.114 ms in 57270 bytes 20 records, 10 sectors; 2.01us clock (498kHz); logical track 14.0; 5120 bytes decoded. 15.0: 201.106 ms in 57204 bytes 20 records, 10 sectors; 2.01us clock (497kHz); logical track 15.0; 5120 bytes decoded. 16.0: 200.971 ms in 55449 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 16.0; 5120 bytes decoded. 17.0: 201.091 ms in 56777 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 17.0; 5120 bytes decoded. 18.0: 201.08 ms in 57099 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 18.0; 5120 bytes decoded. 19.0: 201.119 ms in 57514 bytes 20 records, 10 sectors; 2.03us clock (493kHz); logical track 19.0; 5120 bytes decoded. 20.0: 201.051 ms in 57027 bytes 20 records, 10 sectors; 2.02us clock (494kHz); logical track 20.0; 5120 bytes decoded. 21.0: 201.12 ms in 57035 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 21.0; 5120 bytes decoded. 22.0: 201.108 ms in 57308 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 22.0; 5120 bytes decoded. 23.0: 201.167 ms in 57194 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 23.0; 5120 bytes decoded. 24.0: 201.15 ms in 57117 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 24.0; 5120 bytes decoded. 25.0: 201.052 ms in 56595 bytes 20 records, 10 sectors; 2.01us clock (496kHz); logical track 25.0; 5120 bytes decoded. 26.0: 201.181 ms in 57641 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 26.0; 5120 bytes decoded. 27.0: 201.149 ms in 57217 bytes 20 records, 10 sectors; 2.02us clock (495kHz); logical track 27.0; 5120 bytes decoded. 28.0: 201.134 ms in 57122 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 28.0; 5120 bytes decoded. 29.0: 201.098 ms in 56797 bytes 20 records, 10 sectors; 2.02us clock (496kHz); logical track 29.0; 5120 bytes decoded. 30.0: 201.096 ms in 57336 bytes 20 records, 10 sectors; 2.01us clock (498kHz); logical track 30.0; 5120 bytes decoded. 31.0: 201.051 ms in 57095 bytes 20 records, 10 sectors; 2.00us clock (500kHz); logical track 31.0; 5120 bytes decoded. 32.0: 201.019 ms in 56822 bytes 20 records, 10 sectors; 2.03us clock (493kHz); logical track 32.0; 5120 bytes decoded. 33.0: 201.058 ms in 57072 bytes 20 records, 10 sectors; 2.01us clock (497kHz); logical track 33.0; 5120 bytes decoded. 34.0: 201 ms in 57173 bytes 20 records, 10 sectors; 2.01us clock (499kHz); logical track 34.0; 5120 bytes decoded. 35.0: 201.016 ms in 57187 bytes 20 records, 10 sectors; 2.00us clock (501kHz); logical track 35.0; 5120 bytes decoded. 36.0: 201.083 ms in 57147 bytes 20 records, 10 sectors; 2.00us clock (499kHz); logical track 36.0; 5120 bytes decoded. 37.0: 200.959 ms in 57254 bytes 20 records, 10 sectors; 2.01us clock (498kHz); logical track 37.0; 5120 bytes decoded. 38.0: 201.028 ms in 57134 bytes 20 records, 10 sectors; 2.01us clock (498kHz); logical track 38.0; 5120 bytes decoded. 39.0: 201.028 ms in 57175 bytes 20 records, 10 sectors; 2.00us clock (499kHz); logical track 39.0; 5120 bytes decoded. Tracks -> 1 2 3
H.SS 0123456789012345678901234567890123456789

  1. 0 ........................................
  2. 1 ........................................
  3. 2 ........................................
  4. 3 ........................................
  5. 4 ........................................
  6. 5 ........................................
  7. 6 ........................................
  8. 7 ........................................
  9. 8 ........................................
  10. 9 ........................................ Good sectors: 400/400 (100%) Missing sectors: 0/400 (0%) Bad sectors: 0/400 (0%) wrote 40 tracks, 1 sides, 200 kB total

For kaypro2tst.img the Directory is located at 0x1400

00001400 00 41 53 4D 20 20 20 20 20 43 4F 4D 00 00 00 40 .ASM COM...@ 00001410 04 05 06 07 08 09 0A 0B 00 00 00 00 00 00 00 00 ................ 00001420 00 43 4F 4E 46 49 47 38 33 43 4F 4D 00 00 00 3E .CONFIG83COM...> 00001430 0C 0D 0E 0F 10 11 12 13 00 00 00 00 00 00 00 00 ................ 00001440 00 43 50 59 20 20 20 20 20 43 4F 4D 00 00 00 19 .CPY COM.... 00001450 14 15 16 17 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00001460 00 43 55 52 53 4F 52 20 20 43 4F 4D 00 00 00 05 .CURSOR COM.... 00001470 18 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00001480 00 44 20 20 20 20 20 20 20 43 4F 4D 00 00 00 18 .D COM.... 00001490 19 1A 1B 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 000014A0 00 44 44 54 20 20 20 20 20 43 4F 4D 00 00 00 26 .DDT COM...& 000014B0 1C 1D 1E 1F 20 00 00 00 00 00 00 00 00 00 00 00 .... ........... 000014C0 00 44 49 53 4B 34 54 53 54 43 4F 4D 00 00 00 15 .DISK4TSTCOM.... 000014D0 21 22 23 00 00 00 00 00 00 00 00 00 00 00 00 00 !"#............. 000014E0 00 44 55 4D 50 20 20 20 20 43 4F 4D 00 00 00 04 .DUMP COM.... 000014F0 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 $............... 00001500 00 45 44 20 20 20 20 20 20 43 4F 4D 00 00 00 34 .ED COM...4 00001510 25 26 27 28 29 2A 2B 00 00 00 00 00 00 00 00 00 %&'()*+......... 00001520 00 46 49 4C 54 45 52 20 20 41 53 4D 00 00 00 33 .FILTER ASM...3 00001530 2C 2D 2E 2F 30 31 32 00 00 00 00 00 00 00 00 00 ,-./012.........

And that all looks sane, except the Directory is now shown at 0x1400.

Larry

davidgiven commented 3 years ago

I'll admit, that does look strange. It looks like a good read. I believe the Kaypro II didn't use CP/M sector skew so there shouldn't be any problems there.

Just to confirm your workflow: this is a disk created on a real Kaypro II, then read on a 40-track drive on a PC?

ldkraemer commented 3 years ago

David, Yes, I booted my Kaypro II and used the program named "CPY" to Format a 204.8K SS/DD Floppy, Then, used the "EXIT" menu selection to reboot the Original floppy. I then used "SYSGEN" to install the system tracks from Floppy in A: to the newly formatted floppy, that was inserted in A:. From that point I booted again from A:, with B: containing the SS/DD Floppy that was just written with the system tracks, I used PIP to copy all files from A: to B: PIP B:=A:.[OV]

When all files were copied I used my HP Laptop to read the Kaypro II SS/DD Boot Floppy with a Supercard Pro that was connected to a single Mitsubishi 4851 DS/DD 360K Floppy Drive. I used SAMDDISK to create the .RAW (Sector Dump) and both those file are zipped inside the mykpiiboot.zip that was previously attached.

I executed SAMDISK (by Simon Owen) in Linux (Debian 9.x - 64 Bit) using the wine command for the proper Windows environment. $ wine SAMdisk mykpiiboot1.scp mykpiiboot1.raw

The mykpiiboot1.raw as shown by the HxC Software is attached:

mykpiiboot1

I forgot to include the Kaypro 4 & 10 Floppy CP/M Definitions. They are below.

BEGIN KAY2 Kaypro 2X/4/10 - DSDD 48 tpi 5.25" - 512 x 10 DENSITY MFM LOW CYLINDERS 40 SIDES 2 SECTORS 10 512 SKEW 4 SIDE1 0 0,1,2,3,4,5,6,7,8,9 SIDE2 0 10,11,12,13,14,15,16,17,18,19 ORDER SIDES BSH 4 BLM 15 EXM 1 DSM 196 DRM 63 AL0 0C0H AL1 0 OFS 1 END

; KAY2 Kaypro 2X/4/10 - DSDD 48 tpi 5.25" - 512 x 10 diskdef kay2 seclen 512 tracks 40 sectrk 20 secbase 0 blocksize 2048 maxdir 64 dirblks 2 skew 1 offset 5120 boottrk 0 os 2.2 end

; libdsk data below [kay2] description = KAY2 Kaypro 2X/4/10 - DSDD 48 tpi 5.25" - 512 x 10 sides = extsurface cylinders = 80 heads = 2 secsize = 512 sectors = 10 secbase = 0 datarate = DD

I know the Kaypro-Writables are incorrect, but included them for you to use as a starting point. The Kaypro 4 & 10 will be using Sectors 0-9 for Side 0 and Sectors 10-19 on Side 1.

Thanks.

Larry

ldkraemer commented 3 years ago

David, I know you won't believe this, but I tried writing the mykpiiboot.raw from the mykpiiboot.zip to a couple floppy's and they did not boot on my Kaypro. I used the exact same hardware I used to create the file(s). So, I went back through the same process and I now have one that boots correctly. I have attached it, so you have one that I know 100% boots.

I've enen used vbindiff to check for differences in the .img (.raw) files, and the compare as identical.

kpiibootscp.zip

I've double checked my configuration and the only thing I need is the "track_length_ms: xxx, Sector skew, and what the proper clock_rate_khz: should be.

[code] $ ./fluxengine write kayii_525 -i kpiibootscp.img -d drive:1 --config input { image { filename: "kpiibootscp.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } } output { flux { drive { drive: 1 } } } encoder { ibm { trackdata { track_length_ms: 195 clock_rate_khz: 500 sector_skew: "0-9" } } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 200kB 5.25\" 40 track single sided" [/code]

Larry

davidgiven commented 3 years ago

Hello --- sorry for the delay; I've been doing a tonne of work refactoring the sourcebase to allow writes to verify that they've worked properly. That's now done.

I've added a kaypro2 format (both profiles are now combined into a single file); PTAL? It's in the kaypro2 branch.

BTW, the problems you've been having have probably been due to sector_skew, which rather unintuitively should be a list of characters, so for the Kaypro: "0123456789".

ldkraemer commented 3 years ago

David, Glad to try it again. Here is what I am seeing.

at ~/fluxengine-kaypro2/ I type in.......

$ make clean $ make

The previous SCP file I read with Supercard Pro was kpiibootscp.scp I know it is a good file as I can write it to a floppy with Supercard Pro and it boots.

Once the fluxengine code is built I use the following to verify the Kaypro II Configuration:

$ ./fluxengine read ibm -s kpiibootscp.scp -o lktst.img --heads.step=1 --decoder.ibm.sector_id_base=0 --decoder.ibm.required_sectors=0-9 -c 0-39 -h 0 --config

decoder { ibm { sector_id_base: 0 required_sectors { start: 0 end: 9 } } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "PC 3.5\"/5.25\" autodetect double sided format (ro)" image_writer { filename: "lktst.img" img { } } flux_source { scp { filename: "kpiibootscp.scp" } }

The configuration looks good to me, so I create the image

$ ./fluxengine read ibm -s kpiibootscp.scp -o lktst.img --heads.step=1 --decoder.ibm.sector_id_base=0 --decoder.ibm.required_sectors=0-9 -c 0-39 -h 0 > lktst.log

View the log file.

SCP tracks 0-39, heads 0-1 SCP sample resolution: 25 ns 0.0: 201.007 ms in 56625 bytes 20 records, 10 sectors; 2.01us clock (496kHz); 10 distinct sectors; logical track 0.0; 5120 bytes decoded. 1.0: 201.038 ms in 55261 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 1.0; 5120 bytes decoded. 2.0: 201.185 ms in 54943 bytes 20 records, 10 sectors; 2.07us clock (482kHz); 10 distinct sectors; logical track 2.0; 5120 bytes decoded. 3.0: 201.252 ms in 57136 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 3.0; 5120 bytes decoded. 4.0: 201.188 ms in 57098 bytes 20 records, 10 sectors; 2.05us clock (487kHz); 10 distinct sectors; logical track 4.0; 5120 bytes decoded. 5.0: 201.043 ms in 57273 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 5.0; 5120 bytes decoded. 6.0: 201.363 ms in 57103 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 6.0; 5120 bytes decoded. 7.0: 201.149 ms in 57226 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 7.0; 5120 bytes decoded. 8.0: 201.161 ms in 57312 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 8.0; 5120 bytes decoded. 9.0: 201.193 ms in 57399 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 9.0; 5120 bytes decoded. 10.0: 200.957 ms in 57754 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 10.0; 5120 bytes decoded. 11.0: 201.073 ms in 57067 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 11.0; 5120 bytes decoded. 12.0: 200.946 ms in 56684 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 12.0; 5120 bytes decoded. 13.0: 201.256 ms in 56996 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 13.0; 5120 bytes decoded. 14.0: 201.225 ms in 57280 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 14.0; 5120 bytes decoded. 15.0: 201.14 ms in 57206 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 15.0; 5120 bytes decoded. 16.0: 201.238 ms in 55446 bytes 20 records, 10 sectors; 2.08us clock (482kHz); 10 distinct sectors; logical track 16.0; 5120 bytes decoded. 17.0: 201.023 ms in 56787 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 17.0; 5120 bytes decoded. 18.0: 201.085 ms in 57091 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 18.0; 5120 bytes decoded. 19.0: 201.154 ms in 57532 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 19.0; 5120 bytes decoded. 20.0: 201.426 ms in 57019 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 20.0; 5120 bytes decoded. 21.0: 201.125 ms in 57038 bytes 20 records, 10 sectors; 2.04us clock (489kHz); 10 distinct sectors; logical track 21.0; 5120 bytes decoded. 22.0: 201.22 ms in 57303 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 22.0; 5120 bytes decoded. 23.0: 201.101 ms in 57193 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 23.0; 5120 bytes decoded. 24.0: 201.222 ms in 57133 bytes 20 records, 10 sectors; 2.07us clock (483kHz); 10 distinct sectors; logical track 24.0; 5120 bytes decoded. 25.0: 200.974 ms in 56623 bytes 20 records, 10 sectors; 2.03us clock (493kHz); 10 distinct sectors; logical track 25.0; 5120 bytes decoded. 26.0: 201.301 ms in 57637 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 26.0; 5120 bytes decoded. 27.0: 201.068 ms in 57239 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 27.0; 5120 bytes decoded. 28.0: 201.013 ms in 57114 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 28.0; 5120 bytes decoded. 29.0: 201.049 ms in 56837 bytes 20 records, 10 sectors; 2.05us clock (489kHz); 10 distinct sectors; logical track 29.0; 5120 bytes decoded. 30.0: 201.156 ms in 57347 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 30.0; 5120 bytes decoded. 31.0: 200.738 ms in 57093 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 31.0; 5120 bytes decoded. 32.0: 201.001 ms in 56850 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 32.0; 5120 bytes decoded. 33.0: 201.015 ms in 57269 bytes 20 records, 10 sectors; 2.03us clock (492kHz); 10 distinct sectors; logical track 33.0; 5120 bytes decoded. 34.0: 201.342 ms in 57190 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 34.0; 5120 bytes decoded. 35.0: 201.237 ms in 57177 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 35.0; 5120 bytes decoded. 36.0: 201.169 ms in 57185 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 36.0; 5120 bytes decoded. 37.0: 201.331 ms in 57255 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 37.0; 5120 bytes decoded. 38.0: 201.117 ms in 57255 bytes 20 records, 10 sectors; 2.03us clock (493kHz); 10 distinct sectors; logical track 38.0; 5120 bytes decoded. 39.0: 201.004 ms in 57200 bytes 20 records, 10 sectors; 2.01us clock (498kHz); 10 distinct sectors; logical track 39.0; 5120 bytes decoded. Tracks -> 1 2 3 H.SS 0123456789012345678901234567890123456789

  1. 0 ........................................
  2. 1 ........................................
  3. 2 ........................................
  4. 3 ........................................
  5. 4 ........................................
  6. 5 ........................................
  7. 6 ........................................
  8. 7 ........................................
  9. 8 ........................................
  10. 9 ........................................ Good sectors: 400/400 (100%) Missing sectors: 0/400 (0%) Bad sectors: 0/400 (0%) wrote 40 tracks, 1 sides, 200 kB total

It is a good read of the sectors.

I use vbindiff to compare to a previously created image kpiibootscp.img lktst.img These are identical.

I will try to write the floppy, but check the configuration first.

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config

encoder { ibm { trackdata { track_length_ms: 195 clock_rate_khz: 500 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" single-sided 48 tpi" image_writer { filename: "kaypro2.img" <<--------------------------------?????????? I search for this file and it was written img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { } }

This looks good so I write the floppy

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1

I get these messages Measuring rotational speed... 203ms reading 0 tracks, 0 sides, 0 kB total <<-----------------------Doesn't look correct Writing to: drive 1 0.0: Write: erased 1.0: Write: erased 2.0: Write: erased 3.0: Write: erased 4.0: Write: erased 5.0: Write: erased 6.0: Write: erased 7.0: Write: erased 8.0: Write: erased 9.0: Write: erased 10.0: Write: erased 11.0: Write: erased 12.0: Write: erased 13.0: Write: erased 14.0: Write: erased 15.0: Write: erased 16.0: Write: erased 17.0: Write: erased 18.0: Write: erased 19.0: Write: erased 20.0: Write: erased 21.0: Write: erased 22.0: Write: erased 23.0: Write: erased 24.0: Write: erased 25.0: Write: erased 26.0: Write: erased 27.0: Write: erased 28.0: Write: erased 29.0: Write: erased 30.0: Write: erased 31.0: Write: erased 32.0: Write: erased 33.0: Write: erased 34.0: Write: erased 35.0: Write: erased 36.0: Write: erased 37.0: Write: erased 38.0: Write: erased 39.0: Write: erased

Telling me it didn't actually write anything.

@.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ls -alt lktst.img -rw-r--r-- 1 larry larry 204800 Jul 19 20:54 lktst.img

$hexedit lktst.img

00000000 18 FE 00 E0 00 F6 30 00 91 F0 DC 00 9F 00 81 02 ......0......... 00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000070 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000080 C3 05 E1 C3 01 E1 50 00 20 20 20 20 20 20 20 20 ......P. 00000090 20 20 20 20 20 20 20 00 43 4F 50 59 52 49 47 48 .COPYRIGH 000000A0 54 20 28 43 29 20 31 39 37 39 2C 20 44 49 47 49 T (C) 1979, DIGI 000000B0 54 41 4C 20 52 45 53 45 41 52 43 48 20 20 00 00 TAL RESEARCH .. 000000C0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 000000D0 00 00 00 00 00 00 00 00 00 08 E0 17 E0 00 00 00 ................ 000000E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 000000F0 00 00 00 00 00 00 00 43 4F 4D 00 24 24 24 20 20 .......COM.$$$ 00000100 20 20 20 53 55 42 00 00 08 E0 00 00 5F 0E 02 C3 SUB......_... 00000110 05 00 C5 CD 8C E0 C1 C9 3E 0D CD 92 E0 3E 0A C3 ........>....>.. 00000120 92 E0 3E 20 C3 92 E0 C5 CD 98 E0 E1 7E B7 C8 23 ..> ........~..# 00000130 E5 CD 8C E0 E1 C3 AC E0 0E 0D C3 05 16 00 00 44 ...............D 00000140 49 52 20 8D E4 4C 49 53 54 67 E5 54 59 50 45 6B IR ..LISTg.TYPEk 00000150 E5 55 53 45 52 CB E6 44 46 55 20 D5 E6 47 4F 20 .USER..DFU ..GO 00000160 20 E2 E6 45 52 41 20 3E E5 53 41 56 45 04 E6 52 ..ERA

.SAVE..R ....

My file exists, looks sane, and compares IDENTICAL to the kpiibootscp.img.

I also now have another file named kaypro2.img

@.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ls -alt kaypro2.img -rw-r--r-- 1 larry larry 204800 Jun 25 13:34 kaypro2.img

But, nothing written on any Floppy.'s.

I compared kaypro2.img to lktst.img and they are IDENTICAL.

THANKS.

Larry

On Mon, Jul 19, 2021 at 4:32 PM David Given @.***> wrote:

Hello --- sorry for the delay; I've been doing a tonne of work refactoring the sourcebase to allow writes to verify that they've worked properly. That's now done.

I've added a kaypro2 format (both profiles are now combined into a single file); PTAL? It's in the kaypro2 branch.

BTW, the problems you've been having have probably been due to sector_skew, which rather unintuitively should be a list of characters, so for the Kaypro: "0123456789".

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-882875505, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMATKPL2Y2HVQC4JHPG3TYSKVTANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

Hmm. You're using a 300rpm drive, aren't you? That's going to make things a little awkward as I only have a 360rpm drive, which makes all the timings different. The reported clock speed for the read looks way too high, too --- it might be showing 2x the MFM clock.

So I reckon that 250kHz for 200ms is the same as 300kHz for 166ms, but if I do that the data doesn't fit. The default timings (the gaps between the sectors) are for normal PC disks, but as the Kaypro fits an extra sector on each track these need to be shrunk to make space. Possibly the IAM record needs to be omitted too. Do you have any more technical information on the disk format? (I can't find the 22DISK format definition, which should have this data.)

(The blank disk issue was because the image reader hadn't been told the format. I've updated the version in the kaypro2 branch to fix that.)

ldkraemer commented 3 years ago

David, Yes, the 360K Mitsubishi 4851 Floppy drive is 300 RPM ~200ms.

The 22 Disk definition for the Kaypro is:

BEGIN KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10 DENSITY MFM LOW CYLINDERS 40 SIDES 1 SECTORS 10 512 SKEW 4 SIDE1 0 0,1,2,3,4,5,6,7,8,9 BSH 3 BLM 7 EXM 0 DSM 194 DRM 63 AL0 0F0H AL1 0 OFS 1 END

cpmtools

KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10

diskdef kay1 seclen 512 tracks 40 sectrk 10 secbase 0 blocksize 1024 maxdir 64 dirblks 2 skew 1 boottrk 1 os 2.2 end

libdsk definition

[kay1] description = KAY1 Kaypro II/2 - SSDD 48 tpi 5.25" - 512 x 10 cylinders = 40 heads = 1 secsize = 512 sectors = 10 secbase = 0 datarate = DD

Thanks.

Larry

On Tue, Jul 20, 2021 at 4:39 PM David Given @.***> wrote:

Hmm. You're using a 300rpm drive, aren't you? That's going to make things a little awkward as I only have a 360rpm drive, which makes all the timings different. The reported clock speed for the read looks way too high, too --- it might be showing 2x the MFM clock.

So I reckon that 250kHz for 200ms is the same as 300kHz for 166ms, but if I do that the data doesn't fit. The default timings (the gaps between the sectors) are for normal PC disks, but as the Kaypro fits an extra sector on each track these need to be shrunk to make space. Possibly the IAM record needs to be omitted too. Do you have any more technical information on the disk format? (I can't find the 22DISK format definition, which should have this data.)

(The blank disk issue was because the image reader hadn't been told the format. I've updated the version in the kaypro2 branch to fix that.)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-883725788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAQRUJF5764DIQ7H2OTTYXUKNANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, I stil can't get a floppy written.

The SCP file I read with Supercard Pro was kpiibootscp.scp I know it is a good file as I can write it to a floppy with Supercard Pro and it boots.

Once the fluxengine code is built I use the following to verify the Kaypro II Configuration:

$ ./fluxengine read ibm -s kpiibootscp.scp -o lktst.img --heads.step=1 --decoder.ibm.sector_id_base=0 --decoder.ibm.required_sectors=0-9 -c 0-39 -h 0 --config

decoder { ibm { sector_id_base: 0 required_sectors { start: 0 end: 9 } } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "PC 3.5\"/5.25\" autodetect double sided format (ro)" image_writer { filename: "lktst.img" img { } } flux_source { scp { filename: "kpiibootscp.scp" } }

The configuration is good, so I create the image

$ ./fluxengine read ibm -s kpiibootscp.scp -o lktst.img --heads.step=1 --decoder.ibm.sector_id_base=0 --decoder.ibm.required_sectors=0-9 -c 0-39 -h 0 > lktst.log

View the log file.

SCP tracks 0-39, heads 0-1 SCP sample resolution: 25 ns 0.0: 201.007 ms in 56625 bytes 20 records, 10 sectors; 2.01us clock (496kHz); 10 distinct sectors; logical track 0.0; 5120 bytes decoded. 1.0: 201.038 ms in 55261 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 1.0; 5120 bytes decoded. 2.0: 201.185 ms in 54943 bytes 20 records, 10 sectors; 2.07us clock (482kHz); 10 distinct sectors; logical track 2.0; 5120 bytes decoded. 3.0: 201.252 ms in 57136 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 3.0; 5120 bytes decoded. 4.0: 201.188 ms in 57098 bytes 20 records, 10 sectors; 2.05us clock (487kHz); 10 distinct sectors; logical track 4.0; 5120 bytes decoded. 5.0: 201.043 ms in 57273 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 5.0; 5120 bytes decoded. 6.0: 201.363 ms in 57103 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 6.0; 5120 bytes decoded. 7.0: 201.149 ms in 57226 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 7.0; 5120 bytes decoded. 8.0: 201.161 ms in 57312 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 8.0; 5120 bytes decoded. 9.0: 201.193 ms in 57399 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 9.0; 5120 bytes decoded. 10.0: 200.957 ms in 57754 bytes 20 records, 10 sectors; 2.06us clock (486kHz); 10 distinct sectors; logical track 10.0; 5120 bytes decoded. 11.0: 201.073 ms in 57067 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 11.0; 5120 bytes decoded. 12.0: 200.946 ms in 56684 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 12.0; 5120 bytes decoded. 13.0: 201.256 ms in 56996 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 13.0; 5120 bytes decoded. 14.0: 201.225 ms in 57280 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 14.0; 5120 bytes decoded. 15.0: 201.14 ms in 57206 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 15.0; 5120 bytes decoded. 16.0: 201.238 ms in 55446 bytes 20 records, 10 sectors; 2.08us clock (482kHz); 10 distinct sectors; logical track 16.0; 5120 bytes decoded. 17.0: 201.023 ms in 56787 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 17.0; 5120 bytes decoded. 18.0: 201.085 ms in 57091 bytes 20 records, 10 sectors; 2.03us clock (494kHz); 10 distinct sectors; logical track 18.0; 5120 bytes decoded. 19.0: 201.154 ms in 57532 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 19.0; 5120 bytes decoded. 20.0: 201.426 ms in 57019 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 20.0; 5120 bytes decoded. 21.0: 201.125 ms in 57038 bytes 20 records, 10 sectors; 2.04us clock (489kHz); 10 distinct sectors; logical track 21.0; 5120 bytes decoded. 22.0: 201.22 ms in 57303 bytes 20 records, 10 sectors; 2.05us clock (488kHz); 10 distinct sectors; logical track 22.0; 5120 bytes decoded. 23.0: 201.101 ms in 57193 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 23.0; 5120 bytes decoded. 24.0: 201.222 ms in 57133 bytes 20 records, 10 sectors; 2.07us clock (483kHz); 10 distinct sectors; logical track 24.0; 5120 bytes decoded. 25.0: 200.974 ms in 56623 bytes 20 records, 10 sectors; 2.03us clock (493kHz); 10 distinct sectors; logical track 25.0; 5120 bytes decoded. 26.0: 201.301 ms in 57637 bytes 20 records, 10 sectors; 2.07us clock (484kHz); 10 distinct sectors; logical track 26.0; 5120 bytes decoded. 27.0: 201.068 ms in 57239 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 27.0; 5120 bytes decoded. 28.0: 201.013 ms in 57114 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 28.0; 5120 bytes decoded. 29.0: 201.049 ms in 56837 bytes 20 records, 10 sectors; 2.05us clock (489kHz); 10 distinct sectors; logical track 29.0; 5120 bytes decoded. 30.0: 201.156 ms in 57347 bytes 20 records, 10 sectors; 2.02us clock (495kHz); 10 distinct sectors; logical track 30.0; 5120 bytes decoded. 31.0: 200.738 ms in 57093 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 31.0; 5120 bytes decoded. 32.0: 201.001 ms in 56850 bytes 20 records, 10 sectors; 2.04us clock (491kHz); 10 distinct sectors; logical track 32.0; 5120 bytes decoded. 33.0: 201.015 ms in 57269 bytes 20 records, 10 sectors; 2.03us clock (492kHz); 10 distinct sectors; logical track 33.0; 5120 bytes decoded. 34.0: 201.342 ms in 57190 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 34.0; 5120 bytes decoded. 35.0: 201.237 ms in 57177 bytes 20 records, 10 sectors; 2.04us clock (490kHz); 10 distinct sectors; logical track 35.0; 5120 bytes decoded. 36.0: 201.169 ms in 57185 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 36.0; 5120 bytes decoded. 37.0: 201.331 ms in 57255 bytes 20 records, 10 sectors; 2.02us clock (496kHz); 10 distinct sectors; logical track 37.0; 5120 bytes decoded. 38.0: 201.117 ms in 57255 bytes 20 records, 10 sectors; 2.03us clock (493kHz); 10 distinct sectors; logical track 38.0; 5120 bytes decoded. 39.0: 201.004 ms in 57200 bytes 20 records, 10 sectors; 2.01us clock (498kHz); 10 distinct sectors; logical track 39.0; 5120 bytes decoded. Tracks -> 1 2 3 H.SS 0123456789012345678901234567890123456789

  1. 0 ........................................
  2. 1 ........................................
  3. 2 ........................................
  4. 3 ........................................
  5. 4 ........................................
  6. 5 ........................................
  7. 6 ........................................
  8. 7 ........................................
  9. 8 ........................................
  10. 9 ........................................ Good sectors: 400/400 (100%) Missing sectors: 0/400 (0%) Bad sectors: 0/400 (0%) wrote 40 tracks, 1 sides, 200 kB total It is a good read of the sectors.

I use vbindiff to compare to a previously created image kpiibootscp.img lktst.img These are identical.

I will try to write the floppy, but check the configuration first.

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config

encoder { ibm { trackdata { track_length_ms: 167 clock_rate_khz: 300 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" single-sided 48 tpi" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { } }

This looks good so I write the floppy

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1

I get this message

Measuring rotational speed... 202ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: Error: track data overrun

Larryl

On Tue, Jul 20, 2021 at 4:39 PM David Given @.***> wrote:

Hmm. You're using a 300rpm drive, aren't you? That's going to make things a little awkward as I only have a 360rpm drive, which makes all the timings different. The reported clock speed for the read looks way too high, too --- it might be showing 2x the MFM clock.

So I reckon that 250kHz for 200ms is the same as 300kHz for 166ms, but if I do that the data doesn't fit. The default timings (the gaps between the sectors) are for normal PC disks, but as the Kaypro fits an extra sector on each track these need to be shrunk to make space. Possibly the IAM record needs to be omitted too. Do you have any more technical information on the disk format? (I can't find the 22DISK format definition, which should have this data.)

(The blank disk issue was because the image reader hadn't been told the format. I've updated the version in the kaypro2 branch to fix that.)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-883725788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAQRUJF5764DIQ7H2OTTYXUKNANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, It's been just about a week since I sent you the error message I'm getting for the Kaypro II branch when trying to write a disk with an image.

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1

I get this message Measuring rotational speed... 202ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: Error: track data overrun

Have there been any updates, I don't see recent changes in the Kaypro2 branch.

Thanks.

Larry

On Tue, Jul 20, 2021 at 4:39 PM David Given @.***> wrote:

Hmm. You're using a 300rpm drive, aren't you? That's going to make things a little awkward as I only have a 360rpm drive, which makes all the timings different. The reported clock speed for the read looks way too high, too --- it might be showing 2x the MFM clock.

So I reckon that 250kHz for 200ms is the same as 300kHz for 166ms, but if I do that the data doesn't fit. The default timings (the gaps between the sectors) are for normal PC disks, but as the Kaypro fits an extra sector on each track these need to be shrunk to make space. Possibly the IAM record needs to be omitted too. Do you have any more technical information on the disk format? (I can't find the 22DISK format definition, which should have this data.)

(The blank disk issue was because the image reader hadn't been told the format. I've updated the version in the kaypro2 branch to fix that.)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-883725788, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAQRUJF5764DIQ7H2OTTYXUKNANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

Sorry, this got dropped on the floor.

Currently there are problems with 360rpm drives. You'll need to edit the format to modify the clock speed and track length --- as the disk is spinning faster than expected, the clock rate will need to be increased accordingly to 360kHz and the track length decreased to 167us.

Unfortunately the 22disk definition doesn't have any timing information! So I just made some numbers up. This now does manage to squeeze all the data into one track. Whether it works, I don't know.

ldkraemer commented 3 years ago

David, Thanks for the update. I'll give it a try.

Larry

On Tue, Jul 27, 2021 at 12:40 PM David Given @.***> wrote:

Sorry, this got dropped on the floor.

Currently there are problems with 360rpm drives. You'll need to edit the format to modify the clock speed and track length --- as the disk is spinning faster than expected, the clock rate will need to be increased accordingly to 360kHz and the track length decreased to 167us.

Unfortunately the 22disk definition doesn't have any timing information! So I just made some numbers up. This now does manage to squeeze all the data into one track. Whether it works, I don't know.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-887703698, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAS6XF2JFRUERB553QTTZ3VQ7ANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, I just re-read your answer and noticed you said 360 PM. My floppy is a 5.25" 360K Mitsubishi drive spinning at 300 RPM.

And 202ms for 300 RPM. I could tweek the speed down a bit to exactly 300 or 298 if needed.

Thanks.

Larry

On Tue, Jul 27, 2021 at 12:40 PM David Given @.***> wrote:

Sorry, this got dropped on the floor.

Currently there are problems with 360rpm drives. You'll need to edit the format to modify the clock speed and track length --- as the disk is spinning faster than expected, the clock rate will need to be increased accordingly to 360kHz and the track length decreased to 167us.

Unfortunately the 22disk definition doesn't have any timing information! So I just made some numbers up. This now does manage to squeeze all the data into one track. Whether it works, I don't know.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-887703698, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAS6XF2JFRUERB553QTTZ3VQ7ANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

Re timing: yes, quite right. I think of them as 200ms or 166ms drives myself. Currently the formats are all set up for 200ms (for 3.5") or 166ms (for 5.25"). One thing to be added is automatic compensation if the drive turns out to be a different speed than expected.

The drive should be as precisely 200ms as possible; the Kaypro itself is trying to sync the bits with a crystal clock, and has limited ability to compensate, so getting the drive precisely calibrated will improve reliability.

ldkraemer commented 3 years ago

David, I set the Mitsubishi Drive for exactly 300 RPM. It still is giving me an error. Here are my test results.

$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm)

$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm)

$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm)

$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm)

Tried 360 for clock rate as per your email

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 167 clock_rate_khz: 360 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } }

I got the same errors as shown below.

Tried 375 for clock rate

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 167 clock_rate_khz: 375 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } }

Tried to write a zero byte file to floppy

Blank.img has ZERO BYTES

$ ls -alt blank.img -rw-r--r-- 1 larry larry 0 Jul 22 10:12 blank.img

$ ./fluxengine write kaypro2 -i blank.img -d drive:1 Measuring rotational speed... 200ms reading 1 tracks, 1 sides, 0 kB total Writing to: drive 1 0.0: Write: 166 ms in 57901 bytes Verify: 239 ms in 77504 bytes Rewrite: 166 ms in 57901 bytes Verify: 239 ms in 77504 bytes Rewrite: 166 ms in 57901 bytes Verify: 239 ms in 77504 bytes Rewrite: 166 ms in 57901 bytes Verify: 239 ms in 77504 bytes Rewrite: 166 ms in 57901 bytes Verify: 239 ms in 77568 bytes Rewrite: 166 ms in 57901 bytes Verify: 239 ms in 77632 bytes Error: Write failed; uncorrectable error during write.

Tried to write my Kaypro II Image

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 166 ms in 53310 bytes Verify: 239 ms in 69248 bytes Rewrite: 166 ms in 53310 bytes Verify: 239 ms in 69376 bytes Rewrite: 166 ms in 53310 bytes Verify: 239 ms in 69376 bytes Rewrite: 166 ms in 53310 bytes Verify: 239 ms in 69248 bytes Rewrite: 166 ms in 53310 bytes Verify: 239 ms in 69376 bytes Rewrite: 166 ms in 53310 bytes Verify: 239 ms in 69440 bytes Error: Write failed; uncorrectable error during write.

I sure hope this helps you find out what is going on.

Thanks.

Larry

On Tue, Jul 27, 2021 at 1:37 PM David Given @.***> wrote:

Re timing: yes, quite right. I think of them as 200ms or 166ms drives myself. Currently the formats are all set up for 200ms (for 3.5") or 166ms (for 5.25"). One thing to be added is automatic compensation if the drive turns out to be a different speed than expected.

The drive should be as precisely 200ms as possible; the Kaypro itself is trying to sync the bits with a crystal clock, and has limited ability to compensate, so getting the drive precisely calibrated will improve reliability.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-887741098, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAUXBAGQA6YJC3DOLWLTZ34FLANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

I'm sorry, I gave you the wrong instructions --- I got the RPMs and track lengths the wrong way round...

So: the config is written to expect a 167ms 5.25" drive. You have a 200ms drive. Therefore, the track length needs to be increased by a factor of 200/167 = 1.12, and the clock needs to be decreased by the same number. Soo, 300/1.12 = 267kHz.

Try setting the track length to 200 and the clock to 267 and see if that helps.

ldkraemer commented 3 years ago

David, I get the same errors.

$ ./fluxengine write kaypro2 -i blank.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 200 clock_rate_khz: 267 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "blank.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } }

@.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine write kaypro2 -i blank.img -d drive:1 Measuring rotational speed... 200ms reading 1 tracks, 1 sides, 0 kB total Writing to: drive 1 0.0: Write: 199 ms in 55817 bytes Verify: 239 ms in 66944 bytes Rewrite: 199 ms in 55817 bytes Verify: 239 ms in 66880 bytes Rewrite: 199 ms in 55817 bytes Verify: 239 ms in 66880 bytes Rewrite: 199 ms in 55817 bytes Verify: 239 ms in 66880 bytes Rewrite: 199 ms in 55817 bytes Verify: 239 ms in 66624 bytes Rewrite: 199 ms in 55817 bytes Verify: 239 ms in 66752 bytes Error: Write failed; uncorrectable error during write. @.:~/Downloads/fluxengine/fluxengine-kaypro2

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60408 bytes Verify: 239 ms in 71360 bytes Rewrite: 199 ms in 60408 bytes Verify: 239 ms in 71424 bytes Rewrite: 199 ms in 60408 bytes Verify: 239 ms in 71936 bytes Rewrite: 199 ms in 60408 bytes Verify: 239 ms in 71424 bytes Rewrite: 199 ms in 60408 bytes Verify: 239 ms in 71616 bytes Rewrite: 199 ms in 60408 bytes Verify: 239 ms in 71616 bytes Error: Write failed; uncorrectable error during write.

Larry

On Thu, Jul 29, 2021 at 8:23 AM David Given @.***> wrote:

I'm sorry, I gave you the wrong instructions --- I got the RPMs and track lengths the wrong way round...

So: the config is written to expect a 167ms 5.25" drive. You have a 200ms drive. Therefore, the track length needs to be increased by a factor of 200/167 = 1.12, and the clock needs to be decreased by the same number. Soo, 300/1.12 = 267kHz.

Try setting the track length to 200 and the clock to 267 and see if that helps.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-889140563, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMARBT4RDJRR3W42S6OTT2FI5VANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, I used your updated code from 3 days ago, and It wrote one floppy but the second one I have a write error. I did not try to boot the first floppy yet. Tried erasing both and re-writing. Also increased the Clock to 275 and that did not help with the write errors.

[code]

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 200 emit_iam: false start_sector_id: 0 clock_rate_khz: 267 gap0: 80 gap2: 22 gap3: 44 sector_skew: "0123456789" } } } decoder { ibm { sector_id_base: 0 } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { trackdata { sector_size: 512 sectors: 10 } tracks: 40 sides: 1 physical_step: 1 } }

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 71744 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 68800 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 68288 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 239 ms in 69440 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 239 ms in 70080 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 69824 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 239 ms in 69504 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 69824 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 239 ms in 69888 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 69888 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 70208 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 69376 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 69504 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 69632 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 69632 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 69120 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 67712 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 68544 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 69120 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 69696 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 240 ms in 68608 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 69440 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 69184 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 69312 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 68992 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 67840 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 68736 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 68928 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 68096 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 67712 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 69504 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 67712 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 239 ms in 67456 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 239 ms in 67264 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 69760 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 239 ms in 69952 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 239 ms in 70784 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72768 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 72640 bytes 35.0: Write: 199 ms in 60971 bytes Verify: 239 ms in 70592 bytes Rewrite: 199 ms in 60971 bytes Verify: 239 ms in 72256 bytes 36.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 69824 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 72064 bytes 37.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 68544 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71808 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71680 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71872 bytes 38.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 68032 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71232 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71872 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71680 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71616 bytes 39.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 69632 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71808 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72192 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71872 bytes

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms reading 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 70528 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 69504 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 69312 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 239 ms in 70784 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 70656 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 70912 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 239 ms in 70144 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 70784 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 239 ms in 70272 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 70208 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 71680 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 70080 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 69632 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 70016 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 70016 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 69696 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 68352 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 68672 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 240 ms in 69888 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 240 ms in 70464 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 67968 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 68992 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 69888 bytes Rewrite: 199 ms in 61427 bytes Verify: 239 ms in 70080 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 69696 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61200 bytes Verify: 239 ms in 69696 bytes Rewrite: 199 ms in 61200 bytes Verify: 239 ms in 70016 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60698 bytes Verify: 239 ms in 68736 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70016 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 70144 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69440 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 68864 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 68800 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 68672 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 68352 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68800 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 68736 bytes Rewrite: 199 ms in 61465 bytes Verify: 239 ms in 68352 bytes Rewrite: 199 ms in 61465 bytes Verify: 239 ms in 69184 bytes Rewrite: 199 ms in 61465 bytes Verify: 239 ms in 69248 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 239 ms in 68672 bytes Rewrite: 199 ms in 61210 bytes Verify: 239 ms in 68544 bytes Rewrite: 199 ms in 61210 bytes Verify: 239 ms in 68928 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 240 ms in 68352 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68864 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68480 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68416 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68864 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 240 ms in 71360 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71744 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71104 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71872 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72128 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71872 bytes Error: Write failed; uncorrectable error during write. [/code]

Tried clock_rate_khz: 275

and I still get the errors.as above.

Larry

On Thu, Jul 29, 2021 at 8:23 AM David Given @.***> wrote:

I'm sorry, I gave you the wrong instructions --- I got the RPMs and track lengths the wrong way round...

So: the config is written to expect a 167ms 5.25" drive. You have a 200ms drive. Therefore, the track length needs to be increased by a factor of 200/167 = 1.12, and the clock needs to be decreased by the same number. Soo, 300/1.12 = 267kHz.

Try setting the track length to 200 and the clock to 267 and see if that helps.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-889140563, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMARBT4RDJRR3W42S6OTT2FI5VANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

It looks like it's mostly writing, but is running into problems with the inner tracks (which are the shortest and therefore the most problematic).

If you have the Kaypro booting at all, it'd be good to know whether it can make anything of the first disk (with the 267kHz clock). That'll let us know if it's even approximately right. There should be enough there to at least get the directory and a few files working, with read errors for anything in the higher tracks.

ldkraemer commented 3 years ago

David, I tried the first floppy (one with the fewest errors and it boots in my Kaypro. I tried executing nsweep, setdisk, and initdisk. All came up and worked. Another file I tried gave a bdos error, but the reset button did a cold boot. So, it's mostly working except for the write errors I get at around tracks greater than 25 to the final exit error.

Maybe I should decrease the RPM to 298 versus exactly 300 for the Mitsubishi 360K floppy I'm writing with the Fluxengine. That would give you a bit more time. I have no clue what RPM Kaypro floppy's are spinning at. It's been too long since I tested them.

THANKS.

Larry

On Mon, Aug 2, 2021 at 8:22 AM David Given @.***> wrote:

It looks like it's mostly writing, but is running into problems with the inner tracks (which are the shortest and therefore the most problematic).

If you have the Kaypro booting at all, it'd be good to know whether it can make anything of the first disk (with the 267kHz clock). That'll let us know if it's even approximately right. There should be enough there to at least get the directory and a few files working, with read errors for anything in the higher tracks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-891022917, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAXOQA4TH6EQ4W2TCTDT22LXZANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, I downloaded the Kaypro2 Code update and tested it. I erased three floppy's and then wrote all three.

DISK #3 BASF 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 70912 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 68416 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 67840 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 239 ms in 68672 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 239 ms in 68736 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 68928 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 68480 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69248 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 69120 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 240 ms in 69248 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 69440 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 68544 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 68352 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 68416 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 68416 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 68032 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 66880 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 67136 bytes Rewrite: 199 ms in 60898 bytes Verify: 239 ms in 68672 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 67904 bytes Rewrite: 199 ms in 61184 bytes Verify: 239 ms in 70144 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 68608 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 66880 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 67584 bytes Rewrite: 199 ms in 61126 bytes Verify: 239 ms in 69376 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 67776 bytes Rewrite: 199 ms in 61427 bytes Verify: 239 ms in 69760 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 67776 bytes Rewrite: 199 ms in 61315 bytes Verify: 239 ms in 69568 bytes Rewrite: 199 ms in 61315 bytes Verify: 239 ms in 69696 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 67520 bytes Rewrite: 199 ms in 61200 bytes Verify: 239 ms in 69760 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 66752 bytes Rewrite: 199 ms in 60698 bytes Verify: 239 ms in 68800 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 67584 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 69824 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 69888 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 70080 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 67648 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69440 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69440 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 67008 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 69696 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 66880 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68416 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68736 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68864 bytes Error: Write failed; uncorrectable error during write. [code]

DISK #2 BASF 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 201ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 240 ms in 71104 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 240 ms in 69056 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 241 ms in 68480 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 69184 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 69376 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69184 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 68800 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69440 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 241 ms in 69376 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 241 ms in 69504 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 240 ms in 69440 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 240 ms in 68992 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 240 ms in 68800 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 240 ms in 68672 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 240 ms in 68736 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 241 ms in 68416 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 241 ms in 67200 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 67648 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 241 ms in 68288 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 241 ms in 68864 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 241 ms in 67328 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 241 ms in 68096 bytes Rewrite: 199 ms in 61126 bytes Verify: 241 ms in 70016 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 241 ms in 68416 bytes Rewrite: 199 ms in 61427 bytes Verify: 241 ms in 70336 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 240 ms in 68160 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 240 ms in 68224 bytes Rewrite: 199 ms in 61200 bytes Verify: 240 ms in 70080 bytes Rewrite: 199 ms in 61200 bytes Verify: 240 ms in 70272 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 240 ms in 67264 bytes Rewrite: 199 ms in 60698 bytes Verify: 240 ms in 69376 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 240 ms in 67904 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70272 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70272 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70336 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 240 ms in 68032 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 69760 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 69824 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 70272 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 240 ms in 67392 bytes Rewrite: 199 ms in 61209 bytes Verify: 240 ms in 70144 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 240 ms in 67264 bytes Rewrite: 199 ms in 60895 bytes Verify: 240 ms in 69120 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 240 ms in 66880 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69120 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69184 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 240 ms in 66688 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 68800 bytes Rewrite: 199 ms in 61210 bytes Verify: 241 ms in 69696 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 241 ms in 67008 bytes Rewrite: 199 ms in 60924 bytes Verify: 241 ms in 69504 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 69696 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 240 ms in 69312 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71424 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72448 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72000 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71808 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72128 bytes Error: Write failed; uncorrectable error during write.

DISK #1 Plain Label 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 72128 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 68864 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 68352 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 69696 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 70080 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 70208 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 239 ms in 69888 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 70336 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 239 ms in 70208 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 70208 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 70144 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 69504 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 69440 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 69824 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 69824 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 69312 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 67904 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 68480 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 69120 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 69632 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 68288 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 240 ms in 69632 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 240 ms in 69632 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 69312 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 69248 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 68096 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 68608 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 68800 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 68416 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 67968 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 67648 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 239 ms in 67776 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 239 ms in 67456 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 69824 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 239 ms in 69888 bytes Rewrite: 199 ms in 60976 bytes Verify: 239 ms in 72576 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 239 ms in 70912 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 72768 bytes 35.0: Write: 199 ms in 60971 bytes Verify: 239 ms in 70528 bytes Rewrite: 199 ms in 60971 bytes Verify: 239 ms in 72512 bytes 36.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 69376 bytes Rewrite: 199 ms in 60975 bytes Verify: 240 ms in 72064 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 72128 bytes 37.0: Write: 199 ms in 60974 bytes Verify: 240 ms in 68992 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72000 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72192 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71936 bytes 38.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 68288 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71936 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71296 bytes 39.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72128 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72192 bytes

Floppy's #2 & #1 Boot Fine, and I can execute nsweep and setdisk, and initdsk.

Still have problems at tracks greater than 25, on some floppy's.

Thanks.

Larry

On Mon, Aug 2, 2021 at 8:22 AM David Given @.***> wrote:

It looks like it's mostly writing, but is running into problems with the inner tracks (which are the shortest and therefore the most problematic).

If you have the Kaypro booting at all, it'd be good to know whether it can make anything of the first disk (with the 267kHz clock). That'll let us know if it's even approximately right. There should be enough there to at least get the directory and a few files working, with read errors for anything in the higher tracks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-891022917, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAXOQA4TH6EQ4W2TCTDT22LXZANCNFSM5ADRFYWQ .

ldkraemer commented 3 years ago

David, I decreased my 360K Mitsubishi's RPM speed to 298.5 RPM versus 300 RPM.

I'm still getting the same type results with the three floppy's (2 BASF 360K 2S/2D and 1 plain label 360K 2S/2D)

$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm) @.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm)

@.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm)

BASF Floppy #1 2S/2D 360K Floppy

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 201ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 240 ms in 71488 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 240 ms in 69376 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 240 ms in 68480 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 241 ms in 69440 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 69568 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69440 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 69440 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69888 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 69632 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 240 ms in 69568 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 240 ms in 69824 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 240 ms in 69184 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 241 ms in 69056 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 240 ms in 68800 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 240 ms in 68992 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 240 ms in 68480 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 240 ms in 67328 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 67712 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 240 ms in 68224 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 241 ms in 69184 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 241 ms in 67584 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 240 ms in 67776 bytes Rewrite: 199 ms in 61126 bytes Verify: 240 ms in 69952 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 240 ms in 68416 bytes Rewrite: 199 ms in 61427 bytes Verify: 240 ms in 70464 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 240 ms in 68160 bytes Rewrite: 199 ms in 61315 bytes Verify: 240 ms in 70272 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 240 ms in 68480 bytes Rewrite: 199 ms in 61200 bytes Verify: 241 ms in 70400 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 241 ms in 67200 bytes Rewrite: 199 ms in 60698 bytes Verify: 240 ms in 69056 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 240 ms in 67968 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70016 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 240 ms in 68352 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 69824 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 240 ms in 67648 bytes Rewrite: 199 ms in 61209 bytes Verify: 240 ms in 69824 bytes Rewrite: 199 ms in 61209 bytes Verify: 241 ms in 69696 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 241 ms in 67392 bytes Rewrite: 199 ms in 60895 bytes Verify: 240 ms in 68928 bytes Rewrite: 199 ms in 60895 bytes Verify: 240 ms in 68992 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 240 ms in 67136 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69120 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69120 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69440 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 240 ms in 67008 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 69440 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 69504 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 240 ms in 67008 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 69248 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 69504 bytes Rewrite: 199 ms in 60924 bytes Verify: 241 ms in 69184 bytes Rewrite: 199 ms in 60924 bytes Verify: 241 ms in 69696 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 241 ms in 69120 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71808 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71424 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71680 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71488 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71808 bytes Error: Write failed; uncorrectable error during write.

BASF Floppy #2 2S/2D 360K Floppy

@.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 201ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 240 ms in 71360 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 240 ms in 68736 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 240 ms in 68416 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 69376 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 69504 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69760 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 69056 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 70080 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 69760 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 240 ms in 69312 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 241 ms in 69888 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 240 ms in 68800 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 240 ms in 68800 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 240 ms in 68864 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 240 ms in 68928 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 240 ms in 68544 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 240 ms in 67200 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 67840 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 240 ms in 68224 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 240 ms in 68992 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 240 ms in 67648 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 241 ms in 68288 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 240 ms in 68352 bytes Rewrite: 199 ms in 61427 bytes Verify: 240 ms in 70592 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 240 ms in 68416 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 240 ms in 68032 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 240 ms in 67072 bytes Rewrite: 199 ms in 60698 bytes Verify: 240 ms in 69184 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 240 ms in 68032 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 240 ms in 68480 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 70144 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 70272 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 241 ms in 67520 bytes Rewrite: 199 ms in 61209 bytes Verify: 241 ms in 69568 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 240 ms in 67072 bytes Rewrite: 199 ms in 60895 bytes Verify: 240 ms in 68800 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 240 ms in 67136 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69312 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69696 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 240 ms in 67072 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 69248 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 69376 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 240 ms in 67136 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 68992 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 69504 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 241 ms in 68992 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71488 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71936 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71296 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 240 ms in 70528 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72192 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72128 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72320 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72064 bytes Rewrite: 199 ms in 60972 bytes Verify: 240 ms in 72128 bytes Error: Write failed; uncorrectable error during write.

My Plain Label 2S/2D 360K Floppy writes correctly, but has trouble on Tracks 39 & 39 ONLY.

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 201ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 240 ms in 72256 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 240 ms in 70912 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 240 ms in 71040 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 73216 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 72960 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 73088 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 72576 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 73088 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 73152 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 241 ms in 73280 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 240 ms in 73920 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 240 ms in 72640 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 240 ms in 72576 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 241 ms in 72640 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 240 ms in 71936 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 240 ms in 72256 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 240 ms in 70080 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 71104 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 240 ms in 71872 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 240 ms in 72704 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 240 ms in 70720 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 241 ms in 71424 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 240 ms in 71680 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 240 ms in 71296 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 240 ms in 71232 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 240 ms in 70272 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 240 ms in 71488 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 240 ms in 70848 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 240 ms in 70656 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 240 ms in 69952 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 240 ms in 70400 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 241 ms in 70784 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 240 ms in 70016 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 240 ms in 72960 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 240 ms in 72896 bytes 35.0: Write: 199 ms in 60971 bytes Verify: 240 ms in 72896 bytes 36.0: Write: 199 ms in 60975 bytes Verify: 240 ms in 72256 bytes 37.0: Write: 199 ms in 60974 bytes Verify: 240 ms in 72128 bytes 38.0: Write: 199 ms in 60975 bytes Verify: 240 ms in 72192 bytes Rewrite: 199 ms in 60975 bytes Verify: 240 ms in 72128 bytes Rewrite: 199 ms in 60975 bytes Verify: 240 ms in 71744 bytes 39.0: Write: 199 ms in 60974 bytes Verify: 241 ms in 72320 bytes Rewrite: 199 ms in 60974 bytes Verify: 241 ms in 72576 bytes

Larry

On Mon, Aug 2, 2021 at 8:22 AM David Given @.***> wrote:

It looks like it's mostly writing, but is running into problems with the inner tracks (which are the shortest and therefore the most problematic).

If you have the Kaypro booting at all, it'd be good to know whether it can make anything of the first disk (with the 267kHz clock). That'll let us know if it's even approximately right. There should be enough there to at least get the directory and a few files working, with read errors for anything in the higher tracks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-891022917, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAXOQA4TH6EQ4W2TCTDT22LXZANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

So it's consistently working on the plain label disk? That sounds like a problem with the disks themselves...

Do you have a 'modern' HD PC drive you can try? (A 167ms one.) Without changing the settings it won't produce disks that the Kaypro can read but it'd be interesting to see what happens.

Also, I've just updated the kaypro2 branch; it'd be really good if you could update and see if it still behaves the same.

ldkraemer commented 3 years ago

David, I'm getting some type error from the downloaded code. I'm no programmer so I haven't a clue as to what the error is.

$ make MKNINJA .obj/build.ninja [232/581] CXX lib/imagereader/diskcopyimagereader.cc FAILED: .obj/opt/lib/imagereader/diskcopyimagereader.o g++ -x c++ --std=c++14 -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -I.obj/proto -Os -I. -c -o .obj/opt/lib/imagereader/diskcopyimagereader.o lib/imagereader/diskcopyimagereader.cc -MMD -MF .obj/opt/lib/imagereader/diskcopyimagereader.o.d lib/imagereader/diskcopyimagereader.cc: In member function ‘virtual Image DiskCopyImageReader::readImage()’: lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported }); ^ lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported [233/581] CXX lib/imagereader/diskcopyimagereader.cc FAILED: .obj/dbg/lib/imagereader/diskcopyimagereader.o g++ -x c++ --std=c++14 -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -I.obj/proto -O0 -g -I. -c -o .obj/dbg/lib/imagereader/diskcopyimagereader.o lib/imagereader/diskcopyimagereader.cc -MMD -MF .obj/dbg/lib/imagereader/diskcopyimagereader.o.d lib/imagereader/diskcopyimagereader.cc: In member function ‘virtual Image DiskCopyImageReader::readImage()’: lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported }); ^ lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported lib/imagereader/diskcopyimagereader.cc:124:4: sorry, unimplemented: non-trivial designated initializers not supported [237/581] CXX lib/imagereader/imagereader.cc ninja: build stopped: subcommand failed. Makefile:53: recipe for target 'all' failed make: *** [all] Error 1

Thanks.

Larry

On Tue, Aug 3, 2021 at 4:19 PM David Given @.***> wrote:

So it's consistently working on the plain label disk? That sounds like a problem with the disks themselves...

Do you have a 'modern' HD PC drive you can try? (A 167ms one.) Without changing the settings it won't produce disks that the Kaypro can read but it'd be interesting to see what happens.

Also, I've just updated the kaypro2 branch; it'd be really good if you could update and see if it still behaves the same.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-892173821, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAS5COWJ7WCP44R7O53T3BMPTANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

davidgiven commented 3 years ago

That last one is a compiler version mismatch. I have, hopefully, fixed it, but I may have introduced a dependency on a more recent version of the compiler than you have --- could you try it again, please? If that doesn't work I'll have to rewrite some stuff.

ldkraemer commented 3 years ago

David, I downloaded the latest code and now I'm getting a different error.

$ make MKNINJA .obj/build.ninja [1/581] CXX dep/agg/src/agg2d.cpp FAILED: .obj/opt/dep/agg/src/agg2d.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -Os -I. -c -o .obj/opt/dep/agg/src/agg2d.o dep/agg/src/agg2d.cpp -MMD -MF .obj/opt/dep/agg/src/agg2d.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? [2/581] CXX dep/agg/src/agg_arc.cpp FAILED: .obj/opt/dep/agg/src/agg_arc.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -Os -I. -c -o .obj/opt/dep/agg/src/agg_arc.o dep/agg/src/agg_arc.cpp -MMD -MF .obj/opt/dep/agg/src/agg_arc.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? [3/581] CXX dep/stb/stb_image_write.c FAILED: .obj/opt/dep/stb/stb_image_write.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -Os -I. -c -o .obj/opt/dep/stb/stb_image_write.o dep/stb/stb_image_write.c -MMD -MF .obj/opt/dep/stb/stb_image_write.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? [4/581] CXX dep/agg/src/agg_arrowhead.cpp FAILED: .obj/dbg/dep/agg/src/agg_arrowhead.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -O0 -g -I. -c -o .obj/dbg/dep/agg/src/agg_arrowhead.o dep/agg/src/agg_arrowhead.cpp -MMD -MF .obj/dbg/dep/agg/src/agg_arrowhead.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? [5/581] CXX dep/agg/src/agg2d.cpp FAILED: .obj/dbg/dep/agg/src/agg2d.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -O0 -g -I. -c -o .obj/dbg/dep/agg/src/agg2d.o dep/agg/src/agg2d.cpp -MMD -MF .obj/dbg/dep/agg/src/agg2d.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? [6/581] CXX dep/stb/stb_image_write.c FAILED: .obj/dbg/dep/stb/stb_image_write.o g++ -x c++ --std=c++2a -ffunction-sections -fdata-sections -pthread -I/usr/include/libusb-1.0 -Ilib -Idep/fmt -Iarch -Idep/agg/include -O0 -g -I. -c -o .obj/dbg/dep/stb/stb_image_write.o dep/stb/stb_image_write.c -MMD -MF .obj/dbg/dep/stb/stb_image_write.o.d g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’? ninja: build stopped: subcommand failed. Makefile:53: recipe for target 'all' failed make: *** [all] Error 1

Thanks.

Larry

On Wed, Aug 4, 2021 at 1:45 PM David Given @.***> wrote:

That last one is a compiler version mismatch. I have, hopefully, fixed it, but I may have introduced a dependency on a more recent version of the compiler than you have --- could you try it again, please? If that doesn't work I'll have to rewrite some stuff.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-892888254, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAREV6WBAXLXJI2XIX3T3GDGLANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

davidgiven commented 3 years ago

Yep, thought so. I was relying on too new C++ features. The more I use it, the more I hate that language...

I'll rewrite this and get back to you. Thanks for trying it.

davidgiven commented 3 years ago

New version pushed --- PTAL?

ldkraemer commented 3 years ago

David, The latest version I downloaded does build properly on my Debian 9.x - 64 Bit.

I connected a Teac FD-55GFR and the floppy's write correctly. I used the BASF 360K 2S/DD floppy. Here is the speed and output;

$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 166 ms (361.446 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 166 ms (361.446 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 166 ms (361.446 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 166 ms (361.446 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm) @.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 167 ms (359.281 rpm)

blank.img is a zero byte file.

$ ./fluxengine write kaypro2 -i blank.img -d drive:1 Measuring rotational speed... 166ms IMG: read 1 tracks, 1 sides, 0 kB total Writing to: drive 1 0.0: Write: 166 ms in 48480 bytes Verify: 198 ms in 57600 bytes 1.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 2.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 3.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 4.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes 5.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes 6.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 7.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 8.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes 9.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 10.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 11.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 12.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 13.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 14.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 15.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 16.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 17.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44800 bytes 18.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 19.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 20.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 21.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes 22.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes 23.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 24.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 25.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 26.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 27.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 28.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 29.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 30.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 31.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 32.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 33.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 34.0: Write: 166 ms in 37575 bytes Verify: 199 ms in 44800 bytes 35.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 36.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44608 bytes 37.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 38.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44672 bytes 39.0: Write: 166 ms in 37575 bytes Verify: 198 ms in 44736 bytes

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 167 emit_iam: false clock_rate_khz: 300 gap0: 80 gap2: 22 gap3: 44 sectors { sector: 0 sector: 1 sector: 2 sector: 3 sector: 4 sector: 5 sector: 6 sector: 7 sector: 8 sector: 9 } } } } decoder { ibm { } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sector_range { start_sector: 0 sector_count: 10 } } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { trackdata { sector_size: 512 sector_range { start_sector: 0 sector_count: 10 } } tracks: 40 sides: 1 physical_step: 1 } }

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 166ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 166 ms in 43889 bytes Verify: 199 ms in 52288 bytes 1.0: Write: 166 ms in 45159 bytes Verify: 198 ms in 54016 bytes 2.0: Write: 166 ms in 45258 bytes Verify: 199 ms in 54080 bytes 3.0: Write: 166 ms in 43073 bytes Verify: 198 ms in 51136 bytes 4.0: Write: 166 ms in 43116 bytes Verify: 198 ms in 51392 bytes 5.0: Write: 166 ms in 42985 bytes Verify: 198 ms in 51136 bytes 6.0: Write: 166 ms in 43103 bytes Verify: 198 ms in 51328 bytes 7.0: Write: 166 ms in 42985 bytes Verify: 198 ms in 51136 bytes 8.0: Write: 166 ms in 42924 bytes Verify: 198 ms in 51072 bytes 9.0: Write: 166 ms in 42860 bytes Verify: 199 ms in 51072 bytes 10.0: Write: 166 ms in 42460 bytes Verify: 199 ms in 50624 bytes 11.0: Write: 166 ms in 43175 bytes Verify: 199 ms in 51392 bytes 12.0: Write: 166 ms in 43524 bytes Verify: 198 ms in 51520 bytes 13.0: Write: 166 ms in 43209 bytes Verify: 198 ms in 51264 bytes 14.0: Write: 166 ms in 42936 bytes Verify: 198 ms in 51072 bytes 15.0: Write: 166 ms in 42999 bytes Verify: 198 ms in 51200 bytes 16.0: Write: 166 ms in 44752 bytes Verify: 199 ms in 53056 bytes 17.0: Write: 166 ms in 43426 bytes Verify: 199 ms in 51776 bytes 18.0: Write: 166 ms in 43140 bytes Verify: 198 ms in 51520 bytes 19.0: Write: 166 ms in 42722 bytes Verify: 198 ms in 50624 bytes 20.0: Write: 166 ms in 43186 bytes Verify: 198 ms in 51328 bytes 21.0: Write: 166 ms in 43198 bytes Verify: 198 ms in 51328 bytes 22.0: Write: 166 ms in 42897 bytes Verify: 199 ms in 51072 bytes 23.0: Write: 166 ms in 43009 bytes Verify: 198 ms in 50944 bytes 24.0: Write: 166 ms in 43124 bytes Verify: 198 ms in 51200 bytes 25.0: Write: 166 ms in 43626 bytes Verify: 198 ms in 51840 bytes 26.0: Write: 166 ms in 42593 bytes Verify: 198 ms in 50752 bytes 27.0: Write: 166 ms in 43006 bytes Verify: 198 ms in 51200 bytes 28.0: Write: 166 ms in 43115 bytes Verify: 199 ms in 51328 bytes 29.0: Write: 166 ms in 43429 bytes Verify: 199 ms in 51648 bytes 30.0: Write: 166 ms in 42859 bytes Verify: 198 ms in 51008 bytes 31.0: Write: 166 ms in 43114 bytes Verify: 198 ms in 51200 bytes 32.0: Write: 166 ms in 43400 bytes Verify: 198 ms in 51584 bytes 33.0: Write: 166 ms in 43348 bytes Verify: 198 ms in 51520 bytes 34.0: Write: 166 ms in 43352 bytes Verify: 198 ms in 51584 bytes 35.0: Write: 166 ms in 43353 bytes Verify: 198 ms in 51584 bytes 36.0: Write: 166 ms in 43349 bytes Verify: 199 ms in 51648 bytes 37.0: Write: 166 ms in 43350 bytes Verify: 198 ms in 51392 bytes 38.0: Write: 166 ms in 43349 bytes Verify: 198 ms in 51456 bytes 39.0: Write: 166 ms in 43350 bytes Verify: 198 ms in 51520 bytes

I didn't try the 360 Plain label floppy.

Now I'll try the 360K foppy Drive.

Thanks.

Larry

On Wed, Aug 4, 2021 at 2:33 PM David Given @.***> wrote:

New version pushed --- PTAL?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-892919224, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMATMQZJLWI2ZPQWZHWTT3GIZ3ANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

ldkraemer commented 3 years ago

David, I set the software for 200 and 267 for a 360K floppy in a 360K drive.

I like to never got a speed test or to write a floppy for errors. Drive was deaf to Fluxengine until I did a write.

$ ./fluxengine rpm -s drive:1 No index pulses detected from the disk. Common causes of this are:

BASF 360K 2S DD Floppt.

@.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 71104 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 70080 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 240 ms in 70080 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 71488 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 71104 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 71296 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 70528 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 71232 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 70848 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 70784 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 72576 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 70720 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 70272 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 70464 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 70464 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 69888 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 68224 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 69184 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 70080 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 70784 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 68736 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 69696 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 70400 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 69888 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 69760 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 68928 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 69888 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 69504 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 68992 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 68544 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69376 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 240 ms in 69184 bytes Rewrite: 199 ms in 61210 bytes Verify: 239 ms in 69056 bytes Rewrite: 199 ms in 61210 bytes Verify: 239 ms in 69312 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 69120 bytes Rewrite: 199 ms in 61210 bytes Verify: 239 ms in 68928 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 239 ms in 69184 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68736 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 68992 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 69056 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 69312 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 239 ms in 71744 bytes Rewrite: 199 ms in 60976 bytes Verify: 239 ms in 71040 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 239 ms in 72064 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 71936 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 72000 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 72128 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 71680 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 71872 bytes Error: Write failed; uncorrectable error during write.

Plain Label 360K 2S DD Floppy

$ ./fluxengine write kaypro2 -i blank.img -d drive:1 Measuring rotational speed... 201ms IMG: read 1 tracks, 1 sides, 0 kB total Writing to: drive 1 0.0: Write: 199 ms in 55844 bytes Verify: 240 ms in 67776 bytes 1.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 2.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80128 bytes 3.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 4.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80000 bytes 5.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80128 bytes 6.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 7.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79936 bytes 8.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 9.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 10.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80064 bytes 11.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79936 bytes 12.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80000 bytes 13.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80000 bytes 14.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 80000 bytes 15.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79872 bytes 16.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79936 bytes 17.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79488 bytes 18.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79744 bytes 19.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79616 bytes 20.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79616 bytes 21.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79552 bytes 22.0: Write: 199 ms in 66749 bytes Verify: 241 ms in 79680 bytes 23.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79552 bytes 24.0: Write: 199 ms in 66749 bytes Verify: 241 ms in 79424 bytes 25.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79296 bytes 26.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79104 bytes 27.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78976 bytes 28.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79104 bytes 29.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78528 bytes 30.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78528 bytes 31.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78528 bytes 32.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78208 bytes 33.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 78208 bytes 34.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 77632 bytes 35.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 77312 bytes 36.0: Write: 199 ms in 66749 bytes Verify: 241 ms in 77504 bytes 37.0: Write: 199 ms in 66749 bytes Verify: 241 ms in 77568 bytes 38.0: Write: 199 ms in 66749 bytes Verify: 241 ms in 77696 bytes 39.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 76672 bytes

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 --config encoder { ibm { trackdata { track_length_ms: 200 emit_iam: false clock_rate_khz: 267 gap0: 80 gap2: 22 gap3: 44 sectors { sector: 0 sector: 1 sector: 2 sector: 3 sector: 4 sector: 5 sector: 6 sector: 7 sector: 8 sector: 9 } } } } decoder { ibm { } } cylinders { start: 0 end: 39 } heads { start: 0 end: 0 } comment: "Kaypro II 5.25\" 40-track 10-sector SSDD" image_writer { filename: "kaypro2.img" img { trackdata { sector_size: 512 sector_range { start_sector: 0 sector_count: 10 } } tracks: 40 sides: 1 physical_step: 1 } } flux_source { drive { drive: 1 } } flux_sink { drive { drive: 1 } } image_reader { filename: "lktst.img" img { trackdata { sector_size: 512 sector_range { start_sector: 0 sector_count: 10 } } tracks: 40 sides: 1 physical_step: 1 } }

$ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 72064 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 70144 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 70656 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 239 ms in 72704 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 239 ms in 72512 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 72704 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 239 ms in 72448 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 72576 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 239 ms in 72320 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 72384 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 73024 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 72064 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 71744 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 71808 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 71808 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 71424 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 69632 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 70656 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 71296 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 240 ms in 72192 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 70464 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 71040 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 71424 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 71104 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 70848 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 69824 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 70848 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 70400 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 70528 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 69568 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 69760 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 239 ms in 69824 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 240 ms in 69952 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 239 ms in 72960 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 239 ms in 72896 bytes 35.0: Write: 199 ms in 60971 bytes Verify: 239 ms in 72768 bytes 36.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 72832 bytes 37.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 71808 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71232 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71872 bytes 38.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 71680 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71680 bytes Rewrite: 199 ms in 60975 bytes Verify: 240 ms in 71552 bytes 39.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 72000 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71936 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72064 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71936 bytes

Looks like a good write.

Larry

On Wed, Aug 4, 2021 at 2:33 PM David Given @.***> wrote:

New version pushed --- PTAL?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-892919224, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMATMQZJLWI2ZPQWZHWTT3GIZ3ANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

ldkraemer commented 3 years ago

David, I've discovered why my Floppy appears to be deaf when I try to do a seek or rpm test.

I power up my Floppy drive and then power up the Fluxengine via USB cable. I do these commands:

$ ../fluxengine rpm -s drive:1 No index pulses detected from the disk. Common causes of this are:

The drive does not respond so I try:. @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c3 @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c 20 @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c 0 @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c 10 @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c 30 @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine seek -s drive:1 -c 0 @.***:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 No index pulses detected from the disk. Common causes of this are:

THen I look at the 360K floppy that I wrote yesterday and the head is at track 39. I Power OFF the Fluxengine, Power Off the Floppy, and gently move the head to Track 0 and power both up. Floppy First, then Fluxengine.

MAGIC, it now responds to the Fluxengine's commands:

$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 201 ms (298.507 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$ ./fluxengine rpm -s drive:1 Rotational period is 200 ms (300 rpm) @.:~/Downloads/fluxengine/fluxengine-kaypro2$

So, I erase the floppy by writing a ZERO length file to the floppy

$ ./fluxengine write kaypro2 -i blank.img -d drive:1 Measuring rotational speed... 200ms IMG: read 1 tracks, 1 sides, 0 kB total Writing to: drive 1 0.0: Write: 199 ms in 55844 bytes Verify: 239 ms in 67520 bytes 1.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79552 bytes 2.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79424 bytes 3.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79488 bytes 4.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79488 bytes 5.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79680 bytes 6.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 79552 bytes 7.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78912 bytes 8.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79104 bytes 9.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79104 bytes 10.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79168 bytes 11.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79168 bytes 12.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78912 bytes 13.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79232 bytes 14.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 79168 bytes 15.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78528 bytes 16.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78912 bytes 17.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77376 bytes 18.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78464 bytes 19.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78528 bytes 20.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78592 bytes 21.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78400 bytes 22.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78144 bytes 23.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 78272 bytes 24.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77760 bytes 25.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77504 bytes 26.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77376 bytes 27.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77504 bytes 28.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77504 bytes 29.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 76928 bytes 30.0: Write: 199 ms in 66749 bytes Verify: 240 ms in 77184 bytes 31.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 77248 bytes 32.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 76096 bytes 33.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 75712 bytes 34.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 76352 bytes 35.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 75840 bytes 36.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 76224 bytes 37.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 75712 bytes 38.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 75648 bytes 39.0: Write: 199 ms in 66749 bytes Verify: 239 ms in 75776 bytes

Head stays at Track 39.

Power off Both. Wait a while Power UP floppy, then Fluxengine. Floppy drive is deaf to commands of Fluxengine.

There needs to be a seek to track 0 after ERASE FLOPPY Command and after every file is written to the Floppy Drive.

I still have the problem writing to a BASF 360K 2S DD Floppy, but not to plain label floppy's.

THANKS.

Larry

On Mon, Aug 2, 2021 at 3:32 PM Larry Kraemer @.***> wrote:

David, I downloaded the Kaypro2 Code update and tested it. I erased three floppy's and then wrote all three.

DISK #3 BASF 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 70912 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 68416 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 67840 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 239 ms in 68672 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 239 ms in 68736 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 68928 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 68480 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69248 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 240 ms in 69120 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 240 ms in 69248 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 69440 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 68544 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 68352 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 68416 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 68416 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 68032 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 66880 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 67136 bytes Rewrite: 199 ms in 60898 bytes Verify: 239 ms in 68672 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 67904 bytes Rewrite: 199 ms in 61184 bytes Verify: 239 ms in 70144 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 68608 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 66880 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 239 ms in 67584 bytes Rewrite: 199 ms in 61126 bytes Verify: 239 ms in 69376 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 239 ms in 67776 bytes Rewrite: 199 ms in 61427 bytes Verify: 239 ms in 69760 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 67776 bytes Rewrite: 199 ms in 61315 bytes Verify: 239 ms in 69568 bytes Rewrite: 199 ms in 61315 bytes Verify: 239 ms in 69696 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 67520 bytes Rewrite: 199 ms in 61200 bytes Verify: 239 ms in 69760 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 66752 bytes Rewrite: 199 ms in 60698 bytes Verify: 239 ms in 68800 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 67584 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 69824 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 69888 bytes Rewrite: 199 ms in 61731 bytes Verify: 239 ms in 70080 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 67648 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69440 bytes Rewrite: 199 ms in 61318 bytes Verify: 239 ms in 69440 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 67008 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 61209 bytes Verify: 239 ms in 69696 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 66880 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68608 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68416 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68736 bytes Rewrite: 199 ms in 60895 bytes Verify: 239 ms in 68864 bytes Error: Write failed; uncorrectable error during write. [code]

DISK #2 BASF 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 201ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 240 ms in 71104 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 240 ms in 69056 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 241 ms in 68480 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 69184 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 69376 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69184 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 240 ms in 68800 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 69440 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 241 ms in 69376 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 241 ms in 69504 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 240 ms in 69440 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 240 ms in 68992 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 240 ms in 68800 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 240 ms in 68672 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 240 ms in 68736 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 241 ms in 68416 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 241 ms in 67200 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 240 ms in 67648 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 241 ms in 68288 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 241 ms in 68864 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 241 ms in 67328 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 241 ms in 68096 bytes Rewrite: 199 ms in 61126 bytes Verify: 241 ms in 70016 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 241 ms in 68416 bytes Rewrite: 199 ms in 61427 bytes Verify: 241 ms in 70336 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 240 ms in 68160 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 240 ms in 68224 bytes Rewrite: 199 ms in 61200 bytes Verify: 240 ms in 70080 bytes Rewrite: 199 ms in 61200 bytes Verify: 240 ms in 70272 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 240 ms in 67264 bytes Rewrite: 199 ms in 60698 bytes Verify: 240 ms in 69376 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 240 ms in 67904 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70272 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70272 bytes Rewrite: 199 ms in 61731 bytes Verify: 240 ms in 70336 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 240 ms in 68032 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 69760 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 69824 bytes Rewrite: 199 ms in 61318 bytes Verify: 240 ms in 70272 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 240 ms in 67392 bytes Rewrite: 199 ms in 61209 bytes Verify: 240 ms in 70144 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 240 ms in 67264 bytes Rewrite: 199 ms in 60895 bytes Verify: 240 ms in 69120 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 240 ms in 66880 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69120 bytes Rewrite: 199 ms in 61465 bytes Verify: 240 ms in 69184 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 240 ms in 66688 bytes Rewrite: 199 ms in 61210 bytes Verify: 240 ms in 68800 bytes Rewrite: 199 ms in 61210 bytes Verify: 241 ms in 69696 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 241 ms in 67008 bytes Rewrite: 199 ms in 60924 bytes Verify: 241 ms in 69504 bytes Rewrite: 199 ms in 60924 bytes Verify: 240 ms in 69696 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 240 ms in 69312 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71424 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72448 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72000 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 71808 bytes Rewrite: 199 ms in 60976 bytes Verify: 240 ms in 72128 bytes Error: Write failed; uncorrectable error during write.

DISK #1 Plain Label 2S2D 360K [code] $ ./fluxengine write kaypro2 -i lktst.img -d drive:1 Measuring rotational speed... 200ms IMG: read 40 tracks, 1 sides, 200 kB total Writing to: drive 1 0.0: Write: 199 ms in 60435 bytes Verify: 239 ms in 72128 bytes 1.0: Write: 199 ms in 59165 bytes Verify: 239 ms in 68864 bytes 2.0: Write: 199 ms in 59066 bytes Verify: 239 ms in 68352 bytes 3.0: Write: 199 ms in 61251 bytes Verify: 240 ms in 69696 bytes 4.0: Write: 199 ms in 61208 bytes Verify: 240 ms in 70080 bytes 5.0: Write: 199 ms in 61339 bytes Verify: 240 ms in 70208 bytes 6.0: Write: 199 ms in 61221 bytes Verify: 239 ms in 69888 bytes 7.0: Write: 199 ms in 61339 bytes Verify: 239 ms in 70336 bytes 8.0: Write: 199 ms in 61400 bytes Verify: 239 ms in 70208 bytes 9.0: Write: 199 ms in 61464 bytes Verify: 239 ms in 70208 bytes 10.0: Write: 199 ms in 61864 bytes Verify: 239 ms in 70144 bytes 11.0: Write: 199 ms in 61149 bytes Verify: 239 ms in 69504 bytes 12.0: Write: 199 ms in 60800 bytes Verify: 239 ms in 69440 bytes 13.0: Write: 199 ms in 61115 bytes Verify: 239 ms in 69824 bytes 14.0: Write: 199 ms in 61388 bytes Verify: 239 ms in 69824 bytes 15.0: Write: 199 ms in 61325 bytes Verify: 239 ms in 69312 bytes 16.0: Write: 199 ms in 59572 bytes Verify: 239 ms in 67904 bytes 17.0: Write: 199 ms in 60898 bytes Verify: 239 ms in 68480 bytes 18.0: Write: 199 ms in 61184 bytes Verify: 239 ms in 69120 bytes 19.0: Write: 199 ms in 61602 bytes Verify: 239 ms in 69632 bytes 20.0: Write: 199 ms in 61138 bytes Verify: 239 ms in 68288 bytes 21.0: Write: 199 ms in 61126 bytes Verify: 240 ms in 69632 bytes 22.0: Write: 199 ms in 61427 bytes Verify: 240 ms in 69632 bytes 23.0: Write: 199 ms in 61315 bytes Verify: 239 ms in 69312 bytes 24.0: Write: 199 ms in 61200 bytes Verify: 239 ms in 69248 bytes 25.0: Write: 199 ms in 60698 bytes Verify: 239 ms in 68096 bytes 26.0: Write: 199 ms in 61731 bytes Verify: 239 ms in 68608 bytes 27.0: Write: 199 ms in 61318 bytes Verify: 239 ms in 68800 bytes 28.0: Write: 199 ms in 61209 bytes Verify: 239 ms in 68416 bytes 29.0: Write: 199 ms in 60895 bytes Verify: 239 ms in 67968 bytes 30.0: Write: 199 ms in 61465 bytes Verify: 239 ms in 67648 bytes 31.0: Write: 199 ms in 61210 bytes Verify: 239 ms in 67776 bytes 32.0: Write: 199 ms in 60924 bytes Verify: 239 ms in 67456 bytes Rewrite: 199 ms in 60924 bytes Verify: 239 ms in 69824 bytes 33.0: Write: 199 ms in 60976 bytes Verify: 239 ms in 69888 bytes Rewrite: 199 ms in 60976 bytes Verify: 239 ms in 72576 bytes 34.0: Write: 199 ms in 60972 bytes Verify: 239 ms in 70912 bytes Rewrite: 199 ms in 60972 bytes Verify: 239 ms in 72768 bytes 35.0: Write: 199 ms in 60971 bytes Verify: 239 ms in 70528 bytes Rewrite: 199 ms in 60971 bytes Verify: 239 ms in 72512 bytes 36.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 69376 bytes Rewrite: 199 ms in 60975 bytes Verify: 240 ms in 72064 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 72128 bytes 37.0: Write: 199 ms in 60974 bytes Verify: 240 ms in 68992 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72000 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72192 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 71936 bytes 38.0: Write: 199 ms in 60975 bytes Verify: 239 ms in 68288 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71936 bytes Rewrite: 199 ms in 60975 bytes Verify: 239 ms in 71296 bytes 39.0: Write: 199 ms in 60974 bytes Verify: 239 ms in 69504 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72128 bytes Rewrite: 199 ms in 60974 bytes Verify: 239 ms in 72192 bytes

Floppy's #2 & #1 Boot Fine, and I can execute nsweep and setdisk, and initdsk.

Still have problems at tracks greater than 25, on some floppy's.

Thanks.

Larry

On Mon, Aug 2, 2021 at 8:22 AM David Given @.***> wrote:

It looks like it's mostly writing, but is running into problems with the inner tracks (which are the shortest and therefore the most problematic).

If you have the Kaypro booting at all, it'd be good to know whether it can make anything of the first disk (with the 267kHz clock). That'll let us know if it's even approximately right. There should be enough there to at least get the directory and a few files working, with read errors for anything in the higher tracks.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-891022917, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAXOQA4TH6EQ4W2TCTDT22LXZANCNFSM5ADRFYWQ .

davidgiven commented 3 years ago

That's weird. I have no idea why it might be doing that.

That's said, the fluxengine seek command will let you manually move the head, which might be useful here; and you can also do fluxengine rawwrite -s erase: -d ... to erase a disk.

When the FluxEngine is powered on, it should move the heads of any connected drives to 0. Do you see anything happen? Does the head movement sound, um, unusually crunchy? I've had one drive where the drive rails needed lubrication, causing large head movements to fail but small ones still worked (I did a video where I lubricated it here: https://www.youtube.com/watch?v=csryg56feu8). But I don't see why the rpm command wouldn't work.

ldkraemer commented 3 years ago

David, NOPE, I power on the Floppy with all the cables positioned and have the USB ready to plug in my Laptop. When I plug in the Fluxengine, the BLUE LED on the Cypress Board Light BRIGHT BLUE, But the Drive doesn't get the RED LED "ON" and the head does not step. It just sits there. I used to see the Red Drive LED come on and the Head would at least load or click once. But, lately no movement or response from a seek or RPM command via command line. Drive has DS1 Selected in a DS{0..3} configuration.

Mitsubishi Drive rails are lubed with Dri-Slide a Motorcycle Lubricant that does not attract dirt. It slides easily by hand. I pulled the drive from my Leading Edge Model M Computer for testing.

Thanks.

Larry

On Thu, Aug 5, 2021 at 11:17 AM David Given @.***> wrote:

That's weird. I have no idea why it might be doing that.

That's said, the fluxengine seek command will let you manually move the head, which might be useful here; and you can also do fluxengine rawwrite -s erase: -d ... to erase a disk.

When the FluxEngine is powered on, it should move the heads of any connected drives to 0. Do you see anything happen? Does the head movement sound, um, unusually crunchy? I've had one drive where the drive rails needed lubrication, causing large head movements to fail but small ones still worked (I did a video where I lubricated it here: https://www.youtube.com/watch?v=csryg56feu8). But I don't see why the rpm command wouldn't work.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-893587562, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAVWQHH47C324M6ASXLT3K2RVANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

ldkraemer commented 3 years ago

David, I've been having a problem with my Linux laptop where the hard drive gets clobbered. When I try to turn off my Laptop it hangs with an error message about a hardware problem and the only way to power it off is to hold the Power Button down until it dies. On startup FSCK has to run and I check /dev/sda3 to recover the filesystem. Sometimes, I have to boot a LiveCD of Debian 10.x - 64 bit to let the LiveCD recover my partition.

It happened again yesterday, after I downloaded the latest version of Fluxengine, rebuilt it, and executed it to test both floppy drives. I know it sounds crazy, but I have associated this ongoing corruption of my hard drive, with the execution of Fluxengine. If I do not use Fluxengine I don't see the drive corruption. If I execute Fluxengine, I'll see the problem when I power down.

I originally thought I was having a Hard Drive issue, but since I had not used Fluxengine for a few days, I didn't have any problems until I tried using it again yesterday.

How can I help you locate what is going on? I can take Photo's of the locked system the next time it happens and take a video of a startup where FSCK recovers the files system, if that will help.

/dev/sda1 is a 100mb Boot partition /dev/sda2 is a Win 7 OEM Partition that I never have Booted or setup. /dev/sda3 is my Linux Debian 9.x - 64 Bit Install /dev/sda4 is my Linux Swap Partition which is 2x my RAM.

Larry

On Thu, Aug 5, 2021 at 11:17 AM David Given @.***> wrote:

That's weird. I have no idea why it might be doing that.

That's said, the fluxengine seek command will let you manually move the head, which might be useful here; and you can also do fluxengine rawwrite -s erase: -d ... to erase a disk.

When the FluxEngine is powered on, it should move the heads of any connected drives to 0. Do you see anything happen? Does the head movement sound, um, unusually crunchy? I've had one drive where the drive rails needed lubrication, causing large head movements to fail but small ones still worked (I did a video where I lubricated it here: https://www.youtube.com/watch?v=csryg56feu8). But I don't see why the rpm command wouldn't work.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/davidgiven/fluxengine/issues/300#issuecomment-893587562, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIWRMAVWQHH47C324M6ASXLT3K2RVANCNFSM5ADRFYWQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&utm_campaign=notification-email .

davidgiven commented 3 years ago

Hmm. That's extremely suspicious. The only electric issue I can think of which might be related is power related, because you end up having the computer's power supply and the FDD's power supply connected together via the FluxEngine.

Do you have these plugged into different wall sockets? Is there a chance they're on different circuits or phases? Also, does the FluxEngine itself have the FDD ground wires connected up?

ourIThome commented 3 years ago

I had a thought...

Is the laptop powered by cable or are you running it from battery?

Is the hard drive using spinning disks or is it a ssd? I would imagine spinning disks use more power than ssd?

ldkraemer commented 3 years ago

David, The HP Elitebook 8460P is powered from the same (USA) 115 VAC Duplex Outlets (2 - Duplex Outlets in one Box) as the 115 VAC Plug for the Floppy Disk Drive. My USB is Version 2.0 USB port.

Everything is Single Phase in the USA for homes. No three Phase, but we do have 220 VAC Available.

My Laptop has a 2.5" Hitachi 1TB Hard Drive that spins at 7200 RPM. I've had good luck with the HGST (Hitachi) Hard Drives, so I stick with them. (I'd have to look for sure because some of my Hitachi drives are 5400 RPm.

Maybe I need to reload my Cypress Board(s), or I could test with the second one I have programmed.

Thanks.

Larry

davidgiven commented 3 years ago

My understanding is that the US uses two-phase, with 110V wall sockets connected from ground to either phase and 220V sockets connected from one phase to the other. So, which phase a wall socket is on can vary depending on how the circuit is wired. But if you're connecting both to the same wall socket they'll have to be on the same phase so that's not the problem.

Could you check the grounding? Make sure that the GND pin on the FluxEngine is connected to the ground pin on the FDD power supply connector --- this should happen through the non-signal pins on the FDC socket.

ldkraemer commented 3 years ago

David, Yes, you are correct on the two 115v phases, and I'm plugged into the same duplex with the Computer and the Floppy Drive. All odd Ribbon cable conductors are strapped to GND on the Fluxengine. So, I should be good there.

The odd thing is today everything seems to be working fine, except for the BASF floppy's which are running about 1ms faster in RPM than the Plain Label. The Plain Label are right at 298.5 RPM every time I check with an occasional 300RPM, while BASF constantly display 300 RPM. And that makes sense as there isn't enough time for the Fluxengine to write all the data in the 200 ms on the inner tracks, with the easier and faster spinning BASF floppy.

I even powered my Laptop off, and it shut down properly, and also restarted properly. It beats me, but I'm the user that typically has those type of crazy problems.

Thanks.

Larry