Jump to content

DRAW TAPPING SPEED NEAR PLAYER NAME


bruddog

Recommended Posts

Screenshot 2024-01-17 105751.png

 

 

set commands

 

SET(0x28287,0x4C50E5)

SET(0x3E560,0xA52B3054A008B1AE300EA01DB1AE20B7D8A220A0644C76E5A01DB1AE20B7D8A220A0744C76E58545A90248293F186D7D03C93FB02638662B8AAE7D039D3C03989D3B03689D3A03E8E8E818A54520F8D5A5452005D620C8D24C6482684C6482)

 

       .ORG $8267 

       JMP $E550

 

        .ORG $E550        ; 0x3E560

DRAW_TAPS:
        LDA $2B
        BMI EXIT        
        LDY #$08        ; LOAD P1/P2 AND POSITION ID
        LDA ($AE),Y
        BMI DRAW_P2
        LDY #$1D        ; LOAD PRESSES
        LDA ($AE),Y        ;
        JSR $D8B7        ; CONVERT HEX TO BINARY CODED DEICMAL
        LDX #$20        ; SET PPU ADDRESS
        LDY #$64        ; 
        JMP DRAW_DIGITS
        
DRAW_P2:    
        LDY #$1D        ; LOAD PRESSES
        LDA ($AE),Y        ;
        JSR $D8B7        ; CONVERT HEX TO BINARY CODED DEICMAL
        LDX #$20        ; SET PPU ADDRESS
        LDY #$74        ; 
        JMP DRAW_DIGITS


DRAW_DIGITS:
        STA $45                            ; SAVE NUMBER TO CONVERT TO TILES IN $45
        LDA #$02                        ; SET BUFFER LENGTH TO 2 
        PHA
        AND #$3F                        ; SET MAX LENGTH TO = 63 BYTES
        CLC                            ; IS LENGTH + CURRENT LENGTH > 63 BYTES 
        ADC $037D                        ; 
        CMP #$3F                        ; 
        BCS EXIT2                        ; YES->LOOP BACK TO WAIT FOR BUFFER TO BE READY
        SEC                            ; SET BUFFER STATUS TO NOT READY
        ROR $2B                                ;                    
        TXA                            ; SAVE PPU ADDRESS IN BUFFER ADDR
        LDX $037D                        ;
        STA $033C,X                        ;
        TYA                            ;
        STA $033B,X                        ;
        PLA                            ; SAVE DATA LENGTH IN BUFFER LENGTH 
        STA $033A,X                        ;
        INX                            ; SET X TO BUFFER DATA LOCATION
        INX                            ;
        INX
        CLC
        LDA $45
        JSR $D5F8                        ; CONVERT HIGH DIGIT TO TILE AND SAVE IN BUFFER(A= NUM)
        LDA $45                            ;
        JSR $D605                        ; CONVERT LOW DIGIT TO TILE AND SAVE IN BUFFER(A= NUM)
        JSR $D2C8                        ; SET CURRENT BUFFER LOCATION AS END AND SET BUFFER TO 
EXIT:
        JMP $8264                    
        
EXIT2:    
        PLA
        JMP $8264

 

Link to comment
Share on other sites

  • 2 weeks later...

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...