Sept. 29, 2009

Woohoo, Ullrich von Bassewitz has made a new release of everyone's favorite 8bit compiler, cc65 - the first in a while.

cc65 has C and runtime library support for many of the old 6502 machines, including

  • The Commodore VIC20, C16/C116, C64, C128, C116, Plus/4, 510 (aka P500), the 600/700 family and newer PET machines (not 2001).

  • The Apple ][ and successors.

  • The Atari 8 bit machines.

  • GEOS for the C64 and C128.

  • The Nintendo Entertainment System (NES).

  • The Supervision console.

  • The Oric Atmos.

  • The Lynx Console.

This is the compiler that I used to create aSid, a program which turns your commodore64 into a synthesizer.

Sept. 28, 2009

The Saturday before last was Software Freedom Day, and I'd like to belatedly pay hommage to that weird hippie who many people in the software world seem to hold disdain for, Richard Stallman.

Even if you don't like Stallman's ideas, or his personality, or the way he looks, you are basically 100% 0wned by him.

How can that be? Let me quote from Wikipedia:

"Richard Stallman started GCC in 1985."

BAM! 0wned.

Basically it works like this: Stallman came up with the GNU General Public License, which is like those EULAs that you often have to agree to when installing software, except that it does the opposite to those EULAs in that it guarantees your freedoms as a user of that software rather than restricting them. You interact with thousands of pieces of Free Software on a daily basis, whether you realise it or not, and the GPL is the most widely used Free Software license.

If you have ever used a computer network (e.g. the internet, on which you are reading this), many of the routers through which your traffic travels contain firmware which was compiled using the compiler suite which he created. Likewise if you've ever driven a car, used a games console, television, refrigerator, or a mobile telephone, many of the devices you use would have had their firmware compiled with GCC. In the case of games consoles, pretty much all the games you play on consoles would have been compiled with a GCC variant. So even if the software on those devices is itself not licensed under a Free Software license, you are still using something which was created using a tool created by Stallman. Likewise, if you run any Apple products, or pretty much any OS except a Microsoft OS, a huge amount of the software you interact with on a daily basis was compiled with GCC. I always find it magnificently ironic when I hear or read about people with Macbooks or iPods or iPhones complaining about the GPL and Free Software. Even the firmware in your PC was probably compiled with GCC. Richard Stallman 0wns your computers and your devices.

If you ever use Google, or many of the other high profile internet sites we all interact with on a daily basis, you will often find that those site run GNU/Linux on their servers. The GNU part of GNU/Linux refers to the fact that a large amount of the software in the Linux ecosystem comes from the movement which Richard Stallman started. It's in part due to that movement that we have had the cheap, ubituitous internet experience we have had. Richard Stallman 0wns the internet.

Stallman was right, and as long as you use pretty much any technology at all, you have proved him right.

Free Software has won.

Sept. 27, 2009

This is probably the most exciting thing I have seen on the internet for a long time. This particular execution may not be 100% perfect, but the idea itself seems like an immensely powerful way to change our world for the better, step by step:

Kiva

(at least until we can get rid of economies based on monetary currency entirely)

Sept. 26, 2009

The zipfile under the image above contains a Pure Data patch which procedurally generates a virtually infinite number of acid and breakbeat loops. I've found that it's quite a lot of fun to play with!

Start by loading the patch called 0_START.pd and then turn up the volume and the cutoff. After that hit the big red button a few times until you hear something you like.

I was making it into an RjDj scene, but I am not really sure if I'll ever get around to finishing it.

Garage Acid Lab screenshot

Sept. 13, 2009

update: Oh wow, I completely forgot that there is already an awesome indie game called Dyson, thanks for reminding me, Dan!

Here's another AsteroidsTNG prototype. This asteroid field goes on until MAXFLOAT before looping (I think) and it contains up to 2^32 unique asteroids. I had to remove the collision detection, so you can fly through asteroids, but don't let that stop you from exploring! Oh wow, I just tested this on Internet Explorer and it runs hellishly slow. Sorry IE user, whoever you are. :(

(click on the image to play)

I think if I was ever to turn this into a proper game, I would call it Dyson, after the physicist Freeman Dyson who came up with the concept of the Dyson tree, which I would hope to work into the game. A short time ago I had the great fortune of briefly meeting Freeman Dyson's daughter and tech luminary, Esther Dyson, source of the following great piece of advice:

"Fail cheap. Fail fast. Fail often. Always make new mistakes." -Esther Dyson

I am a huge fan of this philosophy, especially when it comes to rapidly prototyping software and games.

This game was written inside the jsGameSoup framework.

Writing games for javascript and the canvas tag feels a bit like being an eight year old again, trying to squeeze every last cpu cycle out of my parents' Apple //e. Good times!