OK Dave we have some mixed results:
TESTING: PART 1 (SUCCESS)
--- I first upgraded from 4.19 to 4.29
---- Then edited analyze.c :
# diff analyze.c.bak analyze.c
1184,1190c1184,1190
< if (analyze_seek(drive_params) != 0) {
< drive_params->step_speed = DRIVE_STEP_SLOW;
< if (analyze_seek(drive_params) != 0) {
< msg(MSG_FATAL, "Drive is not seeking properly\n");
< exit(1);
< }
< }
---
> //if (analyze_seek(drive_params) != 0) {
> // drive_params->step_speed = DRIVE_STEP_SLOW;
> // if (analyze_seek(drive_params) != 0) {
> // msg(MSG_FATAL, "Drive is not seeking properly\n");
> // exit(1);
> // }
> // }
---- Make was OK:
----Successfully did mfm_read --analyze :
# ./mfm_read --analyze --emulation_file ../emufile_a --extracted_data_file CDC94155-86
Board revision C detected
Found drive at select 1
Drive RPM 3595.4
Found matching format ATT_3B2: good count difference 0
Number of heads 9 number of sectors 18 first sector 0
Interleave (not checked): 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Drive supports buffered seeks (ST412)
Found cylinder 924 expected 925
Found cylinder 924 expected 926
Stopping end of disk search due to mismatching cylinder count
Number of cylinders 925, 76.7 MB
Command line to read disk:
--format ATT_3B2 --sectors 18,0 --heads 9 --cylinders 925 --header_crc 0xffff,0x1021,16,0 --data_crc 0xffff,0x1021,16,0 --sector_length 512 --retries 50,4 --drive 1
Found cyl 0 to 924, head 0 to 8, sector 0 to 17
Expected 149850 sectors got 149850 good sectors, 0 bad header, 0 bad data
0 sectors marked bad or spare
0 sectors corrected with ECC. Max bits in burst corrected 0
Track read time in ms min 22.326500 max 356.282584 avg 33.515101
--- Note message "
Stopping end of disk search due to mismatching cylinder count"
--- However it did create the files:
-rw-r--r-- 1 root root 173559828 Sep 18 22:37 emufile_a
-rw-r--r-- 1 root root 76723200 Sep 18 22:37 CDC94155-86
--- Attached to the 3B2/400 and started emulator
./mfm_emu --drive 1 --file ../emufile_a
Board revision C detected
Drive 0 num cyl 925 num head 9 track len 20836 begin_time 0
PRU clock 200000000
Waiting, seek time 0.0 ms max 0.0 min free buffers 200
bad pattern count 0
Read queue underrun 0
Write queue overrun 0
Ecapture overrun 0
glitch count 0
glitch value 0
0:test 0 0
0:test 1 0
0:test 2 0
0:test 3 0
0:test 4 0
1:test 0 0
1:test 1 0
1:test 2 0
1:test 3 0
1:test 4 0
select 2 head 0
select 2 head 15
Waiting, seek time 0.3 ms max 0.3 min free buffers 200 ...
--- Started the 3B2. Had to do a "filledt" to populate the NVRAM device table, but after
that, it came up OK to UNIX.
--- I have been running it for a day now with many reboots and power cycles. It is working
100%
TESTING: PART 2 (FAILURE)
--- I tried the same process with a disk from another system 3B2/310. The 310 has the
same CPU and HD controller as the 400 afik. This disk was a Fujitsu M2243AS 86MB 754,11,16
--- Version 4.19 (original analyze.c)
--- mfm_read -analyze completed and created the expected files:
# ./mfm_read --analyze --emulation_file ../emufile_a --extracted_data_file M2243AS
Board revision C detected
Found drive at select 1
Returning to track 0
Drive RPM 3614.4
Matches count 32 for controller ATT_3B2
Header CRC: Polynomial 0x1021 length 16 initial value 0xffff
Sector length 512
Data CRC: Polynomial 0x1021 length 16 initial value 0xffff
Number of heads 11 number of sectors 16 first sector 0
Interleave (not checked): 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Drive supports buffered seeks (ST412)
Disk has recalibrated to track 0
Stopping end of disk search due to recalibration
Number of cylinders 754, 67.9 MB
Command line to read disk:
--format ATT_3B2 --sectors 16,0 --heads 11 --cylinders 754 --header_crc 0xffff,0x1021,16,0 --data_crc 0xffff,0x1021,16,0 --sector_length 512 --retries 50,4 --drive 1
Found cyl 0 to 753, head 0 to 10, sector 0 to 15
Expected 132704 sectors got 132704 good sectors, 0 bad header, 0 bad data
0 sectors marked bad or spare
0 sectors corrected with ECC. Max bits in burst corrected 0
Track read time in ms min 23.099875 max 144.676750 avg 33.848509
--- The system would not boot this image
TESTING: PART 3 (FAILURE)
-- Upgraded to 4.29
- Recompiled with revised analyze.c
- Tried mfm_read --analyze and this time it failed totally:
# ./mfm_read --analyze --emulation_file ../emufile_a --extracted_data_file M2243AS
Board revision C detected
Found drive at select 1
Returning to track 0
Drive RPM 3611.6
Retrying on cylinder 0 head 1
Unable to determine drive format
TESTING: PART 4 (FAILURE)
- I put the image from CDC drive (3b2/400) into the 3b2/310
- It would not boot there
- AT&T diskette utility "IDTOOLS" sees the drive, but attempting to access it suggests the
directory structure is scrambled.
I have a couple more 3B2 systems with different drives. I'm willing to do more testing,
but perhaps you can suggest a more structure approach, or gather some debug info.
Thanks,
John