
D64 VFS Support for Midnight Commander
14.09.1999
Maciej Witkowiak


OVERVIEW
It's all about adding support for .d64 images to MC. It is not (and won't) be
as good as Star Commander (for DOS) but should be useable.
With it you can view .d64 contents by tapping F3 on it, 'enter' image (like in SC)
by pressing return/enter on it and copy files to/from image (just like in SC).


BUGS+LIMITATIONS
MC will report chmod error after copying file to image, I don't know how
to get around with it.
Other limitations are caused by c1541, because:
- it has troubles with UPPER/lower case
- it has BIG troubles with non-letter characters in names
Due to this and some MC features all UPPER case letters and spaces are
translated into '?' when matching file for copying out from image. 


TODO
Work around with MC's remove, rename commands (is it possible for external VFS?)
Work around with filenames...
Support for .d71 and .d81 images
Use something better than c1541 (what?)
Kinda installer (who likes 'ok/next/continue' installers?)


AUTHOR
Huh, that's me: Maciej 'YTM/Alliance' Witkowiak; ytm@friko.onet.pl
Any contributions and comments are welcomed.


REQUIREMENTS
Midnight Commander, c1541 from VICE package, and awk. Seems that Linux is
helpful.


DISCLAIMER
This piece of software is not intended to be a critical section of system in
those controlling nuclear power plants, airports, railroads, hospitals and
all other on which its crash may bring doom to innocent people.


INSTALLATION

0. MC_LIB is your Midnight Commander's defaults directory, it is usually
   /usr/lib/mc/

1. copy file 'd64' to MC_LIB/extfs directory, in my case it is
   /usr/lib/mc/extfs/
   (make sure that 'd64' is executable)
     
2. add following line to MC_LIB/extfs/extfs.ini

---CUT-ME---
d64=.d64 .D64
---CUT-ME---

3. add following lines to MC_LIB/mc.ext file, but _before_ 'default/*' statement

---CUT-ME---
# d64 - 1541 disk images using c1541 from VICE package
regex/\.(d64|D64)$
	Open=%cd d64:%d/%p
	View=%view{ascii} c1541 -attach %f -list | awk '{if ($1!="VDrive:") print $0}'
---CUT-ME---

4. if you were using MC - restart it
