33.3333333333 etc. Years Old

February 11th, 2006

Today I’m 33.33333333 etc. years old, at about 6:40 p.m. according to my slightly rough calculations.

Frogs and Flies

February 10th, 2006

My union went on strike for three weeks during the summer of 1997, so I was left with more spare time and less money than usual. So I took the opportunity to make a game for the C64. I chose to port the classic Atari 2600 game Frogs and Flies since Carla and I had been having some fun playing that together recently, and it was fairly simple.

Darren made some really nice frog sprites for me, and I took it from there, doing all the rest of the game, including the music and the remainder of the graphics.

Despite being a simple game, there were a lot of new routines I had never coded before. To make the frog jumps look smooth and realistic, I needed to do fractional math, so the frog’s X and Y co-ordinates could have sub-pixel accuracy. Collisions were a bit of trouble, as simply using the C64’s poor hardware sprite collision detection wasn’t good enough when frogs and the tongues were colliding with each other simultaneously. I also wanted to include a one player option like the original game, which meant some form of artifical intelligence for the second frog when it wasn’t computer controlled.

The biggest kludge in the code was the way I implemented the second frog. I got all the code in place to handle one frog. Then instead of making that code also handle the second frog, I simply copied & pasted all that code, making changes where necessary, to deal with the second frog. Basically, it took almost twice as much memory as it needed to.

I did all the audio myself for a change. For the title screen, I did a SID version of “Five green and speckled frogs, sat on a speckled log, eating some most delicious bugs…”. I don’t know the title to that song, but that’s the first couple of lines from it. I added digi drums to the song with a neat utility made by Padua, I think. I also did the sound fx in the game with another cool utility, though I can’t remember who made it.

And I even did all the rest of the graphics myself. That meant the font, the title screen layout (based on Darren’s frog art), additional sprites, and the pond backdrop in the game. It went reasonably well, though the D in my font looked too much like an O, leading a couple websites to mistakingly think Darren’s last name was Foulos! He doesn’t look Greek to me.

Altogether the game took about ten days to make. I sold it to Loadstar for $300, and they published it on Loadstar #161 that autumn. It probably worked out to about $4 or $5 an hour, but the thrill of being published was worth more than the money to me. Besides, I was amazed there was any money to be made in C64 programming in 1997. Little did I know what 2004 and 2005 would hold for me…

You can check out some nice screenshots from Frogs and Flies 64 and hundreds of other games on Lemon64. What’s interesting is that many websites now have an entry for this game, as if it was a really real, commercial game. Surely some people didn’t notice the 1997 copyright, and figured it was an official port, back in the early 80s. The worst offender is the entry on Wikipedia where my version is mentioned right along with the Atari 2600 original. And on their Commodore 64 Games page, Frogs and Flies is among the 485 games listed, even though there were thousands upon thousands of C-64 games made – in fact, there are still perhaps 50-100 new C64 games a year even now, though little of note.

Online Database

February 7th, 2006

I’ve been searching on and off for quite a few months for a good free program to build an online database – without programming. I want to build a website similar in structure to imdb.com, but more focused on my interests and collections, especially car combat games, apocalypse movies, and where the two intersect.

I played around with mySQL and PHP a bit, and they could obviously do the job, but it would still be a lot of programming for me. It would be a worthwhile learning experience as well, but right now I don’t want to focus on that. I’m learning C++ for some paid work, so that takes priority.

I played around with wikis, but they all seem too unstructured – each game and movie in my database can and should be much more structured – a title, a review, a score, links, screenshots – and I don’t want to have to continually hardcode that stuff into each of my entries in the wiki.

I played around with Content Management Systems, which would provide nifty news items and forums and the like for the site – but they all seemed to lack the ability to integrate a typical simple database, despite being complicated database-driven beasts themselves.

Today I found something that seems awfully close to what I want, called ezDatabase. The only thing that doesn’t line up with my wishes at the moment is that it isn’t free – but $60 isn’t a whole lot to pay compared to the hours and hours it would take me to code myself. Suggestions welcome!

In other news, I’ve been slightly successful in getting some discussion going over at the SSOCC. We’ve been discussing cross-development, and I’ve started a bit of a tutorial on getting set up with the 6502 cross assembler DASM.

