IMageDisk Utility 1.18 / Mar 07 2012
IMD 1.17: 16/01/2010 16:20:45
word processing
130s21200 wp-a02.000 0981
Assuming 1:1 for Binary output
0/0 250 kbps SD 18x128
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
D D D D D D D D D D D D D D D D D D
1/0 D D D D D D D D D D D D D D D D D D
(Stuff deleted for brevity)
39/0 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5 DE5
40 tracks(40/0), 720 sectors (47 Compressed)
diskdef bbii
seclen 128
tracks 40
sectrk 18
blocksize 1024
maxdir 64
skew 0
boottrk 3
os 2.2
end
C:\Slask\cpm\images>..\cpmtools\cpmls -f bbii -d WORDPROC.RAW
XWS COM : WSMSGS OVR : WSOVLY1 OVR :
: : : ↕⌂↕
BDIR COM : PIP COM : STAT COM :
: : :
:
User 1
(garbage)
dev01:~/cpmutils/images # cpmls -f bbii -T imd -d WORDPROC.IMD
XWS COM : WSMSGS OVR : WSOVLY1 OVR :
: : :
BDIR COM : PIP COM : STAT COM :
: : :
:
dev01:~/cpmutils/images # cpmcp -f bbii -T raw WORDPROC.RAW text.txt 1:TEXT.TXT
dev01:~/cpmutils/images # cpmls -f bbii -T raw -d WORDPROC.RAW
XWS COM : WSMSGS OVR : WSOVLY1 OVR :
: : :
BDIR COM : PIP COM : STAT COM :
: : :
:
User 1
TEXT TXT : T)
dev01:~/cpmutils/images # cpmcp -f bbii -T imd WORDPROC.IMD text.txt 1:TEXT.TXT
dev01:~/cpmutils/images # cpmls -f bbii -T imd -d WORDPROC.IMD
XWS COM : WSMSGS OVR : WSOVLY1 OVR :
: : :
BDIR COM : PIP COM : STAT COM :
: : :
:
User
cpmls -f bbii -d WORDPROC.IMD
dskscan
dsktrans
dskdump
dskform
dskid
dskutil
man dskscan
man dsktrans
man dskdump
man dskform
man dskid
man dskutil
NO!I was under the impression that libdsk was required to manipulate IMD files?
YESI can use cpmutils to add a file to a RAW image, but not to an IMD one. Would that be normal?
NAME
dsktrans - Copy from one floppy or image file to another
SYNOPSIS
dsktrans [-itype TYPE] [-otype TYPE] [-iside SIDE] [-oside SIDE]
[-icomp COMP] [-ocomp COMP] [-idstep] [-odstep] [-retry COUNT] [-format
FMT] [-first CYLINDER] [-last CYLINDER] [-comment TEXT] [-comment
@FILE] [-md3] [-logical] [-apricot] [-pcdos] [-noformat] INPUT-IMAGE
OUTPUT-IMAGE
DESCRIPTION
Dsktrans copies floppy discs or images, optionally converting image
types. This is a high-level copy which assumes that the disc has a
straightforward geometry; all the tracks are assumed to have the same
layout of sectors, and interleave is not preserved. See dskdump(1) for
a slower but more accurate copy which may preserve more of these
details.
C:\Slask\cpm\images>..\imd\imdu CPM.IMD CPM.RAW /B /E
IMageDisk Utility 1.18 / Mar 07 2012
IMD 1.18: 17/11/2012 22:03:33
xerox 820 cp/m
130s22100 (ds) cp/m-rev 3.000 1281
Assuming 1:1 for Binary output
CPM.RAW already exists - proceed(Y/N)?Y
0/0 300 kbps SD 18x128
40 tracks(40/0), 720 sectors (44 Compressed)
dev01:~/cpmutils/images # dskid CPM.IMD
CPM.IMD:
Driver: IMD file driver
Sidedness: Alt
Cylinders: 40
Heads: 1
Sectors: 18
First sector: 1
Sector size: 128
Data rate: DD
Record mode: FM
R/W gap: 0x2a
Format gap: 0x52
Drive status: 0x20
Comment: xerox 820 cp/m
130s22100 (ds) cp/m-rev 3.000 1281
dev01:~/cpmutils/images # cpmls -f bbii -T raw -d CPM.RAW
STAT COM : DDT COM : XSUB COM : CBIOS MAC
M80 COM : INIT COM : DUMP COM : COPY COM
SYS : SUBMIT COM : L80 COM : SYSGEN COM
R/ : MR" : PIP COM : ED COM
User 14
M
M I : MLI!* P+Q
cpmrm -f bbii -T raw CPM.RAW L80.COM
cpmcp -f bbii -T raw CPM.RAW text.txt 0:TEXT.TXT
cpmls -f bbii -T raw -d CPM.RAW
STAT COM : DDT COM : XSUB COM : TEXT TXT
INIT COM : DUMP COM : COPY COM : SYS
SUBMIT COM : SYSGEN COM : R/ : MR"
PIP COM : ED COM
User 14
M
M I : MLI!* P+Q
C:\Slask\cpm\images>..\imd\bin2imd CPM.RAW CPMNEW.IMD N=40 SS=128 DM=2 SM=1-18 /
18 /1
BINary-2-IMageDisk 1.18 / Mar 07 2012
dev01:~/cpmutils/images # dsktrans -itype raw -otype imd CPM.RAW CPMNEW.IMD
Identifying disc: Bad forma
C:\Elektronik\cpm\images>samdisk CPM.RAW CPMNEW.IMD
Error: unrecognised image format
00001400 00 53 55 42 4D 49 54 20 20 43 4F 4D 00 00 00 0A .SUBMIT COM....
00001410 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001420 00 4D 45 4E 55 20 20 20 20 44 41 54 00 00 00 01 .MENU DAT....
00001430 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001440 00 52 45 41 44 45 52 41 20 42 41 4B 00 00 00 09 .READERA BAK....
00001450 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001460 00 53 4B 20 20 20 20 20 20 43 4F 4D 00 00 00 1A .SK COM....
00001470 05 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001480 00 46 49 58 4B 45 59 20 20 43 4F 4D 00 00 00 51 .FIXKEY COM...Q
00001490 07 08 09 0A 0B 0C 00 00 00 00 00 00 00 00 00 00 ................
000014A0 00 4D 4F 56 43 50 4D 20 20 43 4F 4D 00 00 00 4C .MOVCPM COM...L
000014B0 0D 0E 0F 10 11 00 00 00 00 00 00 00 00 00 00 00 ................
000014C0 00 4D 49 4C 45 53 54 4F 4E 43 4F 4D 00 00 00 62 .MILESTONCOM...b
000014D0 12 13 14 15 16 17 18 00 00 00 00 00 00 00 00 00 ................
000014E0 00 58 53 55 42 20 20 20 20 43 4F 4D 00 00 00 06 .XSUB COM....
000014F0 19 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 1A 1B 1C 1D 00 00 00 00 00 00 00 00 00 00 00 00 ................
00001520 00 41 53 4D 20 20 20 20 20 43 4F 4D 00 00 00 40 .ASM COM...@
00001530 1E 1F 20 21 00 00 00 00 00 00 00 00 00 00 00 00 .. !............
dev01:~/cpmutils/images # cpmls -f bbii -Timd -d X820CPM3.IMD STAT COM : DDT COM : XSUB COM : CBIOS MAC
M80 COM : INIT COM : DUMP COM : COPY COM
SUBMIT COM : L80 COM : SYSGEN COM : PIP COM
ED COM
#! /bin/sh
for file in ddboot1/*
do
cpmcp -f bbii -T raw DDBOOT1.RAW "$file" 0:"$(basename ${file^^})"
rc=$?; if [[ $rc != 0 ]]; then exit $rc; fi
done
dev01:~/cpmutils/images # dsktrans -itype raw -otype imd -format bbii DDBOOT1A.RAW TEST.IMD
Input driver: Raw file driver
Output driver:IMD file driver
dev01:~/cpmutils/images # cpmls -f bbii -Timd -d TEST.IMD
ASM COM : BB2CPM60 COM : BB2FORMT COM : BIOS ASM
BIOS DOC : CBIOS ASM : CPM60 COM : DDT COM
DEBLOCK ASM : DISKDEF LIB : DUMP ASM
dev01:~/cpmutils/images #