Tuesday 29 December 2009

Bah, Humbug.

21st-24th December 2009
Christmas is coming and it is time to do something of a novelty. I did want to do a game in time for Christmas 2009, but unfortunately because of less spare time, I had my own limitations. Well, I suppose I could have done a 1 level preview of Ultimate Stunt Boat Challenge but I would not have had that one done in time. I was hoping to have a new game produced this Christmas, so I decided to do a quick small game called "Bah, Humbug". Because of my own limitations, it took a a couple or 3 days to produce. I mainly worked on the game code first, before I did the in game graphics, music and SFX.

Bah, Humbug!
is a game, in which you are Mr. Frosty, a snowman who has be sent out to the freezing cold places to collect presents for Santa (As he has had a bit too much to drink the night before). Mr. Frosty discovers that the only way he can gather presents is by bouncing on a spring board. Mainly because some idiot has laid down candles on to the ground. So it was up to Mr. Frosty to jump and grab presents, avoid falling into the candles. But the idea was just too basic. So I decided to make additional characters to the game to make things more interesting and fun. Each character was given a different feature to enhance game play. Here's what I did:

Present - Scores 300 points (Collect enough to complete level)
Humbug - Scores 200 points
Pudding - The brandy makes Mr.Frosty drunk, so controls are reversed for a short period :o)
Grinch - Swipes 200 points off your score
Smelly Stocking - Swipes a chunk off the bonus timer (The higher the bonus timer, the more points awarded to the player)
Candle - Kills Mr.Frosty

At the end of the last level, I could not resist to add a little joke reward, which the gamers would need to play hard to find out what this little reward could be. It was quite funny.

As soon as the game was finished and the front end was done, I decided to do some tape mastering. So I dug out Martin Piper's IRQ tape loader source from Codebase, made some interesting alterations (No more Dance-A-Load now. I got fed up with it for the time being) and I made a nice black & blue flashing border with loading picture and music. The loader also uses a flashing tape sprite at bottom left corner. This is to represent a positive load, just like what Cyberload did back in the 1980's. Final result looked pretty nice, but why the heck did I add a noisy load on boot up and while loading the music data? Bah, Humbug!

Monday 7 December 2009

Care to be a stunt man?

7th December 2009
Programming C64 games has been a major hobby of mine. Even if it is programming C64 games using a PC. For the past 2 months or so, I have been very busy with the co-op production with Wayne/Art Ravers' game called "Up in the Air". So far 4 levels have been done, but I have decided to put this on hold until after Christmas is finally over. However, I decided that rather than do nothing, I thought I should dig out one of my old unfinished games and create something new out of it. This is where Ultimate Stunt Boat Challenge came.

I was actually going to call this Professional Stunt Boat Simulator, but Ultimate and Challenge sounds much better, compared to Professional Simulator. Don't you agree? Plus professional and simulator kept getting used time and time again. We know who the culprits are, but the games were pretty good. I'd have to admit.

Anyway, my general idea for this game is somewhat different to what some people would expect. USBC uses the code and graphics from my scrapped Real Speed We Need project, and over the week I have been busy reorganizing the type of sprites, and redesign the level map designs. Also yesterday I have been organizing the enemy sprite types and also sprite movements. I was impressed with the work done so far yesterday. All I will need to do is add sprite/sprite collision, sprite/background collision, add the ramps for the boat, so that it can go over the background in some levels. I was very determined to get a special 4 level version of this game done in time for Christmas Day, but I best not rush it for the sake of Christmas. Plus my full time job takes over most of my time. I do miss the good old pub sessions since I was made redundant at my previous workplace in the end of July 2009.

Here's a video of the game in action:




Wednesday 21 October 2009

Treasure Hunt


21st October 2009

