<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://oldwiki.cpcwiki.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pelrun</id>
		<title>CPCWiki - THE Amstrad CPC encyclopedia! - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://oldwiki.cpcwiki.eu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pelrun"/>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php/Special:Contributions/Pelrun"/>
		<updated>2026-08-29T05:57:54Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=File:M4FIRM_v208.zip&amp;diff=126989</id>
		<title>File:M4FIRM v208.zip</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=File:M4FIRM_v208.zip&amp;diff=126989"/>
				<updated>2025-11-13T09:59:49Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Schematics&amp;diff=109245</id>
		<title>Schematics</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Schematics&amp;diff=109245"/>
				<updated>2022-08-25T06:32:52Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Added link to new 6128 kicad schematics&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== CPC Classic Schematics ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;System Schematics&amp;quot;&amp;gt;&lt;br /&gt;
File:Schaltplan_cpc_464.jpg|Amstrad CPC464&lt;br /&gt;
File:CPC664_Schematic.png|Amstrad CPC664 (main)&lt;br /&gt;
File:CPC664 Disk Interface Schematic.png|Amstrad CPC664 (disc)&lt;br /&gt;
File:CPC6128_Schematic.png|Amstrad CPC6128 (main)&lt;br /&gt;
File:CPC6128 Disk Interface Schematic.png|Amstrad CPC6128 (disc)&lt;br /&gt;
File:CPC_Disc_Cassette_Schematic.gif|Disc And Cassette Schematics&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A full KiCad 6 schematic and pcb layout for the MC0020x CPC6128 boards (featuring the &amp;quot;new&amp;quot; gate array and 24-pin data separator IC) is available at https://github.com/pelrun/cpc-schematics&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Monitor Schematics&amp;quot;&amp;gt;&lt;br /&gt;
File:GT64_Schematic.png|GT64&lt;br /&gt;
File:GT65_Schematic.png|GT65&lt;br /&gt;
File:CTM640_Schematic.png|CTM640&lt;br /&gt;
File:CTM644_Schematic.png|CTM644&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Disk Drive Interface Schematics&amp;quot;&amp;gt;&lt;br /&gt;
File:DDI_Schematic.png|DDI&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CPC Plus Schematics ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Original Scans (high-resolution, with lots of blank space)&amp;quot;&amp;gt;&lt;br /&gt;
File:CPC_Plus_CPU_Schematic.jpg|CPU Schematic&lt;br /&gt;
File:CPC_Plus_Asic_Schematic.GIF|Asic Schematic&lt;br /&gt;
File:CPC_Plus_Vid_Mem_Schematic.jpg|Video and Memory Schematic&lt;br /&gt;
File:CPC_Plus_Cassette_Schematic.jpg|Cassette Schematic&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Edited (lower resolution, less blank space, more concentrated info)&amp;quot;&amp;gt;&lt;br /&gt;
File:Edited CPC_Plus_CPU_Schematic.gif|CPU Schematic&lt;br /&gt;
File:Edited CPC_Plus_Asic_Schematic.gif|Asic Schematic&lt;br /&gt;
File:Edited CPC_Plus_Vid_Mem_Schematic.gif|Video and Memory Schematic&lt;br /&gt;
File:Edited CPC_Plus_Cassette_Schematic.gif|Cassette Schematic&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Monitor Schematics&amp;quot;&amp;gt;&lt;br /&gt;
File:MM12_Schematic.gif|MM12 Schematic&lt;br /&gt;
File:CM14_Power_Sound_Schematic.gif|CM14 Power And Sound Schematic&lt;br /&gt;
File:CM14_Video_Schematic.gif|CM14 Video Schematic&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GX4000 Schematics ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;System Schematics&amp;quot;&amp;gt;&lt;br /&gt;
File:GX4000_CPU_Schematic.png|CPU Schematic&lt;br /&gt;
File:GX4000_ASIC_Schematic.png|Asic Schematic&lt;br /&gt;
File:GX4000_Memory_Video_Schematic.png|Video and Memory Schematic&lt;br /&gt;
File:GX4000_RGB_Schematic.png|RGB Conversion Schematic&lt;br /&gt;
File:GX4000_Power_Schematic.png|Power Supply Schematic&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;GX4000 - Edited version (lower resolution, less white space)&amp;quot;&amp;gt;&lt;br /&gt;
File:Edited GX4000 ASIC Schematic.gif|ASIC Schematic&lt;br /&gt;
File:Edited GX4000 Vid Mem Cpu Schematic.gif|CPU Video Memory&lt;br /&gt;
File:Edited GX4000 RGB Power Schematic.gif|RGB and Power (PAL)&lt;br /&gt;
File:Edited GX4000 French Schematic.gif|RGB and Power (French)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== KC Compact Schematics (East German CPC clone) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
File:Kcc schematic cpu io.gif|CPU and I/O Schematic&lt;br /&gt;
File:Kcc schematic memory.gif|Memory Schematic&lt;br /&gt;
File:Kcc schematic modulator.gif|Modulator Schematic&lt;br /&gt;
File:Kcc schematic video power.gif|Video and Power Schematic&lt;br /&gt;
File:Kcc block diagram.gif|Block Diagram&lt;br /&gt;
File:Kcc component map mainboard.gif|Component Map (Mainboard)&lt;br /&gt;
File:Kcc component map modulator.gif|Component Map (Modulator)&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Aleste 520EX Schematics (Russian CPC clone) ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
File:Aleste-Schematic1.gif|Schematic 1/4&lt;br /&gt;
File:Aleste-Schematic2.gif|Schematic 2/4&lt;br /&gt;
File:Aleste-Schematic3.gif|Schematic 3/4&lt;br /&gt;
File:Aleste-Schematic4.gif|Schematic 4/4&lt;br /&gt;
File:Aleste-Component-Map.gif|Component Map&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For reference, the original '''unedited''' schematics are here:&lt;br /&gt;
[[Media:Black-Aleste-Schematic1.gif|Sheet 1]],&lt;br /&gt;
[[Media:Black-Aleste-Schematic2.gif|Sheet 2]],&lt;br /&gt;
[[Media:Black-Aleste-Schematic3.gif|Sheet 3]],&lt;br /&gt;
[[Media:Black-Aleste-Schematic4.gif|Sheet 4]], and&lt;br /&gt;
[[Media:Black-Aleste-Component-Map.gif|Component Map]]&lt;br /&gt;
&lt;br /&gt;
== Additional Hardware ==&lt;br /&gt;
* [[3 1/2&amp;quot; &amp;amp; 5 1/4&amp;quot; Disk Drives]] (errr. no schematics here, no pinouts, nothing?)&lt;br /&gt;
* [[Peripherals]] (contains schematics - as far as any do exist)&lt;br /&gt;
* [[Joystick Y-cables]] (with schematics)&lt;br /&gt;
* [[TV Scart cable]] (with schematics)&lt;br /&gt;
&lt;br /&gt;
* '''Note''' - Further schematics are found in the [[Service Manuals]].&lt;br /&gt;
&lt;br /&gt;
[[Category:Hardware| ]][[Category:CPC Internal Components| ]][[Category:Amstrad CPC media]][[Category:Picture Gallery]][[Category:Electronic Component| ]][[Category:Clones|*]][[Category:CPC Plus|*]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=I/O_Port_Summary&amp;diff=108154</id>
		<title>I/O Port Summary</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=I/O_Port_Summary&amp;diff=108154"/>
				<updated>2021-08-08T11:14:59Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Add note about not abusing the partial address decoding.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of all known I/O ports of the Amstrad CPC, including all [[Peripherals]]. For a list showing only the built-in standard addresses see [[Default I/O Port Summary]]. The original list of I/O ports was taken from the [[FutureOS]] handbook.&lt;br /&gt;
&lt;br /&gt;
== I/O Port Summary ==&lt;br /&gt;
Note: While most of these devices can be reached via a range of addresses due to the partial address decoding, code should never use any address other than the canonical one (all 'x'/don't care positions filled by 1's). Otherwise multiple devices will be enabled simultaneously, which is unlikely to be what you want.&lt;br /&gt;
&lt;br /&gt;
{|{{Prettytable|width: 700px; font-size: 2em;}}&lt;br /&gt;
|'''I/O'''||'''Decoded as'''||'''Port'''||'''Read'''||'''Write''' &lt;br /&gt;
|-&lt;br /&gt;
|#1C00||%x0xxxx00 xxxxxxxx||[[Dk'tronics Lightpen]] faulty mirror of #BCXX [[CRTC]] Index|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#1F00||%x0xxxx11 xxxxxxxx||[[Dk'tronics Lightpen]] faulty mirror of #BFXX [[CRTC]] Data In|| Read || -&lt;br /&gt;
|-&lt;br /&gt;
|#78XX||%0xxxx000 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#79XX||%0xxxx001 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7AXX||%0xxxx010 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7BXX||%0xxxx011 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7CXX||%0xxxx100 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7CXX||%0xxxxx00 xxxxxxxx||[[Aleste 520EX]] RAM Mapper page 0 (extended &amp;quot;Gate Array 3&amp;quot;)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7DXX||%0xxxx101 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7DXX||%0xxxxx01 xxxxxxxx||[[Aleste 520EX]] RAM Mapper page 1 (extended &amp;quot;Gate Array 3&amp;quot;)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7EXX||%0xxxx110 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7EXX||%0xxxxx10 xxxxxxxx||[[Aleste 520EX]] RAM Mapper page 2 (extended &amp;quot;Gate Array 3&amp;quot;)||Read||Write&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|#7EXX||%0xxxxxx0 xxxxxxxx||[[Y-MEM]] 512K RAM Expansion part||Read||Write&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||%0xxxx111 xxxxxxxx||[[CPC4MB|4Mb Memory extension]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||%0xxxxx11 xxxxxxxx||[[Aleste 520EX]] RAM Mapper page 3 (extended &amp;quot;Gate Array 3&amp;quot;)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|#7FXX||%0xxxxxx1 xxxxxxxx||[[X-MEM]] 512K RAM Expansion part||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||?||[[Dk'tronics memory expansion]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||?||[[Dobbertin Memory Expansion]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||%01xxxxxx xxxxxxxx||[[Gate Array]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#7FXX||%0xxxxxxx xxxxxxxx||[[PAL16L8]] extension to [[Gate Array]] for 128K RAM banking||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#BCXX||%x0xxxx00 xxxxxxxx||6845 [[CRTC]] Index|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#BDXX||%x0xxxx01 xxxxxxxx||6845 [[CRTC]] Data Out|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#BEXX||%x0xxxx10 xxxxxxxx||6845 [[CRTC]] Status (as far as supported)||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#BFXX||%x0xxxx11 xxxxxxxx||6845 [[CRTC]] Data In (as far as supported)||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#DFXX||%xx0xxxxx xxxxxxxx||[[Upper ROM Bank Number]] (as decoded within CPC664, CPC6128, 464+, 6128+, decoding in ROM expansions may be different)|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#ECXX||%xxx0xx00 xxxxxxxx||[[KC Compact]] CIO Port B (timer)|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EDXX||%xxx0xx01 xxxxxxxx||[[KC Compact]] CIO Port C (timer)|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EEXX||%xxx0xx10 xxxxxxxx||[[KC Compact]] CIO Control|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EEXX||%xxx0xxx0 xxxxxxxx||[[Aleste 520EX]] USART 8251 (RS232/Mouse) Data|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EFXX||%xxx0xx11 xxxxxxxx||[[KC Compact]] CIO Port A (Bi-drectional [[Printer Port]])|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EFXX||%xxx0xxx1 xxxxxxxx||[[Aleste 520EX]] USART 8251 (RS232/Mouse) Control/Status|| Read ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#EFXX||%xxx0xxxx xxxxxxxx||[[Printer Port]]|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F0E0||?||[[Draysoft Doubler]] External Tape Data Input (Bit5)||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#F4XX||%xxxx0x00 xxxxxxxx||[[8255]] PIO Port A ([[PSG]] Data)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F5XX||%xxxx0x01 xxxxxxxx||[[8255]] PIO Port B (Vsync,[[Printer Port|PrnBusy]],Tape,etc.)||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#F6XX||%xxxx0x10 xxxxxxxx||[[8255]] PIO Port C (KeybRow,Tape,[[PSG]] Control)|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F7XX||%xxxx0x11 xxxxxxxx||[[8255]] PIO Control-Register|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F880-#F88F||%1111100x 1000xxxx||[[PlayCity]] Expansion CTC channels and YMZ data|| - || Write &lt;br /&gt;
|-&lt;br /&gt;
|#F890-#F89F||%1111100x 1001xxxx||[[MultiPlay]] Expansion|| Read || - &lt;br /&gt;
|-&lt;br /&gt;
|#F8A0-#F8AF||%11111000 1010xxxx||[[X-CPC]] ClockPort RTC|| Read || Write &lt;br /&gt;
|-&lt;br /&gt;
|#F8B0||?||[[VIDI digitizer|Vidi-CPC Video-Digitiser]], CRTC Index||?||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8B1||?||[[VIDI digitizer|Vidi-CPC Video-Digitiser]], CRTC Data||?||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8DC||?||[[CPCI RS232 Interface|CPCI Serial Interface]] MC6850 Control/Status||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8DD||?||[[CPCI RS232 Interface|CPCI Serial Interface]] MC6850 Data||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E0||?||[[DHCP MIDI Interface]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E0||%11111000 11100000||[[Schneider RS232 Interface]] Z80-STI Indirect Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E1||%11111000 11100001||[[Schneider RS232 Interface]] Z80-STI General Purpose I/O Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E2||%11111000 11100010||[[Schneider RS232 Interface]] Z80-STI Interrupt Pending Register B (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E2||?||[[Universeller EPROM Programmer 4004|Dobbertin Eprommer 4003]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F8E3||%11111000 11100011||[[Schneider RS232 Interface]] Z80-STI Interrupt Pending Register A (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E3||?||[[Universeller EPROM Programmer 4004|Dobbertin Eprommer 4003]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F8E4||%11111000 11100100||[[Schneider RS232 Interface]] Z80-STI Interrupt in-Service Register B (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E4||?||[[Universeller EPROM Programmer 4004|Dobbertin Eprommer 4003]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F8E5||%11111000 11100101||[[Schneider RS232 Interface]] Z80-STI Interrupt in-Service Register A (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E6||%11111000 11100110||[[Schneider RS232 Interface]] Z80-STI Interrupt Mask Register B (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E6||?||Port A - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F8E7||%11111000 11100111||[[Schneider RS232 Interface]] Z80-STI Interrupt Mask Register A (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E7||?||Port C - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F8E8||%11111000 11101000||[[Schneider RS232 Interface]] Z80-STI Indirect Index and Interrupt Vector Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E8||?||[[Music Machine]] Interrupt Sel|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8E9||%11111000 11101001||[[Schneider RS232 Interface]] Z80-STI Timers A and B Control Register (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EA||%11111000 11101010||[[Schneider RS232 Interface]] Z80-STI Timer B Data Register (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EB||%11111000 11101011||[[Schneider RS232 Interface]] Z80-STI Timer A Data Register (unused)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EC||%11111000 11101100||[[Schneider RS232 Interface]] Z80-STI USART Control Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EC||?||[[Music Machine]] ACIA Control|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8ED||?||[[Music Machine]] ACIA Data Write|| - || Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8ED||%11111000 11101101||[[Schneider RS232 Interface]] Z80-STI Receiver Status Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EE||?||[[Music Machine]] ACIA Status||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#F8EE||%11111000 11101110||[[Schneider RS232 Interface]] Z80-STI Transmitter Status Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EF||%11111000 11101111||[[Schneider RS232 Interface]] Z80-STI USART Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8EF||?||[[Music Machine]] ACIA Data Read||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#F8FX||%xxxxx0xx 1111NNNx||[[Maplins 8bit Input Port]] and [[Maplins Weather Satellite Receiver]]||Read|| -&lt;br /&gt;
|-&lt;br /&gt;
|#F8F0||?||[[Music Machine]] DAC Write|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8F2||?||[[EMR MIDI Interface]]|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8F2||?||[[Universeller EPROM Programmer 4004|Dobbertin Eprommer 4003]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|#F8F2||?||[[EMR MIDI Interface]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8F4||?||[[Music Machine]] ADC Read||Read|| - &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|#F8F5||?||[[ARA Video Digitizer]] - Read Sync Signal (bit0)||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#F8F8||?||[[Music Machine]] ADC Start|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8F8||?||[[ANTA 64K Memory Expansion]] ANTA 64k.3 latch||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8FE||%11111000 11111110||[[Z-MEM]] Software Memory Configuration|| - || Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8FF||%1111100x 111xxxxx||[[CPCISA by Yarek|CPCISA control port]]|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F8FF||%xxxxx0xx 111111xx||[[Peripheral Soft Reset]] (MC_BOOT_PROGRAM and MC_START_PROGRAM do OUT [F8FF],FF)|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F980-#F98F||%1111100x 1000xxxx||[[PlayCity]] Expansion CTC channels (mirror) and YMZ registers|| - || Write&lt;br /&gt;
|-&lt;br /&gt;
|#F990-#F99F||%1111100x 1001xxxx||[[MultiPlay]] Expansion (mirror)|| Read || - &lt;br /&gt;
|-&lt;br /&gt;
|#F9A0-#F9AF||%11111001 1010xxxx||[[X-CPC]] ClockPort SPR|| Read || Write &lt;br /&gt;
|-&lt;br /&gt;
|#F9B0||?||[[VIDI digitizer|Vidi-CPC Video-Digitiser]], Config (W) and Capture Data (R)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9D0||%11111000 11010000||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] SwinSID1 + SwinSID2 DATA (MONO Mode / 3 Channels)||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9D1||%11111000 11010001||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] SwinSID1 (LEFT) DATA (STEREO Mode / 6 Channels)||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9D2||%11111000 11010010||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] SwinSID2 (RIGHT) DATA (STEREO Mode / 6 Channels)||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9DC||?||[[Panda Electronics Communications Interface Unit]] PPI Port A - 8bit Printer data||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9DD||?||[[Panda Electronics Communications Interface Unit]] PPI Port B - 8bit general purpose I/O port||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9DE||?||[[Panda Electronics Communications Interface Unit]] PPI Port C - Handshake (bit0=Strobe.out, Bit5=Busy.in)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9DF||?||[[Panda Electronics Communications Interface Unit]] PPI Control - 8bit Printer data|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9E6||?||Port B - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F9E7||?||RS Port - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F9F5||?||[[ARA Video Digitizer]] - Reset 10bit Config Value|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9F7||?||[[Grafpad II|Hegotron grafpad II]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#F9FC - #F9FE||?||[[Otten &amp;amp; Fecht 1 MB RAM-Disc]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#F9FF||?||[[Grafpad II|Hegotron grafpad II]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#FA7E||%xxxxx0x0 0xxxxxxx||Floppy Motor Control (for [[765 FDC]])|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FABC||%xxxxx0x0 10xxxx00||[[Aleste 520EX]] EXTPORT with CS53: Forward PPI Port A to 8253 Timer 0|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FABD||%xxxxx0x0 10xxxx01||[[Aleste 520EX]] EXTPORT with CS53: Forward PPI Port A to 8253 Timer 1|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FABE||%xxxxx0x0 10xxxx10||[[Aleste 520EX]] EXTPORT with CS53: Forward PPI Port A to 8253 Timer 2|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FABF||%xxxxx0x0 10xxxx11||[[Aleste 520EX]] EXTPORT with CS53: Forward PPI Port A to 8253 Control|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FABF||%xxxxx0x0 10xxxxxx||[[Aleste 520EX]] EXTPORT (config for internal hardware)|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FAD0||%11111010 11010000||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] Select SID (1&amp;amp;2) Register MONO mode||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FAD1||%11111010 11010001||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] Select SID1 Register||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FAD2||%11111010 11010010||[[Sid|SwinSID part of SONIQUE Sound Board WIP]] by [[User:DaDMaN|DaDMaN]] Select SID2 Register||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADC||?||[[Amstrad Serial Interface]] Z80-SIO / DART port A Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADC||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8251 USART data|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADD||?||[[Amstrad Serial Interface]] Z80-SIO / DART port A Control Reg.||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADD||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8251 USART control/status|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADE||?||[[Amstrad Serial Interface]] Z80-SIO / DART port B Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADF||?||[[Amstrad Serial Interface]] Z80-SIO / DART port B Control Reg.||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FADF||?||[[Cirkit serial interface]] 8251 UART data register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FAE6||?||Port A - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#FAE7||?||Port C - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#FAEE||?||[[Amstrad SSA-1 Speech Synthesizer]] (faulty mirror used by included RSX driver)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FAEF||%xxxxx0x0 xxx0xxxx||[[Kempston Mouse]] - Mouse Buttons||Read||-&lt;br /&gt;
|-&lt;br /&gt;
|#FAF5||?||[[ARA Video Digitizer]] - Read Capture Data||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#FAF5||?||[[ARA Video Digitizer]] - Increment 10bit Config Value|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FB7E||%xxxxx0x1 0xxxxxx0||[[765 FDC]] (internal) Status Register||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#FB7F||%xxxxx0x1 0xxxxxx1||[[765 FDC]] (internal) Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBBD||%xxxxx0xx x0xxxx0x||Ram select mode [[Vortex Expansions RAM card|Vortex SP512]]||?||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBDC||?||[[Amstrad Serial Interface]] 8253 Timer counter 0||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDC||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8253 timer 0 (transmit baudrate)|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDD||?||[[Amstrad Serial Interface]] 8253 Timer counter 1||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDD||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8253 timer 1 (receive baudrate)|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDE||?||[[Amstrad Serial Interface]] 8253 Timer counter 2||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDE||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8253 timer 2 (used as 1ms timer)|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDF||?||[[Amstrad Serial Interface]] 8253 Timer Modus Select|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDF||?||[[RS-232 para Amstrad|MHT Ingenieros RS232 para Amstrad]] 8253 timer 0-2 control|| - || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBDF||?||[[Cirkit serial interface]] 8251 UART status/control register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBxx+0||?||CPCI [[Real Time Clock]] Index (DIY)||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBxx+1||?||CPCI [[Real Time Clock]] Data (DIY)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE0||?||[[Dk'tronics Real Time Clock]] - Z80 PIO Port A Data (HD146818P RTC Data bus)|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE0||?||[[Dobbertin Harddisc]] Data Port||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE1||?||[[Dk'tronics Real Time Clock]] - Z80 PIO Port B Data (General Purpose 8bit I/O Port)|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE1||?||[[Dobbertin Harddisc]] Status, Reset||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE2||?||[[Dk'tronics Real Time Clock]] - Z80 PIO Port A Control||?|| Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE2||?||[[Dobbertin Harddisc]] Select, Configuration||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE3||?||[[Dk'tronics Real Time Clock]] - Z80 PIO Port B Control||?|| Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE3||?||[[Dobbertin Harddisc]] DMA, Interrupt||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE4||?||[[Dobbertin Harddisc]] Reset||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE6||?||Port B - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#FBE7||?||RS Port - [[IDE8255]]||?||?&lt;br /&gt;
|-&lt;br /&gt;
|#FBE7||?||[[ACU Real Time Clock (DIY)]] Z80-PIO Data In/Out Port A ||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBE8||?||[[Dk'tronics Real Time Clock]] &amp;quot;4bit latch&amp;quot; (details unknown)|| ? || Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE8||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 8253 Timer0 (RX Clock)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBE9||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 8253 Timer1 (TX Clock)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEA||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 8253 Timer2 (not used)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEB||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 8253 Timer Control||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEC||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 6850 (reversed bit-order) Control||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEC||?||[[PDS development system]] Z80 PIO Port A Data (8bit data to/from PC)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBED||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 6850 (reversed bit-order) TX Data||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBED||?||[[PDS development system]] Z80 PIO Port B Data (handshake to/from PC)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEE||?||[[PDS development system]] Z80 PIO Port A Control||?||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEE||?||[[Amstrad SSA-1 Speech Synthesizer]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEE||%xxxxx0x1 xxx0xxx0||[[Kempston Mouse]] - 8bit X position||Read||-&lt;br /&gt;
|-&lt;br /&gt;
|#FBEE||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 6850 (reversed bit-order) Status||Read||-&lt;br /&gt;
|-&lt;br /&gt;
|#FBEF||?||[[PDS development system]] Z80 PIO Port B Control||?||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBEF||%xxxxx0x1 xxx0xxx1||[[Kempston Mouse]] - 8bit Y position||Read||-&lt;br /&gt;
|-&lt;br /&gt;
|#FBEF||?||[[KDS_Electronics_Serial_Interface|KDS RS232]] 6850 (reversed bit-order) RX Data||Read||-&lt;br /&gt;
|-&lt;br /&gt;
|#FBEF||?||[[ACU Real Time Clock (DIY)]] Z80-PIO Data In/Out Port B ||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBF0 - #FBFF||?||[[Otten &amp;amp; Fecht 1 MB RAM-Disc]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF0||%xxxx1011 1111xxxx||[[AMRAM2]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF0||%xxxxx011 1111xxx0||[[AMSSIO]] Serial Interface MC6850 Control/Status Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF1||%xxxxx011 1111xxx1||[[AMSSIO]] Serial Interface MC6850 Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF5||?||[[ARA Video Digitizer]] - Invoke Video Capture|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF6||?||[[Vortex Disc Drives]] 765 FDC (Vortex,ext) Status Register||Read|| - &lt;br /&gt;
|-&lt;br /&gt;
|#FBF7||?||[[Vortex Disc Drives]] 765 FDC (Vortex,ext) Data Register||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBF7||?||[[ACU Real Time Clock (DIY)]] Z80-PIO Configure Port A ||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBF8||%11111011 11111000||[[8bit Printer Port (Amstrad Action)]] Strobe/Busy||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBF9||%11111011 11111001||[[8bit Printer Port (Amstrad Action)]] Data|| - ||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBFE||?||[[Amstrad Magnum Phaser|Magnum Light Phaser]]||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBFE||?||[[Dart Scanner for DMP-Printers]]||Read||?&lt;br /&gt;
|-&lt;br /&gt;
|#FBFE||?||[[Dk'tronics Speech Synthesizer]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBFE||%xxxxxxxx 11111110||[[TMPI speech synthesizer]] Data Register ||||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FBFF||%xxxxxxxx 11111111||[[TMPI speech synthesizer]] Command/Status Register ||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FBFF||?||[[ACU Real Time Clock (DIY)]] Z80-PIO Configure Port B ||Read||Write &lt;br /&gt;
|-&lt;br /&gt;
|#FC00 - #FDFF||%1111110x xxxxxxxx||[[CPCISA by Yarek|CPCISA]] 16bits mode high byte latch||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC00||?||[[M4 Board]] ACK/KICK|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC5C||?||[[Z80-SIO dual ports RS232 interface for CPC (French)|French DIY Dual Port RS232]] - Baudrate Selection|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC7C||?||[[Z80-SIO dual ports RS232 interface for CPC (French)|French DIY Dual Port RS232]] - Z80-SIO Channel A Data||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC7D||?||[[Z80-SIO dual ports RS232 interface for CPC (French)|French DIY Dual Port RS232]] - Z80-SIO Channel A Control/Status||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC7E||?||[[Z80-SIO dual ports RS232 interface for CPC (French)|French DIY Dual Port RS232]] - Z80-SIO Channel B Data||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FC7F||?||[[Z80-SIO dual ports RS232 interface for CPC (French)|French DIY Dual Port RS232]] - Z80-SIO Channel B Control/Status||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FCE6||?||Port A - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FCE7||?||Port C - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FD00 - #FD3F||%11111101 00xxxxxx||[[Programming:SYMBiFACE_II|SYMBiFACE II]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FD08 - #FD0F||%11111101 00001xxx||[[X-Mass|X-MASS]] 2.5&amp;quot; 44-pin IDE interface / DOM / CF adapter (SYMBiFACE II compatible)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FD40 - #FD4F||%11111101 0100xxxx||[[Programming:SYMBiFACE_III|SYMBiFACE III]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FD80 - #FD87||%11111101 10000xxx||CPC-CPLink - FIFO Interface card for Co-processors, incl. Raspberry Pi ||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FDE6||?||Port B - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FDE7||?||RS Port - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FE00||?||[[M4 Board]] Data|| - ||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FE00 - #FFFF||%1111111x xxxxxxxx||[[CPCISA by Yarek|CPCISA]] I/O access (low byte)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FE80 - #FE81||%11111110 1000000x||[[Albireo]] CH376 controller||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FE84 - #FEA7||%11111110 10xxx1xx||[http://shinra.cpcscene.net/willy.html Willy] Future use or multi-soundchip ||-||-&lt;br /&gt;
|-&lt;br /&gt;
|#FEAC - #FEAD||%11111110 101011xx||[http://shinra.cpcscene.net/willy.html Willy] S2P Dream SAM2965 MIDI synthetizer ||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEB0 - #FEB7||%11111110 10110xxx||[[Albireo]] serial port||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEBC - #FEBF||%11111110 101111xx||[http://shinra.cpcscene.net/willy.html Willy] OPL3 ||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEE6||?||Port A - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEE7||?||Port C - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEE8||%11111110 1110100x||[[Multiface II]] - Enable Multiface II ROM/RAM||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEEA||%11111110 1110110x||[[Multiface II]] - Disable Multiface II ROM/RAM||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEF0 - #FEF7||%11111110 11110xxx||[[CPC-CompactFlash]] - IDE registers||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FEF0 - #FEF7||%11111110 11110xxx||[[uIDE 16]] - IDE registers||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FF00 - #FFFF||%11111111 xxxxxxxx||AMSDAP (Amstrad MSx aDAPter, MSX-to-CPC I/O hardware interface (MSX ports #00-#ff)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FF20 - #FF27||%11111111 00100xxx||MP3MSX (MP3 player) via AMSDAP||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FF20 - #FF27||%11111111 00100xxx||SE-ONE (MP3 player, FM radio receiver, USB master interface) via AMSDAP||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FF60 - #FF6F||%11111111 0110xxxx||CPC [[V9990]] [[PowerGraph]] (upcoming graphic card based on the Graphics 9000 for the MSX)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FFXX||%11111111 xxxxxxxx||[[CPC Booster]] (XX=#00..#28 are used now)||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FFXX||%11111111 xxxxxxxx||[[Amdrum]] (unsigned 8bit DAC)||-||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FFE6||?||Port B - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|#FFE7||?||RS Port - [[IDE8255]]||Read||Write&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Memory Mapped I/O Ports ==&lt;br /&gt;
&lt;br /&gt;
{|{{Prettytable|width: 700px; font-size: 2em;}}&lt;br /&gt;
|'''Mem'''||'''Decoded as'''||'''Port'''||'''Read'''||'''Write''' &lt;br /&gt;
|-&lt;br /&gt;
|#4000-7FFF||%01xxxxxx xxxxxxxx||[[ASIC]] - CPC+/GX4000 registers|| Read || Write&lt;br /&gt;
|-&lt;br /&gt;
|#C00?||%11000000 0000000x||[[Dobbertin Smart Watch]] data read (A0=data)|| Read || -&lt;br /&gt;
|-&lt;br /&gt;
|#C00?||%11000000 0000000x||[[Dobbertin Smart Watch]] data write (A0=data)|| Read || -&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== More Ports ==&lt;br /&gt;
&lt;br /&gt;
Some more I/O addresses (which aren't included in the above list yet) are here:&lt;br /&gt;
* [[Schneiderware Summary]]&lt;br /&gt;
&lt;br /&gt;
== Other I/O Ports ==&lt;br /&gt;
&lt;br /&gt;
A number of peripherals connect to the joystick/printer ports, and so, they do not include &amp;quot;own&amp;quot; I/O addresses. This includes hardware ''other than joysticks/printers'' - for example, mice, robots, audio devices, and simple network adapters. For a more complete list, see corresponding sections on [[Digital Joysticks|Digital Joystick]] and [[Printer Port]] pages.&lt;br /&gt;
&lt;br /&gt;
Aside from I/O addresses, there are some other important I/O signals, for example: [[NMI]] or [[External Interrupt|INT]].&lt;br /&gt;
&lt;br /&gt;
== CPCISA ports for ISA cards ==&lt;br /&gt;
&lt;br /&gt;
{|{{Prettytable|width: 700px; font-size: 2em;}}&lt;br /&gt;
|''Device''||''PC I/O range''||''CPCISA high''||''CPCISA low'' &lt;br /&gt;
|-&lt;br /&gt;
|IDE1||1F0h..1F7h||#FDF0..#FDF7||#FFF0..#FFF7&lt;br /&gt;
|-&lt;br /&gt;
|IDE2||170h..177h||#FD70..#FD77||#FF70..#FF77&lt;br /&gt;
|-&lt;br /&gt;
|Joystick||201h..201h||#FC01..#FC01||#FE01..#FE01&lt;br /&gt;
|-&lt;br /&gt;
|Ethernet||210h..21Fh||#FC10..#FC1F||#FE10..#FE1F&lt;br /&gt;
|-&lt;br /&gt;
|Sound Blaster||220h..23Fh||#FC20..#FC3F||#FE20..#FE3F&lt;br /&gt;
|-&lt;br /&gt;
|LPT2||278h..27Fh||#FC78..#FC7F||#FE78..#FE7F&lt;br /&gt;
|-&lt;br /&gt;
|COM1||2F8h..2FFh||#FCF8..#FCFF||#FEF8..#FEFF&lt;br /&gt;
|-&lt;br /&gt;
|MIDI'||300h..301h||#FD00..#FD01||#FF00..#FF01&lt;br /&gt;
|-&lt;br /&gt;
|MIDI||330h..331h||#FD30..#FD31||#FF30..#FF31&lt;br /&gt;
|-&lt;br /&gt;
|Sound control||370h..371h||#FD70..#FD71||#FF70..#FF71&lt;br /&gt;
|-&lt;br /&gt;
|FDC1||372h..377h||#FD72..#FD77||#FF72..#FF77&lt;br /&gt;
|-&lt;br /&gt;
|LPT1||378h..37Fh||#FD78..#FD7F||#FF78..#FF7F&lt;br /&gt;
|-&lt;br /&gt;
|Sound AD-LIB||388h..38Bh||#FD88..#FD8B||#FF88..#FF8B&lt;br /&gt;
|-&lt;br /&gt;
|VGA||3B0h..3BBh||#FDB0..#FDBB||#FFB0..#FFBB&lt;br /&gt;
|-&lt;br /&gt;
|LPT3||3BCh..3BFh||#FDBC..#FDBF||#FFBC..#FFBF&lt;br /&gt;
|-&lt;br /&gt;
|VGA||3C0h..3DFh||#FDC0..#FDCF||#FFC0..#FFCF&lt;br /&gt;
|-&lt;br /&gt;
|FDC1||3F2h..3F7h||#FDF2..#FDF7||#FFF2..#FFF7&lt;br /&gt;
|-&lt;br /&gt;
|COM1||3F8h..3FFh||#FDF8..#FDFF||#FFF8..#FFFF&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== CPCISA ports for ISA motherboard ==&lt;br /&gt;
&lt;br /&gt;
{|{{Prettytable|width: 700px; font-size: 2em;}}&lt;br /&gt;
|''Device''||''PC I/O range''||''CPCISA high''||''CPCISA low'' &lt;br /&gt;
|-&lt;br /&gt;
|DMA||000h..00Fh||#FC00..#FC0F||#FE00..#FE0F&lt;br /&gt;
|-&lt;br /&gt;
|interrupt||020h..03Fh||#FC20..#FC3F||#FE20..#FE3F&lt;br /&gt;
|-&lt;br /&gt;
|counter||040h..05Fh||#FC40..#FC5F||#FE40..#FE5F&lt;br /&gt;
|-&lt;br /&gt;
|keyboard||060h..067h||#FC60..#FC67||#FE60..#FE67&lt;br /&gt;
|-&lt;br /&gt;
|RTC||070h..071h||#FC70..#FC71||#FE70..#FE71&lt;br /&gt;
|-&lt;br /&gt;
|DMA||080h..08Fh||#FC80..#FC8F||#FE80..#FE8F&lt;br /&gt;
|-&lt;br /&gt;
|DMA||0C0h..0DFh||#FCC0..#FCDF||#FEC0..#FEDF&lt;br /&gt;
|-&lt;br /&gt;
|interrupt||0A0h..0BFh||#FCA0..#FCBF||#FEA0..#FEBF&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]] [[Category:Stub]][[Category:CPC Internal Components]][[Category:Hardware]][[Category:Electronic Component]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=AMSDOS_Memory_Map&amp;diff=107331</id>
		<title>AMSDOS Memory Map</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=AMSDOS_Memory_Map&amp;diff=107331"/>
				<updated>2020-11-18T09:54:05Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Fix description for BE42 (points to drive A, not B)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;AMSDOS uses two memory blocks. The first is always at BE40h..BE7Fh (on the 464 this region was used as Stack). The second is allocated from User RAM, typically located at A700h..ABFFh (unless other expansion ROMs with higher ROM bank number have already allocated RAM at that locations). &lt;br /&gt;
&lt;br /&gt;
== AMSDOS RAM 1 (always at BE40h..BE7Fh) ==&lt;br /&gt;
  BE40   2 Pointer to CP/M DPH for Drive A and drive B  (A910h) (CPM:AE58h) (see below)&lt;br /&gt;
  BE42   2 Pointer to XPDB for Drive A and drive B      (A890h) (CPM:ADD8h)&lt;br /&gt;
  BE44   2 Delay for Motor Spin-up in 1/50 seconds      (0032h)&lt;br /&gt;
  BE46   2 Delay for Motor Spin-down in 1/50 seconds    (00FAh)&lt;br /&gt;
  BE48   1 Delay for Formatting in whatever units       (AFh)&lt;br /&gt;
  BE49   1 Delay for whatever in milliseconds           (0Fh)&lt;br /&gt;
  BE4A   1 Delay for Track-Settle in milliseconds       (0Ch)&lt;br /&gt;
  BE4B   1 Number of bytes received in Result Phase&lt;br /&gt;
  BE4C   7 Response from FDC in Result Phase&lt;br /&gt;
  BE53   1 Drive HS/US&lt;br /&gt;
  BE54   1 Track&lt;br /&gt;
  BE55   1 Record&lt;br /&gt;
  BE56   1 Drive HS/US&lt;br /&gt;
  BE57   1 Track&lt;br /&gt;
  BE58   1 Sector&lt;br /&gt;
  BE59   1 Number of Records per Track? or (Blockmask+1)?&lt;br /&gt;
  BE5A   1 Drive HS/US&lt;br /&gt;
  BE5B   1 Track&lt;br /&gt;
  BE5C   1 Record&lt;br /&gt;
  BE5D   1 ?&lt;br /&gt;
  BE5E   1 Flag Read/Write Sector&lt;br /&gt;
  BE5F   1 Flag On/Off Motor&lt;br /&gt;
  BE60   2 Pointer to 128-byte Directory Record I/O Buffer (A930h) (CPM:0080h)&lt;br /&gt;
  BE62   2 Pointer to 512-byte Sector I/O Buffer           (A9B0h) (CPM:AEF8h)&lt;br /&gt;
  BE64   2 Stack...Temporary...?                           (BFxxh)&lt;br /&gt;
  BE66   1 Number of retries (10h)&lt;br /&gt;
  BE67   6 Ticker Block (Chain,Count,Reload)&lt;br /&gt;
  BE6D   7 Event Block (Chain,Count,Class,Proc,Bank)&lt;br /&gt;
  BE74   1 Desired Track or Sector Number&lt;br /&gt;
  BE75   1 FDC Command Number&lt;br /&gt;
  BE76   2 Pointer to 512-byte Sector I/O Buffer           (A9B0h) (CPM:AEF8h)&lt;br /&gt;
  BE78   1 Flag Enable/Disable Error Messages&lt;br /&gt;
  BE79   1 Reserved, CPC+: 00h=Normal, FFh=Enable Keyboard Scanning during I/O&lt;br /&gt;
  BE7A   1 Reserved, CPC+: 00h=No Disc (464+), FFh=Disc (6128+)&lt;br /&gt;
  BE7B   2 Reserved&lt;br /&gt;
  BE7D   2 Pointer to Memory Pool                          (A700h) (CPM:N/A)&lt;br /&gt;
  BE7F   1 Hook                                            (C9h)&lt;br /&gt;
&lt;br /&gt;
== AMSDOS RAM 2 (usually at A6FCh..ABFFh) ==&lt;br /&gt;
  A6FC   4 AMSDOS RSX Block (Next block, AMSDOS ROM bank) (0000h,0007h)&lt;br /&gt;
  A700   1 Default Drive (00h or 01h)&lt;br /&gt;
  A701   1 Default User  (00h and up)&lt;br /&gt;
  A702   1 Active Drive  (00h or 01h)&lt;br /&gt;
  A703   2 Pointer to DPH for Active Drive (A910h or A920h)&lt;br /&gt;
  A705   1 Flag if OPEN on Default Drive&lt;br /&gt;
  A706   2 Stackpointer&lt;br /&gt;
  A708  36 Extended File Control Block for OPENIN&lt;br /&gt;
  A72C  36 Extended File Control Block for OPENOUT&lt;br /&gt;
  A750  74 File Header for OPENIN&lt;br /&gt;
  A79A  74 File Header for OPENOUT&lt;br /&gt;
  A7E4 128 Temporary Record &amp;amp; Filename Buffer&lt;br /&gt;
  A864  39 Original CAS_Function Vectors (13 x 3 bytes)&lt;br /&gt;
  A88B   3 FAR Address for RST4 in patched CAS_vectors&lt;br /&gt;
  A88E   2 ?&lt;br /&gt;
  A890  64 Extended Disk Parameter Block Drive A&lt;br /&gt;
  A8D0  64 Extended Disk Parameter Block Drive B&lt;br /&gt;
  A910  16 Disk Parameter Header Drive A&lt;br /&gt;
  A920  16 Disk Parameter Header Drive B&lt;br /&gt;
  A930 128 Record Buffer for Directory Records&lt;br /&gt;
  A9B0 512 Sector Buffer&lt;br /&gt;
  ABB0  80 Reserved&lt;br /&gt;
&lt;br /&gt;
== Extended File Control Block (FCB) for OPENIN/OPENOUT ==&lt;br /&gt;
  00h  1 Drive Number (00h=A, 01h=B, FFh=Not Open)&lt;br /&gt;
  01h  1 User Number&lt;br /&gt;
  02h  8 Filename  (padded with 20h)&lt;br /&gt;
  0Ah  3 Extension (padded with 20h)&lt;br /&gt;
  0Dh  1 Extent Number (00h=First directory entry of file)&lt;br /&gt;
  0Eh  2 Zero&lt;br /&gt;
  10h  1 Number of Records in current Extent&lt;br /&gt;
  11h 16 Block Numbers for current Extent&lt;br /&gt;
  21h  3 Number of previously accessed Records&lt;br /&gt;
&lt;br /&gt;
== File Header for OPENIN/OPENOUT ==&lt;br /&gt;
  00h  1 Access Mode (1=CHAR, 2=DIRECT)&lt;br /&gt;
  01h  2 Pointer to 2K work buffer&lt;br /&gt;
  03h  2 Pointer to current CHAR in 2K work buffer&lt;br /&gt;
  05h 16 User Number and Filename (padded with 00h)&lt;br /&gt;
  15h  1 Block Number (whatever, can be zero)&lt;br /&gt;
  16h  1 Last Block   (whatever, can be zero)&lt;br /&gt;
  17h  1 File Type    (00h=Basic, 01h=EncryptedBasic, 02h=Binary)&lt;br /&gt;
  18h  2 Data Length  (whatever, can be zero)&lt;br /&gt;
  1Ah  2 Load Address in memory&lt;br /&gt;
  1Ch  1 First Block           FFh&lt;br /&gt;
  1Dh  2 Filesize (excluding the 80h-byte header)&lt;br /&gt;
  1Fh  2 Entrypoint (for executable binary files)&lt;br /&gt;
  21h 36 Unused (free for user?) (parts are used for OPENOUT)&lt;br /&gt;
  45h  3 24bit Filepos in CHARs, or 16bit Filesize if non-ASCII file&lt;br /&gt;
  48h  2 Checksum accross [05h..47h]&lt;br /&gt;
&lt;br /&gt;
== Extended Disk Parameter Block (DPB,CSA,ALT) for Drive A/B ==&lt;br /&gt;
  00h  2 SPT   Records per Track (CPM/Data=36, IBM=32)&lt;br /&gt;
  02h  1 BSH   Block Shift (3) (records per block = 1 SHL N)&lt;br /&gt;
  03h  1 BLM   Block Mask  (7) (records per block minus 1)&lt;br /&gt;
  04h  1 EXM   Extend Mask (0)&lt;br /&gt;
  05h  2 DSM   Max Block Number  (CPM=170, Data=179, IBM=155)&lt;br /&gt;
  07h  2 DRM   Max Dir Entries-1 (63)&lt;br /&gt;
  09h  2 AL    Directory Allocation Table (11000000b,00000000b = Block 0,1)&lt;br /&gt;
  0Bh  2 CKS   Check Area Size (Size of the &amp;quot;CSA&amp;quot; field) (0010h)&lt;br /&gt;
  0Dh  2 OFF   Track Offset (Size of Bootstrap) (CPM=2, Data=0, IBM=1)&lt;br /&gt;
  0Fh  1 FSC   First Sector on Track (CPM=41h, Data=C1h, IBM=01h)&lt;br /&gt;
  10h  1 PST   Physical Sectors per Track (CPM/Data=9, IBM=8)&lt;br /&gt;
  11h  1 GPS   GAP3 for Sector Read/Write (2Ah)&lt;br /&gt;
  12h  1 GPT   GAP3 for Track Formatting  (52h)&lt;br /&gt;
  13h  1 FLB   Fillbyte for Track Formatting (E5h)&lt;br /&gt;
  14h  1 BPS   Bytes per Sector (2=512) (80h SHL N, Shift amount or so?)&lt;br /&gt;
  15h  1 RPS   Records per Sector (4)&lt;br /&gt;
  16h  1 Current Track&lt;br /&gt;
  17h  1 Recalibrate Track 0 Flag&lt;br /&gt;
  18h  1 Flag Login on any access ? (re-detect CPM/Data format?)&lt;br /&gt;
  19h 16 CSA   Checksums (directory record chksums, for sensing disk-changes)&lt;br /&gt;
  29h 23 ALT   Block Allocation Table (23x8bit = 184bit) (only 180bit used)&lt;br /&gt;
&lt;br /&gt;
== Disk Parameter Header (DPH) for Drive A/B ==&lt;br /&gt;
  00h  2 XLT    Skew Factor Translation (physical-to-logical sector) (not used)&lt;br /&gt;
  02h  2 TRACK  Current Track (misused as DIRNUM by AMSDOS)&lt;br /&gt;
  04h  2 SECTOR Current Sector&lt;br /&gt;
  06h  2 DIRNUM Current Directory Number&lt;br /&gt;
  08h  2 DIRBUF Pointer to Directory Buffer (A930h)&lt;br /&gt;
  0Ah  2 DPB    Pointer to DPB/XDPB (A890h/A8D0h for Drive A/B) Drive Param Block&lt;br /&gt;
  0Ch  2 CSV    Pointer to CSA (A8A9h/A8E9h for Drive A/B) Checksums&lt;br /&gt;
  0Eh  2 ALV    Pointer to ALT (A8B9h/A8F9h for Drive A/B) Allocation Table&lt;br /&gt;
&lt;br /&gt;
== Finding the XDPB for a drive ==&lt;br /&gt;
&lt;br /&gt;
The 2 byte pointer at &amp;amp;BE40 points to a list of DPH structures,  1 per drive, listed in order.&lt;br /&gt;
In most AMSTRAD dos there is space for 2 only.&lt;br /&gt;
&lt;br /&gt;
To get the XDPB for a drive (this works on [[VDOS]], [[X-DDOS]], [[AMSDOS]] and [[Parados]]:&lt;br /&gt;
&lt;br /&gt;
   ;; A = drive&lt;br /&gt;
   ld l,a &lt;br /&gt;
   ld h,0&lt;br /&gt;
   add hl,hl&lt;br /&gt;
   add hl,hl&lt;br /&gt;
   add hl,hl&lt;br /&gt;
   add hl,hl&lt;br /&gt;
   ld de,(&amp;amp;be40)&lt;br /&gt;
   add hl,de&lt;br /&gt;
   ld de,&amp;amp;A&lt;br /&gt;
   add hl,de&lt;br /&gt;
   ld a,(hl)&lt;br /&gt;
   inc hl&lt;br /&gt;
   ld h,(hl)&lt;br /&gt;
   ld l,a&lt;br /&gt;
   ;; HL = address of XDPB&lt;br /&gt;
&lt;br /&gt;
On VDOS, to access the XDPB for the 3rd drive, you need to use |S,1:|A and then read it.&lt;br /&gt;
&lt;br /&gt;
On Dobbertin HD and Vortex HD you can't get the XDPB for the hard disc partitions using the above code.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Bonzo_News&amp;diff=98291</id>
		<title>Bonzo News</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Bonzo_News&amp;diff=98291"/>
				<updated>2017-07-16T14:15:32Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Add PDF link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A UK fanzine written by [[Colin Harris]] of [[Nemesis]], containing information for owners of his Bonzo tape-to-disc utilities, cheats, various type-ins and very silly writeups.&lt;br /&gt;
&lt;br /&gt;
Ran from 1986 to 1989, and succeeded by [[Bonzo's Scrapyard]].&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
[[Media:bonzonews_1-25.pdf | Omnibus edition of issues 1-7, full editions of issues 8-25]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Fanzines]] [[Category:Papermag]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=File:Bonzonews_1-25.pdf&amp;diff=98290</id>
		<title>File:Bonzonews 1-25.pdf</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=File:Bonzonews_1-25.pdf&amp;diff=98290"/>
				<updated>2017-07-16T14:06:59Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Bonzo News fanzine. Summary version of issues 1-7, full version of issues 8-25.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bonzo News fanzine. Summary version of issues 1-7, full version of issues 8-25.&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Bonzo_News&amp;diff=98289</id>
		<title>Bonzo News</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Bonzo_News&amp;diff=98289"/>
				<updated>2017-07-16T14:04:58Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Initial edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A UK fanzine written by [[Colin Harris]] of [[Nemesis]], containing information for owners of his Bonzo tape-to-disc utilities, cheats, various type-ins and very silly writeups.&lt;br /&gt;
&lt;br /&gt;
Ran from 1986 to 1989, and succeeded by [[Bonzo's Scrapyard]].&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Connector:Expansion_port&amp;diff=91949</id>
		<title>Connector:Expansion port</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Connector:Expansion_port&amp;diff=91949"/>
				<updated>2015-01-23T21:49:46Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Added explanation for /BUS RESET based on 6128 schematic&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== CPC Expansion Port ==&lt;br /&gt;
&lt;br /&gt;
[[File:ExpansionPortEdge.gif]]&lt;br /&gt;
&lt;br /&gt;
[[File:ExpansionPortPlus.png]]&lt;br /&gt;
&lt;br /&gt;
EXPANSION: 50 way Delta range. &lt;br /&gt;
&lt;br /&gt;
 1  Sound     2  GND&lt;br /&gt;
 3  A15       4  A14&lt;br /&gt;
 5  A13       6  A12&lt;br /&gt;
 7  A11       8  A10&lt;br /&gt;
 9  A9        10 A8&lt;br /&gt;
 11 A7        12 A6&lt;br /&gt;
 13 A5        14 A4&lt;br /&gt;
 15 A3        16 A2&lt;br /&gt;
 17 A1        18 A0&lt;br /&gt;
 19 D7        20 D6&lt;br /&gt;
 21 D5        22 D4&lt;br /&gt;
 23 D3        24 D2&lt;br /&gt;
 25 D1        26 D0&lt;br /&gt;
 27 VCC       28 *MREQ&lt;br /&gt;
 29 *M1       30 *RFSH&lt;br /&gt;
 31 *IORQ     32 *RD&lt;br /&gt;
 33 *WR       34 *HALT&lt;br /&gt;
 35 *INT      36 *NMI&lt;br /&gt;
 37 *BUSRQ    38 *BUSAK&lt;br /&gt;
 39 READY     40 *BRST&lt;br /&gt;
 41 *RSET     42 *ROMEN&lt;br /&gt;
 43 ROMDIS    44 *RAMRD&lt;br /&gt;
 45 RAMDIS    46 CURSOR&lt;br /&gt;
 47 LPEN      48 *EXP&lt;br /&gt;
 49 GND       50 CLK4&lt;br /&gt;
&lt;br /&gt;
== KC Compact Expansion Port ==&lt;br /&gt;
&lt;br /&gt;
The [[KC Compact]] has 58pin, special-type connector&lt;br /&gt;
  1B  +12V (20mA max)              29B ............................. 1B&lt;br /&gt;
  1A  +20V                         29A ............................. 1A&lt;br /&gt;
  2B  Same as CPC Pin1     (SOUND)&lt;br /&gt;
  2A  Same as CPC Pin2     (GND)&lt;br /&gt;
  ..  Same as CPC Pin3..48 (see there)&lt;br /&gt;
  26B Same as CPC Pin49    (GND)&lt;br /&gt;
  26A Same as CPC Pin50    (4MHz)&lt;br /&gt;
  27B FBAS Video Output&lt;br /&gt;
  27A PIO /TEST          ;\&lt;br /&gt;
  28B Printer Bit1       ;&lt;br /&gt;
  28A Printer Bit0       ; for TEST mode (remote-network-boot)&lt;br /&gt;
  29B Printer /Strobe    ;&lt;br /&gt;
  29A Printer Bit6       ;/&lt;br /&gt;
&lt;br /&gt;
== Expansion Port on Aleste 520EX Expansion Port ==&lt;br /&gt;
&lt;br /&gt;
The [[Aleste 520EX]] has a 62pin, male edge connector.&lt;br /&gt;
  A1..A25  Same as &amp;lt;odd&amp;gt;  CPC Pins 1..49 (ie. SOUND, A15, A14, etc.)&lt;br /&gt;
  B1..B25  Same as &amp;lt;even&amp;gt; CPC Pins 2..50 (except B20=NC, instead /BUSRESET)&lt;br /&gt;
  A26 MAP14     B26 MAP15&lt;br /&gt;
  A27 MAP16     B27 MAP17            A31___________________A1&lt;br /&gt;
  A28 MAP18     B28 MAPBLK             |___________________|&lt;br /&gt;
  A29 /INTA     B29 /DISP            B31                   B1&lt;br /&gt;
  A30 Agnd      B30 /CPU&lt;br /&gt;
  A31 Aucc      B31 HIGH&lt;br /&gt;
Most of the extra pins are DMA related. The Aucc/Agnd pins are meant to be smoother voltages then VCC/GND (for use with Audio expansions).&lt;br /&gt;
&lt;br /&gt;
== Amstrad PCW ==&lt;br /&gt;
&lt;br /&gt;
The Amstrad PCW has a 50-pin Expansion port, too. But it's pin-outs are entirely different as on CPC.&lt;br /&gt;
* [[Amstrad PCW Expansion Port]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Signal Descriptions==&lt;br /&gt;
This information was originally available here: http://www.retroisle.com/amstrad/cpc/Technical/Hardware/ExpansionPorts.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The signals are listed in alphabetical order. Signals which have a &amp;quot;/&amp;quot; prefix are &amp;quot;active-low&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
More information for signals which are inputs to the CPU or outputs from the CPU can be found by reading other documents or datasheets about the Z80 CPU. &lt;br /&gt;
&lt;br /&gt;
* +5V (5V power) The CPC power output is not able to supply many peripherals. This power output should be used to power IC's and used as a signal reference only.&lt;br /&gt;
* φ 4MHz Clock&lt;br /&gt;
* A15-A0 (Address bus; Output from CPU). A15-A0 form a 16-bit address. A15-A0 are used to specify a memory address or an I/O address.&lt;br /&gt;
* /BUSAK (Bus Acknowledge; Output from CPU). When /BUSAK=&amp;quot;0&amp;quot; the CPU is signalling that control of the address bus, data bus and output signals has been released, and the device can take control.&lt;br /&gt;
* /BUS RESET (Bus Reset; Input to PIO/CPU) Acts similarly to /RESET but also resets the PIO chip.&lt;br /&gt;
* /BUSRQ (Bus Request; Input to CPU). When /BUSRQ=&amp;quot;0&amp;quot; a device is requesting control of the address bus, data bus and the CPU's output signals. At the end of the current instruction cycle, the CPU will issue a Bus Acknowledge.&lt;br /&gt;
* CURSOR (Cursor; Output from CRTC). When CURSOR=&amp;quot;1&amp;quot; the CRTC is displaying the cursor.&lt;br /&gt;
* D7-D0 (Data bus; Input to CPU/Output from CPU). D7-D0 form 8-bit data. In a I/O operation, D7-D0 are used to transfer data to/from a I/O device. In a memory operation, D7-D0 are used to transfer data to/from memory. In an interrupt request operation, D7-D0 are used to specify part of an interrupt response vector.&lt;br /&gt;
* /EXP (Expansion device connected; Input to PPI). The function of this signal can be used by a device to signal it's presence, it does this by setting this signal to &amp;quot;0&amp;quot;. This signal is connected to bit 5 of PPI port B. This signal can be reprogrammed as input or output using the PPI, and can therefore be used as a general purpose input/output.&lt;br /&gt;
* Gnd (Signal Ground). Signal Ground. This can be used as a signal reference and as the Gnd connection to IC's.&lt;br /&gt;
* /HALT (Halt; Output from CPU). When /HALT=&amp;quot;0&amp;quot; the CPU has executed a &amp;quot;HALT&amp;quot; instruction. The CPU will execute &amp;quot;NOP&amp;quot; instructions until a interrupt request is received and interrupts are not masked.&lt;br /&gt;
* /INT (Interrupt Request; Input to CPU). This is the maskable interrupt input to the CPU. When /INT=&amp;quot;0&amp;quot; a interrupt request is signalled to the CPU. In the CPC, the interrupts are generated by the Gate-Array. In the CPC+, the interrupts are generated by the ASIC. In the KC Compact, the interrupts are generated by the Z8536 CIO.&lt;br /&gt;
** If interrupts are masked, the interrupt request is ignored.&lt;br /&gt;
** If interrupts are not masked, the interrupt request will be acknowledged.&lt;br /&gt;
* /IORQ (Input/Output Request; Output from CPU). When /IORQ=&amp;quot;0&amp;quot; there are two possible functions:&lt;br /&gt;
** Interrupt acknowledge: /M1=&amp;quot;0&amp;quot;. The interrupt acknowledge function is used to indicate that the interrupting device can put a interrupt vector into D7-D0.&lt;br /&gt;
** I/O operation (read or write): /M1=&amp;quot;1&amp;quot;, /WR=&amp;quot;0&amp;quot; OR /RD=&amp;quot;0&amp;quot;. The I/O operation is used to read from/write to a I/O device. When the CPU is performing a I/O operation, A15-A0 will contain the I/O address.&lt;br /&gt;
*** If /RD is &amp;quot;0&amp;quot; then the operation is reading from a I/O device. D7-D0 will contain data read from the selected device.&lt;br /&gt;
*** If /WR is &amp;quot;0&amp;quot; then the operation is writing to a I/O device. D7-D0 contain data to write to the selected device.&lt;br /&gt;
* L.PEN (Light Pen trigger; Input to CRTC). A low-to-high (&amp;quot;0&amp;quot; to &amp;quot;1&amp;quot;) transition on this signal will cause the CRTC to store the current memory address (CRTC MA signal) it has generated. The CRTC memory address can be used to calculate the position of a light-pen/light-gun on the screen.&lt;br /&gt;
* /M1 (Machine cycle one; Output from CPU). When /M1=&amp;quot;0&amp;quot; there are two possible functions:&lt;br /&gt;
** Interrupt acknowledge: /IORQ=&amp;quot;0&amp;quot;&lt;br /&gt;
** CPU is fetching the op-code part of an instruction: /MREQ=&amp;quot;0&amp;quot; and /IORQ=&amp;quot;1&amp;quot;&lt;br /&gt;
* /MREQ (Memory Request; Output from CPU). When /MREQ=&amp;quot;0&amp;quot; the CPU is performing a memory operation. A15-A0 contain the memory address. &lt;br /&gt;
** If /RD is &amp;quot;0&amp;quot; then the operation is reading from memory. D7-D0 will contain data read from the memory. &lt;br /&gt;
** If /WR is &amp;quot;0&amp;quot; then the operation is writing to memory. D7-D0 contain data to write to the memory.&lt;br /&gt;
* /NMI (Non-Maskable Interrupt; Input to CPU). When there is a negative-edge on this signal (signal changes from &amp;quot;1&amp;quot; to &amp;quot;0&amp;quot;), this will force the CPU to execute the non-maskable interrupt service routine at &amp;amp;0066. This interrupt can't be masked and has a higher priority than /INT.&lt;br /&gt;
* RAMDIS (Internal RAM Disable; Input to Internal RAM). When RAMDIS=&amp;quot;1&amp;quot; the internal RAM of the CPC/CPC+/KC Compact is forced inactive. e.g. a ram-expansion device would use this signal to override the internal RAM selection with the ram on the device. The internal RAM would be forced inactive, and the ram on the ram-expansion would be actived.&lt;br /&gt;
* /RAMRD (Ram Read; Output from Gate-Array). When /RAMRD=&amp;quot;0&amp;quot; a ram read operation is active. This signal is generated by the Gate-Array. This signal will be &amp;quot;0&amp;quot; when:&lt;br /&gt;
** A15=A14=&amp;quot;0&amp;quot; and bit 2 of the Gate-Array ROM configuration register is set to 1. (lower ROM disable)&lt;br /&gt;
** A15=A14=&amp;quot;1&amp;quot; and bit 3 of the Gate-Array ROM configuration register is set to 1. (upper ROM disable)&lt;br /&gt;
** A15 is not equal to A14.&lt;br /&gt;
* /RD (Read; Output from CPU). When /RD=&amp;quot;0&amp;quot; the CPU is performing a read operation. The operations are:&lt;br /&gt;
** Reading from a I/O device: (/IORQ=&amp;quot;0&amp;quot;, A15-A0 contain I/O address)&lt;br /&gt;
** Reading from memory (/MREQ=&amp;quot;0&amp;quot;, A15-A0 contain memory address)&lt;br /&gt;
* /RESET (Reset; Input to CPU). When /RESET=&amp;quot;0&amp;quot; the CPU is held in the reset state. When the reset state is released, the CPU Program Counter (PC) is set to &amp;quot;0&amp;quot; and execution begins resumes from the new PC address.&lt;br /&gt;
* /RFSH (Refresh; Output from CPU). When /RFSH=&amp;quot;0&amp;quot; and /MREQ=&amp;quot;0&amp;quot; this indicates that A6-A0 contain a refresh memory address that can be used to refresh the memory&lt;br /&gt;
* ROMDIS (Internal ROM Disable; Input to internal ROM). When ROMDIS=&amp;quot;1&amp;quot; the internal ROM of the CPC/CPC+/KC Compact is forced inactive. e.g. a ROM-board device would use this signal to override the ROM selection with a ROM plugged into the device. The internal ROM would be forced inactive, and the selected expansion ROM would be activated.&lt;br /&gt;
* /ROMEN (ROM Enable; Output from Gate-Array). When /ROMEN=&amp;quot;0&amp;quot; a ROM read operation is active. This signal is generated by the Gate-Array. This signal will be &amp;quot;0&amp;quot; when:&lt;br /&gt;
** A15=A14=&amp;quot;0&amp;quot; and bit 2 of the Gate-Array ROM configuration register is set to 0, (lower ROM enable)&lt;br /&gt;
** A15=A14=&amp;quot;1&amp;quot; and bit 3 of the Gate-Array ROM configuration register is set to 0. (upper ROM enable)&lt;br /&gt;
** A expansion device (e.g. a ROM-board) can use this signal to activate the selected ROM plugged into the device.&lt;br /&gt;
* Sound (Mono Audio; Output from PSG). This is a mono audio signal generated by mixing the 3 PSG audio channels together.&lt;br /&gt;
* /WAIT (Wait; Input to CPU, Output from Gate-Array). When /WAIT=&amp;quot;0&amp;quot; this signal is used to delay memory or I/O access by the CPU. This signal is used to force the CPU to access memory or I/O when it is ready. This signal is generated by the Gate-Array.&lt;br /&gt;
* /WR (Write; Output from CPU). When /WR=&amp;quot;0&amp;quot; the CPU is performing a write operation. The operations are:&lt;br /&gt;
** Writing to a I/O device: (/IORQ=&amp;quot;0&amp;quot;, A15-A0 contain I/O address)&lt;br /&gt;
** Writing to memory (/MREQ=&amp;quot;0&amp;quot;, A15-A0 contain memory address)&lt;br /&gt;
&lt;br /&gt;
[[Category:Peripherals]][[Category:CPC Internal Components]][[Category:CPC Plus]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Solavox&amp;diff=89761</id>
		<title>Solavox</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Solavox&amp;diff=89761"/>
				<updated>2014-04-24T12:57:50Z</updated>
		
		<summary type="html">&lt;p&gt;Pelrun: Added Awa to the used brand names sentence.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Solavox]] is one the [[LK-selectable Brand Names]] contained in the CPC BIOS.&lt;br /&gt;
&lt;br /&gt;
Solavox is a manufacturer for HiFi speakers and televisions sets.&lt;br /&gt;
&lt;br /&gt;
* Comet was the exclusive distributor for Solavox.&lt;br /&gt;
* Solavox. Brand name used by Comet Group plc.&lt;br /&gt;
* Comet Group Plc, Criterion House, George Street, Hull. HU1 3AU, UK&lt;br /&gt;
&lt;br /&gt;
== Solavox and CPC ==&lt;br /&gt;
&lt;br /&gt;
'''Solavox''' is also included in the CPCs alternative manufacturer names, which are predefined in the BIOS ROM, and are jumper-selectable via [[8255|PPI Port B]]. Amstrad was apparently planning to allow Solavox (and some other companies) to redistribute the CPC computers.&lt;br /&gt;
&lt;br /&gt;
Of these pre-defined brand names, only [[Amstrad]], [[Schneider]] (german distributor) and [[Awa]] (australian distributor) were used. Another distributor was [[Indescomp]] (spain), this company wasn't included in the BIOS ROM, and so, Indescomp CPCs usually displayed [[Amstrad]] in the boot message, for some reason (maybe accidently) a few Indescomp CPCs displayed [[Solavox]]. For best confusion, this happened in '''Indescomp U.S.A.''' models, whilst Solavox / Comet Group are '''UK''' based companies.&lt;br /&gt;
&lt;br /&gt;
== The &amp;quot;Solavox&amp;quot; CPC 6128 ==&lt;br /&gt;
&lt;br /&gt;
The Solavox CPC 6128 is a [[Schneider]] CPC 6128 (metal inner-cover and centronics connectors) inside a standard [[Amstrad]] CPC 6128 case, with British keyboard and [[Solavox]] startup, produced by [[Indescomp]]. No external Solavox logos or labels, nothing unusual but the sticker on the back, which reads:&lt;br /&gt;
&lt;br /&gt;
 Indescomp International U.S.A., inc.&lt;br /&gt;
 1313 E. Westleigh Rd.&lt;br /&gt;
 P.O.Box 592, Lake Forest Illinois 60045, U.S.A.&lt;br /&gt;
 Manufactured: November 1985&lt;br /&gt;
&lt;br /&gt;
Not &amp;quot;Amstrad USA&amp;quot;, but &amp;quot;Indescomp USA&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
There are at least three known Solavox units on Spain, so it seems some of them were marketed here for any strange reason.&lt;br /&gt;
&lt;br /&gt;
Note: Indescomp USA did actually officially launch the CPC 6128 (see [[:File:Amstrad Computer User8508 007.jpg|here]]).&lt;br /&gt;
&lt;br /&gt;
== Real Solavox Pictures ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
File:Solavox-tk30-in-speakers-front.jpg&lt;br /&gt;
File:Solavox-tk30-in-speakers-boxed.jpg&lt;br /&gt;
File:Solavox 14inch.jpg&lt;br /&gt;
File:Solavox 140.jpg&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:CPC History]]&lt;/div&gt;</summary>
		<author><name>Pelrun</name></author>	</entry>

	</feed>