This example shows you how to implement the class interface for different
systems.  you can work on this while I nail down the exact way of adding
modules.  It should be as simple as adding a simple header file defining
certain basic information.  Please do not write stuff and then complain
when I change something - all of the methods and members will be used
exactly as they are here (this is actual source code, people *g*).  The
changes will be very minor.  Realise that this is a WIP and anything
could change without notice.

"image.h" contains the abstract base class, and all the members and methods
you need.  All methods (and classes) are read-only and very simple, because
here is the main loop:

	while(char *p = Floppy->next_file( &file_size )) {
		tCRC = MemGetCRC(p, file_size, 0, 0);
		vCRC.push_back(tCRC);
		iFiles++;
	}

Floppy is an instance of the particular class, tCRC and file_size are a
temporary ints, vCRC is a vector.  All conversion happens either in the
constructor or in the next_file() method.  This main loop is destined
not to change one bit unless it REALLY needs it.

The other classes are more complex than the c_PRG is, as PRG files have
no header and only one file.  You should be able to see how to implement
any system you want.

BTW, ADFOpus has an Amiga filesystem implementation ready to go, so if you
can figure out the API (it's easy) you can plug in Amiga within minutes.
I would rather not use the ADF .dll, but the API source is there so you
can use only the most essential parts and leave the rest.

e-mail if you have questions, especially e-mail before starting on a system
balzano50@hotmail.com <preferred, until it no longer works>
webulator@beer.com
