Changes
CP/M 2.2
,CP/M 2.2 was the first CP/M avaiable for the Amstrad CPC. A minimum requirement to run CP/M was a disc drive therefore CP/M 2.2 came bundled with the Amstrad [[DDI-1]] discdrive, making it possible to run CP/M 2.2 on the Amstrad CPC 464. Later when the Amstrad CPC 664 was released, CP/M 2.2 came together with this machine as the 664 had a built in discdrive.
== Implementation ==
=== Amstrad CPM 2.2 ===
* Amstrad CPM2.2 uses Amstrad's "System" format. This is 40 tracks, 1 side, 9 sectors per track numbered &41-&49. There are two reserved tracks, then the directory which has 64 entries, and then the data area.
* CP/M is booted by a RSX command "|CPM" which is implemented by the AMSDOS ROM (the standard disc ROM in the DDI-1, CPC664, CPC6128 and 6128Plus).
1. The |CPM command loads track 0, side 0, sector 41 into ram at &100 and jumps to it. This is the boot sector. (The boot sector occupies &100-&2ff).
2. The boot code copies the BIOS jumpblock from the AMSDOS rom to &500. (In the AMSDOS ROM this is located at &C17F. The actual address is passed to the boot rom in BC).
3. The boot code then loads track 0, side 0, sector 42 into ram at &300 which is the "configuration" sector which defines colours, mode, and keyboard translation tables. (The configuration sector occupies &300-&4ff).
4. Finally the boot code calls CPM "WBOOT".
* WBOOT loads multiple sectors from the reserved tracks, this is the platform independent CPM system (BDOS etc).
== Download ==