Videopac / Odyssey2 forum

Programming the Videopac / Odyssey2 => Homebrews => Topic started by: LD on April 19, 2016, 01:32:37 AM



Title: Invaders!
Post by: LD on April 19, 2016, 01:32:37 AM
I'm making a Space Invaders clone to the Odyssey 2 because... why not?

We deserve it! :)

For now all I show is a playable concept, basically you can destroy the aliens and if you kill them all, the game resets.

I have plans to update the quads on the fly, which involves some tricky timing, if everything goes right, I have plans to put 5 alien rows on screen.

Wish me luck! :)


Title: Re: Invaders!
Post by: Rene_G7400 on April 19, 2016, 09:41:01 AM
Wish me luck! :)

Good luck!  :)


Title: Re: Invaders!
Post by: ScottyDont00 on April 19, 2016, 12:41:15 PM

Wish me luck! :)


Good Luck and can't wait to play!


Title: Re: Invaders!
Post by: Janzl on April 19, 2016, 12:47:56 PM
 :D Good luck!

ps do you have any idea when Incomming will be released?


Title: Re: Invaders!
Post by: LD on April 19, 2016, 02:37:31 PM
Thanks all!   :D

Quote
ps do you have any idea when Incomming will be released?

Soon! The game is finished but is having a problem with voice module on NTSC machines, according René, the game is running fine on VideoPac with voice BTW. :)
A G7400 and voice module is a must have for this game!


Title: Re: Invaders!
Post by: Seob on April 19, 2016, 09:04:14 PM
Well, good luck then  :D


Title: Re: Invaders!
Post by: TomBeck on April 20, 2016, 12:00:39 AM
Also from me : Good luck !!!  :)


Title: Re: Invaders!
Post by: LD on April 20, 2016, 01:00:51 AM
Thanks.

It's a real pity I can't draw those iconic sprites, I need to use the non customizable chars from Odyssey2 bios.

I was making some tests and I think I can update the graphics and draw a new alien row every 15 scanlines (7.5 pixels height).
I want to optimize the code and see if I can reduce to 6 pixel between rows.
My code only disables VDC during Hblank, and I can update only 1 register per scanline, almost.

Edit : Image


Title: Re: Invaders!
Post by: Rafael on April 21, 2016, 01:38:20 PM
If you had made this game a few years ago, you would have changed the history of video games. Very Good Luck!


Title: Re: Invaders!
Post by: TomBeck on April 21, 2016, 06:40:20 PM
I just noticed, that we have already a great Space Invaders sprite. I found it in Mage 3 (see Pic1). Just turn around and cut off the legs (Pic2)...   :D


Title: Re: Invaders!
Post by: gertk on April 23, 2016, 10:59:59 AM
In the original Taito Space Invaders the invaders move one at a time per frame, that is also why the game speeds up as you shoot out an invader. The Taito Space Invader screen memory is bitmapped in vertical(!) stripes of 8 pixels. To move graphic data up or down a hardware 'barrel shifter' was used.
 
In most Space Invader clones I see alle the invaders move as a solid block.

Some years ago I have tried  to use the Videoplac plus graphics part to make a realistic moving space invader clone.
http://videopac.nl/forum/index.php?topic=1632.msg14168#msg14168 (http://videopac.nl/forum/index.php?topic=1632.msg14168#msg14168)
The concept written in G7400 Basic worked: you need to precalculate all invader permutations and put them into the user defined character memory. By carefully selecting which character goes where you can make them move per pixel.
Since you need to update only one invader per frame the correct speed should be doable.
 


Title: Re: Invaders!
Post by: LD on April 23, 2016, 04:46:12 PM
Quote
If you had made this game a few years ago, you would have changed the history of video games. Very Good Luck!
Not me but if Philips had put more effort on Odyssey 2, it would stand better against the competitors.
Quote
I just noticed, that we have already a great Space Invaders sprite. I found it in Mage 3 (see Pic1). Just turn around and cut off the legs (Pic2)...
This is a nice sprite, but was not made by the chars, I'm using the sprites for 3 shields and the player missile. I need to use chars because there are only 4 sprites to use, not enough to build a screen full of enemies.
Quote
In the original Taito Space Invaders the invaders move one at a time per frame, that is also why the game speeds up as you shoot out an invader. The Taito Space Invader screen memory is bitmapped in vertical(!) stripes of 8 pixels. To move graphic data up or down a hardware 'barrel shifter' was used.
Yeah, I noticed that, I think the code is much poorly optimized in original, even using a slow processor, I think it could handle more aliens every frame. I will try to reproduce the original timing, but you need remember there will be 8 aliens per row instead 11, so I think the timing should be faster than the arcade, when the game starts.
You should finish your S.I. for G7400, it could be a nice addiction to it's game library.


Title: Re: Invaders!
Post by: LD on May 14, 2016, 01:39:43 AM
Promissing...
The white quads are calculated at yellow area, and green quads at green area. The blue area is time to repositioning and set new values for the next quads.


Title: Re: Invaders!
Post by: Chris! on May 14, 2016, 04:19:21 AM
How will you do the heart beat type noise?


Title: Re: Invaders!
Post by: LD on May 14, 2016, 02:26:58 PM
I need to find the pitches more close to original and play it, the code should keep the rhythm even if others sounds interrupts, which will happens as we have only a single channel.
So there will be a code for background noise and another code for the regular sound fx.