11 March 2016 - Forum Rules
Started by capnkatie, April 13, 2022, 06:15:42 PM
Quote from: capnkatie on April 14, 2022, 05:56:23 PMyou know after seeing this i went "alright then, i'll do it myself" and sat down, got a map of the memory and apart from the score being stored in a weird decimal format it was actually really easy to replace some of the code without even using a disassemblyi mean i doubt i am going to use this for anything but it was a fun exercise and its kinda cool to see i can do something like that, so hey thanks lmao
aaaa LDX NumberofLives ; Subroutine a: Increment the number of lives; limit it to 99 CPX #$63 ; BPL #$08 ; INC NumberofLives ; LDA #$01 ; JSR dddd ; When getting an extra life, jump to previous subroutine d RTS ;bbbb LDA #$03 ; Subroutine b: Display the number of lives on the bottom status line JSR $8f21 ; JSR $bc40 ; RTS ;cccc STA ScoreAndCoinDisplay,x ; Subroutine c: Display the initial number of lives after selecting Start DEX ; BPL #$fa ; LDA NumberofLives ; LDY #$00 ; CMP #$0a ; BMI #$05 ; SBC #$0a ; INY ; BPL #$f7 ; STY $07f3 ; STA $07f4 ; RTS ;dddd STA DigitModifier+5 ; Subroutine d: Reflect change on the bottom status line LDY #$1d ; JSR $f6f ; LDA #03 ; JSR $f01 ; RTS ;eeee DEC NumberofLives ; Subroutine e: Decrement the number of lives; do not process digits and printing if already at 0 LDA $07f3 ; ORA $07f4 ; BEQ #$05 ; LDA #$ff ; JSR dddd ; LDA NumberofLives ; RTS ; 4f6 JSR aaaa ; When we pick up a 1-up mushroom or when we chain enough enemy-defeating actions, jump to subroutine a3c2b JSR aaaa ; When we have collected 100 coins, jump to subroutine a f1b RTS ; Do not display the first 5 digits of the score NOP ; NOP ; NOP ; NOP ; NOP ; 77b .DB $24 ; Do not display the trailing digit 765 .DB $15, $12, $1f, $0e, $1c ; Display "LIVES" instead of "MARIO" 66a JSR bbbb ; When writing the bottom status line, jump to subroutine b3c51 NOP ; Do not overwrite the highest digit with a space tile for zero suppression NOP ; NOP ; NOP ; NOP ; f0c .DB $66 ; Move the number of lives underneath "LIVES" 317 NOP ; When clearing player scores and coin displays, jump to subroutine c NOP ; NOP ; JSR cccc ;11e9 JSR eeee ; When losing a life, jump to subroutine e
Page created in 0.058 seconds with 20 queries.