Xlive.dll missing ordinal 42

I’m not sure how dependent this on my upgrade to Windows 10, but while trying to launch Fallout 3, I was getting this fun error:

fallout 3 missing ordnal from xlive 9879

I hate errors like this, but it turns out the ‘Microsoft Games for Windows – LIVE Redistributable’ is too out of date.fallout 3 missing ordnal from xlive 9879 live redistributable 2.0.672.0

So stepping up to version 3.5.88 from 2.0.672.0 did the trick.fallout 3 working 9879 live redistributable 3.5.88.0But of course a download location was a little bit crazy to find, I guess keeping up with the MDAC_TYP legacy, of naming every version the same thing, here is the 3.5.88.0 download / MIRROR (70MB)

Oh and now that my ‘new’ old laptop has an intel integrated video card it needs this DirectX bypass, otherwise itll crash once you launch fallout.

Thanks to the PCGaming wiki!

SIMH on demand!

Ok starting with my shellinabox post, I’ve expanded to include SIMH’s Altair emulator!

CP/M 2.2 in a box!

CP/M 2.2 in a box!

Executing this is really simple!  A small shell script will take care of the whole thing.

#!/bin/sh
set -m
PID=$$
mkdir /tmp/$PID
cd /tmp/$PID
cp /usr/local/altair/1.ini .
cp /usr/local/altair/cpm22.dsk .
/usr/local/altair/altair 1.ini
cd /tmp
rm -rf /tmp/$PID

Of course I’m assuming dead processes get reaped.  But check it out!

I’ve put BASIC-80 rev 5.21 and ZORK I in there!

Some advice on SIMH thought, you can execute a shell with the ! command (hitting Control-E will interrupt SIMH) so to prevent that alter the line in scp.c to make sure it’s a noop_cmd instead of spawn_cmd.  Not that anyone was doing anything sneaky as the nobody user, but to prevent it.

{ “!”, &noop_cmd, 0, HLP_SPAWN },

Also an ini file of:

attach dsk0 cpm22.dsk
set throttle 2%
go 177400
exit

Keeps SIMH pretty tame.

Additionally I guess I should do a 12 hour cronjob to kill displaced altairs.

shellinabox

So while browsing reddit, I came across this neat package, shellinabox.  Simply put, it runs as a process on your ‘box’ and fronts it with a javascript terminal interface.  So as long as you have a halfway modern machine with javascript support you too can just connect to a machine and run CLI based stuff.

BBS via telnet

BBS via telnet

So as a test I setup a game of tetris, and a telnet session to my BBS.

There isn’t much to ‘setup’ in the way of shellinabox, because it’s all command line driven.

/shellinabox-2.14/shellinaboxd -t -s /:LOGIN -s “/bbs:nobody:nogroup:/:/usr/bin/telnet localhost” -s /tetris:nobody:nogroup:/:/usr/games/tetris-bsd –css /shellinabox-2.14/shellinabox/white-on-black.css -b

So this will create a new web server that by default listens on TCP port 4200 which in turn uses the virtual directories / for a login, /bbs which launches telent, and /tetris which starts the BSD tetris for terminals game.  Now as many of you are aware, not all people with internet connections have the luxury of having all outbound TCP/IP ports. Even the most excellent flashterm still establishes a TCP session.  That is what makes this different is that all the traffic is done via HTTP, which means it can be proxied.  Now the real trick is having a web server do the proxing for you, so that all the user has to do is hit a special URL, and the server will proxy the request to shellinabox’s web server.

Enter Apache2’s reverse proxy!

So on my BBS’es apache config, I add in the following lines:

ProxyPass /tetris http://localhost:4200/tetris
ProxyPassReverse /tetris http://localhost:4200/tetris
ProxyPass /bbs http://localhost:4200/bbs
ProxyPassReverse /bbs http://localhost:4200/bbs

I’m not sure exactly of the specific modules to enable, but hammering away this got it to work:

a2enmod proxy
a2enmod mod_proxy
a2enmod rewrite
a2enmod mod_proxy
a2enmod proxy_http
a2enmod proxy_module
a2enmod headers
a2enmod deflate

Under my virtual server’s ‘root’ directory.  So now when you access https://virtuallyfun.com/tetris/ Apache will proxy your request into the shellinabox http server, and you’ll get…

Tetris

Tetris

So now only using HTTP you can play tetris!

