Slackware 14.1 is released!

A good friend mentioned that Slackware 14.1 was just released.

So I thought I’d take this time to instead install SLS 0.98-1 on Qemu.

Now this was the first version of Linux that I actually started to use.  The 0.11 stuff was really a pain to install Minix then copy over enough linux to get it working.  Instead SLS gave us a more usable distro to be installed on a machine with nothing.  And thanks to cd.textfiles.com locating a download set was trivial.

Back in late 1992 I downloaded the zip files from CCUG at a blistering 2400 baud.  I remember it took a week to get the A, B and C series.  And I had to get a new box of 5 1/4″ High Density diskettes for the install (and another two for my MS-DOS / Windows 3.1 backup).

And just as back then, these zip files are missing files.  INSTALL.END is missing from the A & B sets, which confuses the installer.  The kernel source is linked to /usr1 which by default doesn’t exist and will cause that part to fail unless you use a virtual terminal (alt+f2) to remove /root/usr/src/linux so the installer will create the path itself after the installation of the A set.

SLS 0.98-1

SLS 0.98-1

Once it’s installed, it is pretty bare.  vi, more, less, grep, and make are not in the install set, so it’s kind of difficult to move around.  Emacs is there if you want it.  As ultra primitive as this set is, it does install on an empty machine, which for the time was a big accomplishment.

One cool feature of this installset is that you aren’t tied to Minix’s filesystem, but you can use the new and exciting extfs, or Extended File system.

While the default kernel doesn’t see my emulated ne2000, as at this point the only supported NIC is the Western Digital 8003.

wd8003

wd8003

As mentioned in we.c it was heavily based on the 386bsd code, although Linux used it’s own TCP/IP implementation, and not importing the Net/1 code.

I would imagine there are patches out there that’ll  no doubt add in NE2000 support.

Also included was a very primative dosemu version 0.3, that can sort of run some MS-DOS programs.

dosemu on linux

DOSEMU 0.3

More complicated stuff like Qbasic will crash it out.  Although with a bit of work I did get MS-DOS 5 to boot from it’s “virtual hard disk”.  It really is more so amazing it works as well as it does at this point.

For anyone feeling crazy, here is my installed disk image, and here is the ‘fixed’ install diskettes.

Using IDE hard disks on VMWare ESXi 5.5

I’m sure this applies to other versions as well.

VMWare stores the configs, and files on the UNIX file system, which you have to edit by hand.  You can’t do this in the UI, as VMWare tries to be SCSI only.  But if you manually edit the files, you too can enjoy a virtual IDE disk.

You need to enable SSH access to the ESX server, or do this change on the console.  Configs live in:

/vmfs/volumes/<storage group name>/<virtual machine>/

So for example, mine is:

/vmfs/volumes/datastore1/UnixWare 7.1.1/

First, edit the .vmdk file.  You are looking for the line:

ddb.adapterType = “buslogic”

And you change the buslogic to ide like this:

# Extent description

RW 16777216 VMFS “UnixWare 7.1.1-flat.vmdk”

# The Disk Data Base
#DDB

ddb.adapterType = “ide”
ddb.geometry.cylinders = “1044”
ddb.geometry.heads = “255”
ddb.geometry.sectors = “63”
ddb.longContentID = “8f535bb60df8d73a86c24853fffffff

The next thing is to alter the vmx file.  By default the hard disk will be on scsi0 and you’ll see something like this:

scsi0.present = “TRUE”
scsi0:0.deviceType = “scsi-hardDisk”
scsi0:0.fileName = “UnixWare 7.1.1.vmdk”
scsi0:0.present = “TRUE”

And what we do is rename the scsi0:0 to ide0:0

ide0:0.present = “TRUE”
ide0:0.deviceType = “disk”
ide0:0.fileName = “UnixWare 7.1.1.vmdk”
scsi0:0.present = “TRUE”

And you should be good to go.  The other (much easier) alternative is to try to use the legacy OS/2 profile as it’ll install an IDE disk by default.

IDE hard disk on VMWare ESX

IDE hard disk on VMWare ESX

Yay!

You should check out sanbarrow’s guide to more options you can configure in your VMX file.

OpenWatcom v2

