# Amstrad CPC

<div align="left"><figure><picture><source srcset="https://raw.githubusercontent.com/fabricecaruso/es-theme-carbon/91d85c7849cc550b0cac4e75cb8e0923d3b61b5e/art/logos/amstradcpc-w.svg" media="(prefers-color-scheme: dark)"><img src="https://raw.githubusercontent.com/fabricecaruso/es-theme-carbon/52ff37c9e265587d006945a2ba695b5a962b3a3d/art/logos/amstradcpc.svg" alt=""></picture><figcaption></figcaption></figure></div>

Computer - Lifespan: 1984 - 1990

{% embed url="<https://en.wikipedia.org/wiki/Amstrad_CPC>" %}

## Information

<table data-header-hidden><thead><tr><th width="184"></th><th></th><th data-hidden></th></tr></thead><tbody><tr><td><strong>Emulators</strong></td><td><ul><li>libretro: cap32</li><li>libretro: crocods</li><li>capriceforever</li></ul></td><td></td></tr><tr><td><strong>Games Location</strong></td><td><span data-gb-custom-inline data-tag="emoji" data-code="1f4c1">📁</span> roms \ <span data-gb-custom-inline data-tag="emoji" data-code="1f4c2">📂</span> amstradcpc</td><td></td></tr><tr><td><strong>File extensions</strong></td><td>.dsk .sna .tap .cdt .voc .m3u .zip .7z</td><td></td></tr></tbody></table>

## System Features

<table><thead><tr><th width="245">Retroachievements</th><th width="200">Netplay</th><th>Controller autoconfig</th></tr></thead><tbody><tr><td>lr-cap32: YES<br>lr-crocods: NO<br>capriceforever: NO</td><td>lr-cap32: YES<br>lr-crocods: YES<br>capriceforever: NO</td><td>lr-cap32: YES<br>lr-crocods:YES<br>capriceforever: YES</td></tr></tbody></table>

## Features

| RetroAchievements | NetPlay |
| ----------------- | ------- |
| YES               | YES     |

## BIOS

No BIOS files required for Amstrad CPC.

## Controls

Cap32 & crocods cores allow you to choose between the following controller types:

* JOYSTICK
* KEYBOARD (Consider enabling Game Focus feature for keyboard games)
* LIGHTGUN (cap32 only)

| Retrobat Button                                                                                                                                                                                                    | Amstrad CPC key |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------- |
| START                                                                                                                                                                                                              | RETURN          |
| SELECT                                                                                                                                                                                                             | SPARE           |
| D-PAD                                                                                                                                                                                                              | D-PAD           |
| Left analog stick                                                                                                                                                                                                  | D-PAD           |
| Right analog stick                                                                                                                                                                                                 |                 |
| ![](https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2F5yYVjQu41LdiMVCXpyNa%2Fimage.png?alt=media\&token=e43f5c0f-2c53-49cc-9271-2385216d89df) |                 |
| ![](https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2FW8q8wzu0yW9Htt5h4zEA%2Fimage.png?alt=media\&token=a4ae3ad3-3a80-4c28-8b15-92a1b5a80da7) | Fire 2          |
| ![](https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2FQlIryQa7tR2pBTWHhMXR%2Fimage.png?alt=media\&token=e1940a32-2494-4e92-a8b1-df9a722ed4f8) | Fire 1          |
| ![](https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2FxHRhyw00NGOZ8cEPrQdp%2Fimage.png?alt=media\&token=d6027ace-7176-4b82-b702-e3b2b65d7cd4) |                 |
| L1                                                                                                                                                                                                                 | cap32: CTRL     |
| R1                                                                                                                                                                                                                 | cap32: INTRO    |
| L2                                                                                                                                                                                                                 | cap32: F1       |
| R2                                                                                                                                                                                                                 | cap32: F2       |
| L3                                                                                                                                                                                                                 |                 |
| R3                                                                                                                                                                                                                 |                 |

### Libretro-Cap32 remap override

RetroBat has setup a specific capability to automate libretro-cap32 remapping from a json file.

The JSON file is located in the folder `system\resources\inputmapping` of the RetroBat installation and is named **libretro\_cap32.json.**

Inside this file, it is possible to force a remap for specific games, which will be automatically identified by RetroBat based on the filenames listed in the json "Roms" section, or with the normalization of the filename and the json "Name" value:

<div align="left"><figure><img src="https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2FFP7MfYTYUDKmX03UVDMX%2Fimage.png?alt=media&#x26;token=29e89990-c8dc-4988-ac39-d6db1862b937" alt=""><figcaption></figcaption></figure></div>

In the above example, if the BombJack game is launched with RetroBat, the buttons L2, R2 and select from the gamepad will automatically be assigned to keyboard keys 1, 2 and J of the keyboard:

<div align="left"><figure><img src="https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2FSxRbkUT2pXR90Q3q7isM%2Fimage.png?alt=media&#x26;token=c3b62b32-6f22-4f65-acfd-24c6431c7100" alt=""><figcaption></figcaption></figure></div>

{% hint style="info" %}
Do not hesitate to share your own game remaps with the RetroBat team.

In case you update this file, place your version in the user\inputmapping folder of your RetroBat installation, else it might be overwritten with a RetroBat update.
{% endhint %}

### Visual keyboard

**cap32** : Press START + ![](https://990680527-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FexdzL60ZuqPLldz2AYta%2Fuploads%2F5yYVjQu41LdiMVCXpyNa%2Fimage.png?alt=media\&token=e43f5c0f-2c53-49cc-9271-2385216d89df) to display the visual keyboard while running the game.

## Specific system information

### Force Cap32 core to use a specific command line when running a game

Cap32 libretro core offers an "autorun" fonctionnality that would automatically type the command line to execute the game in the Amstrad BIOS. However, in some cases for .dsk files, the command line might be incorrect.

To solve this issue, it is possible to use a .m3u file to force a different command line, proceed as follows:

Create a .m3u file with any text editor and specify:\
\- the command line to be executed\
\- the filename of your game

**Exemple:**

```
#COMMAND:RUN"COMMANDO.BIN
Commando (Europe).dsk
```

With this file, RetroBat will inform the emulator to run the "Commando (Europe).dsk" file and to write the command line `RUN"COMMANDO.BIN`

Once the .m3u is created, you can run it from within RetroBat with the Cap32 core.
