Re: [stella] New project - Need help

Subject: Re: [stella] New project - Need help
From: Manuel Polik <cybergoth@xxxxxxxx>
Date: Wed, 28 Mar 2001 12:01:29 +0200
Hi Maximilian!

> I'm not sure I understand these terms. I think 2 Sprites should be enough,
> but I don't know if it should be the best choice. Any suggestions are
> welcome.

Ok, since the line you're talking about is a sprite, it get's very easy.
Instead of the Sprite Data you suggested here: 

> Sprite_Top
>    db %11111111
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
> Sprite_Botton
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %00000000
>    db %11111111

All you'd have to do is positioning Player 0 horizontally and then
writing $FF to GRP0 on the desired line in your kernel.

The code in the kernel would come down to:

		LDX #$00	; assume wrong line
		CPY desiredLine ; Are we on the desired line?
		BNE WrongLine	; N: We'e on the wrong line
		DEX		; Y: Put $FF into X
WrongLine	STX GRP0	; Write SpriteData

This is assuming that Y holds the current Line you're drawing and
desiredLine is a RAM variable, where you'd hold the scanline where your
Spriteline shall become visible.

Now, to move the line up or down, you'd read the Joystick and
increment/decrement desiredLine according to its reading.

Ok, this was in short the way for someone who knows the basic principles
how the VCS works.
Since I fear that you're still too much a beginner to understand what I
said (that's judging from your two mails, I really don't want to be rude
here, just helpfull), I'd suggest, that you go to Nick Bensemas
homepage, where you'll find some documents helping you with the first
basic steps and teaching you the main principles how the VCS works. The
URL of the docs section is:

There, I'd especially recommend reading the 'Stella Programmer's Manual'
and Nicks very own 'How To Draw A Playfield' sample source. Start toying
around with that. Later then, go back to this mail and continue with
your program :-)


Archives (includes files) at
Unsub & more at

Current Thread