PDA

View Full Version : Running CPM3 on a PC is a "DOS Box"



monahan_z
May 8th, 2010, 11:53 AM
:pI hope the more experienced CPM users on this forum will excuse this, but a number of people have asked me how to edit, assemble (even test) CPM programs for old S-100 systems on a PC. There is are many ways to do this of course but to get newcomers started, I have written up ONE approach to do this using Peter Schornís AltairZ80 Simulator. It can be seen here:-

http://s100computers.com/Software%20Folder/Altair%20Simmulator/Altair%20Software.htm

Chuck(G)
May 8th, 2010, 02:12 PM
It all depends. Do you want to run the programs running in an isolated box or do you want them fully integrated in your Windows/DOS environment? Two different approaches.

Raven
May 8th, 2010, 06:13 PM
It all depends. Do you want to run the programs running in an isolated box or do you want them fully integrated in your Windows/DOS environment? Two different approaches.


how to edit, assemble (even test) CPM programs for old S-100 systems on a PC

This leads me to believe that the point is to do it isolated, since it's testing for the native environment.

Chuck(G)
May 8th, 2010, 10:16 PM
This leads me to believe that the point is to do it isolated, since it's testing for the native environment.

Nope, not really--there are a few emulators that allow one to use DOS files and run commands from a DOS command prompt. So, for instance one can code a file using one's favorite windows/DOS editor and compile and run without leaving the DOS session. SInce CP/M systems are as varied as flowers that bloom in the spring, there is no one "native environment", not even for S-100 systems.

I think I speak from a position of some authority. :)

MikeS
May 8th, 2010, 10:43 PM
Nope, not really--there are a few emulators that allow one to use DOS files and run commands from a DOS command prompt. So, for instance one can code a file using one's favorite windows/DOS editor and compile and run without leaving the DOS session. SInce CP/M systems are as varied as flowers that bloom in the spring, there is no one "native environment", not even for S-100 systems.

I think I speak from a position of some authority. :)Well, our young friend often speaks from a somewhat different position... ;-)

I understand there's a CP/M emulator out there called 22NICE; do you happen to know if it works in the pre-XP/2K versions of Windows, or just DOS?

leeb
May 9th, 2010, 12:21 AM
Well, our young friend often speaks from a somewhat different position... ;-)

I understand there's a CP/M emulator out there called 22NICE; do you happen to know if it works in the pre-XP/2K versions of Windows, or just DOS?

My 2 cts...

It SHOULD be able to operate in a Windows that is NOT NT/2K/XP-related... as you likely know, they have 'absolute power' over peripherals... particularly the floppy drives...
I have an emulator for my Tandy 4p that does just fine... even in XP, except for the FD access issue.
Oh yeah... and the fact that I have a 'nonstandard' IDE controller in my 'real' hardware, too! :p

Chuck(G)
May 9th, 2010, 08:50 AM
Well, our young friend often speaks from a somewhat different position... ;-)

I understand there's a CP/M emulator out there called 22NICE; do you happen to know if it works in the pre-XP/2K versions of Windows, or just DOS?

I run it under XP. While it's true that some programs may access the hardware directly, there's a way to trap that within the emulator if one wants.

I note that the topic is CP/M 3, however, not 2.2. I'm not sure why an assembly would require 3.0, but that is a very different situation. 22Nice emulates a CP/M 2.2 environment, as do most other emulation packages. CP/M 3.0 requires bankswitching hardware and a rather more complex BIOS.

If a true CP/M 3.0 emulation is required YAZE-AG is pretty decent (http://www.mathematik.uni-ulm.de/users/ag/yaze-ag/). There apparently is also a SIMH adaptation that does it also, or at least claims to have that capability. Herb Johnson has a rundown of emulators on his Retrotechnology site.

Raven
May 9th, 2010, 07:23 PM
Well, our young friend often speaks from a somewhat different position... ;-)

I understand there's a CP/M emulator out there called 22NICE; do you happen to know if it works in the pre-XP/2K versions of Windows, or just DOS?

Yeah excuse my perspective, I'll just creep back out of CP/M land - I really don't belong here, heh.

leeb
May 9th, 2010, 09:50 PM
I run it under XP. While it's true that some programs may access the hardware directly, there's a way to trap that within the emulator if one wants.

I note that the topic is CP/M 3, however, not 2.2. I'm not sure why an assembly would require 3.0, but that is a very different situation. 22Nice emulates a CP/M 2.2 environment, as do most other emulation packages. CP/M 3.0 requires bankswitching hardware and a rather more complex BIOS.

If a true CP/M 3.0 emulation is required YAZE-AG is pretty decent (http://www.mathematik.uni-ulm.de/users/ag/yaze-ag/). There apparently is also a SIMH adaptation that does it also, or at least claims to have that capability. Herb Johnson has a rundown of emulators on his Retrotechnology site.

The 4/4p emulator I have is more a machine emulator rather than being a CP/M emulator... it will run TRSDOS for the 4/4p and is set up to even handle default hard-drive configurations. Because of it, I was able to get my 4p working with an IDE HD.

I hope (in the near future) to convert to CPM-3 tho I will have to 'create' it since I havent been able to find it for the Model 4/4p (tho I know it existed)...

MikeS
May 9th, 2010, 09:56 PM
Yeah excuse my perspective, I'll just creep back out of CP/M land - I really don't belong here, heh.Pshaw, everyone's welcome; expand your horizons with some real vintage hardware, not those boring PC toys of yours... ;-)

Chuck(G)
May 9th, 2010, 09:57 PM
The 4/4p emulator I have is more a machine emulator rather than being a CP/M emulator... it will run TRSDOS for the 4/4p and is set up to even handle default hard-drive configurations. Because of it, I was able to get my 4p working with an IDE HD.

I hope (in the near future) to convert to CPM-3 tho I will have to 'create' it since I havent been able to find it for the Model 4/4p (tho I know it existed)...

AFAIK, the basic CP/M 3 OEM kit is online. So all you have to do is write a CBIOS and XIOS. Should be a lot simpler than an MS-DOS or *nix port. Do your XIOS right and you can use it for MP/M with very few modifications. Few people realize that CP/M 3 is basically a single-console version of MP/M.

leeb
May 22nd, 2010, 11:21 PM
AFAIK, the basic CP/M 3 OEM kit is online. So all you have to do is write a CBIOS and XIOS. Should be a lot simpler than an MS-DOS or *nix port. Do your XIOS right and you can use it for MP/M with very few modifications. Few people realize that CP/M 3 is basically a single-console version of MP/M.

Ah...
I believe, in truth, that MP/M is actually a 'ported-and-relieved and stroked-and-bored' version of CP/M-3... ;)
It does 140 in the top end, floored.

Ive just been too freaking lazy to piecemeal the original BIOS... not to mention that Im used to my own assembler and would have to learn another one... not that I shouldnt! :D

Besides, if I make CP/M-3 work, I'll have to replace the defective 2nd bank of RAMS... and that is SOOOO expensive. (NOT!) :razz:

granzeier
July 27th, 2010, 04:40 PM
How about Virtual Box? Does anyone have a CD image (ISO please) that I can use to unstall CP/M-86 into a small virtual PC on my notebook?

Thanks,

Art

Chuck(G)
July 27th, 2010, 04:42 PM
Ah...
I believe, in truth, that MP/M is actually a 'ported-and-relieved and stroked-and-bored' version of CP/M-3... ;)
It does 140 in the top end, floored:

Actually, MP/M came first, then CP/M 3 (or CP/M Plus, if you will). I've got an early version of MP/M; it's pretty unstable.