Wednesday, November 29, 2006

Windows MIDI Players and Tempo Control

Since it's late and I'd rather not disturb the roommates + landlord, I am practicing on an electric bagpipe chanter.

I am on the lookout for a good midi player for Windows, something I can use to play along with MIDI versions of bagpipe tunes. Since my playing is a bit slow, and the tunes I'm looking to play have a default tempo that's way out of my league, a player with some sort of speed control is pretty much a necessity.

Here's what I've found this evening, in order:

  1. Sigma Player 1.0 - A simple freeware player supporting multiple audio formats. The interface is a bit odd, sporting all black buttons and a close button that simply says, "Close". Forgiveable, except that dragging and dropping a file onto it doesn't seem to do anything, and the "slow motion" feature that the website touted isn't variable. It's either regular speed or slow-mo, and no in-between. This is better than nothing, but not what I'm looking for.

  2. Sweet MIDI Player 2.2.6 for Windows - This one's better than Sigma Player, but still has shortcomings. It's interface is structured like a sound board, with vertical sliders to adjust the volume of individual channels, as well as knobs to pan them to the left or right. More importantly, it sports two text boxes to change tempo: one displays the tempo as a number (222.16, for example), and the other displays a percentage that the tempo can be adjusted by (whereby "-50%" will cut it in half.) Personally, I'd prefer slider bars to text boxes (or both), but this worked out well enough for me to play along with the tune at a reasonable speed. This proved to be an exercise in out-of-tune playing, and ended up sounding about as good as a chorus of belligerent whales. I tried using the pause controls and the tempo setting to get the tune to stay on low-A for a good while, which I hoped would allow my chanter to be tuned to the computer's synthesizer, however pausing the tune in Sweet MIDI Player had the effect of muting the song and requiring it to be restarted from the beginning. Argh. Perhaps this has to do with the MIDI synthesizer it used, perhaps not. Regardless, Simple MIDI Player is ok for now, but needs to be replaced.

Oh well, I'm off to actually practice, and not just write about it. More on this later.

Wednesday, May 24, 2006


I've started to play the bagpipes again, after a few-year lull. Had the chanter stock fall off earlier today. The rubber ring holding the chanter stock to the bag had disintegrated. Me thinks I should've taken better care of it; too late now. I think I'll give fixing it a try, but suspect that a new bag is in order. Some net-searching turned up zipper-openable bags, which seems like it'd make for easy cleaning, as well as making it easier to find escapee drone reeds.

Finished playing the New Super Mario Bros for the DS. It's fun. Nothing really new; the game is standard 2D Mario fare with elements from the 3D marios (wall jumping, double jumps). Ground stomping is in there too. Some of the new features are more novelty than anything. There's a big mushroom, which'll make you as tall as about 1/2 the screen, however it's really only cool for a level or two. The same can be said about the tiny-ifying mushroom. Regardless, the game is fun and the level design is especially good. I do wish the game could be played on a TV though, as this'd be a nice game to play with a few people.

Am starting to take up archery. I've gone to two archery shoots/practices run by a local club, The Carolingian Company of Bowmen, which is SCA based. They've been lots of fun and I plan on going to more practices. After the first shoot, the fingers on my right hand, the one I use to pull the string back, hurt quite a bit. By the second shoot, I started using a glove. That seems to have fixed that problem.

Monday, May 15, 2006


  • It's still raining, and has been for the last week. Boston's North Shore region got pounded, with some areas getting up to 18" of rain. The house I live in (in the Metrowest area) has a small amount of water in the basement, but not much; no more than a quarter of an inch deep, and only in one spot. That spot happens to be under part of the server table though. It doesn't appear to be growing though, which is good.

  • I just got Purple Motion's new CD in the mail. It's very good. If you liked demoscene-type stuff, it's a good buy. (Purple Motion wrote music for Future Crew, who did the PC/DOS demo, Second Reality.) Included on his CD are some new stuff and some remixes of old stuff, including a remix of his contribution to Second Reality. It's very good, although I prefer the original version. The remix of Starshine is awesome though.

  • The New Super Mario Bros comes out today [for the DS]. A local EB Games didn't have it, and won't until tomorrow. Grrr.

    Another new Mario Bros game, Super Mario Galaxy, might be a launch title for the Nintendo Wii.

  • A new beta of VSLua was released recently. VSLua allows Lua code to be debugged from within Visual Studio. This is the first version to support the use of custom Lua dlls, something the previous beta did not have, and a requirement for the code I work on. (I use LuaPlus, a C++ interface to the C-based Lua API.)

Sunday, March 26, 2006

Post-GDC Notes