I know what you are thinking, wouldn’t it be great if you could create MS-DOS executables directly from a Win64 desktop with no MS-DOS needed?

Well, I just found out about this unofficial Open Watcom v2 project that targets the usual suspects, allows you to compile from Win64!

Hello World!

Hello World!

Some of the features of this fork include:

  • New 2-phase build system, OW can be build by platform native C/C++ compiler or by itself
  • Code generator properly initialize pointers by DLL symbol addresses
  • DOS version of tools now support long file names (LFN) if appropriate LFN driver is loaded by DOS
  • OW is ported to 64-bit hosts (WIN64, Linux X64)
  • Librarian support X64 CPU object modules and libraries
  • RDOS 32-bit C run-time compact memory model libraries are fixed
  • Resource compiler and Resource editors support WIN64 executables
  • OW text editor is now self containing, it can be used as standalone tool without any requirements for any additional files or configuration
  • Broken C++ compiler pre-compiled header template support is fixed
  • Many C++ compiler crashes are fixed
  • Debugger has no length limit for any used environment variable

Binaries are available on sourceforge.

So how does it fare?  I thought I’d take the old Wolf4GW, and compile it with this toolset.  The first hurdle I hit was this fun feature:

  • The C++ compiler now treats warning W737, implicit conversion of pointers to integral types of same size, as an error.

Which is an integral part of wl_menu.cpp .  So this was somewhat problematic, until I just commented out that block, and while I was expecting no working keyboard, I’m able to play, and load/save games…. Even the boss key works.

Wolf4GW

Wolf4GW

So with the W737 taken care of, I have to say this thing compiles FAST.  Incredibly FAST.  If for some reason you have to build 16bit or 32bit anything, you should look at a 64bit tool chain, well assuming you have a 64bit computer by now.

If anyone want’s to build their own Wolf4GW with the newer OpenWatcom, my source drop is here.

Setting up a Co-op QuakeWorld Server

I went with MVDsv, which I could just unpack the i386 executable on my VPS, allowing me to go ahead with my lovingly stock id1 pak files.  MVDsv requires  just paste this into the console, or add it to the server.cfg

sv_progsname spprogs
deathmatch 0
coop 1
map e1m1
samelevel “0”

MVDsv also requires spprogs.dat.  I forget where I got mine, but if you need it, you can use mine.

And firing it up..

Added packfile ./id1/pak0.pak (339 files)
Added packfile ./id1/pak1.pak (85 files)
IP address 62.113.213.65:27500
UDP Initialized
Initialized default mod messages.
Total: 60 messages.
16.0 megabyte heap
MVDSV 0.27 rev.643 (l), build 2772
Build date: Jul 24 2007, 19:53:52

MVDSV Project home page: http://mvdsv.sourceforge.net

======== QuakeWorld Initialized ========
execing server.cfg
couldn’t open accounts
VM_Load: “spprogs”
Client MS-dos connected
Couldn’t download skins/base.pcx to MS-dos
MS-dos entered the game

Now when I jump in I get monsters!

Co-Op QuakeWorld!

Co-Op QuakeWorld!

One thing I had screwed up was the samelevel command on my server, setting it to two would kill the player if they tried to exit the level.  Ugh.  There is a guide here, but of course co-op isn’t the same as death match!

Today marks 20 years of FreeDOS!

From the original announcement:

A few months ago, I posted articles relating to starting a public
domain version of DOS.  The general support for this at the time was
strong, and many people agreed with the statement, “start writing!”
So, I have…

And how does it measure up?  Well the current release version is v1.1 and I tested it in both Qemu and VMWare Player.  First the installation process is SLOW.  Extraordinarily slow.  I really have no idea why, but 10+ minute installs in either environment were the best I could do.  The one thing I did do on installation was to disable a FAT32 drive, defaulting to the older FAT16 file-system.  Why? well because ..

Stacker 4 on FreeDOS

Stacker 4 on FreeDOS

