Play What?

March 3rd, 2008

If you don’t find at least a dozen really stupid mistakes in here, you are not reading this anyway.

Wikipedia popups

September 18th, 2007

I have finally implemented a way to integrate the numerous relevant Wikipedia pages into the directory without adding hundreds of identically-looking entries. There are now over 800 keywords followed by a small question mark that when clicked on pop up the corresponding Wikipedia article. This effectively adds more than 600 Wikipedia pages to the directory.

Genesis Plus Linux port

September 17th, 2007

Astoundingly nobody seems to have ported Genesis Plus to Linux yet. (A GameCube Linux port seems to exist, though.) Anyway, I have ported the DOS (Allegro) and Windows (SDL) versions to Linux. Get the source code here. (I will add it to the emulator page later.)

SMS Plus Updated

September 14th, 2007

And while we’re at it, here is an update to my Linux port of SMS Plus to version 1.2. Besides integrating the massive amount of changes in version 1.2, this release also replaces the busy-waiting throttling function by an usleep(), reducing CPU load from full to nil.

Dega/SDL Updated

September 14th, 2007

I just uploaded the source code for my SDL port of Sega Master System emulator Dega, updated to the current version 1.12, to the emulator page. New features of the SDL port include joystick support (sent to me two and a half years ago by David Longbottom), 2x scaling, and the ability to toggle scaling and fullscreen/windowed mode at runtime. Have fun.

Portable emulators

September 10th, 2007

Here’s how a really portable emulator looks like. It took the following snippet of code to get Ubernes running with SDL:

#include "Nes.h"
#include <SDL/SDL.h>

int main(int argc, char** argv)
{
  Nes* nes = new Nes();
  nes->loadCartridge("cart.nes");

  SDL_Surface* screen = SDL_SetVideoMode(256,240,8,SDL_HWSURFACE);
  SDL_Color palette[64];
  for(int i = 0; i < 64; i++) {
    Uint32 col = nes->mPpu->mPalette[i];
    palette[i].b = col & 0xff; col >> = 8;
    palette[i].g = col & 0xff; col >> = 8;
    palette[i].r = col & 0xff;
  }
  SDL_SetColors(screen, palette, 0, 64);

  while(1) {
    nes->calcFrame();
    SDL_LockSurface(screen);
    memcpy(screen->pixels, nes->mPpu->display, 256*240);
    SDL_UnlockSurface(screen);
    SDL_Flip(screen);
  }
}

Five minutes at worst. Just a hint to those people who don’t give a damn whether LPDIRECTDRAWHEYTHATREMINDSMEOFANICESTORYWHYNOTPUTITINATYPENAMESURFACE7 exists on anything but their own poor excuse for an operating system.

Downtime today

July 17th, 2007

In case anybody wondered why the site was down today: Some time last Friday (possibly before), my provider Host Europe silently and slowly took away hard disk space from my virtual server at a rate of a few kB/sec. After some days (probably last night) the MySQL server stopped working because the disk was full. After I had opened a support ticket, they fixed it, and I am back to the 30 GB I pay for, but the ticket is still open, and they have not commented the issue yet. My guess: When they are short on disk space, they just take it from existing servers and hope the operators won’t notice. Un-fucking-glaublich.

Ditched AdSense

June 21st, 2007

I just removed the AdSense ads for emulinks.de. There are hardly any commercial offerings for vintage gaming enthusiasts, resulting in both CTR and CPC near zero. There is no point in annoying everybody (including myself) with it.

Boeing 727 Simulator for the Plus/4

June 10th, 2007

I just put a Plus/4 port of Boeing 727 Simulator online, a basic (BASIC, in fact) flight simulator I used to play on my uncle’s C64 when I was a kid. Check the Plus/4 page.

New ZX Spectrum Game

May 31st, 2007

If you haven’t noticed yet, I have put online a Sinclair ZX Spectrum game I wrote for my wife’s birthday last year: “Jib Goes Shopping“. I don’t really remember why I wrote this for the Spectrum, but I found it a really neat machine to program for.