diff --git a/atrcopy/ataridos.py b/atrcopy/ataridos.py index ba4403c..3b4d08b 100644 --- a/atrcopy/ataridos.py +++ b/atrcopy/ataridos.py @@ -256,7 +256,7 @@ class XexSegment(ObjSegment): savers = [SegmentSaver, XexSegmentSaver] -class AtariDosFile(object): +class AtariDosFile: """Parse a binary chunk into segments according to the Atari DOS object file format. diff --git a/atrcopy/cartridge.py b/atrcopy/cartridge.py index 425b6db..70cba57 100644 --- a/atrcopy/cartridge.py +++ b/atrcopy/cartridge.py @@ -111,7 +111,7 @@ def get_cart(cart_type): raise errors.InvalidDiskImage("Unsupported cart type %d" % cart_type) -class A8CartHeader(object): +class A8CartHeader: # Atari Cart format described by https://sourceforge.net/p/atari800/source/ci/master/tree/DOC/cart.txt NOTE: Big endian! format = np.dtype([ ('magic', '|S4'), diff --git a/atrcopy/diskimages.py b/atrcopy/diskimages.py index be6dea0..6fd7551 100644 --- a/atrcopy/diskimages.py +++ b/atrcopy/diskimages.py @@ -12,7 +12,7 @@ except NameError: _xd = False -class BaseHeader(object): +class BaseHeader: file_format = "generic" # text descriptor of file format sector_class = WriteableSector @@ -91,7 +91,7 @@ class BaseHeader(object): return self.sector_class(self.sector_size, data) -class DiskImageBase(object): +class DiskImageBase: def __init__(self, rawdata, filename="", create=False): self.rawdata = rawdata self.bytes = self.rawdata.get_data() diff --git a/atrcopy/dos33.py b/atrcopy/dos33.py index 1a23dd5..c711d2b 100644 --- a/atrcopy/dos33.py +++ b/atrcopy/dos33.py @@ -629,7 +629,7 @@ class Dos33DiskImage(DiskImageBase): return image, 'B' -class Dos33BinFile(object): +class Dos33BinFile: """Parse a binary chunk into segments according to the DOS 3.3 binary dump format """ diff --git a/atrcopy/parsers.py b/atrcopy/parsers.py index ff55843..15a3ea4 100644 --- a/atrcopy/parsers.py +++ b/atrcopy/parsers.py @@ -15,7 +15,7 @@ import logging log = logging.getLogger(__name__) -class SegmentParser(object): +class SegmentParser: menu_name = "" image_type = None container_segment = DefaultSegment diff --git a/atrcopy/segments.py b/atrcopy/segments.py index 37f945c..2288b3f 100644 --- a/atrcopy/segments.py +++ b/atrcopy/segments.py @@ -57,7 +57,7 @@ def get_style_mask(**kwargs): return 0xff ^ bits -class SegmentSaver(object): +class SegmentSaver: export_data_name = "Raw Data" export_extensions = [".dat"] @@ -66,7 +66,7 @@ class SegmentSaver(object): return segment.tobytes() -class BSAVESaver(object): +class BSAVESaver: export_data_name = "Apple ][ Binary" export_extensions = [".bsave"] @@ -80,7 +80,7 @@ class BSAVESaver(object): return header.tobytes() + segment.tobytes() -class OrderWrapper(object): +class OrderWrapper: """Wrapper for numpy data so that manipulations can use normal numpy syntax and still affect the data according to the byte ordering. @@ -132,7 +132,7 @@ class OrderWrapper(object): return self.np_data[self.order].tobytes() -class UserExtraData(object): +class UserExtraData: def __init__(self): self.comments = dict() self.user_data = dict() @@ -140,7 +140,7 @@ class UserExtraData(object): self.user_data[i] = dict() -class SegmentData(object): +class SegmentData: def __init__(self, data, style=None, extra=None, debug=False, order=None): """Storage for raw data @@ -388,7 +388,7 @@ class SegmentData(object): return r -class DefaultSegment(object): +class DefaultSegment: savers = [SegmentSaver, BSAVESaver] can_resize_default = False diff --git a/atrcopy/utils.py b/atrcopy/utils.py index f3f4419..ad022e9 100644 --- a/atrcopy/utils.py +++ b/atrcopy/utils.py @@ -60,7 +60,7 @@ def text_to_int(text, default_base="hex"): return value -class WriteableSector(object): +class WriteableSector: def __init__(self, sector_size, data=None, num=-1): self._sector_num = num self._next_sector = 0 @@ -109,7 +109,7 @@ class WriteableSector(object): return data[count:] -class BaseSectorList(object): +class BaseSectorList: def __init__(self, header): self.header = header self.sector_size = header.sector_size @@ -150,7 +150,7 @@ class BaseSectorList(object): self.sectors.extend(sectors) -class Dirent(object): +class Dirent: """Abstract base class for a directory entry """ diff --git a/test/test_add_file.py b/test/test_add_file.py index 6458a48..afee838 100644 --- a/test/test_add_file.py +++ b/test/test_add_file.py @@ -8,7 +8,7 @@ from atrcopy import SegmentData, AtariDosDiskImage, Dos33DiskImage from atrcopy import errors -class BaseFilesystemModifyTest(object): +class BaseFilesystemModifyTest: diskimage_type = None sample_data = None num_files_in_sample = 0 diff --git a/test/test_ataridos.py b/test/test_ataridos.py index b5ab349..3137726 100644 --- a/test/test_ataridos.py +++ b/test/test_ataridos.py @@ -6,7 +6,7 @@ from atrcopy import SegmentData, AtariDosFile, DefaultSegment, XexContainerSegme -class TestAtariDosFile(object): +class TestAtariDosFile: def setup(self): pass diff --git a/test/test_cart.py b/test/test_cart.py index 33b8ff9..627a53c 100644 --- a/test/test_cart.py +++ b/test/test_cart.py @@ -7,7 +7,7 @@ from atrcopy import AtariCartImage, SegmentData from atrcopy import errors -class TestAtariCart(object): +class TestAtariCart: def setup(self): pass diff --git a/test/test_create.py b/test/test_create.py index 3e1b70b..40d8dfe 100644 --- a/test/test_create.py +++ b/test/test_create.py @@ -15,7 +15,7 @@ def get_image(file_name, diskimage_type): return image -class BaseCreateTest(object): +class BaseCreateTest: diskimage_type = None def get_exe_segments(self): diff --git a/test/test_jsonpickle.py b/test/test_jsonpickle.py index c4692af..4f8a2f4 100644 --- a/test/test_jsonpickle.py +++ b/test/test_jsonpickle.py @@ -12,7 +12,7 @@ import numpy as np from atrcopy import DefaultSegment, SegmentData -class TestJsonPickle(object): +class TestJsonPickle: def setup(self): data = np.arange(2048, dtype=np.uint8) self.segment = DefaultSegment(SegmentData(data)) diff --git a/test/test_kboot.py b/test/test_kboot.py index a9ba76e..3e19649 100644 --- a/test/test_kboot.py +++ b/test/test_kboot.py @@ -10,7 +10,7 @@ from mock import * from atrcopy import SegmentData, KBootImage, add_xexboot_header, add_atr_header -class TestKbootHeader(object): +class TestKbootHeader: def setup(self): pass diff --git a/test/test_segment.py b/test/test_segment.py index 263df63..3ed9c6e 100644 --- a/test/test_segment.py +++ b/test/test_segment.py @@ -18,7 +18,7 @@ def get_indexed(segment, num, scale): s = DefaultSegment(raw, segment.origin + indexes[0]) return s, indexes -class TestSegment1(object): +class TestSegment1: def setup(self): self.segments = [] for i in range(8): @@ -68,7 +68,7 @@ class TestSegment1(object): assert not np.all((c.data[:] - s.data[:]) == 0) -class TestIndexed(object): +class TestIndexed: def setup(self): data = np.arange(4096, dtype=np.uint8) data[1::2] = np.repeat(np.arange(16, dtype=np.uint8), 128) @@ -242,7 +242,7 @@ class TestIndexed(object): assert not np.all((c.data[:] - s.data[:]) == 0) -class TestComments(object): +class TestComments: def setup(self): data = np.ones([4000], dtype=np.uint8) r = SegmentData(data) @@ -392,7 +392,7 @@ class TestComments(object): assert set(item1[3].values()) == set(item2[3].values()) -class TestResize(object): +class TestResize: def setup(self): data = np.arange(4096, dtype=np.uint8) data[1::2] = np.repeat(np.arange(16, dtype=np.uint8), 128) diff --git a/test/test_serialize.py b/test/test_serialize.py index 7215cdb..fea334e 100644 --- a/test/test_serialize.py +++ b/test/test_serialize.py @@ -10,7 +10,7 @@ import pytest from atrcopy import DefaultSegment, SegmentData, get_xex, interleave_segments -class TestSegment(object): +class TestSegment: def setup(self): data = np.ones([4000], dtype=np.uint8) r = SegmentData(data) diff --git a/test/test_utils.py b/test/test_utils.py index 493bde2..43b8847 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -3,7 +3,7 @@ from mock import * from atrcopy import utils -class TestTextToInt(object): +class TestTextToInt: def setup(self): pass