Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 9145b6bf044f4f4c1da80217b4d6f1df > files > 6

libdsk-1.2.1-3.fc12.x86_64.rpm

TO BE DONE in LibDSK 1.3.x:

- Partition support.
	It looks as if the way to do it is to have a filter driver.
	Something like 
		dsk_err_t dsk_part_open(DSK_PDRIVER *guest,
					DSK_PDRIVER host, 
					DSK_GEOMETRY *dg,
					int npartition);

	This requires:
		- Reference-counting on the host. Either fail dsk_close()
		 if its refcount is > 1, or let it succeed silently.
	
	Once dsk_part_open() is in place, we can also allow partitions to
	be passed as filenames:

		partition:n,filename

	which will have a dsk_open that:

		* passes filename to inner dsk_open
		* do a dsk_getgeom
		* pass the resulting parameters to dsk_part_open

	Also: False partition (ie, add a partition table to an image)

		dsk_err_t dsk_false_partition(DSK_PDRIVER *guest,
					DSK_PDRIVER host,
					DSK_GEOMETRY *dg,
					unsigned char type);

		with matching open-by-filename:

		falsepart:n,filename

	The alternative to a filter driver is dsk_option_set with a variable
	of PARTITION, but that has certain problems (eg: you can't have
	multiple partitions open at one time)

	[nb: What sort of partition table do the likes of +3e use, because
	 that's going to give all sorts more fun]


* Weak-sector support is new and may be buggy.
* Write more functions for dsktool.
* The INT25/INT26 driver doesn't seem to work in a DJGPP compile; it fails
 with error 0x701F.
* The INT25/INT26 driver keeps spitting out diagnostic messages.

* dskid doesn't work on a DFS .DSK file. Why? Because get_id doesn't fail?
* Support for DMK file format.
* Java support for the Reporter classes is buggy [seems to work now 11-5-2003]
* Plugin architecture:
	dsk_register_driver
	dsk_register_compression
	dsk_register_remote
* Support for TD0 file format.

* Support remoting libdsk...
	>> May need to write a PCW backend that dances on the controller
	  rather than using decorum and the XBIOS.
	>> May need to write a Win16 version of serslave.
	>> May need to write a Win16 RPC client.

* Support a reverse-cpmfs backend (that lets a directory appear as a disc 
 image).
	>> File in directory called .libdsk.ini that gives LibDsk geometry
	  and CP/M directory info
	>> File in directory called .libdsk.boot containing boot sector.

	>> Full of debug code
	>> Default format is pcw720, not pcw180
	>> Needs to be compilable on other OSes
	>> Doesn't truncate files.

* The load-all-into-memory strategy in Apridisk won't work on DOS16. Does
 this matter, bearing in mind that the real Apridisk exists on DOS16?

* CopyQM: Compare to real BBC Master 512 disks 2-4.