System information
6.2 First-level System Regeneration
The procedure to patch the CP/M system is given below. Address references in each step are
shown with H denoting the hexadecimal radix, and are given for a 20K CP/M system. For larger
CP/M systems, a bias is added to each address that is shown with a +b following it, where b is
equal to the memory size-20K. Values for b in various standard memory sizes are listed in Table
6-1.
Table 6-1. Standard Memory Size Values
Memory Size Value
24K: b = 24K - 20K = 4K = 1000H
32K: b = 32K - 20K = 12K = 3000H
40K: b = 40K - 20K = 20K = 5000H
48K: b = 48K - 20K = 28K = 7000H
56K: b = 56K - 20K = 36K = 9000H
62K: b = 62K - 20K = 42K = A800H
64K: b = 64K - 20K = 44K = B000H
Note that the standard distribution version of CP/M is set for operation within a 20K CP/M
system. Therefore, you must first bring up the 20K CP/M system, then configure it for actual
memory size (see Section 6.3).
Follow these steps to patch your CP/M system:
1. Read Section 6.4 and write a GETSYS program that reads the first two tracks of a disk
into memory. The program from the disk must be loaded starting at location 3380H.
GETSYS is coded to start at location 100H (base of the TPA) as shown in Appendix C.
2. Test the GETSYS program by reading a blank disk into memory, and check to see that
the data has been read properly and that the disk has not been altered in any way by the
GETSYS program.
6.1 Introduction CP/M Operating System Manual
6-3