Skip to content

sahlberg/fuse-unecm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fuse-unecm is a read-only overlay filesystem to transparently uncompress
indexed ECM files. This allows you to play ECM compressed disk images in
your emulators without first having to uncompress them.

(The index file is to make it possible to seek() in the compressed file
without taking a huge performance hit.)

This package comes with a utility to create an index : 'ecm-index'.


ECM
===
ECM is a fileformat for compressed disk images. It works by removing the ~10%
of a raw disk image that consists of checksums and redundancy codes that can
be re-computed at run-time.
This file format is commonly used for disk-images created for various emulators.
This filesystem allow you to transparently uncompress such files at runtime.


Compiling
=========
gcc -o fuse-unecm fuse-unecm.c libunecm.c -lfuse -ltdb
gcc -o ecm-index ecm-index.c libunecm.c


Create an index file
====================
ecm-index foo.bin.ecm

Which will create the index file foo.bin.ecm.edi
Create index files for all your ECM files!


Mounting an overlay
===================
  fuse-unecm -m <directory>


Unmouning the filesystem
========================
  fusermount  -u <directory>


BGZIP
=====
This overlay filesystem works well together with the FUS-BGZIP filesystem
Combining these two filesystems makes it possible to first compress the disk
image with ECM-COMPRESS and then compress it even further with BGZIP.


Example
=======
Assume we have a directory that contains a .bin.ecm file:

  ls -l test
  total 485548
  -rw-rw-r-- 1 sahlberg sahlberg 497190410 Oct 24  2007 foo.bin.ecm
  -rw-rw-r-- 1 sahlberg sahlberg    132267 Oct 24  2007 foo.bin.ecm.edi
  -rw-rw-r-- 1 sahlberg sahlberg       114 Oct 24  2007 foo.cue

Then mount fuse-unecm ontop of this directory:

  fuse-unecm -m test

And the result becomes:

  ls -l test
  total 485548
  -rw-rw-r-- 1 sahlberg sahlberg 540962352 Oct 24  2007 foo.bin
  -rw-rw-r-- 1 sahlberg sahlberg       114 Oct 24  2007 foo.cue

And you can now point your emulator to foo.bin.

About

No description, website, or topics provided.

Resources

License

Unknown, GPL-2.0 licenses found

Licenses found

Unknown
COPYING
GPL-2.0
LICENCE-GPL-2.txt

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages