<?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=220.233.179.160</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=220.233.179.160"/>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php/Special:Contributions/220.233.179.160"/>
		<updated>2026-08-29T01:25:46Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Category:CPC_History&amp;diff=15661</id>
		<title>Category:CPC History</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Category:CPC_History&amp;diff=15661"/>
				<updated>2007-04-27T23:51:24Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: Bloody spammers&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An alphabetical list of articles portraing CPC's history.&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Talk:Boules_et_Bits&amp;diff=15217</id>
		<title>Talk:Boules et Bits</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Talk:Boules_et_Bits&amp;diff=15217"/>
				<updated>2007-03-25T01:06:23Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Are there any rules to this game?&amp;lt;br&amp;gt;&lt;br /&gt;
I've deduced that the balls should be 16x16, any particular mode, screen size etc? [[User:Executioner|Executioner]] 05:51, 11 September 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=ZACK&amp;diff=6065</id>
		<title>ZACK</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=ZACK&amp;diff=6065"/>
				<updated>2006-09-05T07:46:02Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: ZACK Programing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==== ZACK Programming Language ====&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
BACKGROUND (x,y) = value		Set a background tile&lt;br /&gt;
BACKGROUND COLLISION from[ .. to]	Test for background collision&lt;br /&gt;
BORDER ink				Set Border&lt;br /&gt;
BYTE var{ ,var}				Define Byte variable(s)&lt;br /&gt;
CLEAR SCREEN byte			Clear the screen&lt;br /&gt;
CONSOLE					Output on Console&lt;br /&gt;
CONST var = value{ ,var = value}	Define constant(s)&lt;br /&gt;
COPY LAYOUT x,y,width,height TO x,y	Copy a section of the Layout&lt;br /&gt;
COPY SPRITE n TO n			Copy a Sprite&lt;br /&gt;
DEC var					Decrement a variable&lt;br /&gt;
DEFINE var = value{ ,var = value}	Define constant(s) (Same as CONST)&lt;br /&gt;
DEFINE KEY key				Define a key&lt;br /&gt;
DEFINE MAIN TASK number			Define a Main Task&lt;br /&gt;
DEFINE MARKER TASK number		Define a Marker Task&lt;br /&gt;
DEFINE MOVE TASK number			Define a Move Task&lt;br /&gt;
DEFINE DRAW TASK number			Define a Draw Task&lt;br /&gt;
DRAW x,y[,pen]				Not implemented (Draw a line)&lt;br /&gt;
DRAW TASK number			Execute DRAW Task&lt;br /&gt;
ELSE					ELSE statement&lt;br /&gt;
ELSE IF expr				ELSE IF statement&lt;br /&gt;
ENDIF					End of IF statement&lt;br /&gt;
FLASH OBJECT				Flash the current Object&lt;br /&gt;
FOR var = start TO end[ STEP step]	For loop statement&lt;br /&gt;
GOTO line				GOTO statement&lt;br /&gt;
GOTO MARKER marker			Go to Layout Marker&lt;br /&gt;
HIDDEN SCREEN				Output on Hidden Screen&lt;br /&gt;
IF expr[ GOTO line]			IF or IF .. GOTO statement&lt;br /&gt;
INC var					Increment a variable&lt;br /&gt;
INK pen, ink				Set the given pen to palette colour&lt;br /&gt;
INPUT var[:width]			Assign user input to variable&lt;br /&gt;
INSERT HIGH position			Insert a High Score in the table&lt;br /&gt;
KILL number				Kill given Object&lt;br /&gt;
KILL ALL				Kill all Objects&lt;br /&gt;
LOCATE x,y				Position text cursor&lt;br /&gt;
MAIN TASK number			Execute MAIN Task&lt;br /&gt;
MOVE x,y				Move graphics position&lt;br /&gt;
MOVE OBJECT dx,dy[ SCROLL]		Move current Object (include scroll)&lt;br /&gt;
MOVE OBJECTS				Execute MOVE Tasks for all Objects&lt;br /&gt;
MOVE TASK number			Execute given MOVE Task&lt;br /&gt;
NEW OBJECT obj,part,x,y,mt[,dt[,v1..]]	Create a new Object (mt = Move Task, dt=Draw Task)&lt;br /&gt;
NEXT					Continue FOR loop&lt;br /&gt;
OBJECT COLLISION from[ .. to]		Check for collision with another Object&lt;br /&gt;
ORIGIN x,y				Change the output Origin&lt;br /&gt;
PAUSE delay[ KEY key]			Pause for given time (or until key pressed)&lt;br /&gt;
PLAY FX number				Not implemented (Play given Sound Effect)&lt;br /&gt;
PLAY TUNE number			Not implemented (Play given Tune)&lt;br /&gt;
PLOT x,y[,pen]				Not implemented (Plot a point)&lt;br /&gt;
PRINT [@x,y,]expr[:width]		Print value (at position, with given width)&lt;br /&gt;
REPEAT					Repeat loop statement&lt;br /&gt;
RESET var{ ,var}			Reset variable(s) to zero&lt;br /&gt;
RESET INKS				Reset palette to default???&lt;br /&gt;
RETURN					Return from a Task&lt;br /&gt;
SCORE var{, var}			Define a Score variable&lt;br /&gt;
SCREEN TYPE number			Set the screen format&lt;br /&gt;
SCROLL					Scroll the layout (if scrolling on)&lt;br /&gt;
SCROLL OFF				Turn automatic scrolling off&lt;br /&gt;
SCROLL ON				Turn automatic scrolling on&lt;br /&gt;
SHOW BACKGROUND				Show the background&lt;br /&gt;
SHOW KEY key				Show the label for the given key&lt;br /&gt;
SHOW MINI number			Show given Mini-Sprite at current position&lt;br /&gt;
SHOW OBJECT obj,part			Show an Object at current position&lt;br /&gt;
SHOW OBJECTS				Show all Objects&lt;br /&gt;
SHOW SCREEN				Show the hidden screen&lt;br /&gt;
SHOW SHOT number			Show Shot-Sprite at current position&lt;br /&gt;
SHOW SPRITE number			Draw a Sprite at the current position&lt;br /&gt;
STOP FX					Not implemented (Stop Sound Effect)&lt;br /&gt;
STOP TUNE				Not implemented (Stop Tune playing)&lt;br /&gt;
STRING var{ ,var}			Define a String variable&lt;br /&gt;
SWAP SPRITE number,number		Swap two sprites&lt;br /&gt;
UNTIL expr				End of REPEAT..UNTIL loop&lt;br /&gt;
VISIBLE SCREEN				Output on the Visible Screen&lt;br /&gt;
WEND					End of WHILE loop&lt;br /&gt;
WHILE expr				WHILE loop statement&lt;br /&gt;
WINDOW x,y,width,height			Define a window for output&lt;br /&gt;
WORD var{ ,var}				Define a Word variable&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Some of these commands may not be fully implemented.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Below is an example ZACK program:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
      WORD mky,dots,w1,w2&lt;br /&gt;
      BYTE pills,stage,m,power&lt;br /&gt;
&lt;br /&gt;
      PAUSE 10&lt;br /&gt;
&lt;br /&gt;
      SCREEN TYPE 1&lt;br /&gt;
      MAIN TASK 1&lt;br /&gt;
&lt;br /&gt;
      DEFINE MAIN TASK 1&lt;br /&gt;
&lt;br /&gt;
0     stage = 1&lt;br /&gt;
      m = 0&lt;br /&gt;
1     KILL ALL&lt;br /&gt;
      NEW OBJECT 1,28,48,0,0,-2&lt;br /&gt;
      INC m&lt;br /&gt;
      GOTO MARKER m&lt;br /&gt;
      mky = lay_y-184&lt;br /&gt;
      COPY LAYOUT 256,mky,32,14 TO 0,mky&lt;br /&gt;
