ProjectXG Redux

Anyone remember CU Amiga Magazine’s “ProjectXG”?  This was a DIY project they ran, based on a hack that was published on Aminet, to interface a Waveblaster MIDI daughterboard to the Amiga’s serial port, to provide a pretty good quality MIDI tone module.

The daughterboard most commonly used for this project was Yamaha’s DB50XG, though any card which attached to a “Waveblaster” header could be used.  (Googling Waveblaster now, however, will find you a Yamaha product of quite a different nature.)

The DB50XG’s successor, the DB60XG was manufactured under license by NEC as the XR385, and this seems to be the easiest such card to find these days.  It’s very similar to the DB50XG, it just has some very subtly different voicing, and can apply its DSP effects to incoming audio as well as its own sounds.

Having built a ProjectXG many years ago, then selling it a year or so back and promptly building another one, I naturally wanted to interface a Waveblaster card to one of my Minimig variants, and listen to some old MIDI files again.
Continue reading

Lest I be thought a hypocrite…!

I have a confession to make!

After my post about video game music and references – deliberate or otherwise – to pop music of the day, I remembered my old AMRWolf project and the ProTracker module I wrote to serve as its title music:

Wow – does that say *1996*?  Now I feel old!  Anyhow, bonus points to anyone who can identify the piece of 80s pop music that inspired the backing track…

The module itself, in case anyone’s interested, can be found here.  (Yes, imaginatively titled “Untitled2”.  I could occasionally come up with music tracks that were worth not deleting on the spot, but I never could come up with decent names for them!  I still can’t, for the very occasional pieces I come up with these days – “Ode to a Girl who Works in Lidl” *really* doesn’t cut it!)

The sampled breaks were themselves created in ProTracker, then rendered down to a single sample to squeeze as much from the 4-channel sound chip as possible.  Sadly I don’t have the source tracks any more.

Under attack!

This blog was offline for a while yesterday, and was running slow when it was up.  Apparently the reason was an internet-wide attack against WordPress sites, attempting to brute-force the admin passwords, and presumably litter any compromised blogs with spam.

Thankfully I used a nice secure password (Eight asterisks – no-one would *ever* guess that!) and RetroRamblings seems to have been spared any such indignity.

This may be turning into an obsession…

A few days ago I scored an Altera DE2 dev board on EBay for £90. It’s the lower-end model with “only” 35,000 logic elements in the FPGA, but still a worthy addition to the collection.
DE2

My first steps down the road that led me here were nearly two years ago now. I brought my old Amiga stuff down from the loft with a view to selling it, since I hadn’t touched it in years. I had an A4000/030 (my pride and joy when I was 17!), an A600 that I’d inherited as payment-in-kind for some programming work, and an A1200 with 50Mhz ‘030 that I’d bought from a friend and then promptly mothballed.

In my defense, I *did* sell the A600.

However, since discovering how active the Retro scene is, and becoming interested in the FPGA recreations of retro systems, I’ve somehow managed to acquire the following cool but ultimately pointless toys!

  • 1 A500+ (which somehow survived an EBay seller shipping it in a box three times too big, in a shallow dusting of polystyrene peanuts! I’ll probably sell it again – I bought it mainly to save it from death-by-leaky-battery, and try my hand at the piggy-back RAM chip trick.  Buying the ingredients needed to return it to something like its original colour got me some funny looks in Boots!  Yes, it’s bblonde.  No I’m not going to put it in my hair.)
  • 1 A500 motherboard (works fine, just doesn’t have a case.)
  • 1 Commodore 64C (I need to mend the shift-lock key, otherwise in good working order.)
  • 10 3.5 inch floppy drives (to try my hand at the make-a-PC-drive-work-on-the-Amiga mods. Hmmm, maybe I should try doing this)

