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
  • 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.10.tar.gz (59.1 kB view details)

Uploaded Source

Built Distribution

d64-1.10-py3-none-any.whl (48.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: d64-1.10.tar.gz
  • Upload date:
  • Size: 59.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.14

File hashes

Hashes for d64-1.10.tar.gz
Algorithm Hash digest
SHA256 476c6a6dfe953ec74c3ee2eb6b29c59ca47200b095a8826d0c130139e21cc12a
MD5 4640c30fb49ce4e77e386e9beb01b2f5
BLAKE2b-256 d5650dc610c28e1a3050880b326801520dff5b42ba26e4ed9c0f029ef4afd8bc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: d64-1.10-py3-none-any.whl
  • Upload date:
  • Size: 48.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.14

File hashes

Hashes for d64-1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3e240bdabfa2130e6141eed2a29de80727ef68af0f3beccf292bf8e26d08a530
MD5 e1a7efe1b806ad496ecc63ce3c47118b
BLAKE2b-256 b6bf68e5be370da48925783acd3e4d105cb744cb80b8c43bf1ccb68930bb59ad

See more details on using hashes here.

Supported by

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