&lt;br /&gt;
      x = 24&lt;br /&gt;
      y = 0&lt;br /&gt;
      FOR v1 = 0 TO m2&lt;br /&gt;
      NEW OBJECT 4,x+24,-16,y,1,2,0,0,1,0,0,0,lay_x+x,lay_y-16&lt;br /&gt;
      x = x+2&lt;br /&gt;
      y = y+4&lt;br /&gt;
      IF y=12&lt;br /&gt;
      y = 0&lt;br /&gt;
      ENDIF&lt;br /&gt;
      NEXT&lt;br /&gt;
&lt;br /&gt;
      MAIN TASK 2&lt;br /&gt;
      MAIN TASK 3&lt;br /&gt;
&lt;br /&gt;
      WHILE dots&lt;br /&gt;
      HIDDEN SCREEN&lt;br /&gt;
      SHOW BACKGROUND&lt;br /&gt;
      SHOW OBJECTS&lt;br /&gt;
      SHOW SCREEN&lt;br /&gt;
      CONSOLE&lt;br /&gt;
      MOVE OBJECTS&lt;br /&gt;
      COPY SPRITE 15 TO 35&lt;br /&gt;
      COPY SPRITE 34 TO 15&lt;br /&gt;
      COPY SPRITE 33 TO 34&lt;br /&gt;
      COPY SPRITE 32 TO 33&lt;br /&gt;
      COPY SPRITE 35 TO 32&lt;br /&gt;
      IF INKEY 38&lt;br /&gt;
      MAIN TASK 2&lt;br /&gt;
      ENDIF&lt;br /&gt;
      WEND&lt;br /&gt;
      INC stage&lt;br /&gt;
      IF m1 GOTO 1&lt;br /&gt;
      GOTO 0&lt;br /&gt;
&lt;br /&gt;
      DEFINE MAIN TASK 2&lt;br /&gt;
&lt;br /&gt;
      HIDDEN SCREEN&lt;br /&gt;
      CLEAR SCREEN 0&lt;br /&gt;
      PRINT @11,0,&amp;quot;PAC ATTACK&amp;quot;&lt;br /&gt;
      PRINT @12,2,&amp;quot;Stage&amp;quot;&lt;br /&gt;
      PRINT @18,2,stage:2&lt;br /&gt;
      v2 = 32&lt;br /&gt;
      RESET dots,pills&lt;br /&gt;
      FOR w2 = mky TO mky+448 STEP 32&lt;br /&gt;
      FOR w1 = 32 TO 280 STEP 8&lt;br /&gt;
      v1 = BACKGROUND (w1,w2)&lt;br /&gt;
      MOVE w1/8+12,v2&lt;br /&gt;
      IF v1=0&lt;br /&gt;
      v3 = 1&lt;br /&gt;
      ELSE IF v1&amp;lt;15&lt;br /&gt;
      v3 = 2&lt;br /&gt;
      ELSE IF v1&amp;lt;18&lt;br /&gt;
      v3 = v1-12&lt;br /&gt;
      ELSE&lt;br /&gt;
      v3 = 0&lt;br /&gt;
      ENDIF&lt;br /&gt;
      SHOW SHOT v3&lt;br /&gt;
      IF v1=16&lt;br /&gt;
      INC dots&lt;br /&gt;
      ELSE IF v1=17&lt;br /&gt;
      INC pills&lt;br /&gt;
      ENDIF&lt;br /&gt;
      NEXT&lt;br /&gt;
      v2 = v2+4&lt;br /&gt;
      NEXT&lt;br /&gt;
      PRINT @10,13,&amp;quot;Dots  :&amp;quot;&lt;br /&gt;
      PRINT @17,13,dots:4&lt;br /&gt;
      PRINT @10,15,&amp;quot;Pills :&amp;quot;&lt;br /&gt;
      PRINT @17,15,pills:4&lt;br /&gt;
      SHOW SCREEN&lt;br /&gt;
      REPEAT&lt;br /&gt;
      UNTIL INKEY 47&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      DEFINE MAIN TASK 3&lt;br /&gt;
&lt;br /&gt;
      BYTE c1,c2,i1[5],i2[5]&lt;br /&gt;
      DEFINE i1[1]=3,i1[2]=2,i1[4]=6,i1[5]=13&lt;br /&gt;
      DEFINE i2[1]=3,i2[2]=2,i2[3]=4,i2[4]=0,i2[5]=13&lt;br /&gt;
      CONSOLE&lt;br /&gt;
&lt;br /&gt;
      v2 = 1&lt;br /&gt;
      FOR w2 = mky TO mky+448 STEP 32&lt;br /&gt;
      v4 = 1&lt;br /&gt;
      FOR w1 = 32 TO 280 STEP 8&lt;br /&gt;
      v1 = BACKGROUND (w1,w2)&lt;br /&gt;
      IF v1=0&lt;br /&gt;
      v3 = 1&lt;br /&gt;
      ELSE IF v1&amp;lt;15&lt;br /&gt;
      v3 = 2&lt;br /&gt;
      ELSE IF v1&amp;lt;18&lt;br /&gt;
      v3 = v1-12&lt;br /&gt;
      ELSE&lt;br /&gt;
      v3 = 0&lt;br /&gt;
      ENDIF&lt;br /&gt;
      c1 = i1[v3]&lt;br /&gt;
      c2 = i2[v3]&lt;br /&gt;
      PLOT v4,v2,mask[c1]&lt;br /&gt;
      PLOT v4,v2+1,mask[c2]&lt;br /&gt;
      i1[4] = i1[4] XOR 3&lt;br /&gt;
      INC v4&lt;br /&gt;
      NEXT&lt;br /&gt;
      v2 = v2+2&lt;br /&gt;
      NEXT&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      DEFINE MOVE TASK 0&lt;br /&gt;
&lt;br /&gt;
      power = 0&lt;br /&gt;
      w1 = lay_x+28&lt;br /&gt;
      w2 = lay_y+48&lt;br /&gt;
      IF NOT ((w1 AND 7) OR (w2 AND 31))&lt;br /&gt;
      v6 = BACKGROUND (w1+v1*4,w2+v2*4)&lt;br /&gt;
      IF v6&amp;lt;16&lt;br /&gt;
      v1 = 0&lt;br /&gt;
      v2 = 0&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      IF (lay_y AND 31)=16&lt;br /&gt;
      IF v1&amp;lt;2 AND INKEY 63&lt;br /&gt;
      v6 = BACKGROUND (w1+8,w2)&lt;br /&gt;
      IF v6&amp;gt;15&lt;br /&gt;
      v1 = 2&lt;br /&gt;
      v2 = 0&lt;br /&gt;
      object = 0&lt;br /&gt;
      GOTO 1&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ELSE IF v1&amp;gt;-2 AND INKEY 71&lt;br /&gt;
      v6 = BACKGROUND (w1-1,w2)&lt;br /&gt;
      IF v6&amp;gt;15&lt;br /&gt;
      v1 = -2&lt;br /&gt;
      v2 = 0&lt;br /&gt;
      object = 1&lt;br /&gt;
      GOTO 1&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      IF (lay_x AND 7)=4&lt;br /&gt;
      IF v2&amp;lt;8 AND INKEY 22&lt;br /&gt;
      v6 = BACKGROUND (w1,w2+32)&lt;br /&gt;
      IF v6&amp;gt;15&lt;br /&gt;
      v1 = 0&lt;br /&gt;
      v2 = 8&lt;br /&gt;
      object = 3&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ELSE IF v2&amp;gt;-8 AND INKEY 19&lt;br /&gt;
      v6 = BACKGROUND (w1,w2-32)&lt;br /&gt;
      IF v6&amp;gt;15&lt;br /&gt;
      v1 = 0&lt;br /&gt;
      v2 = -8&lt;br /&gt;
      object = 2&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
