• Please review our updated Terms and Rules here

cpm autostart game disk images

j03m4n

New Member
Joined
Jan 5, 2025
Messages
9
Hi everyone, I wanted to somewhat familiarize myself with CP/M so I ended up creating a bunch of autostart CP/M game disks with generic ascii games for numerous systems. The biggest challenges were the different disk formats, the screen formatting and making them autostart. Here's a link:
CP/M GAME DISKS
 
Last edited:
There's a few more PCW games and disks that autostart that you can find on the PCW forums.. And you can change the boot code to make them work on the 9512.

Welcome to the forum :)
 
There's a few more PCW games and disks that autostart that you can find on the PCW forums.. And you can change the boot code to make them work on the 9512.

Welcome to the forum :)
Thanks for the Welcome! Yes, I downloaded that collection. Very nicely done. "A few" LOL, that's an understatement. I tried to avoid any duplication, so I'm pretty sure most of the PCW stuff I uploaded wasn't included in your collection.
 
there are utilities for CP/M where you can set the autostart and change it for a warm boot or a cold boot.

works like autoexec.bat in dos.

This would allow an easy way to create these disks.

many times you don't want to waste disk space and you would autostart to a simple disk menu there is cp/m programs that will auto generate a disk menu as well then on warm boot which occurs when exiting a program to cp/m it just launches the disk menu.
this allows having zork 1,2,3 etc on a single floppy or harddrive and launching them that way for demos if you want to keep people out of the command prompt.
 
there are utilities for CP/M where you can set the autostart and change it for a warm boot or a cold boot.

works like autoexec.bat in dos.

This would allow an easy way to create these disks.

many times you don't want to waste disk space and you would autostart to a simple disk menu there is cp/m programs that will auto generate a disk menu as well then on warm boot which occurs when exiting a program to cp/m it just launches the disk menu.
this allows having zork 1,2,3 etc on a single floppy or harddrive and launching them that way for demos if you want to keep people out of the command prompt.
Thanks. Yeah, I encountered quite a few utilities like this in my journey, but they're mostly proprietary and don't work across systems. I tried a few, couldn't get any to work, and finally decided it was too much of a waste of time (as if this whole project wasn't a waste of time LOL). In the PDF in that folder you linked to it says "This program is specifically for Altair CP/M 2.2 and will not work with versions of CP/M for other types of computers." If a system contained this type of program, I used it. I included that information in a text file for each system. (Yeah, they're a mess, I intend to clean them up.)

There ARE a few of these disks with Basic games that are menu driven, and reload the menu, but as far as disk space, my aim (besides learning and getting a feel for CP/M) was to create disks for arcade systems LOL. Not that anyone's ever going to play these games, but when you have built an arcade, you want EVERYTHING, and most arcade setups have plenty of space. If anyone wants to consolidate this stuff into full disks with menus, have at it. I've, hopefully, included enough information that it wouldn't be too difficult. I'm sure that would be helpful for people using real vintage hardware. I remember the good old days when we tried to cram as much as we could onto every floppy we had.
 
Last edited:
all cp/ms have the autostart area
deramp has the tutorial on it

It is neat since you can customize to run different programs for a cold boot or a warm boot.

nothing like making arcade games for these old machines.
:)
DSCN6410.JPG
DSCN6412.JPG
DSCN6413.JPG
DSCN6414.JPG
 
