Anonymous

Messenger: Difference between revisions

From Sinclair Wiki
m
Let's use HTTPS!
(Correction to amount of RAM overwritten, add description of paging and I/O)
m (Let's use HTTPS!)
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
The '''Messenger''' is an interface that was produced by [[SAM Computers Ltd.]] for the ZX Spectrum, that allows snapshots to be transferred to/from a [[SAM Coupé]].
The '''Messenger''' is an interface that was produced by [[SAM Computers Ltd]] for the ZX Spectrum, that allows snapshots to be transferred to/from a [[SAM Coupé]].


The user can load/save snapshots on the Coupé for transfer, or run programs directly on the Coupé in Spectrum compatibility mode.  Screenshots can also be transferred in either direction, or loaded and saved from the Coupé.
The user can load/save snapshots on the Coupé for transfer, or run programs directly on the Coupé in Spectrum compatibility mode.  Screenshots can also be transferred in either direction, or loaded and saved from the Coupé.
Line 17: Line 17:
The Messenger 1.1 includes an 8k×8 static RAM and an 8k×8 EPROM, although only around 0.5 KiB of code is included, and only the low 256 bytes of RAM are used.
The Messenger 1.1 includes an 8k×8 static RAM and an 8k×8 EPROM, although only around 0.5 KiB of code is included, and only the low 256 bytes of RAM are used.


The Messenger ROM and RAM is paged out by writing to port 0x77, and paged in by reading from port 0x77.  More precisely, paging is triggered by I/O to ports where A7=0, A4=1, A3=0, and A1=1, i.e. (port & 0x009a) == 0x0012.  It is also paged in automatically upon execution of addresses 0x0066 and 0x0067.  The serial port is accessible through most significant bit of port 0xff6f, for both sending and receiving.  More precisely, the serial port is accessed through I/O ports where A13=1, A7=0, A4=0, A3=1 and A1=1, i.e. (port & 0x209a) == 0x200a.  Serial port I/O can be accessed regardless of whether the ROM and RAM are paged in.
The Messenger ROM and RAM is paged out by writing to port 0x77, and paged in by reading from port 0x77.  More precisely, paging is triggered by I/O to ports where A7=0, A4=1, A3=0, and A1=1, i.e. (port & 0x009a) == 0x0012.  It is also paged in automatically upon execution of addresses 0x0066 and 0x0067.  The serial port is accessible through most significant bit of port 0xff6f, for both sending and receiving.  More precisely, the serial port is accessed through I/O ports where A7=0, A4=0, A3=1 and A1=1, i.e. (port & 0x209a) == 0x000a.  Serial port I/O can be accessed regardless of whether the ROM and RAM are paged in.
 
Miguel Angel Rodríguez Jódar has produced a [http://www.zxprojects.com/images/stories/messenger_sam_coupe/messenger_interface_sam_coupe.png schematic of the interface], and has worked with Velesoft to produce a [https://velesoft.speccy.cz/other/messenger_gal16v8%28beta5%29.zip JEDEC file with equations for the Messenger's GAL].


== Programs with Messenger snapshots support ==
== Programs with Messenger snapshots support ==
Line 27: Line 29:


* [[Wikipedia:SAM Coupé#ZX_Spectrum_compatibility|Wikipedia's description of the Messenger]]
* [[Wikipedia:SAM Coupé#ZX_Spectrum_compatibility|Wikipedia's description of the Messenger]]
* [http://www.worldofsam.org/node/229 World of SAM's entry for the Messenger]
* [https://www.worldofsam.org/node/229 World of SAM's entry for the Messenger]
* [http://www.worldofspectrum.org/forums/showthread.php?p=645629 World of Spectrum thread about the Messenger], including screenshots of the interface in operation
* [https://www.worldofspectrum.org/forums/showthread.php?p=645629 World of Spectrum thread about the Messenger], including screenshots of the interface in operation
 
[[Category:Peripherals]]
[[Category:SAM Coupé]]