TND Productions, C64 News + Updates

KICKASS - SEUCK FRAMEWORK

Have you ever wanted to create and generate a new front end with high score, etc. for your own C64 SEUCK game creation? Don't have the right tools? Well, don't panic because this tutorial gives you information on how to create a front end for your SEUCK game creation in simple steps, with the SEUCK Framework for Kick Assembler. The code, is self explained, but hopefully you should get somewhere. I'm here to guide you. If you have created games with the Shoot 'Em Up Construction Kit or Sideways scrolling SEUCK then this PC/C64 based framework is very handy for you.

First of all.

You will need the following tools:

VICE, ULTIMATE 64 or a real C64 with Action/Retro Replay cartridge plugin.

D64 PRG importing/Extractions

- Dir Master by Style- For directory design, importing / exporting.
or
- D64 Editor by AlmightyC64

Assembler

- KickAssembler - by Camelot -  For compiling and building your framework. You may use other assemblers, but be aware that their pseudocode and commands are slightly different. Kick Assembler also consists of a document folder to help you learn how to compile and build your stuff with it. It also prevents you from overwriting data by spitting out errors.

Compression

- PuCrunch - by Albert/Pu-239 For very fast compression
or
- Exomizer V3.02 by Zagon/Exon - For better compression and faster decompression
or
Use a native C64 packer+cruncher if you like to do things the oldschool way :) - CSDB is your friend (or enemy) :D

Front End Graphics/Design

-Charpad V2.0 or higher by Subchrist Software - For creating and designing your very own front end and end screen for your game creation

Music 

(For composing)
- Goat Tracker - for composing your own music, jingles etc via a PC. If you make a tune, why not add it to your front end. GoatTracker consists of a built in relocator, which can allow you to place your PRG to desired memory location.
or
- CheeseCutter by Triad - for composing your own music. Contains a commandline based music packer/relocator
or
- Any native C64 music editor, such as JCH, DMC,etc with valid relocator - CSDB might help you there.

Code editing

- Any valid text editing application. I.E., Notepad, Notepad+, Relaunch64 (The best choice for me), Crimson, etc.

Now that you have these tools installed. It is time to download and install the project binary data and source code files. The files are as follows:

- Squibblies_3_Raw.d64 - A frozen snapshot crunched version of the RAW SEUCK finished game.
- squibblies3frontend.ctm - Charpad V2.0 project for the designed front end
- squibblies3endscreen.ctm - Charpad V2.0 project for the designed ending (Using the same font)
- C64 folder (Where the C64 binary/PRG files are placed - all revealed inside the code )



GETTING STARTED:

Before we start using the source code. You'll want to extract the entire framework project as a separate folder inside the kickassembler folder. This is usually the best way to keep projects organized, so that they don't get mixed up with the actual application directories.

The way I have it organized is like this:

c:\kickassembler\seuckframework

:)

Stage 1: Loading the game, and testing

Right, now we shall work on using SQUIBBLIES 3 as the candidate to add enhancements to the game. First of all, run VICE, or your C64, ULTIMATE, etc. Instert the D64 image and load it up with the usual LOAD"*",8 and then type in run. The program will decrunch and unfreeze. After loading has finished, you should get a freeze state unfreezing Squibblies 3. You don't have to freeze + crunch your RAW game. You can still load the game using the LOAD "GAME",8,1 and wait a few minutes for the game to run. I prefer the crunching method - since it takes a lot less to load in and run.

Here's how the title + game appears: Looks nice, doesn't it?