I believe you're using an Altair, and that Autorun program is designed for the Altair. Like I said (and it says in the PDF and in the video when the program starts), your Altair utility won't work for other systems, the locations are different. Unless you're using real disks, it's easier to search for the startup string location in a disk image with a hex editor, and change it, than the DDT method which requires knowledge of the startup string location. It (the startup string location) might be in different areas for other systems, so if you don't know the location DDT won't work. My biggest problem is finding the mode byte, or "iobyte" to change the behavior between cold boot, warm boot, or both (it's only a problem if the startup runs on warm boot), it is also located in different areas for other systems, but there is no easy way to find it (that I know of). If anyone knows of a way to locate the IOBYTE, Please share.
 
Last edited:
You have the source code on deramps site. the program is easy to port and recompile on different machines.
obviously going from a 8080 or Z80 to a 6502 will require more translation.

"Any chance you could give us a quick summary, for those of us not wanting to sit through 13 minutes of video?"

Set speed to 2x and you can view it in 6.5 minutes 🙃.
 
Last edited:
  • Like
Reactions: cjs
You have the source code on deramps site. the program is easy to port and recompile on different machines.
obviously going from a 8080 or Z80 to a 6502 will require more translation.

"Any chance you could give us a quick summary, for those of us not wanting to sit through 13 minutes of video?"

Set speed to 2x and you can view it in 6.5 minutes 🙃.
Well, I managed to do 24 systems without porting and recompiling the deramps stuff, (Your original post talked of making it easier, it's sounding harder all the time LOL) so I'll pass on that. But if anyone else compiles versions of the Deramps Autostart for different systems, please share. It would be very useful for users of these systems. And as far as "Set speed to 2x" LOL, great advice, I do that all the time!
 
Any chance you could give us a quick summary, for those of us not wanting to sit through 13 minutes of video?

Is there anything in it not mentioned in the answers to the RCSE question "How do you run a program automatically when CP/M 2.2 loads?"
Going off on a tangent, if there are any vintage computing videos on Youtube you'd want to watch, I'd say that the ones Deramp makes are some of the best ones. No extra fluff to fill out time to generate more ad revenue or whatnot, but also no "tiktok 3 second video" skipping of details. At least everyone I've seen have been about microprocessor based computers from the 70's.
 
Note that each CP/M platform has their own method of booting, and that determines where the CCP resides on the disk, which determines where one must patch the CCP command buffer for the autostart. Also, proper operation of the autostart feature of the CCP requires that the platform's BIOS make the proper jumps into CCP on cold vs. warm boot. There are also some vendors that have not used the method Digital Research provides and do other things to make it work, and still other vendors that don't really support it. It is unlikely that one vendor's utility to set the autostart program will work on all platforms. I haven't looked at the source code, but even if it searches the boot tracks for some CCP signature, that won't work on platforms where the CCP is kept in a file or some reserved part of the directory.

But, if you can determine where the CCP is located on the disk, then you can patch the command buffer to insert (or remove) an autostart command. Provided the BIOS does the right thing, it should then work. One of the most common mistakes that vendors make with their BIOS is that they always call the CCP cold start entry which results in the autostart command being executed on every warm boot as well as initial cold boot. I've even see some BIOS that try to work around the problem by clearing the command buffer on warm boot - rather than simply calling the CCP warm start entry (which zeros the buffer length byte and prevents the autostart command from being run).
 
Note that each CP/M platform has their own method of booting, and that determines where the CCP resides on the disk, which determines where one must patch the CCP command buffer for the autostart. Also, proper operation of the autostart feature of the CCP requires that the platform's BIOS make the proper jumps into CCP on cold vs. warm boot. There are also some vendors that have not used the method Digital Research provides and do other things to make it work, and still other vendors that don't really support it. It is unlikely that one vendor's utility to set the autostart program will work on all platforms. I haven't looked at the source code, but even if it searches the boot tracks for some CCP signature, that won't work on platforms where the CCP is kept in a file or some reserved part of the directory.

But, if you can determine where the CCP is located on the disk, then you can patch the command buffer to insert (or remove) an autostart command. Provided the BIOS does the right thing, it should then work. One of the most common mistakes that vendors make with their BIOS is that they always call the CCP cold start entry which results in the autostart command being executed on every warm boot as well as initial cold boot. I've even see some BIOS that try to work around the problem by clearing the command buffer on warm boot - rather than simply calling the CCP warm start entry (which zeros the buffer length byte and prevents the autostart command from being run).
I'm wondering if you have any information on the c64 cp/m. It executes autostart on a warm boot, unfortunately. Can it be changed so that it Doesn't execute the autostart on warm boot?

Felipe Antoniosi created a fantastic c64 cp/m bootdisk that autoruns Soft80.com and doesn't execute on warm boot. I used this bootdisk as a source for my disks, you can hexedit the soft80 entry to autorun whatever you want, so problem solved.

Well I tried to create another boot disk for stuff using TVBIOS which provides terminal emulation to c64 cp/m 40 column mode. Unfortunately, TVBIOS isn't compatible with the soft80 boot disk, but the new bootdisk won't autorun like the soft80 disk (I contacted Felipe, he doesn't remember what he did, and doesn't have the source code from 7 years ago), so I'm stuck with the standard autostart that runs on warm boot, which, of course, causes problems. This was discussed here Autoexec.bat for cpm, Did anyone find the iobyte or mode byte for the c64?
 
I don't really know anything about C64, sorry. Perhaps someone else does. It will depend on the BIOS and it's also possible some vendors supplied a non-standard CCP.
 
Hi everyone, I wanted to somewhat familiarize myself with CP/M so I ended up creating a bunch of autostart CP/M game disks with generic ascii games for numerous systems. The biggest challenges were the different disk formats, the screen formatting and making them autostart. Here's a link:
CP/M GAME DISKS
Terrific job. Thank you!
 
One useful suggestion: would be nice to have for each system a disk image with the CP/M system distro used.
In that way we can keep track for each platform the version used to build the floppy games and eventually future enhancements.
Thanks!
 
Back
Top