Language…
8 users online: BenTheDragon, CroNo486, Hach, JustCallMeVic,  Kevin, sinseiga, Yetibucca, Zavok - Guests: 67 - Bots: 107
Users: 70,227 (2,550 active)
Latest user: JustCallMeVic

lakitu acceleration patch

Hey, i really need help with making a patch to double up the y-speed acceleration of the lakitu cloud for an sa1 rom...
in smwdisc its this part of code:
Code
CscDecideY:         A0 00         LDY.B #$00              
CODE_02D24F:        A5 15         LDA RAM_ControllerA     
CODE_02D251:        29 0C         AND.B #$0C              
CODE_02D253:        F0 1A         BEQ CscHandleY          
CODE_02D255:        A0 10         LDY.B #$10             	 ;max down speed
CODE_02D257:        29 08         AND.B #$08              
CODE_02D259:        F0 14         BEQ CscHandleY          
CODE_02D25B:        A0 F0         LDY.B #$F0             	 ;max up speed
CODE_02D25D:        80 10         BRA CscHandleY          

...

CscHandleY:         84 00         STY $00                 
CODE_02D271:        B5 AA         LDA RAM_SpriteSpeedY,X  
CODE_02D273:        C5 00         CMP $00                 
CODE_02D275:        F0 08         BEQ CODE_02D27F         
CODE_02D277:        10 04         BPL CODE_02D27D         
CODE_02D279:        F6 AA         INC RAM_SpriteSpeedY,X  	   ;so here i have to 
CODE_02D27B:        F6 AA         INC RAM_SpriteSpeedY,X      ;double up acc, right?
CODE_02D27D:        D6 AA         DEC RAM_SpriteSpeedY,X    ;
CODE_02D27F:        B5 B6         LDA RAM_SpriteSpeedX,X  
CODE_02D281:        85 7B         STA RAM_MarioSpeedX     
CODE_02D283:        B5 AA         LDA RAM_SpriteSpeedY,X  
CODE_02D285:        85 7D         STA RAM_MarioSpeedY     
Return02D287:       6B            RTL                     


so i made this patch:
Code
lorom

if read1($00FFD5) == $23
	!sa1 = 1
	; SA-1 base addresses
	!db = $3000
	!addr = $6000
	!bank = $000000
	sa1rom
else
	!sa1 = 0
	; Non SA-1 base addresses
	!db = $0000
	!addr = $0000
	!bank = $800000
endif


org $02D271
autoclean JML CustomCode6


freedata

CustomCode6:

LDA $AA,x
CMP $00
BEQ +
BPL ++
INC $AA,x
INC $AA,x
BRA +
++
DEC $AA,x
DEC $AA,x
+
JML $02D27F
RTL


...so the patch doesnt work, im not able to control the y speed anymore and cloud is sinking...i really dont know too much about writing patches...so what am i doing wrong?
Sprite Y speed in an SA-1 ROM is $9E, replace all $AA with a define that's $AA on LoROM and $9E on SA-1

Benny Harvey RIP, miss you big man.

Omg thx Burning Loaf...i read a tutorial that said 2 digit adresses doesnt need to be changed at all...i guess i need to search a better documentation of converted ram adresses :)