Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
cpm:cpmtools [2015/01/15 14:11] – [Build] volkerpcpm:cpmtools [2024/04/10 06:27] (aktuell) – [Format description] volkerp
Zeile 3: Zeile 3:
 http://www.moria.de/~michael/cpmtools/ http://www.moria.de/~michael/cpmtools/
  
-Format description+GUI -> http://star.gmobb.jp/koji/cgi/wiki.cgi?page=CpmtoolsGUI 
 + 
 +https://www.seasip.info/Unix/LibDsk/ 
 + 
 +===== Format description ===== 
  
 <code> <code>
  
 diskdef name format definition diskdef name format definition
-  seclen n 128,256,512,1024,.. Sector length +  seclen n 128,256,512,1024,.. physical Sector length 
-  tracks n 1.. Number of tracks +  tracks n 1.. Number of tracks                 = (Cylinders * Sides) 
-  sectrk n 1.. Sectors per track +  sectrk n 1.. phys. Sectors per track 
-  blocksize n 1024,2048,4096,8192,16384 Block size +  blocksize n 1024,2048,4096,8192,16384 Block size = (128*(BLM+1)) 
-  maxdir n 1.. Number of directory entries+  maxdir n 1.. Number of directory entries      = (DRM+1) 
 +  boottrk n Number of system tracks              = OFS 
 +rest is optional 
 +  dirblks n                             to allow reserving blocks after the directory using an inflated DPB ALV0 (since 2.21) 
 +  bootsec n                             total numbers of sectors used by the boot area
   skew n 0.. Logical sector skew   skew n 0.. Logical sector skew
   skewtab r1,r2,r3,... skew table   skewtab r1,r2,r3,... skew table
-  boottrk n Number of system tracks +  offset n | nK | nM | nT | nS n Byte|n Kilobyte|n Megabyte|n Tracks|n Sectors 
-  offset n | nK | nM | nT n Byte|n Kilobyte|n Megabyte|n Tracks +  logicalextents n Logical extents per physical extent
-  logicalextents Logical extents per physical extent+
   os 2.2 | 3 | isx | p2dos | zsys    os 2.2 | 3 | isx | p2dos | zsys
-  libdsk:format name pcw720, cpcsys+  libdsk:format name pcw720,cpcsys, etc.   (Optional kann der Typ mit übergeben werden: format[,type])
 end end
    
Zeile 25: Zeile 33:
 Berechnungen: Berechnungen:
  
-size := (secLength*sectrk*(tracks-boottrk))/blksiz;+size := (secLength*sectrk*(tracks-boottrk))/blksiz;  
 if (extents==0) extents := ((size>=256 ? 8 : 16)*blksiz)/16384; if (extents==0) extents := 1; if (extents==0) extents := ((size>=256 ? 8 : 16)*blksiz)/16384; if (extents==0) extents := 1;
 Allocatabledatablocks := size-(maxdir*32+blksiz-1)/blksiz); Allocatabledatablocks := size-(maxdir*32+blksiz-1)/blksiz);
  
 posix: posix:
-physical pos := (sector+track*sectrk)*secLength)+offset;+physical pos := ((sector+track*sectrk)*secLength)+offset;
      
 +win32c:
 +SetFilePointer := ((sector+track*sectrk)*secLength)+offset; 
 +
 libdisk: libdisk:
-physical sector := track*sectrk + sector + offset/secLength;+physical sector := (track*sectrk + sector+ offset/secLength;
  
-win32c: 
-SetFilePointer ((sector+track*sectrk)*secLength)+offset;  
 </code> </code>
  
 Viele Hinweise zu libsk, cpmtools, ... und zur Analyse unbekannter Disketten gibt's von Larry Kraemer auf Viele Hinweise zu libsk, cpmtools, ... und zur Analyse unbekannter Disketten gibt's von Larry Kraemer auf
 http://forums.debian.net/viewtopic.php?f=16&t=112244 http://forums.debian.net/viewtopic.php?f=16&t=112244
 +
 +
 +
  
 ===== Build ===== ===== Build =====
Zeile 96: Zeile 108:
  
 <code> <code>
 +Changes since 2.22:
 +
 +o  Use 16 bit block pointers for file systems > 256 blocks, not >= 256
 +o  Translate CP/M file name character '/' to ',' for the host and back
 +o  dirblks in Kaypro format fixed
 +o  Misc fixes for directory listing
 +o  Added bootsec diskdefs option
 +o  Check Device_close return value
 +o  Check for too small block number when reading file data
 +o  Replaced obsolete macros in configure.in
 +o  Cygwin/Windows support did not build any more and likely not for quite
 +   some time, so it was removed.
 +
 +
 +Changes since 2.21:
 +
 +o  Refactored curses terminal calls into own module
 +o  Many autoconf changes with the hope to improve portability and
 +   likely just breaking things
 +o  New diskdef for HP200
 +o  Added dirblks to allow reserving blocks after the directory
 +   as used by Kaypro
 +o  Fixed user number output for cpmls -d
 +o  Added option -u to show all CP/M file names in uppercase
 +
 +
 +Changes since 2.20:
 +
 +o  rc759 diskdef renamed to rc75x, as it works for the series
 +o  diskdefs.5 added
 +o  Many disk formats from Larry Kraemer added
 +o  Renamed ampdsdd to ampro400d for consistency with libdsk and because
 +   ampdsdd very likely was wrong
 +o  Check for invalid block size
 +o  Output line number for diskdefs errors
 +o  Correctly output create or access time for CP/M 3 in cpmls
 +o  Spectravideo SVI-728 diskdef added
 +o  $DESTDIR support
 +o  Correctly handle empty files
 +o  Fix block allocation for large directories.
 +o  Fix time stamp conversion
 +o  Allow user number 16-31 for CP/M 2.2
 +o  Intel MDS/22 formats added
 +o  Crash when using blocksize 16384 fixed
 +
 Changes since 2.19: Changes since 2.19:
  
Zeile 131: Zeile 188:
      
 </code> </code>
 +
 +
 +===== libdisk-Formate und Typen =====
 +
 +<code>
 +d:>dskdump.exe -formats
 +Disk formats supported:
 +
 +   pcw180     : PCW / IBM 180k
 +   cpcsys     : CPC System
 +   cpcdata    : CPC Data
 +   pcw720     : PCW / IBM 720k
 +   pcw1440    : PcW16 / IBM 1440k
 +   ibm160     : IBM 160k (CP/M-86 / DOSPLUS)
 +   ibm320     : IBM 320k (CP/M-86 / DOSPLUS)
 +   ibm360     : IBM 360k (CP/M-86 / DOSPLUS)
 +   ibm720     : IBM 720k (144FEAT)
 +   ibm1200    : IBM 1.2M (144FEAT)
 +   ibm1440    : IBM 1.4M (144FEAT)
 +   acorn160   : Acorn 160k
 +   acorn320   : Acorn 320k
 +   acorn640   : Acorn 640k
 +   acorn800   : Acorn 800k
 +   acorn1600  : Acorn 1600k
 +   pcw800     : PCW 800k
 +   pcw200     : PCW 200k
 +   bbc100     : BBC 100k
 +   bbc200     : BBC 200k
 +   mbee400    : Microbee 400k
 +   mgt800     : MGT 800k
 +   trdos640   : TR-DOS 640k
 +   ampro200   : Ampro 40 track single-sided
 +   ampro400d  : Ampro 40 track double-sided
 +   ampro400s  : Ampro 80 track single-sided
 +   ampro800   : Ampro 80 track double-sided
 +   pcw1200    : PcW16 / IBM 1200k
 +   mac400     : Macintosh GCR 400k
 +   mac800     : Macintosh GCR 800k
 +   myz80      : MYZ80 8Mb
 +   pcpm320    : IBM 320k (CP/M-86 / DOSPLUS)
 +   
 +d:>dskdump.exe -types
 +Disk image types supported:
 +
 +   ntwdm      : NT WDM floppy driver
 +   floppy     : Win32 floppy driver
 +   gotek      : Gotek 1440k disc image collection
 +   gotek72    : Gotek 720k disc image collection
 +   remote     : Remote LibDsk instance
 +   rcpmfs     : Reverse CP/MFS driver
 +   dsk        : CPCEMU .DSK driver
 +   edsk       : Extended .DSK driver
 +   apridisk   : APRIDISK file driver
 +   copyqm     : CopyQM file driver
 +   tele       : TeleDisk file driver
 +   ldbs       : LibDsk block store
 +   sap        : SAP file driver
 +   qrst       : Quick Release Sector Transfer
 +   imd        : IMD file driver
 +   ydsk       : YAZE YDSK driver
 +   raw        : Raw file driver (alternate sides)
 +   rawoo      : Raw file driver (out and out)
 +   rawob      : Raw file driver (out and back)
 +   myz80      : MYZ80 hard drive driver
 +   simh       : SIMH disc image driver
 +   nanowasp   : NanoWasp image file driver
 +   logical    : Raw file logical sector order
 +   jv3        : JV3 file driver
 +   dc42       : Disk Copy 4.2
 +   cfi        : CFI file driver
 +</code>  
 +   
  • cpm/cpmtools.1421331090.txt.gz
  • Zuletzt geändert: 2015/01/15 14:11
  • von volkerp