I thought I have a go at transferring some of my Commodore 64 disks over to PC. Many of my old disks are unlabled, so I don't really know what was on each disk. Many of the old disks are either formatted or corrupt (Except for the ones I have bought of PD libraries in the late 1990's). Now while I was trying one or two disks out on WinVice. I first tried a disk which was labelled in red writing"Assorted Charsets". The disk contained the charsets that were saved from the " 99 Charsets" program by Danish Gold. While browsing through the directory. I came across some particularly weird filenames (File names were the track and sectors of the disk which were recovered with "Dir Master V7". With curiosity, I decided to load the file from disk on to WinVice V2.1 and then typed in run. I run the program, and it defrozen (as in those days I used the action replay MK VI cart for my stuff). I was presented with the C64 BASIC screen. What a waste of time that was.

BUT Wait. There's more. I browsed through the memory with the M/C cartridge and entered the fastload reset mode. Then I entered OLD: and typed in RUN. Well, seems I have unearthed an old unreleased SEUCK game of mine which I have never released. I typed in RUN, but the BASIC did not work for me. There was also some music at $1000-$1xxx, which I did using Music Mixer that I also forgotten about. Although the game itself is crap. It is a mystery unearthed, but the game is not good.

Tuesday 18 August 2009

Up in the Air - Relocate, relocate. Ooer!

17th August 2009

Today, Andrew passed me another .D64 with the Up in the Air prohject graphics. This time yet more great sprites, and a new version of level 6, which I could implement into the game's code later on this week. Anyway, I loaded up the sprites. So many of them, in fact too many of those. It did not put me off though. I decided to relocate the graphics data and use BANK 2 instead of BANK 1, as that way it would make things much easier for me, as the sprites overlapped if loaded at $2000. So now the game source has changed its memory. Here's what we have so far:

$0800-$1000 - Spare memory (That could possibly be used for extra variables, or maybe additional code for the title screen.
$1000-$2400 - The music (Although if the music is larger, as some music editors players like DMC, I could expand it more, otherwise, I could add the exomizer decrunch code in this place)

$2400-$2800 - Decrunched screen data
$2800-$2c00 - Decrunched screen colour data

$2C00 - $4000 - Spare memory, maybe for crunched screen data and exomizer decruncher

$4000 - $7300 - Game sprites data (Bank #$02). Wayne filled a lot of memory with various sprites. Perhaps he got carried away here. Heheheh. Still not to worry, that's where I have placed them.

$7400-$7800 - That will be for the actual screen used!

$7800-$8000 - Game charset

$8000-$C000 - Game code. I am not too sure how big the game code will be, but I have switched the Kernal off by setting #$35 at $01. Which hopefully means I can add further code here. Good eh?

$C800-$CC00 - Title screen logo colour RAM data
$CC00-$D000 - Title screen logo video RAM data
$E000- $FF70 - Title screen bitmap data.

Sadly I did not get round to doing the randomizing of data, scoring, etc but I can continue with that later on this week. So stay tuned. :o) Okay. Now for a can of Foster's lager and a spot of C64 gaming! :o) Oooh, nice!




Tuesday 4 August 2009

The darkness arises. Baphomet has risen.


Tuesday 4th July 2009
Don't panic. Darkness has not arisen. Friday last week, I had received another C64 game by Anthony Burns (Created using the Sideways SEUCK) called "Baphomet". The game was deeply inspired by some art by H.R.Giger and also the book "At the Mountains of Madness", by novelist H.P.Lovercraft. Anthony made a few H.P.Lovercraft games in the past, two of which were The Call of Cthulhu and also The Dunwich Horror. I was very happy to add music on to this game as well. But I wont be talking about my activities on this game, just some general information about how this game was made.

Anthony has been working really hard on this game. I am not too sure how long it has taken him to make a game like this, but I was well impressed with the in game graphics. The game starts with the usual SEUCK style title screen (or front end or intro as we all like to call it) with some instructions on what to do to play the game (I done a note file on the disk as well) and the game starts of where you should stand by and not do anything. If you move your player, you will end up crashing into the background which is deadly and die. I did something silly once by starting the game with a joystick in port 1, where the player just could not move - how silly was that eh?.


The game is split into 2 parts. The first part is where you are on foot, fighting against enemy guards and also having to smash some of the cannons (except for the flame throwers). The player could collect the spinning star emblems to boost up their score. The major drawback to this mission is that when the player touches any part of the background, they will die. The background is very deadly, which can be tough for the gamer, but it is a good idea anyhow. When the player goes on to the top part of the screen. It wont be able to move any further than about an eighth of the screen at the top (If I have calculated this correctly that is) . The player has to face two different boss enemies. The first of which are some heads shooting bolts. Later on, an evil skull-type of demon. Once past that stage it is then time to switch the joystick port over to port 1 (as prompted by the message).

Joystick port 1 controls the flying character, who has to fight against various enemies. Instead of this part being a push scroll, it is a continuous scrolling game so there is no need to try and push yourself across the screen. There are enemies that will self-destruct if you can't kill them in time. This is a very clever and probably new idea, which Anthony came up with in SEUCK. At the end of this level, you have to face a big demon, Baphomet and shoot hell out of it :o)

The graphics in this game is well drawn, very nicely detailed. Although it uses the black, white and grey mood. But that does not really matter. The only drawback to this scheme was that the walking player had a *red* score, while the flyer has a *white* score instead. I guess the red score did spoil the theme a bit, but I noticed that with SEUCK or sideways SEUCK, the player's score sprites have always been red if the changable sprite multicolour of the player's object was black. Back to the graphics ... The theme was well detailed and the mood of the game was dark. The theme was based in darkness, and the graphics really suited the theme. What a masterpiece Anthony :o)

This game would have been nicer in SEUCK Redux source, but I did not use it this time, due to the bugs left in the source, which unfortunately crashed the game (I did test the redux version with infinite lives, and not all was working. Player 1 score was black instead of red, the sprite/background collision animation was bugged and also the game crashed somewhere in part 2), but I will release this game on to the friends and contributors page of my web site, as soon as the original, but clean and compressed version is uploaded on to The SEUCK Vault.

Below you can see a video footage preview of Baphomet for the C64. This only features the start of the game. Well, I don't want to give too much away do I?

Monday 3 August 2009

Up in the Air - Come Fly With Me

Sunday 2nd August 2009

Well it has been yet another busy afternoon, and still a lot of work is to be done before I can get a fully working level. Last week I was working on preparing the labels for the enemy parameters. Well, today I have done some programming, using parameters and it took a long time to prepare and program, but it was worth the Sunday afternoon for 3 or 4 hours or so.

First of all, I created the data tables (!byte tables) to represent the behaviour of enemy's movement. The movement tables will later on be put inside a timed loop, so that we can vary the enemy's directional movements. Each table will consist with only '0' and '1'. '0' represents the selected direction the enemy moves is switched off, and the '1' represents the selected direction the enemy moves is switched on. For example if I wanted one enemy to move to the left, directions UP, DOWN and RIGHT will be switched off and LEFT will be switched on. Or if I wanted an enemy sprite to move upwards and left, UP and LEFT will be switched on and DOWN and RIGHT will be switched off.



However, I wanted to get this routine working in a correct possible manner, and it took lines of code to program. I had to make an enemy direction store value, so that the directional table that is switched on will make the active enemy sprite move a specified direction. I had to create a LOT of routines to get this to work properly. Mainly comparing the value of the stored direction. If the stored direction label equals 1, the enemy can move that direction. Otherwise the enemy cannot move the specified direction. To make sure the enemy could or could not move, I tested each enemy by setting the first value of the 60 bytes for each table (according to the direction I wanted the enemies to move) and then I assembled and test the movement. Fantastic, it worked. Okay, so it is not ready yet, but it was a good start for enemy movements. My next task will be to vary the movements of the enemies, and then get the floating balloons animated.

Sunday 19 July 2009

Knight 'n Grail

Sunday 19th July 2009

Yesterday after I got back from my 2 week holiday, I found a package in the porch and I wondered to myself, did I order anything? Yes. I sure did. I opened the package to find a new C64 game disk called Knight 'n Grail. Yesterday I had no time to play it because of the excessive new C64 releases on the internet and also because of excessive email messages.

Anyway, today I got to play it on my Commodore 64 (The real machine, not the emulators). After a short delay loading, I used the basic RUN and the front end decrunched with some funky music. Then I started playing the game. The graphics was nice, and the music was okay as well. The game itself was awesome. I just could not believe how hooked I was to this game. Could this game win the best C64 game of 2009? I hope so, as this game is now near to my favourite C64 games of all time. :)

