Transferring files to Acorn CP/M Disks
This article describes the two, albeit similar, approaches to transfer software to Acorn CP/M Disks. The process relies on the files being present on a DFS disk first. When working with DFS disk images, this can easily be achieved with tools such as the BEEB program often distributed with BBC Computer SD/MMC based storage solutions etc.
The examples here use disk images and the BEEB command.
Simple Example: Creating CPM Disk for Tiny Basic
Tiny Basic consists of a single .COM file and an associated .DOC file and is simply a matter of copying the files over.
Using a blank DFS disk image use the BEEB command to add the TBASIC command and document files, e.g.
$ beeb putfile blank.ssd TBASCOM $ beeb putfile blank.ssd TBASDOC
Boot to CPM using the CPM-BOOT.dsd disk, placing the newly populated DFS disk in drive 1. Run the READDFS.BBC basic command e.g.
A:>BBCBASIC Acorn BBC BASIC Version 2.20 (C) Copyright R.T.Russell 1983 > >CHAIN "READDFS"
At this point you will be prompted for two filenames. However, before continuing, place a blank formatted CP/M disk in drive A: Enter the following.
Enter DFS drive/filename: :1.$.TBASCOM
Enter CP/M drive/filename: A:TBASIC.COM
This once complete will return to the basic prompt, simply type RUN to copy more files e.g.
>RUN
Followed by...
Enter DFS drive/filename: :1.$.TBASDOC
Enter CP/M drive/filename: A:TBASIC.DOC
Example Using HEX Files: Kermit 411
For software, such as Kermit is distributed using two hex HEX files. In this case, one hex file is the platform specific element and the other is the program, therefore a different approach is needed.
For the Acorn CP/M system, Kermit is distributed with the following two files. The process to be used is similar to the example above, however, the CPSKER.HEX file is too large to be handled in one using READDFS' so this needs to be split into chunks les than 32K. This can be done using a text editor as the HEX file is a text file. Splitting it into 500 line chunks seems to work well.
CVPBBC.HEX CPSKER.HEX
After split the CPSKER.HEX file into CPSKER1,CPSKER2 and CPSKER3 (not that the extension has been removed for now) and renaming the CPVBBC.HEX file to simply CPVBBC, these can be copied to a blank DFS disk. The example below uses the BEEB command, e.g.
$ beeb putfile blank.ssd CPVBBC $ beeb putfile blank.ssd CPSKER1 $ beeb putfile blank.ssd CPSKER2 $ beeb putfile blank.ssd CPSKER3
Boot to CP/M using the Acorn CPM1 disk, placing the newly populated DFS disk in drive 1. Run the READDFS.BBC basic command e.g.
A:>BBCBASIC Acorn BBC BASIC Version 2.20 (C) Copyright R.T.Russell 1983 >CHAIN "READDFS"
At this point you will be prompted for two filenames. However, before continuing, place a blank formatted CP/M disk in drive A: (see note below). Enter the following.
Enter DFS drive/filename: :1.$.CPVBBC
Enter CP/M drive/filename: A:CPVBBC.HEX
This once complete will return to the basic prompt, simply type RUN to copy more files e.g.
>RUN
Followed by...
Enter DFS drive/filename: :1.$.CPSKER1
Enter CP/M drive/filename: A:CPSKER1.HEX
Repeat the above process for the CPSKER2 and CPSKER3 files.
This will copy the files to the blank CP/M disk, at this point place the Acorn CPM1 disk in Drive B: and use PIP can be used to combine these back to a singe HEX file, e.g.
A:> B:PIP CPSKER.HEX=CPSKER1.HEX,CPSKER2.HEX,CPSKER3.HEX
The MLOAD command can link these to create KERM411.COM, e.g.
A:> B:MLOAD KERM411=CPSKER,CPVBBC