Fun LED stuff

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Program3_F20_Leong.s

Committer:
kkleong
Date:
2020-11-15
Revision:
0:e579c6f35abf
Child:
2:1be4e7457636

File content as of revision 0:e579c6f35abf:

                    AREA Program3, CODE, READONLY
                    GLOBAL getQuad
                    ; uint32_t getQuad ( uint16_t x, uint16_t y)
getQuad             CMP R0, #125
                    MOVLT R0, #1
                    MOVGT R0, #2
                    CMP R1, #160
                    ADDGT R0, R0, #2
                    BX LR
                    
                    GLOBAL swapRedBlue
                    ; uint32_t swapRedBlue ( uint32_t color)
swapRedBlue         MOV R1, R0
                    MOV R2, R0
                    MOV R3, R0
                    MOV R4, R0
                    
                    LSL R1, R1, #24
                    LSR R1, R1, #8
                    
                    LSL R2, R2, #8
                    LSR R2, R2, #24
                    
                    LSR R3, R3, #24
                    LSL R3, R3, #24
                    
                    LSL R4, R4, #16
                    LSR R4, R4, #24
                    LSL R4, R4, #8
                    
                    ORR R5, R1, R2
                    ORR R6, R3, R4
                    ORR R0, R5, R6
                    BX LR
                    
                    GLOBAL toggleAlphaMSB
                    ; uint32_t toggleAlphaMSB ( uint32_t color)
toggleAlphaMSB      MVN R1, R0
                    LSR R1, R1, #24
                    LSL R1, R1, #24 
                    LSL R0, R0, #8
                    LSR R0, R0, #8
                    ORR R0, R0, R1
                           
                    BX LR
                    
                    GLOBAL rotateRGBBytes
                    ; uint32_t rotateRGBBytes ( uint32_t color)
rotateRGBBytes             
                    BX LR
                    
                    GLOBAL setRGBBits
                    ;  uint32_t setRGBBits ( uint32_t color, uint8_t n)  
setRGBBits             
                    BX LR
                
        
                    END