Skip to main content

Strip SMC headers and rename SNES ROM files using no-intro.org data and naming conventions

Project description

# SNES Scrub

Are you sitting on a bunch of old DOS-era SNES ROMs with weird, abbreviated filenames and dubious extra bytes? Does the fact that you’re the kind of person who would still have DOS-era SNES ROMs in your possession haunt you on sleepless nights? This tool can help you with one of those things.

snes_scrub searches the input directory (the current directory by default) for files with .sfc, .smc, or .swc extensions, and compares their SHA1 hashes to the no-intro.org SNES dataset. It will also try and hash the file minus the first 512 bytes, in case the ROM has a vestigial SMC header prepended. Any matching no-intro files are copied to a output directory (./scrubbed by default), renamed using the no-intro.org filenames and stripped of their old SMC headers, if they had any.

## Installation

You have to have Python 3 installed. If that’s good, then:

` python3 -m pip install snes_scrub `

## Example usage

From any directory with SNES ROMs, simply run snes_scrub and any ROM files in that directory will be processed and stored in a subdirectory called scrubbed.

If you want to use different input/output directories:

` snes_scrub --input /example/rom/directory --output ./clean `

will read files from the /example/rom/directory directory and put cleaned files in a clean subdirectory off your current working directory.

snes_scrub –help gives detailed usage info.

## Build

Theoretically, on Linux/MacOS:

` make build `

If that succeeds, you can install directly from the local wheel file using:

` python3 -m pip install dist/snes_scrub-0.1.0-py3-none-any.whl `

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

snes_scrub-0.1.1.tar.gz (469.5 kB view details)

Uploaded Source

Built Distribution

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

snes_scrub-0.1.1-py3-none-any.whl (472.2 kB view details)

Uploaded Python 3

File details

Details for the file snes_scrub-0.1.1.tar.gz.

File metadata

  • Download URL: snes_scrub-0.1.1.tar.gz
  • Upload date:
  • Size: 469.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for snes_scrub-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d852013371c869d5932202f72f38273b1c907f6735b983fb696009372d70b4d9
MD5 e034d5437eaba63d608ba697a9a28b2a
BLAKE2b-256 b21f522cc2b472781aac1ea721dffc32637367c297212a8e1aade3e8e32f7d7e

See more details on using hashes here.

File details

Details for the file snes_scrub-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: snes_scrub-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 472.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for snes_scrub-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8c9790302e2d2727478f59729f58b3fa42e3764d81ad29e96371f3245a5cdde5
MD5 097560887908f2dbdf00f0457519cc0c
BLAKE2b-256 7026260bd0da9f3a97762330c9a7ef6e367961c8229374fb9b5a72a213c1c292

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