Emulator IDs

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search

Some CPC emulators use Port &FEFE to provide a method to identify a specific CPC emulator. CPC programs could use this ID to detect an emulator and change some of their behaviour (e.g. changing graphic effects which will not work on an emulator or using special emulator-specific features). Reading from this port returns the Emulator-ID or &FF on the real CPC and on emulators which do not provide this feature.

Showing the Emulator-ID

In Locomotive BASIC, type the following command:

PRINT HEX$(INP(&FEFE))

List of known Emulator-IDs

- #78: Amspirit
- #88: VirtualCPC
- #99: WinCPC
- #A0: JavaCPC
- #AA: PC-CPC
- #C0: C-One Normal
- #C1: C-One Turbo
- #C2: TREX Normal
- #C3: TREX Turbo
- #CE: CPCE
- #FF: Caprice, WinApe, MAME or a real CPC

NOTE: It should be noted that the value #FF is just valid on a bare CPC (not plus!) and any extensions connected can change this!