Bootstrapping a CP/M system to usability :)

From: Jim Battle <frustum_at_pacbell.net>
Date: Wed Jul 17 23:32:03 2002

At 06:20 PM 7/17/02 -0700, Ross Archer wrote:

>I'm suffering from what one might call the
>"first program" problem. That is, I want to
>download CP/M programs (editor, assembler,
>and BASICK for starters) from the 'net and
>transfer them from my PC to my "CP/M"
>machine (A Commie 128 running CP/M+) to save
>on floppy for later use.
>
>I can boot CP/M+ on Commie, but the distribution
>is very minimal. It doesn't even include ED.
>It does have PIP, if this is useful, but no
>MAC, BASIC, or any other goodies that might be


This is what tried doing for my Sol.

Yes, PIP is essential.

Hook up a serial cable from your PC to your CP/M machine. Of course, there
are all the problems of figuring out baud rate, parity, stop bits, and
whether you need a null modem or not. I can't help you there.

 From the CP/M side, type (this is from memory, so you should consult any
online CP/M command reference to get it right, such as:

http://www.iso.port.ac.uk/~mike/interests/chistory/documents/cpm-22-manual/ch1.html

)


a>PIP FOO.HEX=RDR:

RDR: is logical device which might be a paper tape reader in the old days,
but is perhaps mapped to your serial port. You need to figure out which
device is connected to the serial port. (PUN: perhaps?)

Then on the PC, use hyperterm or whatever to transfer the program you want
to send in intel HEX format. You can't send a straight binary file (well,
perhaps the O option flag might allow it, but I don't know).

There are some useful options, such as H, which verifies that the received
file is in legal intel hex format.

One problem I had was that as the file is received, PIP stops every so
often to write sectors to disk. The Sol serial port doesn't have any type
of flow control, so the file would get corrupted since characters would be
dropped during that time. The B option might be useful to prevent it, but
I didn't know about it at the time. Experiment and see if that works for you.

So once you have the file, type

a>LOAD FOO

and FOO.HEX will be read and will generate FOO.COM.

Of course, if you don't have LOAD, you are kind of out of luck there.

What I ended up doing for my Sol was that there is a very primitive monitor
for doing some basic probing and such. One command allows entering bytes
directly into memory via hex input. There is another command that
redirects input to come from the serial port instead of the keyboard. What
I did was started CP/M, then jumped back to the monitor, redirected the
input to the monitor to come from the serial port, transferred my hex file,
switched back to input from the keyboard, re-entered CP/M, then used the
SAVE command (which is built into CP/M; it isn't a transient program so it
won't appear on your disk -- you always have it) to create the .COM file.

Good luck.


-----
Jim Battle == frustum_at_pacbell.net
Received on Wed Jul 17 2002 - 23:32:03 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:35:02 BST