Don’t Want to Program a Cart?

For those who want to play the game on a real Atari XL/XE, but don’t want the hassle of programming the game onto an 8mbit Atarimax Maxflash cartridge themselves, KJMann’s Atari Sales and Service has stepped up to the plate and is offering the game pre-loaded with a nice gloss label, at their Store on page 4 of the Carts Section. *April 2012 Update* Sadly, it looks like Atari Sales and Service has changed hands and it doesn’t look like Space Harrier is being offered by them any more. If you ask the creator of the 8mbit Atarimax Maxflash cartridge, Steve Tucker, *really* nicely, he might pre-program a cart for you though.

They also have a nice preview video of the final, finished version of the game (rather than work in progress ones I’ve posted previously)

YouTube Preview Image

KJMann has been, shall we say, instrumental, in getting the game produced, being none other than Sal Esquivel, who arranged the music for it.

AtariAge Discussion Thread

Get Ready!

I’m very pleased to be able to finally announce the release of Space Harrier for the Atari XL/XE series of computers with 64K of memory or more.

Space Harrier XL/XE Title ScreenSpace Harrier XL/XE Stage 1 - TomosSpace Harrier XL/XE Stage 1 - Mukadense

Due to the size of the game it is only available as a cartridge image which can be run on emulators such as Altirra, or run on a real machine with an 8mbit Atarimax Maxflash cartridge and programming image

Space Harrier 8mbit Maxflash Cartridge Image (Zipped BIN)

Notes

  1. Reduce screen flicker on real TV or monitor by adjusting brightness and contrast
  2. Reduce screen flicker with emulator by choosing “Blending” or adjust monitor refresh rate to same screen rate as emulated Atari (NTSC= 60Hz, PAL=50Hz)
  3. Now includes fix for “Bank 0″ Maxflash cartridges
  4. Small optimize bug fix (30th August 2011)

AtariAge Discussion Thread

Tidying Up

Have been deciding what remaining features make it into the release version of the game and coding them up:

High score saves have been added. This takes advantage of the re-programmable nature of the Maxflash cartridge the game uses. It also helped cut down my remaining wish-list as the cart can only be erased in 64K sectors – there’s now about 3K of free space left on the 8Mbit cartridge!

The only other thing left, which I’m working on now, is an about/credits screen. I previously had credits as a kind of Easter egg on the initial splash screen, but I also need to explain how to clear the high scores from the cartridge, and there wasn’t enough room on the screen.

The dragon riding bonus stage had a bit of a problem where it was possible to sit in one place and hit almost everything. Thanks to Sal for picking up on that. Things are spread out more now, and as it’s random it will be even more down to luck what can and can’t be got to in time with the dragon.

AtariAge Discussion Thread

Too Hard Bug Hunt Weekend

I’ve been lucky enough to have my brother Nick help with some play testing recently. He is the former World record score holder for arcade Space Harrier, so his feedback has been invaluable. He has picked up on lots of things that aren’t right or don’t feel right. Luckily most of them were fairly minor, but some of them have caused me some hard work – when he thinks the game is too hard, then it really must be too hard! To be honest, I wasn’t really expecting (or wanting) to hear that. Enemies in the distance are quite hard to pick off in my conversion, and from Nick’s feedback, being able to do that is really important in doing well at the game. It is not all that obvious or noticeable, but the arcade version gives a helping hand with shooting things – it has lock-on and auto-aim. I’d shied away from trying to do this as it seemed quite complex to implement to me, and I thought that just having a large enough collision area on distant enemies would easily compensate for the lack of it. Not enough of a compensation though, it would seem. The lock-on goes by line of sight and whatever enemy is straight ahead gets locked onto for a short while, indicated by a short “chirp” noise. Firing at this point then gives an almost guaranteed kill. The line of sight stuff was what I thought would be hard, but as I have to sort the sprites to draw them in reverse line of sight order, it just naturally falls out of that. The bullet chasing down the moving enemies was more tricky than I thought, and my cheap CPU cycle implementation isn’t quite as impressive looking as the original. But, it has got the thumbs up from Nick as far as playability is concerned, so I’m not going to worry too much more about it.

The other thing that came out of Nick’s play testing, was that the game actually goes wrong part way through the very last stage if played through from the beginning! Given that each stage plays through perfectly on it’s own, this was a bit annoying to say the least, and I could hardly believe it was really happening. So I spent a good many hours, wasting nearly the whole weekend trying to figure out what was going on. It should have been quicker, but my initial ideas of likely causes were off base. However, I did have some fun learning to use some of the excellent debugging features in the newest Altirra builds. Not only does it have the usual ability to set breakpoints on reaching a certain part of the program, but you can also set breakpoints on accesses to particular memory addresses or ranges of addresses. Being able to break on just writes to some addresses really helped out a lot, and I eventually tracked the problem down.

AtariAge Discussion Thread

Atariteca Interview

Peruvian journalist Giann Velasquez runs an interesting Atari 8-bit game related blog called Atariteca and he kindly asked me to do an interview for it. The site is in Spanish, but the automatic Google translation gives the gist of things quite well. Giann writes and understands English probably better than I do, so he did the interview in English and then translated it into Spanish for the blog. The additional translation back into English again that the site does is, well… interesting. Also at my expense, there’s a dodgy picture of me standing by my brother Nick’s full motion Space Harrier arcade machine. I’m impressed that Giann has kept finding Atari things to blog about regularly though.

Atariteca Interview

Chris Hutt with Full Motion Space Harrier Arcade and Atari 130XE

Adding in the Little Extras

Space Harrier XL/XE Stage Intermission Screen

Wow, it’s been hard work and still no end in sight yet. There are lots of little things to sort out before the game’s ready. But the good news is that all the level data and graphics are complete. It’s mostly a case of tidying and cleaning up now, plus dealing with some bugs that just decided to rear their ugly heads.

Rather than allowing infinite continues, which would make the game too easy to just get to the end of, decided to have a continue system similar to the PC Engine and Saturn versions of the game. When you reach certain stages, you’ll be given an extra continue. You’ll also be able to start from those stages rather than from the beginning every time. Added a little menu system to allow selection of the stages, and also the amount of lives to start with. Took a few weeks to finish the code, as the more I thought about it, the more it turned into a general menu selection system (which wasn’t strictly necessary).

I had not bothered to show the stage names before each stage started, only the stage number. Thought it would be nice to put that in, same as the arcade. That was more work than I expected too. It’s a nice big 16×16 font (see picture above), but with the whole alphabet and numbers included, it won’t fit into the amount of 8×8 characters allowed in one character set by the Atari (128). There are a surprising amount of repeated graphics in the characters though. For example the top left 8×8 character of the 8,B,E and G in the picture above is the same. It took a while but I wrote a little program to turn a picture of the complete font into 8×8 characters avoiding duplicate characters – A kind of simple pattern matching data compression.

AtariAge Discussion Thread