move to debhelper compat 13, hopefully fixes cross-building
[debian/cpmtools] / diskdefs
1 diskdef ibm-3740
2   seclen 128
3   tracks 77
4   sectrk 26
5   blocksize 1024
6   maxdir 64
7   skew 6
8   boottrk 2
9   os 2.2
10 end
11
12 diskdef 4mb-hd
13   seclen 128
14   tracks 1024
15   sectrk 32
16   blocksize 2048
17   maxdir 256
18   skew 1
19   boottrk 0
20   os p2dos
21 end
22
23 diskdef sdcard
24   seclen 512
25   tracks 256
26   sectrk 64
27   blocksize 8192
28   maxdir 256
29   skew 0
30   boottrk 1
31   os 2.2
32 end
33
34 diskdef pcw
35   seclen 512
36   tracks 40
37   sectrk 9
38   blocksize 1024
39   maxdir 64
40   skew 1
41   boottrk 1
42   os 3
43   libdsk:format pcw180
44 end
45
46 diskdef pc1.2m
47   seclen 512
48   tracks 80
49   # this format uses 15 sectors per track, but 30 per cylinder
50   sectrk 30
51   blocksize 4096
52   maxdir 256
53   skew 1
54   boottrk 0
55   os 3
56 end
57
58 # CP/M 86 on 1.44MB floppies
59 diskdef cpm86-144feat
60   seclen 512
61   tracks 160
62   sectrk 18
63   blocksize 4096
64   maxdir 256
65   skew 1
66   boottrk 2
67   os 3
68   libdsk:format ibm1440
69 end
70
71 # CP/M 86 on 720KB floppies
72 diskdef cpm86-720
73   seclen 512
74   tracks 160
75   sectrk 9 
76   blocksize 2048
77   maxdir 256
78   skew 1
79   boottrk 2
80   os 3
81 end
82
83 diskdef cf2dd
84   seclen 512
85   tracks 160
86   sectrk 9
87   blocksize 2048
88   maxdir 256
89   skew 1
90   boottrk 1
91   os 3
92   libdsk:format pcw720
93 end
94
95 #amstrad: values are read from super block (special name hardcoded)
96
97 # Royal alphatronic
98 # setfdprm /dev/fd1 dd ssize=256 cyl=40 sect=16 head=2
99 diskdef alpha
100   seclen 256
101   tracks 40
102   sectrk 32
103   blocksize 2048
104   maxdir 128
105   skew 1
106   boottrk 2
107   os 2.2
108 end
109
110 # Apple II CP/M skew o Apple II DOS 3.3 skew
111 diskdef apple-do
112   seclen 256
113   tracks 35
114   sectrk 16
115   blocksize 1024
116   maxdir 64
117   skewtab 0,6,12,3,9,15,14,5,11,2,8,7,13,4,10,1
118   boottrk 3
119   os 2.2
120 end
121
122 # Apple II CP/M skew o Apple II PRODOS skew
123 diskdef apple-po
124   seclen 256
125   tracks 35
126   sectrk 16
127   blocksize 1024
128   maxdir 64
129   skewtab 0,9,3,12,6,15,1,10,4,13,7,8,2,11,5,14
130   boottrk 3
131   os 2.2
132 end
133
134 # MYZ80 hard drive (only works with libdsk, because it has a 256-byte header)
135 diskdef myz80
136   seclen 1024
137   tracks 64
138   sectrk 128
139   blocksize 4096
140   maxdir 1024
141   skew 1
142   boottrk 0
143   os 3
144   libdsk:format pcw720
145 end
146
147 # Despite being Amstrad formats, CPC System and CPC Data don't have an Amstrad 
148 # superblock. You'll need to use libdsk to access them because the Linux 
149 # and Windows kernel drivers won't touch them.
150 diskdef cpcsys
151   seclen 512
152   tracks 40
153   sectrk 9
154   blocksize 1024
155   maxdir 64
156   skew 1
157   boottrk 2
158   os 3
159   libdsk:format cpcsys
160 end
161 diskdef cpcdata
162   seclen 512
163   tracks 40
164   sectrk 9
165   blocksize 1024
166   maxdir 64
167   skew 1
168   boottrk 0
169   os 3
170   libdsk:format cpcdata
171 end
172
173 # after being read in with no sector skew.
174 diskdef nigdos
175   seclen 512
176   # NigDos double sided disk format, 42 tracks * 2 sides
177   tracks 84
178   sectrk 10
179   blocksize 2048
180   maxdir 128
181   skew 1
182   boottrk 0
183   # this format wastes half of the directory entry
184   logicalextents 1
185   os 3
186 end
187
188 diskdef epsqx10
189   seclen 512
190   tracks 40
191   sectrk 20
192   blocksize 2048
193   maxdir 128
194   skew 0
195   boottrk 2
196   os 2.2
197 end
198
199 diskdef ibm-8ss
200   seclen 512
201   tracks 40
202   sectrk 8
203   blocksize 1024
204   maxdir 64
205   skew 0
206   boottrk 1
207   os 2.2
208 end
209
210 diskdef ibm-8ds
211   seclen 512
212   tracks 40
213   sectrk 8
214   blocksize 1024
215   maxdir 64
216   skew 0
217   boottrk 1
218   os 2.2
219 end
220
221 diskdef electroglas
222   seclen 512
223   tracks 80
224   sectrk 10
225   blocksize 2048
226   maxdir 256
227   skew 0
228   boottrk 1
229   os 3
230 end
231
232 # IBM CP/M-86
233 # setfdprm /dev/fd1 sect=8 dtr=1 hd ssize=512 tpi=48 head=1
234 diskdef ibmpc-514ss
235    seclen 512
236    tracks 40
237    sectrk 8
238    blocksize 1024
239    maxdir 64
240    skew 1
241    boottrk 1
242    os 2.2
243    libdsk:format ibm160
244 end
245
246 # IBM CP/M-86
247 # setfdprm /dev/fd1 sect=8 dtr=1 hd ssize=512 tpi=48
248 diskdef ibmpc-514ds
249    seclen 512
250    tracks 80
251    sectrk 8
252    blocksize 2048
253    maxdir 64
254    skew 0
255    boottrk 2
256    os 2.2
257    libdsk:format ibm320
258 end
259
260 diskdef p112
261   seclen 512
262   tracks 160
263   sectrk 18
264   blocksize 2048
265   maxdir 256
266   skew 1
267   boottrk 2
268   os 3
269 end
270
271 diskdef p112-old
272   seclen 512
273   tracks 160
274   sectrk 18
275   blocksize 2048
276   maxdir 128
277   skew 1
278   boottrk 1
279   os 3
280 end
281
282 diskdef gide-cfa
283   seclen 512
284   tracks 1000
285   sectrk 16
286   blocksize 4096
287   maxdir 1024
288   skew 0
289   boottrk 2
290   os 3
291 end
292
293 diskdef gide-cfb
294   seclen 512
295   tracks 1000
296   sectrk 16
297   blocksize 4096
298   maxdir 1024
299   skew 0
300   boottrk 0
301 # Start of second partition
302   offset 1000trk
303   os 3
304 end
305
306 # AT&T/Olivetti Word Processor
307 diskdef attwp
308    seclen 256
309    tracks 80
310    sectrk 32
311    blocksize 2048
312    maxdir 128
313    boottrk 1
314    logicalextents 1
315    skewtab 0,2,4,6,8,10,12,14,1,3,5,7,9,11,13,15,16,18,20,22,24,26,28,30,17,19,21,23,25,27,29,31
316    os 2.2
317 end
318
319 # setfdprm /dev/fd0 zerobased SS DD ssize=512 cyl=40 sect=10 head=1
320 # Kaypro II
321 diskdef kpii
322   seclen 512
323   tracks 40
324   sectrk 10
325   blocksize 1024
326   maxdir 64
327   dirblks 4
328   skew 0
329   boottrk 1
330   os 2.2
331 end
332
333 # setfdprm /dev/fd0 zerobased DS DD ssize=512 cyl=40 sect=10 head=2
334 # Kayro IV
335 diskdef kpiv
336   seclen 512
337   tracks 80
338   sectrk 10
339   blocksize 2048
340   maxdir 64
341   dirblks 2
342   skew 0
343   boottrk 1
344   os 2.2
345 end
346
347 # setfdprm /dev/fd0 dd sect=10
348 diskdef interak
349   seclen 512
350   tracks 80
351   sectrk 20
352   blocksize 4096
353   maxdir 256
354   skew 1
355   boottrk 2
356   os 2.2
357 end
358
359 # Timex FDD3000 3"
360 diskdef fdd3000
361   seclen 256
362   tracks 40
363   sectrk 16
364   blocksize 1024
365   maxdir 128
366   boottrk 4
367   os 2.2
368   skew 7
369 end
370
371 # Timex FDD3000 3"
372 diskdef fdd3000_2
373   seclen 256
374   tracks 40
375   sectrk 16
376   blocksize 1024
377   maxdir 128
378   boottrk 2
379   os 2.2
380   skew 5
381 end
382
383 # Robotron 1715
384 diskdef 1715
385   seclen 1024
386   tracks 40
387   sectrk 5
388   blocksize 1024
389   maxdir 64
390   skew 0
391   boottrk 3
392   os 2.2
393 end
394
395 # Robotron 1715 with SCP3
396 diskdef 17153
397   seclen 1024
398   tracks 160
399   sectrk 5
400   blocksize 2048
401   maxdir 128
402   skew 0
403   boottrk 4
404   os 3
405 end
406
407 #DDR
408 diskdef scp624
409   seclen 256
410   tracks 160
411   sectrk 16
412   blocksize 2048
413   maxdir 128
414   skew 0
415   boottrk 2
416   os 2.2
417 end
418
419 diskdef scp640
420   seclen 256
421   tracks 160
422   sectrk 16
423   blocksize 2048
424   maxdir 128
425   skew 0
426   boottrk 0
427   os 2.2
428 end
429
430 diskdef scp780
431   seclen 1024
432   tracks 160
433   sectrk 5
434   blocksize 2048
435   maxdir 128
436   skew 0
437   boottrk 2
438   os 2.2
439 end
440
441 diskdef scp800
442   seclen 1024
443   tracks 160
444   sectrk 5
445   blocksize 2048
446   maxdir 128
447   skew 0
448   boottrk 0
449   os 2.2
450 end 
451
452 diskdef z9001
453   seclen 1024
454   tracks 160
455   sectrk 5
456   blocksize 2048
457   maxdir 192
458   skew 0
459   boottrk 0
460   os 2.2
461 end 
462
463 # Visual Technology Visual 1050 computer
464 diskdef v1050
465   seclen 512
466   tracks 80
467   sectrk 10
468   blocksize 2048
469   maxdir 128
470   skew 0
471   boottrk 2
472   os 3
473 end
474
475 # Microbee 40 track 5.25" disks
476 diskdef microbee40
477   seclen 512
478   tracks 80
479   sectrk 10
480   blocksize 2048
481   maxdir 128
482   skewtab 1,4,7,0,3,6,9,2,5,8
483   boottrk 2
484   os 2.2
485 end
486
487 diskdef dreamdisk40
488   seclen 512
489   tracks 80
490   sectrk 10
491   blocksize 2048
492   maxdir 128
493   skewtab 1,4,7,0,3,6,9,2,5,8
494   boottrk 2
495   os 2.2
496 end
497
498 diskdef dreamdisk80
499   seclen 512
500   tracks 160
501   sectrk 10
502   blocksize 2048
503   maxdir 256
504   skewtab 1,4,7,0,3,6,9,2,5,8
505   boottrk 2
506   os 2.2
507 end
508
509 # RC75x series
510 diskdef rc75x
511   seclen 1024
512   tracks 154
513   sectrk 8
514   blocksize 2048
515   maxdir 512
516   boottrk 4
517   os 3
518 end
519
520 # ICL Comet: 40 track 5.25" Single Sided
521 #
522 diskdef icl-comet-525ss
523    seclen 512
524    tracks 40
525    sectrk 10
526    blocksize 1024
527    maxdir 64
528    skewtab 0,3,6,9,2,5,8,1,4,7
529    boottrk 2
530    os 2.2
531 end
532
533 diskdef z80pack-hd
534   seclen 128
535   tracks 255
536   sectrk 128
537   blocksize 2048
538   maxdir 1024
539   skew 0
540   boottrk 0
541   os 2.2
542 end
543
544 diskdef z80pack-hdb
545   seclen 128
546   tracks 256
547   sectrk 16384
548   blocksize 16384
549   maxdir 8192
550   skew 0
551   boottrk 0
552   os 2.2
553 end
554
555 # Bondwell 12 and 14 disk images in IMD raw binary format
556 diskdef bw12
557   seclen 256
558   tracks 40
559   sectrk 18
560   blocksize 2048
561   maxdir 64
562   skew 1
563   boottrk 2
564   os 2.2
565 end
566
567 diskdef bw14
568   seclen 256
569   tracks 80
570   sectrk 18
571   blocksize 2048
572   maxdir 64
573   skew 1
574   boottrk 2
575   os 2.2
576 end
577
578 ############################
579 # north star cp/m  disks
580 ############################
581
582 #North Star floppy 360K
583
584 diskdef nsfd
585   seclen 512
586   tracks 70 
587   sectrk 10 
588   blocksize 2048
589   maxdir 64
590   skew 5  
591   boottrk 2
592   os 2.2
593 end
594
595
596 #North Star CP/M Virtual-Disk file on Hard Disk
597 # prepared with allocation factor = 4
598 # as in "CR CPMB 4000 4"
599 # needs to be copied off hard drive before you can 
600 # work on it with cpmtools
601
602 diskdef nshd4
603   seclen 512
604   tracks 512
605   sectrk 16 
606   blocksize 4096
607   maxdir 256
608   skew 0  
609   boottrk 0
610   os 2.2
611 end
612
613
614 #North Star CP/M Virtual-Disk file on Hard Disk
615 # prepared with allocation factor = 8
616 # as in "CR CPMB 6000 8"
617 # needs to be copied off hard drive before you can
618 # work on it with cpmtools
619
620 diskdef nshd8
621   seclen 512
622   tracks 1024
623   sectrk 16 
624   blocksize 8192
625   maxdir 256
626   skew 0  
627   boottrk 0
628   os 2.2
629 end
630
631 # Northstar Micro-Disk System MDS-A-D 175
632 diskdef mdsad175
633     seclen 512
634     blocksize 1024
635     tracks 35
636     maxdir 64
637     boottrk 2
638     sectrk 10
639     skew 5
640     os 2.2
641 end
642
643
644 # Northstar Micro-Disk System MDS-A-D 350
645 diskdef mdsad350
646    seclen 512
647    blocksize 2048
648    tracks 70
649    maxdir 64
650    boottrk 2
651    sectrk 10
652    skew 5
653    os 2.2
654 end
655
656
657 # Osborne 1
658 diskdef osborne1
659    seclen 1024
660    tracks 40
661    sectrk 5
662    blocksize 1024
663    maxdir 64
664    boottrk 3
665    os 2.2
666 end
667
668 # Osborne Nuevo/Vixen/4
669 diskdef osborne4
670    seclen 1024
671    tracks 80
672    sectrk 5
673    blocksize 2048
674    maxdir 128
675    skew 2
676    boottrk 2
677    os 2.2
678 end
679
680 # Lobo Max-80 8" CP/M 2
681 diskdef lobo2
682   seclen 256
683   tracks 77
684   sectrk 30
685   blocksize 2048
686   maxdir 64
687   skew 0
688   boottrk 2
689   os 2.2
690 end
691
692 #Lobo Max-80 8" CP/M 3
693 diskdef lobo3
694   seclen 512
695   tracks 77
696   sectrk 17
697   blocksize 2048
698   maxdir 64
699   skew 0
700   boottrk 2
701   os 3
702 end
703
704 # PRO CP/M RZ50 DZ format (Perhaps only 79 tracks should be used?)
705 diskdef dec_pro
706   seclen 512
707   tracks 80
708   sectrk 10
709   blocksize 2048
710   maxdir 128
711   skew 2
712   boottrk 2
713   os 2.2
714 end
715
716 # TDOS with DateStamper
717 diskdef tdos-ds
718   seclen 1024
719   tracks 77
720   sectrk 16
721   blocksize 2048
722   maxdir 256
723   skew 0
724   boottrk 1
725   os zsys
726 end
727
728 # The following entires are tested and working
729 # Most of the images are either from Don Maslin's archive or from
730 # Dave Dunfield's site, but not all - they are noted as well as
731 # their size.
732
733 # PMC Micromate
734 # Dave Dunfield's Imagedisk information from DSK conversion from IMD:
735 # IMageDisk Utility 1.18 / Mar 07 2012
736 # IMD 1.14: 10/03/2007 11:13:27
737 # PMC-101 MicroMate
738 # CP/M Plus
739 # System Master
740 # Assuming 1:1 for Binary output
741 # 0/0 250 kbps DD  5x1024
742 # 80 tracks(40/40), 400 sectors (12 Compressed)
743 # Entry derived from above - image size = 409,600, from Dave Dunfield
744 diskdef pmc101
745   seclen 1024
746   tracks 80
747   sectrk 5
748   blocksize 2048
749   maxdir 128
750   skew 0
751   boottrk 2
752   os 3
753 end
754   
755 # BEGIN td143ssdd8  Turbo Dos 1.43 - SSDD 8" - 512 x 16
756 # Test OK - image size = 630,784, from Don Maslin's archive
757 diskdef td143ssdd8
758   seclen 512
759   tracks 77
760   sectrk 9
761   blocksize 1024
762   maxdir 64
763   skew 0
764   boottrk 0
765   os 2.2
766 # DENSITY MFM ,LOW 
767 end
768
769 # BEGIN headsdd8  Heath H89, Magnolia CP/M - SSDD 8" - 512 x 16
770 # Test OK - image size = 630,784, from Don Maslin's archive
771 diskdef heassdd8
772   seclen 512
773   tracks 77
774   sectrk 16
775   blocksize 2048
776   maxdir 128
777   skew 0
778   boottrk 2
779   os 2.2
780 # DENSITY MFM ,LOW 
781 end
782
783 # ZEN7  Zenith Z-100 - SSDD 48 tpi 5.25" - 512 x 8
784 diskdef zen7
785   seclen 512
786   tracks 40
787   sectrk 8
788   blocksize 1024
789   maxdir 128
790   skew 1
791   boottrk 2
792   os 2.2
793 end
794
795 # ZEN8  Zenith Z-100 - DSDD 48 tpi 5.25" - 512 x 8
796 diskdef zen8
797   seclen 512
798   tracks 80
799   sectrk 8
800   blocksize 2048
801   maxdir 256
802   skew 1
803   boottrk 2
804   os 2.2
805 end
806
807 # ZEN9  Zenith Z-100 - SSSD 8" - 128 x 26
808 diskdef zen9
809   seclen 128
810   tracks 77
811   sectrk 26
812   blocksize 1024
813   maxdir 64
814   skew 6
815   boottrk 2
816   os 2.2
817 end
818
819 # ZENA  Zenith Z-100 - SSDD 8" - 256 x 26
820 diskdef zena
821   seclen 256
822   tracks 77
823   sectrk 26
824   blocksize 2048
825   maxdir 128
826   skew 9
827   boottrk 2
828   os 2.2
829 end
830
831 # Morrow Designs Micro-Decision         DOUBLE
832 # 64k CP/M Vers. 2.2 Rev.2.3            SIDED
833 # Copyright '76, '77, '78, '79, '80
834 # Digital Research
835 # Copyright 1982,1983 Morrow Designs, Inc.
836 # Assuming 1:1 for Binary output
837 #  0/0 250 kbps DD  5x1024
838 # 80 tracks(40/40), 400 sectors (128 Compressed)
839 # Entry derived from above data
840 # Test OK - image siae = 409600, from Dave Dunfield
841 diskdef mordsdd
842   seclen 1024
843   tracks 80
844   sectrk 5
845   blocksize 2048
846   maxdir 128
847   skew 3
848   boottrk 2
849   OS 2.2
850 end
851
852
853 # BEGIN morsddd Morrow MD2 - SSDD 48 tpi 5.25" - 1024 x 5
854 # Test OK - image size = 204,800, from Don Maslin's archive
855 # Also tested with image from Dave Dunfield
856 diskdef morsddd
857   seclen 1024
858   tracks 40
859   sectrk 5
860   blocksize 2048
861   maxdir 128
862   skew 3
863   boottrk 2
864   os 2.2
865 # DENSITY MFM ,LOW 
866 # BSH 4 BLM 15 EXM 1 DSM 94 DRM 127 AL0 0C0H AL1 0 OFS 2
867 end
868
869 # BEGIN osb1sssd  Osborne 1 - SSSD 48 tpi 5.25" - 256 x 10
870 # Test OK - image size = 102,400, from Don Maslin's archive
871 diskdef osb1sssd
872   seclen 256
873   tracks 40
874   sectrk 10
875   blocksize 2048
876   maxdir 64
877   skew 2
878   boottrk 3
879   os 2.2
880 # DENSITY MFM ,LOW 
881 # BSH 4 BLM 15 EXM 1 DSM 45 DRM 63 AL0 080H AL1 0 OFS 3
882 end
883
884 # BEGIN altdsdd  Altos - DSDD 5" - 512 x 9
885 # Test OK - both CP/M and MP/M - image size = 737,280, from Dave Dunfield
886 diskdef altdsdd
887   seclen 512
888   tracks 160
889   sectrk 9
890   blocksize 4096
891   maxdir 177
892   skew 0
893   boottrk 2
894   os 3
895 # DENSITY MFM ,HIGH 
896 # BSH 5 BLM 31 EXM 3 DSM 176 DRM 176 AL0 0C0H AL1 0 OFS 2
897 end
898
899 # All TRS formats added by Larry Kraemer
900
901 # BEGIN trsomsssd  TRS-80 Model 1, Omikron CP/M - SSSD 48 tpi 5.25" - 128 x 18
902 # Test OK - image size = 80,640, from TRS-80 Yahoo Group posting
903 diskdef trsomsssd
904   seclen 128
905   tracks 35
906   sectrk 18
907   blocksize 1024
908   maxdir 64
909   skew 4
910   boottrk 3
911   os 2.2
912 # DENSITY FM ,LOW 
913 # BSH 3 BLM 7 EXM 0 DSM 71 DRM 63 AL0 0C0H AL1 0 OFS 3
914 end
915
916 diskdef trsg         #= TRS-80 Model 4,4P Montezuma System 170K - SSDD 48 tpi 5.25"
917   seclen 256         #= Sectors xx,256
918   tracks 40          #= (Cylinders * Sides) = 40*1 = 40
919 # sides alt          #= Order of Cylinders  = alt, outout, outback
920   sectrk 18          #= Sectors 18,xxx
921   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
922   maxdir 128         #= (DRM+1) = 128
923 #  datarate DD        #= DENSITY SD, DD, HD, or ED
924 #  FM NO              #= Format YES = FM, or NO = MFM
925   skew 2             #= [0..8] try 2
926   boottrk 2          #= OFS = 2
927 #                    #= 2, 2.2, or 3 (NO comment on next line)
928   os 2.2
929 end
930
931 diskdef trsh         #= TRS-80 Model 4,4P Montezuma Data 200K - SSDD 48 tpi 5.25"
932   seclen 512         #= Sectors xx,512
933   tracks 40          #= (Cylinders * Sides) = 40*1 = 40
934 # sides alt          #= Order of Cylinders  = alt, outout, outback
935   sectrk 10          #= Sectors 10,xxx
936   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
937   maxdir 128         #= (DRM+1) = 128
938 #  datarate DD        #= DENSITY SD, DD, HD, or ED
939 #  FM NO              #= Format YES = FM, or NO = MFM
940   skew 2             #= [0..8] try 2
941   boottrk 0          #= OFS = 0
942 #                    #= 2, 2.2, or 3 (NO comment on next line)
943   os 2.2
944 end
945
946 diskdef trsi         #= TRS-80 Model 4,4P Montezuma System 350K - DSDD 48 tpi 5.25"
947   seclen 256         #= Sectors xx,256
948   tracks 80          #= (Cylinders * Sides) = 40*2 = 80
949 #  sides outout       #= Order of Cylinders  = alt, outout, outback
950   sectrk 18          #= Sectors 18,xxx
951   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
952   maxdir 128         #= (DRM+1) = 128
953 #  datarate DD        #= DENSITY SD, DD, HD, or ED
954 #  FM NO              #= Format YES = FM, or NO = MFM
955   skew 2             #= [0..8] try 2
956   boottrk 2          #= OFS = 2
957 #                    #= 2, 2.2, or 3 (NO comment on next line)
958   os 2.2
959 #end
960
961 diskdef trsj         #= TRS-80 Model 4,4P Montezuma Data 400K - DSDD 48 tpi 5.25"
962   seclen 512         #= Sectors xx,512
963   tracks 80          #= (Cylinders * Sides) = 40*2 = 80
964 #  sides outout       #= Order of Cylinders  = alt, outout, outback
965   sectrk 10          #= Sectors 10,xxx
966   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
967   maxdir 128         #= (DRM+1) = 128
968 #  datarate DD        #= DENSITY SD, DD, HD, or ED
969 #  FM NO              #= Format YES = FM, or NO = MFM
970   skew 2             #= [0..8] try 2
971   boottrk 0          #= OFS = 0
972 #                    #= 2, 2.2, or 3 (NO comment on next line)
973   os 2.2
974 end
975
976 diskdef trsk         #= TRS-80 Model 4,4P Montezuma System 350K - SSDD 96 tpi 5.25"
977   seclen 256         #= Sectors xx,256
978   tracks 80          #= (Cylinders * Sides) = 80*1 = 80
979 # sides alt          #= Order of Cylinders  = alt, outout, outback
980   sectrk 18          #= Sectors 18,xxx
981   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
982   maxdir 128         #= (DRM+1) = 128
983 #  datarate DD        #= DENSITY SD, DD, HD, or ED
984 #  FM NO              #= Format YES = FM, or NO = MFM
985   skew 2             #= [0..8] try 2
986   boottrk 2          #= OFS = 2
987 #                    #= 2, 2.2, or 3 (NO comment on next line)
988   os 2.2
989 end
990
991 diskdef trsl         #= TRS-80 Model 4,4P Montezuma Data 400K - SSDD 96 tpi 5.25"
992   seclen 512         #= Sectors xx,512
993   tracks 80          #= (Cylinders * Sides) = 80*1 = 80
994 # sides alt          #= Order of Cylinders  = alt, outout, outback
995   sectrk 10          #= Sectors 10,xxx
996   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
997   maxdir 128         #= (DRM+1) = 128
998 #  datarate DD        #= DENSITY SD, DD, HD, or ED
999 #  FM NO              #= Format YES = FM, or NO = MFM
1000   skew 2             #= [0..8] try 2
1001   boottrk 0          #= OFS = 0
1002 #                    #= 2, 2.2, or 3 (NO comment on next line)
1003   os 2.2
1004 end
1005
1006 diskdef trsm         #= TRS-80 Model 4,4P Montezuma System 710K - DSDD 96 tpi 5.25"
1007   seclen 256         #= Sectors xx,256
1008   tracks 160         #= (Cylinders * Sides) = 80*2 = 160
1009 #  sides alt          #= Order of Cylinders  = alt, outout, outback
1010   sectrk 18          #= Sectors 18,xxx
1011   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1012   maxdir 128         #= (DRM+1) = 128
1013 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1014 #  FM NO              #= Format YES = FM, or NO = MFM
1015   skew 2             #= [0..8] try 2
1016   boottrk 2          #= OFS = 2
1017 #                    #= 2, 2.2, or 3 (NO comment on next line)
1018   os 2.2
1019 end
1020
1021 diskdef trsn         #= TRS-80 Model 4,4P Montezuma Data 800K - DSDD 96 tpi 5.25"
1022   seclen 512         #= Sectors xx,512
1023   tracks 160         #= (Cylinders * Sides) = 80*2 = 160
1024 #  sides alt          #= Order of Cylinders  = alt, outout, outback
1025   sectrk 10          #= Sectors 10,xxx
1026   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1027   maxdir 128         #= (DRM+1) = 128
1028 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1029 #  FM NO              #= Format YES = FM, or NO = MFM
1030   skew 0             #= [0..8] try 2
1031   boottrk 0          #= OFS = 0
1032 #                    #= 2, 2.2, or 3 (NO comment on next line)
1033   os 2.2
1034 end
1035
1036 diskdef trso         #= TRS-80 Model 4,4P Montezuma Extend System 190K - SSDD 48 tpi 5.25"
1037   seclen 512         #= Sectors xx,512
1038   tracks 40          #= (Cylinders * Sides) = 40*1 = 40
1039 # sides alt          #= Order of Cylinders  = alt, outout, outback
1040   sectrk 10          #= Sectors 10,xxx
1041   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1042   maxdir 128         #= (DRM+1) = 128
1043 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1044 #  FM NO              #= Format YES = FM, or NO = MFM
1045   skew 2             #= [0..8] try x
1046   boottrk 2          #= OFS = 2
1047 #                    #= 2, 2.2, or 3 (NO comment on next line)
1048   os 2.2
1049 end
1050
1051 diskdef trsp         #= TRS-80 Model 4,4P Montezuma Extend System 390K - DSDD 48 tpi 5.25"
1052   seclen 512         #= Sectors xx,512
1053   tracks 80          #= (Cylinders * Sides) = 40*2 = 80
1054 #  sides alt          #= Order of Cylinders  = alt, outout, outback
1055   sectrk 10          #= Sectors 10,xxx
1056   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1057   maxdir 128         #= (DRM+1) = 128
1058 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1059 #  FM NO              #= Format YES = FM, or NO = MFM
1060   skew 2             #= [0..8] try 2
1061   boottrk 2          #= OFS = 2
1062 #                    #= 2, 2.2, or 3 (NO comment on next line)
1063   os 2.2
1064 end
1065
1066 diskdef trsq         #= TRS-80 Model 4,4P Montezuma Extend System 390K - SSDD 96 tpi 5.25"
1067   seclen 512         #= Sectors xx,512
1068   tracks 80          #= (Cylinders * Sides) = 80*1 = 80
1069 # sides alt          #= Order of Cylinders  = alt, outout, outback
1070   sectrk 10          #= Sectors 10,xxx
1071   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1072   maxdir 128         #= (DRM+1) = 128
1073 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1074 #  FM NO              #= Format YES = FM, or NO = MFM
1075   skew 2             #= [0..8] try 2
1076   boottrk 2          #= OFS = 2
1077 #                    #= 2, 2.2, or 3 (NO comment on next line)
1078   os 2.2
1079 end
1080
1081 diskdef trsr         #= TRS-80 Model 4,4P Montezuma Extend System 790K - DSDD 96 tpi 5.25"
1082   seclen 512         #= Sectors xx,512
1083   tracks 160         #= (Cylinders * Sides) = 80*2 = 160
1084 #  sides alt          #= Order of Cylinders  = alt, outout, outback
1085   sectrk 10          #= Sectors 10,xxx
1086   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1087   maxdir 128         #= (DRM+1) = 128
1088 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1089 #  FM NO              #= Format YES = FM, or NO = MFM
1090   skew 2             #= [0..8] try 2
1091   boottrk 2          #= OFS = 2
1092 #                    #= 2, 2.2, or 3 (NO comment on next line)
1093   os 2.2
1094 end
1095
1096 diskdef trss         #= TRS-80 Model 4,4P Montezuma Super Data 220K - SSDD 48 tpi 5.25"
1097   seclen 1024        #= Sectors xx,1024
1098   tracks 40          #= (Cylinders * Sides) = 40*1 = 40
1099 # sides alt          #= Order of Cylinders  = alt, outout, outback
1100   sectrk 6           #= Sectors 6,xxx
1101   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1102   maxdir 128         #= (DRM+1) = 128
1103 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1104 #  FM NO              #= Format YES = FM, or NO = MFM
1105   skew 2             #= [0..8] try 2
1106   boottrk 0          #= OFS = 0
1107 #                    #= 2, 2.2, or 3 (NO comment on next line)
1108   os 2.2
1109 end
1110
1111 diskdef trst         #= TRS-80 Model 4,4P Montezuma Super Data 440K - DSDD 48 tpi 5.25"
1112   seclen 1024        #= Sectors xx,1024
1113   tracks 80          #= (Cylinders * Sides) = 40*2 = 80
1114 #  sides outout       #= Order of Cylinders  = alt, outout, outback
1115   sectrk 6           #= Sectors 6,xxx
1116   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1117   maxdir 128         #= (DRM+1) = 128
1118 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1119 #  FM NO              #= Format YES = FM, or NO = MFM
1120   skew 2             #= [0..8] try 2
1121   boottrk 0          #= OFS = 0
1122 #                    #= 2, 2.2, or 3 (NO comment on next line)
1123   os 2.2
1124 end
1125
1126 diskdef trsu         #= TRS-80 Model 4,4P Montezuma Super Data 440K - SSDD 96 tpi 5.25"
1127   seclen 1024        #= Sectors xx,1024
1128   tracks 80          #= (Cylinders * Sides) = 80*1 = 80
1129 # sides alt          #= Order of Cylinders  = alt, outout, outback
1130   sectrk 6           #= Sectors 6,xxx
1131   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1132   maxdir 128         #= (DRM+1) = 128
1133 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1134 #  FM NO              #= Format YES = FM, or NO = MFM
1135   skew 2             #= [0..8] try 2
1136   boottrk 0          #= OFS = 0
1137 #                    #= 2, 2.2, or 3 (NO comment on next line)
1138   os 2.2
1139 end
1140
1141 diskdef trsv         #= TRS-80 Model 4,4P Montezuma Super Data 880K - DSDD 96 tpi 5.25"
1142   seclen 1024        #= Sectors xx,1024
1143   tracks 160         #= (Cylinders * Sides) = 80*2 = 160
1144 #  sides alt          #= Order of Cylinders  = alt, outout, outback
1145   sectrk 6           #= Sectors 6,xxx
1146   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1147   maxdir 128         #= (DRM+1) = 128
1148 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1149 #  FM NO              #= Format YES = FM, or NO = MFM
1150   skew 2             #= [0..8] try x
1151   boottrk 0          #= OFS = 0
1152 #                    #= 2, 2.2, or 3 (NO comment on next line)
1153   os 2.2
1154 end
1155
1156 diskdef trsw         #= TRS-80 Model 4,4P Montezuma System 400K - SSDD 96 tpi 3.5"
1157   seclen 512         #= Sectors xx,512
1158   tracks 80          #= (Cylinders * Sides) = 80*1 = 80
1159 # sides alt          #= Order of Cylinders  = alt, outout, outback
1160   sectrk 10          #= Sectors 10,xxx
1161   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1162   maxdir 128         #= (DRM+1) = 128
1163 #  datarate DD        #= DENSITY SD, DD, HD, or ED
1164 #  FM NO              #= Format YES = FM, or NO = MFM
1165   skew 2             #= [0..8] try 2
1166   boottrk 0          #= OFS = 0
1167 #                    #= 2, 2.2, or 3 (NO comment on next line)
1168   os 2.2
1169 end
1170
1171 #BEGIN TRSE  TRS-80 II/12/16 Aton CP/M - SSHD 8" - 1024 x 8
1172 diskdef trse
1173   seclen 1024
1174   tracks 77
1175   sectrk 8
1176   blocksize 2048
1177   maxdir 128
1178   datarate DD
1179   fm NO
1180   skew 3
1181   boottrk 0
1182   offset 11520
1183   os 2.2
1184 end
1185
1186 # TRSF  TRS-80 II/12/16 Aton CP/M  - DSHD 8" - 1024 x 8
1187 diskdef trsf
1188   seclen 1024
1189   tracks 154
1190   sides alt
1191   sectrk 8
1192   blocksize 2048
1193   maxdir 192
1194   skew 3
1195   boottrk 0
1196   offset 11520
1197   os 2.2
1198 end
1199
1200 # TRS5  TRS-80, Lifeboat CP/M (1024 bytes/sector) - SSDD 8"
1201 # The first track is 26 sectors with 128 bytes, the rest are 1024 x 8
1202 diskdef trs5
1203   seclen 1024
1204   tracks 75
1205   sectrk 8
1206   blocksize 2048
1207   maxdir 128
1208   skew 3
1209   boottrk 0
1210   os 2.2
1211   offset 11520
1212 end
1213
1214 # Memotech type 03, ie: 3.5" or 5.25", D/S, D/D, S/T
1215 # 40 tracks, 2 sides, 16 sectors/track, 256 bytes/sector
1216 # Bytes on the media = 2*40*16*256 = 327680
1217 # CP/M sees 26 128 byte records per track (similar to 8" disks).
1218 # Tracks = 327680/(26*128) = 98
1219 # Data is in 2048 byte blocks, on track 2 onwards
1220 # Blocks = ((98-2)*26*128)/2048 = 156, which agrees with DPB
1221
1222 diskdef memotech-type03
1223   seclen 128
1224   tracks 98
1225   sectrk 26
1226   blocksize 2048
1227   maxdir 64
1228   skew 1
1229   boottrk 2
1230   os 2.2
1231 end
1232
1233 # Memotech type 07, ie: 3.5" or 5.25", D/S, D/D, D/T
1234 # 80 tracks, 2 sides, 16 sectors/track, 256 bytes/sector
1235 # Bytes on the media = 2*80*16*256 = 655360
1236 # CP/M sees 26 128 byte records per track (similar to 8" disks).
1237 # Tracks = 655360/(26*128) = 196
1238 # Data is in 2048 byte blocks, on track 2 onwards
1239 # Blocks = ((196-2)*26*128)/2048 = 315, which agrees with DPB
1240
1241 diskdef memotech-type07
1242   seclen 128
1243   tracks 196
1244   sectrk 26
1245   blocksize 2048
1246   maxdir 128
1247   skew 1
1248   boottrk 2
1249   os 2.2
1250 end
1251
1252 # Memotech type 43, ie: 1MB Silicon Disc
1253 # CP/M sees 26 128 byte records per track
1254 # Note: Unlike common practice with real physical disks, with real geometry,
1255 #       the DPB for Silicon Discs includes blocks on the last incomplete track
1256 # Tracks = 1048576/(26*128) = 315.07
1257 # Data is in 4096 byte blocks, on track 2 onwards
1258 # Blocks = (1048576-2*26*128)/4096 = 254, which agrees with DPB
1259 # Blocks = ((315-2)*26*128)/4096 = 254, so we don't need the 0.07 track
1260 diskdef memotech-type43
1261   seclen 128
1262   tracks 315
1263   sectrk 26
1264   blocksize 4096
1265   maxdir 256
1266   skew 1
1267   boottrk 2
1268   os 2.2
1269 end
1270
1271 # Memotech type 47, ie: 2MB Silicon Disc
1272 # CP/M sees 26 128 byte records per track
1273 # Note: Unlike common practice with real physical disks, with real geometry,
1274 #       the DPB for Silicon Discs includes blocks on the last incomplete track
1275 # Tracks = 2097152/(26*128) = 630.15
1276 # Data is in 4096 byte blocks, on track 2 onwards
1277 # Blocks = (2097152-2*26*128)/4096 = 510, which agrees with DPB
1278 # Blocks = ((630-2)*26*128)/4096 = 510, so we don't need the 0.15 track
1279 diskdef memotech-type47
1280   seclen 128
1281   tracks 630
1282   sectrk 26
1283   blocksize 4096
1284   maxdir 256
1285   skew 1
1286   boottrk 2
1287   os 2.2
1288 end
1289
1290 # Memotech type 4B, ie: 4MB Silicon Disc
1291 # CP/M sees 26 128 byte records per track
1292 # Note: Unlike common practice with real physical disks, with real geometry,
1293 #       the DPB for Silicon Discs includes blocks on the last incomplete track
1294 # Tracks = 4194304/(26*128) = 1260.3
1295 # Data is in 4096 byte blocks, on track 2 onwards
1296 # Blocks = (4194304-2*26*128)/4096 = 1022, which agrees with DPB
1297 # Blocks = ((1260-2)*26*128)/4096 = 1022, so we don't need the 0.3 track
1298 diskdef memotech-type4B
1299   seclen 128
1300   tracks 1260
1301   sectrk 26
1302   blocksize 4096
1303   maxdir 512
1304   skew 1
1305   boottrk 2
1306   os 2.2
1307 end
1308
1309 # Memotech type 4F, ie: 8MB Silicon Disc
1310 # CP/M sees 26 128 byte records per track
1311 # Note: Unlike common practice with real physical disks, with real geometry,
1312 #       the DPB for Silicon Discs includes blocks on the last incomplete track
1313 # Tracks = 8388608/(26*128) = 2520.61
1314 # Data is in 4096 byte blocks, on track 2 onwards
1315 # Blocks = (8388608-2*26*128)/4096 = 2046, which agrees with DPB
1316 # Blocks = ((2520-2)*26*128)/4096 = 2045, so we need the extra 0.61 track
1317 diskdef memotech-type4F
1318   seclen 128
1319   tracks 2521
1320   sectrk 26
1321   blocksize 4096
1322   maxdir 512
1323   skew 1
1324   boottrk 2
1325   os 2.2
1326 end
1327
1328 # Memotech type 18, ie: 8MB SD Card
1329 # CP/M sees 26 128 byte records per track
1330 # Note: Unlike common practice with real physical disks, with real geometry,
1331 #       the DPB for SD Cards includes blocks on the last incomplete track
1332 # Tracks = 8388608/(26*128) = 2520.61
1333 # Data is in 4096 byte blocks, on track 2 onwards
1334 # Blocks = (8388608-2*26*128)/4096 = 2046, which agrees with DPB
1335 # Blocks = ((2520-2)*26*128)/4096 = 2045, so we need the extra 0.61 track
1336 diskdef memotech-type18
1337   seclen 128
1338   tracks 2521
1339   sectrk 26
1340   blocksize 4096
1341   maxdir 512
1342   skew 1
1343   boottrk 2
1344   os 2.2
1345 end
1346
1347 # Memotech type 19, ie: 8MB SD Card
1348 diskdef memotech-type19
1349   seclen 128
1350   tracks 2521
1351   sectrk 26
1352   blocksize 4096
1353   maxdir 512
1354   skew 1
1355   boottrk 2
1356   os 2.2
1357   offset 8M
1358 end
1359
1360 # Memotech type 1A, ie: 8MB SD Card
1361 diskdef memotech-type1A
1362   seclen 128
1363   tracks 2521
1364   sectrk 26
1365   blocksize 4096
1366   maxdir 512
1367   skew 1
1368   boottrk 2
1369   os 2.2
1370   offset 16M
1371 end
1372
1373 # Memotech type 1B, ie: 8MB SD Card
1374 diskdef memotech-type1B
1375   seclen 128
1376   tracks 2521
1377   sectrk 26
1378   blocksize 4096
1379   maxdir 512
1380   skew 1
1381   boottrk 2
1382   os 2.2
1383   offset 24M
1384 end
1385
1386 # Memotech type 1C, ie: 8MB SD Card
1387 diskdef memotech-type1C
1388   seclen 128
1389   tracks 2521
1390   sectrk 26
1391   blocksize 4096
1392   maxdir 512
1393   skew 1
1394   boottrk 2
1395   os 2.2
1396   offset 32M
1397 end
1398
1399 # Memotech type 1D, ie: 8MB SD Card
1400 diskdef memotech-type1D
1401   seclen 128
1402   tracks 2521
1403   sectrk 26
1404   blocksize 4096
1405   maxdir 512
1406   skew 1
1407   boottrk 2
1408   os 2.2
1409   offset 40M
1410 end
1411
1412 # Memotech type 1E, ie: 8MB SD Card
1413 diskdef memotech-type1E
1414   seclen 128
1415   tracks 2521
1416   sectrk 26
1417   blocksize 4096
1418   maxdir 512
1419   skew 1
1420   boottrk 2
1421   os 2.2
1422   offset 48M
1423 end
1424
1425 # Memotech type 1F, ie: 8MB SD Card
1426 diskdef memotech-type1F
1427   seclen 128
1428   tracks 2521
1429   sectrk 26
1430   blocksize 4096
1431   maxdir 512
1432   skew 1
1433   boottrk 2
1434   os 2.2
1435   offset 56M
1436 end
1437
1438 # Memotech type 50, ie: 256KB RAM Disc
1439 # CP/M sees 26 128 byte records per track
1440 # Note: Unlike common practice with real physical disks, with real geometry,
1441 #       the DPB for RAM Discs includes blocks on the last incomplete track
1442 # Tracks = 262144/(26*128) = 78.76
1443 # Data is in 1024 byte blocks, on track 2 onwards
1444 # Blocks = (262144-2*26*128)/1024 = 249, which agrees with DPB 
1445 # Blocks = ((78-2)*26*128)/1024 = 247, so we need the extra 0.76 track
1446 diskdef memotech-type50
1447   seclen 128
1448   tracks 79
1449   sectrk 26
1450   blocksize 1024
1451   maxdir 64
1452   skew 1
1453   boottrk 2
1454   os 2.2
1455 end
1456
1457 # Memotech type 51, ie: 512KB RAM Disc
1458 # CP/M sees 26 128 byte records per track
1459 # Note: Unlike common practice with real physical disks, with real geometry,
1460 #       the DPB for RAM Discs includes blocks on the last incomplete track
1461 # Tracks = 524288/(26*128) = 157.53
1462 # Data is in 2048 byte blocks, on track 2 onwards
1463 # Blocks = (524288-2*26*128)/2048 = 252, which agrees with DPB
1464 # Blocks = ((157-2)*26*128)/2048 = 251, so we need the extra 0.53 track
1465 diskdef memotech-type51
1466   seclen 128
1467   tracks 158
1468   sectrk 26
1469   blocksize 2048
1470   maxdir 128
1471   skew 1
1472   boottrk 2
1473   os 2.2
1474 end
1475
1476 # Memotech type 51, as used in Italy, ie: 480KB RAM Disc
1477 # CP/M sees 26 128 byte records per track
1478 # Note: Unlike common practice with real physical disks, with real geometry,
1479 #       the DPB for RAM Discs includes blocks on the last incomplete track
1480 # Tracks = 491520/(26*128) = 147.69
1481 # Data is in 2048 byte blocks, on track 2 onwards
1482 # Blocks = (491520-2*26*128)/2048 = 236, which agrees with DPB
1483 # Blocks = ((147-2)*26*128)/2048 = 235, so we need the extra 0.69 track
1484 diskdef memotech-type51-italy
1485   seclen 128
1486   tracks 148
1487   sectrk 26
1488   blocksize 2048
1489   maxdir 128
1490   skew 1
1491   boottrk 2
1492   os 2.2
1493 end
1494
1495 # Memotech type 51, after S2R64.COM, ie: 448KB RAM Disc
1496 # CP/M sees 26 128 byte records per track
1497 # Note: Unlike common practice with real physical disks, with real geometry,
1498 #       the DPB for RAM Discs includes blocks on the last incomplete track
1499 # Tracks = 458752/(26*128) = 137.84
1500 # Data is in 2048 byte blocks, on track 2 onwards
1501 # Blocks = (458752-2*26*128)/2048 = 220, which agrees with DPB, after S2R64.COM
1502 # Blocks = ((137-2)*26*128)/2048 = 219, so we need the extra 0.84 track
1503 diskdef memotech-type51-s2r64
1504   seclen 128
1505   tracks 138
1506   sectrk 26
1507   blocksize 2048
1508   maxdir 128
1509   skew 1
1510   boottrk 2
1511   os 2.2
1512 end
1513
1514 # Memotech type 51, after S2R.COM, ie: 144KB RAM Disc
1515 # CP/M sees 26 128 byte records per track
1516 # Note: Unlike common practice with real physical disks, with real geometry,
1517 #       the DPB for RAM Discs includes blocks on the last incomplete track
1518 # Tracks = 147456/(26*128) = 44.3
1519 # Data is in 2048 byte blocks, on track 2 onwards
1520 # Blocks = (147456-2*26*128)/2048 = 68, which agrees with DPB, after S2R.COM
1521 # Blocks = ((44-2)*26*128)/2048 = 68, so we don't need the extra 0.3 track
1522 diskdef memotech-type51-s2r
1523   seclen 128
1524   tracks 44
1525   sectrk 26
1526   blocksize 2048
1527   maxdir 128
1528   skew 1
1529   boottrk 2
1530   os 2.2
1531 end
1532
1533 # Memotech type 52, ie: 320KB RAM Disc
1534 # Added for REMEMOTECH
1535 # CP/M sees 26 128 byte records per track
1536 # Note: Unlike common practice with real physical disks, with real geometry,
1537 #       the DPB for RAM Discs includes blocks on the last incomplete track
1538 # Tracks = 327680/(26*128) = 98.46
1539 # Data is in 2048 byte blocks, on track 2 onwards
1540 # Blocks = (327680-2*26*128)/2048 = 156
1541 # Blocks = ((98-2)*26*128)/2048 = 156, so we don't need the extra 0.46 track
1542 # This type very deliberately and conveniently exactly matches type 03
1543 diskdef memotech-type52
1544   seclen 128
1545   tracks 98
1546   sectrk 26
1547   blocksize 2048
1548   maxdir 64
1549   skew 1
1550   boottrk 2
1551   os 2.2
1552 end
1553
1554 # Research Machines 380Z/480Z 5.25" "Single Density" or "MDS" format.
1555 # All tracks are formatted FM 16x128.
1556 diskdef rm-sd
1557   seclen 128
1558   tracks 40
1559   sectrk 16
1560   blocksize 1024
1561   maxdir 64
1562   skew 3
1563   boottrk 3
1564   os 2.2
1565 end
1566
1567 # Research Machines 380Z/480Z 5.25" "Double Density" or "MD" format.
1568 # Track 0 is formatted FM 16x128; 1+ are MFM 9x512.
1569 # If you're working with an image file, make sure that track 0 is
1570 # padded to be the same size as the other tracks.
1571 diskdef rm-dd
1572   seclen 512
1573   tracks 40
1574   sectrk 9
1575   blocksize 1024
1576   maxdir 64
1577   skew 5
1578   boottrk 3
1579   os 2.2
1580 end
1581
1582 # Research Machines 380Z/480Z 5.25" "Quad Density" or "MQ" format.
1583 # Track 0 is formatted FM 16x128; 1+ are MFM 9x512.
1584 diskdef rm-qd
1585   seclen 512
1586   tracks 80
1587   sectrk 9
1588   blocksize 2048
1589   maxdir 128
1590   skew 5
1591   boottrk 3
1592   os 2.2
1593 end
1594
1595 # Ampro Little Board Z80 running CP/M 2.21
1596 # BEGIN AMP1  Ampro - SSDD 48 tpi 5.25"
1597 # DENSITY MFM, LOW
1598 # CYLINDERS 40 SIDES 1 SECTORS 10,512 SKEW 2
1599 # SIDE1 0 1,2,3,4,5,6,7,8,9,10
1600 # BSH 4 BLM 15 EXM 1 DSM 94 DRM 63 AL0 080H AL1 0 OFS 2
1601 # END
1602
1603 diskdef amp1
1604   seclen 512       #= Sectors xx,512
1605   tracks 40         #= (Cylinders * Sides) = 40*1 = 40
1606   sectrk 10         #= Sectors 10,xxx
1607   blocksize 2048 #= (128*(BLM+1)) = 2048
1608   maxdir 64         #(DRM+1) = 64
1609   skew 0             #= SKEW = 0
1610   boottrk 2           #= OFS = 2
1611   os 2.2
1612 end
1613
1614 #BEGIN AMP2  Ampro - DSDD 48 tpi 5.25"
1615 #DENSITY MFM, LOW
1616 #CYLINDERS 40 SIDES 2
1617 #SECTORS 10,512
1618 #SKEW 2
1619 #SIDE1 0 17,18,19,20,21,22,23,24,25,26
1620 #SIDE2 1 17,18,19,20,21,22,23,24,25,26
1621 #ORDER SIDES
1622 #BSH 4 BLM 15 EXM 1 DSM 194 DRM 127 AL0 0C0H AL1 0 OFS 2
1623 #END
1624
1625 # setfdprm /dev/fd0 DS DD ssize=512 cyl=40 sect=10 head=2
1626 diskdef amp2
1627   seclen 512
1628   tracks 80
1629   sectrk 10
1630   blocksize 2048
1631   maxdir 128
1632   skew 0
1633   boottrk 2
1634   os 2.2
1635 end
1636
1637 #BEGIN AMP3  Ampro - SSDD 96 tpi 3.5"
1638 #DENSITY MFM, LOW
1639 #CYLINDERS 80 SIDES 1 SECTORS 5,1024 SKEW 2
1640 #SIDE1 0 1,2,3,4,5
1641 #BSH 4 BLM 15 EXM 1 DSM 194 DRM 127 AL0 0C0H AL1 0 OFS 2
1642 #END
1643
1644 # setfdprm /dev/fd0 SS DD ssize=1024 cyl=80 sect=5 head=1
1645 diskdef amp3
1646   seclen 1024
1647   tracks 80
1648   sectrk 5
1649   blocksize 2048
1650   maxdir 128
1651   skew 0
1652   boottrk 2
1653   os 2.2
1654 end
1655
1656 #BEGIN AMP4  Ampro - DSDD 96 tpi 3.5"
1657 #DENSITY MFM, LOW
1658 #CYLINDERS 80 SIDES 2 SECTORS 5,1024 SKEW 2
1659 #SIDE1 0 17,18,19,20,21
1660 #SIDE2 1 17,18,19,20,21
1661 #ORDER SIDES
1662 #BSH 4 BLM 15 EXM 0 DSM 394 DRM 255 AL0 0F0H AL1 0 OFS 2
1663 #END
1664
1665 # setfdprm /dev/fd0 DS DD ssize=1024 cyl=80 sect=5 head=2
1666 diskdef amp4
1667   seclen 1024
1668   tracks 160
1669   sectrk 5
1670   blocksize 2048
1671   maxdir 256
1672   skew 0
1673   boottrk 2
1674   os 2.2
1675 end
1676
1677 #BEGIN AMP5  Ampro - SSDD 3.5"
1678 #DENSITY MFM, LOW
1679 #CYLINDERS 80 SIDES 1 SECTORS 5,1024 SKEW 2
1680 #SIDE1 0 1,2,3,4,5
1681 #BSH 4 BLM 15 EXM 1 DSM 194 DRM 127 AL0 0C0H AL1 0 OFS 2
1682 #END
1683
1684 # setfdprm /dev/fd0 SS DD ssize=1024 cyl=80 sect=5 head=1
1685 diskdef amp5
1686   seclen 1024
1687   tracks 80
1688   sectrk 5
1689   blocksize 2048
1690   maxdir 128
1691   skew 0
1692   boottrk 2
1693   os 2.2
1694 end
1695
1696 #BEGIN AMP6  Ampro - DSDD 3.5"
1697 #DENSITY MFM, LOW
1698 #CYLINDERS 80 SIDES 2 SECTORS 5,1024 SKEW 2
1699 #SIDE1 0 17,18,19,20,21
1700 #SIDE2 1 17,18,19,20,21
1701 #ORDER SIDES
1702 #BSH 4 BLM 15 EXM 0 DSM 394 DRM 255 AL0 0F0H AL1 0 OFS 2
1703 #END
1704
1705 # setfdprm /dev/fd0 DS DD ssize=1024 cyl=80 sect=5 head=2
1706 diskdef amp6
1707   seclen 1024
1708   tracks 160
1709   sectrk 5
1710   blocksize 2048
1711   maxdir 256
1712   skew 0
1713   boottrk 2
1714   os 2.2
1715 end
1716
1717 diskdef ampro800
1718   seclen 1024
1719   tracks 160
1720   sectrk 5
1721   blocksize 2048
1722   maxdir 256
1723   skew 0
1724   boottrk 2
1725   os 2.2
1726 end
1727
1728 # Ampro - DSDD 48 tpi 5.25" - 512 x 10
1729 diskdef ampro400d
1730   seclen 512
1731   tracks 80
1732   sectrk 10
1733   blocksize 2048
1734   maxdir 128
1735   skew 0
1736   boottrk 2
1737   os 2.2
1738   libdsk:format ampro400d
1739 # DENSITY MFM ,LOW 
1740 # BSH 4 BLM 15 EXM 1 DSM 194 DRM 127 AL0 0C0H AL1 0 OFS 2
1741 end
1742
1743 # BEGIN ampdsdd80  Ampro - DSDD 96 tpi 5.25" - 512 x 10
1744 # Test OK - image size = 819,200, from Don Maslin's archive
1745 diskdef ampdsdd80
1746   seclen 1024
1747   tracks 160
1748   sectrk 5
1749   blocksize 2048
1750   maxdir 128
1751   skew 0
1752   boottrk 2
1753   os 2.2
1754   libdsk:format ampro800
1755 # DENSITY MFM ,LOW 
1756 # BSH 4 BLM 15 EXM 1 DSM 194 DRM 127 AL0 0C0H AL1 0 OFS 2
1757 end
1758
1759 # ALTAIRZ80 SIMH *dsk 8MB Harddisk (Type AZ80 HDSK)
1760 diskdef 8megAltairSIMH
1761   seclen 128
1762   tracks 2048
1763   sectrk 32
1764   blocksize 4096
1765   maxdir 1024
1766   skew 0
1767   boottrk 6
1768   os 2.2
1769 end
1770
1771 # ALTAIRZ80 SIMH *dsk MITS 88-DISK 137 Byte/Sektor
1772 # speedball (copylib) skewtable
1773 diskdef simh
1774   seclen 128
1775   tracks 254
1776   sectrk 32
1777   blocksize 2048
1778   maxdir 256
1779   skew 17
1780   boottrk 6
1781   os 2.2
1782 end
1783
1784 diskdef all1         #= Allen-Bradley Advisor+ - DSDD 3.5"
1785   seclen 512         #= Sectors xx,512
1786   tracks 160         #= (Cylinders * Sides) = 80*2 = 160
1787   sides alt          #= Order of Cylinders  = alt, outout, outback
1788   sectrk 8           #= Sectors 8,xxx
1789   blocksize 2048     #= (128*(BLM+1)) =  7=1024, 15=2048, 31=4096, 63=8192
1790   maxdir 128         #= (DRM+1) = 128
1791   datarate DD        #= DENSITY SD, DD, HD, or ED
1792   FM NO              #= Format YES = FM, or NO = MFM
1793   skew 0             #= [0..8] try x
1794   boottrk 1          #= OFS = 1
1795 #                    #= 2, 2.2, or 3 (NO comment on next line)
1796   os 2.2
1797 end
1798
1799 # COM8  Compupro (Viasyn) 8/16 - SSDD 8" - 1024 x 8
1800 # IMD RAW format
1801 diskdef com8
1802   seclen 1024
1803   tracks 77
1804   sectrk 8
1805   blocksize 2048
1806   maxdir 128
1807   skew 3
1808   offset 11520
1809   boottrk 0
1810   os 2.2
1811 end
1812
1813 # Spectravideo SVI-728 (MSX) with SVI-707 floppy drive
1814 diskdef svi707
1815   seclen 256
1816   tracks 40
1817   sectrk 17
1818   blocksize 2048
1819   maxdir 64
1820   skew 0
1821   boottrk 3
1822   os 2.2
1823 end
1824
1825 # Intel MDS/22 8" Double Density
1826 diskdef mds-dd
1827   seclen 128
1828   tracks 77
1829   sectrk 52
1830   blocksize 2048
1831   maxdir 128
1832   skew 0
1833   boottrk 2
1834   os 2.2
1835 end
1836
1837 # Intel MDS/22 8" Single Density. Untested.
1838 diskdef mds-sd
1839   seclen 128
1840   tracks 77
1841   sectrk 26
1842   blocksize 1024
1843   maxdir 64
1844   skew 0
1845   boottrk 2
1846   os 2.2
1847 end
1848
1849 # CF card in PCMCIA slot on NC200 with cpmish
1850 diskdef nc200cf
1851   seclen 512
1852   tracks 256
1853   sectrk 256
1854   blocksize 16384
1855   maxdir 512
1856   boottrk 0
1857   os 2.2
1858 end
1859
1860 # Floppy image on NC200 with cpmish
1861 diskdef nc200cpm
1862   seclen 512
1863   tracks 80
1864   sectrk 18
1865   blocksize 2048
1866   maxdir 128
1867   boottrk 2
1868   os 2.2
1869 end
1870
1871 # ZCN format drive partitions in nc100em's nc100.card
1872 # use this for a bootable A: drive
1873 # (assumes ZCN system is 12k, which it has been for years)
1874 diskdef zcna_boot
1875   seclen 1024
1876   tracks 256
1877   sectrk 1
1878   blocksize 1024
1879   maxdir 64
1880   skew 0
1881   boottrk 13
1882   os 2.2
1883 end
1884
1885 # use this for a non-bootable A: drive
1886 diskdef zcna_nonboot
1887   seclen 1024
1888   tracks 256
1889   sectrk 1
1890   blocksize 1024
1891   maxdir 64
1892   skew 0
1893   boottrk 1
1894   os 2.2
1895 end
1896
1897 # ZCN b/c/d all assumed to be non-bootable
1898 diskdef zcnb
1899   seclen 1024
1900   tracks 256
1901   sectrk 1
1902   blocksize 1024
1903   maxdir 64
1904   skew 0
1905   boottrk 1
1906   os 2.2
1907   offset 256KB
1908 end
1909
1910 diskdef zcnc
1911   seclen 1024
1912   tracks 256
1913   sectrk 1
1914   blocksize 1024
1915   maxdir 64
1916   skew 0
1917   boottrk 1
1918   os 2.2
1919   offset 512KB
1920 end
1921
1922 diskdef zcnd
1923   seclen 1024
1924   tracks 256
1925   sectrk 1
1926   blocksize 1024
1927   maxdir 64
1928   skew 0
1929   boottrk 1
1930   os 2.2
1931   offset 768KB
1932 end
1933
1934 # Hewlett-Packard HP9000-200 - 70-track SS drive that emulates a
1935 # 35 track DSDD 48 tpi 5.25"
1936 diskdef HP25
1937   seclen 256
1938   tracks 66
1939   sectrk 16
1940   blocksize 1024
1941   maxdir 128
1942   skew 0
1943   boottrk 3
1944   os 2.2
1945 end
1946
1947
1948
1949 diskdef yaze512
1950 # BSH 4 BLM 15 EXM 1 DSM 255 DRM 1023 AL0 0FFH AL1 0FFH OFS 0
1951 seclen 128
1952 tracks 4096
1953 sectrk 8
1954 blocksize 2048
1955 maxdir 1024
1956 skew 1
1957 offset 128
1958 boottrk 0
1959 os 3
1960 end