blank.s

来自「symbian 的一个 二维飞行游戏 源码 及相关技术文章」· S 代码 · 共 30 行

S
30
字号
@@  Copyright 2002 Kenneth Guy,
@@  
        	.global	BlankAsm__12RScreenUtilsUs
BlankAsm__12RScreenUtilsUs:
        @@ r0, TScreenUtils* this
               @  0 - iScreenBase 
        @@ r1, colour
        
        @@ save registers and return address on full declining stack 
        stmfd   sp!, {r0-r12,lr}
        ldr     r0,[r0]         @ r0 = iScreenBase
        orr     r1,r1,r1,lsl #16 @ Setup 8 registers = 16 pixels
        mov     r2,r1           
        mov     r3,r1          
        mov     r4,r1
        mov     r5,r1
        mov     r6,r1
        mov     r7,r1
        mov     r8,r1

        mov     r9,#8000                @ loop 8000 times
blankloop:
        stmia   r0!,{r1-r8}     @ write registers to screen, increment r0 afterwards
        subs    r9,r9,#1
        bne     blankloop       @ loop till r9 = 0

        ldmfd   sp!, {r0-r12,lr}
        bx      lr

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?