2 .global SnesScreenClear32
3 .global SnesScreenClear8
6 ;@ r0 = pointer to screen
7 ;@ r1 = number of lines to update
11 mov r3,r2 ;@ copy the back colour to 7 other regs
19 stmia r0!,{r2-r9} ;@ now store 8*2 pixels in 1 opcode
20 stmia r0!,{r2-r9} ;@ do this 16 times, which equals 256 pixels
21 stmia r0!,{r2-r9} ;@ which is the length of a snes rendered line on the GP2X
37 ;@ if we need to loop again, then push screen pointer to start of next line
38 addne r0,r0,#640-(256*2) ;@ RealPitch(640) -
43 ;@ r0 = pointer to screen
44 ;@ r1 = number of lines to update
48 mov r3,r2 ;@ copy the back colour to 7 other regs
56 stmia r0!,{r2-r9} ;@ now store 8*2 pixels in 1 opcode
57 stmia r0!,{r2-r9} ;@ do this 8 times, which equals 256 8bit pixels
58 stmia r0!,{r2-r9} ;@ which is the length of a snes rendered line on the GP2X
67 ;@ if we need to loop again, then push screen pointer to start of next line
68 addne r0,r0,#320-256 ;@ ZPitch(320) -