vf_crop.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 731 行
S
731 行
.file 1 "vf_crop.c".section .mdebug.abi32.previous.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "%d:%d:%d:%d\000".align 2$LC1:.ascii "Crop: %d x %d, %d ; %d\012\000".section .text.vf_open,"ax",@progbits.align 2.align 5.ent vf_open.type vf_open, @functionvf_open:.frame $sp,48,$31 # vars= 0, regs= 3/0, args= 32, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-48sw $16,32($sp)li $3,1024 # 0x400move $16,$4sw $17,36($sp)sw $31,40($sp)lui $2,%hi(config)sw $3,44($16)lui $3,%hi(put_image)addiu $2,$2,%lo(config)addiu $3,$3,%lo(put_image)lw $8,100($4)sw $2,4($16)sw $3,20($16)lui $2,%hi(start_slice)lui $3,%hi(draw_slice)addiu $2,$2,%lo(start_slice)addiu $3,$3,%lo(draw_slice)li $4,16 # 0x10sw $2,24($16)sw $3,28($16)beq $8,$0,$L8move $17,$5$L2:lui $5,%hi($LC0)move $6,$8move $4,$17addiu $5,$5,%lo($LC0)addiu $2,$8,8addiu $3,$8,12beq $17,$0,$L4addiu $7,$8,4sw $2,16($sp)jal sscanfsw $3,20($sp)lw $8,100($16)$L4:lw $2,4($8)lw $7,0($8)sw $2,16($sp)lw $3,8($8)lui $6,%hi($LC1)sw $3,20($sp)lw $2,12($8)addiu $6,$6,%lo($LC1)li $4,29 # 0x1dli $5,4 # 0x4jal mp_msgsw $2,24($sp)lw $31,40($sp)lw $17,36($sp)lw $16,32($sp)li $2,1 # 0x1j $31addiu $sp,$sp,48$L8:jal uc_mallocnopmove $8,$2li $2,-1 # 0xffffffffffffffffsw $2,8($8)sw $2,4($8)sw $2,0($8)sw $2,12($8)j $L2sw $8,100($16).set macro.set reorder.end vf_open.section .text.draw_slice,"ax",@progbits.align 2.align 5.ent draw_slice.type draw_slice, @functiondraw_slice:.frame $sp,56,$31 # vars= 16, regs= 1/0, args= 32, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-56sw $31,48($sp)lw $12,96($4)lw $3,0($5)lhu $2,0($12)move $13,$4andi $2,$2,0x100sw $3,32($sp)move $14,$6beq $2,$0,$L10lw $9,72($sp)lw $2,8($5)lw $3,4($5)sw $2,40($sp)sw $3,36($sp)$L10:lw $10,100($13)lw $2,76($sp)lw $3,8($10)subu $11,$2,$3bltz $11,$L28lw $2,80($sp)lw $3,12($10)subu $8,$2,$3bltz $8,$L29nop$L16:lw $4,0($10)lw $5,4($10)addu $2,$7,$11slt $2,$4,$2addu $3,$9,$8subu $4,$4,$11slt $3,$5,$3movn $7,$4,$2subu $5,$5,$8bltz $7,$L27movn $9,$5,$3bltz $9,$L27move $4,$13move $6,$14addiu $5,$sp,32sw $9,16($sp)sw $11,20($sp)jal vf_next_draw_slicesw $8,24($sp)$L27:lw $31,48($sp)j $31addiu $sp,$sp,56$L28:lw $2,32($sp)lhu $3,0($12)subu $5,$0,$11addu $2,$2,$5andi $3,$3,0x100bne $3,$0,$L30sw $2,32($sp)subu $7,$7,$5move $11,$0$L32:lw $3,12($10)lw $2,80($sp)subu $8,$2,$3bgez $8,$L16nop$L29:lw $2,0($14)subu $8,$0,$8mul $5,$8,$2lw $3,32($sp)lhu $4,0($12)addu $2,$5,$3andi $4,$4,0x100bne $4,$0,$L31sw $2,32($sp)subu $9,$9,$8j $L16move $8,$0$L31:lw $4,100($12)lw $5,8($14)sra $4,$8,$4mul $3,$4,$5lw $2,40($sp)lw $6,4($14)addu $5,$3,$2mul $2,$4,$6lw $3,36($sp)subu $9,$9,$8addu $4,$2,$3move $8,$0sw $4,36($sp)j $L16sw $5,40($sp)$L30:lw $2,96($12)lw $4,40($sp)lw $3,36($sp)sra $2,$5,$2addu $4,$4,$2addu $3,$3,$2subu $7,$7,$5move $11,$0sw $3,36($sp)j $L32sw $4,40($sp).set macro.set reorder.end draw_slice.section .text.start_slice,"ax",@progbits.align 2.align 5.ent start_slice.type start_slice, @functionstart_slice:.frame $sp,32,$31 # vars= 0, regs= 2/0, args= 24, gp= 0.mask 0x80010000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-32sw $31,28($sp)sw $16,24($sp)lw $8,100($4)lhu $7,0($5)lw $2,0($8)move $16,$4sw $2,16($sp)lw $2,4($5)lbu $6,2($5)lw $4,92($4)lw $3,4($8)move $5,$2jal vf_get_imagesw $3,20($sp)sw $2,96($16)lw $31,28($sp)lw $16,24($sp)j $31addiu $sp,$sp,32.set macro.set reorder.end start_slice.section .text.put_image,"ax",@progbits.align 2.align 5.ent put_image.type put_image, @functionput_image:.frame $sp,48,$31 # vars= 0, regs= 5/0, args= 24, gp= 0.mask 0x800f0000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-48sw $19,36($sp)sw $18,32($sp)sw $17,28($sp)sw $16,24($sp)sw $31,40($sp)lhu $2,0($5)move $16,$5andi $2,$2,0x1000move $17,$4move $18,$6beq $2,$0,$L36move $19,$7lw $5,96($4)lw $31,40($sp)lw $19,36($sp)lw $18,32($sp)lw $17,28($sp)lw $16,24($sp)j vf_next_put_imageaddiu $sp,$sp,48$L36:lw $7,100($4)lw $5,4($5)lw $2,0($7)lw $4,92($4)sw $2,16($sp)lw $3,4($7)move $6,$0move $7,$0jal vf_get_imagesw $3,20($sp)move $8,$2lhu $2,0($16)andi $2,$2,0x100beq $2,$0,$L38noplw $4,100($17)lw $2,48($16)lw $3,12($4)lw $5,8($4)mul $4,$3,$2lw $6,32($16)lw $7,52($16)addu $2,$4,$6lw $6,100($16)addu $2,$2,$5sra $3,$3,$6mul $6,$3,$7sw $2,32($8)lw $2,36($16)lw $4,96($16)addu $2,$6,$2lw $6,56($16)sw $7,52($8)sra $5,$5,$4lw $4,56($16)addu $2,$2,$5sw $4,56($8)mul $4,$3,$6sw $2,36($8)lw $2,40($16)lw $6,48($16)addu $3,$4,$2addu $3,$3,$5sw $3,40($8)$L40:lw $2,8($16)sw $6,48($8)sw $2,8($8)move $4,$17move $6,$18move $7,$19lw $31,40($sp)lw $19,36($sp)lw $18,32($sp)lw $17,28($sp)lw $16,24($sp)move $5,$8j vf_next_put_imageaddiu $sp,$sp,48$L38:lw $5,100($17)lw $6,48($16)lw $2,12($5)lbu $3,3($16)mult $2,$6lw $4,8($5)srl $3,$3,3madd $3,$4lw $2,32($16)mflo $3addu $2,$2,$3sw $2,32($8)lw $3,36($16)j $L40sw $3,36($8).set macro.set reorder.end put_image.section .rodata.str1.4.align 2$LC2:.ascii "[CROP] Bad position/width/height - cropped area outside ".ascii "of the original!\012\000".section .text.config,"ax",@progbits.align 2.align 5.ent config.type config, @functionconfig:.frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0.mask 0x80000000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $31,16($sp)lw $8,100($4)move $10,$5lw $2,0($8)move $11,$6lw $12,40($sp)lw $13,44($sp)blez $2,$L45lw $9,48($sp)slt $2,$5,$2bne $2,$0,$L45nop$L47:lw $2,4($8)blez $2,$L48slt $2,$11,$2bne $2,$0,$L48noplw $2,8($8)bltz $2,$L73nop$L51:lw $2,12($8)bltz $2,$L74nop$L53:li $3,-256 # 0xffffffffffffff00$L80:li $2,1380384768 # 0x52470000and $3,$9,$3ori $2,$2,0x4200beq $3,$2,$L55li $2,1111949312 # 0x42470000ori $2,$2,0x5200beq $3,$2,$L55li $2,959447040 # 0x39300000ori $2,$2,0x4649beq $9,$2,$L60sltu $2,$2,$9beq $2,$0,$L75li $2,808452096 # 0x30300000li $2,1345388544 # 0x50310000ori $2,$2,0x3134beq $9,$2,$L61sltu $2,$2,$9bne $2,$0,$L64li $2,1345585152 # 0x50340000li $2,961871872 # 0x39550000ori $2,$2,0x5659beq $9,$2,$L60nop$L58:lw $2,8($8)li $3,-2 # 0xfffffffffffffffeand $2,$2,$3sw $2,8($8)$L55:lw $5,0($8)$L77:lw $2,8($8)addu $2,$5,$2slt $2,$10,$2bne $2,$0,$L79lui $6,%hi($LC2)lw $2,12($8)lw $6,4($8)addu $2,$6,$2slt $2,$11,$2beq $2,$0,$L76lui $2,%hi(opt_screen_size_x)lui $6,%hi($LC2)$L79:addiu $6,$6,%lo($LC2)li $4,29 # 0x1djal mp_msgli $5,2 # 0x2lw $31,16($sp)move $2,$0j $31addiu $sp,$sp,24$L48:lw $2,8($8)bgez $2,$L51sw $11,4($8)$L73:lw $3,0($8)subu $3,$10,$3srl $2,$3,31addu $2,$2,$3sra $2,$2,1sw $2,8($8)lw $2,12($8)bgez $2,$L80li $3,-256 # 0xffffffffffffff00$L74:lw $3,4($8)subu $3,$11,$3srl $2,$3,31addu $2,$2,$3sra $2,$2,1j $L53sw $2,12($8)$L45:j $L47sw $10,0($8)$L76:lw $3,%lo(opt_screen_size_x)($2)bne $3,$0,$L69noplui $2,%hi(opt_screen_size_y)lw $3,%lo(opt_screen_size_y)($2)bne $3,$0,$L69nopmul $2,$5,$7mul $3,$6,$12div $0,$2,$10teq $10,$0,7mflo $7div $0,$3,$11teq $11,$0,7mflo $12$L69:sw $12,40($sp)sw $13,44($sp)sw $9,48($sp)lw $31,16($sp)j vf_next_configaddiu $sp,$sp,24$L75:ori $2,$2,0x3859beq $9,$2,$L55sltu $2,$2,$9bne $2,$0,$L63li $2,808583168 # 0x30320000li $2,538968064 # 0x20200000ori $2,$2,0x3859bne $9,$2,$L58nopj $L77lw $5,0($8)$L60:lw $2,12($8)li $3,-4 # 0xfffffffffffffffcand $2,$2,$3sw $2,12($8)$L61:lw $2,8($8)li $3,-4 # 0xfffffffffffffffcand $2,$2,$3j $L55sw $2,8($8)$L64:ori $2,$2,0x3434beq $9,$2,$L55li $2,1448411136 # 0x56550000ori $2,$2,0x5949bne $9,$2,$L58nopj $L78lw $2,12($8)$L63:ori $2,$2,0x3449beq $9,$2,$L59li $2,842072064 # 0x32310000ori $2,$2,0x5659bne $9,$2,$L58nop$L59:lw $2,12($8)$L78:li $3,-2 # 0xfffffffffffffffeand $2,$2,$3j $L58sw $2,12($8).set macro.set reorder.end config.globl vf_info_crop.section .rodata.str1.4.align 2$LC3:.ascii "cropping\000".align 2$LC4:.ascii "crop\000".align 2$LC5:.ascii "A'rpi\000".subsection -1.align 2$LC6:.ascii "\000".data.align 2.type vf_info_crop, @object.size vf_info_crop, 24vf_info_crop:.word $LC3.word $LC4.word $LC5.word $LC6.word vf_open.word vf_opts.align 2.type vf_opts, @object.size vf_opts, 16vf_opts:.word $LC4.word 16.word vf_priv_dflt.word vf_opts_fields.rdata.align 2.type vf_priv_dflt, @object.size vf_priv_dflt, 16vf_priv_dflt:.word -1.word -1.word -1.word -1.section .rodata.str1.4.align 2$LC7:.ascii "w\000".align 2$LC8:.ascii "h\000".align 2$LC9:.ascii "x\000".align 2$LC10:.ascii "y\000".data.align 3.type vf_opts_fields, @object.size vf_opts_fields, 200vf_opts_fields:.word $LC7.word 0.word m_option_type_int.word 1.word 0.word 0.word 0.word 0.word 0.space 4.word $LC8.word 4.word m_option_type_int.word 1.word 0.word 0.word 0.word 0.word 0.space 4.word $LC9.word 8.word m_option_type_int.word 1.word 0.word -1074790400.word 0.word 0.word 0.space 4.word $LC10.word 12.word m_option_type_int.word 1.word 0.word -1074790400.word 0.word 0.word 0.space 4.word 0.word 0.word 0.word 0.word 0.word 0.word 0.word 0.word 0.space 4.ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?