Sunday 21 June 2009

MERCS gets SEUCK(ed) in 1917

Sunday 21st June 2009

Wow what an amazing treat I had today. I was checking my email and then Anthony Burns mentioned that he produced another sideways scrolling shoot 'em up with the Sideways SEUCK. I just could not resist to try his game out to see what it was like. Anthony told me that the game was inspired on the Capcom classic on the SEGA Master System (as well as Commodore 64) called MERCS, but based in 1917, during the First World War.

So I checked through Anthony's game and played it all the way in cheat mode from the SEUCK editor. I was well impressed with the game, especially the end of level boss stages, which must have took some time for Anthony to master. I specially liked it where the huge battleship scrolls across the screen, then stops at one position and then scrolls across again. I even liked the ending of the game. Overall this game was amazing and probably was one of the best games I have ever seen done with Sideways SEUCK.

After getting impressed with the game production, I decided to add some music to the game and also import it into Martin Piper's SEUCK REDUX source. For the music, I could not really think of any new combat style tunes, so I dug out my old tune, I died at War and imported the tune into the SEUCK redux source. Also I altered the colour bars for the front end as well, from the green+yellow crap scheme into a nice blue raster bar scheme. Looks much nicer.

Once the SEUCK REDUX version was done, I decided to also do a version of the original sideways SEUCK source, but with the same front end music. The reason for why I done this is because there are NTSC users who would probably enjoy this game, and sadly REDUX doesn't cater for the NTSC machines. The normal sideways SEUCK scrolling engine uses PAL/NTSC. As I noticed with the comments section on CSDB for Trash Course.

Finally I stored the SEUCK source files and also a RAW version of the sideways SEUCK game on to my disk. Bolted the TND intro into both music versions of The Push and then uploaded it all on to the TND web site.

Saturday 20 June 2009

Loading ... Please wait!


Saturday 20th June 2009

I seem to be trapped in a world of loaders, where I have been mucking around with the Martyload Tape loader source for Trash Course. I just could not make up my own mind how the loader should operate and which tune of mine I should have used. So at the end I decided to stick to the default loader (Black screen with white text) and then crack on with adding the tape master to the Trash Course disk.


Instead of wasting time with stuff like this, I should really be doing some serious stuff, Flippin' heck!

Sunday 24 May 2009

Menu Please

Sunday 24th May 2009

It was another programming session for me today. But I can take a break from it tomorrow :) This time it was for me to program a disk menu for the disk version of The Last Amazon trilogy. The first thing I had to do was import all of the data which I was supplied, into the cross-assembly project. Before I could do that, I had to invert the 2x2 font, as the letters are going to be using raster colour bars.

As soon as all of the data was converted to the ACME cross assembler project folder. I started working on the code. The first thing I did was a simple test, which was to display 2 splits. One of which was for the bitmap and the other which was for the 2x2 charset. I put those inside an IRQ interrupt and then assembled those. The split worked.

Now my next job was to put all the raster bars over the 2x2 text. Which I managed to do. So now my next job was to get those raster bars straight by using timing tables. This took some time to do because when I tried to time the rasters, I ended up with the flickering moving all over the place. Once all the rasters were timed, I could add a scroll text routine in to the code and get it scrolling across smoothly.

Then I added a subroutine to read the keyboard, then routines for turning off the IRQ loader, etc and loading in the game, using a black screen and thin blue stripes - to show the disk loading. I was happy with the final result.

Update: I got an email about this menu and Psytronik Software was impressed with the work I done with this menu. I bet they were surprised at how fast such a menu project was. Just a few hours or so :)

Saturday 23 May 2009

Bang, Bang, they shot me down.

Tuesday 19th May 2009 - Thursday 19th May 2009

I have been working on the Game Over sequence and also updating The Last Amazon 2, because I recieved the final version of the original SEUCK game with additional enhancements. I played through the whole game in cheat mode. I like it. Amazing new weapons, and even shields.

Now it was time for me to work on the game over routine. I was given a mockup and idea of what the game over sequence should be. So I worked on the gun shot idea which Kenz + Alf came up with. First I drew sprites, then I made some new music..

I programmed the Game Over routine by using 3 IRQ routines (Two for different sized chars and three for colours inside text) and then I created delay routines that will delay game and then delay over. Then the bullet holes come on screen one by one using a faster delay. Then we got a good result.