Last week, I had the opportunity to attend the Game Developer's Conference (GDC). This was my first professional conference, excluding a MacWorld expo I visited in the mid-late 90's, and was also my first time arranging my own travel plans (in regards to airline tickets, hotel reservations, etc.) Here are my notes, roughly in the order I could think them up:

  • The Lua roundtable on Thursday was excellent. There was a wide range of people there, from console developers looking to shrink the Lua runtime down to well under 100k, to those who were just curious about what Lua was. Some had modified the language and runtime itself (supposedly, it's fairly easy), others had connected Lua to C/C++ in a myriad of ways (either using custom bindings, or SWIG.)

  • Microsoft seems to have good momentum in regards to XBox Live Arcade.

  • Some of the conference rooms were way too small. Room A1, you suck.

  • The Minna Mingle party was a lot of fun. The company I work for, Funkitron (who paid for the trip, thanks again Dave!), had a table there. It was in a weird spot though, on top of a stage in a reasonable-sized auditorium. Well, not quite an auditorium, more like a fancy restaurant from the 20's. The type where gangsters might hang out. Anyhoo, the table's spot seemed to scare people off. Some sort of stage fright thing I suppose. That and it was somewhat separate from the other tables. The party did gave me some time to hang around with Darius Kazemi, who I hope was able to get some good rest over the weekend. Oh, and to whomever brought the copy of Blokus (I think it was Garage Games), you rule.

  • The Shockwave party was cool too. Got to play some Poker for a bit, which isn't my strongest suit. Thanks to Ion Hardie from Reflexive for giving me a few extra poker chips.

  • The burrito place near the Santa Clara hotel is awesome. Props to Slingo's Mike Sweeney for recommending it. I wish I remembered the name of it though. They had some of the best burrito sauce I've ever tasted.

  • Losing my cellphone sucked. I think that a better system of pants pockets and/or a belt clip of some sort will fix this next time around. To note, 1-800-CALL-ATT allows calls to be placed from pay phones using major credit cards. 1-800-COLLECT also works, but they don't accept Mastercard (1-800-CALL-ATT does.)

  • The keynote from Nintendo president Satoru Iwata was sweet. Every attendee got a pre-release copy of the new DS game, Brain Age. The new, 2D-styled, Zelda-for-DS game they're working on looks to be good.

  • The new Super Mario Bros game for DS looks nice, although I wish I'd spent more time playing around with it at the booth. Speaking of which, Nintendo's booth was sweet. Most booths were just a few guys sitting around demoing a product, which was helpful in a lot of cases. Nintendo's was the most fun though, and consisted of nothing but DS after DS, all of which were the new "Lite" models. Sony's booth was alright, and they had a lot of PSPs there. It never seemed as crowded as the Nintendo booth though, although that could just be the fanboy in me filtering out information.

  • In terms of luggage, pack light! Or pack an extra piece of luggage. I ended up running out of space and had to toss some of my conference swag (various magazines and t-shirts had to get sacrificed to the hotel trashcan gods.) In retrospect, I probably should've just gone out and bought a cheap duffle-bag right then and there.

  • If you're gonna stow away luggage at the conference center, do it early in the day, especially if its the last day of the conference. I was lucky enough to get there when there was still room to do so, but they ran out of space shortly afterwards (at 10:30, according to one of the attendants.)

  • When calling a cab, if they take your name, don't expect them to wait around very long for you, if at all.

  • Sugared cola, bad; coffee, better; water, best. Furthermore, if you're used to one source of caffiene (in my case, coffee), don't switch to another while at a conference. Relearning how tired sugared cola makes me really wasn't one of the things I wanted to get out of the conference, but it was.

  • The Will Wright talk was well done and interesting, although not for everyone. His talk came off like that of a college professor, specifically the excitable and bright, but absent-minded type. For the WPI people here, it was a bit like listening to Mike Ciaraldi talk, in that both seem to distribute information on a fast-paced and slightly random manner. (I mean this in the best possible way, BTW. It's the sort of ADD thing that makes TV shows like Robot Chicken really worthwhile.) I don't think many suits stayed around for the whole talk though. The crowd that left was decidedly more geeky looking than the crowd that came in.

  • Some Californians can't seem to take the cold. For all week, it was in the 60's and was sunny. I recall hearing one cellphone-using woman mention how cold it was.

Friday, March 10, 2006

Gold! Gold, I tell ya!

Feeling lavish? Perhaps you'd like to be a little more lavish? Maybe a diamond-encrusted, gold-plated USB memory stick will take care of things.

Perhaps that's not lavish enough for ya. If that's the case, why not get a gold-plated PC? Comes with a free t-shirt as well.

Wednesday, March 08, 2006

Google Maps

Note to self, when using Google maps to find a location, always double check the final address. Also be wary of abbreviations. I learned both lessons earlier today.

I really wanted to go here...

but ended up here.

The correct address was "281 Massachusetts Ave 02474", not "281 Mass Ave 02474". Both put me on the right street, but the the abbreviated one placed me a few miles down the road. Argh!

BTW, Lexington Eye Associates, which is where I headed to, have really nice eye doctors.

Thursday, March 02, 2006


Last weekend, I began scrapping together a DOS machine, the primry purpose of which would be to play games, run demos, and generally just feed my nostalgic senses. You see, back in the day, I spent a lot of time working in DOS. My first computer, an IBM PCjr, ran some variant of IBM DOS. I don't remember the tech specs of it very well, and I'd have a heck of a time trying to figure out what made IBM DOS different than other DOS'es, but i do remember having to swap out floppy disks... a lot. [1] Boot the system, put in a floppy. Run a program, put in another floppy. Go back to DOS from some application, put the DOS floppy back in. That was, of course, assuming that the program could exit back into DOS, and didn't require a reboot.

So come last Saturday, I eyed an old system sitting under my TV table and said, hmmmm, why not get it running. Components ended up getting scrapped together from various sources (Kevin, thanks again for the sound card!) Certain, nameless websites provided me with MS-DOS 6.22 installation floppies, which after being written to old OS/2 install floppies (which I have on CD as well, that's a project for another day though), proceeded to get installed on the target system. After quickly remembering how little fun installing software via floppies was, I proceeded to get a network card up and running. The initial plan was to get TCP/IP up and running under pure DOS. That failed. [2] Instead, I ended up installing Windows for Workgroups 3.11.

Ugh. Windows?! On a modern DOS machine? I suppose I could've copied files over a serial cable, which might've been cooler (or should I say, more l33+ h@X0R ), but fuck it. Windows 3.11 was just as much a part of the computing experience back then as was DOS. Plus, that meant I got to install After Dark, an awesome set of screensavers that I really wish were offered on modern Windows systems. (The last released version runs under Win98, but not 2000 or XP.)

So now I was up and running! I could copy files over via FTP [4]. Scorched Earth was installed in a prompt fasion, as well as Pinball Fantasies, Prince of Persia, Capture The Flag, Stunts, and a few others. Some DOS demos made there way onto the machine as well. Second Reality and Crystal Dream II among them.

So what's the point here? I could've just run a lot of these games under DOSBox, which is a really nice cross-platform x86 + DOS emulator. Why the need for a dedicated DOS machine:

  1. it's more compatible than DOSBox. Or VMWare + DOS for that matter, both of which I tried in the past. These setups are alright, except there'd always be a few apps that never worked quite right. DOSBox had a few incompatibilities, VMWare + DOS had performance issues, even on a fast machine.
  2. it's fun. I'm beginning to understand why some people stick with certain computer platforms long after their respective manufacturers stop supporting them. Amiga users fall into this category. Heck, back in high school, the local Mac user group doubled as an Apple II user group.

[1] The IBM PCjr had two cartridge slots, in addition to the floppy drive. Some of the cartrides I had were very very cool, and given that I only had a small handful of them, they got used very extensively. Crossfire and Mineshaft particularly come to mind.

[2] While trying to get networking up and running in pure DOS, I did encounter DOS implementations of the SSH 1 and 2 clients, which can be found at

[3] I could've installed Windows 95 or 98 instead, in which case I would've had a more recent update to MS-DOS, and've had some level of compatibility with Win32 apps, but where's the fun in that?

[4] I think that at times, we take for granted how easily one can get onto the Internet. All modern operating systems support this right out of the box, and almost always include a wide range of tools to interact with other machines. Windows for Workgroups did not include Internet support at all, at least not when it was initially released. It could connect to various types of Local Area Networks, including a now primitive version of SMB/CIFS (updated versions of this are the default filesharing option in modern Windows.) Internet support was available in separate downloads, however, such as Trumpet Winsock and a Microsoft TCP/IP 32. For the DOS box I just set up, I used the latter. The tools it includes are limited to FTP, Telnet, ping and traceroute (there might be others, but only the first two are advertised as available.) I find it kinda weird that these tools are still perfectly useable on modern systems, even though the software I'm using is over 10 years old. Anyways, if you ever need a dead simple FTP server for Windows, ftpdmin might just do the trick. It's a command line program, but its syntax is simple. The following command runs the server and disables write access: "ftpdmin -g

Wednesday, February 22, 2006

I just got myself a account. If you haven't seen this site, it tracks bookmarks via tags. My page there can be viewed at

Friday, February 17, 2006

Immortal Pongbat

Last night, I released a new version of Immortal Pongbat, a game that a few friends of mine (Mark Aikens and Ben Lucas) and I worked on a few years ago. It was two years since I did any work on it. and after a well-placed e-mail from someone in the Netherlands asking about its source code, I decided to go in and tidy things up a bit. (Not that receiving an e-mail from the Netherlands was particularly important. It could've just as well been from someone in Germany, Russia, Zimbabwe, Antarctica, Space, somewhere down the street, from Right Behind You!, etc.)

Anyhoo, if you're reading this, you should download it. It's mega awesome, and undoubtedly has more mega awesomeness than that lame office toy that's probably sitting on your desk.

Wednesday, January 25, 2006

Laser-Guided Input

Got a mouse with a laser in it? How about a keyboard with a laser?

Thursday, January 12, 2006

Link Parade

  • RetroGaming Radio - A monthly radio program centered around older/classic video games. Recent shows can be downloaded in mp3 format.

  • Russian Climbing - A short movie featuring some urban climbers performing some Matrix-esque moves in and around some abandoned buildings.

  • The Doomsday Engine - A heavily modified version of the Doom game engine, with support for Doom 1, Doom 2, Heretic, and Hexen. Quake-style networking with mid-game joining appears to be supported, however I've yet to try this yet. If that doesn't work, then there's always ZDaemon, which is another modified version of the Doom engine.

  • Lunar Magic - A WYSIWYG level editor for Super Mario World.