A An addon that enables you to freeze any program and store it to disc.
== Other similar devices ==Made by [[Mirage Microcomputers Ltd]].
The device was also available for the [[Multiface IIZX Spectrum]], this version was called the "Mirage Microdriver", and could save data either to tape or to Sinclair's "Microdrive"; an external high-speed tape drive.
== Weblinks ==The initial Spectrum version was released in 1985, although there was a later version released in 1986 (see Crash Issue 25, link below).
[http://wwwThe CPC version was released in 1986.stcarchiv.de/hc1986/11_mirageimager.php Review(German)]
The tool can backup RAM contents (including CPU registers pushed in RAM), but, unlike [[Multiface II]], it cannot backup read-only I/O ports like CRTC (vram address/size) and Gate Array (screen colors) - the included software allows to manipulate that values manually (this would be only required with programs that use nonstandard CRTC value, or that use direct I/O to modify colors). Now, thanks to Jose Leandro, the hardware specialist of the spectrum, with his famous page : http://trastero.speccy.org/cosas/JL/JL.htm We can know more about this hardware. == Manual Pictures ==
<gallery caption="Mirage Imager">
Image:MI 1.jpgJPG|Image:MI 2.jpgJPG|Image:MI 3.jpgJPG|Image:MI 4.jpgJPG|
Image:mirage imager 1.jpg|
Image:mirage imager 2.jpg|PCB
Image:mirage imager 3.jpg|
Image:MirageImager Ad ACU Sept1987.jpg|Advertisement of Mirage Imager MKIII
</gallery>
<gallery caption="Mirage Imager 300dpi scans by Robcfg">
Image:MirageImager_Front.jpg|
Image:MirageImager_Back.jpg|
Image:MirageImager_Top.jpg|
Image:MirageImager_PCB_Top.jpg|
Image:MirageImager_PCB_Bottom.jpg|
</gallery>
<gallery caption="Mirage Imager Layout, Thanks to Jose Leandro"> Image:Mirage Imager - Components side.png|PCB FrontImage:Mirage Imager - Back side.png|PCB BackImage:Mirage Imager - Esquema.png|Layout </gallery> == Technical == The following has been derived from the schematic and the ROM code. The following needs to be confirmed with testing on a real device. The onboard 8KB Ram is read/written via port FCxx and FDxx with the following address decoding: 1111110aaaaaaaaa 'a' form part of the address for the RAM. The data read/written to the port is from the RAM. NOTE: The order of the data bits are scrambled/remapped. See the schematic. e.g. ld a,&55 ld bc,&fc03 out (c),a ld bc,&fc03 in a,(c) The other bits are controlled by port FExx with this address decoding: 1111111xxxxxxxxx Here D3-D0 define the other parts of the RAM address. e.g. LD A,3 LD B,&FE OUT (C),A NOTE: The addresses to the RAM are also scrambled/remapped. See the schematic.NOTE: It seems the RAM can only be accessed after the red button has been pressed. The ROM is made visible by pressing the red button which causes an [[NMI]] and execution starts at 0066. The ROM is visible at 0000-1fff with a mirror at 2000-ffff. The ROM overrides the internal CPC OS ROM and also disables the RAM where it is mapped (i.e. RAM in the range 0000-3fff is disabled). Therefore writing to RAM under the ROM is not possible. The ROM state is also toggled by reading an opcode from an address >0x03000 and less than <0x03fff. The ROM itself uses 3FFB which contains a RETinstruction. It uses this to transition in and out of the ROM to read the font from the BASIC ROM. The device listens to writes to GA's rom/ram paging I/O port when it's not enabled (i.e. when the ROM has not been paged in). It looks for the address with: 0xxxxxxxxxxxxxxxxx with bit 7 and 6 of the data as 10xxxxxx. The reason needs to be confirmed - but it seems to be similar to port FExx operation, perhaps it indirectly detects the ROM state in this way by pre-configuring the address. The device calls 2016 to return back to the running program. This is a RET in the rom mirror. == Manual == * [[Media:Mirage Imager Manual.pdf|Mirage Imager Manual]] {{EN}} {{PDF}} (v2, from 26 July 1986) == Downloads == * [[Media:MirageImagerV32.zip|Mirage Image V3.2 (ROM).zip]] (ROM on RAW format, not valid for Emulators)* [[Media:MirageImagerV2.zip|Mirage Image V2 (ROM).zip]] (ROM on RAW format, not valid for Emulators) Thanks to Jose Leandro : * [[Media:Mirage Imager ROM 3-2 (Good).zip|Mirage Imager ROM 3-2 (Good).zip]] (ROM for Emulators)* [[Media:Mirage Imager PALs.zip|Mirage Imager PALs.zip]] (PALs files)* [[Media:Mirage Imager PCBs.zip|Mirage Imager PCBs.zip]] (PCBs files) == Weblinks == * [https://framagit.org/offset/mirage-imager-acepansion Mirage Imager ACEpansion] on Framagit* [http://www.cpc-power.com/index.php?page=detail&num=5317 ''Mirage Imager'' from CPC-Power]* [https://cpcrulez.fr/hardware-interface_debug-mirage_imager.htm ''Mirage Imager'' from CPCrulez]* [https://cpcrulez.fr/hardware-interface_debug-mirage_imager.htm CPCrulez review (french)] - Microstrad 8/Oct/1986* [http://www.worldofspectrum.org/showmag.cgi?mag=YourComputer/Issue8609/Pages/YourComputer860900015.jpg Review (english)] - Your Computer, 09/1986* [http://www.stcarchiv.de/hc1986/11_mirageimager.php Review (german)] - Happy Computer, 11/1986* [http://hardware.speccy.org/temp/Amstrad-Mirage.html ''Mirage Imager'' from hardware.speccy.org] == References == *[http://www.crashonline.org.uk/25/technews.htm#mirage Crash Issue 25, Tech Niche, News, More Microdrivin'] [[Category:HardwareCopy Protection]] [[Category:Peripherals]] [[Category:Manual]][[Category:DATA Storage]]