Friday 22nd May 2009

Back from the pub this evening - 3 pints. When I got online to check my email I was asked if I could put final scores on to the game over sequence for Last Amazon 2. So I converted SEUCK score data into text data and added the scores to the Game Over screen.

Last Amazon - Tape Mastering+Linking

Saturday 23rd May 2009

Weather is ever so nice today, but I had nothing to do, nowhere to go to meet people. So I decided to do some more of The Last Amazon trilogy project. This time something completely different. I took a look at the latest IRQ tape loader source code by Martin Piper and decided to alter it to make the loader slightly shorter and also base the loader on the same loader I used for Joe Gunn tape version.

I dug out the ACME cross assembler and first of all, I altered the loader's flashing border methods. Rather than have the classic cyber load colours, I wanted something much different. So I changed the Cyber load colours to something like this:

COLOURBASE: LDA #$06
STA $D020
LDA #$00
STA $D020

then I changed the INC $D020 where the check sum counts, to INC COLOURBASE+1 so that after each check sum, the loader will change the colour of the thin stripes per load.

Once I done this, I decided to make some additional features to the routine. Starting with altering the speed of the tape loader to medium/fast speed, because duplication can be a problem if the speed of the loader is too fast. Secondly I updated the scroll text routine, and removed the on screen messages "NOW LOADING LEGION OF THE DAMNED" to shorten the loader in size.

Also to shorten the size, I deleted the routines that saves and loads the loader's flashing sprite, and the counter routine. Both of those were not required for this TND/Psytronik loader. I linked the program files of the music, picture data and then game data and assembled the source to get a tape master.

Now I test the assembled tape master file and assembled it to a .prg file and run it in WinVice. I created a test .tap (or tape image as you would prefer to call it) and started to extract all the data on to the .tap image. I tested the loader, and it worked nicely. So I did the same mastering for different games. Then created a disk menu for the master.

The other job which I did was linked all the loader pics (With press space message) to each Last Amazon game. So I created my very own Picture Linker program, which will link pictures made with the Vidcom to TNDPic converter (Only for my personal use :o)). Then I inserted all the TNDPic files into the directory of my Picture Linker source. Then I added all the C64 files (Music, the games, etc) to the source. I assembled the source and linked the picture to each file successfully. Those featuring the linked pictures (With the press space message) will only be for the disk version.

This Last Amazon Trilogy project is nearly finished, all I need to do is program a special disk menu for the disk version of the game and then that's it :)

Saturday 16 May 2009

Trash Course - Finished at last (I think)

Saturday 17th May 2009

Man, what a mammoth of a programming session I had today. First of all I decided to update the second page of the front end for Trash Course. I done this by changing the top 10 ranks into the top 5 ranks. Then I added the end screen message and linked the end screen text to the end screen message display routine. Then linked the Game Over routine to the end message routine (Because even if the game is complete, the player should get a high score if achieved).

Now my next task was to program in the high score routine. So straight after the Game Over screen, I decided to add jump routine that will jump straight to the high score detection routine. Nice!

Now it was time for me to program in the actual high score check routine. I programmed a check routine for each of the 5 positions for the player's high score. If the player reached a high score, according to the rank position. The player's score will be placed there and so will the player's name. Just to make sure this routine was working. I did a test name (As there was no name entry routine added yet). I played the game to try and get a high score and it worked. The test name "PLAYER 1" score hit the high score position along with the high score. Now it was time for me to add a name entry routine.

The name entry routine gave me a bit of a headache, because for some reason after programming all joystick control, etc. I seem to have had no action happening whatsoever. It appeared that where I was trying to reset the default char/screen position for the first char, I poked the low byte twice. So instead of pasting the new char to $7E90 +, it pasted it to $8F8F. And that was completely wrong. After correcting the joystick controlled name entry routine, all worked quite nicely. So now I can update the routines so that it will work with player 2 if he/she scores a high score. After a bit of fiddling around with the code, I got it all to work. Fantastic!

My final job was to update the graphics, as the options screen looked too plain. So using SpritePad V1.5, I drew new sprites for the game options and also I drew a 4 sprite logo for Inferior Software and then I added the logo in to the bottom border, and positioned all the sprites. This looked miles much better than my previous version of the front end.

Now the game production's programming has finally finished (I think). It is time for me to send this final production to Thorsten and Stefan for testing.


Tuesday 12 May 2009

Playing with SEUCK Redux



Sunday 10th May 2009

Martin Piper had updated his SEUCK Redux source code, and it worked pretty nicely with Legion of the Damned. No flickers or SEUCK slowdown syndrome, and sprite/sprite collisions were pixel perfect. So this morning I have been busy updating the game a bit. First by working on the in game music for the game. I used the original LOTD title music work tune in DMC V5.0+ and then I worked on the second song of the same LOTD music and worked on with the in game music. The in game music starts off sounding sort of a bit like the introduction of a Metallica sound track, but it's not. Then the Matt Gray style drums and beats come one. Making the tune pretty atmospheric. After I done the tune, I packed it with the DMC V5.0 packer.

Now music was done, I worked on the LOTD front end. I felt that it needed a good rework, so I redesigned the front end character set from scratch. Some of the characters form swords and others formed bones. So I built the logo using swords and bones, while the rest of the stuff was done as plain text. Then I saved the final game work file and imported it into the SEUCK redux source. The front end came with a nice result. I was happy with what I done. With all music and working collision/improvements, which Martin spent a long time trying to solve. I was really pleased with the final result.



