Difference between revisions of "Arnold (Emulator)"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
("Acid tests")
 
(15 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
Arnold is a CPC emulator written and maintained by [[Kevin Thacker]].
 
Arnold is a CPC emulator written and maintained by [[Kevin Thacker]].
  
The newest version is 13/05/2017. This is the "work in progress" version which is already very advanced and is more accurate than most existing emulators. This is verifable using the 'acid test' test programs  which are freely available for others to use to improve their emulators.
+
The newest version is 13/05/2017. This is the "work in progress"/"wip" version which is already very advanced and is more accurate than most existing emulators. This is verifable using the 'acid test' test programs  which are freely available for others to use to improve their emulators.
  
 
Arnold is being actively developed and there are updates to the code almost daily. The work in progress version uses SDL for the display, audio and input and wxWidgets for the GUI. It is built with cmake and now all versions (Mac OS X, Linux/Unix and Windows) have identical functionality and interface.
 
Arnold is being actively developed and there are updates to the code almost daily. The work in progress version uses SDL for the display, audio and input and wxWidgets for the GUI. It is built with cmake and now all versions (Mac OS X, Linux/Unix and Windows) have identical functionality and interface.
Line 7: Line 7:
 
Arnold aims for maximum emulation accuracy across the whole CPC and Plus range as well as the [[KC Compact]], Aleste 520Ex and the GX4000. The emulator has various devices that can be enabled and there is extensive configuration possible.
 
Arnold aims for maximum emulation accuracy across the whole CPC and Plus range as well as the [[KC Compact]], Aleste 520Ex and the GX4000. The emulator has various devices that can be enabled and there is extensive configuration possible.
  
Previous versions shared the same emulation core, but each port was managed separately and had different user interfaces. The Windows port made by Kevin, Apple Macintosh port by [[Richard Bannister]] and Linux port by [[Nurgle|Andreas Micklei]]. There is also a Linux "nurgle" version which contains patches and improvements over the original by Elmsoft and Nurgle.
 
 
The initial version was written in C on Windows and used DirectX.
 
 
Previously to this there was A-CPC, an Amstrad emulator for Amiga also by Kevin Thacker.
 
  
 
The following devices are emulated and useable:
 
The following devices are emulated and useable:
* [[AMRAM 2]]
+
* [[AMRAM2]]
* [[Brunword]]
+
* [[BrunWord | Brunword mk2 and mk4]]
 
* [[Hackit]]
 
* [[Hackit]]
 
* [[Hexam]]
 
* [[Hexam]]
* [[Megarom]]
+
* [[MegaROM]]
* [[Multiplay]]
+
* [[MultiPlay]]
* [[ROMBO Rom board]]
+
* [[Rombo_Rombox]]
* [[Vortex 512KB Ram Expansion]]
+
* [[Vortex_Expansions_RAM_card]]
 +
* [[CPC4MB]]
  
The following are emulated and mostly useable (except IDE device can be used but the data is transient):
+
The following are partially emulated:
* [[Symbiface 2]]
+
* [[SYMBiFACE_II]] (RTC not emulated and data for IDE device data is transient)
* [[UIDE]]
+
* [[UIDE_Universal_IDE_adapter_cards_for_Z-80_computers]] (IDE device data is transient)
* [[X-MASS]]
+
* [[X-Mass]] (IDE device data is transient)
 +
 
 +
The following are in progress:
 +
* [[X-MEM]]
 +
* [[Dk'tronics_memory_expansion]] (256KB RAM and 256KB Silicon disk are in progress)
 +
 
 +
The following are based on hacking the ROMs so need much more testing
 +
* [[Vortex_Winchester_Drive]]
 +
* [[Dobbertin_Harddisk]]
 +
 
 +
 
 +
Previous versions shared the same emulation core, but each port was managed separately and had different user interfaces. The Windows port made by Kevin, Apple Macintosh port by [[Richard Bannister]] and Linux port by [[Nurgle|Andreas Micklei]]. There is also a Linux "nurgle" version which contains patches and improvements over the original by Elmsoft and Nurgle.
 +
 
 +
The initial version was written in C on Windows and used DirectX.
 +
 
 +
Previously to this there was A-CPC, an Amstrad emulator for Amiga also by Kevin Thacker.
  
  
Line 33: Line 44:
 
* Source : [http://www.cpctech.org.uk/arnsrc.zip Arnold wip source] - May 13 2017
 
* Source : [http://www.cpctech.org.uk/arnsrc.zip Arnold wip source] - May 13 2017
 
* Windows: [http://www.cpctech.org.uk/setup.zip Installer for Windows ] - May 13 2017
 
* Windows: [http://www.cpctech.org.uk/setup.zip Installer for Windows ] - May 13 2017
* MAC : [http://www.cpctech.org.uk/arnold.dmg Arnold for Mac] - June 2016
+
* MAC : [http://www.cpctech.org.uk/arnold.dmg Arnold for Mac] - August 2017
 +
* deb package for Debian/Ubuntu: [http://www.cpctech.org.uk/arnold_1.0.0-1_amd64.deb Arnold for Linux] - August 2017
 +
* rpm package for Fedora/SuSE: [http://www.cpctech.org.uk/arnold-1.0.0-1.x86_64.rpm Arnold for Linux] - August 2017
  
 
== "Acid tests" ==
 
== "Acid tests" ==
Line 41: Line 54:
 
It also attempts to show the differences with the ICs used by the Amstrad which came from different manufacturers (8255, CRTC etc)
 
It also attempts to show the differences with the ICs used by the Amstrad which came from different manufacturers (8255, CRTC etc)
  
* Acid tests: [http://www.cpctech.org.uk/test.zip Acid tests]
+
* Acid tests: [[File:Acid Tests Suite.zip]] [http://www.cpctech.org.uk/test.zip Acid tests]
  
 
== Web links ==
 
== Web links ==

Latest revision as of 13:46, 30 March 2024

Arnold is a CPC emulator written and maintained by Kevin Thacker.

The newest version is 13/05/2017. This is the "work in progress"/"wip" version which is already very advanced and is more accurate than most existing emulators. This is verifable using the 'acid test' test programs which are freely available for others to use to improve their emulators.

Arnold is being actively developed and there are updates to the code almost daily. The work in progress version uses SDL for the display, audio and input and wxWidgets for the GUI. It is built with cmake and now all versions (Mac OS X, Linux/Unix and Windows) have identical functionality and interface.

Arnold aims for maximum emulation accuracy across the whole CPC and Plus range as well as the KC Compact, Aleste 520Ex and the GX4000. The emulator has various devices that can be enabled and there is extensive configuration possible.


The following devices are emulated and useable:

The following are partially emulated:

The following are in progress:

The following are based on hacking the ROMs so need much more testing


Previous versions shared the same emulation core, but each port was managed separately and had different user interfaces. The Windows port made by Kevin, Apple Macintosh port by Richard Bannister and Linux port by Andreas Micklei. There is also a Linux "nurgle" version which contains patches and improvements over the original by Elmsoft and Nurgle.

The initial version was written in C on Windows and used DirectX.

Previously to this there was A-CPC, an Amstrad emulator for Amiga also by Kevin Thacker.


Arnold WIP

"Acid tests"

Arnold comes with a collection of tests which are used to verify it's operation against real CPC, Plus and expansions. These tests aim to test every feature and bug of the hardware including rarely used ones. It also attempts to show the differences with the ICs used by the Amstrad which came from different manufacturers (8255, CRTC etc)

Web links

Older Arnold versions: