How to install MS DOS 1.25 on MAME?
In the last tutorial, we saw how to install MS DOS 1.25 on DOSBox-Staging. In this tutorial, we are going to install MS DOS 1.25 on MAME. If you want an introduction to MS DOS 1.25, I suggest you to read the first few paragraphs of our post how to install MS DOS 1.25 on 86Box.
You need to download the following file to follow this tutorial:
- MS DOS 1.25 CDP OEM archive
- MAME ibm5150 ROM
- MAME isa_hdc ROM
- MAME keytronic_pc3270 ROM
- mame.ini file for Linux
- mame.ini file for Windows
MS DOS 1.25 was not sold as a retailed package. It was only available to OEMs. In this tutorial we use the Columbia Data Products OEM that works well on IBM PC clones.
Creating the Virtual Machine
First you need to make sure you have installed MAME. For windows, see our tutorial on Legacy Installer on how to install MAME on Windows. For linux, you can install mame from the official repository of your distribution. See this page for a list of distributions offering the package. If your distribution does not include mame in its repositories (highly unlikely), you can build MAME from source.
After you have installed MAME, you need to create a folder in which all the files related to the emulator will reside. Open a Terminal/Command Prompt window and move to that folder. Then run:
mame -cc
You may need to specify the path to MAME if you are on Windows:
"C:\Program Files\MAME\mame.exe" -cc
This command will create some basic config files for MAME in that folder. Now open the folder in your File Manager and delete the mame.ini
file. Extract the mame.ini
file from the archive you downloaded above according to your platform and copy it to the folder in which you are storing all the files related to the emulator. Create a folder called roms
in that folder. Copy the ROM archives to that folder. Do not extract the ROMs from the zip files. Move the zip files without extracting to the roms
folder.
Extract the MS DOS 1.25 archive and open the extracted folder. Go to the images folder inside it and copy the file called CDPDOS.IMG
to the folder where you are storing all the files related to the emulator.
Now switch back to the terminal and run:
mame ibm5150 -flop1 CDPDOS.IMG
You need to prefix mame
with the path on Windows as shown above. The mame window should open:
If the window does not open and you get a ROM not found or similar error, see the troubleshooting section below. Press any key to continue. The emulation of this machine is not perfect. You will be informed about this by MAME. Press any key to continue. It might take a long time depending on your system for MS DOS 1.25 to boot. After it has booted, you will see the following screen:
When asked for Date and time, just press enter. Do not enter anything. MS DOS 1.25 has problems with dates later than year 2000, so it is best to leave the default date set. You can enter the DIR
command to see the list of files:
Now, you can close this window. Now, we can make a shell script which runs the VM on linux:
#!/bin/bash
mame ibm5150 -flop1 CDPDOS.IMG
and save the file as MSDOS1.25.sh. Then make the script executable by running the following command in terminal after navigating to that folder:
sudo chmod +x ./MSDOS1.25.sh
Then we can right click on that file and click on Run as Program to open the emulator. Some DEs and distros may have other methods of running shell scripts.
On Windows, create a file called MSDOS1.25.bat in that folder with the following contents:
"C:\Program Files\MAME\mame.exe" ibm5150 -flop1 CDPDOS.IMG
Then double click on that file to launch the emulator.
That's it. We have installed and run MS DOS 1.25 using the MAME.
Troubleshooting
First make sure that you have placed the roms files in the correct place. Do not extract the files. Place the zip files directly in the roms
folder.
On Linux, there might be another error. MAME might have been configured to look in your ~/.mame
folder for its config files. If that is the case, running the command mame
without any parameters in the folder where you have stored the files would result in MAME opening in full screen instead of a window. If you are affected by this problem, here is the solution:
- Configure your file manager to show hidden files.
- Go to the
~/.mame
folder. - Delete the
mame.ini
file there. - Copy the
mame.ini
file you downloaded from above to that folder.
The mame.ini
file you downloaded above instructs MAME to look for another mame.ini file in the current folder and use it if found. So, you can then follow the tutorial and everything will work.
Some explanation
I asked you to replace the mame.ini
file with the one you downloaded from here. What are the differences between those files? Here are they:
- It instructs MAME to open in windowed mode instead of full screen.
- It modifies the key needed for enabling UI controls from Scroll Lock to Caps Lock. This is done because many keyboards do not have a Scroll Lock key.
- On Linux, it instructs MAME to first look for configuration files in the current directory, and if found, use them instead of the one from
~/.mame
folder.
That is it.
Manuals
Related Pages
- WinWorld page
- Wikipedia
- PCjs page - Run MS DOS 1.25 in you web browser
- BetaWiki page
- MS DOS 1.25 Source Code (Open Source) - Microsoft GitHub
- Some related YouTube videos:
Credits
- The MAME emulator is an open source project hosted on github developed by MAMEDev and contributors
- The disk image used above was taken from WinWorld.
Comments