Difference between revisions of "Emulators"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(Copy-protection)
(LibRetro (API for emulators))
 
Line 1: Line 1:
= Vote for your favorite emulator =
+
[https://www.cpcwiki.eu/forum/emulators/which-emulator-s-do-you-use/ Vote for your favorite emulator] Poll on CPCWiki forum
  
[https://www.cpcwiki.eu/forum/emulators/which-emulator-s-do-you-use/ There is a poll on CPCWiki forum]
+
[[Emulator evaluation tools]] Software list for evaluating CPC emulator accuracy
 +
 
 +
[[Emulator tooling]] UI screenshots of tooling in CPC emulators
 +
 
 +
<br>
  
 
= Software Platforms (Full OS independance) =
 
= Software Platforms (Full OS independance) =
  
== Java Platform  ==
+
=== Java Platform  ===
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 54: Line 58:
 
|}
 
|}
  
== JS / Wasm / Web Platform ==
+
Note: Java applets have been discontinued and removed in all major web browsers. So JEMU and WebCPC could belong to the "Discontinued OS" part of this article.
 +
 
 +
=== JS / Wasm / Web Platform ===
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 87: Line 93:
 
| [[MAME|Emularity (MAME)]]  
 
| [[MAME|Emularity (MAME)]]  
 
| [https://github.com/db48x/emularity] [http://jsmess.textfiles.com/ JSMESS] [https://classicreload.com/platform/amstrad%20cpc Classic Reload]
 
| [https://github.com/db48x/emularity] [http://jsmess.textfiles.com/ JSMESS] [https://classicreload.com/platform/amstrad%20cpc Classic Reload]
[https://archive.org/details/softwarelibrary_cpc_games CPC Games] [https://archive.org/details/softwarelibrary_cpc_demos CPC Demos] on Internet Archive
+
[https://archive.org/details/softwarelibrary_cpc Internet Archive CPC Software Library]
 
|  
 
|  
| Oct 1, 2023
+
| Jan 27, 2024
 
| ❌
 
| ❌
 
| ✅
 
| ✅
| Lots of other computer systems
+
| Tons of vintage computers, game consoles and arcade systems
 
| Open source
 
| Open source
 
|-
 
|-
 
| [[Roland javascript emulator|Roland]]  
 
| [[Roland javascript emulator|Roland]]  
| [https://web.archive.org/web/20190308142014/http://roland.retrolandia.net/]
+
| [https://web.archive.org/web/20190308142014/http://roland.retrolandia.net/] [https://www.juegotk.com/emulador-online/2/amstrad-cpc464.html JuegoTk]
 
|  
 
|  
 
| Sep 24, 2011
 
| Sep 24, 2011
Line 105: Line 111:
 
|-
 
|-
 
| [[Ronald|Ronald]]  
 
| [[Ronald|Ronald]]  
| [https://ronald.migge.io] [https://github.com/mdm/ronald Repo]
+
| [https://ronald.int82.dev] [https://github.com/mdm/ronald Repo]
 
|  
 
|  
| Sep 25, 2023
+
| Apr 1, 2024
 
| ⚠️
 
| ⚠️
 
| ❌
 
| ❌
Line 114: Line 120:
 
|-
 
|-
 
| [[RVMplayer|RVMplayer]]  
 
| [[RVMplayer|RVMplayer]]  
| [https://www.retrovirtualmachine.org/rvmplayer/]
+
| [https://www.retrovirtualmachine.org/rvmplayer/] [https://www.amstradcpc.es/doku.php?id=emus Amstrad ESP]
 
| 0.1.1
 
| 0.1.1
 
| May 6, 2023
 
| May 6, 2023
Line 123: Line 129:
 
|-
 
|-
 
| [[Tiny Emus]]
 
| [[Tiny Emus]]
| [https://floooh.github.io/tiny8bit/] [https://floooh.github.io/tiny8bit/cpc-ui.html] [http://floooh.github.io/virtualkc/ yakc] [https://online.oldgames.sk/play/cpc Online Old Games]
+
| [https://floooh.github.io/tiny8bit/] [https://floooh.github.io/tiny8bit/cpc-ui.html CPC UI] [http://floooh.github.io/virtualkc/ yakc] [http://cpc.novidee.com/ zpz] [https://acpc.me/emul/cpc-ui.php?type=cpc6128&file=blank.dsk&input=cat%0Apen%203:?%22You%20can%20drop%20a%20.dsk%20file%20here%22:pen%201%0A mini CPC] [https://online.oldgames.sk/play/cpc Online OldGames]
[https://devilmarkus.de/ WebGL 3d 8-bit] [https://www.amstradcpcgames.eu/ Amstrad CPC Games] [http://cpc.novidee.com/ zpz]
+
[https://devilmarkus.de/ WebGL 3d 8-bit] [https://acpc.me/index.php?language=eng Arcade Room acpc.me] [https://arcade-des-monts.ca/run/store.php Retro Store]
 +
 
 +
[https://bzhgames.xyz/index.php BZH Games] [https://www.sean.co.uk/books/amstrad/index.shtm Sean's CPC Games] [https://www.amstradcpcgames.eu/ Amstrad CPC Games]
 
|  
 
|  
| Nov 4, 2023
+
| Mar 22, 2024
 
| ✅
 
| ✅
 
| ❌
 
| ❌
Line 142: Line 150:
 
|}
 
|}
  
== LibRetro (API for emulators) ==
+
=== LibRetro (API for emulators) ===
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 155: Line 163:
 
! License
 
! License
 
|-
 
|-
| [[libretro-cap32]]
+
| [[CaPriCe|libretro-cap32]]
 
| Emulation core
 
| Emulation core
 
| [https://github.com/libretro/libretro-cap32]
 
| [https://github.com/libretro/libretro-cap32]
| 4.5.3
+
| 4.5.4
| Mar 16, 2022
+
| Dec 18, 2023
 
| -
 
| -
 
| ✅
 
| ✅
Line 165: Line 173:
 
| Open source
 
| Open source
 
|-
 
|-
| [[libretro-crocods]]
+
| [[CrocoDS|libretro-crocods]]
 
| Emulation core
 
| Emulation core
 
| [https://github.com/libretro/libretro-crocods]
 
| [https://github.com/libretro/libretro-crocods]
| 0.1
+
|  
| Feb 28, 2017
+
| Oct 16, 2024
 
| -
 
| -
 
| ❌
 
| ❌
Line 175: Line 183:
 
| Open source
 
| Open source
 
|-
 
|-
| [[MAME|MESS 2015]]
+
| [[MAME|LRMAME]]
 
| Emulation core
 
| Emulation core
| [https://docs.libretro.com/meta/core-list/]
+
| [https://github.com/libretro/mame]
| 0.160
+
| 0.272
| circa 2015
+
| Dec 3, 2024
 
| -
 
| -
 
| ✅
 
| ✅
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Tons of vintage computers, game consoles and arcade systems
 
| Open source
 
| Open source
 
|-
 
|-
| [[SugarLibRetro]]
+
| [[SugarBox|SugarLibRetro]]
 
| Emulation core
 
| Emulation core
 
| [https://github.com/Tom1975/SugarLibRetro] (wraps independent lib [https://github.com/Tom1975/CPCCore CPCCore])
 
| [https://github.com/Tom1975/SugarLibRetro] (wraps independent lib [https://github.com/Tom1975/CPCCore CPCCore])
Line 198: Line 206:
 
| Frontend
 
| Frontend
 
| [https://www.emuvr.net/]
 
| [https://www.emuvr.net/]
|  
+
| 1.0.11
| Dec 25, 2022
+
| Dec 24, 2022
 
| ❌
 
| ❌
 
| -
 
| -
Line 211: Line 219:
 
| Mar 27, 2022
 
| Mar 27, 2022
 
| ✅
 
| ✅
 +
| -
 +
| Depends on emulation cores
 +
| Open source
 +
|-
 +
| [[Ludo]]
 +
| Frontend
 +
| [https://ludo.libretro.com/] [https://github.com/libretro/ludo/ Repo]
 +
| 0.17.3
 +
| Dec 8, 2024
 +
| ❌
 
| -
 
| -
 
| Depends on emulation cores
 
| Depends on emulation cores
Line 218: Line 236:
 
| Frontend
 
| Frontend
 
| [https://www.retroarch.com/] [https://www.retroarch.com/?page=achievements RetroAchievements]
 
| [https://www.retroarch.com/] [https://www.retroarch.com/?page=achievements RetroAchievements]
| 1.16.0
+
| 1.19.1
| Sep 22, 2023
+
| Jun 5, 2024
 
| ❌
 
| ❌
 
| -
 
| -
Line 226: Line 244:
 
|}
 
|}
  
= Current Operating Systems =
+
Several distributions also exist based on RetroArch or Ludo: [https://www.retrobat.org/ RetroBat], [https://www.lakka.tv/ Lakka], [https://retropie.org.uk/ RetroPie], [https://batocera.org/ Batocera], [https://www.recalbox.com/ Recalbox], [https://www.rgb-pi.com/ RGB-Pi OS], [https://github.com/EmuELEC/EmuELEC EmuELEC], [https://ludo.libretro.com/#ludos LudOS]
  
== Desktop ==
+
<br>
 +
 
 +
= Operating Systems =
 +
 
 +
=== Desktop ===
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 243: Line 265:
 
! License
 
! License
 
|-
 
|-
| [[ACE|ACE-DL]]
+
| [[ACE_(Emulator)|ACE]]
| [http://www.roudoudou.com/ACE-DL] [https://discord.gg/rKxFPndHPw Discord]
+
| [http://ace.cpcscene.net MorphOS and Haiku] [https://web.libera.chat/#cpc-fr IRC chan] [https://framagit.org/search?search=acepansion Repo]
 +
| ❌
 +
| ❌
 +
| ❌
 +
| 1.26
 +
| Jan 1, 2024
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 +
| Dozens of CPC hardware expansions thru plugins
 +
| Freeware (plugins are Open Source)
 +
|-
 +
| [[ACE-DL]]
 +
| [http://www.roudoudou.com/ACE-DL] [https://discord.gg/rKxFPndHPw Discord] [http://ace.cpcscene.net Based on ACE]
 
| ✅
 
| ✅
|  
+
|
| Dec 17, 2023
+
| ❗
 +
| Noël
 +
| Dec 24, 2024
 
| ✅
 
| ✅
 
| ✅
 
| ✅
Line 256: Line 290:
 
|-
 
|-
 
| [[AMSpiriT|AMSpiriT]]
 
| [[AMSpiriT|AMSpiriT]]
| [https://www.amspirit.fr/] [https://forum.system-cfg.com/viewtopic.php?f=24&t=11535 Forum]
+
| [https://www.amspirit.fr/] [https://discord.com/invite/g37me8WMW6 Discord] [https://forum.system-cfg.com/viewtopic.php?f=24&t=11535 Forum]
 
| ✅
 
| ✅
 
| ❌
 
| ❌
 
| ❌
 
| ❌
| 0.967b
+
| 1.01 rc
| Dec 6, 2023
+
| Apr 24, 2024
 
| ❌
 
| ❌
 
| ❌
 
| ❌
Line 280: Line 314:
 
|-
 
|-
 
| [[Arnold_(Emulator)|Arnold]]  
 
| [[Arnold_(Emulator)|Arnold]]  
| [http://www.cpcwiki.eu/forum/emulators/arnold-wip/msg144749/#msg144749] [https://www.cpcwiki.eu/forum/emulators/another-version-of-arnold-emulator/ Aeliss fork] [http://www.yasara.org/cpc/ Arnold TNG] [https://web.archive.org/web/20191023094109/https://www.bannister.org/software/arnold.htm macOS]
+
| [https://cpcrulez.fr/emulateurs_download-WIN-arnold.htm] [https://www.cpcwiki.eu/forum/emulators/another-version-of-arnold-emulator/ Aeliss fork] [http://www.yasara.org/cpc/ Arnold TNG]
 +
[https://web.archive.org/web/20191023094109/https://www.bannister.org/software/arnold.htm macOS] [http://hirudov.com/amiga/Arnold.php AmigaOS PPC]
 
| ✅
 
| ✅
| ⚠️
+
|
| ⚠️
+
| 🛠️
| [http://www.cpcwiki.eu/imgs/d/dd/Arnoldwip_src.tar.bz2 WIP]
+
|
 
| May 13, 2017
 
| May 13, 2017
 
| ⚠️
 
| ⚠️
Line 296: Line 331:
 
| ❌
 
| ❌
 
| ❌
 
| ❌
| 23.11
+
| 24.10
| Nov 11, 2023
+
| Oct 1, 2024
 
| ✅
 
| ✅
 
| ✅
 
| ✅
Line 304: Line 339:
 
|-
 
|-
 
| [[CaPriCe|Caprice32]]  
 
| [[CaPriCe|Caprice32]]  
| [https://github.com/ColinPitrat/caprice32/releases] [http://sourceforge.net/projects/caprice32/ Old repo] [https://snapcraft.io/caprice32 Linux] [http://aleste520.narod.ru/caprice.html Aleste] [https://code.google.com/archive/p/cpcsdk/ Reloaded]
+
| [https://github.com/ColinPitrat/caprice32/releases] [http://sourceforge.net/projects/caprice32/ Old repo] [https://snapcraft.io/caprice32 Linux] [https://code.google.com/archive/p/cpcsdk/ Reloaded]
 +
[https://github.com/kletellier/cpc4rpi Cpc4Rpi] [https://github.com/KaosOverride/CapriceRPI CapriceRPI] [https://www.arananet.net/cpc-pi/ CPC-PI]
 
| ✅
 
| ✅
 
| ✅
 
| ✅
Line 312: Line 348:
 
| ⚠️
 
| ⚠️
 
| ✅
 
| ✅
| -
+
| [http://aleste520.narod.ru/caprice.html Aleste 520EX]
 
| Donationware & Open source
 
| Donationware & Open source
 
|-
 
|-
 
| [[Clock Signal|Clock Signal]]  
 
| [[Clock Signal|Clock Signal]]  
| [https://github.com/TomHarte/CLK/releases] [https://snapcraft.io/clock-signal Linux]
+
| [https://github.com/TomHarte/CLK/releases] [https://snapcraft.io/clock-signal Linux] [https://snapcraft.io/install/clock-signal/raspbian Raspberry Pi]
 
| ❌
 
| ❌
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
|  
 
|  
| Dec 26, 2023
+
| Oct 19, 2024
 
| ❌
 
| ❌
 
| ❌
 
| ❌
| [[ZX Spectrum]], [[ZX80/81]], [[Enterprise]], [[MSX]], [[Oric 1/Atmos|Oric]], [[ColecoVision]], [[Acorn Electron]], [[Apple II]], [[VIC-20]], [[Atari 2600]], [[Atari ST]], [[Macintosh]]
+
| [[ZX Spectrum]], [[ZX80/81]], [[Enterprise]], [[MSX|MSX 1&2]], [[Oric 1/Atmos|Oric]], [[ColecoVision]], [[Apple II]], [[VIC-20]], [[Atari 2600]], [[Atari ST]], [[Acorn Electron|Electron]], [[Archimedes]], [[Macintosh]], [[Master System]]
 
| Donationware & Open source
 
| Donationware & Open source
 
|-
 
|-
Line 343: Line 379:
 
| ✅
 
| ✅
 
| ✅
 
| ✅
| ⚠️
+
|
 
| b700
 
| b700
 
| May 31, 2015
 
| May 31, 2015
Line 355: Line 391:
 
| ❌
 
| ❌
 
| ❌
 
| ❌
| ⚠️
+
| 🛠️
 
| 0.26
 
| 0.26
 
| Dec 11, 2004
 
| Dec 11, 2004
Line 366: Line 402:
 
| [http://cngsoft.no-ip.org/cpcec.htm] [https://github.com/cpcitor/cpcec Repo] [http://cngsoft.no-ip.org/ CPCE] [https://github.com/AmatCoder/CPCEG CPCEG]
 
| [http://cngsoft.no-ip.org/cpcec.htm] [https://github.com/cpcitor/cpcec Repo] [http://cngsoft.no-ip.org/ CPCE] [https://github.com/AmatCoder/CPCEG CPCEG]
 
| ✅
 
| ✅
|
+
| 🛠️
| ⚠️
+
| 🛠️
 
|  
 
|  
| Aug 6, 2022
+
| Dec 24, 2024
 
| ⚠️
 
| ⚠️
 
| ✅
 
| ✅
| [[ZX Spectrum]], [[Commodore 64]], [https://www.youtube.com/watch?v=5LwCy0gRAEc MSX (unreleased)]
+
| [[ZX Spectrum]], [[Commodore 64]], [[MSX|MSX 1&2]]
 
| Open source
 
| Open source
 
|-
 
|-
Line 379: Line 415:
 
| ❌
 
| ❌
 
| ❌
 
| ❌
|
+
| 🛠️
 
|  
 
|  
 
| Feb 4, 2023
 
| Feb 4, 2023
Line 450: Line 486:
 
| [https://github.com/leniad/dsp-emulator/]
 
| [https://github.com/leniad/dsp-emulator/]
 
| ✅
 
| ✅
| ⚠️
+
|
| ⚠️
+
| 🛠️
| 0.22
+
| 0.23
| Nov 15, 2023
+
| Oct 27, 2024
 
| ❌
 
| ❌
 
| ❌
 
| ❌
Line 462: Line 498:
 
| [https://github.com/istvan-v/ep128emu]
 
| [https://github.com/istvan-v/ep128emu]
 
| ✅
 
| ✅
| ⚠️
+
| 🛠️
| ⚠️
+
| 🛠️
 
| 2.0.11.2
 
| 2.0.11.2
 
| Apr 19, 2019
 
| Apr 19, 2019
Line 470: Line 506:
 
| [[ZX Spectrum]], [[Enterprise]]
 
| [[ZX Spectrum]], [[Enterprise]]
 
| Donationware & Open source
 
| Donationware & Open source
 +
|-
 +
| [[Gemux|Gemux]]
 +
| [https://www.cpcwiki.eu/forum/emulators/gemux-cpc/]
 +
| ✅
 +
| ❌
 +
| ❗
 +
|
 +
| Nov 5, 2024
 +
| ❌
 +
| ❌
 +
| -
 +
| Freeware
 
|-
 
|-
 
| [[MESS|MAME]]
 
| [[MESS|MAME]]
| [http://mamedev.org/release.html] [http://sdlmame.lngn.net/ macOS] [http://wiki.mamedev.org/index.php/SDL_Supported_Platforms Other ports]  
+
| [http://mamedev.org] [http://se.os4depot.net/index.php?function=showfile&file=emulation/computer/sdl_mess.lha AmigaOS PPC] [http://fabportnawak.free.fr/mame/ MorphOS] [https://depot.haiku-os.org/#!/pkg/mame Haiku]
 +
[https://auamstrad.es/software/mame-emulador-de-amstrad-cpc/ Tutorial (ES)]
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
| 0.261
+
| 0.272
| Nov 29, 2023
+
| Nov 30, 2024
 
| ⚠️
 
| ⚠️
 
| ✅
 
| ✅
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Tons of vintage computers, game consoles and arcade systems
 
| Open source
 
| Open source
 
|-
 
|-
Line 512: Line 561:
 
| ✅
 
| ✅
 
| ✅
 
| ✅
| 2.1.11
+
| 2.1.19
| Nov 13, 2023
+
| Dec 9, 2024
 
| ❌ Removed
 
| ❌ Removed
 
| ✅
 
| ✅
Line 523: Line 572:
 
| ✅
 
| ✅
 
| ❌
 
| ❌
|
+
| 🛠️
 
| 0.70
 
| 0.70
 
| Apr 20, 2017
 
| Apr 20, 2017
Line 535: Line 584:
 
| ❌
 
| ❌
 
| ❌
 
| ❌
| ⚠️
+
| 🛠️
 
|  
 
|  
| Sep 25, 2023
+
| Apr 1, 2024
 
| ⚠️
 
| ⚠️
 
| ❌
 
| ❌
Line 544: Line 593:
 
|-
 
|-
 
| [[SugarBox|SugarBox]]
 
| [[SugarBox|SugarBox]]
| [https://github.com/Tom1975/SugarboxV2] [http://sugarbox.free.fr/ Old site]
+
| [https://github.com/Tom1975/SugarboxV2] [http://sugarbox.free.fr/ Old site] [https://github.com/Tom1975/SugarPi SugarPi]
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
| 2.0.2
+
| 2.0.4
| Nov 29, 2023
+
| Nov 24, 2024
 
| ⚠️
 
| ⚠️
 
| ✅
 
| ✅
Line 592: Line 641:
 
|-
 
|-
 
| [[XCPC|Xcpc]]
 
| [[XCPC|Xcpc]]
| [https://www.xcpc-emulator.net/]
+
| [https://www.xcpc-emulator.net/] [https://github.com/ponceto/xcpc-emulator Repo]
 
| ❌
 
| ❌
 
| ❌
 
| ❌
 
| ✅
 
| ✅
| 0.38.1
+
| 0.52.1
| Apr 8, 2023
+
| Sep 8, 2024
 
| ❌
 
| ❌
 
| ❌
 
| ❌
Line 614: Line 663:
 
| -
 
| -
 
| Open source
 
| Open source
|-
 
| [[YACE|YACE]]
 
| [http://www.youtube.com/watch?v=uxQkljwc0i4]
 
| ❌
 
| ❌
 
| ⚠️
 
|
 
| Nov 12, 2014
 
| ✅
 
| ❌
 
| -
 
| ❌ Unreleased
 
 
|-
 
|-
 
| [[ZEsarUX|ZEsarUX]]
 
| [[ZEsarUX|ZEsarUX]]
| [https://github.com/chernandezba/zesarux]
+
| [https://github.com/chernandezba/zesarux] [https://depot.haiku-os.org/#!/pkg/zesarux Haiku]
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
 
| ✅
| X
+
| 11.0
| Sep 8, 2023
+
| Jun 6, 2024
 
| ⚠️
 
| ⚠️
 
| ❌
 
| ❌
Line 640: Line 677:
 
|}
 
|}
  
== Alternative OS ==
+
Legend: ❗= No Raspberry Pi / ARM build ; 🛠️ = Build it yourself ; ⚠️ = Incomplete tooling
  
{| class="wikitable sortable"
+
=== Mobile ===
! Host system
+
! Emulator name
+
! External link
+
! Current version
+
! Latest release
+
! Developer tools
+
! Amstrad Plus
+
! Also emulates
+
! License
+
|-
+
| AmigaOS PPC
+
| [[Arnold|Arnold]]
+
| [http://hirudov.com/amiga/Arnold.php]
+
| 1.15
+
| Dec 17, 2012
+
| ❌
+
| ✅
+
| [[KC Compact]]
+
| Open source
+
|-
+
| AmigaOS PPC
+
| [[MESS|SDLMESS]]
+
| [http://se.os4depot.net/index.php?function=showfile&file=emulation/computer/sdl_mess.lha]
+
| 0.146u4
+
| Aug 19, 2012
+
| ⚠️
+
| ✅
+
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Open source
+
|-
+
| Haiku
+
| [[ACE_(Emulator)|ACE]]
+
| [http://www.cpcwiki.eu/forum/emulators/ace-for-haiku/] [http://ace.cpcscene.net/]
+
| 1.25.1
+
| Oct 15, 2023
+
| ✅
+
| ✅
+
| -
+
| Freeware
+
|-
+
| Haiku
+
| [[AdvanceMAME|AdvanceMAME]]
+
| [https://depot.haiku-os.org/#!/pkg/advancemame_x86]
+
| 3.9-1
+
| Feb 3, 2020
+
| ⚠️
+
| ✅
+
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Open source
+
|-
+
| MorphOS
+
| [[ACE_(Emulator)|ACE]]
+
| [http://ace.cpcscene.net/] [https://framagit.org/users/offset/projects Repo]
+
| 1.25
+
| Sep 8, 2022
+
| ✅
+
| ✅
+
| -
+
| Freeware
+
|-
+
| MorphOS
+
| [[MESS|MESS]]
+
| [http://fabportnawak.free.fr/mame/]
+
| 0.113
+
| Nov 1, 2007
+
| ⚠️
+
| ✅
+
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Open source
+
|}
+
  
== Mobile ==
+
You can use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on '''Android and iOS'''. Or you can use these stand-alone CPC emulators:
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 770: Line 737:
 
| -
 
| -
 
| Commercial💲
 
| Commercial💲
 +
|-
 +
| Android
 +
| [[MAME4droid 2024]]
 +
| [http://play.google.com/store/apps/details?id=com.seleuco.mame4d2024] [https://github.com/seleuco/MAME4droid-2024 Repo]
 +
| 1.19 (0.272)
 +
| Dec 2, 2024
 +
| ✅
 +
| Tons of vintage computers, game consoles and arcade systems
 +
| Open source
 
|-
 
|-
 
| iOS
 
| iOS
Line 787: Line 763:
 
| ❌
 
| ❌
 
| -
 
| -
 +
| Open source
 +
|-
 +
| iOS
 +
| [[MAME4iOS]]
 +
| [https://github.com/yoshisuga/MAME4iOS]
 +
| 2022.5
 +
| Dec 12, 2022
 +
| ✅
 +
| Tons of vintage computers, game consoles and arcade systems
 
| Open source
 
| Open source
 
|}
 
|}
  
= Discontinued Operating Systems =
+
=== Discontinued OS ===
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 852: Line 837:
 
| 0.7
 
| 0.7
 
| Sep 15, 1996
 
| Sep 15, 1996
 +
| ❌
 +
| -
 +
| Open source
 +
|-
 +
| AROS
 +
| [[Arnold]]
 +
| [http://archives.aros-exec.org/?function=showfile&file=emulation/computer/arnold-aros-i386.lha]
 +
|
 +
| Oct 24, 2010
 +
| ✅
 +
| -
 +
| Open source
 +
|-
 +
| AROS
 +
| [[Caprice32]]
 +
| [http://archives.aros-exec.org/?function=showfile&file=emulation/computer/caprice-aros-i386.lha]
 +
| 4.2.0
 +
| Oct 23, 2010
 
| ❌
 
| ❌
 
| -
 
| -
Line 880: Line 883:
 
| Sep 8, 2018
 
| Sep 8, 2018
 
| ✅
 
| ✅
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Tons of vintage computers and game consoles
 
| Open source
 
| Open source
 
|-
 
|-
Line 1,017: Line 1,020:
 
| -
 
| -
 
| Freeware
 
| Freeware
 +
|-
 +
| OS/2
 +
| [[SDLMAME|SDLMAME]]
 +
| [https://ecsoft2.org/sdlmame]
 +
| 0.170
 +
| Jan 30, 2016
 +
| ✅
 +
| Tons of vintage computers, game consoles and arcade systems
 +
| Open source
 
|-
 
|-
 
| Palm OS
 
| Palm OS
Line 1,082: Line 1,094:
 
|}
 
|}
  
= Home Consoles =
+
<br>
 +
 
 +
= Other Platforms =
 +
 
 +
=== Home Consoles ===
  
You can use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on '''Apple TV, Android TV, Nvidia Shield, Xbox One, Xbox Series, PS2, GameCube, Wii, Wii U and Switch'''. Or you can use these stand-alone CPC emulators:
+
You can use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on '''Apple TV, Android TV, Nvidia Shield, Steam Link, Xbox One, Xbox Series, PS2, PS Vita TV, GameCube, Wii, Wii U and Switch'''. Or you can use these stand-alone CPC emulators:
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 1,111: Line 1,127:
 
| Oct 18, 2012
 
| Oct 18, 2012
 
| ❌
 
| ❌
| Lots of other computer systems
+
| Tons of vintage computers, game consoles and arcade systems
 
| Freeware
 
| Freeware
 
|-
 
|-
Line 1,169: Line 1,185:
 
|}
 
|}
  
= Handheld Consoles =
+
=== Handheld Consoles ===
  
Note: Android-based handheld consoles (Razer Edge, Ayn Odin Pro, Retroid Pocket Flip, GPD XP, ...) will work with stand-alone Android CPC emulators or with RetroArch, same as an Android phone.
+
Note: For Android handheld consoles (Razer Edge, Ayn Odin Pro, Retroid Pocket Flip, GPD XP, ...), see the Mobile/Android section.
  
You can use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on '''PSP, PS Vita, DS, 3DS, Switch, Steam Deck, RetroFW, Miyoo and OpenDingux'''. Or you can use these stand-alone CPC emulators:
+
You can use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on '''PSP, PS Vita, DS, 3DS, Switch, Steam Deck, RetroFW, Miyoo, OpenDingux and [https://github.com/christianhaitian/arkos/wiki ArkOS]'''. Or you can use these stand-alone CPC emulators:
  
 
{| class="wikitable sortable"
 
{| class="wikitable sortable"
Line 1,357: Line 1,373:
 
|}
 
|}
  
= Single-Board Computers / Raspberry Pi =
+
=== FPGA ===
  
[https://www.libretro.com/index.php/powered-by-libretro/ LibRetro / RetroArch] is used as the foundation of [https://www.lakka.tv/ Lakka], [https://wiki.recalbox.com/en/advanced-usage/retroarch Recalbox], [https://batocera.org/ Batocera] and [https://retropie.org.uk/ RetroPie] alternative OSes for the Raspberry Pi and other SBC.
+
*[[CPC TREX|CPC TREX]] [[C-ONE|CPC-One]] TurboCPC core by TobiFlex running on different FPGA boards
But you can also use [https://www.retroarch.com/index.php?page=platforms RetroArch] for Amstrad CPC emulation on a stock Raspberry Pi OS. Or you can use these stand-alone CPC emulators:
+
*[http://ralferoo.blogspot.fr/ CPC FPGA] CPC emulation by Ranulf (Ralferoo) Doswell, running on a custom made FPGA board
 +
*[[FPGAmstrad|FPGAmstrad]] [https://github.com/renaudhelias/CoreAmstrad CoreAmstrad] [https://github.com/mist-devel/mist-board/wiki/CoreDocAmstrad CoreDocAmstrad] Translation by Renaud (Freemac) Hélias of JavaCPC from Java into VHDL for MiST board
 +
*[https://github.com/sorgelig/Amstrad_MiST CPC for MiST and MiSTer] Started by Alexey (Sorgelig) Melnikov as a port of CoreAmstrad, but every module has been either rewritten or replaced
 +
*[https://web.archive.org/web/20230330082645/https://intelligenttoasters.blog/cpc2-project-index/ CPC2 Project] CPC emulation running on a Cyclone V FPGA board
 +
*[https://github.com/ZXMicroJack/amstrad-cpc AmstradCPC core] Based on McLeod's core and running on a ZXTres FPGA board
  
{| class="wikitable sortable"
+
<br>
! Emulator name
+
! External link
+
! Current version
+
! Latest release
+
! Amstrad Plus
+
! Also emulates
+
! License
+
|-
+
| [[CPC4Rpi|#CPC4Rpi]]
+
| [https://web.archive.org/web/20150321200308/http://store.raspberrypi.com/projects/cpc4rpi]
+
| 1.1
+
| Dec 19, 2013
+
| ❌
+
| -
+
| Commercial💲
+
|-
+
| [[CapriceRPI|CapriceRPI]]
+
| [https://github.com/KaosOverride/CapriceRPI]
+
| 1.3d
+
| Feb 28, 2016
+
| ❌
+
| -
+
| Open source
+
|-
+
| [[Clock Signal|Clock Signal]]
+
| [https://snapcraft.io/install/clock-signal/raspbian]
+
|
+
| Dec 26, 2023
+
| ❌
+
| [[ZX Spectrum]], [[ZX80/81]], [[Enterprise]], [[MSX]], [[Oric 1/Atmos|Oric]], [[ColecoVision]], [[Acorn Electron]], [[Apple II]], [[VIC-20]], [[Atari 2600]], [[Atari ST]], [[Macintosh]]
+
| Donationware & Open source
+
|-
+
| [[CPCEPower|CPCEPower]]
+
| [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=73]
+
| 2105
+
| Jun 4, 2021
+
| ✅
+
| -
+
| Freeware
+
|-
+
| [[MESS|MAME]]
+
| [https://stickfreaks.com/mame/]
+
| 0.261
+
| Nov 29, 2023
+
| ✅
+
| [[KC Compact]], [[Aleste 520EX]] & lots of other computer systems
+
| Open source
+
|-
+
| [[SugarPi|SugarPi]]
+
| [https://github.com/Tom1975/SugarPi]
+
| 1.2.0
+
| Feb 3, 2021
+
| ✅
+
| -
+
| Open source
+
|-
+
| [[ZEsarUX|ZEsarUX]]
+
| [https://github.com/chernandezba/zesarux]
+
| X
+
| Sep 8, 2023
+
| ❌
+
| [[PCW]], [[ZX Spectrum]], [[ZX80/81]], [[MSX|MSX 1]], [[ColecoVision]], [[Spectravideo]], [[Jupiter ACE]], [[Sam Coupe]], [[SG-1000]], [[Master System]], [[Sinclair QL]], [[MK14]], [[Z88]]
+
| Donationware & Open source
+
|}
+
  
= Hardware =
+
= Hardware Replacements =
 +
 
 +
*[https://youtu.be/DykFhtNbgGk Just CPC4ATX] [https://memoryfull.net/party.php?id=240 CPC-ITX triple CRTC] CPC clones made from NOS chips
 +
*[https://github.com/Bread80/CPCModular CPC Modular] Modular Amstrad CPC compatible computer
 +
*[https://makerworld.com/fr/models/821842#profileId-765034 Amstrad CPC464 mini] [https://github.com/Board-Folk/CPC464-2MINI CPC464-2mini] Miniaturised CPCs
 +
*[https://hackaday.io/project/187051-the-amstrad-cpc-portable Amstrad CPC Portable] World's first battery-powered portable Amstrad CPC
 +
*[https://www.tindie.com/search/?q=amstrad+replica+pcb CPC 464/6128 replica PCBs] To be used as a direct replacement to the original PCBs
 +
*[https://github.com/EremusOne/CPCESP_alpha CPCESP] [https://github.com/rpsubc8/ESP32TinyCPC/ ESP32 TinyCPC] CPC emulators for ESP32 SoC board
 +
*[https://www.symbos.org/symbosvm.htm SymbOSVM] SymbOS for modern 32/64bit hardware
 +
 
 +
=== Chips ===
 +
 
 +
*[https://github.com/MicroCoreLabs/Projects MCLZ8] [https://github.com/rejunity/z80-open-silicon z80-open-silicon] Z80 emulators to be used as drop-in replacement
 +
*[https://github.com/nukeykt/Nuked-MD-FPGA/blob/main/z80.v Nuked-MD-FPGA] [https://github.com/gdevic/A-Z80 A-Z80] Verilog Z80 implementations reverse engineered from decapped chip [https://baltazarstudios.com/z80-ground/ Baltazar] [https://www.righto.com/2014/10/how-z80s-registers-are-implemented-down.html Ken Shirriff] [https://static.righto.com/files/z80-pla-table.html Instruction decode PLA table] Technical documentation
 +
*[https://github.com/floooh/v6502r Visual Z80 Remix] [https://github.com/gdevic/Z80Explorer Z80 Explorer] Netlist-level ultra accurate Z80 simulators
 +
*[https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/gate-array-decapped! Forum thread] Reverse engineered Gate Array by Gerald from decapped chips [https://pastebin.com/ZQyL68Hv Ash Evans] [https://github.com/MiSTer-devel/Amstrad_MiSTer/tree/master/rtl/GA40010 Gyorgy Szombathelyi] [https://github.com/codedchip/AMSGateArray AMSGateArray] Subsequent Verilog/VHDL implementations [https://bread80.com/2021/06/03/understanding-the-amstrad-cpc-video-ram-and-gate-array-subsystem/ Signals analysis by Bread80]
 +
*[https://k3pi.chickenkiller.com/dzi/ ASIC and Pre-ASIC] [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/gate-array-decapped!/msg133264/#msg133264 Gate Array] [https://siliconpr0n.org/map/zilog/z0840008psc-z80cpu/ Z80 CPU] [https://www.seanriddle.com/6845/ HD6845SP CRTC] [http://seanriddledecap.blogspot.com/2023/12/blog-post_31.html AY-3-8912 PSG] [http://seanriddledecap.blogspot.com/2017/01/blog-post_42.html NEC D765 FDC] Die shots of decapped CPC chips. How to: [https://github.com/veniamin-ilmer/decoding_rom Optically decode the ROM of a decapped chip] [https://github.com/travisgoodspeed/gbrom-tutorial Automate ROM decoding] [https://c128.se/posts/silicon-adventures/ Decap, image and reverse engineer the C128 PLA chip] [https://oric.signal11.org.uk/html/ula-dieshot.htm Reverse engineered Oric ULA chip]
 +
*[https://lotharek.pl/productdetail.php?id=408 AY_FPGA] AY-3-8912 FPGA replacement with few extra features
 +
*[https://thecheshirec.at/2023/11/21/5-multi-crtcs-a-vendre/ Multi-CRTC Board] Host and select between multiple CRTC chip types in one CPC
 +
 
 +
=== Floppy drives ===
  
*[[CPC TREX|CPC TREX]] [[C-ONE|CPC-ONE]] TurboCPC core running on a FPGA board
 
*[http://ralferoo.blogspot.fr/ CPC FPGA] CPC emulation running on a custom made FPGA board
 
*[[FPGAmstrad|FPGAmstrad]] [https://github.com/renaudhelias/CoreAmstrad CoreAmstrad] [https://github.com/mist-devel/mist-board/wiki/CoreDocAmstrad CoreDocAmstrad] [https://github.com/mist-devel/mist-binaries/tree/master/cores/amstrad_alt CPC for MIST and MISTer] Translation of JavaCPC from Java into VHDL on a MiST board
 
*[https://intelligenttoasters.blog/cpc2-project-index/ CPC2 Project] CPC emulation running on a Cyclone V FPGA board
 
*[https://github.com/rpsubc8/ESP32TinyCPC/ ESP32 TinyCPC] Port from CPC-em emulator to TTGO VGA32 v1.x board with ESP32
 
*[https://github.com/codedchip/AMSGateArray AMSGateArray] Reverse engineered Gate Array from decapped chips
 
 
*[[SDiskEmul]] Floppy-drive emulator released in 2007. Abandoned now. Supports DSK, EDSK disk-images
 
*[[SDiskEmul]] Floppy-drive emulator released in 2007. Abandoned now. Supports DSK, EDSK disk-images
 
*[https://hxc2001.com/floppy_drive_emulator/ HxC Floppy Emulator] Commercial floppy-drive emulator. Supports directly DSK, EDSK, HFE disk-images. IPF, CTRAW, SCP disk-images supported through conversion to HFE disk-image [https://hxc2001.com/docs/gotek-floppy-emulator-hxc-firmware/pages/emulation-from-images.html]
 
*[https://hxc2001.com/floppy_drive_emulator/ HxC Floppy Emulator] Commercial floppy-drive emulator. Supports directly DSK, EDSK, HFE disk-images. IPF, CTRAW, SCP disk-images supported through conversion to HFE disk-image [https://hxc2001.com/docs/gotek-floppy-emulator-hxc-firmware/pages/emulation-from-images.html]
 
*[https://github.com/keirf/flashfloppy/ FlashFloppy] Open source floppy-drive emulator for the ubiquitous Gotek hardware. Supports DSK, EDSK, HFE disk-images
 
*[https://github.com/keirf/flashfloppy/ FlashFloppy] Open source floppy-drive emulator for the ubiquitous Gotek hardware. Supports DSK, EDSK, HFE disk-images
 +
*[https://github.com/keirf/greaseweazle GreaseWeazle] Open source USB floppy adapter Flux reader/writer
 +
*[https://www.cbmstuff.com/index.php?route=product/product&product_id=52 SuperCard Pro] Claims to be the most advanced flux level copier/imager/converter system
 +
*[https://kryoflux.com/ KryoFlux] Proprietary floppy adapter Flux reader/writer
 
*[https://cpcrulez.fr/forum/viewtopic.php?f=5&t=100&start=690#p55437 Pauline] FPGA-based floppy-drive dumper and emulator
 
*[https://cpcrulez.fr/forum/viewtopic.php?f=5&t=100&start=690#p55437 Pauline] FPGA-based floppy-drive dumper and emulator
*[https://hobbyretro.com/en/retro/tzxduino TZXduino] Arduino-based tape deck emulator. Supports many formats of tape-images including CDT and TZX
+
*[https://cpcrulez.fr/hardware-lecteurs_externe-interface_ddi3_usb_floppy_emulator.htm DDI-3] USB floppy-drive emulator with an integrated FDC chip, floppy data separator and AMSDOS ROM for CPC464. Current evolution [https://cpcrulez.fr/hardware-lecteurs_externe-interface_ddi6_usb_floppy_emulator.htm DDI-6] has also integrated a RAM/ROM box
 +
*[https://lotharek.pl/productdetail.php?id=376 DriveRDY] Emulates the Ready signal necessary for floppy drives on Amstrad machines
 +
*[[M4 Board]] Supports DSK, EDSK images in a limited fashion. Protected disks are not supported
 +
*[[USIFAC]] [[ULIfAC]] Supports DSK, EDSK images in a limited fashion. Protected disks are not supported
 +
 
 +
=== Tapes ===
 +
 
 +
*[https://hobbyretro.com/en/retro/tzxduino TZXduino] [https://ultimatemister.com/product/ultimate-maxduino-pro/ MAXduino] [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/abatape-my-contribution-to-tape-lovers/ Abatape] Arduino-based tape deck emulator. Supports many formats of tape-images including CDT and TZX
 +
*[https://youtu.be/j4__v6ojPt0 SVI-CAS] Digital Tape Drive for Playback & Recording. Supports many formats of tape-images including CDT and TZX
 +
*[https://retrowiki.es/viewtopic.php?t=200032717 TapeRider] TZX/CDT tape-images player for Android
 +
*[https://chrome.google.com/webstore/detail/tapdancer/fcibbcbgbeioacfcnfgjianglchlcokh tapDancer] [https://web.archive.org/web/20160110003844/http://tapdancer.info/] Chrome and Android app that plays back many formats of tape-images including CDT and TZX
 
*[https://pelrun.github.io/PlayUEF/ PlayUEF] Web-browser based tape deck emulator, supporting CDT and TZX tape-images
 
*[https://pelrun.github.io/PlayUEF/ PlayUEF] Web-browser based tape deck emulator, supporting CDT and TZX tape-images
*[https://github.com/dasta400/ACPCPE Amstrad CPC Printer Emulator] Arduino-based CPC printer emulator
 
  
= Mass-storage =
+
=== Cartridges ===
Emulator support for mass-storage expansions is as follows:
+
 
 +
*[https://github.com/f1ac0/CPC-plus-cartridge CPC-plus-cartridge] Different PCB designs and code to make a CPC-plus cartridge
 +
*[https://github.com/zeus074/Amstrad_Multicart Amstrad Multicart] 16-in-1 cartridge for the GX4000 or Amstrad Plus computer
 +
*[https://cpcrulez.fr/hardware-interface_ROM-gx4000_homebrew_player.htm GX4000 Homebrew Player] [https://cpcrulez.fr/hardware-interface_ROM-gx4000_homebrew_player-32_in_one.htm CPC+ 32-in-one multigames] by Retroelectronik
 +
*[[C4CPC]] Cartridge replacement for the Amstrad Plus range and the GX4000
 +
*[https://overange.weebly.com/amstrad-gx4000-cpc-464-6128-plus-reflashable-flash-cartridge.html Flash+ cartridge] Amstrad CPC+ GX4000 reflashable cartridge
 +
*[https://store.backbit.io/product/backbit-pro/ BackBit Pro] [https://youtu.be/tI2wkelVzyw Tutorial] Universal instant loading cartridge
 +
*[[M4 Board]] Supports CPR cartridges, among many other features
 +
 
 +
=== Printers ===
 +
 
 +
*[https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/acpcpe-amstrad-cpc-printer-emulator-(diy)/ Amstrad CPC Printer Emulator] [https://github.com/lgv2018/ACPCPE] Arduino-based CPC printer emulator that can output text, markdown or HTML
 +
*[https://www.retroprinter.com/ Retro-Printer] Plugin module for the Raspberry Pi that makes it possible to connect retro computers to modern USB or network printers
 +
*[https://github.com/nzeemin/escparser ESCParser] Command-line utility, ESC/P printer emulator that can output PostScript, SVG or PDF
 +
 
 +
=== Other ===
 +
 
 +
*[https://simonowen.com/spectrum/lenskey/ LensKey] LensLok copy-protection decoder for Windows
 +
*[https://github.com/ArcherEG/CPCPS2Firmware CPCPS2 Keyboard Firmware] Emulates the keyboard matrix of Amstrad CPC using modern hardware
 +
*[https://sindenlightgun.com/ Sinden Lightgun] LCD-compatible lightgun
 +
*[https://github.com/grzegorz-gr/vga4cpc vga4cpc] VGA output for Amstrad CPC based on Raspberry Pi Pico
 +
 
 +
<br>
 +
 
 +
= Peripherals supported in emulators =
 +
 
 +
=== Mass storage devices ===
 +
 
 
*[[Dobbertin Harddisc]] is emulated by MAME
 
*[[Dobbertin Harddisc]] is emulated by MAME
 
*[[UIDE Universal IDE adapter cards for Z-80 computers|uIDE]] is emulated by Arnold
 
*[[UIDE Universal IDE adapter cards for Z-80 computers|uIDE]] is emulated by Arnold
*[[Symbiface II]] IDE/PATA interface or compatible ([[X-Mass]], [https://github.com/salafek/cyboard-for-cpc Cyboard]) is emulated by ACE, Caprice Forever, MAME, WinAPE, WinCPC, Arnold, Virtual CPC
+
*[[Symbiface II]] IDE/PATA interface or compatible ([[X-Mass]], [https://github.com/salafek/cyboard-for-cpc Cyboard]) is emulated by ACE, ACE-DL, Caprice Forever, MAME, WinAPE, WinCPC, Arnold, Virtual CPC
*[[Albireo]] is emulated by ACE, Caprice Forever
+
*[[Albireo]] is partially emulated (no direct sector) by ACE, ACE-DL, Caprice Forever
 
*[[M4 Board]] is emulated by CPCemu
 
*[[M4 Board]] is emulated by CPCemu
*[[Vortex Winchester Drive]], [[ULIfAC|USIfAC / ULIfAC]] and [[Symbiface 3|Symbiface3 / RSF3]] are not supported by emulators
+
*[[Vortex Winchester Drive]], [[IDE8255]], [[ULIfAC|USIfAC / ULIfAC]], [[Symbiface 3|Symbiface3 / RSF3]], [https://hxc2001.com/download/floppy_drive_emulator/SDCard_HxC_Floppy_Emulator_Direct_Access_mode.pdf Gotek direct access mode] are not supported
  
= CPC cartridge slot =
+
=== Network devices ===
Emulator support for a CPC cartridge slot is as follows:
+
*[[Dandanator]] brings a non-standard physical cartridge port and a very exotic non-standard memory mapper that spies on Z80 instructions (sacrificing compatibility without any justification). It is emulated by ACE, Retro Virtual Machine, CPCEC, ZEsarUX, DSP
+
*[[Plus2CPC]] brings a standard physical Plus cartridge port to the CPC. It is not supported by emulators
+
*[[Play2CPC]] is an evolution of the [[Plus2CPC]], adding RMR2 Plus mapping, R/W cartridge support, CRTC cursor raster interrupt and a 3-channel soundchip conforming to the [[PlayCity]] base spec. Play2CPC is emulated by ACE
+
*[[M4 Board]] simulates a standard Plus cartridge port on the CPC and handles standard CPR files. M4 Board is emulated by CPCemu
+
  
= Audio devices =
+
There is a plethora of serial communication devices (using [[RS232]], USB, SPI, Modem, Teletext, [[Virtual Net 96]], etc...) on Amstrad CPC:
Emulator support is as follows:
+
* [[Amstrad Serial Interface|Amstrad/Pace RS232 Serial Port]] is emulated by MAME
*[[Amstrad SSA-1 Speech Synthesizer|SSA-1 speech synthesizer]] is emulated by ACE, Caprice Forever, JavaCPC, MAME
+
* Other devices are not supported
*[[Dk'tronics Speech Synthesizer|Dk'Tronics speech synthesizer]] is emulated by ACE, Caprice Forever, JavaCPC, MAME
+
*[[TMPI speech synthesizer|Techni-Musique speech synthesizer]] is emulated by ACE, Caprice Forever
+
*[[Amdrum]] is emulated by ACE, JavaCPC, MAME, WinAPE
+
*[[Digiblaster]] is emulated by ACE, Caprice Forever, JavaCPC, MAME, WinAPE, CPCEC, CPCEPower, WinCPC, Virtual CPC
+
*[[PlayCity]] is fully emulated by ACE, MAME, Arnold, SugarBox. The audio part of [[PlayCity]] is emulated by Caprice Forever, JavaCPC, CPCEC
+
*[[Play2CPC]] implements the PlayCity base spec (aka Arcade Sound System). It has one additional soundchip instead of two and no CTC chip. It is emulated by ACE
+
*[[Willy|Willy OPL3]] is emulated by ACE
+
*[[Willy|Willy MIDI]] is emulated only by ACE for Haiku
+
*[[Music Machine]], [https://github.com/lambdamikel/Speak-SID Speak&SID], [https://github.com/lambdamikel/LambdaSpeak3 LambdaSpeak], [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/amsdap-amstrad-msx-adapter-connecting-any-msx-io-hardware-to-the-cpc/ Amsdap (SE-One, Moonsound, etc...)] are not supported by emulators
+
  
= Rewind feature =
+
Higher-level Ethernet or TCP/IP network devices are much less common:
ACE-DL has a rewind feature, but it is not as good as it could be: [https://youtu.be/wIKGvpnJLUo Demonstration of rewind in ACE-DL]
+
* [[M4 Board]] Wifi or compatible ([[Symbiface 3]]) is emulated by CPCemu
 +
* [[CPC-ENet]], [https://github.com/salafek/Net4CPC/ Net4CPC], [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/fujinet-for-the-cpc/ Fujinet] are not supported
  
At the moment, only the RetroArch CPC emulator has a proper rewind feature: [https://youtu.be/YwilYlSe5LQ Demonstration of rewind in RetroArch]. To reverse the game, the user press and hold the rewind button. And at any point, releasing the button makes time goes forward again.
+
=== Audio devices ===
  
A very simple approach would be to make a SNA for each frame and limit the RAM snapshot to 128KB, which is ok for 99% of CPC software. For a 10-seconds long rewind functionality, only 64MB RAM is needed (128KB * 50 frames * 10 seconds).
+
*[[Amstrad SSA-1 Speech Synthesizer|SSA-1 speech synthesizer]] is emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, MAME
 +
*[[Dk'tronics Speech Synthesizer|Dk'Tronics speech synthesizer]] is emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, MAME
 +
*[[TMPI speech synthesizer|Techni-Musique speech synthesizer]] is emulated by ACE, ACE-DL, Caprice Forever
 +
*[[Amdrum]] is emulated by ACE, ACE-DL, JavaCPC, MAME, WinAPE
 +
*[[Digiblaster]] is emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, MAME, WinAPE, WinCPC, CPCEC, CPCEPower, Virtual CPC
 +
*[[PlayCity]] is fully emulated by ACE, ACE-DL, MAME, Arnold, SugarBox. It is partially emulated (no CTC) by Caprice Forever, JavaCPC, CPCEC
 +
*[[Play2CPC]] is partially emulated (no FM and no digidrums) by ACE, ACE-DL
 +
*[[Willy|Willy OPL3]] is emulated by ACE, ACE-DL
 +
*[[Willy|Willy MIDI]] is emulated by ACE (software synth emulation on Haiku, MIDI OUT support on MorphOS)
 +
*[[Music Machine|Music Machine (Sampling/Playback/MIDI ports)]], [[EMR MIDI Interface]], [https://github.com/lambdamikel/BluePillCPC Ultimate MIDI Board], [https://github.com/lambdamikel/Speak-SID Speak&SID], [https://github.com/lambdamikel/LambdaSpeak3 LambdaSpeak], [https://youtu.be/kahDREIaOog Amsdap MoonSound], [https://youtu.be/3xEyNQA6Weg Amsdap MP3 Player], [https://youtu.be/vvlGBS3nNiY Amsdap SE-One (MP3/Radio)], [https://www.amibay.com/threads/cpcradio-fm-radio-receiver-module.2446509/ CPC Radio], [https://www.gitlab.com/doragasu/romba/ Romba], [[CPC Booster]] are not supported
 +
Note: all [[RS232]] serial port devices ([[USIFAC]], [[Amstrad Serial Interface]], etc...) and USB port devices with direct control ([[Albireo]], etc...) can also be used as MIDI ports.
  
A more efficient approach is to store only the values that are changed in RAM between two frames, so that RAM can be restored when rewinding. This allows for long-rewinds, even of a CPC equipped with a 4MB RAM expansion. Proof of it is the GBA emulator [https://youtu.be/Sfc_1NKbiKg SkyEmu demonstrating super long rewind] while needing very few RAM.
+
=== Graphics devices ===
 +
CPC graphics display expansions ([https://thecheshirec.at/category/8bits/amstrad-cpc/crtc/crtc5/ CRTC Type 5], [https://youtu.be/plQf9_7zPSA Amsdap GFX9000]) are not supported.
  
For debugging, going back to the previous instruction is easily implemented. The emulator has to store the time when the previous instruction was executed so that he can go back to that instruction. In the same way, emulators can provide access to the previous HBL, IRQ, VBL, etc.
+
CPC graphics acquisition devices ([[Dart Scanner for DMP-Printers|Dart Scanner]], [[VIDI digitizer]], [[ARA Video Digitizer|Digitaliseur Ara]]) are not supported.
  
= Emulator accuracy checking tools =
+
CPC printers are poorly supported. The only emulators that at least do some print rendering emulation are JavaCPC and Caprice Forever.
== Quick evaluation==
+
*[https://www.cpc-power.com/index.php?page=detail&num=7529 From Scratch demo] with reference images (CRTC 1): [[Media:From Scratch logo.png]] [[Media:From Scratch tetris.png]] [[Media:From Scratch ovl.png]]
+
*[https://www.cpc-power.com/index.php?page=detail&num=19308 DSC #4 demo] with reference images (CRTC 1): [[Media:DSC4 reference1.png]] [[Media:DSC4 reference2.png]]
+
*[https://www.cpc-power.com/index.php?page=detail&num=7737 Camembert 4 demo] with reference images (CRTC 0/1/3/4): [[Media:Camembert-real.jpg]] [[Media:Camembert 4 Pixel Precise.jpg]]
+
*[https://www.cpc-power.com/index.php?page=detail&num=9029 BSC7 Interlace demo] with reference image (CRTC 0/2/3/4): [[Media:BSC7 reference.png]]
+
  
== Z80 CPU ==
+
=== Input devices ===
*[https://cpcrulez.fr/applications_util-zexall.htm ZEXALL (CP/M)] [https://cpcrulez.fr/applications_util-zexdoc.htm ZEXDOC (CP/M)] [https://www.cpc-power.com/index.php?page=detail&num=12883 Z80 Full Test] [https://www.cpc-power.com/index.php?page=detail&num=12881 Z80 Doc Test] [https://www.cpc-power.com/index.php?page=detail&num=12882 Z80 Flags Test] [https://www.cpc-power.com/index.php?page=detail&num=12880 Z80 Doc Flags Test] [https://www.cpc-power.com/index.php?page=detail&num=12884 Z80 MEMPTR Test] [https://www.cpc-power.com/index.php?page=detail&num=12879 Z80 CCF Test] Z80 CPU instruction set exercisers
+
*[https://www.cpc-power.com/index.php?page=detail&num=298 Arkanoid (using Z80 Interrupt Mode 2)] [https://www.cpc-power.com/index.php?page=detail&num=427 L'anneau de Zengara (using Z80 register R)] [https://www.cpc-power.com/index.php?page=detail&num=1299 Light Corridor (Z80 useless instruction prefixes)] [https://www.cpc-power.com/index.php?page=detail&num=735 Dogsbody (accessing non-standard I/O ports)]
+
*[https://wikiti.brandonw.net/?title=Z80_Instruction_Set Z80 instruction set] [https://zx-pk.ru/attachment.php?attachmentid=2989&d=1143656567 Z80 MEMPTR (aka WZ) internal register] [https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags Even weirder Z80 behaviour] [https://zxe.io/software/Z80/documentation/latest/Thanks.html To get to the bottom of it] [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/z80-cpu-nmos-or-cmos/ Z80 is always NMOS on CPC and Plus] How the Z80 behaves
+
*[https://floooh.github.io/2021/12/06/z80-instruction-timing.html Z80 T-state timings] [https://baltazarstudios.com/zilog-z80-undocumented-behavior/ Other source about T-state timings] Ultra accurate timing behaviour
+
  
== Diagnostics ==
+
Some lightguns / lightpens are emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, CPCEC, CPCEPower, Virtual CPC, PC-CPC, Wiituka.
*[https://www.cpc-power.com/index.php?page=detail&num=5113 Official Amstrad CPC hardware diagnostics] [https://www.cpc-power.com/index.php?page=detail&num=17932 Non-official Amstrad Diagnostics] [https://www.cpc-power.com/index.php?page=detail&num=6545 STS SysInfo] [https://www.cpc-power.com/index.php?page=database&lemot=test%crtc%v Tests CRTC type] [http://cpc.sylvestre.org/technique/technique_identifier_crtc.html Identifying CRTC visually]
+
*[https://www.cpc-power.com/index.php?page=detail&num=6987 RAM Expansion Test] [https://www.cpc-power.com/index.php?page=detail&num=14833 MemTest] [https://www.cpc-power.com/index.php?page=detail&num=14834 RAM Test CRTC4] [https://www.cpcwiki.eu/forum/technical-support/test-ram-de-mcleod-ideafix/ Test RAM de McLeod Ideafix] [https://www.cpc-power.com/index.php?page=detail&num=15739 RAM Check] [https://www.cpc-power.com/index.php?page=detail&num=13386 Testprogram For All ERAM] [https://www.cpc-power.com/index.php?page=detail&num=19185 Xenon 2] [https://www.cpc-power.com/index.php?page=detail&num=12188 Take On Me] [https://www.cpc-power.com/index.php?page=detail&num=14339 Trololo Experiments] [https://www.cpc-power.com/index.php?page=detail&num=19406 Still The One] [https://www.cpc-power.com/index.php?page=detail&num=16084 Post Scriptum] [https://cpcrulez.fr/info-chany-enhanced_edition.htm Chany 512K cracks] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=151 Expanded RAM software list] RAM exercisers
+
*[https://www.cpc-power.com/index.php?page=detail&num=15975 FutureOS] [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/464-and-ram-extension/ Behaviour of RAM mode &C3] [https://www.cpcwiki.eu/forum/amstrad-cpc-hardware/upgrading-a-cpc-464-in-2022/ More on the issue] RAM expansion bug on CPC464/664
+
*[https://www.cpc-power.com/index.php?page=detail&num=135 Batman The Movie] [https://www.cpc-power.com/index.php?page=detail&num=2318 Turrican] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=80 Technical explanation] CPC keyboard clash
+
*[https://www.cpcwiki.eu/forum/emulators/amstrad-cpc-'acid'-test/ "Acid" test suite] [https://cpctech.cpcwiki.de/download/test.zip] [http://ace.cpcscene.net/tests:arnold_test_suite Tests results in ACE] [https://www.cpc-power.com/index.php?page=detail&num=17738 PPI tests] Chips tests by arnoldemu
+
*[http://www.winape.net/downloads.jsp Plus Test] [https://www.cpc-power.com/index.php?page=detail&num=15242] CPC and CPC+ Emulator test suite (including Instruction and Interrupt timing tests)
+
  
== Amstrad Plus ==
+
CPC mouse support is as follows:
*[https://www.cpc-power.com/index.php?page=detail&num=9627 Official Plus diagnostics cartridge] [[File:Roudoudou CPR tests.zip]] [https://www.cpcwiki.eu/forum/emulators/amstrad-cpc-'acid'-test/75/] Plus testing tools
+
*[[AMX Mouse|AMX mouse (1-bit axis, 3 buttons (CPC) / 2 buttons (CPC+))]] or compatible ([https://imperium.spinpoint.org/ Imperium Solo], [[Dk'tronics Mouse Interface|Dk'Tronics Genius adapter]], [https://cpcrulez.fr/hardware_montage_8x-geos-mouse_am_joystick-port.htm DIY GEOS adapter], [[Atari-ST mouse adapter]], [[PS2Mouse]], [[Marconi|Marconi Trackerball]]) is emulated by ACE, ACE-DL, Caprice Forever, WinAPE, Arnold, Virtual CPC, CPCemu, Retro Virtual Machine
*[https://www.cpc-power.com/index.php?page=detail&num=8308 4096 Colors Preview] [https://www.cpc-power.com/index.php?page=detail&num=7407 CPC+ First Demo]  [https://www.cpc-power.com/index.php?page=detail&num=8443 Simply The Bests] [https://www.cpc-power.com/index.php?page=detail&num=7411 ASM Intro 1] [https://www.cpc-power.com/index.php?page=detail&num=18789 Veteran] [https://www.cpc-power.com/index.php?page=detail&num=9472 Revival'n Impact coop] [https://www.cpc-power.com/index.php?page=detail&num=3959 Fluff] [https://www.cpc-power.com/index.php?page=detail&num=3622 Space Gun] [https://www.cpc-power.com/index.php?page=detail&num=1682 Prehistorik 2] [https://www.cpc-power.com/index.php?page=detail&num=3575 No Exit] ASIC effects
+
*[[Kempston Mouse|Kempston mouse (8-bit axis, 2 buttons)]] is emulated by ACE, ACE-DL, Arnold
*[https://www.cpc-power.com/index.php?page=detail&num=3788 Frogger] [https://www.cpc-power.com/index.php?page=detail&num=4721 Rick Dangerous 6128+] [https://www.cpc-power.com/index.php?page=detail&num=17818 La culotte de Zelda] [https://www.cpc-power.com/index.php?page=detail&num=12013 Flappy Rulez] [https://www.cpc-power.com/index.php?page=detail&num=13363 Picrocs] [https://www.cpc-power.com/index.php?page=detail&num=14639 Sudoplus] [https://www.cpc-power.com/index.php?page=detail&num=15142 Ghosts'n Goblins] [https://www.cpc-power.com/index.php?page=detail&num=18946 Goldorak Versus] Homebrews
+
*[[CPC-Mousepack 2.0|Reisware mouse (8-bit axis, 2 buttons)]] is emulated by CPCemu
*[https://www.cpc-power.com/index.php?page=detail&num=8874 6128 Plus Dma] [https://www.cpc-power.com/index.php?page=detail&num=14939 Eerie Forest] [https://www.cpc-power.com/index.php?page=detail&num=14940 CRTC3] [https://cpcrulez.fr/demostestDO_fairy-breakpoint_2010.htm Fairy] [https://soundtrackerdma.cpcscene.net/doku.php?id=en:download Soundtracker DMA] To test DMA and to compare the PSG output with the output from a real Amstrad Plus
+
*[[Symbiface II|Symbiface II PS/2 mouse (6-bit axis, 5 buttons, scroll wheel)]] is emulated by ACE-DL, Caprice Forever, MAME, WinAPE, Arnold, CPCemu
*[https://www.cpc-power.com/index.php?page=detail&num=18016 Bulles] [https://www.cpc-power.com/index.php?page=detail&num=7532 X-Mas 2008] [https://www.cpc-power.com/index.php?page=detail&num=8588 Synergy] [https://www.cpc-power.com/index.php?page=detail&num=7410 Mir Station] [https://www.cpc-power.com/index.php?page=detail&num=13142 BarBar] [https://www.cpc-power.com/index.php?page=detail&num=7530 Delirium Tremens] [https://www.cpc-power.com/index.php?page=detail&num=9169 Funerapolis] [https://www.cpc-power.com/index.php?page=detail&num=7935 Sappy] [https://www.cpc-power.com/index.php?page=detail&num=19239 USS Cygnus 192] [https://www.cpc-power.com/index.php?page=detail&num=17979 GX8K] To test hardware sprites emulation
+
*[[MultiPlay|MultiPlay mouse (4-bit axis, 3 buttons)]] or compatible ([[Symbiface 3|Symbiface3 / RSF3 mouse]]) is emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, Arnold, Retro Virtual Machine
 +
*[[Albireo|Albireo mouse (8-bit axis, 3 buttons)]], [https://youtu.be/4Rm1psdePbg Imperium Solo custom mode (6-bit axis, 3 buttons)] are not supported
  
== Colorimetry ==
+
Note: AMX and MultiPlay are the most widely supported mice in CPC programs.
*[https://www.grimware.org/doku.php/documentations/devices/gatearray Minor difference in colorimetry between CPC and Plus] On CPC (not Plus!), green half-intensity is significantly higher than red and blue half-intensities
+
*Major difference in colorimetry between the real Amstrad CTM644 display and emulators display:
+
<gallery>
+
Border 8 - real CPC display.png|Border 8 on real CPC
+
Border 8 - real Plus display.png|Border 8 on real Plus
+
Border 8 - emulator display.png|Border 8 on emulators
+
Palette - real CPC.png|Palette on real CPC
+
Palette - real Plus.png|Palette on real Plus
+
Palette - emulator.png|Palette on emulators
+
True CTM colorimetry.png|Colorimetry on real CPC
+
CTM Emulator Shader colorimetry.png|Colorimetry on emulators
+
</gallery>
+
  
== Graphics ==
+
=== Hacking devices ===
*[https://shaker.logonsystem.eu/ Shakerland] Ultra accurate CRTC documentation and its associated CPC testing tool
+
*[https://www.cpc-power.com/index.php?page=detail&num=8524 Equalizor] [https://forum.system-cfg.com/viewtopic.php?p=229698#p229698 Revolog] [https://forum.system-cfg.com/viewtopic.php?f=24&t=11535&start=285 Technical explanation] Unpredictable behaviour of the real CRTC type 1 chip. We can classify these behaviours as CRTC types 1a and 1b
+
*[https://www.cpc-power.com/index.php?page=detail&num=12906 HSYNC test] [https://www.cpc-power.com/index.php?page=detail&num=16466 Split-Rasters Test CRTC1] [https://www.cpc-power.com/index.php?page=detail&num=15519 Les split-rasters] [https://www.cpc-power.com/index.php?page=database&lemot=cote%gamers Côté Gamers] [https://www.cpc-power.com/index.php?page=detail&num=16025 Out-Screen II] [https://www.planetemu.net/rom/amstrad-cpc-applications-dsk/crtc-editor-v5-1-1994-brain-of-chaos CRTC editor] [https://www.cpc-power.com/index.php?page=detail&num=15280 CRTC software] CRTC testing tools
+
*[http://logon.system.free.fr/down/shaker_addon.dsk Pixel 1 Horizontal Hard Scroll for all CRTCs] [https://www.cpc-power.com/index.php?page=detail&num=9102 Vertical Hard Scroll 100%] [https://cpcrulez.fr/coding_src-demo-smooth_crtc_register_3_scrolling_test.htm Smooth CRTC Register 3 scrolling test] [https://www.cpc-power.com/index.php?page=detail&num=1949 Skate Wars] [https://www.cpc-power.com/index.php?page=detail&num=68 Out of this World] [https://www.cpc-power.com/index.php?page=detail&num=2047 Star Avenger] [https://www.cpc-power.com/index.php?page=detail&num=159 Killer Cobra] [https://www.cpc-power.com/index.php?page=detail&num=10465 Edge Grinder] [https://www.cpc-power.com/index.php?page=detail&num=10072 Relentless] [https://www.cpc-power.com/index.php?page=detail&num=1982 Warhawk] [https://www.cpc-power.com/index.php?page=detail&num=99 Mission Genocide] [https://www.cpc-power.com/index.php?page=detail&num=1028 Axys] [https://www.cpc-power.com/index.php?page=detail&num=15809 Red Sunset] [https://www.cpc-power.com/index.php?page=detail&num=18843 Hyperdrive] One-way hardware scrolling
+
*[https://www.cpc-power.com/index.php?page=detail&num=1701 Prohibition] [https://www.cpc-power.com/index.php?page=detail&num=2248 Titan] [https://www.cpc-power.com/index.php?page=detail&num=2267 Tornado Low Level] [https://www.cpc-power.com/index.php?page=detail&num=805 Realm] [https://www.cpc-power.com/index.php?page=detail&num=1546 Octoplex] [https://www.cpc-power.com/index.php?page=detail&num=918 Bio Spheres] [https://www.cpc-power.com/index.php?page=detail&num=2089 Street Machine] [https://www.cpc-power.com/index.php?page=detail&num=1288 Led Storm] [https://www.cpc-power.com/index.php?page=detail&num=974 Ghosts'n Goblins] [https://www.cpc-power.com/index.php?page=detail&num=976 Ghouls'n Ghosts] [https://www.cpc-power.com/index.php?page=detail&num=1290 Legend of Kage] [https://www.cpc-power.com/index.php?page=detail&num=460 Boulder Dash] [https://www.cpc-power.com/index.php?page=detail&num=1173 Eagle's Nest] [https://www.cpc-power.com/index.php?page=detail&num=994 Gothik] [https://www.cpc-power.com/index.php?page=detail&num=1698 Profanation] [https://www.cpc-power.com/index.php?page=detail&num=2098 Striker in the Crypts of Trogan] [https://www.cpc-power.com/index.php?page=detail&num=2119 Super Cauldron] Multi-directional hardware scrolling
+
*[https://www.cpc-power.com/index.php?page=detail&num=7514 BSC 91] [https://www.cpc-power.com/index.php?page=detail&num=8772 Voyage 1993] [https://www.cpc-power.com/index.php?page=detail&num=7751 OVL '96] [https://www.cpc-power.com/index.php?page=detail&num=7662 Byte 98] [https://www.cpc-power.com/index.php?page=detail&num=8623 Unique] [https://www.cpc-power.com/index.php?page=detail&num=7910 Paradise] [https://www.cpc-power.com/index.php?page=detail&num=8621 Power System] [https://www.cpc-power.com/index.php?page=detail&num=8875 Prodatron] [https://www.cpc-power.com/index.php?page=detail&num=7744 Longshot] [https://www.cpc-power.com/index.php?page=detail&num=7668 Amazing] [https://www.cpc-power.com/index.php?page=detail&num=7479 Madness] [https://www.cpc-power.com/index.php?page=detail&num=8259 Chany Dream End] [https://www.cpc-power.com/index.php?page=detail&num=8615 Welcom-X 2] [https://www.cpc-power.com/index.php?page=detail&num=7591 S&Koh] [https://www.cpc-power.com/index.php?page=detail&num=8041 Other World 3] [https://www.cpc-power.com/index.php?page=detail&num=7648 Big'O Full'O Dem'O] [https://www.cpc-power.com/index.php?page=detail&num=7765 Not Dead] [https://www.cpc-power.com/index.php?page=detail&num=7543 Odyssey] [https://www.cpc-power.com/index.php?page=detail&num=7736 Croco Chanel] [https://www.cpc-power.com/index.php?page=detail&num=7828 Tire Au Flan]  Early demos, so they were developed without CPC emulator bias
+
*[https://www.cpc-power.com/index.php?page=detail&num=2799 Battro] [https://www.cpc-power.com/index.php?page=detail&num=15298 Still Scrolling] [https://www.cpc-power.com/index.php?page=detail&num=15102 PhX] [https://www.cpc-power.com/index.php?page=detail&num=9181 Bloc Us] [https://www.cpc-power.com/index.php?page=detail&num=9248 Wake Up] [https://www.cpc-power.com/index.php?page=detail&num=19313 Stand Up] [https://www.cpc-power.com/index.php?page=detail&num=9589 Yet Another Plasma] [https://www.cpc-power.com/index.php?page=detail&num=14225 Logon's Run] [https://www.cpc-power.com/index.php?page=detail&num=9970 Still Rising] [https://www.cpc-power.com/index.php?page=database&lemot=onescreen Onescreen Colonies] [https://www.cpc-power.com/index.php?page=detail&num=16067 Gloire à Piou] [https://www.cpc-power.com/index.php?page=detail&num=7729 DTC] [https://www.cpc-power.com/index.php?page=detail&num=12683 Points Barres] [https://www.cpc-power.com/index.php?page=detail&num=16068 Octopus Pocus] [https://www.cpc-power.com/index.php?page=detail&num=18794 FMR CPC] [https://www.cpc-power.com/index.php?page=detail&num=8552 Synergy 2] [https://www.cpc-power.com/index.php?page=detail&num=15209 Scroll Factory] [https://www.cpc-power.com/index.php?page=detail&num=19024 The One] [https://www.cpc-power.com/index.php?page=detail&num=7728 DemoIzArt] CRTC effects
+
*[https://www.cpc-power.com/index.php?page=detail&num=76 Les Mondes Parallèles] [https://www.cpc-power.com/index.php?page=detail&num=66 Paranoia] [https://www.cpc-power.com/index.php?page=detail&num=78 Molecularr 2] [https://www.cpc-power.com/index.php?page=database&lemot=megablasters Megablasters] [https://www.cpc-power.com/index.php?page=detail&num=12649 Quadraster] [https://www.cpc-power.com/index.php?page=detail&num=2369 Groops] [https://www.cpc-power.com/index.php?page=detail&num=3963 Sudoku Master] [https://www.cpc-power.com/index.php?page=detail&num=10009 Overkoban] [https://www.cpc-power.com/index.php?page=detail&num=17786 Prince Dastan Sokoban Within] [https://www.cpc-power.com/index.php?page=detail&num=17610 Deva Drifter] [https://www.cpc-power.com/index.php?page=detail&num=17197 Hexavirus v0] [https://www.cpc-power.com/index.php?page=detail&num=15985 A tribute to the sisters] True overscan games
+
*[https://www.cpcwiki.eu/forum/programming/mode-3/ Mode 3 Test] [https://www.cpc-power.com/index.php?page=detail&num=12905 "Mode 5" Viewer] [https://www.cpc-power.com/index.php?page=detail&num=18680 Pixel Free] [https://www.cpc-power.com/index.php?page=detail&num=14259 Test interlace color] [https://www.cpc-power.com/index.php?page=detail&num=13136 Interlace viewer] [https://www.cpc-power.com/index.php?page=detail&num=7701 Climax] [https://www.cpc-power.com/index.php?page=detail&num=13139 Perfect Pix Paint] [https://www.cpc-power.com/index.php?page=detail&num=13359 Imperial Mahjong] Special graphics modes
+
*[https://www.cpc-power.com/index.php?page=detail&num=16027 Mire] [https://www.cpc-power.com/index.php?page=detail&num=16722 Mir'Color] [https://www.cpc-power.com/index.php?page=detail&num=7826 Climax-G] [https://www.cpc-power.com/index.php?page=detail&num=7937 Fatal Beauties] [https://www.cpc-power.com/index.php?page=detail&num=8307 4 Sins] [https://www.cpc-power.com/index.php?page=detail&num=7897 Twinblast] [https://www.cpc-power.com/index.php?page=detail&num=8081 MCS 6] [https://www.cpc-power.com/index.php?page=detail&num=7593 Schadel] [https://www.cpc-power.com/index.php?page=detail&num=2224 Thunder Blade] [https://www.cpc-power.com/index.php?page=detail&num=2318 Turrican] To test the VDU
+
  
== Peripherals ==
+
*[[Multiface II]] is emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, MAME, WinAPE, Arnold
*[https://www.cpc-power.com/index.php?page=database&lemot=hardware_magnum Magnum Light Phaser] [https://www.cpc-power.com/index.php?page=detail&num=3583 SkeetShoot] [https://www.cpc-power.com/index.php?page=detail&num=3584 The Enforcer] [https://www.cpc-power.com/index.php?page=detail&num=3992 Dk'Tronics Light Pen] [https://www.cpc-power.com/index.php?page=detail&num=4955 Light Pen Mark II] To test lightguns and lightpens connected to expansion port
+
*[[Hackit|HackIt]] is emulated by ACE-DL, Arnold
*[https://www.cpc-power.com/index.php?page=database&lemot=hardware_phaser_loriciels West Phaser] [https://www.cpc-power.com/index.php?page=database&lemot=hardware_gunstick Gunstick] [https://www.cpc-power.com/index.php?page=detail&num=4303 Trojan LP-1] To test lightguns and lightpens connected to joystick port
+
*[[Mirage Imager]] is emulated by ACE
*[https://www.cpc-power.com/index.php?page=database&lemot=SSA-1 SSA-1 software list] [https://www.cpc-power.com/index.php?page=database&lemot=DK%27Tronics%20Speech%20Synthesizer Dk'Tronics software list] [https://www.cpc-power.com/index.php?page=database&lemot=TMPI%20speech%20synthesizer TMPI software list] To test speech synthesizers emulation
+
*[[Transtape]] is emulated by MAME
*[https://www.cpc-power.com/index.php?page=detail&num=7535 Digital Orgasm] [https://www.cpc-power.com/index.php?page=database&lemot=Digitracker Digitracker] [[File:DigiTracker Amdrum.zip]] [https://www.cpcwiki.eu/forum/applications/prodatrons-digitrackker-1-4-now-vor-lambdaspeak-amdrum-in-8-bit-mode!/] [https://www.cpc-power.com/index.php?page=database&lemot=Amdrum Amdrum] To test [[Digiblaster]] and [[Amdrum]] soundcards emulation
+
*[[PDS development system|Programmers Development System]] is emulated by MAME
*[[SymAmp]] [https://framagit.org/shinra/vgmplay VGMplay] [http://www.roudoudou.com/ACE-DL/ 4200 VGM musicfiles pack] [https://github.com/lambdamikel/BluePillCPC/tree/main/cpc/s2p BluePillCPC] To test [[Willy]] OPL3 and MIDI emulation
+
*[[Demon Development Cartridge]], [[Action Replay AMX]], [[Disc Wizard]] are not supported
*[https://www.cpc-power.com/index.php?page=detail&num=12589 ProText] [https://www.cpc-power.com/index.php?page=detail&num=4670 ProSpell] [https://www.cpc-power.com/index.php?page=detail&num=4668 ProPrint] [https://www.cpc-power.com/index.php?page=detail&num=5551 Impr'Image] To test printer emulation
+
*[https://www.cpc-power.com/index.php?page=detail&num=4012 Advanced OCP Art Studio] To test [[AMX Mouse|AMX]] and [[Kempston Mouse|Kempston mouse]] emulation
+
*[[HDCPM]] [[UniDOS]] [http://www.roudoudou.com/ACE-DL/ UniLOAD 60MB archive] [http://www.roudoudou.com/ACE-DL/ SymbOS 45MB disk-image] To test mass-storage, RTC and modern mouse (scroll wheel) emulation
+
*[https://www.cpc-power.com/index.php?page=detail&num=12972 X-MEM FW] [https://www.cpc-power.com/index.php?page=detail&num=19236 CatRun] [https://www.cpc-power.com/index.php?page=detail&num=18901 CowSay] [http://impdraw.wikidot.com iMPsuite] [https://www.cpc-power.com/index.php?page=detail&num=11578 GOS+] [https://www.cpc-power.com/index.php?page=detail&num=6353 Utopia] To test ROMboard emulation
+
*[https://abalore.com/alcon2020.html Alcon 2020] [[Converted GX4000 Software]] To test the [[Play2CPC]] emulation
+
*[http://theswordofianna.retroworks.es/ The Sword of Ianna] [http://retroworks.es/php/game_en.php?id=11 Brunilda] [http://www.dandare.es/Proyectos_Dandare/Descargas.html MojonTwins romset] To test the [[Dandanator]] emulation
+
*[https://www.cpc-power.com/index.php?page=protection&lenom=Multiface%202%20Protection Anti-Multiface II software list] [https://www.cpc-power.com/index.php?page=detail&num=1980 War in Middle Earth] [https://www.cpc-power.com/index.php?page=detail&num=1322 Zap't'Balls advanced] [https://www.cpc-power.com/index.php?page=detail&num=5266 The Insider] To test [[Multiface II]] emulation
+
  
== Copy-protection ==
+
<br>
*[https://cpctech.cpcwiki.de/download/fdctest.zip FDC test suite] [https://cpctech.cpcwiki.de/download/drivetest.zip Disk drive tests] [https://cpctech.cpcwiki.de/download/cdttst.zip CDT/TZX test suite for emulators] Set of tests by arnoldemu
+
*[https://www.cpc-power.com/index.php?page=detail&num=5002 Tape Head Azimuth] [https://www.cpc-power.com/index.php?page=detail&num=4194 Ultra Son] [https://www.cpc-power.com/index.php?page=detail&num=10475 Soft-Lok] [https://www.cpc-power.com/index.php?page=detail&num=4718 Bonzo Super Meddler] [https://www.cpc-power.com/index.php?page=detail&num=5059 SpeedTrans] [https://www.cpc-power.com/index.php?page=detail&num=5803 Transformateur] [https://www.cpc-power.com/index.php?page=detail&num=6057 Deconnect] [https://www.cpc-power.com/index.php?page=detail&num=1626 Peur sur Amityville] [https://www.cpc-power.com/index.php?page=detail&num=3871 Computer Hits] [https://www.cpc-power.com/index.php?page=detail&num=1359 Marmelade] [https://www.cpc-power.com/index.php?page=detail&num=1412 Mickey Mouse] [https://www.cpc-power.com/index.php?page=detail&num=83 Astro Marine Corps] [https://www.cpc-power.com/index.php?page=detail&num=773 Druid] [https://www.cpc-power.com/index.php?page=detail&num=10585 Breaking Baud] To test Tape emulation
+
*[https://www.cpc-power.com/index.php?page=detail&num=19368 FatMag 2] [https://www.cpc-power.com/index.php?page=detail&num=9211 Backtro] [https://www.cpc-power.com/index.php?page=detail&num=7405 5KB 3] [https://www.cpc-power.com/index.php?page=detail&num=8746 The Demo] [https://www.cpc-power.com/index.php?page=detail&num=13108 CPC 30th Anniversary] [https://www.cpc-power.com/index.php?page=detail&num=7542 Midline Process] [https://www.cpc-power.com/index.php?page=detail&num=17902 Can Robots Take Control] [https://www.cpc-power.com/index.php?page=detail&num=10030 Phortem] [https://www.cpc-power.com/index.php?page=detail&num=9156 Batman Forever] [https://www.cpc-power.com/index.php?page=detail&num=16736 Pinball Dreams] [https://www.cpc-power.com/index.php?page=detail&num=7174 R-Type] [https://www.cpc-power.com/index.php?page=detail&num=6661 Nheredia] [https://www.cpc-power.com/index.php?page=detail&num=13426 Doomsday Lost Echoes] [https://www.cpc-power.com/index.php?page=detail&num=4025 Orion Prime] Musical loader, Multi-drives, 3.5 inch (dual-head and 80 tracks) floppy drives support
+
*[https://www.cpc-power.com/index.php?page=detail&num=10029 RPM] [https://www.cpc-power.com/index.php?page=detail&num=15518 DskTest] [https://www.cpc-power.com/index.php?page=detail&num=14201 Crazy] [https://cpcrulez.fr/applications_disc-dlfrsilver_dump_tool_test_suite.htm Dlfrsilver Dump Tool Test Suite] [https://www.cpc-power.com/index.php?page=detail&num=4812 Format II] [[ParaDOS]] [https://www.cpc-power.com/index.php?page=detail&num=4933 Xexor] [https://www.cpc-power.com/index.php?page=detail&num=6118 Discology] [https://www.cpc-power.com/index.php?page=detail&num=4179 Hercule II] [https://www.cpc-power.com/index.php?page=detail&num=16060 UltraDisc] [https://www.cpc-power.com/index.php?page=detail&num=5244 Disc'o'Magic] [https://www.cpc-power.com/index.php?page=detail&num=9297 Multi Mark] To test FDC emulation
+
*[https://cpcrulez.fr/demostestDM_fatmag_01.htm FatMag] The HFE trackload version is designed to rigorously test the FDC emulation [https://www.cpc-power.com/index.php?page=detail&num=17853 Open Tower Defense] Emulator detection through a FDC test [https://www.cpc-power.com/index.php?page=detail&num=931 Fugitif] Disk swapping detection
+
*[https://www.cpc-power.com/index.php?page=detail&num=12051 Demonstration of KBI protection] [https://www.cpc-power.com/index.php?page=detail&num=1589 Pacific] [https://www.cpc-power.com/index.php?page=detail&num=1650 Platoon] [https://www.cpc-power.com/index.php?page=detail&num=1814 Robinson Crusoe] [https://www.cpc-power.com/index.php?page=detail&num=660 Daley Thompson's Olympic Challenge] [https://www.cpc-power.com/index.php?page=detail&num=4064 Les Hits de l'Aventure] Protection based on weak bits
+
*[https://www.cpc-power.com/index.php?page=detail&num=839 E.X.I.T] [https://www.cpc-power.com/index.php?page=detail&num=1501 Le Nécromancien] [https://www.cpc-power.com/index.php?page=detail&num=2195 Tensions] [https://www.cpc-power.com/index.php?page=detail&num=1784 Wild Streets] [https://www.cpc-power.com/index.php?page=detail&num=1958 Skyx] [https://www.cpc-power.com/index.php?page=detail&num=111 Turbo Cup] [https://www.cpc-power.com/index.php?page=detail&num=2024 Sphaira] [https://www.cpc-power.com/index.php?page=detail&num=780 Dwarf] [https://www.cpc-power.com/index.php?page=detail&num=1873 Sapiens] [https://www.cpc-power.com/index.php?page=detail&num=612 Corsarios] [https://www.cpc-power.com/index.php?page=detail&num=582 Cobra] [https://www.cpc-power.com/index.php?page=detail&num=744 Eden Blues] [https://www.cpc-power.com/index.php?page=detail&num=1390 M'enfin] [https://www.cpc-power.com/index.php?page=detail&num=1420 Mike & Moko] [https://www.cpc-power.com/index.php?page=detail&num=4089 Equinoxe] [https://www.cpc-power.com/index.php?page=detail&num=5545 Vocabulaire CM] Protection based on custom GAPS data
+
*[https://www.cpc-power.com/index.php?page=detail&num=741 Donkey Kong] [https://www.cpc-power.com/index.php?page=detail&num=1887 Scott Winder Reporter] Destructive copy-protection [https://www.cpc-power.com/index.php?page=detail&num=1716 Puffy's Saga] [https://www.cpc-power.com/index.php?page=detail&num=699 Defender of the Crown] [https://www.cpc-power.com/index.php?page=detail&num=1354 Le Maraudeur] [https://www.cpc-power.com/index.php?page=detail&num=1699 Profession Détective] [https://www.cpc-power.com/index.php?page=detail&num=1730 Qin] [https://www.cpc-power.com/index.php?page=detail&num=1005 Basun] Some other copy-protected disk-images
+
*[https://www.cpc-power.com/cpcarchives/index.php?page=articles&cat=12 Protection schemes documented] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=9 Lenslok] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=207 Gaps] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=384 Latis] [https://simonowen.com/samdisk/sys_cpc/ Copy-protection in EDSK images] [https://forum.system-cfg.com/viewtopic.php?p=195705#p195705 Implementation in SugarBox emulator] [https://64nops.wordpress.com/2021/07/04/a-la-decouverte-du-fdc/ FDC blog articles] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=435 Anti-copy bug] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=375 Baudload and Trackload list] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=38 Autoboot] Technical explanations
+
  
== Other ==
+
= Rewind feature =
*[https://www.cpc-power.com/index.php?page=detail&num=41 Trantor] [https://www.cpc-power.com/index.php?page=detail&num=204 3D Starfighter] [https://www.cpc-power.com/index.php?page=detail&num=726 Treasure Island Dizzy] [https://www.cpc-power.com/index.php?page=detail&num=971 Ghost Hunters] [https://www.cpc-power.com/index.php?page=detail&num=2132 Super Robin Hood] [https://www.cpc-power.com/index.php?page=detail&num=237 Advanced Pinball Simulator] [https://www.cpc-power.com/index.php?page=detail&num=1200 Jet Bike Simulator] [https://www.cpc-power.com/index.php?page=detail&num=1002 Grand Prix Simulator] [https://www.cpc-power.com/index.php?page=detail&num=183 Darts 180] [https://www.cpc-power.com/index.php?page=detail&num=1243 Killapede] [https://www.cpc-power.com/index.php?page=detail&num=1194 Jail Break] [https://www.cpc-power.com/index.php?page=detail&num=1815 Robocop] [https://www.cpc-power.com/index.php?page=detail&num=100 Chase HQ] [https://www.cpc-power.com/index.php?page=detail&num=1926 Shinobi] [https://www.cpc-power.com/index.php?page=detail&num=8892 4-Bit Digi Try] Software English vocal digits
+
 
*[https://www.cpc-power.com/index.php?page=detail&num=1349 Le Manoir de Mortvielle] [https://www.cpc-power.com/index.php?page=detail&num=1098 Hold-Up] [https://www.cpc-power.com/index.php?page=detail&num=910 Forteresse] [https://www.cpc-power.com/index.php?page=detail&num=511 Canadair] [https://www.cpc-power.com/index.php?page=detail&num=1140 L'île] [https://www.cpc-power.com/index.php?page=detail&num=1199 Jaws] [https://www.cpc-power.com/index.php?page=detail&num=1102 Holocauste] [https://www.cpc-power.com/index.php?page=detail&num=132 Afteroids] [https://www.cpc-power.com/index.php?page=detail&num=879 Fire & Forget] [https://www.cpc-power.com/index.php?page=detail&num=1433 Xyphoes Fantasy] [https://www.cpc-power.com/index.php?page=detail&num=17000 Space Race] [https://www.cpc-power.com/index.php?page=detail&num=7456 Yao demo] Other software sound effects
+
The RetroArch CPC emulator has the most convenient rewind feature: [https://youtu.be/YwilYlSe5LQ Demonstration]. To reverse the game, the user press and hold the rewind button. And at any point, releasing the button makes time goes forward again.
*[https://www.cpc-power.com/index.php?page=detail&num=9179 Now that's what I call Chip Tunes] [https://www.cpc-power.com/index.php?page=detail&num=18904 Amstream music-disk] [https://www.cpc-power.com/index.php?page=detail&num=10467 We Are All Old] [https://www.cpc-power.com/index.php?page=detail&num=18997 Amstrad CPC Mix] [https://www.youtube.com/@hermol2903/playlists YM!Rulez (real hardware recordings)] [https://www.cpc-power.com/index.php?page=detail&num=18265 Sintetizador de Sonidos] To test the PSG emulation
+
 
*[https://www.cpc-power.com/index.php?page=detail&num=19283 Raytracing in BASIC] [https://www.cpc-power.com/index.php?page=detail&num=15685 Julia Fractal] To benchmark emulators using their fullspeed mode
+
ACE-DL also has a rewind feature, but it is not as good as it could be: [https://youtu.be/wIKGvpnJLUo Demonstration].
 +
 
 +
One 128KB snapshot per frame allows 10 seconds of rewind with 64MB (128KB * 50 frames * 10 seconds) of memory for the rewind feature. A more efficient method saves only the previous RAM values that are changed between 2 frames, allowing much longer rewinds (even if the CPC is equipped with 4MB RAM expansion) while using less memory, as shown by the GBA emulator [https://youtu.be/Sfc_1NKbiKg SkyEmu].
 +
 
 +
For step-back debugging, the emulator just needs to store the time when the previous instruction was executed so that he can go back to that instruction. In the same way, emulators can provide access to the previous HBL, IRQ, VBL, etc.
 +
 
 +
<br>
  
 
= File format specifications =
 
= File format specifications =
  
 
*[https://www.cpcwiki.eu/index.php/Format:DSK_disk_image_file_format DSK / EDSK] [https://hxc2001.com/download/floppy_drive_emulator/SDCard_HxC_Floppy_Emulator_HFE_file_format.pdf HFE] [http://info-coach.fr/atari/documents/_mydoc/IPF-Documentation.pdf IPF] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=386 CTRAW] [https://www.cbmstuff.com/downloads/scp/scp_image_specs.txt SCP] File formats of disk-image
 
*[https://www.cpcwiki.eu/index.php/Format:DSK_disk_image_file_format DSK / EDSK] [https://hxc2001.com/download/floppy_drive_emulator/SDCard_HxC_Floppy_Emulator_HFE_file_format.pdf HFE] [http://info-coach.fr/atari/documents/_mydoc/IPF-Documentation.pdf IPF] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=386 CTRAW] [https://www.cbmstuff.com/downloads/scp/scp_image_specs.txt SCP] File formats of disk-image
*[https://www.cpcwiki.eu/index.php/Format:CDT_tape_image_file_format CDT / TZX] [http://zxds.raxoft.cz/pzx.html PZX] [https://acorn.huininga.nl/pub/unsorted/software/pc/CSW/csw.html CSW] [http://soundfile.sapp.org/doc/WaveFormat/ WAV] File formats of tape-image
+
*[https://www.cpcwiki.eu/index.php/Format:CDT_tape_image_file_format CDT / TZX] [http://zxds.raxoft.cz/pzx.html PZX] [https://acorn.huininga.nl/pub/unsorted/software/pc/CSW/csw.html CSW] [https://xiph.org/flac/format.html FLAC] [http://soundfile.sapp.org/doc/WaveFormat/ WAV] [http://fileformats.archiveteam.org/wiki/MP3 MP3] File formats of tape-image
 
*[https://www.cpcwiki.eu/index.php/Format:CPR_CPC_Plus_cartridge_file_format CPR cartridge] [https://www.cpcwiki.eu/index.php/Format:SNA_snapshot_file_format SNA snapshot] Other file formats used in CPC emulators
 
*[https://www.cpcwiki.eu/index.php/Format:CPR_CPC_Plus_cartridge_file_format CPR cartridge] [https://www.cpcwiki.eu/index.php/Format:SNA_snapshot_file_format SNA snapshot] Other file formats used in CPC emulators
 
*[https://www.cpcwiki.eu/forum/emulators/javacpc-desktop-available-as-beta!/100/ Official SNR session spec] [https://www.cpcwiki.eu/forum/emulators/playback-format-for-scenes/ Discussion about SNR format] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=10 Archive of SNR sessions]
 
*[https://www.cpcwiki.eu/forum/emulators/javacpc-desktop-available-as-beta!/100/ Official SNR session spec] [https://www.cpcwiki.eu/forum/emulators/playback-format-for-scenes/ Discussion about SNR format] [https://www.cpc-power.com/cpcarchives/index.php?page=articles&num=10 Archive of SNR sessions]
*[http://leonard.oxg.free.fr/ymformat.html YM] [https://www.cpcwiki.eu/index.php/AYC AYC] [https://vgmrips.net/wiki/VGM_Specification VGM] Soundchip logging file formats
+
*[http://leonard.oxg.free.fr/ymformat.html YM] [https://www.cpcwiki.eu/index.php/AYC AYC] [https://www.cpcwiki.eu/index.php/MYM MYM] [https://vgmrips.net/wiki/VGM_Specification VGM] Soundchip logging file formats
*[https://en.wikipedia.org/wiki/IMG_(file_format) IMG] [https://web.archive.org/web/20120202144328/http://download.microsoft.com/download/f/f/e/ffef50a5-07dd-4cf8-aaa3-442c0673a029/Virtual%20Hard%20Disk%20Format%20Spec_10_18_06.doc VHD] [https://github.com/gasman/hdfmonkey HDF] File formats of flat hard-drive image
+
 
*[https://shaker.logonsystem.eu/sslcsl CSL] Cpc Scripting Language, a macro/scripting system to automate emulators
 
*[https://shaker.logonsystem.eu/sslcsl CSL] Cpc Scripting Language, a macro/scripting system to automate emulators
 +
*[https://github.com/redbug26/crocods-core/wiki/kcr KCR] Game launching configuration
 +
 +
<br>
  
 
= Emulation Tools  =
 
= Emulation Tools  =
  
*[http://www.cpcmania.com/news.htm CPCDiskXP] [https://web.archive.org/web/20230602152816/https://cpc-live.com/data/index.php?dir=-tools DiskUtil] [https://github.com/Tom1975/SugarConvDsk SugarConvDsk] [https://github.com/jeromelesaux/dsk DSK] [https://github.com/cpcsdk/idsk iDSK] [[Dsktools|Dsktools]] [[ManageDSK|ManageDSK]] [[WriteDSK|WriteDSK]] [https://simonowen.com/samdisk/ SAMdisk] [https://github.com/damieng/DiskImageManager Disk Image Manager] [https://github.com/neuro-sys/sector-cpc sector-cpc] [https://hxc2001.com/download/floppy_drive_emulator/ HxCFloppyEmulator software] [https://github.com/keirf/disk-utilities/ Disk Utilities] Set of tools about disk-images
+
*[http://www.cpcmania.com/news.htm CPCDiskXP] [https://web.archive.org/web/20230602152816/https://cpc-live.com/data/index.php?dir=-tools DiskUtil] [https://github.com/Tom1975/SugarConvDsk SugarConvDsk] [https://github.com/jeromelesaux/dsk DSK] [https://github.com/cpcsdk/idsk iDSK] [https://github.com/cpcitor/dsktools dsktools] [https://github.com/EdouardBERGE/edsktool edsktool] [[ManageDSK|ManageDSK]] [[WriteDSK|WriteDSK]] [https://simonowen.com/samdisk/ SAMdisk] [https://github.com/damieng/DiskImageManager Disk Image Manager] [https://github.com/neuro-sys/sector-cpc sector-cpc] [https://hxc2001.com/download/floppy_drive_emulator/ HxCFloppyEmulator software] [https://github.com/keirf/disk-utilities/ Disk Utilities] [https://github.com/ClaireCheshireCat/dsk-lua dsk-lua] [https://github.com/karmic64/upd765pro upd765pro] [https://github.com/muckypaws/AmstradDSKExplorer Amstrad DSK Explorer] [http://www.shlock.co.uk/Utils/OmniFlop/OmniFlop.htm OmniFlop] [https://github.com/tomas-nestorovic/RIDE RIDE] [https://github.com/cpcsdk/hideur_maikeur Hideur Maikeur] Set of tools about disk-images
*[http://www.cpcmania.com/news.htm CPCTapeXP] [https://web.archive.org/web/20230602152816/https://cpc-live.com/data/index.php?dir=-tools TapeUtil] [https://github.com/Tom1975/SugarConvTape SugarConvTape] [https://sourceforge.net/projects/cdtmaster/ CDTMaster] [https://cpctech.cpcwiki.de/download/2cdt.zip 2CDT] [http://cngsoft.no-ip.org/csw2cdt.htm CSW2CDT] [https://cpcrulez.fr/emulateurs_UTIL-CDT-CDT2WAV.htm CDT2WAV] [https://github.com/shred/tzxtools tzxtools] Set of tools about tape-images
+
*[http://www.cpcmania.com/news.htm CPCTapeXP] [https://web.archive.org/web/20230602152816/https://cpc-live.com/data/index.php?dir=-tools TapeUtil] [https://github.com/Tom1975/SugarConvTape SugarConvTape] [https://sourceforge.net/projects/cdtmaster/ CDTMaster] [https://cpcrulez.fr/emulateurs_UTIL-CDT-samp2cdt.htm 2CDT/Samp2CDT] [http://cngsoft.no-ip.org/csw2cdt.htm CSW2CDT] [https://cpcrulez.fr/emulateurs_UTIL-CDT-CDT2WAV.htm CDT2WAV] [https://github.com/stripwax/wav2tzx wav2tzx] [https://github.com/raxoft/pzxtools PZXtools] [https://monocrun.com/cpc-tape-to-cdt/ Online Tape to CDT] Set of tools about tape-images
*[http://www.cpcmania.com/news.htm CPRTools] Edit Amstrad Plus CPR cartridge-images
+
*[http://www.cpcmania.com/news.htm CPRTools] [https://github.com/reidrac/cpr-tools cpr-tools] [https://github.com/renaudguerin/cpr2bin cpr2bin] [https://problemkaputt.de/no$cart.htm No$cart] [http://amsnet.chez.com/ UniDOS Cartridge Creator] Set of tools about CPR cartridge-images
*[https://bochs.sourceforge.io/doc/docbook/user/winimage.html WinImage, DiskExplorer, Mtools] [https://www.fysnet.net/ultimate/index.htm Ultimate Imager] [https://github.com/ProgrammingHobby/CPM_Image-File_Explorer CP/M Image File Explorer] Access and edit IMG hard-drive images. No need of tools for VHD images with FAT filesystem, they are supported directly in Windows Explorer: it works the same way as ISO files
+
*[https://bochs.sourceforge.io/doc/docbook/user/winimage.html WinImage, DiskExplorer, Ultimate Imager] [https://github.com/ProgrammingHobby/CPM_Image-File_Explorer CP/M Image File Explorer] Access and edit hard-drive images
*[[CPCGamesCD-CPCLoader|CPCGamesCD-CPCLoader]] CDROM containing a navigable database with all the games of the Amstrad CPC
+
*[https://colourclash.co.uk/cpc-analyser/ CPC Analyser] [https://imhex.werwolv.net/ ImHex] [https://github.com/cormacj/AmstradCPCRomHacks CPCRomHacks] [https://bitbucket.org/zzarko/runemu/src/main/ RunEmu] Other tools
*[https://colourclash.co.uk/cpc-analyser/ CPC Analyser] Help reverse engineer Amstrad CPC games
+
*[[Emulator tooling]] UI screenshots of tooling in CPC emulators
+
 
*[[WinApe|WinAPE]] [[WinCPC]] [[JavaCPC]] [https://code.google.com/archive/p/cpcsdk/ Caprice Reloaded] [http://www.cpc-power.com/cpcarchives/index.php?page=articles&num=73 Caprice Forever] Emulators with an integrated Z80 Assembler
 
*[[WinApe|WinAPE]] [[WinCPC]] [[JavaCPC]] [https://code.google.com/archive/p/cpcsdk/ Caprice Reloaded] [http://www.cpc-power.com/cpcarchives/index.php?page=articles&num=73 Caprice Forever] Emulators with an integrated Z80 Assembler
*[https://cpcrulez.fr/coding-crossdev_coding-Java-Z80Assembler.htm Java Z80Assembler] [https://pasmo.speccy.org/ Pasmo] [http://cngsoft.no-ip.org/uz80.htm UZ80] [https://github.com/EdouardBERGE/rasm Rasm] [https://cpcsdk.github.io/rust.cpclib/basm/ BASM] [https://github.com/z00m128/sjasmplus SjASMPlus] [https://github.com/cpcsdk/cpctools cpctools] [http://julien-nevo.com/disark/ Disark] [https://marketplace.visualstudio.com/items?itemName=floooh.vscode-kcide KC IDE] Tools for CPC cross-development in Z80 Assembler
 
*[https://ccz80.webcindario.com/ccz80en.html ccz80] [https://sdcc.sourceforge.net SDCC] [https://www.cpcwiki.eu/forum/programming/phrozen-c/msg180715/#msg180715 SDCC vs PhrozenC] [http://www.cpcmania.com/Docs/Programming/SDCC_vs_z88dk_Comparing_size_and_speed.htm  SDCC vs z88dk] [https://z88dk.org/site/ z88dk can be used with SDCC and provides a huge library] [http://norecess.cpcscene.net/phactory.html Phactory] [https://github.com/cpcitor/cpc-dev-tool-chain cpc-dev-tool-chain] [https://lronaldo.github.io/cpctelera/ CPCtelera] [https://github.com/Arnaud6128/wincpctelera WinCPCtelera] Cross-platform CPC development in C
 
*[https://lemonspawn.com/turbo-rascal-syntax-error-expected-but-begin/ Turbo Rascal Syntax Error] [https://www.youtube.com/watch?v=NTfnE4kXqt8 CPC demo made with TRSE] [https://www.youtube.com/watch?v=XjnqXiUHekY TRSE CPC tutorial] A complete suite (IDE, compiler, resource editor) for developing CPC games/demos in Pascal
 
*[https://cpcbasic.webcindario.com/CPCBasicEn.html CPC Basic] [https://github.com/benchmarko/CPCBasic CPCBasic Unchained] [https://marketplace.visualstudio.com/items?itemName=cebe74.amstrad-basic-helper-vscode Amstrad Basic Helper] [https://www.cpcalive.com/cpcalive_en.html CpcAlive] [https://ugbasic.iwashere.eu/ ugBASIC] Cross-platform CPC development in BASIC
 
*[https://www.cpc-power.com/index.php?page=detail&num=12875 8BP] [https://www.cpc-power.com/index.php?page=detail&num=4159 Graphic City] [https://www.cpc-power.com/index.php?page=detail&num=4649 Sprites Alive] [https://www.cpc-power.com/index.php?page=detail&num=4245 Laser Basic] [https://www.cpc-power.com/index.php?page=detail&num=4705 FAst BAsic COMpiler] [https://www.cpc-power.com/index.php?page=detail&num=6042 TurboBASIC compiler] [[B-ASIC]] Useful CPC tools (compilers and RSX) to beef up the Amstrad BASIC
 
*[http://ldeplanque.free.fr/ConvImgCpc/new/ ConvImgCPC] [https://github.com/AugustoRuiz/Img2CPC img2cpc] [https://www.dadither.com/ DaDither] [https://github.com/jeromelesaux/martine Martine] [https://www.cpcwiki.eu/forum/applications/splitraster-v3/ Splitraster+] [https://www.pouet.net/prod.php?which=88808 UniPixelViewer] [https://www.youtube.com/watch?v=KBcxPWGmr6Q UniPixelViewer tutorial] Image converters from PC to CPC
 
*[http://grafx2.chez.com/ GrafX2] [http://multipaint.kameli.net/ Multipaint] [[Retro Game Asset Studio]] [http://gcajdev.epizy.com/sprite_creator.php Sprite Creator] Cross-platform CPC pixel art editors
 
*[http://cngsoft.no-ip.org/chipnsfx.htm CHIPNSFX] [https://github.com/AugustoRuiz/WYZTracker WYZTracker] [https://www.julien-nevo.com/arkostracker/ Arkos Tracker 2] [https://tildearrow.org/furnace/ Furnace] Cross-platform CPC music creation suites
 
  
= Emulator Detection =
+
=== Cross-Platform Development ===
  
If you want to promote usage of real CPC computers, you can detect CPC emulators by:
+
*[https://cpcrulez.fr/coding-crossdev_coding-Java-Z80Assembler.htm Java Z80Assembler] [https://grauw.nl/projects/glass/ Glass] [https://pasmo.speccy.org/ Pasmo] [http://cngsoft.no-ip.org/uz80.htm UZ80] [https://github.com/EdouardBERGE/rasm Rasm] [https://cpcsdk.github.io/rust.cpclib/basm/ BASM] [https://github.com/fragarco/abasm/ ABASM] [https://k1.spdns.de/Develop/Projects/zasm/Distributions/ zasm] [http://www.compilers.de/vasm.html vasm] [https://github.com/z00m128/sjasmplus SjASMPlus] [https://github.com/cpcsdk/cpctools cpctools] [https://github.com/cpcsdk/rust.cpclib cpclib] [https://github.com/cpcsdk/rust.cpclib/tree/master/cpclib-bndbuild bndbuild] [http://julien-nevo.com/disark/ Disark] [https://github.com/santiontanon/mdlz80optimizer MDL] [https://marketplace.visualstudio.com/items?itemName=maziac.asm-code-lens ASM Code Lens] [https://marketplace.visualstudio.com/items?itemName=floooh.vscode-kcide KC IDE] Tools for CPC cross-development in Z80 Assembler
*Checking if the memory is initialized with zeroes, as real machines have random memory values at boot
+
*[https://sdcc.sourceforge.net SDCC] [https://www.cpcwiki.eu/forum/programming/phrozen-c/msg180715/#msg180715 SDCC vs PhrozenC] [http://www.cpcmania.com/Docs/Programming/SDCC_vs_z88dk_Comparing_size_and_speed.htm  SDCC vs z88dk] [https://z88dk.org/site/ z88dk can be used with SDCC and provides a huge library] [https://ccz80.webcindario.com/ccz80en.html ccz80] [http://norecess.cpcscene.net/phactory.html Phactory] [https://github.com/cpcitor/cpc-dev-tool-chain cpc-dev-tool-chain] [https://lronaldo.github.io/cpctelera/ CPCtelera] [https://github.com/Arnaud6128/wincpctelera WinCPCtelera] Cross-platform CPC development in C
*Focusing on the minute details in Z80, CRTC and PPI chips. They are most often wrong in emulators
+
*[https://github.com/Bread80/Quiche Quiche] [https://lemonspawn.com/turbo-rascal-syntax-error-expected-but-begin/ Turbo Rascal Syntax Error] [https://www.youtube.com/watch?v=NTfnE4kXqt8 CPC demo made with TRSE] [https://www.youtube.com/watch?v=XjnqXiUHekY TRSE CPC tutorial] CPC cross-development in Pascal
*Examining the FDC chip. It is only replicated more or less superficially in all emulators because the internals of the chip are still unknown
+
*[https://github.com/KarolS/millfork Millfork] [https://github.com/wiz-lang/wiz Wiz] [https://github.com/davidgiven/cowgol Cowgol] [https://www.mikekohn.net/micro/java_grinder.php Java Grinder] CPC cross-development with other programming languages
 +
*[https://jonathan-cauldwell.itch.io/multi-platform-arcade-game-designer Multi-Platform Arcade Game Designer] The most user-friendly Windows tool for creating CPC games
 +
*[https://vitno.org/2023/09/17/punyinform-a-new-library-for-writing-text-adventures-for-old-computers/ PunyInform] [https://github.com/Utodev/DRC/ DAAD Reborn Compiler] for developing adventure games
 +
*[https://github.com/danielgaskell/scc SymbOS C Compiler] [http://www.symbos.de/quigs.htm Quigs IDE] SymbOS application development
 +
*[https://cpcbasic.webcindario.com/CPCBasicEn.html CPC Basic cross-compiler] [https://github.com/benchmarko/CPCBasic Online CPCBasic] [https://marketplace.visualstudio.com/items?itemName=cebe74.amstrad-basic-helper-vscode Amstrad Basic Helper] [https://github.com/destroyer-dcf/sdkcpc SDKCPC] [https://auamstrad.es/taller/herramientas/ide8bp-portable-para-windows/ IDE 8BP] [https://www.cpcalive.com/cpcalive_en.html CpcAlive] [https://ugbasic.iwashere.eu/ ugBASIC] [https://spotlessmind1975.itch.io/ugbasic-ide ugBASIC IDE] Cross-platform CPC development in BASIC
 +
*[https://github.com/einar-saukas/ZX0 ZX0] [https://github.com/emmanuel-marty/salvador Salvador] [https://github.com/ClaireCheshireCat/amstrad-cpc-dzx0 ZX0 decompressor in BASIC] [https://www.cpcwiki.eu/forum/programming/new-cruncher-zx0/msg197727/ Comparative study] Compression tools
  
Combining these methods will definitely get you a 100% success rate in detecting emulators, even the toughest ones.
+
=== Cross-Platform Art ===
  
<gallery>
+
*[https://github.com/EdouardBERGE/convgeneric ConvGeneric] [http://ldeplanque.free.fr/ConvImgCpc/new/ ConvImgCPC] [https://anto80.itch.io/image-to-amstrad-cpc-converter ImgToCpc] [https://github.com/AugustoRuiz/Img2CPC img2cpc] [https://github.com/cpcsdk/rust.cpclib/tree/master/cpclib-imgconverter cpclib-img2cpc] [https://github.com/bignaux/Magick2CPC Magick2CPC] [https://github.com/cpcsdk/gfx2crtc gfx2crtc] [https://www.dadither.com/ DaDither] [https://8bitworkshop.com/dithertron/#sys=cpc.mode0 Online Dithertron] [https://github.com/jeromelesaux/martine Martine] [https://www.cpcwiki.eu/forum/applications/splitraster-v3/ Splitraster+] [https://www.pouet.net/prod.php?which=88808 UniPixelViewer] [https://www.youtube.com/watch?v=KBcxPWGmr6Q UniPixelViewer tutorial] Image converters from PC to CPC
Emulator undetected.png|Emulator undetected
+
*[http://grafx2.chez.com/ GrafX2] [http://multipaint.kameli.net/ Multipaint] [https://x.com/xavierMessner RePAINT!] [https://www.octoate.de/2010/09/06/cpcpaint/ CPCPaint] [https://cpcrulez.fr/coding-crossdev_coding-amstrad_cpc_tools_kit.htm Amstrad CPC Tools Kit] [[Retro Game Asset Studio]] [https://cpcrulez.fr/emulateurs_UTIL-GRA-akusprite_editor.htm AkuSprite Editor] [https://github.com/GameDevCodeur/z80Editor Z80Editor] [http://gcajdev.epizy.com/sprite_creator.php Online Sprite Creator] [https://www.aseprite.org/ Aseprite] [https://libresprite.github.io/ LibreSprite] [https://www.mapeditor.org/ Tiled] [https://github.com/Cwiiis/maped/ Maped] Cross-platform CPC pixel art editors
Emulator detected.png|Emulator detected
+
*[https://github.com/digital-sound-antiques/vgm-conv vgm-conv] [https://github.com/QuinnPainter/YMtoVGM YMtoVGM] [https://cpcrulez.fr/emulateurs_UTIL-MUSIC-YMCruncher.htm YMcruncher] [https://osdk.org/index.php?page=documentation&subpage=ym2mym Ym2Mym] [https://github.com/EdouardBERGE/wav2ay wav2ay] [https://kichiki.github.io/waon/ WaoN (wav2midi)] [https://cpcrulez.fr/coding-crossdev-music-ym_to_midi.htm YMtoMIDI] Music converters
</gallery>
+
*[http://cngsoft.no-ip.org/chipnsfx.htm CHIPNSFX] [https://grimware.org/doku.php/sources/pt3 Vortex Tracker II] [https://github.com/AugustoRuiz/WYZTracker WYZTracker] [https://julien-nevo.com/at3test/ Arkos Tracker] [https://tildearrow.org/furnace/ Furnace] Cross-platform CPC music creation suites
  
There is also this initiative for emulators who willingly want to be detected: [[Emulator_IDs|Emulator IDs]]
+
<br>
  
 
= Emulators running on the Amstrad CPC =
 
= Emulators running on the Amstrad CPC =
Line 1,630: Line 1,588:
 
| Commercial💲
 
| Commercial💲
 
| [[BBC BASIC]]
 
| [[BBC BASIC]]
 +
|-
 +
| [[BASIC 1.1 Fuer CPC464]]
 +
| [https://www.cpc-power.com/index.php?page=detail&num=4403]
 +
|
 +
| Oct 1986
 +
| Open source
 +
| [[Locomotive BASIC 1.1]]
 +
|-
 +
| [[Chip8 CPC]]
 +
| [https://www.cpcwiki.eu/forum/games/chip8-emulator-for-amstrad-cpc/] [https://github.com/ajcasado/Chip8_CPC Repo]
 +
|
 +
| Nov 12, 2024
 +
| Open source
 +
| [[CHIP-8]]
 
|-
 
|-
 
| [[CPCZVM]]
 
| [[CPCZVM]]
Line 1,637: Line 1,609:
 
| Open source
 
| Open source
 
| [[Z-Machine]]
 
| [[Z-Machine]]
 +
|-
 +
| [[CPvM]]
 +
| [http://www.symbos.org/cpvm.htm] [https://github.com/danielgaskell/CPvM Repo]
 +
| 1.0
 +
| Apr 17, 2024
 +
| Open source
 +
| [[CP/M]]
 +
|-
 +
| [[Fuzix OS]]
 +
| [https://www.cpcwiki.eu/forum/applications/port-of-fuzix-for-the-cpc6128/] [https://github.com/EtchedPixels/FUZIX Repo]
 +
|
 +
| Nov 12, 2024
 +
| Open source
 +
| [[POSIX]] (UNIX)
 
|-
 
|-
 
| [[Pac-Man]]
 
| [[Pac-Man]]
| [http://www.cpcwiki.eu/forum/games/speed-up-patch-for-pac-man-emulator-for-cpc-by-syx-toto/msg81222/#msg81222]
+
| [https://www.cpc-power.com/index.php?page=detail&num=7270]
 
| 1.1
 
| 1.1
 
| Jun 5, 2014
 
| Jun 5, 2014
 
| Open source
 
| Open source
 
| [[Pac-Man arcade|Pac-Man arcade]]
 
| [[Pac-Man arcade|Pac-Man arcade]]
 +
|-
 +
| [[Kersten PC Emulator|PC-Emulator]]
 +
| [https://cpcrulez.fr/hardware-autres-PC_Emulator.htm]
 +
|
 +
| Sep 1986
 +
| Hardware💲
 +
| [[IBM PC]]
 
|-
 
|-
 
| [[Phoenix]]
 
| [[Phoenix]]
Line 1,653: Line 1,646:
 
|-
 
|-
 
| [[Space Invaders|Space Invaders]]
 
| [[Space Invaders|Space Invaders]]
| [http://www.cpcwiki.eu/forum/games/space-invaders-arcade-emulator-for-amstrad-cpc/]
+
| [https://www.cpc-power.com/index.php?page=detail&num=13098]
| 1.0
+
| 1.02
| Jun 11, 2016
+
| Mar 18, 2017
 
| Freeware
 
| Freeware
 
| [[Space Invaders arcade|Space Invaders arcade]]
 
| [[Space Invaders arcade|Space Invaders arcade]]
 
|-
 
|-
 
| [[Vezza]]
 
| [[Vezza]]
| [https://gitlab.com/sijnstra1/vezza]
+
| [https://sijnstra.itch.io/vezza] [https://gitlab.com/sijnstra1/vezza Repo]
 
|  
 
|  
| Oct 7, 2023
+
| Jan 7, 2024
 
| Open source
 
| Open source
 
| [[Z-Machine]]
 
| [[Z-Machine]]
 
|-
 
|-
 
| [[ZXM]]
 
| [[ZXM]]
| [https://cpcrulez.fr/applications_util-ZXm.htm]
+
| [https://www.cpc-power.com/index.php?page=detail&num=14208]
 
|  
 
|  
 
| 1993
 
| 1993
Line 1,681: Line 1,674:
 
|}
 
|}
  
[[Category:Emulator| ]]
+
[[Category:Emulator]] [[Category:CrossDev]] [[Category:Emulation Tools]]

Latest revision as of 09:13, 27 December 2024

Vote for your favorite emulator Poll on CPCWiki forum

Emulator evaluation tools Software list for evaluating CPC emulator accuracy

Emulator tooling UI screenshots of tooling in CPC emulators


Software Platforms (Full OS independance)

Java Platform

Emulator name External link Current version Latest release Developer tools Amstrad Plus Also emulates License
Arnold Jnr [1] Aug 27, 2001 - Open source
JavaCPC Desktop [2] JavaGX4000 CPCInAJar 3.0.2 Apr 8, 2022 KC Compact Donationware & Open source
JEMU [3] Feb 19, 2007 ZX Spectrum, ZX80/81, BBC Micro, VZ-300 Open source
WebCPC [4] JavaCPC Applet r15 Dec 31, 2010 - Open source

Note: Java applets have been discontinued and removed in all major web browsers. So JEMU and WebCPC could belong to the "Discontinued OS" part of this article.

JS / Wasm / Web Platform

Emulator name External link Current version Latest release Developer tools Amstrad Plus Also emulates License
CPCBox [5] [6] BZH Games beta Dec 28, 2013 - Freeware
CrocoDS [7] Repo Jun 9, 2020 ⚠️ - Open source
Emularity (MAME) [8] JSMESS Classic Reload

Internet Archive CPC Software Library

Jan 27, 2024 Tons of vintage computers, game consoles and arcade systems Open source
Roland [9] JuegoTk Sep 24, 2011 - Open source
Ronald [10] Repo Apr 1, 2024 ⚠️ - Open source
RVMplayer [11] Amstrad ESP 0.1.1 May 6, 2023 ZX Spectrum Freeware
Tiny Emus [12] CPC UI yakc zpz mini CPC Online OldGames

WebGL 3d 8-bit Arcade Room acpc.me Retro Store

BZH Games Sean's CPC Games Amstrad CPC Games

Mar 22, 2024 KC Compact, ZX Spectrum, VIC-20, Commodore 64, Acorn Atom, KC 85, KC 87, Z9001, Z1013, LC80 Open source
Xiragon [13] Nov 28, 2012 - Open source

LibRetro (API for emulators)

Emulator name Type External link Current version Latest release Developer tools Amstrad Plus Also emulates License
libretro-cap32 Emulation core [14] 4.5.4 Dec 18, 2023 - - Open source
libretro-crocods Emulation core [15] Oct 16, 2024 - - Open source
LRMAME Emulation core [16] 0.272 Dec 3, 2024 - Tons of vintage computers, game consoles and arcade systems Open source
SugarLibRetro Emulation core [17] (wraps independent lib CPCCore) git Jan 10, 2020 - - Open source
EmuVR Frontend [18] 1.0.11 Dec 24, 2022 - Depends on emulation cores Donationware
Hackable Console Frontend [19] Mar 27, 2022 - Depends on emulation cores Open source
Ludo Frontend [20] Repo 0.17.3 Dec 8, 2024 - Depends on emulation cores Open source
RetroArch Frontend [21] RetroAchievements 1.19.1 Jun 5, 2024 - Depends on emulation cores Donationware & Open source

Several distributions also exist based on RetroArch or Ludo: RetroBat, Lakka, RetroPie, Batocera, Recalbox, RGB-Pi OS, EmuELEC, LudOS


Operating Systems

Desktop

Emulator name External link Windows macOS Linux Current version Latest release Developer tools Amstrad Plus Also emulates License
ACE MorphOS and Haiku IRC chan Repo 1.26 Jan 1, 2024 Dozens of CPC hardware expansions thru plugins Freeware (plugins are Open Source)
ACE-DL [22] Discord Based on ACE Noël Dec 24, 2024 - Freeware
AMSpiriT [23] Discord Forum 1.01 rc Apr 24, 2024 - Freeware
Arnimedes [24] 1.02 Jul 7, 2012 - Freeware
Arnold [25] Aeliss fork Arnold TNG

macOS AmigaOS PPC

🛠️ May 13, 2017 ⚠️ KC Compact, Aleste 520EX Open source
Caprice Forever [26] 24.10 Oct 1, 2024 - Freeware & Outdated sources
Caprice32 [27] Old repo Linux Reloaded

Cpc4Rpi CapriceRPI CPC-PI

4.6.0 Oct 8, 2022 ⚠️ Aleste 520EX Donationware & Open source
Clock Signal [28] Linux Raspberry Pi Oct 19, 2024 ZX Spectrum, ZX80/81, Enterprise, MSX 1&2, Oric, ColecoVision, Apple II, VIC-20, Atari 2600, Atari ST, Electron, Archimedes, Macintosh, Master System Donationware & Open source
CoPaCabana [29] 0.74 Apr 12, 2006 ⚠️ - Donationware
CPC++ [30] b700 May 31, 2015 - Freeware
cpc4x [31] 🛠️ 0.26 Dec 11, 2004 - Open source
CPCEC [32] Repo CPCE CPCEG 🛠️ 🛠️ Dec 24, 2024 ⚠️ ZX Spectrum, Commodore 64, MSX 1&2 Open source
cpcec-gtk [33] 🛠️ Feb 4, 2023 - Open source
CPCemu [34] 2.5 Aug 13, 2022 ⚠️ - Freeware
CPCEPower [35] 2105 Jun 4, 2021 - Donationware
CPCSharp [36] 1.0.0-beta1 Apr 7, 2021 ⚠️ - Open source
CPvC [37] Sep 30, 2022 - Open source
CrocoDS [38] Repo 4.0 beta3 Dec 10, 2023 ⚠️ - Open source
DSP [39] 🛠️ 0.23 Oct 27, 2024 ZX Spectrum, Commodore 64, Oric, ColecoVision, Game Boy, NES, SG-1000, Master System, Game Gear, Super Cassette Vision, PV-1000, PV-2000, Arcade Open source
ep128emu [40] 🛠️ 🛠️ 2.0.11.2 Apr 19, 2019 ⚠️ ZX Spectrum, Enterprise Donationware & Open source
Gemux [41] Nov 5, 2024 - Freeware
MAME [42] AmigaOS PPC MorphOS Haiku

Tutorial (ES)

0.272 Nov 30, 2024 ⚠️ Tons of vintage computers, game consoles and arcade systems Open source
NO$CPC [43] 1.8 Nov 2, 2000 ⚠️ - Donationware
PC-CPC [44] Repo 0.1at b29 Nov 17, 2011 ⚠️ - Open source
Retro Virtual Machine [45] 2.1.19 Dec 9, 2024 ❌ Removed ZX Spectrum, MSX 1, ColecoVision, SG-1000, Master System Donationware
Roland [46] Repo 🛠️ 0.70 Apr 20, 2017 - Open source
Ronald [47] 🛠️ Apr 1, 2024 ⚠️ - Open source
SugarBox [48] Old site SugarPi 2.0.4 Nov 24, 2024 ⚠️ - Open source
Virtual CPC [49] Archive 1.1 Aug 8, 2011 ⚠️ - Freeware
WinAPE [50] CPCwin 2.0b2 Jan 5, 2016 - Donationware
WinCPC / MacCPC [51] vbCPC 0.9.2 Jan 22, 2010 - Freeware
Xcpc [52] Repo 0.52.1 Sep 8, 2024 - Open source
XNACPC [53] CPC3D 1.0 Nov 11, 2011 - Open source
ZEsarUX [54] Haiku 11.0 Jun 6, 2024 ⚠️ PCW, ZX Spectrum, ZX80/81, MSX 1, ColecoVision, Spectravideo, Jupiter ACE, Sam Coupe, SG-1000, Master System, Sinclair QL, MK14, Z88 Donationware & Open source

Legend: ❗= No Raspberry Pi / ARM build ; 🛠️ = Build it yourself ; ⚠️ = Incomplete tooling

Mobile

You can use RetroArch for Amstrad CPC emulation on Android and iOS. Or you can use these stand-alone CPC emulators:

Host system Emulator name External link Current version Latest release Amstrad Plus Also emulates License
Android andcpc [55] 1.5.1 Apr 4, 2011 - Open source
Android Azimuth [56] 1.11 Aug 22, 2023 - Adware and in-app purchases💲
Android CPCDroid [57] 1.5.1 Mar 2, 2011 - Open source
Android CPCemu [58] 2.5 Aug 14, 2022 - Freeware
Android Droid-CPC [59] 1.1.01 Dec 15, 2016 - Commercial💲
Android MAME4droid 2024 [60] Repo 1.19 (0.272) Dec 2, 2024 Tons of vintage computers, game consoles and arcade systems Open source
iOS CPCemu [61] 2.5 Aug 13, 2022 - Software available on request
iOS CrocoDS [62] Repo 2.1 Jun 21, 2013 - Open source
iOS MAME4iOS [63] 2022.5 Dec 12, 2022 Tons of vintage computers, game consoles and arcade systems Open source

Discontinued OS

Host system Emulator name External link Current version Latest release Amstrad Plus Also emulates License
Acorn RISC OS !CPC [64] [65] Jul 28, 1996 - Open source
Acorn RISC OS !CPCemu [66] 1.21 Mar 22, 2016 - Open source
AmigaOS m68k A-CPC [67] 2.0 Mar 30, 2002 - Open source
AmigaOS m68k Ami-cpc [68] Ami-cpc2 0.46 Jan 21, 1998 - Open source
AmigaOS m68k CPE [69] Feb 24, 1995 - Open source
AmigaOS m68k EmuCPC [70] 0.7 Sep 15, 1996 - Open source
AROS Arnold [71] Oct 24, 2010 - Open source
AROS Caprice32 [72] 4.2.0 Oct 23, 2010 - Open source
BlackBerry OS BB-CPC [73] (dead link) 1.0.1.3 Jul 15, 2013 - Commercial💲
Classic Mac OS CPC++ [74] 1.3.2 Oct 6, 1997 - Shareware💲
DOS AdvanceMESS [75] 3.9 Sep 8, 2018 Tons of vintage computers and game consoles Open source
DOS Arnimedes [76] 0.8a Apr 15, 2000 - Freeware
DOS Caprice32 [77] 1.11 Sep 20, 1999 - Open source
DOS CPC [78] 0.55b May 16, 1997 - Freeware
DOS CPC-em [79] 0.4 Jul 7, 2004 - Open source
DOS CPCE [80] 1.94 Jun 2, 2011 - Freeware
DOS CPCemu [81] 1.5 Jul 7, 1998 - Freeware
DOS CPE [82] 5.2 Apr 21, 1997 - Open source
DOS NO$CPC [83] 1.8 Nov 2, 2000 - Freeware
DOS PC-CPC [84] Feb 3, 1998 - Open source
DOS RWCPC [85] Mar 23, 1995 - Freeware
DOS SIMCPC [86] Dec 10, 1989 - Shareware💲
DOS YAGE [87] 0.91 Oct 24, 1998 - Freeware
EXOS Software CPC Emulator [88] [89] 1.3 Jan 11, 2013 - Open source
Maemo CPCm [90] 1.20-1 Apr 27, 2010 - Open source
MSX-DOS EMU6CPC [91] Dec 17, 2018 - Freeware
OS/2 SDLMAME [92] 0.170 Jan 30, 2016 Tons of vintage computers, game consoles and arcade systems Open source
Palm OS CaPriCe for Palm OS [93] 2.8 Jun 28, 2011 - Open source
Palm OS CoPaCabana [94] 0.75 Dec 4, 2007 - Freeware
Pocket PC PocketCaprice [95] 0.9 Aug 19, 2007 - Freeware
SunOS CPC++ [96] 1.3.0 Feb 22, 1997 - Shareware💲
Symbian S60-CPC [97] 0.74 Feb 21, 2006 - Open source
Windows 9x CPC-em [98] 0.3 Jan 22, 2004 - Open source
Windows 9x MTMW [99] 1.30B Jan 11, 2000 ZX Spectrum, ZX80/81, Enterprise, Jupiter ACE Freeware


Other Platforms

Home Consoles

You can use RetroArch for Amstrad CPC emulation on Apple TV, Android TV, Nvidia Shield, Steam Link, Xbox One, Xbox Series, PS2, PS Vita TV, GameCube, Wii, Wii U and Switch. Or you can use these stand-alone CPC emulators:

Host system Emulator name External link Current version Latest release Amstrad Plus Also emulates License
Microsoft XBOX ArnoldX [100] [101] v5 Apr 20, 2010 - Freeware
Microsoft XBOX CoinOPS (RetroFE) [102] 5 Oct 18, 2012 Tons of vintage computers, game consoles and arcade systems Freeware
Microsoft Xbox 360 XNACPC [103] 1.0 Nov 11, 2011 - Open source
Nintendo Wii Wiituka [104] 0.98.8 May 15, 2009 - Open source
Sega Dreamcast CPCast [105] May 6, 2006 - Freeware
Sega Dreamcast DreamCPC [106] Alpha 3 Oct 16, 2005 - Freeware
Sony PS2 CPC-em [107] 0.4 Dec 22, 2004 - Freeware
Sony PS3 Caprice32 [108] 4.1.0 DBG Apr 9, 2012 - Open source

Handheld Consoles

Note: For Android handheld consoles (Razer Edge, Ayn Odin Pro, Retroid Pocket Flip, GPD XP, ...), see the Mobile/Android section.

You can use RetroArch for Amstrad CPC emulation on PSP, PS Vita, DS, 3DS, Switch, Steam Deck, RetroFW, Miyoo, OpenDingux and ArkOS. Or you can use these stand-alone CPC emulators:

Host system Emulator name External link Current version Latest release Amstrad Plus Also emulates License
Dingoo A320 / A330 Pituka Dingux [109] 0.8pre Aug 19, 2010 - Open source
Dingoo A320 / A330 Dingux-CAP32 [110] 1.1.2 Oct 17, 2009 - Open source
GamePark Caanoo Caanoo-CAP32 [111] 1.1.3 Apr 24, 2011 - Open source
GamePark GP2x CapriceGP2x [112] 0.5 Feb 22, 2006 - Open source
GamePark GP2x GP2X-CAP32 [113] 1.5.1 Aug 29, 2009 - Open source
GamePark GP32 Pituka GP32 [114] 1d May 15, 2010 - Open source
GamePark Wiz Wiz-CAP32 [115] 1.1.0 Aug 29, 2009 - Open source
GCW Zero Dingux-CAP32 [116] 1.1.2 May 25, 2014 - Open source
JXD S5110 / S601 & Yinlips G18 JXD-CAP32 [117] 1.1.1 Oct 27, 2012 - Open source
Nintendo DS AmeDS [118] 4.0 Apr 25, 2010 - Freeware
Nintendo DS CrocoDS [119] Repo 2.0 Nov 9, 2007 - Open source
Nintendo GameBoy Advance Mini Amstrad Emulator [120] Dec 26, 2005 - Open source
Odroid GO CapriceESP32 [121] Dec 3, 2020 - Open source
OpenDingux CrocoDS [122] Repo Jan 15, 2020 - Open source
Pandora Pandora-CAP32 [123] 1.1.0 Jun 27, 2010 - Open source
Sony PSP Caprice32 PSP [124] 4.2.0.2 Nov 28, 2007 - Open source
Sony PSP CPCPSP [125] 0.1 Dec 24, 2005 - Freeware
Sony PSP PSPCAP32 [126] 1.5.1 Aug 21, 2009 - Open source
Trimui Model S Arnold Trimui [127] Oct 19, 2021 - Open source

FPGA

  • CPC TREX CPC-One TurboCPC core by TobiFlex running on different FPGA boards
  • CPC FPGA CPC emulation by Ranulf (Ralferoo) Doswell, running on a custom made FPGA board
  • FPGAmstrad CoreAmstrad CoreDocAmstrad Translation by Renaud (Freemac) Hélias of JavaCPC from Java into VHDL for MiST board
  • CPC for MiST and MiSTer Started by Alexey (Sorgelig) Melnikov as a port of CoreAmstrad, but every module has been either rewritten or replaced
  • CPC2 Project CPC emulation running on a Cyclone V FPGA board
  • AmstradCPC core Based on McLeod's core and running on a ZXTres FPGA board


Hardware Replacements

Chips

Floppy drives

  • SDiskEmul Floppy-drive emulator released in 2007. Abandoned now. Supports DSK, EDSK disk-images
  • HxC Floppy Emulator Commercial floppy-drive emulator. Supports directly DSK, EDSK, HFE disk-images. IPF, CTRAW, SCP disk-images supported through conversion to HFE disk-image [128]
  • FlashFloppy Open source floppy-drive emulator for the ubiquitous Gotek hardware. Supports DSK, EDSK, HFE disk-images
  • GreaseWeazle Open source USB floppy adapter Flux reader/writer
  • SuperCard Pro Claims to be the most advanced flux level copier/imager/converter system
  • KryoFlux Proprietary floppy adapter Flux reader/writer
  • Pauline FPGA-based floppy-drive dumper and emulator
  • DDI-3 USB floppy-drive emulator with an integrated FDC chip, floppy data separator and AMSDOS ROM for CPC464. Current evolution DDI-6 has also integrated a RAM/ROM box
  • DriveRDY Emulates the Ready signal necessary for floppy drives on Amstrad machines
  • M4 Board Supports DSK, EDSK images in a limited fashion. Protected disks are not supported
  • USIFAC ULIfAC Supports DSK, EDSK images in a limited fashion. Protected disks are not supported

Tapes

  • TZXduino MAXduino Abatape Arduino-based tape deck emulator. Supports many formats of tape-images including CDT and TZX
  • SVI-CAS Digital Tape Drive for Playback & Recording. Supports many formats of tape-images including CDT and TZX
  • TapeRider TZX/CDT tape-images player for Android
  • tapDancer [129] Chrome and Android app that plays back many formats of tape-images including CDT and TZX
  • PlayUEF Web-browser based tape deck emulator, supporting CDT and TZX tape-images

Cartridges

Printers

  • Amstrad CPC Printer Emulator [130] Arduino-based CPC printer emulator that can output text, markdown or HTML
  • Retro-Printer Plugin module for the Raspberry Pi that makes it possible to connect retro computers to modern USB or network printers
  • ESCParser Command-line utility, ESC/P printer emulator that can output PostScript, SVG or PDF

Other


Peripherals supported in emulators

Mass storage devices

Network devices

There is a plethora of serial communication devices (using RS232, USB, SPI, Modem, Teletext, Virtual Net 96, etc...) on Amstrad CPC:

Higher-level Ethernet or TCP/IP network devices are much less common:

Audio devices

Note: all RS232 serial port devices (USIFAC, Amstrad Serial Interface, etc...) and USB port devices with direct control (Albireo, etc...) can also be used as MIDI ports.

Graphics devices

CPC graphics display expansions (CRTC Type 5, Amsdap GFX9000) are not supported.

CPC graphics acquisition devices (Dart Scanner, VIDI digitizer, Digitaliseur Ara) are not supported.

CPC printers are poorly supported. The only emulators that at least do some print rendering emulation are JavaCPC and Caprice Forever.

Input devices

Some lightguns / lightpens are emulated by ACE, ACE-DL, Caprice Forever, JavaCPC, CPCEC, CPCEPower, Virtual CPC, PC-CPC, Wiituka.

CPC mouse support is as follows:

Note: AMX and MultiPlay are the most widely supported mice in CPC programs.

Hacking devices


Rewind feature

The RetroArch CPC emulator has the most convenient rewind feature: Demonstration. To reverse the game, the user press and hold the rewind button. And at any point, releasing the button makes time goes forward again.

ACE-DL also has a rewind feature, but it is not as good as it could be: Demonstration.

One 128KB snapshot per frame allows 10 seconds of rewind with 64MB (128KB * 50 frames * 10 seconds) of memory for the rewind feature. A more efficient method saves only the previous RAM values that are changed between 2 frames, allowing much longer rewinds (even if the CPC is equipped with 4MB RAM expansion) while using less memory, as shown by the GBA emulator SkyEmu.

For step-back debugging, the emulator just needs to store the time when the previous instruction was executed so that he can go back to that instruction. In the same way, emulators can provide access to the previous HBL, IRQ, VBL, etc.


File format specifications


Emulation Tools

Cross-Platform Development

Cross-Platform Art


Emulators running on the Amstrad CPC

Emulator name External link Current version Latest release License Emulates
Amstrad BBC BASIC [131] 2.30 Apr 2, 1986 Commercial💲 BBC BASIC
BASIC 1.1 Fuer CPC464 [132] Oct 1986 Open source Locomotive BASIC 1.1
Chip8 CPC [133] Repo Nov 12, 2024 Open source CHIP-8
CPCZVM [134] Jul 6, 2019 Open source Z-Machine
CPvM [135] Repo 1.0 Apr 17, 2024 Open source CP/M
Fuzix OS [136] Repo Nov 12, 2024 Open source POSIX (UNIX)
Pac-Man [137] 1.1 Jun 5, 2014 Open source Pac-Man arcade
PC-Emulator [138] Sep 1986 Hardware💲 IBM PC
Phoenix [139] Jan 6, 2019 Freeware Phoenix arcade
Space Invaders [140] 1.02 Mar 18, 2017 Freeware Space Invaders arcade
Vezza [141] Repo Jan 7, 2024 Open source Z-Machine
ZXM [142] 1993 Freeware ZX Spectrum
Zym [143] 0.9 Feb 19, 2022 Open source Z-Machine