I found the source to Mach 2.5

And an i386 port dating back to 1989!

Browsable CVS source is on my ‘unix’ site.

Or for anyone who cares, you can download all the data & material on archive.org.

I haven’t tried to build it, but I also see SUN2/3 hardware support, lots of bug fixes from NeXT, but no NeXT hardware support.  Also the VAX platform is in there as well.

*EDIT as an update from the future, I ended up getting disk images to Mach/386 and using that as a build system I was in fact able to build the Mach 2.5 i386 images!

Read about that adventure in Mach 2.5 Independence day.

Scripted Amiga Update & hosting at archive.org

I saw this awesome link over at archive.org’s software Library featuring the Amiga

Behind it all is the Scripted Amiga Emulator.  What is more interesting is that there has just been a MASSIVE update/rewrite to the project and it is now boasting far more features!

Looking at the features page, there has been quite a number of updates since the last version.  The big ones (to me) is that the CPU core has been rewritten, and now supports not only the 68000, but the 68010, 68020, and 68030 (only with fake MMU). OCS, ECS and now AGA as well!  Preset models include the 1000,500,2000,500+,600,3000 and 1200. Â IDE disk files can even be mounted for the 600 & 1200!

In addition is support for the Amiga 1000 velvet prototype, and even now has the ability to have an AMAX (Macintosh emulation) cartridge port.

R-Type on SAE

R-Type on SAE

I’d highly recommend the internet archive link, you can jump right into some great Amiga action with nothing to download or install!

Epyx Rogue 1.48

Rouge 1.48 title screen

Rouge 1.48 title screen

A while back while looking for old Rogue source, and resources I came across this page, which includes a lot of old versions, and source code, and the file rog11src.zip. But looking at the source in this directory the file rogue.h reveals that it is actually 1.48!

#define REV 1
#define VER 48

And the source is all timestamped from late 1984, and throughout 1985.  Well, isn’t that exciting!  Also on the same site is rogue-1.48.zip, a binary distribution of Rogue 1.48.  So I thought I’d give it a shot to build it.  The source mentions needing the MANX C compiler, which of course a quick google search yields an ad:

Manx Aztec C86

Manx Aztec C86

Which has all kinds of fascinating information, such as the ability to cross compile from VAX BSD, or PDP-11 BSD, the Amiga, CP/M etc but they don’t actually give any information about versions.

There is, however, an Aztec C museum, that hosts several versions.   And they do have the versions, along with the years to show that the C86 compiler that they had for 1985 would be 3.4b

Version 3.4b
Compiler Aztec C 8086 3.40a 7-3-86
(C) 1982,83,84,85 by Manx Software Systems, Inc.

And conveniently, they do have a download link for the comiler here: az8634b.zip

Now, since I’m on Windows 10 x64 I can’t easily run MS-DOS based compilers from 1985 at my native CLI, without a tool, and I chose Takeda Toshiya’s MSDOS.  I was able to ‘bind’ the azmake utility which then could call the needed compiler, assembler, and linker to build an executable without too much work.  I just created a command file, ‘build.cmd’ in the src directory, to setup the paths and needed variables to quickly compile Rogue from the command line.  And a quick attempt at playing it showed that although it does compile, it is unplayable!

Killed

Killed by the Copy Protection Mafia

Well, isn’t that great.  There is a copy protection scheme.  But wait, we have source so can’t we just bypass it?  Yes we can!  In the file dos.asm there is some checks for the variables hit_mul & goodchk.  So I did the logical thing, which is before it checks them, I just set them to good values.

; fake copy protection
mov hit_mul_, 1
mov goodchk_, 0D0DH

And the good news is that I would no longer get killed by the Mafia, but I couldn’t progress down any levels.  So in the file oprotec.asm, I saw there is some disk check routine called protect, that I went ahead and bypassed by having it immediately jump down to the ‘good’ label. Everything compiles but it still locks up going down a level.  So finally I check rogue.h and commend the #define PROTECT statement, and now it’ll run!

I don’t know if anyone would even care, but I added the PDF manual and all the zip files that I used to source this version.  You can download it here:

rogue-148_binary+source.7z

If you don’t want to run it under MS-DOS, or something like DOSBox, you can use MS-DOS to run it.  The title screen is garbled as it doesn’t emulate CGA, but as the rest is just text mode, it’ll run just fine.

Dunc’s Algomusic MkIIIb

You may know this from the opening music from Stuart Ashen’s, and his videos.  I never knew that this was actually a procedurally generated tune though.  Although the original site is long since gone, archive.org did manage to save a couple of the binary music generators.  They don’t export, and I somehow doubt the source was ever available, but ithey do generate interesting music from a fixed seed you provide.

As another example, here is my domain name, superglobalmegacorp.com:

These are for Windows only, but if anyone else has any more information on the programs’s Im always interested.

DuncsAlgomusicIIIb.zip

DuncsAlgomusicV56.zip

Since this has exploded in popularity after being featured on Vinny’s Vinesauce, the author Duncan Timiney has resurfaced, and he is hosting the files over on his site, marasmusine.itch.io.  Even better he’s located source code to MK V.

Super cool!

EMX GCC 2.5.8 for Windows

Continuing in my quest of useless stuff, here is GCC 2.5.8 for EMX as a native Win32 executable set.

With some weirdness of inline not being recognized, I just commented that out.  The GCC driver program does have some issues though, and Im just not in the mood to fully figure out why either the EMX or MS-DOS versions can’t correctly  capture return codes, or if it was better to just use -pipe and _pipe with _O_TEXT mode set, but again how to figure out if the pipe closed cleanly or with errors?  So for now it’ll always assume everything worked, but it will still print errors.  Sigh.

