📄 sp5xdec.mid
字号:
.file 1 "sp5xdec.c" .section .mdebug.abi32 .previous .section .text.sp5x_decode_frame,"ax",@progbits .align 2 .align 5 .ent sp5x_decode_frame .type sp5x_decode_frame, @functionsp5x_decode_frame: .frame $sp,64,$31 # vars= 0, regs= 9/0, args= 24, gp= 0 .mask 0x80ff0000,-8 .fmask 0x00000000,0 addiu $sp,$sp,-64 sw $21,44($sp) sw $20,40($sp) sw $19,36($sp) sw $18,32($sp) sw $17,28($sp) sw $31,56($sp) sw $23,52($sp) sw $22,48($sp) sw $16,24($sp) lw $2,40($4) move $17,$4 move $20,$5 move $21,$6 move $19,$7 .set noreorder .set nomacro bne $2,$0,$L74 lw $18,80($sp) .set macro .set reorder$L2: li $16,-1 # 0xffffffffffffffff$L86: move $2,$16$L82: lw $31,56($sp) lw $23,52($sp) lw $22,48($sp) lw $21,44($sp) lw $20,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) .set noreorder .set nomacro j $31 addiu $sp,$sp,64 .set macro .set reorder$L74: lw $2,44($4) .set noreorder .set nomacro beq $2,$0,$L86 li $16,-1 # 0xffffffffffffffff .set macro .set reorder addiu $23,$18,1024 .set noreorder .set nomacro jal av_mallocz move $4,$23 .set macro .set reorder .set noreorder .set nomacro beq $2,$0,$L2 move $22,$2 .set macro .set reorder addiu $16,$2,2 li $3,-1 li $4,-40 andi $2,$16,0x3 sb $3,0($22) .set noreorder .set nomacro bne $2,$0,$L53 sb $4,1($22) .set macro .set reorder lui $5,%hi(sp5x_data_dqt) addiu $3,$5,%lo(sp5x_data_dqt) andi $2,$3,0x3 .set noreorder .set nomacro beq $2,$0,$L75 addiu $4,$22,-2 .set macro .set reorder$L6: addiu $5,$5,%lo(sp5x_data_dqt) move $4,$16 .set noreorder .set nomacro jal memcpy li $6,134 # 0x86 .set macro .set reorder$L13: addiu $4,$16,5 andi $2,$4,0x3 .set noreorder .set nomacro bne $2,$0,$L14 lui $5,%hi(sp5x_quant_table+640) .set macro .set reorder addiu $6,$5,%lo(sp5x_quant_table+640) andi $2,$6,0x3 .set noreorder .set nomacro beq $2,$0,$L76 addiu $3,$16,1 .set macro .set reorder$L14: addiu $5,$5,%lo(sp5x_quant_table+640) .set noreorder .set nomacro jal memcpy li $6,64 # 0x40 .set macro .set reorder$L17: addiu $4,$16,70$L85: andi $2,$4,0x3 .set noreorder .set nomacro bne $2,$0,$L20 lui $5,%hi(sp5x_quant_table+704) .set macro .set reorder addiu $3,$5,%lo(sp5x_quant_table+704) andi $2,$3,0x3 beq $2,$0,$L77$L20: addiu $5,$5,%lo(sp5x_quant_table+704) .set noreorder .set nomacro jal memcpy li $6,64 # 0x40 .set macro .set reorder$L23: addiu $4,$22,136$L84: andi $2,$4,0x3 .set noreorder .set nomacro bne $2,$0,$L26 lui $5,%hi(sp5x_data_dht) .set macro .set reorder addiu $6,$5,%lo(sp5x_data_dht) andi $2,$6,0x3 .set noreorder .set nomacro beq $2,$0,$L78 addiu $3,$22,132 .set macro .set reorder$L26: addiu $5,$5,%lo(sp5x_data_dht) .set noreorder .set nomacro jal memcpy li $6,420 # 0x1a4 .set macro .set reorder addiu $16,$22,556$L83: lui $5,%hi(sp5x_data_sof)$L89: addiu $5,$5,%lo(sp5x_data_sof) move $4,$16 .set noreorder .set nomacro jal memcpy li $6,19 # 0x13 .set macro .set reorder lw $3,672($17) lui $5,%hi(sp5x_data_sos) sb $3,6($16) lw $2,672($17) addiu $5,$5,%lo(sp5x_data_sos) sra $2,$2,8 sb $2,5($16) lw $3,668($17) addiu $4,$22,575 sb $3,8($16) lw $2,668($17) li $6,14 # 0xe sra $2,$2,8 .set noreorder .set nomacro jal memcpy sb $2,7($16) .set macro .set reorder lw $3,228($17) li $2,111 # 0x6f .set noreorder .set nomacro beq $3,$2,$L79 slt $2,$18,15 .set macro .set reorder .set noreorder .set nomacro bne $2,$0,$L87 li $3,589 # 0x24d .set macro .set reorder addiu $8,$18,1022 slt $2,$8,590 .set noreorder .set nomacro bne $2,$0,$L87 move $7,$19 .set macro .set reorder li $6,14 # 0xe li $5,589 # 0x24d .set noreorder .set nomacro j $L45 li $9,255 # 0xff .set macro .set reorder$L46: .set noreorder .set nomacro beq $18,$6,$L58 slt $2,$5,$8 .set macro .set reorder .set noreorder .set nomacro beq $2,$0,$L88 move $3,$5 .set macro .set reorder$L45: lbu $2,14($7) addu $3,$22,$5 sb $2,0($3) lbu $4,14($7) addiu $5,$5,1 addiu $6,$6,1 addiu $7,$7,1 .set noreorder .set nomacro bne $4,$9,$L46 addu $2,$22,$5 .set macro .set reorder addiu $5,$5,1 .set noreorder .set nomacro j $L46 sb $0,0($2) .set macro .set reorder$L58: move $3,$5$L88: addiu $2,$5,1 addiu $8,$5,2$L43: addu $4,$22,$3 addu $5,$22,$2 li $3,-39 li $2,-1 sb $2,0($4) move $6,$21 sb $3,0($5) move $4,$17 move $5,$20 move $7,$22 .set noreorder .set nomacro jal ff_mjpeg_decode_frame sw $8,16($sp) .set macro .set reorder move $4,$22 .set noreorder .set nomacro jal av_free move $16,$2 .set macro .set reorder .set noreorder .set nomacro j $L82 move $2,$16 .set macro .set reorder$L79: addiu $2,$18,-2 slt $2,$2,3 .set noreorder .set nomacro bne $2,$0,$L35 addiu $6,$18,1022 .set macro .set reorder slt $2,$6,590 .set noreorder .set nomacro bne $2,$0,$L35 li $5,589 # 0x24d .set macro .set reorder .set noreorder .set nomacro j $L40 addiu $7,$18,585 .set macro .set reorder$L81: .set noreorder .set nomacro beq $5,$6,$L80 move $3,$5 .set macro .set reorder$L40: addu $2,$19,$5 lbu $4,-587($2) addu $3,$22,$5 addiu $5,$5,1 .set noreorder .set nomacro bne $5,$7,$L81 sb $4,0($3) .set macro .set reorder move $3,$5 addiu $8,$18,587 .set noreorder .set nomacro j $L43 addiu $2,$18,586 .set macro .set reorder$L53: .set noreorder .set nomacro j $L6 lui $5,%hi(sp5x_data_dqt) .set macro .set reorder$L35: li $3,589 # 0x24d$L87: li $2,590 # 0x24e .set noreorder .set nomacro j $L43 li $8,591 # 0x24f .set macro .set reorder$L80: addiu $2,$18,1023 .set noreorder .set nomacro j $L43 move $8,$23 .set macro .set reorder$L75: addiu $5,$22,126 sltu $2,$4,$5 .set noreorder .set nomacro beq $2,$0,$L9 addiu $3,$3,-4 .set macro .set reorder$L59:#APP S32LDI xr1,$3,4 S32LDI xr2,$3,4 S32LDI xr3,$3,4 S32LDI xr4,$3,4 S32LDI xr5,$3,4 S32LDI xr6,$3,4 S32LDI xr7,$3,4 S32LDI xr8,$3,4 S32SDI xr1,$4,4 S32SDI xr2,$4,4 S32SDI xr3,$4,4 S32SDI xr4,$4,4 S32SDI xr5,$4,4 S32SDI xr6,$4,4 S32SDI xr7,$4,4 S32SDI xr8,$4,4#NO_APP sltu $2,$4,$5 bne $2,$0,$L59$L9: addiu $5,$5,4 sltu $2,$4,$5 beq $2,$0,$L11$L60:#APP S32LDI xr1,$3,4 S32SDI xr1,$4,4#NO_APP sltu $2,$4,$5 bne $2,$0,$L60$L11: lbu $2,4($3) sb $2,4($4) lbu $3,5($3) .set noreorder .set nomacro j $L13 sb $3,5($4) .set macro .set reorder$L78: addiu $5,$22,548 sltu $2,$3,$5 .set noreorder .set nomacro beq $2,$0,$L29 addiu $4,$6,-4 .set macro .set reorder$L61:#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,$3,4 S32SDI xr2,$3,4 S32SDI xr3,$3,4 S32SDI xr4,$3,4 S32SDI xr5,$3,4 S32SDI xr6,$3,4 S32SDI xr7,$3,4 S32SDI xr8,$3,4#NO_APP sltu $2,$3,$5 bne $2,$0,$L61$L29: addiu $5,$5,4 sltu $2,$3,$5 .set noreorder .set nomacro beq $2,$0,$L83 addiu $16,$22,556 .set macro .set reorder$L62:#APP S32LDI xr1,$4,4 S32SDI xr1,$3,4#NO_APP sltu $2,$3,$5 .set noreorder .set nomacro bne $2,$0,$L62 addiu $16,$22,556 .set macro .set reorder .set noreorder .set nomacro j $L89 lui $5,%hi(sp5x_data_sof) .set macro .set reorder$L77: addiu $5,$16,130 addiu $4,$16,66 sltu $2,$4,$5 .set noreorder .set nomacro beq $2,$0,$L23 addiu $3,$3,-4 .set macro .set reorder$L25:#APP S32LDI xr1,$3,4 S32LDI xr2,$3,4 S32LDI xr3,$3,4 S32LDI xr4,$3,4 S32LDI xr5,$3,4 S32LDI xr6,$3,4 S32LDI xr7,$3,4 S32LDI xr8,$3,4 S32SDI xr1,$4,4 S32SDI xr2,$4,4 S32SDI xr3,$4,4 S32SDI xr4,$4,4 S32SDI xr5,$4,4 S32SDI xr6,$4,4 S32SDI xr7,$4,4 S32SDI xr8,$4,4#NO_APP sltu $2,$4,$5 bne $2,$0,$L25 .set noreorder .set nomacro j $L84 addiu $4,$22,136 .set macro .set reorder$L76: addiu $5,$16,65 sltu $2,$3,$5 .set noreorder .set nomacro beq $2,$0,$L17 addiu $4,$6,-4 .set macro .set reorder$L19:#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,$3,4 S32SDI xr2,$3,4 S32SDI xr3,$3,4 S32SDI xr4,$3,4 S32SDI xr5,$3,4 S32SDI xr6,$3,4 S32SDI xr7,$3,4 S32SDI xr8,$3,4#NO_APP sltu $2,$3,$5 bne $2,$0,$L19 .set noreorder .set nomacro j $L85 addiu $4,$16,70 .set macro .set reorder .end sp5x_decode_frame .globl sp5x_decoder .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "sp5x\000" .data .align 2 .type sp5x_decoder, @object .size sp5x_decoder, 52sp5x_decoder: .word $LC0 .word 0 .word 11 .word 4592 .word ff_mjpeg_decode_init .word 0 .word ff_mjpeg_decode_end .word sp5x_decode_frame .word 2 .word 0 .space 12 .globl amv_decoder .section .rodata.str1.4 .align 2$LC1: .ascii "amv\000" .data .align 2 .type amv_decoder, @object .size amv_decoder, 52amv_decoder: .word $LC1 .word 0 .word 111 .word 4592 .word ff_mjpeg_decode_init .word 0 .word ff_mjpeg_decode_end .word sp5x_decode_frame .word 2 .space 16 .rdata .align 2 .type sp5x_data_dqt, @object .size sp5x_data_dqt, 134sp5x_data_dqt: .byte -1 .byte -37 .byte 0 .byte -124 .byte 0 .byte 5 .byte 3 .byte 4 .byte 4 .byte 4 .byte 3 .byte 5 .byte 4 .byte 4 .byte 4 .byte 6 .byte 5 .byte 5 .byte 6 .byte 8 .byte 13 .byte 8 .byte 8 .byte 7 .byte 7 .byte 8 .byte 16 .byte 12 .byte 12 .byte 10 .byte 13 .byte 20 .byte 17 .byte 21 .byte 20 .byte 19 .byte 17 .byte 19 .byte 19 .byte 22 .byte 24 .byte 31 .byte 26 .byte 22 .byte 23 .byte 30 .byte 23 .byte 19 .byte 19 .byte 27 .byte 37 .byte 28 .byte 30 .byte 32 .byte 33 .byte 35 .byte 35 .byte 35 .byte 21 .byte 26 .byte 39 .byte 41 .byte 38 .byte 34 .byte 41 .byte 31 .byte 34 .byte 35 .byte 34 .byte 1 .byte 5 .byte 6 .byte 6 .byte 8 .byte 7 .byte 8 .byte 16 .byte 8 .byte 8 .byte 16 .byte 34 .byte 22 .byte 19 .byte 22 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .byte 34 .align 2 .type sp5x_quant_table, @object .size sp5x_quant_table, 1280sp5x_quant_table: .byte 16 .byte 11 .byte 12 .byte 14 .byte 12 .byte 10 .byte 16 .byte 14 .byte 13 .byte 14 .byte 18 .byte 17 .byte 16 .byte 19 .byte 24 .byte 40 .byte 26 .byte 24 .byte 22 .byte 22 .byte 24 .byte 49 .byte 35 .byte 37 .byte 29 .byte 40 .byte 58 .byte 51 .byte 61 .byte 60 .byte 57 .byte 51 .byte 56 .byte 55 .byte 64 .byte 72 .byte 92 .byte 78 .byte 64 .byte 68 .byte 87 .byte 69 .byte 55 .byte 56 .byte 80 .byte 109 .byte 81 .byte 87 .byte 95 .byte 98 .byte 103 .byte 104 .byte 103 .byte 62 .byte 77 .byte 113 .byte 121 .byte 112 .byte 100 .byte 120 .byte 92 .byte 101 .byte 103 .byte 99 .byte 17 .byte 18 .byte 18 .byte 24 .byte 21 .byte 24 .byte 47 .byte 26 .byte 26 .byte 47 .byte 99 .byte 66 .byte 56 .byte 66 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 99 .byte 10 .byte 7 .byte 7 .byte 8 .byte 7 .byte 6 .byte 10 .byte 8 .byte 8 .byte 8 .byte 11 .byte 10 .byte 10 .byte 11 .byte 14 .byte 24 .byte 16 .byte 14 .byte 13 .byte 13 .byte 14 .byte 29 .byte 21 .byte 22 .byte 17 .byte 24 .byte 35 .byte 31 .byte 37 .byte 36 .byte 34 .byte 31 .byte 34 .byte 33 .byte 38 .byte 43 .byte 55 .byte 47 .byte 38 .byte 41 .byte 52 .byte 41 .byte 33 .byte 34 .byte 48 .byte 65 .byte 49 .byte 52 .byte 57 .byte 59 .byte 62 .byte 62 .byte 62 .byte 37 .byte 46 .byte 68 .byte 73 .byte 67 .byte 60 .byte 72 .byte 55 .byte 61 .byte 62 .byte 59 .byte 10 .byte 11 .byte 11 .byte 14 .byte 13 .byte 14 .byte 28 .byte 16 .byte 16 .byte 28 .byte 59 .byte 40 .byte 34 .byte 40 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 59 .byte 6 .byte 4 .byte 5 .byte 6 .byte 5 .byte 4 .byte 6 .byte 6 .byte 5 .byte 6 .byte 7 .byte 7 .byte 6 .byte 8 .byte 10 .byte 16 .byte 10 .byte 10 .byte 9 .byte 9 .byte 10 .byte 20 .byte 14 .byte 15 .byte 12 .byte 16 .byte 23 .byte 20 .byte 24 .byte 24 .byte 23 .byte 20 .byte 22 .byte 22 .byte 26 .byte 29 .byte 37 .byte 31 .byte 26 .byte 27 .byte 35 .byte 28 .byte 22 .byte 22 .byte 32 .byte 44 .byte 32 .byte 35 .byte 38 .byte 39 .byte 41 .byte 42 .byte 41 .byte 25 .byte 31 .byte 45 .byte 48 .byte 45 .byte 40 .byte 48 .byte 37 .byte 40 .byte 41 .byte 40 .byte 7 .byte 7 .byte 7 .byte 10 .byte 8 .byte 10 .byte 19 .byte 10 .byte 10 .byte 19 .byte 40 .byte 26 .byte 22 .byte 26 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 40 .byte 5 .byte 3 .byte 4 .byte 4 .byte 4 .byte 3 .byte 5 .byte 4 .byte 4 .byte 4 .byte 5 .byte 5 .byte 5 .byte 6 .byte 7 .byte 12 .byte 8 .byte 7 .byte 7 .byte 7 .byte 7 .byte 15 .byte 11 .byte 11 .byte 9 .byte 12 .byte 17 .byte 15 .byte 18 .byte 18 .byte 17 .byte 15 .byte 17 .byte 17 .byte 19 .byte 22 .byte 28 .byte 23 .byte 19 .byte 20 .byte 26 .byte 21 .byte 17 .byte 17 .byte 24 .byte 33 .byte 24 .byte 26 .byte 29 .byte 29 .byte 31 .byte 31 .byte 31 .byte 19 .byte 23 .byte 34 .byte 36 .byte 34 .byte 30 .byte 36 .byte 28 .byte 30 .byte 31 .byte 30 .byte 5 .byte 5 .byte 5 .byte 7 .byte 6 .byte 7 .byte 14 .byte 8 .byte 8 .byte 14 .byte 30 .byte 20 .byte 17 .byte 20 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30 .byte 30
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -