vo_fbdev_ucos.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 527 行
MID
527 行
.file 1 "vo_fbdev_ucos.c" .section .mdebug.abi32 .previous .section .text.draw_osd,"ax",@progbits .align 2 .align 5 .ent draw_osd .type draw_osd, @functiondraw_osd: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 nop .set macro .set reorder .end draw_osd .section .text.flip_page,"ax",@progbits .align 2 .align 5 .ent flip_page .type flip_page, @functionflip_page: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 nop .set macro .set reorder .end flip_page .section .text.draw_frame,"ax",@progbits .align 2 .align 5 .ent draw_frame .type draw_frame, @functiondraw_frame: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 move $2,$0 .set macro .set reorder .end draw_frame .section .text.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 nop .set macro .set reorder .end uninit .section .text.check_events,"ax",@progbits .align 2 .align 5 .ent check_events .type check_events, @functioncheck_events: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro j $31 nop .set macro .set reorder .end check_events .section .text.preinit,"ax",@progbits .align 2 .align 5 .ent preinit .type preinit, @functionpreinit: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lui $2,%hi(pre_init_err) sw $0,%lo(pre_init_err)($2) j $31 move $2,$0 .set macro .set reorder .end preinit .section .text.control,"ax",@progbits .align 2 .align 5 .ent control .type control, @functioncontrol: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro li $2,2 # 0x2 sw $6,8($sp) sw $7,12($sp) beq $4,$2,$L15 move $6,$5 li $2,9 # 0x9 beq $4,$2,$L16 li $3,-3 # 0xfffffffffffffffd$L17: j $31 move $2,$3$L15: lw $5,0($5) li $3,-256 # 0xffffffffffffff00 li $2,1111949312 # 0x42470000 and $3,$5,$3 ori $2,$2,0x5200 beq $3,$2,$L27 andi $3,$5,0xff$L18: move $3,$0$L28: j $31 move $2,$3$L16: lw $4,4($5) li $3,-193 # 0xffffffffffffff3f li $2,1111949312 # 0x42470000 and $4,$4,$3 ori $2,$2,0x5220 bne $4,$2,$L28 move $3,$0 lbu $2,2($5) addiu $2,$2,-1 andi $2,$2,0x00ff sltu $2,$2,2 beq $2,$0,$L28 nop lhu $7,0($5) andi $2,$7,0x300 bne $2,$0,$L28 nop lui $2,%hi(center) lui $3,%hi(fb_line_len) lw $5,%lo(center)($2) lw $4,%lo(fb_line_len)($3) ori $2,$7,0x2000 li $3,1 # 0x1 sh $2,0($6) sw $5,32($6) j $L17 sw $4,48($6)$L27: li $2,32 # 0x20 bne $3,$2,$L18 li $3,1027 # 0x403 j $31 move $2,$3 .set macro .set reorder .end control .section .text.draw_slice,"ax",@progbits .align 2 .align 5 .ent draw_slice .type draw_slice, @functiondraw_slice: .frame $sp,56,$31 # vars= 0, regs= 10/0, args= 16, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-56 sw $23,44($sp) sw $22,40($sp) sw $18,24($sp) sw $31,52($sp) sw $fp,48($sp) sw $21,36($sp) sw $20,32($sp) sw $19,28($sp) sw $17,20($sp) sw $16,16($sp) lui $22,%hi(fb_line_len) lui $2,%hi(center) move $23,$5 lw $17,0($4) move $18,$7 lw $5,%lo(center)($2) .set noreorder .set nomacro beq $7,$0,$L30 lw $4,%lo(fb_line_len)($22) .set macro .set reorder lw $3,76($sp) lw $2,72($sp) mul $7,$4,$3 sll $19,$6,2 sll $2,$2,2 addu $3,$7,$2 sltu $20,$19,32 li $2,-32 # 0xffffffffffffffe0 addu $16,$3,$5 and $fp,$19,$2 .set noreorder .set nomacro bne $20,$0,$L33 andi $21,$19,0x3 .set macro .set reorder$L52: andi $2,$16,0x3 .set noreorder .set nomacro bne $2,$0,$L54 move $4,$16 .set macro .set reorder andi $2,$17,0x3 .set noreorder .set nomacro bne $2,$0,$L55 move $5,$17 .set macro .set reorder addiu $5,$16,-4 addu $3,$5,$fp sltu $2,$5,$3 .set noreorder .set nomacro beq $2,$0,$L37 addiu $4,$17,-4 .set macro .set reorder$L47:#APP S32LDI xr1,$4,4 S32LDI xr2,$4,4 S32LDI xr3,$4,4 S32LDI xr4,$4,4 S32LDI xr5,$4,4 S32LDI xr6,$4,4 S32LDI xr7,$4,4 S32LDI xr8,$4,4 S32SDI xr1,$5,4 S32SDI xr2,$5,4 S32SDI xr3,$5,4 S32SDI xr4,$5,4 S32SDI xr5,$5,4 S32SDI xr6,$5,4 S32SDI xr7,$5,4 S32SDI xr8,$5,4#NO_APP sltu $2,$5,$3 bne $2,$0,$L47$L37: andi $2,$19,0x1c addu $6,$3,$2 sltu $3,$5,$6 .set noreorder .set nomacro beq $3,$0,$L56 li $2,2 # 0x2 .set macro .set reorder$L48:#APP S32LDI xr1,$4,4 S32SDI xr1,$5,4#NO_APP sltu $2,$5,$6 .set noreorder .set nomacro bne $2,$0,$L48 li $2,2 # 0x2 .set macro .set reorder$L56: .set noreorder .set nomacro beq $21,$2,$L43 li $2,3 # 0x3 .set macro .set reorder .set noreorder .set nomacro beq $21,$2,$L44 li $2,1 # 0x1 .set macro .set reorder beq $21,$2,$L51$L41: addiu $18,$18,-1 lw $2,%lo(fb_line_len)($22) .set noreorder .set nomacro beq $18,$0,$L30 lw $3,0($23) .set macro .set reorder$L53: addu $16,$16,$2 .set noreorder .set nomacro beq $20,$0,$L52 addu $17,$17,$3 .set macro .set reorder$L33: move $4,$16$L54: move $5,$17$L55: move $6,$19 .set noreorder .set nomacro jal memcpy addiu $18,$18,-1 .set macro .set reorder lw $2,%lo(fb_line_len)($22) .set noreorder .set nomacro bne $18,$0,$L53 lw $3,0($23) .set macro .set reorder$L30: lw $31,52($sp) lw $fp,48($sp) lw $23,44($sp) lw $22,40($sp) lw $21,36($sp) lw $20,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$0 .set noreorder .set nomacro j $31 addiu $sp,$sp,56 .set macro .set reorder$L43: lbu $2,4($4) sb $2,4($5) lbu $3,5($4) .set noreorder .set nomacro j $L41 sb $3,5($5) .set macro .set reorder$L44: lbu $2,4($4) sb $2,4($5) lbu $3,5($4) sb $3,5($5) lbu $2,6($4) .set noreorder .set nomacro j $L41 sb $2,6($5) .set macro .set reorder$L51: lbu $2,4($4) .set noreorder .set nomacro j $L41 sb $2,4($5) .set macro .set reorder .end draw_slice .section .text.config,"ax",@progbits .align 2 .align 5 .ent config .type config, @functionconfig: .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 .mask 0x80030000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 lui $3,%hi(image_height) lui $2,%hi(image_width) sw $31,24($sp) sw $17,20($sp) sw $16,16($sp) sw $5,%lo(image_height)($3) jal lcd_get_width sw $4,%lo(image_width)($2) lui $17,%hi(fb_line_len) sll $2,$2,2 jal lcd_get_frame sw $2,%lo(fb_line_len)($17) lw $3,%lo(fb_line_len)($17) jal lcd_get_height addu $16,$2,$3 srl $2,$2,1 addu $16,$16,$2 lui $2,%hi(center) sw $16,%lo(center)($2) lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$0 j $31 addiu $sp,$sp,32 .set macro .set reorder .end config .globl video_out_fbucos .data .align 2 .type video_out_fbucos, @object .size video_out_fbucos, 40video_out_fbucos: .word info .word preinit .word config .word control .word draw_frame .word draw_slice .word draw_osd .word flip_page .word check_events .word uninit .align 2 .type pre_init_err, @object .size pre_init_err, 4pre_init_err: .word -2 .local image_width .comm image_width,4,4 .local image_height .comm image_height,4,4 .local fb_line_len .comm fb_line_len,4,4 .local center .comm center,4,4 .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "Null video output\000" .align 2$LC1: .ascii "null\000" .align 2$LC2: .ascii "Aaron Holtzman <aholtzma@ess.engr.uvic.ca>\000" .subsection -1 .align 2$LC3: .ascii "\000" .data .align 2 .type info, @object .size info, 16info: .word $LC0 .word $LC1 .word $LC2 .word $LC3 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?