Lego

February 3rd, 2006

I loved Lego as a kid. It was my favourite thing to play with, not including electronic type stuff. I got back into Lego in a big (and somewhat expensive) way during the summer of 2001, and for the next two, maybe three years spent a lot of my spare time buying, selling, sorting and building.

I know it seems like a childish thing, much like playing with old computers and video games from 20+ years ago. But both Lego and old computers have much in common for me. Very few things wake up my mind and my creative energies more than my old childhood favourites – nostalgia is a powerful feeling. Even more importantly, both are vast mediums that I could hardly begin to see the full potential of in my childhood, both due to financial constraints and my own abilities.

For instance, as a kid I would build Lego models of The Phoenix – the spaceship that the heroes in my favourite cartoon, Battle of the Planets, would fly around in. Here’s a fairly accurate version of how I used to build it:

Old Phoenix

And with my adult brains, and somewhat deeper pockets:

New Phoenix

I’ve received several emails from other adults about my Lego rendition of a cartoon spaceship, so I may be weird, but at least I’m not alone. My page with a bunch more pictures can be found here.

I have to admit that I’ve done very little with Lego since, inexplicably, my interest and skills with 20+ year old computers suddenly started paying well. But I still do check out some of the Lego websites, and here’s what got me thinking about this today: A really nice Lego train layout. Read the rest of this entry »

Secret Society of Commodore Coders

February 1st, 2006

If you’re looking for discussion about Commodore programming, check out the Secret Society of Commodore Coders forum. It was started by Dave Moorman of Loadstar last year, and had some good discussion going. Dave’s recently made me an admin, and I’m trying to stir up discussion again, so if you can think of any relevant topic, please post over there – I promise I’ll answer!

Regarding Loadstar, it’s a disk magazine for the C-64 that’s still being published. A subscription is fairly inexpensive, and in return you’ll be mailed real Commodore disks full of articles, games, programming utilities, multi-media shows and more. A cheaper alternative is to have disk images emailed to you, which you can then use on your emulator, or copy to real disks yourself.

Dave Moorman is the editor, and an all-round good guy. Dave and his wife Sheri let us stay at their place in Holly, Colorado during our big New Mexico trip in 2001. I’ve been Dave’s beta-tester/proof-reader pretty much since he took over Loadstar in 2000. We’ve just been working on issue #243 – amazing that he’s kept it going this long.

Dave and I recently completed a “Little House on the Prairie” presentation for the C64, based on the photos and travelogue I had written for my blog this past summer. It should be on Loadstar #244.

Move It or Lose It

January 31st, 2006

Okay, now that I’m done embarrasing myself with my mostly-solo album, it’s time to embarrass Darren again.

Darren wrote this, vocalized it, and likely had a lot to do with the drum machine side of things. I don’t know if we actually programmed it, or just used a bunch of the built-in beats. My contribution was the bass line, all three notes of it.

I really like Darren’s rap/radio announcer voice – it’s surprisingly thick and in-your-face, especially right at the beginning.

Listen to Move It or Lose It.

Staples Flyer

January 30th, 2006

While flipping through the latest Staples flyer, I dared to read some of the “catchy phrases” that they’ve printed at the bottom of each page. The comment on page 8 reads:

We can show you how easy it is to take your technical needs to the next level.

This is a mixture of a couple different common marketing phrases used in recent times, but together, it’s stupid! There have been many variations on the “We can show you how easy it is…” theme – I think Radio Shack had a slogan like this that sort of struck me, but not enough for me to actually remember it now, and a few minutes of googling didn’t turn it up. My guess was “We can show you. How.” but I know that’s not right. How about “You’ve got questions, we’ve got answers.”?

The other catch-phrase is “…to the next level”. I’m not sure where this originated – it’s sort of a video game term, but it also reminds me of US military codes, like Defcon 3, or Homeland Security stuff. But in any case, it generally refers to increasing intensity, or difficulty, or seriousness or whatever.

In the context of Staples shopping, I define “technical needs” as computer/equipment problems. Either we don’t have something we need, or if we do, it’s broken or inadequate.