Now that was done, before I uploaded the game on to my TND web site. I decided to program a brand new TND intro. So I prepared the the source files (Char set, TND Logo bitmap data, Music, etc) and put it all together with source code. My intro looked ever so nice and quite professional (although plain) and I bolted it to the LOTD game and then uploaded on to my web site.

Trashing through more code

Saturday 9th May 2009

I decided to do some more programming with the front end for Trash Course. Things needed to be sorted out. First of all the front end required an options selection. So I decided to add an extra IRQ interrupt so that I could open the bottom border and put the game options sprites into that border. Seems to have been no problem.

Secondly I programmed in the functions for the game options sprites. Not bad. Seems to work fine, except for when I tried to play the game with sound effects the WinVice C64 emulator had crashed. I realized what went wrong. I had forgotten to poke the correct place in memory. LOL. So I fixed the problem and got the sound effects working. The player modes worked nicely.

My next step was to program a Get Ready and Game Over screen for the game. I did not do anything exciting for the Get Ready and Game Over screen, because it wasn't really worth the effort. All I did was create a new IRQ and also got the routines to play the Get Ready and Game Over jingle and linked those to the front end and the game. Now that was working, I had another idea which was to get the Game Over screen to display the final score for the players. To do that I had to convert the SEUCK score plot data into raw screen data. That was easily done by adding the accumulator by $30 and pasting the data to the screen. It worked nicely.

I was working on the high score entry/table routine, but unfortunately I did not do all that good with this, due to the fact that my code was way too big as I was copying the same routine time and time again for each rank position on the high score table. I gave up at the end as I could not figure out a way to do a shorter version of high score ranks. Well, sort of. I sent a message to Martin Piper to ask if he can help me work out how I can do a high score detection using as less code as possible (Optimization).

Wednesday 6 May 2009

More Trash

Wednesday 6th May 2009

I felt like doing a bit more Trash Course enhancements, so I decided to add a couple more routines that would show Get Ready and Game Over. I also fixed the title screen to execute the sideways SEUCK game after fire is pressed. I also linked the Game Over part to the game after all lives are lost straight away.

Maybe some other time I shall add the game options sprites. My plan is to be crafty and turn off the sideborders and place the options sprites at the bottom left and bottom right hand corner, due to the page flipping from credits text to high score table. Once options done, my final job will be to do the high score table. - Then I can go back to Up in the Air and my Stunt Boat Challenge project.

Sunday 3 May 2009

Trashing time.

Sunday 3rd May 2009

I have been a bit busy today preparing some stuff for Trash Course, now that Thorsten (Sledgie) has showed me the final BETA of the game. It was time for me to do some sideways SEUCK enhancements. Well, not quite. I booted up DMC V5.0+ to make the in-game and title screen music a bit longer first, and sound better. Seems to have worked fine. Now that I was happy with the music, I decided to use the DMC V5.0 packer and relocate the music to $9000. How lucky I was that although 4 or 5 tunes were in the same music file that the compressed music file did not go over $2000. Brilliant.

The next thing I done was loaded in Thorsten's snap shot of the SEUCK game, and then I saved the SEUCK game as a finished game from the SEUCK menu. Then I loaded the finished game from BASIC and did the usual SEUCK cleaning and hacking technique (So that the menu was completely wiped away and that there was more room for spare memory. Especially when I get round to working on the new front end for the game.)

As soon as memory was filled with zeroes, I took a look at the Gold Quest 4 waterfall animation hack that I did, and used the same technique to get the game's waterfall animated. Then I saved bits of the 2 SEUCK data (Memory $0900-$6600 and also memory $b6c0 - $ffff as those were compulsory for the game, especially that at $6580 I added the background animation routine).

Now that was done, I needed to sort out a new char set and also D-Flame/Blazon/Crypt's logo. So first of all, I took my font from my old Square Pit 64 game, which I wrote in 2007 for the Forever party. Then I used GangED to convert D-Flame's picture into 3 files (Bitmap, colour RAM and Video RAM). Then I painted sprites for the game options section for my new front end.

After the graphics were sorted out. I created a folder on the PC and converted the C64 files (SEUCK, music, graphics data, etc) into the new folder. After that was done, I copied the cross-assembly and compression .exe files into the project file and got started with programming.

The first thing I had done was a simple test file. Basically, test SEUCK to see if it will decompress and run with a hacked routine that adds the in music to the game. First, this did not work because the first half of the SEUCK game data file was at $0800 instead of $0900. Doh, very silly of me! After correcting this, and crunching again the game started fine with music in the background and also animated background. Brilliant. I am glad that worked.

Now it was time for me to program the main front end. First of all I did the text data (Presentation lines, scroll text and high scores) and then worked on with the main code for the new front end. I imported all C64 files into the source files, then I programmed routines to display the colours of the logo. I also programmed 3 different splits. The first split was for the bitmap logo, which is about 6 or 7 chars high. Then another split for the still text and the last split for the scroll text. Once that was done, I worked on routines that will do the usual Richard Bayliss colour washing technique and also I programmed a routine that will change page after a certain amount of time. One page for the main credits and the other page for the high score table. Colour washing routines change per page as well. I was very happy with this result although still unfinished, because I have a Get Ready, Game Over, High Score entry and also end screen to do.

Tomorrow is a bank holiday, but I wont be doing any programming tomorrow. I'm thinking about digging out some old C64 tapes and playing those. Like, Armalyte, Blazing Thunder, etc.

Saturday 11 April 2009

Enter the choppers


Saturday 11th April 2009

