|
Subject: Re: [stella] Playtesting and fine-tuning games From: Greg Troutman <mor@xxxxxxx> Date: Tue, 26 Aug 1997 20:49:38 -0700 |
Glenn Saunders wrote:
> > I'll experiment. I kinda like the asteroids ghostly white. When I
>
> So do I. It's the mothership, the humans, and the lander that could
> become multicolored. Despite the fact that the humans outstretch their
> arms above their heads, you could probably use the two missiles and the
> ball to give them a flesh-colored head as well as split the rest of them
> in half.
Currently, one of these guys is drawn on the same scanline as an
asymetrically divided playfield, which changes color each line, and the
lander craft. As simple as it looks, the timing is pretty much as
cramped as it is above in the asteroid field. It took about as long to
get it right as that section. Writes to the color, missile, and ball
registers, along with the RESBL and RESPMx's needed will be very tough
to put in. I think I might fit in a STA COLUP1 to make different body
sections different colors. One thing I've considered is to draw the men
and platforms with GRP1 only:
man
platform
man x
platform x
x x man
x x platform
And lose the playfield graphics holding them up in space. It won't look
as realistic but allows a lot more time for pretty things, as well as an
easier method of relocating/resizing the platforms themselves. A
further step might be to use NUSIZ to regain the supporting structures
at the positions marked 'x'. However the spacing is not as flexible as
with the playfield graphics, and the timing could be excruciating when
reloading the GRP1 mid-scanline to draw both a platform and a man on the
same line, along with the other things that need to get done.
As for the lander, it is not drawn in any standard fashion and there are
simply nowhere near enough cycles for it to have multiple colors. I
hope to revamp things and get around this soon.
The mothership is a possibility, but here is the code that draws it:
sta WSYNC
nop
nop
nop
nop
nop
nop
nop
nop
nop ;18
lda orbiterCoarse ;3
and #1 ;2
bne delay1 ;2/3
delay1
jmp (orbiterRDJmp) ;5
repeat 10
nop
repend
orbiterResetDelay
;at Coarse posn 0 = cycle 30
sta RESP0 ;3
sta RESP1 ;3
lda #$10 ;2
sta HMP1 ;3
sta WSYNC
sta HMOVE
ldx #13 ;2 14 scanline object
splitOrbiter
lda orbiterRAM,x ;4
sta WSYNC
sta GRP0 ;3
lda orbiterRAM + 14,x ;4
sta GRP1 ;3
lda orbiterCoarse ;3
and #1 ;2
bne wait1 ;2/3
wait1
jmp (orbiterWDJmp) ;5
repeat 10
nop
repend
orbiterWaitDelay
lda orbiterRAM + 42,x ;4 at coarse posn 0 = cycle 22
tay ;2
lda orbiterRAM + 28,x ;4
nop ;2
sta GRP0 ;3 cycle 30
sty GRP1 ;3
dex ;2
bpl splitOrbiter ;3
Besides the usual noise from a 4-digit trick, there are those two
indirect JMPs that create the single cycle coarse position which allows
this thing to move one pixel at a time. I can't seem to figure out a
way to add anything here without making the screen still narrower. But
I wore myself out getting it where it is, I haven't thought much about
it lately. Any suggestions would be appreciated. Note: orbiterRAM is a
56 byte hunk of zero page where I physically shift the mothership
graphic to match it's fine position, and ORA the mothership and lander
graphics together. There goes most of VBLANK... And:
orbiterRDJmp = #orbiterResetDelay - (orbiterCoarse/2)
So, on coarse position 0, the BNE immediately prior will fail, using 2
cycles, and the indirect JMP will go straight to orbiterResetDely, using
5 cycles--total 7 cycles.
On coarse position 1, the BNE will succeed, using 3 cycles, the indirect
JMP will go straight to orbiterResetDelay, using 5 cycles--total 8
cycles.
On coarse position 2, the BNE will fail, using 2 cycles, and the
indirect JMP will go to the NOP right in front of orbiterResetDelay,
using 5 + 2 cycles--total 9 cycles. Etc.
--
mor@xxxxxxx
http://www.crl.com/~mor/
--
Archives updated once/day at http://www.biglist.com/lists/stella/archives/
Unsubscribing and other info at http://www.biglist.com/lists/stella/stella.html
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| [stella] Playtesting and fine-tunin, Glenn Saunders | Thread | Re: [stella] lots of things added t, Greg Troutman |
| [stella] Playtesting and fine-tunin, Glenn Saunders | Date | Re: R: [stella] a thing that doesn', Piero Cavina |
| Month |