1
0
mirror of https://github.com/gryf/uc1541.git synced 2026-01-29 09:35:45 +01:00

Added subclass for D71 and D81 images

This commit is contained in:
2019-09-20 16:03:47 +02:00
parent 6236015e22
commit eb57773166

34
uc1541
View File

@@ -92,16 +92,14 @@ def _get_implementation(disk):
Check the file under fname and return right class for creating an object Check the file under fname and return right class for creating an object
corresponding for the file corresponding for the file
""" """
len_map = {822400: 'D81', len_map = {822400: D81, # 80 tracks
349696: 'D71', # 70 tracks 819200: D81, # 80 tracks, 3200 error bytes
351062: 'D71', # 70 tracks, 1366 error bytes 349696: D71, # 70 tracks
351062: D71, # 70 tracks, 1366 error bytes
174848: D64, # usual d64 disc image, 35 tracks, no errors 174848: D64, # usual d64 disc image, 35 tracks, no errors
175531: D64, # 35 track, 683 error bytes 175531: D64, # 35 track, 683 error bytes
196608: D64, # 40 track, no errors 196608: D64, # 40 track, no errors
197376: D64, # 40 track, 768 error bytes 197376: D64} # 40 track, 768 error bytes
}
raw = _get_raw(fname)
if disk[:32].startswith('C64'): if disk[:32].startswith('C64'):
return # T64 return # T64
@@ -145,15 +143,13 @@ class Disk(object):
""" """
Init Init
""" """
LOG.debug('image: %s', dimage) self.raw = raw
self.raw = None
self.current_sector_data = None self.current_sector_data = None
self.next_sector = 0 self.next_sector = 0
self.next_track = None self.next_track = None
self._dir_contents = [] self._dir_contents = []
self._already_done = [] self._already_done = []
def _map_filename(self, string): def _map_filename(self, string):
""" """
Transcode filename to ASCII compatible. Replace not supported Transcode filename to ASCII compatible. Replace not supported
@@ -293,7 +289,21 @@ class Disk(object):
class D64(Disk): class D64(Disk):
pass """
Implement d64 directory reader
"""
class D71(Disk):
"""
Implement d71 directory reader
"""
class D81(Disk):
"""
Implement d81 directory reader
"""
class Uc1541(object): class Uc1541(object):
@@ -451,7 +461,7 @@ class Uc1541(object):
continue continue
display_name = ".".join([fname, ext]) display_name = ".".join([fname, ext])
pattern_name = self.pyd64[idx]['fname'] pattern_name = self.dirlist[idx]['fname']
if '/' in display_name: if '/' in display_name:
display_name = display_name.replace('/', '|') display_name = display_name.replace('/', '|')