Yesterday I mentioned about the Ultimate Stunt Boat Challenge game. Well, today I have been doing a little bit more on the project. Before I could do any more to the project I converted the test run file on to a C64 tape using the WAV/PRG program and loaded the test file in to my Commodore 64. Damn, there was a major problem. The player's boat (when expanded MSB for the sprites) screwed up the scrolling engine. So now I have to work out what was causing the problem. Fortunately I figured out what was causing such a disturbance to the scrolling engine. It appeared that I used an insufficient area for the artificial sprite positions. So I altered the OBJPOS label to a different memory location. Crunched it all with the Exomizer and tested it on my real C64. RESULT!

Now that I was happy with everything, It was time for me to add some data tables and program some additional routines. I created some data tables for the sprites, and programmed a sprite animation routine. After that I worked on a small, but very easy routine, where the player can now shoot bullets. Then I started working on getting the enemies to move. At the moment they are the same enemies moving across the screen in the same place. However I can work more on making better movements and behaviour of the enemies next time I go on to this project. Which probably might be tomorrow morning.

So far, so good. Player can move and shoot, scroller is working fine (It uses DMA delay routines) and also the enemies can move - but more work is needed on this part of the project.

Friday 10 April 2009

A new game in the works - Ultimate Stunt Boat Challenge



Friday 10th April 2009

What a boring day today was so far. So I decided to make a new C64 game. Well, I got started on it really. Earlier on in the week I asked Frank if he could send me the Real Speed We Need graphics data for this game project. As I thought there may have been some boats and other action movie style enemies and obstacles. I sure was right.

Most of this morning I worked on the map graphics using Charpad V1.0 to build the level map and then later on I dug out the old Real Speed We Need source code and modified it a little, and got the new map working nicely with the scroller. One major problem for me was that the map scrolling was just too fast. So I slowed it down a touch and it looked fine.

My next task was to sort out some sprites. So I copied some of the old RSWN sprites which Frank had done before, and I paste them. For this game I wanted enemy air craft, boats and also some ramps, that the player could jump over to try and get over the bridges on later levels. I also grabbed some other sprites that I thought would suit the game.

Although in its early stages yet, and more work to be done. I was dead chuffed with the work done so far. I added some routines to get the player's sprite on to the screen, and also get the player moving as well.

Hopefully tomorrow or Sunday, I should be ready to add some additional routines to get the player shooting and also the enemies starting to take action.

Wednesday 8 April 2009

Another Last Amazon front end

Tuesday 7th April 2009 + Wednesday 8th April 2009

Bah, TV sucks. Well that doesn't surprise me. I had nothing else too exciting to do, so I decided to work on a new front end for Last Amazon 2. This time it was a bit of a challenge, but I knew that it should be possible. I prepared a work disk .D64 and transferred all the C64 files into the cross-assembly directory for use with ACME, the same way as I did with The Last Amazon.

Kenz had shown me the mock up screen shot of what he would like me to do for the front end. Oh no ... raster splits :( Seriously, I hate doing raster bars, due to having to get those blasted things timed correctly inside $D012 splits. Ah well, it has to be done, and I shall do that.

I loaded up the Relaunch64 tool and then I created a main source file which will link all the c64 program files (including the game) and got started on the programming side of things. I started off with the IRQ interrupt player routine to see if it will run. The good news was that the player routine did play the music after assembled and crunched with PuCrunch. Now it was time for the serious part of the programming. Getting the bitmap logo and all chars displaying. To do this, I changed the background colour ($D021) so that all small text was white and all large text was yellow. So I built 10 raster splits in total. Everything displayed successfully.

Now it was time to add those raster bars into the text. Well, this I must stress was one of the worse parts of the front end programming. So I built a colour table and a raster timing table for each raster split. It took a lot of time to time out the raster splits so that the text chars looked much more tidier. As soon as I was happy with the result, I worked on the scroll text routine (Which uses raster splits as well) and then added a routine for which the player can press fire in either joystick port to play a 1 or 2 player game. Those worked okay, but sadly timing had altered again. So I moved the raster timing table and also moved the scroll text to a higher location and got everything working. Looks perfect now. Hope Alf and Kenz likes this one.

Tuesday 31 March 2009

A Last Amazon master

Monday + Tuesday 31st March 2009

After tea this evening, I decided to work on a loading tune for the first Last Amazon game. So I dug out the DMC V5.0+ music editor and loaded in one of my old work tunes. Kenz fancied a Matt Gray(esque) style tune for the tape loading music. So I loaded in one of my tunes that I done for Last Amazon 2, and then I made a new atmospheric Matt Gray(esque) tune for the loader. Once I was very happy with it I worked on the main tape mastering for the game.

But there was something I just could not resist for the tape loader. Because Martin Piper had done a turbo tape loader routine with a flashing/pulsating sprite. I thought to myself, hmm. I could do a tribute to the classic Cyberload tape loader, but without the CYBERLOAD NOW LOADING GAMENAME thing and draw my own flashing square sprite (But make it look different to the original Cyberload sprite). I positioned the sprite at the bottom and in the middle of the screen and then linked the game music, loading picture and game files into the source code of my version of Martin's loader and then compressed the assembled source and data using the Exomizer, and tested the tape master. Magnificent. I was very pleased with the loader result. I will send this off to Kenz to check out to see what he thinks of it.

Monday 30 March 2009

DIY Slang :)

Sunday 29th March 2009

Ah. There is nothing quite like a Sunday playing around with SLANG. Well, XLANG really from http://www.ffd2.com/fridge/slang/. What is it precisely? Well, it is a cross-platform programming language that combines sort of BASIC commands with assembly language. Pretty okay stuff if you want to build simple programs to help you do things.