So where to go from here?  I was thinking some kind of SIMH CP/M on demand thing.  There is a command line Wyse 60 emulator, so maybe that’d be fun.  I may even bring back something I had ages ago, access into a bunch of legacy systems.  This is a great ‘solution’ to enable multiplexing without having to use another software MUX.

 

So I was crazy, and updated from Windows 7 to 10

Yes. I know.

Ok first off Windows 10 was not activating.  In the control panel it’d mention the error:

Error code: 0x8007232B Cannot activate Windows 10

Good thing we’re back to crap error codes. But google to the rescue, and I found this article.

Run “SLUI 3” as administrator, and use the following product key: PBHCJ-Q2NYD-2PX34-T2TD6-233PK

windows 10 activated

Then re-run the activation and all is well.

Also the upgrade tries to leave things like device drivers in place.  Sounds good but nothing I had game or AV wise would work properly.  And worse anything OpenGL/D3D based would actually crash the system out.  So I went and removed all of the old NVidia, drivers I could find, along with everything else driver related, re-ran windows update and rebooted and it’s working again!

Sadly old games on Steam that use DOSBox seem to be failing…

dosbox crashNo idea why just yet.  But of course I can just go and get a newer version of DOSBox.

VMware’s networking won’t work at all, no matter what you do.  I had to uninstall & re-install to get my networking back.  That even includes the builtin NAT (non VMnet8). However bridging physical NIC’s doesn’t work.

I’ll probably add more stuff as I find it.

Now why the interest in Windows 10?  It’s those $100 USD Windows 8.1 tablets.  Surface was just too expensive, but a $100 tablets, such as the Toshiba Encore Mini WT7-C16MS, HP Stream 7 and Pipo W4 really could change the game as it were by lowering the cost of ownership of a computer.  Make no mistake these are quad core x86 processors, running real Windows.

Looking back years ago and spending far more for a 286 I had to assemble in parts, back in 1991 an AT clone keyboard cost me more than $100.  Amazing times indeed!

 

VMWare Player 7 is out!

First the pro version is still on sale, ending on December 5th

VMware Player 7 pro

VMware Player 7 pro

And for those wondering, where is the regular VMware Player 7? Buried down in the downloads section.. Right HERE!

VMware Player 7

VMware Player 7

Or if you prefer:

First of all support for 32bit hosts is gone.  This build should have better support for Windows 10.  For those who are worried, 7 still supports Windows 9x, NT 4.0. My nested ESXi still works fine, as does my Novel Netware 3.12!

And for Mac users, VMware Fusion 7 is on sale, which is great for OS X users who’ve upgraded to OS X 10.10

What is the difference between Pro and Free? From the FAQ:

  • VMware Player Pro is designed to be used commercially. It is licensed for use by employees, training organizations, contractors and can be transferred to partners or potential customers.
  • VMware Player Pro is enabled to run restricted virtual machines created by VMware Fusion Pro or VMware Workstation

For me, Player 6 removed the ability to easily create VMnet adapters easily, allowing elaborate network configurations with GNS3.  Minus a few UI issues I’m kind of liking Windows 10.  I may switch out my main OS, although I’ll certainly need the newer player.

Anyways, no I don’t get paid for this kind of thing, but I know people who use this stuff won’t want to miss out on a sale.  ESX starter is on sale as well, but only 15% off.

Windows 10 technical preview

Telnet & echo, daytime?!

Telnet & echo, daytime?!

So I went ahead and downloaded the Microsoft Windows 10 technical preview, and while I was enabling .net 2.0 (how is that optional??) I went to see what else was in there.  Telnet is the same since Windows 2000, but daytime/echo and friends go back to what? NT 3.1?

How is it we lost the OS/2 and Posix subsystems, but we still have echo and daytime?

Even worse, they bought Interix, and have completely destroyed it.  I know it’s missing from 2012r2 but I was hoping that now we got back the desktop, and something like a start menu, why can’t we have SFU/SUA?

If only the whole subsystem thing was ‘open’ maybe someone could step in and provide a real *NIX layer on Windows.  MinGW/Cygwin on top of Win32 is all we have left, and it’s so slow compared to a subsystem, but way to go Microsoft!

Microsoft Solitaire Collection

Microsoft Solitaire Collection

Even more crazy, the game that established Windows dominance, partially due to it’s buggy shuffling, Solitaire is an optional download.  I’d still think they’d install that on everything.

Zork CPU implemented in FPGA

Really, how cool is that?

From the youtube page:

Using an FPGA I created a hardware implementation of the Infocom Z-Machine virtual machine (presumably a world’s first as I can’t imagine anyone else being crazy enough to do it). The instruction set is Z-Machine version 3 which means all the “standard” Infocom games should run. Only change was a few extra opcodes for implementing the BIOS (which provides the terminal).

The Verilog code for the Z-machine CPU is available at https://github.com/charcole/Z3 along with the code for the BIOS and a hacked version of Inform 6 which allows the use of the extra opcodes.

FPGA + display board

FPGA + display board

The complete archive for DOOM for the 3DO is on GitHub!

Link to the archive is here.

It’s a sizable download, 287MB, the majority being the ‘movies’ and ‘music’ directory.

 

The complete archive for DOOM for the 3DO
Yes, this is the infamous port of DOOM for the 3DO. Firstly, this was the product of ten intense weeks of work due to the fact that I was misled about the state of the port when I was offered the project. I was told that there was a version in existance with new levels, weapons and features and it only needed “polishing” and optimization to hit the market. After numerous requests for this version, I found out that there was no such thing and that Art Data Interactive was under the false impression that all anyone needed to do to port a game from one platform to another was just to compile the code and adding weapons was as simple as dropping in the art.

Uh… No…

My friends at 3DO were begging for DOOM to be on their platform and with christmas 1995 coming soon (I took this job in August of 1995, with a mid October golden master date), I literally lived in my office, only taking breaks to take a nap and got this port completed.

Shortcuts made…
I had no time to port the music driver, so I had a band that Art Data hired to redo the music so all I needed to do is call a streaming audio function to play the music. This turned out to be an excellent call because while the graphics were lackluster, the music got rave reviews.

3DO’s operating system was designed around running an app and purging, there was numerous bugs caused by memory leaks. So when I wanted to load the Logicware and id software logos on startup, the 3DO leaked the memory so to solve that, I created two apps, one to draw the 3do logo and the other to show the logicware logo. After they executed, they were purged from memory and the main game could run without loss of memory.

There was a Electronic Arts logo movie in the data, because there was a time that EA was going to be distributing the game, however the deal fell through.

The verticle walls were drawn with strips using the cell engine. However, the cell engine can’t handle 3D perspective so the floors and ceilings were drawn with software rendering. I simply ran out of time to translate the code to use the cell engine because the implementation I had caused texture tearing.

I had to write my own string.h ANSI C library because the one 3DO supplied with their compiler had bugs! string.h??? How can you screw that up!?!?! They did! I spent a day writing all of the functions I needed in ARM 6 assembly.

This game used Burgerlib 2. My first “C” version of Burgerlib because Burgerlib was originally written in 65816 for the SNES and the Apple IIgs. If you check out Burgerlib 5 (The current version, also on github), you’d notice that some code is still in use.

I hope that everyone who looks at this code, learns something from it, and I’d be happy to answer questions about the hell I went through to make this game. I only wished I had more time to actually polish this back in 1995 so instead of being the worst port of DOOM, it would have been the best one.

And one more thing…
The intellectual property of DOOM is the exclusive property of ZeniMax. No transfer of the intellectual property of DOOM or any transfer of the ownership of the sounds, art or other game assets are given nor implied. If anyone wishes to release a version of DOOM 3DO commercially, contact ZeniMax for a license.

The source code… Go for it.

Rebecca Ann Heineman

Olde Skuul

Seattle, WA

Run68 Human-68k emulator

I found this one by accident, but it’s more like DOSBox in that it runs 68000 executables with an emulated processor and emulated OS.  No SHARP ROMs or HumanOS diskettes needed.  It’s strictly text mode, but it’s enough to run executables produced by GCC.

Hello!

Hello!

The project is over on sourceforge, and unlike any other x68000 project this one is GPL’d.  The source code is remarkably tiny so I’d say for anyone looking for a way to sneak some C into something this may be an interesting ‘door’..

PCem is getting a dynamic recompiler!

It’s in the current source, right now, but I figured I’d build it and give it a shot.

The dynamic core consumes MUCH less CPU power.  The only current downside seems to be a 56kb/sec memory leak (I guess some dynamic code block isn’t being discarded).  But I have to say it’s REALLY cool to be running DOOM v1.1 on MS-DOS 5.0 and it’s running at 0% CPU utilization on my Xeon.

And as always the ‘normal’ non dynamic version is just fantastic.

I’ve only tested it with DOOM, and it’s worked great.  Give it a try?