FREAX (and some other new bits)

Discussion, Reviews & High-scores

Moderator: Moderators

Post Reply
orac81
Vic 20 Newbie
Posts: 11
Joined: Fri Jan 06, 2023 12:07 pm
Location: UK
Occupation: coder

FREAX (and some other new bits)

Post by orac81 »

FREAX - Help and notes.


FREAX is a simple Alien shootem-up game that compiles for the unexpanded VIC20, CBM64 & CBM16/+4.

LATEST VERSION (See end of thread for text):
freax32.zip
(25.3 KiB) Downloaded 44 times
(Much improved, most bugs ironed out..)

OLD VERSION:
freax27b.zip
FREAX27 vic game with source. (screenshots + text updated)
(23.9 KiB) Downloaded 139 times
The files in this archive are:

freax.txt - this file.
freax27.s - CA65 compatible 6502 assembler source code.
freax27c64.prg - Commodore 64 version.
freax27v20.prg - VIC20 version.
freax27c16.prg - Commodore 16 or Plus-4 version.
norm/freax27c64n.prg - version with more traditional alien motion. (also versions for v20/c16 as above)

To move left/right use keys I,P. hit SHIFT to fire. To exit game hit key X.
When the aliens move, alternate rows move in the opposite directions.
When shooting, shave the "side" aliens first, then try to eliminate all the ones going in one particular direction.

Compiling the source.
---------------------
The source code is released under the GNU GPL2 licence (see GNU website).

FREAX is a "work in progress" - I started it as a little test program for my own 6502 assembler a long time ago.
It is very compact - if you set EXTRA and SHELTERS to zero, it can build a smaller version.
While it is playable, I intend to add more. However I have decided to release it as-is, since I
dont know when it will be finished. It has a few interesting ideas, so its worth a look.

One little bug is that the alien character under a missile of bomb is not properly redrawn until the
alien moves, which is annoying, and a to-do fix. Also there is no sound yet, and the colour
is simple pre-fixed areas. (like the old games when they used coloured tape over a b/w monitor!)
The VIC20 version may be better with a wider screen, say 28 columns.

The single source file comiles to multiple targets, with condition .if .. .endif macros
selecting the code for the right targets.
When Compiling set either IS_V20, IS_C64, IS_C16 to 1, the others to zero.
Note: other target systems not yet done.

Set .define ALT_DIR 0 for "normal" alien motion or 1 for more complex/interesting motion.
(Alternate rows move in opposite directions)
I modified my asm to mostly match CA65. Ensure paths CC65_INC and CC65_LIB are set.
To compile under CA65 set the USE_CA65 flag. I set target system to "none" to kill
request for Segment settings - its a bit of a kludge, and to be honest I coded for my own
assembler, which is a CA65 subset.


freax-vic2.png
freax-vic2.png (2.24 KiB) Viewed 1461 times
(Screenshot: FREAX for VIC20, Score 20, 1st level, 2 lives left.)

For more details, see FREAX.TXT in zip file.
(Edit: Added screenshot, removed ref Vic1001)
Attachments
freax27.zip
FREAX27 vic game with source.
(21.63 KiB) Downloaded 55 times
Last edited by orac81 on Tue Mar 19, 2024 12:17 pm, edited 4 times in total.
User avatar
Ola H
Vic 20 Enthusiast
Posts: 172
Joined: Thu Aug 20, 2015 6:08 pm
Website: http://www.athleticdesign.se/
Location: Sweden

Re: FREAX (and some other new bits)

Post by Ola H »

Well, that's certainly fast, smooth and playable :) If you just add SFX and a mothership, it would already be one of the top Space Invaders clones on the Vic. But as there already are some great Invaders clones for the Vic, why not add more of your own little twists to the formula? There is potential for a great shooter here!

I think the non-traditional alien motion worked well. Maybe you could use both types but in alternating levels?
User avatar
Rich
Vic 20 Hobbyist
Posts: 137
Joined: Mon Nov 29, 2021 4:15 pm

Re: FREAX (and some other new bits)

Post by Rich »

Thank you for sharing this project 👍
Merytsetesh
Vic 20 Amateur
Posts: 40
Joined: Sat Mar 02, 2024 8:57 pm
Location: Canada

Re: FREAX (and some other new bits)

Post by Merytsetesh »

Could you post a screenshot or two, please? :-) I will give it a play when I have time, and I'm curious to see what it looks like. :-)

Thank you for sharing :-)
User avatar
javierglez
Vic 20 Hobbyist
Posts: 107
Joined: Sat Jun 03, 2017 3:33 pm

Re: FREAX (and some other new bits)

Post by javierglez »

Good idea have the alternate rows of aliens moving in opposite directions.
But I don't know what you mean about the VIC1001, apparently it's 3583 bytes free too.
(TBH I had never tried VIC1001 settings on VICE until today)
User avatar
Rich
Vic 20 Hobbyist
Posts: 137
Joined: Mon Nov 29, 2021 4:15 pm

Re: FREAX (and some other new bits)

Post by Rich »

Image
orac81
Vic 20 Newbie
Posts: 11
Joined: Fri Jan 06, 2023 12:07 pm
Location: UK
Occupation: coder

Re: FREAX (and some other new bits)

Post by orac81 »