Well, that is what happened this morning. I was writing some commands in the Relaunch 64 text editor, to program some XLANG routines as well as assembly code routines to create a little program that could help me convert pictures that were saved in Vidcom Paint format into one of my own picture formats, so that I could make a much easier tape loader using the Auto boot IRQ Turbo Tape loader source from www.codebase64.com. But I wanted to make a few simple routines that will display the tape loading picture, along with music in the background. After I compiled and compressed the utility. The size it fit was 1K, after Exomizer. A 4 block program? What a result.

I tested the little utility that I made on the C64 and the utility worked fine. So I took one of my old C64 games, repacked it and then I modified the public domain IRQ turbo tape loader source so that it could do the following:

Optional flashing/loading sprite at $0200-$0280
Loading music at $1000-$1fff
Picture data (All bitmap, colour RAM and video RAM in one single load) - $2000-$47e8
Game data $4800-$ffff ;Smaller size is usually preferred.

Of course the game data would not be able to run straight away. So I added a transfer/relocator routine, so that the game that uses a BASIC SYS 2061 address will move from $4800-$xxxx to
$0801-$yyyy and then execute Exomizer's decrunch routine. Loading speed was fast. I sure will use this source for The Last Amazon tape mastering when it is time. :)

Wednesday 25 March 2009

Another trip to the Amazon

24th+25th March 2009

Yesterday, I managed to create a new front end for The Last Amazon - Special Edition. Pretty good result. However I felt that I should add an ending message to the game instead of the game looping. Well, it sort of worked, but I found it to be boring to have still text, so for the ending part I programmed a FLD routine, and the text moves up and down. Much better :o) There was still something missing. Waz did a couple of tunes that was exclusive for The Last Amazon, but we changed the music for the new version of the first game where title music was by me and in game music by Tonka. So we used Waz's tunes specially for this game. There was one tune I noticed in the HVSC which was originally for the first Last Amazon game, but it never appeared on the game, so I decided to use it for the end part of the game.

Later on, Kenz sent me a scroll text for me to add to the game. So I tried to import the scroll text into the cross-assembly project. Scroll text came in, but sadly there was not enough room for me to place the scroll text. I thought that I had to sacrifice the end tune as it had overlapped the scroll text message. Thankfully there was a lot of space in memory $1300-$18FF, as there was nothing there (As Sideways SEUCK scroll map data was originally at a different area). So I placed Kenz's scroll text at $1300 and it did not overlap anything else.

I wanted to do one more thing to the game before I classed it to be a finished piece. And that was to animate the waterfall background chars. First of all I had to dig out the Action Replay Graphics Support Disk and use the E.SS program to rip out the character set, and then load the character set into the Megaunit Char editor. This was so that I could work out where the waterfall background chars were.

Well, when I tried to animate the waterfall's background, I had a very bad result. Some of the chars that were used for the waterfall were also used for parts of the jungle's background. Sadly that meant I had to sacrifice the background animation for the water fall as the char rolling even happened with the green jungle background, as it used the same chars for it. Still, it should be alright without the animation.

Monday 23 March 2009

Stuck in the Amazon - Episode 2

23rd March 2009

If you remember a few weeks back, I did a new front end for Last Amazon - Special Edition, but yesterday I received an E-mail from Kenz that the Special Edition could do with a new and better front end. So he sent me a mockup up of what himself and Alf would love to see for the new front end. Well, it seems I have another job to do so yesterday evening I got started on it and then felt a bit tired and called it a day.

Today I did loads of programming for this new front end. I was originally scratching my head wondering if I could get anywhere to matching Kenz's example. I estimated the number of raster splits that would have been required for the title screen for this game. It turned out that I needed 10 of those. So I made some test splits (Border colour splits) to work out the areas for where the splits lie, and where I should change the font for the text. Mainly because the text is mixed with 1x1 characters and also 2x2 characters.

After I done the splits, I worked on a few other routines, for example a routine that will the normal SEUCK title screen, so that whenever RESTORE is pressed or the player quits the game it will jump straight back to the new title screen code, not the old SEUCK title screen. Then I added the scroll text, with the colour detail. Then I programmed the options that gives the player to chose between 1 player or 2 plays, and to choose whether to have in game music or sound effects. I tested the front end. Looks very nice. I shall now send it to Kenz :)

Sunday 22 March 2009

An external C64 disk drive - WICKED

Thursday 19th March 2009, Saturday 21st March 2009, Sunday 22nd March 2009

I was watching a video on YOUTUBE.COM, which contained video footage from a US technology show called ScreenSavers. The video consisted of something interesting, which was to make an external disk drive for the good old Commodore C64, which meant people could load C64 programs from the PC on a Commodore C64. I was very interested and learned that you could do an external disk drive from PC if you owned an X or XE 1541 cable and software such as the 64HDD, a DOS compatible piece of software that can emulate the 1541 disk drive. It was my lucky day, I own an XE1541 cable (Although the sites show how to make one) and I even made a system boot disk on a floppy drive.

So now it was time for me to put it to the test. I extracted all the files to the hard disk on the PC, but unfortunately the software wasn't working properly in MSDOS. I could not go to directories with .D64, and .PRG files that were stored on to the PC. Luckily for me on 22nd March 2009 I reinstalled the software properly and connected the XE1541 cable to my 1541 disk drive and I set up the settings for the disk drive. GREAT, it all works.

