© AUG 15 2026 ***STILL A WORK IN PROGRESS*** This is an attempt at improving my previous emulator I made. This project is guaranteed to be (almost) 100% compatible with the original Amstrad CPC 464 computer and other related hardware. It uses the same instructions and BASIC interpreter and the same program format meaning you could very well export the code you've written (from the list using the cassette save icon) then transport that code to an original machine and have it run completely fine without any needs for modifications. Here are currently supported commands in the BASIC interpreter : LIST POKE PEEK RUN GOTO GOSUB REM PRINT FOR... I... IF... THEN... IF NOT... THEN... RASS (*Special machine code instruction) SAVE LOAD NEW CAT SOUND SLEEP EDIT INPUT Note : Pressing the cassette load icon preforms the same action as typing in "LOAD". Unfortunately, Scratch no longer supports the if shift being pressed meaning that I almost gave up on it being able to differentiate upper-case and lower-case characters, but thankfully, there is a solution, by pressing the '@' key, it enables upper-case and pressing it again disables it back to lower-case, and just like that, you can obtain upper-case characters, you can also click on the sprite at the bottom right labeled "Upper-case", and also, Scratch thankfully still supports the good old if enter key pressed hack, for now. You can also use the '#' key as a delete key to return to the previous character is you make a mistake. Only alphabetic keys from A-Z require the use of the '@' to be in upper-case, all other symbols such as " ( ) - _ + = can just use the regular shift key. You can also press the enter key with upper case activated in order to simulate escape and quit the execution of the loaded program to return to the READY prompt. As of now, there is not yet any support for machine language or Zilog assembler or even any graphics modes or graphics related commands but I am planning on developing and upgrading this project a little more over time. I am planning on giving a more in depth explanation on how to program and use this project but its simply just the BASIC programing language so there is not much need to learn anything exceptional other than BASIC in order to program this computer. You can also save or load programs you've written in BASIC on lists and export them to text files on your computer and maybe even load them on an original machine. As of now, there are only 27 pre-defined string-variables you can use in code from A$ to Z$ with the extra INKEY$ variable. There is also 1K of RAM accessible to the user and the code via the PEEK and POKE commands to maybe use as extra variables or something like that. In the future, I will add support for Zilog-assembler and machine language for you to be able to write in RAM a series of assembler instructions and execute them via the integrated RASS command I have added. Also, for now there is not vertical text scrolling so when the text on the display reaches the displays text limit, it just resets the display. There are also 26 pre-defined numeric variables named from NUM1 to NUM26.
Thanks to https://scratch.mit.edu/projects/838755752 for the fonts. Thanks to https://www.amibay.com/threads/repair-of-amstrad-ctm-644-cpc-colour-monitor.117371/ for the image of the display. This is a computer I own and I was gifted it back in 2023 for my birthday. It was the computer that introduced me to BASIC for the first time, and its on this very machine that I now program using more advanced stuff like Microsoft Quick Basic. Thus, I have decided to create an emulation project for curious people wanting to experiment with it. The Amstrad CPC 464 computer released in 1984 is one of the first computer in the CPC (Color Personal Computers) range released by Amstrad. Intended for use as a home micro computer, it was sold with many different software titles many of them being games written in assembler, machine code or just plain BASIC. It runs on Locomotive BASIC version 1.0 which is simply just a clone of the original Microsoft BASIC operating system. It sports a Zilog Z80 processor clocked at 4 MHz with a compatible UMC branded clone of the famous Motorola 6845 display controller. It has 64K of ram and a built in tape drive for saving and loading programs (and maybe other types of documents). Having a Z80, it's theoretically possible to run the original CP/M operating system by Digital Research on it. Update 30/09/2026 : 33 Views yay!