1
0
mirror of https://github.com/gryf/uc1541.git synced 2026-01-15 06:54:12 +01:00

Added support for .d71 images

This commit is contained in:
2019-09-20 16:05:35 +02:00
parent f8da7bf58e
commit 3fa965de85

51
uc1541
View File

@@ -311,6 +311,57 @@ class D71(Disk):
Implement d71 directory reader
"""
def _get_offset(self, track, sector):
"""
Return offset (in bytes) for specified track and sector.
Track Sec/trk # Tracks
-------------- ------- ---------
1-17 (side 0) 21 17
18-24 (side 0) 19 7
25-30 (side 0) 18 6
31-35 (side 0) 17 5
36-52 (side 1) 21 17
53-59 (side 1) 19 7
60-65 (side 1) 18 6
66-70 (side 1) 17 5
"""
offset = 0
truncate_track = 0
if track > 17:
offset = 17 * 21 * SECLEN
truncate_track = 17
if track > 24:
offset += 7 * 19 * SECLEN
truncate_track = 24
if track > 30:
offset += 6 * 18 * SECLEN
truncate_track = 30
if track > 35:
offset += 5 * 17 * SECLEN
truncate_track = 35
if track > 52:
offset = 17 * 21 * SECLEN
truncate_track = 17
if track > 59:
offset += 7 * 19 * SECLEN
truncate_track = 24
if track > 65:
offset += 6 * 18 * SECLEN
truncate_track = 30
track = track - truncate_track
offset += track * sector * SECLEN
return offset
class D81(Disk):
"""