So, put it together, and Staples is telling us that they can help us increase our computer problems – and it’s easy – and they’ll show us how.

Adoramus Te

January 27th, 2006

Track #7 on the album is “Quarters”, which has already been dealt with. On to the 8th and final track of “Robin Plays and/or Sings”:

To wrap up university, Darren and I took a choral ensemble class. It was a great experience in many ways. We did a concert at the end of the 6? weeks, and our professor had me sing in a group of 4 for one song. I can’t even remember or tell if I’m singing tenor or bass for sure, but I think it was bass. I was very nervous, and I think the rest of my group was too.

Here’s the words to the song, thanks to Wikipedia.

Latin: Adoramus te, Christe, et benedicimus tibi, quia per sanctam crucem tuam redemisti mundum, qui passus es pro nobis! Domine, miserere nobis!

English: We adore You O Christ and we bless You, because by Your Holy Cross you have redeemed the World.

Listen to Adoramus Te.

VIC-20

January 26th, 2006

Alex’s plea for more Commodore posts got me thinking – I actually have been doing lots of C= related posting still, just not here on my blog. It goes to other forums, such as Lemon64, AtariAge, and most recently, Denial (all linked at the right).

This is pretty cheap, but here’s a (somewhat revised) post I just made at Denial, replying to a question about what was your first VIC-20 game:

I’m pretty sure I didn’t get a VIC-20 until the very early ’90s. But I certainly have good memories of the VIC-20, and nearly bought one in early ’84, but right at the store my parents convinced me to get a C64, and overall that was probably a good call (no offense intended!).

The first VIC-20 I saw was at a trade show probably in late ’82 or early ’83, and it made a big impression on me. I had played a lot of PET and Atari 2600 games by that time, but the VIC games seemed way more advanced. I still remember the two games I saw were Avenger (a Space Invaders clone) and Road Race (very similar to the 2600’s Night Driver).

The next time I saw the VIC, it was while visiting someone’s house for a church picnic or something – probably summer ’83. Some of the older boys were playing Omega Race on it. I didn’t know the game at the time, so I asked if the oldest guy there had written it – I guess even at that time my mindset was DIY, and didn’t really think of going to a store to buy games. He said he had (whether he was outright lying, or just being sarcastic I’m not sure) , but it soon became clear to me that he hadn’t half a clue how to code.

While I’m at it, one more early VIC story though it’s not about games. Before I nearly bought a VIC, I bought a Timex Sinclair 1000. I couldn’t get the thing to save or load from cassette (they didn’t have an official tape deck at the time, so you just hooked your own up with regular audio cables, and had to mess around with volume levels etc.). I was 10 or 11 years old at the time, and my parents had no idea how to help, so they sent me with my computer with my aunt to her boyfriend’s place. He was a great big gruff guy who scared me. He couldn’t get it to work either, but he did spend some time showing me all the BASIC programs he was writing on his VIC-20. I couldn’t understand most of it at the time, but I still remembered it, and now I can tell they were fairly simple programs that just performed some calculations on some input – like simple text only geometry, calculus, kind of stuff. That experience leads to a whole bunch of other stories that aren’t VIC related, so I’m telling my wife them now, and sparing all of you.

Morning Has Broken

January 25th, 2006

Track #6 is an instrumental of “Morning Has Broken” which probably has another name when there aren’t any words attached to the song. “Traditional English Melody” or something 🙂

As far as I remember, I recorded this on two tracks – acoustic guitar on one, and acoustic bass guitar on the other. The acoustic bass was one of those misguided purchases I make from time to time. I wanted to be able to accompany guitarists on bass without hauling an amp around, but even in the quietest environments I could hardly be heard above a regular acoustic guitar. Also, the guitar body had extremely square corners, making it pretty painful to play when sitting down with it. I ended up trading it at Coran’s Music for my guitar effects pedal that’s been living at Richard’s place.

This song took me a fair bit of practice, especially the guitar part, as I tried to play it note-for-note perfect out of the hymnal, the top 3 notes of each chord on the guitar, and obviously the bass note on the acoustic bass. I’m pretty happy with the results, though the last note is pretty goofy. I think I did that on purpose.

Listen to Morning Has Broken.