It was interesting to have a look at the V*.RAW Image. I think I know what is going on with that image.
Your Directory is located at 0x2000 = 8192 Decimal. And the first track is 128 Bytes x 24 sectors long
making it the boot track (track 0). The remainder of the floppy is 512 x 10 sectors.
What I did was to move the beginning of track 1 to 5120 (512 x 10). I used dd in Linux to do that.
dd is also known as DATA DESTROYER.
$dd if=vistaorig.raw skip=3072 bs=1 of=vtest.raw conv=notrunc;sync
(I renamed your original file just to make it easier to type.)
This chopped off the first track (track 0 = boot track) and has the Directory located where cpmtools
would typically look. (I've had trouble with cpmtools trying to access other images with an odd
ball Boot track that was Single Density.)
Then, it was just a matter of getting the Definition correct enough to extract the files so the ASCII
or TEXT files were SANE. That did take a bit of work, but it finally worked.
The three linux commands I used were:
build the new code
$gcc -o mmcpm3U1 mmcpm3U1.c
See if it gives a proper directory
$./mmcpm3U1 vistaorig.raw
extract the files
$./mmcpm3U1 copy vistaorig.raw
If the data had been inverted I could have used
$gcc -o mmcpm3U1 mmcpm3U1.c
$./mmcpm3U1 examine vistaorig.raw
$./mmcpm3U1 copy vista.img
I wasn't able to use cpmtools ver 2.21 because it barfs when trying to access the HEX bytes of your file.
And the OFS xxxx (with BOOTTRK 0) doesn't seem to want to work on your original file. So, I located the
DIRECTORY and just chopped xxxx bytes to make the Directory start at 5120 (Decimal) and then I can
access it properly with mmcpm (a modified mmcpm.c)
The attached text file will give you the information you are wanting. I think the files are good since the DOC and
.ASM files appear to be SANE. But, the ONLY way to know for sure is a BINARY COMPARE or just try
them in CP/M (if you dare).
Maybe your cpmtools version will work with this definition:# Sorcerer Vista 5.25" SS 40T (40T 10x512 s/t)
diskdef vista
seclen 512
tracks 40
sectrk 10
heads 1
blocksize 1024
#maxdir 128
maxdir 64
skew 0
# skewstart 1
# datasect 1
# boottrk 1
#0x2000 = 8192 was original DIR location
# offset 5120
offset 8192
boottrk 0
os 2.2
end
If not, you can always chop off the first 3072 bytes and use the offset of 5120.
# vista - Sorcerer Vista - SSDD 48 tpi 5.25" - 512 x 10
diskdef vista
seclen 512
tracks 40
sectrk 10
secbase 0
blocksize 1024
maxdir 64
skew 0
offset 8192
boottrk 0
os 2.2
end
# libdsk data below
[vista]
description = Sorcerer Vista - SSDD 48 tpi 5.25" - 512 x 10
cylinders = 40
heads = 1
secsize = 512
sectors = 10
secbase = 0
datarate = DD
Larry
View attachment vtest_info.txt