23rd of January – SpideX revisted

Phoboz told me, that SpideX is mostly done. I had the opportunity to play a little with the game…

My impressions:

Second Level of the game. You see some enemies (I can’t remember which is which, I would guess a bee and a mosquito). The bee can fire projectiles at you. The “*” is food you can collect (score). There is a “one way” wall on the bottom half of the net. Also there is an egg of an enemy spider, which will hatch shortly.

This is your rival spider! Touch it and be killed!

Avoid those missiles, they tend to create large explosions, which sometimes destroy walls (or the player).

First “boss fight” – kill the Dragonfly!

Ant attack!

Swallows? They circle like those.

And so on.

I played the game quite a while, it is a very nice shooter in the style of black widow. Very distinguished different enemies.

As mentioned before (see: Spidex-optimization) the game is written in “C” using Vide (Yeah!). After most of the finishing touches were done by Phoboz – I took the liberty to try to enhance the “web” background a again. (see also above linked blog entry).

The original “C” version was drawn in somewhat 12600 cycles, the scale optimized “C” version was drawn in about 9600 cycles. Last night I did a hand optimized assembler version (which can be called from “C”).

With hand optimized I mean hand optimized. For each distance the scale was chosen so that the maximum strength possible (127) was used to draw. T1 timer was broken too, to begin “early” with the setup of the next vectors (a technique I never mentioned, but Kristof also uses in his VPatrol), position information was taken into account while drawing (zero x or y) etc.

Such optimization must be dearly tested on as many vectrex as you can manage to find. I tested it on three of my machines, two “buzz” machines, 1 “no buzz”. With 3 different BIOS versions, and three different timing parameters (VecFever font setup reports) – all looks good.

Web is now drawn in less than 5200 cycles. But since it is pure code, it takes about 1800 bytes of memory. But for the only one background, which is “central” to the game – I think the memory can be sacrificed.

I heard rumors, that at some stage a cartridge release might be forthcoming. Let’s hope so!

Malban

Tagged on:

4 thoughts on “23rd of January – SpideX revisted

  1. Phillip Eaton

    I downloaded from GitHub, compiled and had a play with this, it’s a nice game! One question though…why does it take up 32kb? Is there a load of extra levels/functions I haven’t got to yet (I only played a few levels) or lots of loop unrolling or is a big binary just the price you pay for using C?

    1. Malban Post author

      It’s not “C” per se.
      The game has many different enemies with animations in 8 directions. These add up… look at the “C” data files – there you will see this.
      Just imagine
      11 sprites
      8 directions
      8 animation steps
      20 vectors per sprite
      3 coordinates/pattern per sprite

      You are already out of memory…

Leave a Reply to Phillip Eaton Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.