Skip to main content

Read and write Commodore disk images

Project description

d64

This Python module enables access to disk image files (.d64, .d71, .d80, .d81, .d82) used by various Commodore microcomputer emulators and tools.

It provides familiar interfaces for developers to read and write program and data files within an image.

In addition it contains tools useful to inspect and modify images, for example a script to check the integrity of an image.

Examples

Classes and functions reside in the d64 module, the whole module may be imported or just those definitions referenced by the user.

Displaying an image contents

To perform a directory list

from d64 import DiskImage

with DiskImage('squadron.d64') as image:
    for line in image.directory():
        print(line)

This prints out

0 "SQUADRON        " Q9 2A
15   "SQUADRON PAL"     PRG
15   "SQUADRON NTSC"    PRG
634 BLOCKS FREE.

Copying a file from an image

To extract, for example, a BASIC program and write it to a file

from d64 import DiskImage

with DiskImage('test.d64') as image:
    with image.path(b'METEOR'.open() as in_f:
        with open('meteor.prg'), 'wb') as out_f:
	    out_f.write(in_f.read())

TODO

  • detailed documentation
  • checking support for .d81 subdirectories
  • better docstrings
  • more examples

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

d64-1.2.tar.gz (53.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

d64-1.2-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file d64-1.2.tar.gz.

File metadata

  • Download URL: d64-1.2.tar.gz
  • Upload date:
  • Size: 53.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.9

File hashes

Hashes for d64-1.2.tar.gz
Algorithm Hash digest
SHA256 59d1d0cec57d04728af4a1c5a338d508161694fe2588203fbbe938537eddd3b2
MD5 b3188010e101e95ca77905a15bb3b075
BLAKE2b-256 b2ed391110f7fc76e2ae66d2b8aa6c52d873aa92ea6885c1b7e6f7143bff80de

See more details on using hashes here.

File details

Details for the file d64-1.2-py3-none-any.whl.

File metadata

  • Download URL: d64-1.2-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.9

File hashes

Hashes for d64-1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c5e5a44c1e0b65c02139d02d36d87d25e2119c77cbecc7fe24befb630d30fa1a
MD5 05b5d10aa5541b2f37e9a1878b95f673
BLAKE2b-256 94bb733a211bf5cb9becf0d8c58578fc4d63aba31b7168330db520e67f6ebfcc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page