MONSTER MAX - 3D Monster Maze for the C64
Music producer and C64 music fan Max Hall is converting a classic ZX81 game for your entertainment and exhilaration.
Q. Why did you choose 3D Monster Maze to convert to the C64?
Max: Had always loved the ZX81 version of the game, and was playing it one day and thought to myself, do you know what? Even with my limited skills with C64 Assembler, maybe I could convert this to the C64, as always wanted a version on that machine, and as far as I know, no one had ever done a version for the Breadbox.
Q. What is your development environment?
I use C64Studio for the assembly code, and Vchar64 for the Character graphics and maps, save the binaries out from Vchar64 then embed them into the Assembler script with C64Studio. No sprites are being used in this conversion, as like the original is basically just moving characters onto the screen in lumps.
Q. What have been the biggest challenges in the conversion?
The 1st challenge was to actually get the graphics converted from the ZX81 to the C64, the maze passages and backgrounds, and of course the characters that make up Rex (The Monster). I managed to source a font of the ZX81 charset which worked a treat on the C64, so I had all the relevant characters to start to draw all the graphics. The hard part was drawing the graphics, as had to do it character by character in the Vchar64 Software. (See attached picture) so you can imagine how long that took, I got screen grabs from the ZX81 emulator then had to find which characters in the ZX81 font matched what I was looking at from the grabs, and literally drew the monsters and maze character by character so quite a challenge.
Another challenge has been the monster chase routine, getting Rex to chase you around the maze has been a real pain, but with some help from legendary coder Jim Bagley, are about 90% happy with that routine, although in this demo version is still a little buggy. Another challenge was to flip the maze in memory when you turned round in the maze, I made the maze in a 16x16 block with numbers representing the graphics to draw for example a number one would be a wall, and a zero is a passageway, and a number 3 is the exit. One of the coders from the demoscene Carsten Berggreen helped me with a flip routine, which worked a treat, so was very grateful for that!
Also had a few issues with screen tear when drawing the maze walls, but that was down to a combination of timing issues and my crap programming.
Q. Will you be making any changes or adding content?
I initially set out to do an exact conversion so was exactly like the ZX81 version, but it has been discussed that when have finished this version, maybe to do an enhanced version with a moody SID soundtrack and footstep sounds when Rex approaches. Which would create a great atmosphere, but all that is just in the ideas stage at the moment.
Q. Are you working on any other games?
Not at the moment, as I have been very busy with music production on our "The Surgon" band project. We recently completed a vinyl LP and a 7" Single. and more recently finished another four tracks for another couple of 7" vinyl releases hopefully up for release in December/January. So doing the monster maze project has been something I just keep chipping away at on downtime. Also been busy producing my "Chip SID Show" for Radio Free Matlock, which is a show dedicated to some of the best C64 SID music releases. https://chipsidshow.co.uk
Q. Were you happy with how your Cosmic Ark conversion turned out?
Yes, very much so, as was a bit of a miracle that actually worked, as was not written in an Assembler, and was done using the machine code monitor in the Vice emulator! (Well old-school) So you can imagine how painful that was. I was working for a charity at the time, and they were on their last legs so was literally sitting doing nothing all day, so was something to do to ease the boredom. I was lucky enough to get the amazing C64 artist Steve Day involved to do some of the graphics as well, which really sets the game off, especially the title screen when the game starts. And the amazing cracking group Laxity did a bug-fix crack for me, which plays great. That can be found on the C64 scene database CSDB.DK - https://bit.ly/cosmicark64
Q. Are there any other ZX81 games you would like to convert/update to other formats?
Not really thought about that if I am honest, was more attracted to Monster Maze as thought would not be too difficult for someone with limited code skills, and thought would be great to have it running on a Commodore 64.
Q. Have you seen any of the recent ZX81 homebrew?
Yes, and quite frankly is amazing, the games by "Bob's Stuff" are leaps and bounds and really push the limits of the humble ZX81, so is quite fascinating what people are doing with that limited hardware. Am also impressed by the UDG board by Andy Rea as well, which if you have a ZXpand can get user-definable graphics on the ZX81, Sub Hunt, is a great example.
Q. Will you be making a physical release or just a digital download?
Will be available as a digital download free of charge, as is just a fun project really. Initially, the idea was to enter it into a 16k Cartridge competition but has taken me far too long to develop have kind of missed out on that. But it will be a cool fun release for people to enjoy. The amount of positive feedback already has been humbling, so makes it all worthwhile.
Try the demo of 3D Monster Maze for yourself at https://bit.ly/3dmm64.
MORE MAZES - MORE C64 FIRST-PERSON GAMES TO TRY
MOOD
After multiple previews by No Name, the latest version had an auto-map, multiple weapons, and different enemy types in its chunky, textured mazes.
WOLFENSTEIN 3D (SUPERCPU REQUIRED)
Using the 25MHz co-processor or emulation, this clever mod produces a playable adaptation of id Software’s classic Nazi shooter rendered in shades of grey.
MINOTRACE
After his 3D space combat simulator Gates of the Ancients, Dr Mortalwombat’s raycaster makes clever textured mazes for you to race through (no combat involved).
GREY
Still in development, this promising effort by Piotr Kózka has coloured Commodore signs for doors and enemies to blast for keys and ammo.
THE RED SERPENT INVASION
Demo group TRSI unleashed this excellent preview with its raycaster and physics engine, allowing the player to collect keys, shoot enemies and find health.
NEWS BYTES
AMIGA: Zooperdan converted the brilliant C64 puzzle game Luma. https://bit.ly/luma-amiga
AMSTRAD GX4000/PLUS: The 50th anniversary of Atari was marked by Cyrille of the GGP Team converting Missile Command. https://bit.ly/missile-gx4000
ATARI 8-BIT: The C64 update of Bruce Lee, entitled Return of Fury, has been converted. https://bit.ly/returnoffury-a8
C64: Anthony Messane is working on the virus-busting puzzle game Dr Maria. @sysantmin on Twitter for updates.
GAME BOY COLOR: A physical cartridge of Magic & Legend: Time Knights can be ordered now, with a playable demo at https://ghamson.itch.io/timeknights
MEGA DRIVE: SNK classic Windjammers has arrived in alpha form. https://bit.ly/windjammers-alpha
MSX2+: 9958 Crew released their non-violent platformer Ghostly Manor, inspired by Solomon’s Key. https://bit.ly/ghostly-msx
SNES: If you can’t stand the heat, stay out of the multiplayer kitchen – Supercooked is the 16-bit homage to the brilliant Overcooked. https://goldlocke.itch.io/supercooked
SPECTRUM NEXT: Converted from a mobile game, Trainyard Express is a clever puzzle game of laying down rail tracks and coloured trains. https://bit.ly/trainyard-next
VARIOUS: Heracleum’s Manic Mission brings together classic gameplay from Manic Miner and Impossible Mission, with 30 screens themed around other games (including Skool Daze). Try the beta – with Spectrum and C64 themes – at https://bit.ly/manicmission
Meanwhile, Lt. Coyote pays tribute to Wizard of Wor and Lady Tut by combining them into one PC game – Wizard of Tut. https://ltcoyote.itch.io/wizard-of-tut
CHAMPION CODER - JONAS HULTEN (HERO, VIC-20)
[Name] Jonas Hultén
[Info]
From: Sweden
Website: https://kollektivet.nu/hero/
Format: Various
Previous games: Cosmos (C64), Bruce Lee II (C64), Volley For Two (C128)
Working on: H.E.R.O. (VIC-20)
Jonas is a programmer for the Kollektivet games creation collective, working together since 2012.
Q. When did you start writing homebrew games for old machines?
Jonas: I started when they were new, haha! Christmas 1983 when my parents bought a Commodore 64 was the starting point for everything for me. I slowly upgraded to newer machines over the years and the turning point was Christmas 2012 when me and my brother decided to port his childhood favourite arcade game Cosmos to the C64. That was the first game I was involved in creating for a vintage computer. That resulted in a small library of code and tools I could extend as I continued to make games for vintage machines.
Q. What first drew you to converting H.E.R.O. to the VIC-20?
I'm a member of Svenska Commodoreklubben, which is a club for Commodore users in Sweden. I made a small demo to invite people to join the club which ran on VIC-20, C64, C128 and Plus/4. I also made a disk magazine viewer that's used to read the member magazine. Those projects taught me a bit about how the VIC-20 hardware worked and I started thinking about the possibility of making a 60 FPS smooth software sprite game. I wanted to make Scramble, but I had problems already at the drawing table with graphics memory restrictions. I gave away my Atari 2600 with games to a friend who only had a broken one because I didn't really use it. That reminded me of H.E.R.O., which was one of the flagship titles for the 2600 in my opinion. Other impressive titles were Pitfall, Pitfall II and Commando. I realized that the 2600 had just about the same pixel aspect ratio with much wider than tall pixels. A lot of VIC-20 games look a bit squashed, especially when the multicolour mode is used and I wanted to get away from that. Porting a 2600 game wouldn't look too different so it was a good starting point. The 2600 also has severely limited hardware
sprite capabilities which would keep the number of moving objects down enough to be doable in software as well.
Q. What are the biggest challenges and differences in developing for the VIC?
Not having any hardware sprites but make a game that looks like it has is the big challenge. Also, all Atari 2600 games are rendering the game screen line by line using the CPU. Almost everything is difficult on the 2600 but it's easy to change colours on the sprites on each line. I was forced to do the same thing on the VIC-20 to get the character colours right, but it's a bit more difficult on the VIC-20. All-in-all almost all CPU time is spent emulating the 2600 hardware sprites and collision detection, which is free on the 2600. The 2600 has 128 colours so colour gradients look nice and it's hard to make that look good with 16 colours,
with added restrictions on which ones can be used on the VIC.
Q. What is your development setup and any software you use?
I wrote the game code using Sublime Text and my own assembler jAsm. Most of the everyday testing is done in the VICE emulator. All graphics are done in GIMP and converted to a VIC-friendly format using tools I wrote in C++ using KDevelop. The music was composed on a Novation Impulse 25 MIDI keyboard connected to a Commodore 64 running M64 through a Passport MIDI cartridge. I just used a square wave sound to get a similar feel as on the VIC. This was edited into Goat Tracker running on a PC and when the song was done I typed it into the assembler code as macro statements. I don't have a tracker for my music player on the VIC-20. My main VIC-20 has a built-in 32 KiB RAM expansion and JiffyDOS.
Q. Do you test on real hardware?
Yes, I do. I have a Raspberry Pi connected to the user port that enables me to send programs through ethernet to the Commodore 8-bit computers. It's a custom solution I built. I had a PAL VIC-20 when I started making H.E.R.O. and I bought an NTSC motherboard from Germany to be able to test that too. Unfortunately, it has a power defect and it meant that my
Penultimate+ cartridge didn't work in it. I changed the capacitors in the machine and bought a new voltage regulator from a pinball machine parts supplier, but nothing helped. I ended up doing all actual NTSC testing in VICE, which was scary. It turned out that the emulator had an NTSC palette that didn't match the real machine too well and I optimized the colour use for that palette. The first release had quite broken colours on NTSC due to that. As soon as I realized the mistake I released a new version with corrected colours.
Q. Have you made any changes or added anything to the original game?
The VIC-20 intro is completely new. The 2600 original has no intro. The game on the other hand is very similar and has all the features of the original, as far as I know. All 256 rooms are the same, but there are small differences because I had to align walls more coarsely than the 2600 had to. The ending is a bit different, but not much better than the original game I'm afraid. The plan was to have a grand ending but I ran out of memory and didn't want to require a 35 KiB RAM expansion so I let it be. A bit sad because completing the game is super hard and the end doesn't justify that effort I think. In the process of converting the game, I found a bug in the original where the laser can be ineffective against removable walls in some situations. I learned that it's possible to destroy walls with the laser while doing the conversion. I didn't know that when I played the C64 version as a kid.
Q. What is your favourite version or clone of H.E.R.O.?
I have played the C64 version a lot and I enjoyed it, but I think my favourite has to be the Atari 2600 because it's a technical masterpiece. Everything in the game is tailored to the 2600's precise hardware restrictions. It's very easy to make the same H.E.R.O. on the C64 and maybe it should have been a game that expanded with the C64 capabilities to be considered much better, like using the full screen for the cavern, scrolling and more objects per vertical section.
Q. Are you working on anything else at the moment?
Yes, I am. I'm working on a small project that isn't a game right now, but I'll get back to game development again.
DATABURST - REVIEWS
Tynesoft Commodore 16 Classics
Format: Game Boy Color
Credits: WLS (László Rajcsányi)
Price: $23 (cart only) / $34 (box & booklet)
[Score]
82%
Amiga Blitz Basic Jam
Format: Amiga
Credits: Organised by Zooperdan
Price: Free downloads
OVERALL: A great competition with plenty of genres represented.
CPC Jewels
Format: Amstrad CPC
Credits: ESP Soft
Price: $1.00 digital download / physical cassette TBC
[Score]
79%
PROCESSING - TOURNAMENT ARKANOID
Martyn Carroll’s article on Arkanoid’s history (RG239) prompted him to recreate the tricky Tournament Arkanoid.
Martyn explains, “Tournament Arkanoid was essentially a 1987 update: the 32 screen layouts were all new, with an emphasis on making it more challenging (gold and especially silver bricks were more plentiful). The new Spectrum version updates the original Arkanoid conversion by Ocean Software (code by Mike Lamb, graphics by Ronnie Fowles and music by Mark Jones). It features a new title screen by Jarrod Bentley (who helped hack the code), the mothership is now red, and screen layouts were created using Mark Alexander's 'Arkanoid Editor.’ Due to the Spectrum's narrower playing area, the screens had to be redesigned. The overall difficulty level should be consistent with the arcade version - it is *meant* to be tough!”
This inspired the writer of this column to try out the editors available for C64 and Amstrad Arkanoid and modify them. The Spectrum version is available now at: https://bit.ly/tourark - with the possibility of adding mouse and Kempston support. The other 8-bit versions will be uploaded there when finished.
NOTE: At the time of posting, the C64 and Amstrad level designs have been completed. The game can be played in full. The plan is to release them once the loading screen has been converted and everything is in a single file that can be loaded directly by the player.
Comments