Once installed, I thought I’d torture the environment, and install Stacker 4.0.  The installation went ok (I modified my system to boot up with option #3 as the default (Load FreeDOS including XMGR XMS-memory driver).  The installation went smooth, I setup a 300MB compressed drive, rebooted and the drive was not available.  I think this was because MS-DOS uses a config.sys file, and FreeDOS uses fdconfig.sys.  Although at the same time the autoexec.bat file was not modified as I had requested.  So I ran ‘config.exe’ and it walked me though additions to the c:\stacker.ini and what needed to be added to the (fd)config.sys (device=c:\stacker\stacker.com).  I did that, and rebooted, and I had my compressed D drive.

Then I installed DOOM v1.1 onto the compressed drive, and it runs perfectly fine! (is a screen shot really necessary?)  Seeing that DOS4G/W works (I also tested Descent, and Wolf4GW).  Oddly enough Wolf3d just hangs at a black screen, and Descent runs too fast although I think both issues are more specific to the games running on Qemu/VMWare than FreeDOS.  And if you want to skip the lengthy install, you can download my stock VMDK right here.

Seeing that 32bit DOS extenders seem OK, I thought I’d try TradeWars 2002 with it’s 16bit DPMI version, and it ran fine as well.

TradeWars on FreeDOS

TradeWars on FreeDOS

Now when it came to multitasking, Windows 3.0 won’t work outside of realmode.  Windows 3.1 however will run in standard mode.  386 Enhanced mode still doesn’t work correctly (is that even an issue)… So to use this for a BBS you’d need a network and some nodes… maybe fun for another day.  Excel 3.0c works under Windows 3.1 Standard mode, while Word 2.0c does not.

Another weird thing is that the FreeDOS partitioning program (fdisk) chooses a NON-DOS partition type by default, so if you were expecting to dualboot between MS-DOS and FreeDOS I think you need to install MS-DOS first, although I guess in the age of virtual machines does it matter that much?

For basic MS-DOS program compatibility it seems pretty much there, even with weird stuff like stacker.

Just how ‘original’ is the Ultimate Doom on steam?

I don’t own any stock in iD(bethesda), or let alone steam.  This is just a small research thing so I’m not shilling.  Also Ultimate DOOM, is on sale, although not for long.  I thought it would be interesting to compare the version on steam with the original version of Doom. Now backtracking, Ultimate DOOM, was a boxed in version of DOOM, that included all the patches, and added in an extra level to the classic DOOM 1, “thy flesh consumed“.

Ultimate DOOM

Ultimate DOOM

And this is the version of DOOM that is for sale on steam.  Now the nice thing about Ultimate DOOM, is that it was released as a patch to registered users of DOOM so that they too could upgrade to Ultimate DOOM, and enjoy the new levels.  So that also means that the enthusiasts thankfully made a patch to regress Ultimate DOOM to version 1.1 First we start with Ultimate DOOM, which can be found in your  steam directory.  Mine is “C:\Program Files (x86)\Steam\SteamApps\common\Ultimate Doom\base”, but yours will be similar. So the first step would be to copy this directory to somewhere else, as we are going to run some patches against it to alter the level as we go.  I’m going to use DOSBox to do all of this.  Also in my setup of DOSBox, I mount my c:\dos directory as c:\ to make life easier for me.  So on my windows side, I copy Ultimate Doom\base into c:\dos\temp\udoom.  That way when I fire up DOSBox, I see it under c:\temp\udoom. The only files I’m going to use from steam are:

03/12/2014 12:27 AM 715,493 DOOM.EXE
03/12/2014 12:27 AM 12,408,292 DOOM.WAD

Noticeably absent is SETUP.EXE.  I have no idea why it is missing, so I figured I’d provide a collection of the various setup programs.  This is the best way to change sound card settings, and alter keyboard bindings.  Why it was omitted, well I have no idea. You can download my combined archive of doom setup programs here.  Place the utlimate doom setup into the directory. Then download & extract downgrd.zip, into your dosbox doom directory (c:\dos\temp\udoom), then fireup dosbox and run patch.bat .  The downgrade uses a shareware version of MDIFF, so it will delay for 5 seconds every time it’s used (which is a few times) so this will take a little while.

Downgrade to v1.1

Downgrade to v1.1

Now looking around the directory we have:

06/30/2014 09:57 AM 803 DEFAULT.CFG
06/30/2014 09:57 AM 579,187 DOOM.EXE
06/30/2014 09:59 AM 10,396,254 DOOM.WAD
06/30/2014 09:57 AM 2,158 DOWNGRAD.TXT
06/30/2014 09:57 AM 7,527 LICENSE.DOC
06/30/2014 09:57 AM 20,850 README.EXE
06/30/2014 09:57 AM 68,923 SETUP.EXE
06/30/2014 09:57 AM 627,155 U1_94.EXE
06/30/2014 09:57 AM 218 USE1_94.BAT
06/30/2014 09:57 AM 190 USE1_95.BAT

Now how does this compare to the registered version of DOOM 1.1?  Well I have a copy, and after installing it, we can compare.

10/29/2013 01:26 PM 579,187 DOOM.EXE
10/29/2013 01:26 PM 10,396,254 DOOM.WAD
10/29/2013 01:26 PM 439 FILE_ID.DIZ
10/29/2013 01:26 PM 7,527 LICENSE.DOC
10/29/2013 01:26 PM 20,850 README.EXE
10/29/2013 01:26 PM 68,923 SETUP.EXE
10/29/2013 01:26 PM 627,155 U1_94.EXE
10/29/2013 01:26 PM 218 USE1_94.BAT
10/29/2013 01:26 PM 190 USE1_95.BAT

As you can see the first difference is that the original version has “FILE_ID.DIZ”, and the downgrade has a “DOWNGRAD.TXT”. Comparing the common files..

c:\dos\temp\udoom>fc /b doom.exe doom11\doom.exe Comparing files DOOM.EXE and DOOM11\DOOM.EXE FC: no differences encountered

c:\dos\temp\udoom>fc /b doom.wad doom11\doom.wad Comparing files DOOM.WAD and DOOM11\DOOM.WAD FC: no differences encountered

c:\dos\temp\udoom>fc /b license.doc doom11\license.doc Comparing files LICENSE.DOC and DOOM11\LICENSE.DOC FC: no differences encountered

c:\dos\temp\udoom>fc /b readme.exe doom11\readme.exe Comparing files README.EXE and DOOM11\README.EXE FC: no differences encountered

c:\dos\temp\udoom>fc /b SETUP.EXE doom11/SETUP.EXE Comparing files SETUP.EXE and DOOM11/SETUP.EXE FC: no differences encountered

c:\dos\temp\udoom>fc /b u1_94.exe doom11\u1_94.exe Comparing files U1_94.EXE and DOOM11\U1_94.EXE FC: no differences encountered

c:\dos\temp\udoom>fc /b use1_94.bat doom11\USE1_94.BAT Comparing files USE1_94.BAT and DOOM11\USE1_94.BAT FC: no differences encountered

c:\dos\temp\udoom>fc /b use1_95.bat doom11\USE1_95.BAT Comparing files USE1_95.BAT and DOOM11\USE1_95.BAT FC: no differences encountered

And everything looks ok.  Now FILE_ID.DIZ was a nice way back in the day of BBS’s to have a description of the file inside of the ZIP that would automatically set the description.  And the FILE_ID.DIZ from the registered version is:

████▓▒░ THIS IS PIRATED SOFTWARE! ░▒▓████ ███████████████████████████████████████████
THIS FILE IS NOT SHAREWARE — it is ILLEGAL and forbidden to upload this copyrighted software on bulletin boards. If you see this message on a BBS, please request that the Sysop remove this software IMMEDIATELY. or contact id Software @ 214-613-0132 IT IS ILLEGAL TO GET THIS FILE FROM A BBS!
███████████████████████████████████████████

Which I guess is not all that surprising.  So other than omitting this one file (which does not alter game play in the least bit) we have now taken Ultimate DOOM from steam, and reverted it to DOOM v1.1.  Now to be honest this is my favorite version, it feels faster than later versions,and for me at least it was more stable.  However as I’ve mentioned before the network play would destroy old hub based 10Mbit networks. And running DOOM, we can check the version

DOOM v1.1

DOOM v1.1

And you can see that we have downgraded Ultimate DOOM to registered DOOM v1.1 in it’s original state from December 10th, 1993. Now moving to version 1.2, you need the file dm1_2rpt.zip, which contains:

06/30/2014 09:15 AM 78,129 PATCH.EXE
06/30/2014 09:15 AM 3,053 PATCH.RTD
06/30/2014 09:15 AM 409,687 PATCH.RTP
06/30/2014 09:15 AM 272 README.PAT

Now we run patch.exe which will move our 1.1 to 1.2.

Patching DOOM to v1.2

Patching DOOM to v1.2

Once the patch is installed, we can delete the patch files, and we should have:

06/30/2014 09:57 AM 803 DEFAULT.CFG
06/30/2014 09:57 AM 2,158 DOWNGRAD.TXT
06/30/2014 09:57 AM 7,527 LICENSE.DOC
06/30/2014 10:04 AM 580,391 DOOM.EXE
06/30/2014 10:04 AM 10,399,316 DOOM.WAD
06/30/2014 10:04 AM 32,134 IPXSETUP.EXE
06/30/2014 10:04 AM 393 MODEM.CFG
06/30/2014 10:04 AM 34,386 README.EXE
06/30/2014 10:04 AM 36,567 SERSETUP.EXE
06/30/2014 10:04 AM 91,931 SETUP.EXE

And when we run DOOM we now see that it is upgraded to version 1.2!

DOOM version 1.2

DOOM version 1.2

The next version of DOOM that was widely available was v1.666.  And the patch is named dm1666rp.zip, which contains:

06/30/2014 09:24 AM 78,129 PATCH.EXE
06/30/2014 09:24 AM 2,864 PATCH.RTD
06/30/2014 09:24 AM 729,949 PATCH.RTP
06/30/2014 09:24 AM 649 PATCHIT.BAT

And this time we run ‘patchit.bat’.

Patched to 1.666

Patched to 1.666

And now we can remove the patch files.  Now when we run DOOM, we see..

DOOM v1.666

DOOM v1.666

The next version of DOOM was v1.8, and it can be patched up from v1.666 dm18rpt.zip.  Inside of this zip, is another zip, patch.zip that contains the patch files patch.exe & patch.rtp.

Upgrading to DOOM v1.8

Upgrading to DOOM v1.8

The directory is growing as well.

06/30/2014 10:09 AM 791 DEFAULT.CFG
06/30/2014 10:12 AM 6,397 DM.DOC
06/30/2014 10:12 AM 33,640 DM.EXE
06/30/2014 10:12 AM 120,201 DMFAQ66A.TXT
06/30/2014 10:12 AM 140,594 DMFAQ66B.TXT
06/30/2014 10:12 AM 76,898 DMFAQ66C.TXT
06/30/2014 10:12 AM 34,572 DMFAQ66D.TXT
06/30/2014 10:12 AM 709,865 DOOM.EXE
06/30/2014 10:12 AM 11,159,840 DOOM.WAD
06/30/2014 09:57 AM 2,158 DOWNGRAD.TXT
06/30/2014 10:12 AM 10,623 DWANGO.DOC
06/30/2014 10:12 AM 65,021 DWANGO.EXE
06/30/2014 10:12 AM 2,536 DWANGO.STR
06/30/2014 10:12 AM 4,690 HELPME.TXT
06/30/2014 10:12 AM 18,051 IPXSETUP.EXE
06/30/2014 10:12 AM 67 MODEM.CFG
06/30/2014 10:07 AM 67 MODEM.NUM
06/30/2014 10:12 AM 3,405 MODEM.STR
06/30/2014 10:12 AM 4,617 ORDER.FRM
06/30/2014 10:12 AM 21,631 README.TXT
06/30/2014 10:13 AM 20,257 SERSETUP.EXE
06/30/2014 10:13 AM 45,884 SETUP.EXE

And running DOOM, we can now verify that we are running version 1.8

DOOM v1.8

DOOM v1.8

The next version of DOOM was version 1.9.  The upgrade patch from v1.8 to v1.9 was called 18_19drp.exe.  This is a SFX unpacking exe, so you’ll need to run this under DOSBox to get the patch

Yoshi SFX

Yoshi SFX

And now we can run the patch, this one is silent so don’t panic at the lack of output.

Patching from v1.8 to v1.9

Patching from v1.8 to v1.9

And now when we run DOOM we can verify that we are running v1.9

DOOM v1.9

DOOM v1.9

And the directory now looks like this:

06/30/2014 10:26 AM 769 DEFAULT.CFG
06/30/2014 10:12 AM 6,397 DM.DOC
06/30/2014 10:12 AM 33,640 DM.EXE
06/30/2014 10:12 AM 120,201 DMFAQ66A.TXT
06/30/2014 10:12 AM 140,594 DMFAQ66B.TXT
06/30/2014 10:12 AM 76,898 DMFAQ66C.TXT
06/30/2014 10:12 AM 34,572 DMFAQ66D.TXT
06/30/2014 10:23 AM 709,905 DOOM.EXE
06/30/2014 10:24 AM 11,159,840 DOOM.WAD
06/30/2014 09:57 AM 2,158 DOWNGRAD.TXT
06/30/2014 10:12 AM 10,623 DWANGO.DOC
06/30/2014 10:12 AM 65,021 DWANGO.EXE
06/30/2014 10:12 AM 2,536 DWANGO.STR
06/30/2014 10:12 AM 4,690 HELPME.TXT
06/30/2014 10:12 AM 18,051 IPXSETUP.EXE
06/30/2014 10:12 AM 67 MODEM.CFG
06/30/2014 10:07 AM 67 MODEM.NUM
06/30/2014 10:12 AM 3,405 MODEM.STR
06/30/2014 10:12 AM 4,617 ORDER.FRM
06/30/2014 10:24 AM 21,631 README.TXT
06/30/2014 10:24 AM 20,257 SERSETUP.EXE
06/30/2014 10:13 AM 45,884 SETUP.EXE

Now comes the final patch, DOOM v1.9 to Ultimate DOOM, 19_udpat.exe.  And just like before it too as a SFX patch, which you have to run under DOSBox.

Upgrading v1.9 to Ultimate DOOM

Upgrading v1.9 to Ultimate DOOM

Deleting the patches, we are now left with:

06/30/2014 10:29 AM 769 DEFAULT.CFG
06/30/2014 10:12 AM 6,397 DM.DOC
06/30/2014 10:30 AM 20,937 DM.EXE
06/30/2014 10:12 AM 120,201 DMFAQ66A.TXT
06/30/2014 10:12 AM 140,594 DMFAQ66B.TXT
06/30/2014 10:12 AM 76,898 DMFAQ66C.TXT
06/30/2014 10:12 AM 34,572 DMFAQ66D.TXT
06/30/2014 10:30 AM 715,493 DOOM.EXE
06/30/2014 10:31 AM 12,408,292 DOOM.WAD
06/30/2014 09:57 AM 2,158 DOWNGRAD.TXT
06/30/2014 10:12 AM 10,623 DWANGO.DOC
06/30/2014 10:31 AM 73,638 DWANGO.EXE
06/30/2014 10:31 AM 255 DWANGO.SRV
06/30/2014 10:12 AM 2,536 DWANGO.STR
06/30/2014 10:31 AM 4,689 HELPME.TXT
06/30/2014 10:12 AM 18,051 IPXSETUP.EXE
06/30/2014 10:12 AM 67 MODEM.CFG
06/30/2014 10:07 AM 67 MODEM.NUM
06/30/2014 10:12 AM 3,405 MODEM.STR
06/30/2014 10:12 AM 4,617 ORDER.FRM
06/30/2014 10:31 AM 21,989 README.TXT
06/30/2014 10:24 AM 20,257 SERSETUP.EXE
06/30/2014 10:31 AM 46,665 SETUP.EXE

Which when compared with what was sold on steam:

03/12/2014 12:27 AM 243 AUTHORS.txt
03/12/2014 12:27 AM 18,332 COPYING.txt
03/12/2014 12:27 AM 12,408,292 d.WAD
06/30/2014 08:30 AM 819 DEFAULT.CFG
03/12/2014 12:27 AM 715,493 DOOM.EXE
03/12/2014 12:27 AM 12,408,292 DOOM.WAD
03/12/2014 12:27 AM 989,672 dosbox-0.71.tar.gz
03/12/2014 12:27 AM 7,214 dosbox.conf
03/12/2014 12:27 AM 3,200,000 dosbox.exe
03/12/2014 12:27 AM 3,018 INSTALL.txt
03/12/2014 12:27 AM 771 MOUSE.CFG
03/12/2014 12:27 AM 23,574 NEWS.txt
03/12/2014 12:27 AM 47,035 README.txt
03/12/2014 12:27 AM 331,776 SDL.dll
03/12/2014 12:27 AM 13,312 SDL_net.dll
03/12/2014 12:27 AM 874 THANKS.txt
03/12/2014 12:27 AM 1,139 ultimate.conf
03/12/2014 12:27 AM 1,157 ultimatem.conf
03/12/2014 12:27 AM 35,296 uninstall.exe

Which as you can see the only files that really made the cut were the wad and the doom executable.  I don’t know why they omitted the setup program, but that’s easy enough to fix.  And running our patched up executable:

Ultimate DOOM

Ultimate DOOM

And as we can see, the extra level ‘thy flesh consumed’ is now available!

Ultimate DOOM level select

Ultimate DOOM level select

And finally to verify the steam wad/exe:

C:\dos\temp\udoom>fc /b doom.exe “c:\Program Files (x86)\Steam\Stea mApps\common\Ultimate Doom\base\DOOM.EXE” Comparing files DOOM.EXE and C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\ULTIM ATE DOOM\BASE\DOOM.EXE FC: no differences encountered

C:\dos\temp\udoom>fc /b doom.wad “c:\Program Files (x86)\Steam\Stea mApps\common\Ultimate Doom\base\DOOM.wad” Comparing files DOOM.WAD and C:\PROGRAM FILES (X86)\STEAM\STEAMAPPS\COMMON\ULTIM ATE DOOM\BASE\DOOM.WAD FC: no differences encountered

So there we go, a full round trip from Ultimate DOOM, v1.1, v1.2, v1.666, v1.8, v1.9 and back to Ultimate DOOM!

UPDATE!

While looking around I noticed that the steam version of DOOM also only uses the Adlib! for music.  But DOOM really does have much better MIDI music.

Adlib. really.

Adlib. really.

Well one of the great things we can do with a setup program, and the WAD/DOOM.EXE we copied out of steam is that we can run it with a newer version of DOSBox, say version 0.74 where the General MIDI actually works!  So go ahead, and run setup, and change the music card to “General MIDI”.

Change it to General MIDI

Change it to General MIDI

Next it’ll give a wide range of ports, I used 330.

Port 330!

Port 330!

Now when you save the config, and re-launch DOOM you can experience the music without the major pain of setting up the UltraSound.  And General MIDI is available in every version of DOOM as well.

Dealing with CopyQM file format

CopyQM

CopyQM

So I had a few disk images in the CopyQM format, and trying to get an emulator to output them back to a disk image is well.. really trying.  Then as luck would have it, I stumbled onto the program read_cqm.c and it does exactly what it says it’ll do which is read the CopyQM disk images, and then output them into a raw format.

SCSI CD-ROM support for OS/2 1.3

I was passed this in email, that using the BusLogic SCSI adapter, that OS/2 1.3 can use it’s CD-ROM interface for those of you who want to be able to directly mount ISO images!

The driver is here.

So apparently all you need to do is just add in the BusLogic controller, and copy the BOOTBID.BID to C:\ (don’t rename it).

unknown-LW22HX
And there we go!
unknown-POZPHX

 

Apparently, it can even boot from SCSI hard disks. So it’d be a great way to give that SQL 1.0 install access to a bunch of storage.

MS-DOS Player updates

Poorly translated from TAKEDA toshiya’s blog..


2014/4/15
I has integrated source of i386 and i286 edition edition. 
In addition, in the i286 version, I added support for int 10h/16h. equivalent to 0.149 MAME, I was replaced with a 0.152 equivalent MAME core i386 i286 core. However, the i386 core, I have omit the TLB around.

Which is very cool, although I wasn’t sure about the MAME source code being open to other projects…?  I tried to contact the i86/i386 author vlinde but he then pulled his contact page.  I wanted to use i386 for something of my own, but the whole “Redistributions may not be sold, nor may they be used in a commercial product or activity.” really puts the damper on it.

I was able to get some simple XMS test program to run, but nothing of any substance.  No DOS4G/W or anything like that.  But if you re-build it specifying MS-DOS version 5.0, some of the MS-DOS utils and even command.com work!

The weird issue I had was running out of conventional RAM, because this program gives you nearly 1MB of conventional RAM… I was surprised, as I wasn’t expecting that much!