|
DataMuseum.dkPresents historical artifacts from the history of: Jet Computer Jet80 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Jet Computer Jet80 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 13696 (0x3580) Types: TextFile Names: »FDRIVES.ASM«
└─⟦67f37b9ce⟧ Bits:30003503 JET80/W20FT systemdisk └─ ⟦this⟧ »FDRIVES.ASM«
Title 'Fdrives.Asm' ;------------------------------------------------------------; ; Definition Module for the Floppies in the system. ; ;------------------------------------------------------------; ; Latest update: 1985-11-15. PSW ; Biosrevision: F ; ; For the RMAC assembler. True Equ -1 False Equ Not True ;-------------------------------------------------------------------; ; What kind of floppy system do You want ? ; ; ; Verify Equ True ; Verify after write. ; ; ; Jet8 Equ False ; External 8" drive ; ; ; I: 8" 1x77x26x128, 64 ent. Unit0 ; ; ; J: 8" 2x77x8x1024, 256 ent. Unit0 ; ; ; RamDisk Equ False ; M: 128 KBytes Ram Disk ; ; ; ; Mark correct floppy system with True. Note: Only one True. ; ; ; M8 Equ False ; A: 8" 2x77x8x1024, 256 ent. Unit0 ; ; ; B: 8" 2x77x8x1024, 256 ent. Unit1 ; ; ; C: 8" 1x77x26x128, 64 ent. Unit0 ; ; ; D: 8" 1x77x26x128, 64 ent. Unit1 ; ; ; Note: MUST NOT BE USED WITH Jet8=True M5 Equ True ; A: 5" 2x77x8x1024, 256 ent. Unit0 ; ; ; B: 5" 2x77x8x1024, 256 ent. Unit1 ; ; ; C: 5" 2x80x5x1024, 128 ent. Unit0 ; ; ; D: 5" 2x80x5x1024, 128 ent. Unit1 ; M596D Equ False ; A: 5" 2x80x5x1024, 128 ent. Unit0 ; ; ; B: 5" 2x80x5x1024, 128 ent. Unit1 ; M548D Equ False ; A: 5" 2x40x5x1024, 128 ent. Unit0 ; ; ; B: 5" 2x40x5x1024, 128 ent. Unit1 ; ;-------------------------------------------------------------------; Page 66 Rate0 Equ 00000000b ; 3ms/6ms Rate1 Equ 00000001b ; 6ms/12ms Rate2 Equ 00000010b ; 10ms/20ms Rate3 Equ 00000011b ; 15ms/30ms DoublS Equ -1 ; Double sided SinglS Equ 0 ; Single sided Unit0 Equ 00000000b ; Physical Unit select 0 Unit1 Equ 00000001b ; Physical Unit select 1 Unit2 Equ 00000010b ; Physical Unit select 2 Unit3 Equ 00000011b ; Physical Unit select 3 Inch5 Equ 00001000b ; 5"-Floppy Inch8 Equ 11010100b ; 8"-Floppy DoublD Equ 00000000b ; Double density SinglD Equ 00100000b ; Single density Comm Equ 0C0h ; Common area▶8a◀ ; 64K - 2*8K = 48K = C000h If M8 Sign Equ '8' Else Sign Equ '5' Endif Extrn FdRead, FdWrit, FdLgin, FdInit If RamDisk Extrn RamWrit, RamRead, RamLgIn, RamInit Endif Public @DTbl, ?Titel Public @Commo, RamBuffer Cseg @DTbl: Dw FlA,FlB ; All systems have A: and B: If M8 Or M5 Dw FlC,FlD ; Else Dw 0,0 ; Endif Dw 0,0,0,0 ; E:, F:, G:, H: not installed If Jet8 Dw FlI,FlJ ; Jet8 has I: and J: installed Else Dw 0,0 Endif Dw 0,0 ; K:, L: not installed. If RamDisk Dw FlM ; M: can be Ram Disk Else Dw 0 ; Endif Dw 0,0,0 ; N:, O:, P: not installed @Commo: Db Comm ; Page Dseg If M8 Or Jet8 ; Define 8" 2x77x8x1024, 256 entries. Unit A:/J: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch8+Unit0+DoublD ;; $FdXsl Db 0 ;; If M8 FlA: Dw 0 ;; No trans table Else FlJ: Dw 0 ;; No trans table Endif Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F8D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank Endif If M8 ; Define 8" 2x77x8x1024, 256 entries. Unit B: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch8+Unit1+DoublD ;; $FdXsl Db 0 ;; FlB: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F8D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM▶8a◀ Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank Endif If M5 ; Define 5.25" 2x77x8x1024, 256 entries. Unit A: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit0+DoublD+11000000b ;; $FdXsl 2 MHz 8" Mode Db 0 ;; FlA: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F5Max ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. ; Define 5.25" 2x77x8x1024, 256 entries. Unit B: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit1+DoublD+11000000b ;; $FdXsl 2 MHz 8" Mode Db 0 ;; FlB: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F5Max ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. Endif If M596D Or M5 ; Define 5.25" 2x80x5x1024, 128 entries. Unit A:/C: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit0+DoublD ;; $FdXsl Db 0 ;; If M596D FlA: Dw 0 ;; No trans table Else FlC: Dw 0 ;; No trans table Endif Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F596D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. ; Define 5.25" 2x80x5x1024, 128 entries. Unit B:/D: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit1+DoublD ;; $FdXsl Db 0 ;; If M596D FlB: Dw 0 ;; No trans table Else FlD: Dw 0 ;; No trans table Endif Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F596D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. Endif If M548D ; Define 5.25" 2x40x5x1024, 128 entries. Unit A: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit0+DoublD ;; $FdXsl Db 0 ;; FlA: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F548D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank ; Define 5.25" 2x40x5x1024, 128 entries. Unit B: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch5+Unit1+DoublD ;; $FdXsl Db 0 ;; FlB: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F548D ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank Endif If M8 Or Jet8 ; Define 8" 1x77x26x128, 64 entries. (IBM) Unit C:/I: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch8+Unit0+SinglD ;; Db 0 ;; If M8 FlC: Dw Trans ;; Trans table Else FlI: Dw Trans ;; Trans table Endif Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F8S ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. Endif If M8 ; Define 8" 1x77x26x128, 64 entries. (IBM) Unit D: Dw FdWrit ;; Dw FdRead ;; Dw FdLgin ;; Dw FdInit ;; Db Inch8+Unit1+SinglD ;; Db 0 ;; FlD: Dw Trans ;; Trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw F8S ;; Address to DPB Dw 0FFFEh ;; Checksum vector set by GENCPM Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hash Db 0 ;; Hash bank. Endif If RamDisk ; Define RAM DISK, 32 entries 128 KBytes. Unit M: Dw RamWrit ;; Dw RamRead ;; Dw RamLgIn ;; Dw RamInit ;; Db 0 ;; Db 0 ;; FlM: Dw 0 ;; No trans table Db 0,0,0,0,0,0,0,0,0 ;; Db 0 ;; Mediaflag Dw Ram ;; Address to DPB Dw 0 ;; Checksum None. Dw 0FFFEh ;; Alloc vector set by GENCPM Dw 0FFFEh,0FFFFh ;; Let GENCPM setup Dw 0FFFEh ;; DirBcb, DtaBcb, Hashl Db 0 ;; Hash bank. Endif Cseg If M8 Or Jet8 ; DPB for 8" 2x77x8x1024, 256 entries. F8D: Dw 64 ; Number of logical sect/track Db 4,0Fh ; Blockshift and mask Db 0 ; Extent mask Dw 607 ; Max blocknumber Dw 256-1 ; 256 Directory entries Db 0F0h,0 ; Alloc vector to directory Dw 256/4 ; Checksum size Dw 2 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 0 ; Floppy Db 8 ; No. of logical sectors/phys. sector. Db 22 ; Read time out Db 19 ; Write time out Db -1 ; Double sided Db Verify ; Verify after write Db Rate0 ; Step rate Db Inch8+DoublD ; Boot select Db 0,0,0,0,0,0 ; Dummies ; DPB for 8" 1x77x26x128, 64 entries. (IBM) F8S: Dw 26 ; No. of logical sectors/track. Db 3,7 ; Blockshift and mask Db 0 ; Extent mask Dw 242 ; Max blocknumber Dw 64-1 ; 64 Directory entries Db 0C0h,0 ; Alloc vector to directory Dw 64/4 ; Checksum size Dw 2 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 0 ; Floppy Db 1 ; No. of logical sectors/phys. sector. Db 22 ; Read time out Db 19 ; Write time out Db 0 ; Single sided Db Verify ; Verify after write Db Rate0 ; Step rate Db Inch8+SinglD ; Boot select Db 0,0,0,0,0,0 ; Dummies Endif If RamDisk ; DPB for RamDisk, 32 entries. 128 KBytes Ram: Dw 512 ; No. of logical sectors/track. Db 3,7 ; Blockshift and mask Db 0 ; Extent mask Dw 127 ; Max blocknumber Dw 32-1 ; 32 Directory entries Db 080h,0 ; Alloc vector to directory Dw 8000h ; Checksum size None. Dw 0 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 3 ; Ramdisk. Db 0 ; Dummy Db 0 ; Dummy Db 0 ; Dummy Db 0 ; Dummy Db 0 ; Dummy Db 0 ; Dummy Db 0 ; Dummy Db 0,0,0,0,0,0 ; Dummies Endif If M5 ; DPB for 5.25" 2x77x8x1024, 256 entries. F5Max: Dw 64 ; No. of logical sectors/track. Db 4,0Fh ; Blockshift and mask Db 0 ; Extent mask Dw 607 ; Max blocknumber Dw 256-1 ; 256 Directory entries Db 0F0h,0 ; Alloc vector to directory Dw 256/4 ; Checksum size Dw 2 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 0 ; Floppy Db 8 ; No. of logical sectors/phys. sector. Db 22 ; Read time out Db 19 ; Write time out Db -1 ; Double sided Db Verify ; Verify after write Db Rate0 ; Step rate Db Inch5+DoublD+11000000b ; Boot select Db 0,0,0,0,0,0 ; Dummies Endif If M5 Or M596D ; DPB for 5.25" 2x80x5x1024, 128 entries. F596D: Dw 40 ; No. of logical sectors/track. Db 4,0Fh ; Blockshift and mask Db 0 ; Extent mask Dw 394 ; Max blocknumber Dw 128-1 ; 128 Directory entries Db 0C0h,0 ; Alloc vector to directory Dw 128/4 ; Checksum size Dw 2 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 0 ; Floppy Db 8 ; No. of logical sectors/phys. sector. Db 22 ; Read time out Db 19 ; Write time out Db -1 ; Double sided Db Verify ; Verify after write Db Rate0 ; Step rate Db Inch5+DoublD ; Boot select Db 0,0,0,0,0,0 ; Dummies Endif If M548D ; DPB for 5.25" 2x40x5x1024, 128 entries. F548D: Dw 40 ; No. of logical sectors/track. Db 4,0Fh ; Blockshift and mask Db 1 ; Extent mask Dw 194 ; Max blocknumber Dw 128-1 ; 128 Directory entries Db 0C0h,0 ; Alloc vector to directory Dw 128/4 ; Checksum size Dw 2 ; Number of offset tracks Db 0 ; Physical sector size Db 0 ; Physical sector shift mask. Db 0 ; Floppy Db 8 ; No. of logical sectors/phys. sector Db 22 ; Read time out Db 19 ; Write time out Db -1 ; Double sided Db Verify ; Verify after write Db Rate0 ; Step rate Db Inch5+DoublD ; Boot select Db 0,0,0,0,0,0 ; Dummies Endif Dseg ?Titel: Db '80. ',Sign ;; Db '"-floppy-version. ' ;; If M8 Db '2x1.2 MBytes.' ;; Endif If M5 Db '2x1.2 MBytes.' ;; Endif If M596D Db '2x800 KBytes.' ;; Endif If M548D Db '2x400 KBytes.' ;; Endif If RamDisk Db ' Ramdisc.' ;; Endif Db 13,10,0 ;; Cseg RamBuffer: If RamDisk Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Db 0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h,0E5h Endif If M8 Or Jet8 Trans: Db 1,7,13,19,25 ; Skewing for 8" SingleSided▶8a◀ Db 5,11,17,23 ; SingleDensity (IBM) Db 3,9,15,21 ; Db 2,8,14,20,26 ; Db 6,12,18,24 ; Db 4,10,16,22 ; Endif End «eof»