To get their CPM you were required to send them your system discs and essentially they provided a transfer service so they didn't infringe on Digital Research's copyright or distribution policy.
The ROM they provided had your address and serial number encoded on the ROM. A script has been written to update these details which can be downloaded from [https://github.com/cormacj/AmstradCPCRomHacks here].
== RSX/ROM Commands ==
{| class="wikitable"
|-
! scope="col" width="100" | RSX
! Details
|-
| <nowiki>|MYNAME</nowiki>
| Displays the name of the user/buyer of this set of CP/M Plus ROMs on screen.
<nowiki>|MYNAME</nowiki> by itself just prints the ROM owner name.
<nowiki>|MYNAME,1</nowiki> prints owner and serial number.
<nowiki>|MYNAME,2</nowiki> prints owner, serial and address.
|-
| <nowiki>|OHELP</nowiki>
| This RSX command will switch OFF the CP/M Plus expansion ROMs. All other ROMs will be initialiized again.
|-
|}
== BUILTIN commands ==
The ROM provides a set of additional commands by default. These can be listed using the command "BUILTIN".
These commands are:
{| class="wikitable"
! Command
! Description
|-
| 24LINE || ensures the scrolling error messages at bottom of screen
|-
| 25LINE || turns off that status line and puts any error message on screen under the bad command
|-
| AMSDOS || the 1K disc utility which ensures a clean exit from CP/M
|-
| BUILTIN || tells you all commands in your ROM
|-
| BORDER || changes the colour as in Locomotive BASIC
|-
| CAT || exists for those who resist DIR, again giving you an alphabetical sort and free space
|-
| CLS || clears the screen just as in BASIC, homes the cursor but does not affect screen mode
|-
| DATE || is supposed to display the system date and time.
|-
| DETAILS || inform you about the system set-up
|-
| EXPAND || assigns a character string to a lone keystroke
|-
| HOME || sends the cursor to the top left-hand corner of the screen without clearing the screen
|-
| INK || works as in BASIC
|-
| INVERSE || gives paper-on-ink colours, or reversed display, until the NORMAL command is given
|-
| KDS || controls the optional 8-bit port, if you have one
|-
| LANGUAGE || accesses the various character sets available
|-
| LPRINT || dumps a file to your printer
|-
| MODE || for columns on screen, as in AMSDOS
|-
| PALETTE || changes screen colours easily
|-
| PAPER and INK || do what normally happens in BASIC
|-
| ROMCAT || tells you what's on-board other accessory ROMs
|-
| SETLST || initialises the printer
|-
| SET24X80 || a single command combining MODE 2 and 24LINE functions, so existing PROFILE.SUB files need not be modified
|-
| CKEY || allocates an ASCII code to a Control+key combination
|-
| NKEY || for normal key assignment
|-
| SKEY || uses shift+key for ASCII assignment
|-
| SIGNON || lists accessory ROMs available for use under CP/M
|-
| WAIT || prompts user for keypress
|}
[[TFM]] has written ROMManager which can create these accessory ROMs and he provides downloads on his website for some that he has made himself.
[[User:Cormacj|CormacJ]] has written a python script to create accessory ROMS and also extract .COM files from ROMS. You can view this at his [https://github.com/cormacj/AmstradCPCRomHacks?tab=readme-ov-file#make_accessory_rompy AmstradCPCRomHacks] repository
Some emulators don't support the accessory ROMs because of the non-standard format. Arnold and Caprice32 supports these.
== Links ==
* [[http://futureos.cpc-live.com/ Future OS website, home of ROM Manager and TFM's Accessory ROMs]]* [https://github.com/cormacj/AmstradCPCRomHacks A python script Python scripts to update build your own accessory roms and to patch the CPM rom to update user, address, serial and passwordmessage]
[[Category:Operating System]][[Category:Expansion ROM]][[Category:CP/M]]