|
Subject: Re: [stella] behold, i am become shiva, destroyer of kernals! From: Christopher Tumber <christophertumber@xxxxxxxxxx> Date: Thu, 11 Mar 2004 11:48:38 -0500 |
What does this code do (specifically all the LSR's):
lda varTimeBeforeBallMoves
bmi ItsTimeForPterry
beq ItsTimeToEndCountDown
;divide by 32 for the count, then multiply by 8 for the offset...
LSR
tax
LSR
lsr
lsr
LSR
tay
ASL
asl
asl
clc
adc #<PterryCount1Graphic ;add in the low byte of the graphic location
sta pointerPterryGraphic
lda #1
sta booleanPterryGoesRight
txa
and #%00001111
ora #%00100001
sta COLUP1
jmp DoneMovingPterry
- Register Y gets set almost immeditately in PterryExactPositioning (The above TAY seems to serve no purpose)
- varTimeBeforeBallMoves begins with a value of #BALL_FREEZE_TIME and gets decremented until it has a value of #255. At which point it stays at #255 forever.
So wouldn't the above work the same as:
lda varTimeBeforeBallMoves
bmi ItsTimeForPterry
beq ItsTimeToEndCountDown
lda #<PterryCount1Graphic ;add in the low byte of the graphic location
sta pointerPterryGraphic
lda #1
sta booleanPterryGoesRight
lda #%00101111
sta COLUP1
jmp DoneMovingPterry
Seems to work fine (Doesn't fix the main problem though - Sigh)
Chris...
----------------------------------------------------------------------------------------------
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [stella] behold, i am become sh, KirkIsrael | Thread | Re: [stella] behold, i am become sh, KirkIsrael |
| Re: [stella] Cybertech board manufa, Chris Wilkson | Date | Re: [stella] behold, i am become sh, KirkIsrael |
| Month |