With that said, the CC1, CC1OBJ, CC1PLUS drivers all built, so you can use C, ObjectiveC, and C++. yay.

The functional version of this is EMX 0.8H, with the gcc 2.5.8 update.  Maybe I’ll put this all on sourceforge so people don’t have to deal with my crappy download system, but for now it’s on my site.

Here is my build, along with binaries:

emx_gcc_258_phase1_xgcc_cccp_cc1_cc1obj_cc1plus.7z

And the un touched source code, as provided in the 0.8H update

emx_gcc_258_virgin.7z

I’ve only tested it with MS-DOS, and PDOS.  I’m also using the ancient binutils from my GCC 1.40 on Windows experiment.

MS-DOS player can now embed executables

So what this means is that now you can make fully standalone Win32/Win64 executables out of CLI based MS-DOS applications.

D:\tcc>msdos\binary\i486_x64\msdos.exe tcc -Iinclude -Llib hi.c
Turbo C++ Version 3.00 Copyright (c) 1992 Borland International
hi.c:
Turbo Link Version 5.0 Copyright (c) 1992 Borland International

Available memory 4215648

D:\tcc>c:msdos\binary\i486_x64\msdos.exe hi
hi!

D:\tcc>c:msdos\binary\i486_x64\msdos.exe -c hi.exe
‘new_exec_file.exe’ is successfully created

D:\tcc>new_exec_file.exe
hi!

Isn’t that great?

I’ve had one issue with Turbo C++ 3.00 and that is the embedded executable will run out of memory while linking, but invoking it by calling msdos.exe let’s it run fine. If you compile and link separately it’ll run just fine.

As always you can find the project page here:

http://takeda-toshiya.my.coocan.jp/msdos/index.html

 

 

 

URL shortners & short domains

I needed to get some business cards, and the usual thing is to use QR codes that have a tiny URL name, that then redirect to your real web site.  Easy, right?

Well, most people use ‘public’ servers like bit.ly & friends.  In china many people I do business with use 1688.com .  But this got me thinking, 1688 is a FOUR-letter domain, unlike any of the three letter ones that seem to be more common. Â I know all the one, two and three letter domains are all gone, but are there any four-letter domains?

Turns, out YES there are.

I used this site:

Domain Name Soup .com

And I was able to hammer though their UI, and find one, and register it with my usual registrar.

*This isn’t an AD, I’m not being paid to say any of this.  I was more so surprised that I could not only find a four letter domain, but it’s the initials of my wife’s business.

The best part is that I could use YOURLS, a free PHP+Mysql app to quickly and easily manage the redirects.

Moving hosts again!

Well, ChicagoVPS was bought out, and then they kind of downgraded me from a Xeon to an Atom.. And now they are creeping up the rates.  So I saw a special on lowendbox.com for Joe’s Datacentre.  I’ll be moving onto a dual proc Xeon L5420 CPU. Â Maybe not the highest end of boxes, but better than some atom.

I don’t think it’ll mean anything for anyone, other than a blip of an outage when I shut down KVM, and transfer over the blog VM, and update DNS.

I’ve already moved over my BBS and it’s running just fine.  Not that it matters but I moved out the ‘vpsland‘ share to another low end cheapo dedicated box at Joe’s for well over a month now, making my decision to move justified.

The new hosting is in Kansas City MO, which is still geographically central in the United States of America. Id love to host it in Hong Kong, but I’ve only received absolutely insane prices out here.  And even though I do have a commercial grade internet connection, getting more IP addresses has been an impossibility.

Oh well, it’s just me rambling.

CDC 1700 emulator added to SIMH

For those of us, who have never heard of the CD 1700, there is a brief page on wikipedia:

https://en.wikipedia.org/wiki/CDC_1700

And from the announcement on the SIMH mailing list:

For the past couple of years or so, I have been working on a SIMH-based
simulator for the CDC1700 series, a 16-bit system from the mid-1960’s, using
the documentation and software available at bitsavers. It has now sufficiently
stable to allow others to make use ot the software. The base system implements:

  • a 1714 CPU with:
    • 1705 multi-level interrupts and direct storage access bus
    • up to 32KW of memory
    • memory protect system
    • Optional 64KW support
  • 1711-A teletypewriter
  • 1721-A paper tape reader
  • 1723-A paper tape punch
  • 1740 or 1742-30 line printer
  • 1738-B disk pack controller with up to 2 disk packs:
    (853 disk pack – 1.5MW)
    (854 disk pack – 3.0MW)
  • 1733-2 cartridge disk controller with up to 4 drives:
    Each drive has 1 fixed disk and 1 removeable disk:
    (856-2 CDD – 1.13MW per disk)
    (856-4 CDD – 2.25MW per disk)
  • 1732-A or 1732-3 magtape controller with 4 transports

The simulator is able to boot the diagnostic tape (SYSTEM17_SMM_DIAGS.TAP at
bitsavers.org) and successfully execute tests for each of the above
components. Some test sections fail due to various reasons; lack of
documentation, timing issues, feature not implemented etc.

The simulator is also able to boot and install MSOS 5 from an installation
tape (MSOS5_SL136.tap at bitsavers.org) onto a 1733-2 cartridge drive. This
is a copy of a distribution tape provided by CDC to run on a 64KW system at
Exxon.

I would like to thank Doug Gwyn for answering questions about the system
architecture and providing details about specific diagnostics tests and
Al Kossow for for peripheral documentation so that I could get MSOS 5
installed.