1     lay_x = (lay_x+v1) AND 255&lt;br /&gt;
      lay_y = lay_y+v2&lt;br /&gt;
      IF NOT ((w1 AND 7) OR (w2 AND 31))&lt;br /&gt;
      v6 = BACKGROUND (w1,w2)&lt;br /&gt;
      IF v6=16 OR v6=17&lt;br /&gt;
      IF v6=16&lt;br /&gt;
      DEC dots&lt;br /&gt;
      ELSE&lt;br /&gt;
      power = 1&lt;br /&gt;
      ENDIF&lt;br /&gt;
      BACKGROUND (w1,w2) = 63&lt;br /&gt;
      v4 = w1/8-3&lt;br /&gt;
      v5 = ((w2-mky+32) AND &amp;amp;FFE0)/16+1&lt;br /&gt;
      PLOT v4,v5,0&lt;br /&gt;
      PLOT v4,v5+1,0&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      IF v1 OR v2&lt;br /&gt;
      part = (part+1) MOD 6&lt;br /&gt;
      ENDIF&lt;br /&gt;
      OBJECT COLLISION 4&lt;br /&gt;
      IF hit&lt;br /&gt;
      BORDER 26&lt;br /&gt;
      ENDIF&lt;br /&gt;
&lt;br /&gt;
      DEFINE MOVE TASK 1&lt;br /&gt;
&lt;br /&gt;
      BYTE a,b,d[4],adx[3],ady[3]&lt;br /&gt;
      DEFINE adx[1]=8,adx[3]=-8&lt;br /&gt;
      DEFINE ady[0]=-32,ady[2]=32&lt;br /&gt;
&lt;br /&gt;
      IF power&lt;br /&gt;
      v3 = 255&lt;br /&gt;
      IF object=4&lt;br /&gt;
      object = 5&lt;br /&gt;
      v1 = -v1&lt;br /&gt;
      v2 = -v2&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
&lt;br /&gt;
      IF v3&lt;br /&gt;
      DEC v3&lt;br /&gt;
      ELSE&lt;br /&gt;
      object = 4&lt;br /&gt;
      ENDIF&lt;br /&gt;
&lt;br /&gt;
      IF NOT ((w1 AND 7) OR (w2 AND 31))&lt;br /&gt;
      v6 = BACKGROUND (w1+v1*4,w2+v2*4)&lt;br /&gt;
      IF v1&amp;lt;&amp;gt;0&lt;br /&gt;
      a = BACKGROUND (w1,w2-32)&lt;br /&gt;
      b = BACKGROUND (w1,w2+32)&lt;br /&gt;
      ELSE&lt;br /&gt;
      a = BACKGROUND (w1-8,w2)&lt;br /&gt;
      b = BACKGROUND (w1+8,w2)&lt;br /&gt;
      ENDIF&lt;br /&gt;
      IF v6&amp;lt;16 OR (a&amp;gt;15) OR (b&amp;gt;15)&lt;br /&gt;
      a = DIR (1)/2&lt;br /&gt;
      IF v3&lt;br /&gt;
      a = a XOR 2&lt;br /&gt;
      ENDIF&lt;br /&gt;
      IF a=(v4 XOR 2)&lt;br /&gt;
      d[3] = a&lt;br /&gt;
      b = 0&lt;br /&gt;
      ELSE&lt;br /&gt;
      d[0] = a&lt;br /&gt;
      b = 1&lt;br /&gt;
      ENDIF&lt;br /&gt;
      a = RND AND 3&lt;br /&gt;
      IF a=(v4 XOR 2)&lt;br /&gt;
      a = (a+1) AND 3&lt;br /&gt;
      ENDIF&lt;br /&gt;
      FOR v4 = b TO b+2&lt;br /&gt;
      d[v4] = a&lt;br /&gt;
      a = (a+1) AND 3&lt;br /&gt;
      NEXT&lt;br /&gt;
      d[4] = a&lt;br /&gt;
      a = 0&lt;br /&gt;
      GOTO 2&lt;br /&gt;
1     INC a&lt;br /&gt;
      IF a&amp;gt;4&lt;br /&gt;
      PAUSE 100&lt;br /&gt;
      ENDIF&lt;br /&gt;
2     v4 = d[a]&lt;br /&gt;
      v6 = BACKGROUND (w1+adx[v4],w2+ady[v4])&lt;br /&gt;
      IF v6&amp;lt;15 OR (v6=15 AND ((v4&amp;lt;&amp;gt;0) OR (RND AND 7))) GOTO 1&lt;br /&gt;
      v1 = adx[v4]/4&lt;br /&gt;
      v2 = ady[v4]/4&lt;br /&gt;
      ENDIF&lt;br /&gt;
      ENDIF&lt;br /&gt;
      w1 = w1+v1&lt;br /&gt;
      w2 = w2+v2&lt;br /&gt;
&lt;br /&gt;
      x = MAX (MIN (w1-lay_x,72),-16)&lt;br /&gt;
      y = MAX (MIN (w2-lay_y,160),-64)&lt;br /&gt;
      part = (part AND 12)+((part+1) AND 3)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[User:220.233.179.160|220.233.179.160]] 09:46, 5 September 2006 (CEST)&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Applications&amp;diff=6063</id>
		<title>Applications</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Applications&amp;diff=6063"/>
				<updated>2006-09-05T05:59:59Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: /* Game creators */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of '''Applications''' for the Amstrad CPC.&lt;br /&gt;