And far too many FPGA boards, all capable of running a Minimig core of one type or another!

  • 1 Turbo Chameleon 64 FPGA cartridge (to which I’ve added a JTAG connector for ease of programming)
  • 1 Altera DE1 dev board (Courtesy of EBay)
  • 2 barebones Cyclone 3 dev boards from EBay, Frankensteined out with my custom-built IO boards.
  • 1 Minimig with ARM Controller (a donation for which I’m most grateful)
  • 1 Prototype MIST board (very nice piece of kit – USB keyboard and mouse support, and with an Atari core under development)
  • 1 Altera DE2 dev board

FPGABoards

So… I think I can safely call this particular de-cluttering exercise a dismal failure!

References in videogame music

My post about the Agent X II theme reminded me of something else that’s interested me for a while. The music in computer games back in the 80s and 90s clearly contained some major pop culture influences, but I wonder how often it was completely subconscious, and how often the composer set out to copy the feel (or even the notes!) of an existing piece of music? We had a much more relaxed attitude to copyright back then!

Anyhow, the influences ranged from the utterly blatant:

cf.

Or the stunning (for 1990) game over music from Shadow of the Beast II on the Amiga, and a piece of incidental music from Miami Vice:

But sometimes it was a little more subtle.
Take for example, Rob Hubbard’s C64 music for One Man and His Droid: Listen to the section 3:05 into this:

and compare with the passage 2 minutes 40 seconds into this:

Of course, sometimes it works in the opposite direction!

So how many more examples are there?

An old favourite

After such a dry, technical post, here’s something a bit lighter: more videogame music from my childhood!

This was Tim Follin’s masterpiece from the Commodore 64 version of Agent X II. I’ve always loved the eccentric rhythms in this. (Also, listen out for a reference – perhaps accidental? – to Rutter’s ‘Shepherd’s Pipe Carol’ towards the end.)

PACE Adventures – Part 4

A worked example…

Since I’ve been asked just how difficult it is to port a PACE arcade machine to the Chameleon, I figured a worked example would be useful! So what I’m going to do is document the process of getting Galaxian up an running. I’m going to assume you’re using Linux here. It’s all equally possible on Windows, but you’ll need to deal with things like getting an SVN client up and running, and I’m afraid I can’t help with that.

The first thing you need is a copy of the current PACE repository (Revision 1402 at the time of writing), so from a terminal, type:
svn checkout https://svn.pacedev.net/repos/pace
Continue reading

Digging up old projects: FreeWheel

I received an email a few days ago asking whether I still support the FreeWheel utility. This is something I wrote back in the mists of time to provide mouse wheel support for the Amiga. It wasn’t a mouse driver as such, instead it set up an input handler that watched for “Newmouse” events, and attempted to translate them into keypresses or slider nudges, or whatever was appropriate for the window currently under the cursor.

The other nice thing FreeWheel could do was to adjust the mouse speed in very fine increments. Instead of merely multiplying mouse movements by an integer constant, it multiplied by a fractional amount, and maintained a remainder, so if you wanted your mouse to be 23% faster, FreeWheel could oblige.

The requested change was simply to provide a 68000-compatible build, since the build on Aminet was for 68020+ only, and as it happens this was a really easy request to fulfil, so… some 14 years after the first release on Aminet, a new build is now available!
http://aminet.net/util/mouse/FreeWheel.lha

More PACE adventures

After I ported the Pacman core to the Chameleon 64 last week, Mark McDougall suggested that Moon Patrol would be a good project to port next, so that’s exactly what I’ve done.

mpatrol

I’ve also improved the Pacman port somewhat, cleaned up the clocking arrangments (now I have a clearer idea of how they’re supposed to work) and integrated the Chameleon_CDTV entity, which means the CDTV infra-red controller can now be used.

I’ve also ported Moon Patrol to the MiST board, and to my Frankensteined C3 board.

The downside of Moon Patrol is that it requires a two-button controller, since one is used for fire and the other for jump.

Binaries for the Chameleon64 can be found here, while a patch against current PACE SVN can be found here.