Disc Wizard

From CPCWiki - THE Amstrad CPC encyclopedia!
Revision as of 07:56, 14 August 2013 by Arnoldemu (Talk | contribs) (Technical)

Jump to: navigation, search

The Disc Wizard was an addon from Draysoft & Evesham Micro Centre that allowed you to make dumps of the CPC memory to external storage, pretty much like the Multiface and similar interfaces.

Technical

  • Button triggers NMI
  • 8K ROM data has 4 regions. There is an NMI vector at offsets &0066, &0866, &1066 and &1866 within the ROM data. This suggests each of the 4 regions is selectable and mappable into the range &0000-&7ff.

What is not clear is that when the chosen region is mapped into the Z80 memory space if the region in &0000-&7ff is repeated through to the end of &3fff.

* Region 0 appears to be for saving "DraySoftONE". 
* Region 1 appears to be for loading "DraySoftONE"
* Region 2 appears to be saving for "DraysoftTWO". 
* Region 3 appears to be for loading "DraysoftTWO"

It seems that the "1/2" switch on the PCB chooses between which 4k (assumption it is connected to A12 of the EPROM), then the "load/save" switch chooses between the 2k within that 4k (assumption it is connected to A11 of the EPROM).

  • Dissassembly of the code indicates it uses direct FDC disc access for loading/saving.
  • Dissassembly of the code indicates it uses an I/O port &f0e0, and sends the data 0,1,2 or 3. It is not clear the function or the exact decoding of this port.
  • It is restricted to loading/saving using DATA format disc. It uses sectors &c1-&c8 and reads/writes this entire range on each track in a multi-sector operation. DATA format has 512 bytes per sector, so sectors &c1-&c8 is 4K. So it reads 4K from each track.
  • Disc must be pre-formatted to DATA.
  • You can't use it with a disc with existing files because it writes data at specific places on the disc. It does write a dummy directory to indicate it's files are on there, but the device has the loader code in it, so you must use the device (or a seperate program) to load them back.
  • Track 1 is used for temporary storage (it saves the screen here and reloads it after).
  • It doesn't use the memory paging registers, so saves the RAM in it's current configuration. It saves the entire 64k starting at track 5 (for "1").
  • It writes a dummy directory to track 0.
  • it writes 2 to f0e0 to disable it's own ROM and 3 to f0e0 to enable it's own ROM.


Unanswered questions:

  • What happens when a reset is triggered?
  • What is the decoding of the I/O port?
  • Can the ROM be paged in and read through software?
  • Can you have other files on the disc at the same time or is it a special disc format?

Pictures

Manual

Download

Links

  • Disc Wizard at the English-language Wikipedia (Disc Wizard is mentioned in the Multiface's Similar products section)