Jump to content

Add additional stats in SRAM


bruddog

Recommended Posts

This is a quick and dirty method for tracking fumbles...I could probably move it to work on a 32 team rom but for now its just good for 28 team rom league play.

 

 

 

 

 

 

 

SET( 0x286EA,0x4C00E5EA)

 

 

SET( 0x2ADEC,0x4C1EE5)

 

 

SET(0x3E510,0xA9808D01A024707006EEA07F4C12E5EEA27FA9C08D01A0A001B1AE4CDE86A9808D01A0A5702940482078B06845702940F00D24705006EEA17F4C3FE5EEA37FA9C08D01A04CDFAD)

 

 

 

 

 

 

 

 

SOURCE

 

 


.ORG $86DA       ; JUMP TO SET FUMBLE IN TEAM FUMBLES

JMP SETFUM

NOP

SETFUMR:

 


.ORG $ADDC       ; JUMP TO SET FUMBLES LOST IN TEAM FUMBLES

JMP SETLOST

SETLOSTR:

  


.ORG $FFB2

SETFUM:

LDA #$80        ; ENABLE SRAM

STA $A001

BIT $70        ; CHECK POSSESSION

BVS P2FUM      ; IS P2 GO TO INCREASE P2 FUMBLES


P1FUM:

INC $7FA0      ; INCREASE P1 TEAM FUMBLES  

JMP RET


P2FUM:

INC $7FA2      ; INCREASE P2 TEAM FUMBLES


RET:           ; DO CODE WE OVERWROTE AND RETURN TO START OF FUMBLE ROUTINE

LDA #$C0       ; DISABLE SRAM

STA $A001

LDY #$01    

LDA ($AE),Y

JMP SETFUMR



SETLOST:

LDA #$80             ; ENABLE SRAM

STA $A001

LDA $70              ; SAVE ORIGINAL POSSESION BEFORE UPDATING

AND #$40             ;

PHA                  ;

JSR $B078            ; UPDATE COLLISSION BIT MASK AND UPDATE POSSESSION ()

PLA                  ;

EOR $70              ;

AND #$40             ; IS POSESSION BIT IS THE SAME AS BEFORE GO TO NOT LOST

BEQ LOST_CHECK_EXIT  ;


BIT $70              ; CHECK CURRENT POSSESION AFTER FUMBLE

BVC P2LOST           ;


P1LOST:

INC $7FA1            ; INCREASE P1 FUMBLES LOST

JMP LOST_CHECK_EXIT

P2LOST:

INC $7FA3            ; INCREASE P2 FUMBLES LOST


LOST_CHECK_EXIT:

LDA #$C0             ; DISABLE SRAM

STA $A001

JMP SETLOSTR

 

IN NESTOPIA  SAVE STATE

 

 

 

 

 

322F= P1 FUMBLES 

 

 

3230= P1 FUMBLES LOST

 

 

3231= P2 FUMBLES

 

 

3232 = P2 FUMBLES LOST

 

 

 

 

 

 

 

Link to comment
Share on other sites

this is an awesome idea.  i love more stats to display on a box score.  fumbles lost can reveal what happened when the stats seem to indicate a different result.  however, everytime i run a com v com game with this hack the fumble can never be picked up.  with the exception of 1 time where the qb picked the ball back up and threw it again (pretty awesome if you ask me), but then the ball went past the endzone and laid in the stands forever.  the refs never reset the play.


Link to comment
Share on other sites

I just double checked using this on the tsb original rom and it worked fine.

 

 

And also tested this on the HSRL rom and it worked fine. Maybe you pasted it wrong or its on a rom with some other hack. 

 

could be either.  i'll double check and try again.  i was using the 2.0 rom which has a number of other hacks on it.

 

EDIT: yep, just a transcription error on my part.  all looks good!

Edited by brookstonfowler
update
Link to comment
Share on other sites

could be either.  i'll double check and try again.  i was using the 2.0 rom which has a number of other hacks on it.

 

EDIT: yep, just a transcription error on my part.  all looks good!

Brooks, would it be a (fairly) simple fix to the phile to allow the ability to track fumbles?  Lots of discussion on the HSRL boards about fumbles and the ability to add to the phile came up recently.

Edited by War Machine
Link to comment
Share on other sites

  • 1 month later...

This hack uses season SRAM so it won't work for season games. 

 

Stats are stored at the following locations. I forget what this gets converted to for nestopia

 

These are stored as decimal numbers and not hex numbers

 

P1 MIN = $67B0 , SAVE STATE: $1A3F

P1 SEC =$67B1, SAVE STATE: $1A40

 

P2 SEC =$67B2, SAVE STATE: $1A41

P2 SEC =$67B3, SAVE STATE: $1A42

 

  

 

TIME OF POSSESION HACK SOURCE

 

SET (0x22309, 0x4C00E0EA)

 

SET (0x3e010,0xA9808D01A024707033EEB167ADB167290AC90A9057ADB1671869068DB167C960D04AA9008DB167EEB067290AC90A903CADB0671869068DB0674C6CE0EEB367ADB367290AC90A9024ADB367186906C9608DB367D017A9008DB367EEB267290AC90A9009ADB2671869068DB067C66A30034CFDA24C0FA3)

 

    .ORG $A2F9         0x22
    JMP $E000
        
        
    .ORG $E000        ; 0x3E010
    LDA #$80             ; EMABLE SRAM WRITE
    STA $A001    
    BIT $70                ; CHECK WHO HAS BALL
    BVS P2


       
      
P1:    
    INC $67B1            ; P1 SECONDS ++
    LDA $67B1             ; 
    AND #$0A            ;
    CMP #$0A            ; CONVERT TO DECIMAL
    BCC EXIT            ; ON MULTIPLES OF TEN
    LDA $67B1            ;
    CLC                 ;
    ADC #$06            ;
    STA $67B1            ; SAVE P1 SECONDS
    CMP #$60            ; CHECK IF AT 60
    BNE EXIT            ;
    LDA #$00            ; SET P1 SECONDS TO ZERO
    STA $67B1            ;
    LDA $67B0            ; LOAD P1 MINUTES
    CLC                ; = P1 MINUTES++
    ADC #$01            ;
    STA $67B0            ; SAVE P1 MINUTES
    CMP #$0A            ;
    BCC EXIT            ;
    CLC                 ; CONVERT TO DECIMAL
    ADC #$06            ; ON MULTIPLES OF TEN
    STA $67B0            ; SAVE P1 MIN
    JMP EXIT 
    
P2:    
    INC $67B3            ; SECONDS
    LDA $67B3 
    AND #$0A
    CMP #$0A
    BCC EXIT
    LDA $67B3
    CLC 
    ADC #$06
    CMP #$60
    STA $67B3
    BNE EXIT
    LDA #$00
    STA $67B3
    LDA $67B2            
    CLC
    ADC #$01
    STA $67B2
    CMP #$0A
    BCC EXIT
    CLC 
    ADC #$06
    STA $67B2    
    
    
EXIT:                    ; CLOCK CODE THAT WAS OVERWRITEEN
    DEC $6A             ;  SECONDS --
     BMI A30F_EXIT                   ; IF NEGATIVE
     JMP $A2FD            ; JUMP TO CLOCK COUNTDOWN
     
A30F_EXIT:                ; JUMP TO SECONDS ARE NEGATIVE
    JMP $A30F

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...