&lt;br /&gt;
You can also have a look at the lists of&lt;br /&gt;
* [[Programming software]] (languages, compilers, debuggers etc.)&lt;br /&gt;
* [[System software]] (DOS, operating systems, shells)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
&lt;br /&gt;
* [[dBASE|dBASE II]] ([[Ashton Tate]])&lt;br /&gt;
* [[Turbo-DATA-CPC]] ([[DMV]])&lt;br /&gt;
* [[DATAFILE II]] ([[Kuma_Computers|Kuma Computers]])&lt;br /&gt;
* [[Masterfile]] ([[Cambell Systems]])&lt;br /&gt;
* [[Masterfile 128]] ([[Cambell Systems]])&lt;br /&gt;
* [[Rambase]] (John Fairlie)&lt;br /&gt;
&lt;br /&gt;
== Disc utilities ==&lt;br /&gt;
&lt;br /&gt;
* [[Cataclysme]] ([[GPA]])&lt;br /&gt;
* [[COPY]] (Antoine)&lt;br /&gt;
* [[CopyLuck]] (CBl)&lt;br /&gt;
* [[Crime]] ([[Crown]])&lt;br /&gt;
* [[DirDoktor]] (GPA)&lt;br /&gt;
* [[Disckit]] ([[Amstrad]]/[[Locomotive Software]])&lt;br /&gt;
* [[Discology]] (Méridien lnformatique) (1986)&lt;br /&gt;
* [[Disc'o'Magic]] ([[Joker]])&lt;br /&gt;
* [[DiskDeDumper]] ([[Prodatron]])&lt;br /&gt;
* [[DiskDoktor]] (GPA)&lt;br /&gt;
* [[DOS Copy]] ([[Face Hugger]])&lt;br /&gt;
* [[JL-Copier]] ([[JLCS]])&lt;br /&gt;
* [[LameCopy]] (GPA)&lt;br /&gt;
* [[MagicDOS]] ([[Longshot]])&lt;br /&gt;
* [[MarkError]] (GPA)&lt;br /&gt;
* [[MultiMark]] (GPA)&lt;br /&gt;
* [[Oddjob]]&lt;br /&gt;
* [[Punishment]] ([[Doctor Fegg]]/[[The Equalizor]])&lt;br /&gt;
* [[ReadDSK]], [[WriteDSK]] ([[Targhan]])&lt;br /&gt;
* [[SpeedFormat]]&lt;br /&gt;
* [[SymCommander]] ([[Prodatron]])&lt;br /&gt;
* [[Xexor]] ([[User:Executioner|Executioner]])&lt;br /&gt;
&lt;br /&gt;
== File compression ==&lt;br /&gt;
&lt;br /&gt;
* [[Cheese]] ([[Antoine Pitrou]])&lt;br /&gt;
* [[Columbia]] ([[Robot PD]])&lt;br /&gt;
* [[CPC_T]] ([[Madram]])&lt;br /&gt;
* [[CrownCruncher]] ([[Crown]])&lt;br /&gt;
* [[FlowerCruncher]] ([[Roudoudou]])&lt;br /&gt;
* [[SQ23]]&lt;br /&gt;
* [[Turbocruncher]] ([[Elmar Krieger]])&lt;br /&gt;
* [[Turbo Imploder]] ([[Crown]])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game creators ==&lt;br /&gt;
&lt;br /&gt;
* [[Adlan]] (Richard Brooksby)&lt;br /&gt;
* [[The Graphic Adventure Creator]] (Incentive)&lt;br /&gt;
* [[The Quill]] (Gilsoft)&lt;br /&gt;
* [[Pandora]] (Swift Software)&lt;br /&gt;
* [[PJA]] (Ludovic Deplanque)&lt;br /&gt;
* [[ZACK]] ([[User:Executioner|Executioner]])&lt;br /&gt;
* [[Sprites Alive]] (Glenco)&lt;br /&gt;
&lt;br /&gt;
== Graphic ==&lt;br /&gt;
&lt;br /&gt;
=== Desktop publishing ===&lt;br /&gt;
&lt;br /&gt;
* [[Advanced DTP]] ([[Geoff Smith]])&lt;br /&gt;
* [[AMX-Pagemaker]] ([[Advanced Memory Systems]])&lt;br /&gt;
* [[Artworx]] (Roland Weigelt / [[DMV]]) (1988)&lt;br /&gt;
* [[Fleet Street Editor]] ([[Mirrorsoft]])&lt;br /&gt;
* [[MicroDesign]] ([[Hogsoft]]) (1988)&lt;br /&gt;
* [[MicroDesign Plus]] ([[Campursoft]])&lt;br /&gt;
* [[Page Publisher]] ([[SD Microsystems]])&lt;br /&gt;
* [[Pagemaker Deluxe]] ([[Scull PD|Scull SL]])&lt;br /&gt;
* [[PowerPage]] ([[Robot PD]])&lt;br /&gt;
* [[Pro-Design]] ([[Crusader Software]]) (1988)&lt;br /&gt;
* [[Stop Press]] ([[AMX]])&lt;br /&gt;
&lt;br /&gt;
=== Graphic utilities ===&lt;br /&gt;
&lt;br /&gt;
* [[OCP Art Studio|Advanced OCP Art Studio]] ([[OCP]])&lt;br /&gt;
* [[Art Studio]] ([[OCP]])&lt;br /&gt;
* [[ARTWORK]] ([[Kuma Computers]])&lt;br /&gt;
* [[AMX Art]] ([[Advanced Memory Systems]])&lt;br /&gt;
* [[BMP-Convert]]&lt;br /&gt;
* [[Bmp-Converter]]&lt;br /&gt;
* [[Bmp-PalConverter]]&lt;br /&gt;
* [[CAD Easy]] ([[Microland]]) (1987)&lt;br /&gt;
* [[Cherry Paint]] ([[Siren Software]])&lt;br /&gt;
* [[Claudia]] (Eliot - [[Benediction]])&lt;br /&gt;
* [[Copyshop]] (Matthias Uphoff / [[DMV]])&lt;br /&gt;
* [[DBT-PAL]] ([[Da Boxon Team]])&lt;br /&gt;
* [[DBT-Scan]] ([[Da Boxon Team]])&lt;br /&gt;
* [[Easi-Art]] ([[Weeske]])&lt;br /&gt;
* [[FontCatcher]]&lt;br /&gt;
* [[Fraktal Generator 3-D]] (Matthias Uphoff / [[DMV]]) (1988)&lt;br /&gt;
* [[Funky Generator]] ([[Semilanceata]])&lt;br /&gt;
* [[G-Paint]] ([[Günter Radestock]]) (1988)&lt;br /&gt;
* [[Gifcon]]&lt;br /&gt;
* [[GMSK]] - Graphic Mode 0 - Screen to Sprite Konverter ([[TFM]])&lt;br /&gt;
* [[IFF Convert]] ([[Face Hugger]])&lt;br /&gt;
* [[Kit4096]]&lt;br /&gt;
* [[KitOverscan]]&lt;br /&gt;
* [[Magic Brush]] ([[Waldeck-Software]]) (1987)&lt;br /&gt;
* [[Mf2-Ocp]]&lt;br /&gt;
* [[Movie Maker]] ([[TFM]])&lt;br /&gt;
* [[PI1-Convert]]&lt;br /&gt;
* [[PI1-Screens]]&lt;br /&gt;
* [[Profi Painter]] ([[Data Becker]])&lt;br /&gt;
* [[Rembrandt]] ([[Beebugsoft]]) (1986)&lt;br /&gt;
* [[ScreenFormatConvert]]&lt;br /&gt;
* [[SpriteGet]]&lt;br /&gt;
* [[SymPlay]] ([[Prodatron]])&lt;br /&gt;
* [[SymSee]] ([[Prodatron]])&lt;br /&gt;
&lt;br /&gt;
== Music software ==&lt;br /&gt;
&lt;br /&gt;
* [[AdvancedMusicCreator]] ([[Exodus]]) (1996)&lt;br /&gt;
* [[The Music System|The Advanced Music System]] ([[Rainbird (software house)|Rainbird]]) (1987)&lt;br /&gt;
* [[BooTracker]] ([[Future Publishing]])&lt;br /&gt;
* [[ChaRleyTraCker]] ([[ChaRleyTroniC]])&lt;br /&gt;
* [[Digitracker]] ([[Prodatron]])&lt;br /&gt;
* [[Echosoft]] (ESAT Software)&lt;br /&gt;
* [[Equinoxe]] ([[Poum]])&lt;br /&gt;
* [[The Music System]] ([[Rainbird (software house)|Rainbird]]) (1986)&lt;br /&gt;
* [[NoiseTracker]] ([[MTI]])&lt;br /&gt;
* [[Protracker]] ([[Crown]])&lt;br /&gt;
* [[Soundtrakker]] ([[New Age Software]])&lt;br /&gt;
* [[Soundtrakker 128]] ([[New Age Software]])&lt;br /&gt;
* [[STarKos]] ([[Arkos]])&lt;br /&gt;
* [[SymAmp]] ([[Prodatron]])&lt;br /&gt;
* [[Music Minstrel]] ([[Kuma Computers]])&lt;br /&gt;
&lt;br /&gt;
== Word processing ==&lt;br /&gt;
&lt;br /&gt;
* [[Brunword]] ([[Brunning]])&lt;br /&gt;
* [[ConText CPC]] (Matthias Uphoff / [[DMV]]) (1986)&lt;br /&gt;
* [[CPC Word]] ([[Prodatron]])&lt;br /&gt;
* [[Protext]] ([[Arnor]])&lt;br /&gt;
* [[Proword]] ([[Arnor]])&lt;br /&gt;
* [[Star-Writer]] ([[Star-Division]]) (1985)&lt;br /&gt;
* [[Tasword]] ([[Tasman Software]]) (1984)&lt;br /&gt;
* [[Tas-Spell]] ([[Tasman Software]])&lt;br /&gt;
* [[WordStar]] ([[MicroPro]])&lt;br /&gt;
&lt;br /&gt;
== Spread-sheet software ==&lt;br /&gt;
&lt;br /&gt;
* [[Mastercalc]] ([[Cambell Systems]])&lt;br /&gt;
* [[ScratchPad Plus]] ([[Caxton Software]])&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
&lt;br /&gt;
* [[Hercule]] ([[Kuma Computers]])&lt;br /&gt;
* [[Stock Control and Invoicing]] ([[Kuma Computers]])&lt;br /&gt;
* [[ZXM]] (Betasoft)&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Applications&amp;diff=6062</id>
		<title>Applications</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Applications&amp;diff=6062"/>
				<updated>2006-09-05T05:59:42Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: /* Disc utilities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of '''Applications''' for the Amstrad CPC.&lt;br /&gt;
&lt;br /&gt;
You can also have a look at the lists of&lt;br /&gt;
* [[Programming software]] (languages, compilers, debuggers etc.)&lt;br /&gt;
* [[System software]] (DOS, operating systems, shells)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Databases ==&lt;br /&gt;
&lt;br /&gt;
* [[dBASE|dBASE II]] ([[Ashton Tate]])&lt;br /&gt;
* [[Turbo-DATA-CPC]] ([[DMV]])&lt;br /&gt;
* [[DATAFILE II]] ([[Kuma_Computers|Kuma Computers]])&lt;br /&gt;
* [[Masterfile]] ([[Cambell Systems]])&lt;br /&gt;
* [[Masterfile 128]] ([[Cambell Systems]])&lt;br /&gt;
* [[Rambase]] (John Fairlie)&lt;br /&gt;
&lt;br /&gt;
== Disc utilities ==&lt;br /&gt;
&lt;br /&gt;
* [[Cataclysme]] ([[GPA]])&lt;br /&gt;
* [[COPY]] (Antoine)&lt;br /&gt;
* [[CopyLuck]] (CBl)&lt;br /&gt;
* [[Crime]] ([[Crown]])&lt;br /&gt;
* [[DirDoktor]] (GPA)&lt;br /&gt;
* [[Disckit]] ([[Amstrad]]/[[Locomotive Software]])&lt;br /&gt;
* [[Discology]] (Méridien lnformatique) (1986)&lt;br /&gt;
* [[Disc'o'Magic]] ([[Joker]])&lt;br /&gt;
* [[DiskDeDumper]] ([[Prodatron]])&lt;br /&gt;
* [[DiskDoktor]] (GPA)&lt;br /&gt;
* [[DOS Copy]] ([[Face Hugger]])&lt;br /&gt;
* [[JL-Copier]] ([[JLCS]])&lt;br /&gt;
* [[LameCopy]] (GPA)&lt;br /&gt;
* [[MagicDOS]] ([[Longshot]])&lt;br /&gt;
* [[MarkError]] (GPA)&lt;br /&gt;
* [[MultiMark]] (GPA)&lt;br /&gt;
* [[Oddjob]]&lt;br /&gt;
* [[Punishment]] ([[Doctor Fegg]]/[[The Equalizor]])&lt;br /&gt;
* [[ReadDSK]], [[WriteDSK]] ([[Targhan]])&lt;br /&gt;
* [[SpeedFormat]]&lt;br /&gt;
* [[SymCommander]] ([[Prodatron]])&lt;br /&gt;
* [[Xexor]] ([[User:Executioner|Executioner]])&lt;br /&gt;
&lt;br /&gt;
== File compression ==&lt;br /&gt;
&lt;br /&gt;
* [[Cheese]] ([[Antoine Pitrou]])&lt;br /&gt;
* [[Columbia]] ([[Robot PD]])&lt;br /&gt;
* [[CPC_T]] ([[Madram]])&lt;br /&gt;
* [[CrownCruncher]] ([[Crown]])&lt;br /&gt;
* [[FlowerCruncher]] ([[Roudoudou]])&lt;br /&gt;
* [[SQ23]]&lt;br /&gt;
* [[Turbocruncher]] ([[Elmar Krieger]])&lt;br /&gt;
* [[Turbo Imploder]] ([[Crown]])&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game creators ==&lt;br /&gt;
&lt;br /&gt;
* [[Adlan]] (Richard Brooksby)&lt;br /&gt;
* [[The Graphic Adventure Creator]] (Incentive)&lt;br /&gt;
* [[The Quill]] (Gilsoft)&lt;br /&gt;
* [[Pandora]] (Swift Software)&lt;br /&gt;
* [[PJA]] (Ludovic Deplanque)&lt;br /&gt;
* [[ZACK]]&lt;br /&gt;
* [[Sprites Alive]] (Glenco)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Graphic ==&lt;br /&gt;
&lt;br /&gt;
=== Desktop publishing ===&lt;br /&gt;
&lt;br /&gt;
* [[Advanced DTP]] ([[Geoff Smith]])&lt;br /&gt;
* [[AMX-Pagemaker]] ([[Advanced Memory Systems]])&lt;br /&gt;
* [[Artworx]] (Roland Weigelt / [[DMV]]) (1988)&lt;br /&gt;
* [[Fleet Street Editor]] ([[Mirrorsoft]])&lt;br /&gt;
* [[MicroDesign]] ([[Hogsoft]]) (1988)&lt;br /&gt;
* [[MicroDesign Plus]] ([[Campursoft]])&lt;br /&gt;
* [[Page Publisher]] ([[SD Microsystems]])&lt;br /&gt;
* [[Pagemaker Deluxe]] ([[Scull PD|Scull SL]])&lt;br /&gt;
* [[PowerPage]] ([[Robot PD]])&lt;br /&gt;
* [[Pro-Design]] ([[Crusader Software]]) (1988)&lt;br /&gt;
* [[Stop Press]] ([[AMX]])&lt;br /&gt;
&lt;br /&gt;
=== Graphic utilities ===&lt;br /&gt;
&lt;br /&gt;
* [[OCP Art Studio|Advanced OCP Art Studio]] ([[OCP]])&lt;br /&gt;
* [[Art Studio]] ([[OCP]])&lt;br /&gt;
* [[ARTWORK]] ([[Kuma Computers]])&lt;br /&gt;
* [[AMX Art]] ([[Advanced Memory Systems]])&lt;br /&gt;
* [[BMP-Convert]]&lt;br /&gt;
* [[Bmp-Converter]]&lt;br /&gt;
* [[Bmp-PalConverter]]&lt;br /&gt;
* [[CAD Easy]] ([[Microland]]) (1987)&lt;br /&gt;
* [[Cherry Paint]] ([[Siren Software]])&lt;br /&gt;
* [[Claudia]] (Eliot - [[Benediction]])&lt;br /&gt;
* [[Copyshop]] (Matthias Uphoff / [[DMV]])&lt;br /&gt;
* [[DBT-PAL]] ([[Da Boxon Team]])&lt;br /&gt;
* [[DBT-Scan]] ([[Da Boxon Team]])&lt;br /&gt;
* [[Easi-Art]] ([[Weeske]])&lt;br /&gt;
* [[FontCatcher]]&lt;br /&gt;
* [[Fraktal Generator 3-D]] (Matthias Uphoff / [[DMV]]) (1988)&lt;br /&gt;
* [[Funky Generator]] ([[Semilanceata]])&lt;br /&gt;
* [[G-Paint]] ([[Günter Radestock]]) (1988)&lt;br /&gt;
* [[Gifcon]]&lt;br /&gt;
* [[GMSK]] - Graphic Mode 0 - Screen to Sprite Konverter ([[TFM]])&lt;br /&gt;
* [[IFF Convert]] ([[Face Hugger]])&lt;br /&gt;
* [[Kit4096]]&lt;br /&gt;
* [[KitOverscan]]&lt;br /&gt;
* [[Magic Brush]] ([[Waldeck-Software]]) (1987)&lt;br /&gt;
* [[Mf2-Ocp]]&lt;br /&gt;
* [[Movie Maker]] ([[TFM]])&lt;br /&gt;
* [[PI1-Convert]]&lt;br /&gt;
* [[PI1-Screens]]&lt;br /&gt;
* [[Profi Painter]] ([[Data Becker]])&lt;br /&gt;
* [[Rembrandt]] ([[Beebugsoft]]) (1986)&lt;br /&gt;
* [[ScreenFormatConvert]]&lt;br /&gt;
* [[SpriteGet]]&lt;br /&gt;
* [[SymPlay]] ([[Prodatron]])&lt;br /&gt;
* [[SymSee]] ([[Prodatron]])&lt;br /&gt;
&lt;br /&gt;
== Music software ==&lt;br /&gt;
&lt;br /&gt;
* [[AdvancedMusicCreator]] ([[Exodus]]) (1996)&lt;br /&gt;
* [[The Music System|The Advanced Music System]] ([[Rainbird (software house)|Rainbird]]) (1987)&lt;br /&gt;
* [[BooTracker]] ([[Future Publishing]])&lt;br /&gt;
* [[ChaRleyTraCker]] ([[ChaRleyTroniC]])&lt;br /&gt;
* [[Digitracker]] ([[Prodatron]])&lt;br /&gt;
* [[Echosoft]] (ESAT Software)&lt;br /&gt;
* [[Equinoxe]] ([[Poum]])&lt;br /&gt;
* [[The Music System]] ([[Rainbird (software house)|Rainbird]]) (1986)&lt;br /&gt;
* [[NoiseTracker]] ([[MTI]])&lt;br /&gt;
* [[Protracker]] ([[Crown]])&lt;br /&gt;
* [[Soundtrakker]] ([[New Age Software]])&lt;br /&gt;
* [[Soundtrakker 128]] ([[New Age Software]])&lt;br /&gt;
* [[STarKos]] ([[Arkos]])&lt;br /&gt;
* [[SymAmp]] ([[Prodatron]])&lt;br /&gt;
* [[Music Minstrel]] ([[Kuma Computers]])&lt;br /&gt;
&lt;br /&gt;
== Word processing ==&lt;br /&gt;
&lt;br /&gt;
* [[Brunword]] ([[Brunning]])&lt;br /&gt;
* [[ConText CPC]] (Matthias Uphoff / [[DMV]]) (1986)&lt;br /&gt;
* [[CPC Word]] ([[Prodatron]])&lt;br /&gt;
* [[Protext]] ([[Arnor]])&lt;br /&gt;
* [[Proword]] ([[Arnor]])&lt;br /&gt;
* [[Star-Writer]] ([[Star-Division]]) (1985)&lt;br /&gt;
* [[Tasword]] ([[Tasman Software]]) (1984)&lt;br /&gt;
* [[Tas-Spell]] ([[Tasman Software]])&lt;br /&gt;
* [[WordStar]] ([[MicroPro]])&lt;br /&gt;
&lt;br /&gt;
== Spread-sheet software ==&lt;br /&gt;
&lt;br /&gt;
* [[Mastercalc]] ([[Cambell Systems]])&lt;br /&gt;
* [[ScratchPad Plus]] ([[Caxton Software]])&lt;br /&gt;
&lt;br /&gt;
== Other ==&lt;br /&gt;
&lt;br /&gt;
* [[Hercule]] ([[Kuma Computers]])&lt;br /&gt;
* [[Stock Control and Invoicing]] ([[Kuma Computers]])&lt;br /&gt;
* [[ZXM]] (Betasoft)&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Music_Machine&amp;diff=6061</id>
		<title>Music Machine</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Music_Machine&amp;diff=6061"/>
				<updated>2006-09-05T05:53:08Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Image:rammusicmashine.jpg|right|thumb|250px|The Ram Music Machine]]&lt;br /&gt;
&lt;br /&gt;
A digital sound sampling and playback device.&lt;br /&gt;
The Music Machine was built by a British Company called [[Ram Electronics]].&lt;br /&gt;
&lt;br /&gt;
The Amstrad CPC version was almost identical to the the ZX Spectrum version, only difference was the address decoding logic.&lt;br /&gt;
&lt;br /&gt;
The Music Machine came with a simple microphone. Recording quality could be improved by using a better(and more expensive) microphone. It came with its own sound sampling software and a sequencer. &lt;br /&gt;
&lt;br /&gt;
No known emulator supports the Music Machine.&lt;br /&gt;
No other software than RAMs own sequencer is know to use the Music Machine. &lt;br /&gt;
&lt;br /&gt;
The Music Machine was never used for producing sound effects in [[Demos]].&lt;br /&gt;
&lt;br /&gt;
== Technical Specifications ==&lt;br /&gt;
&lt;br /&gt;
Information from the manual:&lt;br /&gt;
&lt;br /&gt;
The Music Machine incoporates two Ferranti devices for digital-to-analogue (DAC) and analogue-tod-digital (A to D) conversion.&lt;br /&gt;
The part numbers are ZN429E8 and ZN449 respectively. The circuit also include a Motorola 6850 ACIA (Asynchronous Communications Interface Adapter) for handling the MIDI channel, two anti-alias filters (one for input and one for output), a discrete microphone amplifier and a headphone amplifier. The clock signal for the ACIA and the ZN449 is provided by a ceramic oscillator.&lt;br /&gt;
&lt;br /&gt;
The incomming signalo from the microphone amplifier is sampled to an 8-bit resolution at a rate of 19.444 thoudsand samples per second. This yields an analogue bandwidth of approximately 9.5KHz which is in fact the cutoff frequency of the filters.&lt;br /&gt;
&lt;br /&gt;
All of the devices on The Music Machine data bus are accessible to the Amstrad within its IO space. ACIA transactions must use 16-bit IO instructions; the converters are accesible via 8-bit IO instructions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|{{Prettytable|width: 700px; font-size: 2em;}}&lt;br /&gt;
|''I/O Map''||''Port''||''Meaning''&lt;br /&gt;
|-&lt;br /&gt;
|ADC START||&amp;amp;F8F8||Reading or writing to this port will start analogue to digital conversion&lt;br /&gt;
|-&lt;br /&gt;
|ADC READ||&amp;amp;F8F4(Read only)||The contents of the A-to-D can be read via this port. Note that the A-to-D must have been startet at least 20uS before this port can be read&lt;br /&gt;
|-&lt;br /&gt;
|DAC WRITE||&amp;amp;F8F0(Write only)||Data can written to the DAC via this port&lt;br /&gt;
|-&lt;br /&gt;
|INTERUPT SEL||&amp;amp;F8E8(Write only)||Writing 01 to this port disables internal Amstrad interrupts and replaces the IRQ signal from ACIA. Writing 00 restores normality.&lt;br /&gt;
|-&lt;br /&gt;
|ACIA Status||&amp;amp;F8EE(Read only)||Se Motorola datasheet&lt;br /&gt;
|-&lt;br /&gt;
|ACIA Data read||&amp;amp;F8EF(Read only)||Se Motorola datasheet&lt;br /&gt;
|-&lt;br /&gt;
|ACIA Control||&amp;amp;F8EC(Write only)||Se Motorola datasheet&lt;br /&gt;
|-&lt;br /&gt;
|ACIA Data write||&amp;amp;F8ED(Write only)||Se Motorola datasheet&lt;br /&gt;
|-&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
&lt;br /&gt;
[http://www.microhobby.com/200903/hard/ram_music_machine.htm Spanish site about the Music Machine]&lt;br /&gt;
&lt;br /&gt;
[http://www.worldofspectrum.org/hardware/feat17.html Advert for the Music Machine]&lt;br /&gt;
&lt;br /&gt;
[http://reviews.harmony-central.com/reviews/Keyboard%2FSynth/product/RAM/Music+Machine/10/1 Review]&lt;br /&gt;
&lt;br /&gt;
[http://www.wacci.org.uk/magazine/136/136_10.html Data transfer via [[MIDI]]]&lt;br /&gt;
&lt;br /&gt;
== Other similar devices ==&lt;br /&gt;
&lt;br /&gt;
[[Digiblaster]] (Sampling/Playback)&lt;br /&gt;
&lt;br /&gt;
[[Amdrum]] (Playback)&lt;br /&gt;
&lt;br /&gt;
[[EMR MIDI Interface]] (Midi)&lt;br /&gt;
&lt;br /&gt;
== Pictures ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;The Music Machine&amp;quot;&amp;gt;&lt;br /&gt;
Image:Music machine 1.jpg|&lt;br /&gt;
Image:Music machine 2.jpg|Edge connector missing&lt;br /&gt;
Image:Music machine back.jpg|Backside&lt;br /&gt;
Image:Music machine inside 1.jpg|PCB&lt;br /&gt;
Image:Music machine inside 1.jpg|PCB&lt;br /&gt;
Image:Music machine microphone 1.jpg|The microphone&lt;br /&gt;
Image:Music machine microphone 2.jpg|The microphone&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Manual ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Ram Music Machine Manual&amp;quot;&amp;gt;&lt;br /&gt;
Image:frontpage.jpg|Frontpage&lt;br /&gt;
Image:contents.jpg|Contents&lt;br /&gt;
Image:p01.jpg|Page 1&lt;br /&gt;
Image:p02-03.jpg|Page 2-3&lt;br /&gt;
Image:p04-05.jpg|Page 4-5&lt;br /&gt;
Image:p06-07.jpg|Page 5-6&lt;br /&gt;
Image:p08-09.jpg|Page 8-9&lt;br /&gt;
Image:p10-11.jpg|Page 10-11&lt;br /&gt;
Image:p12-13.jpg|Page 12-13&lt;br /&gt;
Image:p14-15.jpg|Page 14-15&lt;br /&gt;
Image:p16-17.jpg|Page 16-17&lt;br /&gt;
Image:p18-19.jpg|Page 18-19&lt;br /&gt;
Image:p20-21.jpg|Page 20-21&lt;br /&gt;
Image:p22-23.jpg|Page 22-23&lt;br /&gt;
Image:p24-25.jpg|Page 24-25&lt;br /&gt;
Image:p26-27.jpg|Page 26-27&lt;br /&gt;
Image:p28-29.jpg|Page 28-29&lt;br /&gt;
Image:p30-31.jpg|Page 30-31&lt;br /&gt;
Image:p32-33.jpg|Page 32-33&lt;br /&gt;
Image:p34-35.jpg|Page 34-35&lt;br /&gt;
Image:p36-37.jpg|Page 36-37&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Peripherals]]&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Emulators&amp;diff=5873</id>
		<title>Emulators</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Emulators&amp;diff=5873"/>
				<updated>2006-09-04T08:40:21Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: /* Dos */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Operating Systems =&lt;br /&gt;
&lt;br /&gt;
==Acorn RISC OS==&lt;br /&gt;
* [[!CPC]]&lt;br /&gt;
* [[!CPCemu]]&lt;br /&gt;
&lt;br /&gt;
== Amiga ==&lt;br /&gt;
* [[A-CPC]]&lt;br /&gt;
* [[Ami-CPC]]&lt;br /&gt;
* [[Emu-CPC]]&lt;br /&gt;
&lt;br /&gt;
== Dos ==&lt;br /&gt;
* [[Archimedes]]&lt;br /&gt;
* [[CPCE]]&lt;br /&gt;
* [[CPCEmu]]&lt;br /&gt;
* [[No$Cpc]]&lt;br /&gt;
* [[CPCEMU (RWCPC)|RWCPC]]&lt;br /&gt;
&lt;br /&gt;
== Java ==&lt;br /&gt;
* [[Arnold jr.]]&lt;br /&gt;
* [[JEMU]]&lt;br /&gt;
&lt;br /&gt;
== MacOS ==&lt;br /&gt;
* [[Arnold]]&lt;br /&gt;
* [[CPCplusplus|CPC++]]&lt;br /&gt;
&lt;br /&gt;
== SunOS / Solaris ==&lt;br /&gt;
* [[CPCplusplus|CPC++]]&lt;br /&gt;
&lt;br /&gt;
== Unix / Linux ==&lt;br /&gt;
* [[Arnold]]&lt;br /&gt;
* [[CaPriCe]]&lt;br /&gt;
* [[CPCplusplus|CPC++]]&lt;br /&gt;
* CPC4X&lt;br /&gt;
* CPCEmu&lt;br /&gt;
* XCPC&lt;br /&gt;
&lt;br /&gt;
== Windows ==&lt;br /&gt;
* [[Arnimedes]]&lt;br /&gt;
* [[Arnold]]&lt;br /&gt;
* [[CaPriCe]]&lt;br /&gt;
* [[CPC-Em]]&lt;br /&gt;
* [[CPCE]]&lt;br /&gt;
* [[CPCEmu]]&lt;br /&gt;
* [[CPE]]&lt;br /&gt;
* [[No$Cpc]]&lt;br /&gt;
* [[PC-CPC]]&lt;br /&gt;
* [[WinApe]]&lt;br /&gt;
* [[WinCPC]]&lt;br /&gt;
* [[Yage]]&lt;br /&gt;
&lt;br /&gt;
= Hardware =&lt;br /&gt;
* [[CPC TREX]] (TurboCPC core running on a terasIC T-Rex C1)&lt;br /&gt;
* [[C-ONE]] (TurboCPC core running on the C-One reconfigurable computer)&lt;br /&gt;
&lt;br /&gt;
= Consoles / Handhelds =&lt;br /&gt;
&lt;br /&gt;
== Gamepark GP32 / GP2X ==&lt;br /&gt;
* [[Caprice|CapriceGP2x]] (GP2X)&lt;br /&gt;
* Pituka (GP32)&lt;br /&gt;
&lt;br /&gt;
== Microsoft XBOX ==&lt;br /&gt;
* [[Arnold|ArnoldX]]&lt;br /&gt;
&lt;br /&gt;
== Sega Dreamcast ==&lt;br /&gt;
* CPCast&lt;br /&gt;
* [[DreamCPC]]&lt;br /&gt;
&lt;br /&gt;
== Sony PSP ==&lt;br /&gt;
* [[CaPriCe|PSPCap32]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Mobile phones / PDAs =&lt;br /&gt;
== Windows Mobile ==&lt;br /&gt;
* [[CaPriCe|Pocket Caprice]]&lt;br /&gt;
== PalmOS ==&lt;br /&gt;
* [[CoPaCabana]]&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	<entry>
		<id>https://oldwiki.cpcwiki.eu/index.php?title=Z80_-_undocumented_opcodes&amp;diff=5862</id>
		<title>Z80 - undocumented opcodes</title>
		<link rel="alternate" type="text/html" href="https://oldwiki.cpcwiki.eu/index.php?title=Z80_-_undocumented_opcodes&amp;diff=5862"/>
				<updated>2006-09-04T04:25:56Z</updated>
		
		<summary type="html">&lt;p&gt;220.233.179.160: /* DD and FD prefixes - WinAPE notation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The [[Z80]] CPU contains several undocumented opcodes, which can be quite helpful sometimes. The most useful undocumented opcodes are probably these ones, which split up the 16bit index registers IX and IY in 8bit registers called IXL,IXH,IYL and IYH.&lt;br /&gt;
&lt;br /&gt;
Please note, that many Z80 successors like the Z180 are NOT able to execute some of the following opcodes properly.&lt;br /&gt;
&lt;br /&gt;
This is just an overview. Parts of this article have been copied from the [http://www.robsy.net/z80undoc.pdf &amp;quot;The Undocumented Z80 Documented&amp;quot; by Sean Young], which is one of the most comprehensive description.&lt;br /&gt;
&lt;br /&gt;
== CB prefix ==&lt;br /&gt;
&lt;br /&gt;
The following commands set the lowest bit to 1 instead to 0:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CB30 SLL B&lt;br /&gt;
CB31 SLL C&lt;br /&gt;
CB32 SLL D&lt;br /&gt;
CB33 SLL E&lt;br /&gt;
CB34 SLL H&lt;br /&gt;
CB35 SLL L&lt;br /&gt;
CB36 SLL (HL)&lt;br /&gt;
CB37 SLL A&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DD and FD prefixes ==&lt;br /&gt;
&lt;br /&gt;
The DD/FD prefixes replace the registers L, H or HL with IXL/IYL, IXH/IYH or IX/IY.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DB #DD:LD H,A -&amp;gt; LD IXH,A&lt;br /&gt;
DB #FD:LD B,L -&amp;gt; LD B,IYL&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: These registers are called LX, LY, HX and HY in the WinAPE assembler.&lt;br /&gt;
&lt;br /&gt;
== ED prefix ==&lt;br /&gt;
&lt;br /&gt;
There are a number of undocumented EDxx instructions, of which most are duplicates of documented instructions. Any instruction not listed has no effect (same behaviour as 2 NOP instructions).&lt;br /&gt;
&lt;br /&gt;
The complete list except for the block instructions:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
ED40 IN B,(C)       ED60 IN H,(C)&lt;br /&gt;
ED41 OUT (C),B      ED61 OUT (C),H&lt;br /&gt;
ED42 SBC HL,BC      ED62 SBC HL,HL&lt;br /&gt;
ED43 LD (nn),BC     ED63 LD (nn),HL&lt;br /&gt;
ED44 NEG            ED64 NEG *&lt;br /&gt;
ED45 RETN           ED65 RETN *&lt;br /&gt;
ED46 IM 0           ED66 IM 0 *&lt;br /&gt;
ED47 LD I,A         ED67 RRD&lt;br /&gt;
ED48 IN C,(C)       ED68 IN L,(C)&lt;br /&gt;
ED49 OUT (C),C      ED69 OUT (C),L&lt;br /&gt;
ED4A ADC HL,BC      ED6A ADC HL,HL&lt;br /&gt;
ED4B LD BC,(nn)     ED6B LD HL,(nn)&lt;br /&gt;
ED4C NEG *          ED6C NEG *&lt;br /&gt;
ED4D RETI           ED6D RETN *&lt;br /&gt;
ED4E IM 0 *         ED6E IM 0 *&lt;br /&gt;
ED4F LD R,A         ED6F RLD&lt;br /&gt;
ED50 IN D,(C)       ED70 IN (C) / IN F,(C) *&lt;br /&gt;
ED51 OUT (C),D      ED71 OUT (C),0 *&lt;br /&gt;
ED52 SBC HL,DE      ED72 SBC HL,SP&lt;br /&gt;
ED53 LD (nn),DE     ED73 LD (nn),SP&lt;br /&gt;
ED54 NEG *          ED74 NEG *&lt;br /&gt;
ED55 RETN *         ED75 RETN *&lt;br /&gt;
ED56 IM 1           ED76 IM 1 *&lt;br /&gt;
ED57 LD A,I         ED77 NOP *&lt;br /&gt;
ED58 IN E,(C)       ED78 IN A,(C)&lt;br /&gt;
ED59 OUT (C),E      ED79 OUT (C),A&lt;br /&gt;
ED5A ADC HL,DE      ED7A ADC HL,SP&lt;br /&gt;
ED5B LD DE,(nn)     ED7B LD SP,(nn)&lt;br /&gt;
ED5C NEG *          ED7C NEG *&lt;br /&gt;
ED5D RETN *         ED7D RETN *&lt;br /&gt;
ED5E IM 2           ED7E IM 2 *&lt;br /&gt;
ED5F LD A,R         ED7F NOP *&lt;br /&gt;
* = undocumented opcodes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DDCB prefix ==&lt;br /&gt;
&lt;br /&gt;
The undocumented DDCB instructions store the result (if any) of the operation in one of the seven all-purpose registers, which one depends on the lower 3 bits of the last byte of the opcode (not operand, so not the offset).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
000 B&lt;br /&gt;
001 C&lt;br /&gt;
010 D&lt;br /&gt;
011 E&lt;br /&gt;
100 H&lt;br /&gt;
101 L&lt;br /&gt;
110 (none: documented opcode)&lt;br /&gt;
111 A&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The documented DDCB0106 is RLC (IX+01h). So, clear the lower three bits (DDCB0100) and something is done to register B. The result of the RLC (which is stored in (IX+01h)) is now also stored in register B. Effectively, it does the following:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
LD B,(IX+01h)&lt;br /&gt;
RLC B&lt;br /&gt;
LD (IX+01h),B&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
So you get double value for money. The result is stored in B and (IX+01h). The most common notation is: RLC (IX+01h),B&lt;br /&gt;
&lt;br /&gt;
I’ve once seen this notation:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
RLC (IX+01h)&lt;br /&gt;
LD B,(IX+01h)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
That’s not correct: B contains the rotated value, even if (IX+01h) points to ROM. The DDCB SET and RES instructions do the same thing as the shift/rotate instructions:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DDCB10C0    SET 0,(IX+10h),B&lt;br /&gt;
DDCB10C1    SET 0,(IX+10h),C&lt;br /&gt;
DDCB10C2    SET 0,(IX+10h),D&lt;br /&gt;
DDCB10C3    SET 0,(IX+10h),E&lt;br /&gt;
DDCB10C4    SET 0,(IX+10h),H&lt;br /&gt;
DDCB10C5    SET 0,(IX+10h),L&lt;br /&gt;
DDCB10C6    SET 0,(IX+10h) - documented instruction&lt;br /&gt;
DDCB10C7    SET 0,(IX+10h),A&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So for example with the last instruction, the value of (IX+10h) with bit 0 set is also stored in register A.&lt;br /&gt;
&lt;br /&gt;
The DDCB BIT instructions do not store any value; they merely test a bit. That’s why the undocumented DDCB BIT instructions are no different from the official ones:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
DDCB d 78   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 79   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 7A   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 7B   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 7C   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 7D   BIT 7,(IX+d)&lt;br /&gt;
DDCB d 7E   BIT 7,(IX+d) - documented instruction&lt;br /&gt;
DDCB d 7F   BIT 7,(IX+d)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FDCB prefix ==&lt;br /&gt;
&lt;br /&gt;
Same as for the DDCB prefix, though IY is used instead of IX.&lt;br /&gt;
&lt;br /&gt;
== Web links ==&lt;br /&gt;
&lt;br /&gt;
* [http://www.robsy.net/z80undoc.pdf &amp;quot;The Undocumented Z80 Documented&amp;quot; by Sean Young at Robsy's MSX Workshop]&lt;br /&gt;
&lt;br /&gt;
[[Category:Programming]]&lt;/div&gt;</summary>
		<author><name>220.233.179.160</name></author>	</entry>

	</feed>