<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.sizecoding.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hicks</id>
		<title>SizeCoding - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://www.sizecoding.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Hicks"/>
		<link rel="alternate" type="text/html" href="http://www.sizecoding.org/wiki/Special:Contributions/Hicks"/>
		<updated>2026-05-02T21:20:19Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.27.0</generator>

	<entry>
		<id>http://www.sizecoding.org/index.php?title=Amstrad_CPC&amp;diff=1651</id>
		<title>Amstrad CPC</title>
		<link rel="alternate" type="text/html" href="http://www.sizecoding.org/index.php?title=Amstrad_CPC&amp;diff=1651"/>
				<updated>2025-05-14T16:28:31Z</updated>
		
		<summary type="html">&lt;p&gt;Hicks: Add Resource: &amp;quot;Amstrad CPC sizecoding collection (32b - 4k)&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Amstrad CPC ==&lt;br /&gt;
The Amstrad consists of a Z80A @ 4 MHz CPU &lt;br /&gt;
&lt;br /&gt;
=== Setting up ===&lt;br /&gt;
&lt;br /&gt;
* Cross-Assemblers:&lt;br /&gt;
** [http://www.winape.net/ Winape] has an integrated [http://www.winape.net/help/assembler.html assembler].&lt;br /&gt;
** [https://github.com/z00m128/sjasmplus/releases/latest SjASMPlus] cross-platform assembler supports CPC snapshot and CDT files since v1.18.4.&lt;br /&gt;
** [https://github.com/EdouardBERGE/rasm/releases/latest Rasm] - extremely fast cross-platform Z80 assembler with many features.&lt;br /&gt;
** [https://cpcsdk.github.io/rust.cpclib/basm/ BASM] - a modern Z80 assembler with many features borrowed to mainstream spectrum assemblers, maxam and rasm.&lt;br /&gt;
&lt;br /&gt;
* Native-assemblers:&lt;br /&gt;
** [http://orgams.wikidot.com/ orgams] - Definitvely the state-of-the-art assembler on Amstrad CPC&lt;br /&gt;
&lt;br /&gt;
* Emulator(s): &lt;br /&gt;
** [http://www.winape.net/ Winape] is very accurate and includes an assembler / debugger&lt;br /&gt;
** [http://www.roudoudou.com/ACE-DL/ Ace-DL] one of the most accurate emulators / UI is less ergonomic than Winape ATM, but it will improve with time&lt;br /&gt;
** [https://www.cpc-power.com/cpcarchives/index.php?page=articles&amp;amp;num=445 Caprice] gets very regular updates&lt;br /&gt;
** [http://cngsoft.no-ip.org/cpcec.htm CPCEC] is very fast&lt;br /&gt;
** [https://sourceforge.net/projects/javacpc/ JavaCPC] offers many features&lt;br /&gt;
** [https://www.retrovirtualmachine.org/ Retro Virtual Machine] is visually very impressive&lt;br /&gt;
** [https://www.amspirit.fr/ Amspirit] another accurate emulator&lt;br /&gt;
&lt;br /&gt;
=== Video Display ===&lt;br /&gt;
No information yet&lt;br /&gt;
&lt;br /&gt;
=== Sound ===&lt;br /&gt;
No information yet&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Assumed state at start ===&lt;br /&gt;
&lt;br /&gt;
If the intro is launched with RUN&amp;quot;intro, we can assume those facts&lt;br /&gt;
&lt;br /&gt;
* CRTC R12/R13 = 0x3000&lt;br /&gt;
* 0xC000-0xFFFF is filled with byte 0x00&lt;br /&gt;
* screen mode is 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== On the use of Amsdos Header ===&lt;br /&gt;
For the smaller sized competitions, the size of the binary is counted as long as you can provide a (basic) loader so that in theory a user can load the binary file from basic (much like the ZX Spectrum).&lt;br /&gt;
&lt;br /&gt;
In some competitions, Amsdos header counts in the size of the binary. So 128 bytes are lost by definition.&lt;br /&gt;
However, there are two small areas that are not used and can embed data ! &lt;br /&gt;
They are at position 0x1c (36 bytes) and 0x45 (59 bytes) https://www.cpcwiki.eu/index.php?title=AMSDOS_Header.&lt;br /&gt;
&lt;br /&gt;
In some conditions, we can access them :&lt;br /&gt;
&lt;br /&gt;
* If the file (header included) is smaller than 2048-128 bytes, the header is available at address (0xBE7D) + 0xe4 (i.e. 0xbe7d contains an address and 0xe4 bytes later, you have the header). You have access to the two areas&lt;br /&gt;
* Otherwise, the BEGINNING of the header is available at address (0xBE7D) + 0x55, and you only have access to the 36 bytes at 0x1c relative position&lt;br /&gt;
&lt;br /&gt;
=== Additional Resources ===&lt;br /&gt;
* Amstrad CPC sizecoding collection (32b - 4k) - https://memoryfull.net/files/amstrad-cpc-sizecoding-collection-by-hicks-vanity.7z&lt;br /&gt;
* CPC Technical information - https://www.grimware.org/doku.php/documentations/firmware/soft968/start&lt;br /&gt;
* CPC Firmware information - https://www.grimware.org/doku.php/documentations/firmware/guide/start&lt;br /&gt;
* 64 NOPs Amstrad CPC Tech Blog - https://64nops.wordpress.com/&lt;/div&gt;</summary>
		<author><name>Hicks</name></author>	</entry>

	</feed>