Ola H wrote: Wed Mar 06, 2024 8:37 pm Well, that's certainly fast, smooth and playable :) If you just add SFX and a mothership, it would already be one of the top Space Invaders clones on the Vic. But as there already are some great Invaders clones for the Vic, why not add more of your own little twists to the formula? There is potential for a great shooter here!

I think the non-traditional alien motion worked well. Maybe you could use both types but in alternating levels?
Thanks everyone for the comments! Yes sound would not be too hard, also a Saucer or Mothership, although I did want to take it in different directions. I did make a version for the PC with lots of things going on, for example some faster rows, aliens that required multi hits, diagonal bombs etc. But I liked the idea of keeping it small for a 5k VIC20 too.

As for the my confusion on the VIC1001 - yes, sorry, I was probably thinking of the VIC10 or MAX, which has 2k free user RAM. I have removed mentions of VIC1001 and added a screenshot.

The thing was I did a lot of work on this program years back, and then nothing for years, so I wanted to just get it released in some way even if a bit incomplete. Now I look at the code and think "ok what did I do here?". Lesson - alway keep lots of notes of your projects, even "obvious" stuff.
orac81
Vic 20 Newbie
Posts: 11
Joined: Fri Jan 06, 2023 12:07 pm
Location: UK
Occupation: coder

Re: FREAX (and some other new bits)

Post by orac81 »

FREAX - new version v32!

This is an updated and improved version of FREAX, with most of the glitches ironed out.

FREAX is a simple Alien shootem-up game that compiles for the VIC20, CBM64 & CBM16/+4.
It is very playable, and yet it is only 2K in size!
freax32.zip
(25.3 KiB) Downloaded 60 times
The files in this archive are:

freax.txt - this file.
freax.s - CA65 compatible 6502 assembler source code.
freax-c64.prg - Commodore 64 version.
freax-v20.prg - VIC20 version (unexpanded).
freax-c16.prg - Commodore 16 or Plus-4 version.

To move left/right use keys I,P. hit SHIFT to fire. To exit game hit key X.
In the title screen you can select different modes by hitting M key.
For a fast game select 1 (bit 0). For a simpler "classic" alien motion, select 2 (bit 1). For both, 3..

When the aliens move, different rows move in the opposite direction.
The game has a pattern of alien movements that span over 8 levels, each level lower and more difficult.
After 8 levels, the game "wraps" and keeps playing, but at a faster speed.
When an alien reaches the bottom, or you use all your lives, the game is over.
HINT: When shooting, shave the "side" aliens first, then try to eliminate all the ones going in one particular direction.
freax-vic4.png
freax-vic4.png (2.17 KiB) Viewed 1097 times

Compiling the source.
---------------------
The source code is included, and released under the GNU GPL3 licence (see end of this document).

FREAX is a "work in progress" - I started it as a little test program for my own 6502 assembler a long time ago.
It is now quite playable, even though I intend to add more at some stage. It has a few interesting ideas, so its worth a look.
It is very compact, currently about 2k. Most of the glitches and bugs on previous versions have been fixed.

The colour is simple pre-fixed areas. (like the old games when they used coloured tape over a b/w monitor!)
The VIC20 version may be better with a wider screen, say 28 columns.

The single source file comiles to multiple targets, with condition .if .. .endif macros selecting the code for the right targets.
When Compiling set either IS_V20, IS_C64, IS_C16 to 1, the others to zero.
Note: other target systems not yet done.

I modified my asm to mostly match CA65. Ensure paths CC65_INC and CC65_LIB are set.
To compile under CA65 set the USE_CA65 flag. I set target system to "none" to kill
request for Segment settings - its a bit of a kludge, and to be honest I coded for my own
assembler, which is a CA65 subset.

Anyway thats it for now. Enjoy!


=============================================================================
The source code is released as free software under the GNU GPL3 licence,
see GNU website: www.gnu.org/licenses/gpl-3.0.html
User avatar
Rich
Vic 20 Hobbyist
Posts: 137
Joined: Mon Nov 29, 2021 4:15 pm

Re: FREAX (and some other new bits)

Post by Rich »

Thank you for the share in your journey to make this game for the Vic20, let's hope you make some more games 👍
orac81
Vic 20 Newbie
Posts: 11
Joined: Fri Jan 06, 2023 12:07 pm
Location: UK
Occupation: coder

Re: FREAX (and some other new bits)

Post by orac81 »

Thanks Rich, and I have enjoyed your games too! Its been fun going back to some 6502 programming.
User avatar
Rich
Vic 20 Hobbyist
Posts: 137
Joined: Mon Nov 29, 2021 4:15 pm

Re: FREAX (and some other new bits)

Post by Rich »

orac81 wrote: Thu Mar 21, 2024 9:01 am Thanks Rich, and I have enjoyed your games too! Its been fun going back to some 6502 programming.
They are not mine I just links new games that are out :lol:
orac81
Vic 20 Newbie
Posts: 11
Joined: Fri Jan 06, 2023 12:07 pm
Location: UK
Occupation: coder

Re: FREAX (and some other new bits)

Post by orac81 »

Rich wrote: Thu Apr 11, 2024 2:22 pm
orac81 wrote: Thu Mar 21, 2024 9:01 am Thanks Rich, and I have enjoyed your games too! Its been fun going back to some 6502 programming.
They are not mine I just links new games that are out :lol:
Sorry I was thinking of another Richard!
Post Reply