Now, although we could spend minutes or hours playing this game, just for the hell of it. We should do something really useful to it. Since you have the Action Replay/Retro Replay plugin installed. Press the FREEZE button (Or in Vice, ALT+Z), then, select the Machine Code Monitor option (Unless you have it set already.

Stage 2: Splitting the Game

Since the game has been loaded, and you have pushed the FREEZE button on your Action/Retro replay and selected (M) to enter the Machine Code Monitor (Or the monitor already kicks in to your screen). We have to extract the game data from the current freeze, for importing into the kickassembler source. To do this. We need to use the 'S' command. This is to save data from one area to another area.

The SEUCK game data that gets used is from $0900-$6580, and from $B6C0-$FFFA. The rest of the memory $6580-$B6C0 carries the editor code, which we seriously don't need to keep and can use for our own data and additional code. The Kickassembler SEUCK  framework needs the game to be split into two different files. 

Make a new D64, or if you have enough room on disk (Say about 200 blocks or more) you can use the same D64. We are going to split the game in two using the following command:

S "SQUIBBLIESPT1",8,0900,6580

S "SQUIBBLIESPT2",8,B6C0,FFFA

If you're using your own game for this method, you can simply use the same method, but use a filename for your own game. If you are using VICE, remember to DETACH D64 image after you have finished saving your game (After 5 seconds when the red/green light icon has gone out).

Stage 3: Exporting the split data to the framework

For this stage, you will need DIR MASTER or D64 EDITOR. In order to do this, you will need to load in the D64, which you last saved on, into either of the two D64 editors. Then select the two files and EXPORT them to the C64 folder as two PRG files. - Note also: The same method can also be done with music, if you composed music in DMC, relocated to $9000, $A000, just take your pick of memory area and then set up the tune values to allow play.

Stage 4: Frontend, Ending + Graphics

Using Charpad, you can design your own front end charset+graphics. Set the following options to your project. Tile Mode: Disabled, Map width = 40, Height = 25. Colours - by character. I have added the example character set and front end screen from squibbliesfrontend.ctm to give you an example the order of the character set. Where there's space, other characters can be used for additional characters. Here's my example for the front end.





If you look at the character set above. It should start in order or letters, before some symbols. The Up arrow and Back Arrow symbols have been changed as a tick and cross for the front end. The up and back arrow chars are tick and cross, for the RUB/END feature in the high score name entry. Also the # and the $ keys are the music + sfx icons. You may have designed and created the graphics project, but what about putting it into your game project?

Simply go to the menu and select the following:

File / Import/Export / Export Charset - folder: C64\examplecharset.bin
File / Import/Export / Export Char Atrributes - folder: C64\exampleattributes.bin
File / Import/Export / Export Map - folder: C64\exampletitlescreen.bin

The same method can be done for the end screen, but you don't need to export  the charset again into the code.

I hope this information helps.

Stage 5: The Source Code

This is where the real fun starts. The source code may be downloadable, but for those of you who want to see it live on this page - The code is self-explainable. Let's show you the source files (Simply CLICK on the filename to view the source + explanation).

First of all the source files should be as follows:

framework.asm - The main source file that should be compiled through KickAssembler. This links other source code, and binary data together to form a complete project after compiling through the KickAssembler

onetime.asm - This piece of source, installs the new features into the existing code of the SEUCK game. It POKEs new commands allowing the old front end to be bypassed, and also allows installing new in game enhancements, such as adding music, new colour checks, enemy detection, smart bomb effects, and other cool features.

titlescreen.asm - This is the main code that generates the brand new front end, with page flip, displaying the HIGH SCORE table. The code also has a GET READY and GAME OVER sequence, and end screen, for every time the game is complete, a new end screen takes place.

ingameenhancements.asm
- Contains the main in game enhancements, linked to the SEUCK code. This sets up the background animation, smart bomb effect on bosses, colour change, object detection, etc.

hiscore.asm - The main code for detecting and generating the high score. Name, entry, etc.

Assembling and compiling the source

Enter the command prompt:

You can simply call the assembler to assemble the framework, by using the command:

java -jar "validpath\kicakassembler\kickass.jar" framework.asm

for example my path is:

java -jar "c:\kickassembler\kickass.jar" framework.asm

If no errors - brilliant you compiled it correctly, and there are no errors in the code. Otherwise try and investigate the problems. Could there be an error in your code. Are your path locations incorrect?

If successful, compress the project with one of your chosen crunchers - for example Exomizer

path\exomizer\win32\exomizer.exe sfx $0800 framework.prg -o mygame.prg

If successful compressing, the .PRG runs in VICE, this should be the final result:

New front end:


Hi score table, implemented inside the front end


Get Ready screen


Game


Game Over


An added bonus ...

There's also a special SEUCK Redux version of Squibblies 3 now available to download from the TND Games page. It features improved gameplay, aiming enemies, the same type of front end+hi score table and much more. Please note that SEUCK Redux only works on PAL MACHINES.