I tried loading in a .D64 file of a magazine cover disk. I loaded it up, but unfortunately I had to load the games/demos separately as the 64HDD does not seem to be compatible with various C64 hardware/software fast loaders. It is great to have an external disk drive. It is a shame that I could not load programs that use the software fast load on them though.

Saturday 14 March 2009

Building a desert

Saturday 14th March 2009

Today received an email from Thorsten about Trash Course. He wanted to show me a little more of the progress he made so far in Sideways SEUCK. I played through Thorsten's work using the cheat mode. Bloody hell! This game is very hard to play in proper test mode, but I liked what Thorsten did so far to the game, although a bit of tidying up might be needed near to the end of the game.

Thorsten asked me if I could draw a big army tank for this level. So I went into the sprite editor and drew 4 sprites, which would form a tank. I never thought that drawing a tank is so bloody awkward. Well, it appears so! Afterwards, I imported the sprites for the big tank into 4 different enemy objects. I altered the settings and set the tank to only shoot to the right and also other bits of the tank, to shoot diagonal. I tested the level out and unfortunately one of the sprites flickered, so I had to remove the diagonal shooting from the big tank. Ah well!

The next thing I did was worked on level 2's background graphics, which is basically a desert stage. So I went into the background editor and then built a brown background. This is for sand. Then afterwards, I built some cactus graphics and also some skull graphics as well. The graphics was a bit awkward at first, but I managed to get something out of it (See picture on the left). A wooden bridge, cacti and also skulls. Nice stuff!

Monday 9 March 2009

A bit of Trash Course

Monday 9th March 2009

Well, no blog over the weekend - how unusual. Nothing much happened, except for that I have been rather ill the past 2 days and today, I feel much better. Man, I really hate those coughs and colds and I do get it bad!

After a hard working day, I checked one of my emails and Thorsten (Sledgie), from the C64wiki.de, asked for some help with his game project, Trash Course. He came up with the idea that we could use the Gold Quest 4 background graphics using the Sideways SEUCK engine (If you want Sideways SEUCK for your C64, please visit this page here.) Well, the good news is that the block data converted fine, but there were some problems. The roads that I designed were black and Thorsten could not get the rat sprites to blend well with the background, and suggested that colour should be changed. So the roads were changed to dark grey. I also modified the colour of the windows and doors, so that inside, windows were blue, and the door was black. Of course I could easily make more blocks to have different coloured doors, but to be honest I cannot really be asked at this moment in time.

A later email from Thorsten asked me if I could add a new character to the game. Some cheeky dogs. Well, that was easily sorted out and did not take me that long to make. I went to the sprite editor in Sideways SEUCK and then I drew 8 frames for the dog. Drawing the dog facing upwards was very awkward, but that did not stop me from trying. I loved using SEUCK in my old childhood/student memories, and it was great to be back on there again.

After I had the 8 frames for the dog, I created 6 frames for the bone (Which of course will be the dog's bullet). Then I went into the objects editor and made some corrections to some of Thorsten's enemy settings. Then I made some new settings for the dog and the dog's bullet. As soon as the settings were updated for the enemy, I copied the same enemy 3 times and used 2 new colours for the dog objects.

Now I done a test in the attack waves editor to see if all was working correctly for the dog. Seems it worked alright. I just hope Thorsten likes what he sees so far and that he will be happy to put up the level data for the first level up nicely so far.
The production is still at its early stages yet, but should be something fun for SEUCK lovers out there, once Thorsten has built all the levels and I added the enhancements and new front end to the game.

Sunday 1 March 2009

Enter the cheetah!

1st March 2009

I read my emails and one of the messages was from Kenz, about the new front end for The Last Amazon that I sent him yesterday. There were a few things missing. I had forgotten to credit him for the logo and also I did not add the Last Amazon's eyes to the end of the fading text. So I worked on the front end a little more and added the missing elements. Now I tested the front end. All was okay, apart from the eyes. So instead of using the !SCR command, I used the !BYTE command, and set values for the eyes chars and .... it worked!

Now the front end (as far as I know) was finished, it was then time for me to add a game over routine for after the last life of the player is lost. Kenz came up with a great idea for the game over sequence, which is to have the Last Amazon running across the screen, and then have some cheetahs chasing after her (Din-dins for the cheetahs). So I ripped some sprites from the game, and stored those to $6c00-$6d00 and imported them into the game over source. I then programmed the game over screen in ACME cross assembler, making new interrupts and sprite expansion routines. Once I did all the programming for the end screen, I bolted it to the SEUCK game and tested it. The game over sequence works nicely.

For the final stage of this game, I programmed a small end screen, which shows just yellow text, using the 1x1 charset and linked the ending to where the SEUCK game scroller loop routine was. For the final test, I played the whole game in cheat mode to see if anything was wrong. It seems that everything was fine. Hopefully another Last Amazon front end finally finished. Finger crossed!

Now that was done, I dug out some tunes for The Last Amazon 2 (I will be doing a new front end and enhancements for this game when the first Last Amazon game has been given the OK), and relocated those. Then I loaded up the Last Amazon 2 SEUCK game and added the music to the game, and compressed it with Exomizer, disabling the effect when uncompressing the file and then I put both Last Amazon games on to the .D64 and sent it to Kenz.

I also could not resist playing The Last Amazon 2. It is another of Alf's memorable classic SEUCK games. Alf made many excellent SEUCK games with the great SEUCK editor. I have played many of Alf's classic SEUCK games in my time. I used to love games that were in the Cops series, and also Archetype was one of my all time favorites.

2023 at a glance

2024 is here, and 2023 has been a really quiet year on the production front due to everything that had gone back to normality. The year has ...