nuv.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 901 行
MID
901 行
.file 1 "nuv.c" .section .mdebug.abi32 .previous .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "Video packet in file without video stream!\012\000" .align 2$LC1: .ascii "Audio packet in file without audio stream!\012\000" .section .text.nuv_packet,"ax",@progbits .align 2 .align 5 .ent nuv_packet .type nuv_packet, @functionnuv_packet: .frame $sp,64,$31 # vars= 16, regs= 8/0, args= 16, gp= 0 .mask 0x807f0000,-4 .fmask 0x00000000,0 addiu $sp,$sp,-64 sw $22,56($sp) sw $21,52($sp) sw $20,48($sp) sw $16,32($sp) sw $31,60($sp) sw $19,44($sp) sw $18,40($sp) sw $17,36($sp) lw $19,12($4) move $20,$4 move $22,$5 addiu $16,$4,16 addiu $21,$sp,16$L46: .set noreorder .set nomacro jal url_feof move $4,$16 .set macro .set reorder bne $2,$0,$L48$L3: lw $2,8($19) li $6,12 # 0xc li $18,12 # 0xc move $4,$16 move $5,$21 .set noreorder .set nomacro jal get_buffer movz $18,$0,$2 .set macro .set reorder .set noreorder .set nomacro blez $2,$L49 move $6,$2 .set macro .set reorder lbu $3,27($sp) lbu $2,26($sp) lbu $5,24($sp) sll $2,$2,16 sll $3,$3,24 lbu $4,25($sp) or $3,$3,$2 or $3,$3,$5 sll $4,$4,8 li $2,16711680 # 0xff0000 lbu $5,16($sp) or $4,$4,$3 ori $2,$2,0xffff li $3,68 # 0x44 .set noreorder .set nomacro beq $5,$3,$L13 and $17,$4,$2 .set macro .set reorder sltu $2,$5,69 .set noreorder .set nomacro beq $2,$0,$L15 li $2,82 # 0x52 .set macro .set reorder li $2,65 # 0x41 .set noreorder .set nomacro beq $5,$2,$L50 move $4,$16 .set macro .set reorder$L53: move $6,$17 .set noreorder .set nomacro jal url_fskip move $7,$0 .set macro .set reorder .set noreorder .set nomacro jal url_feof move $4,$16 .set macro .set reorder beq $2,$0,$L3$L48: li $6,-5 # 0xfffffffffffffffb$L9: lw $31,60($sp)$L55: lw $22,56($sp) lw $21,52($sp) lw $20,48($sp) lw $19,44($sp) lw $18,40($sp) lw $17,36($sp) lw $16,32($sp) move $2,$6 .set noreorder .set nomacro j $31 addiu $sp,$sp,64 .set macro .set reorder$L15: .set noreorder .set nomacro beq $5,$2,$L46 li $2,86 # 0x56 .set macro .set reorder .set noreorder .set nomacro bne $5,$2,$L53 move $4,$16 .set macro .set reorder lw $2,0($19) .set noreorder .set nomacro bgez $2,$L17 lui $6,%hi($LC0) .set macro .set reorder$L54: addiu $6,$6,%lo($LC0)$L45: move $4,$20 .set noreorder .set nomacro jal av_log move $5,$0 .set macro .set reorder move $6,$17 move $7,$0 .set noreorder .set nomacro jal url_fskip move $4,$16 .set macro .set reorder j $L46$L13: lw $2,8($19) .set noreorder .set nomacro beq $2,$0,$L53 move $4,$16 .set macro .set reorder lw $2,0($19) .set noreorder .set nomacro bltz $2,$L54 lui $6,%hi($LC0) .set macro .set reorder$L17: move $4,$22 .set noreorder .set nomacro jal av_new_packet addu $5,$18,$17 .set macro .set reorder .set noreorder .set nomacro bltz $2,$L9 move $6,$2 .set macro .set reorder .set noreorder .set nomacro jal url_ftell move $4,$16 .set macro .set reorder lbu $8,23($sp) lbu $4,22($sp) lbu $5,20($sp) lbu $9,21($sp) sll $4,$4,16 sll $8,$8,24 or $8,$8,$4 or $8,$8,$5 subu $4,$2,$18 move $7,$0 sll $9,$9,8 or $9,$9,$8 subu $5,$3,$7 sltu $8,$2,$4 lw $10,0($19) subu $5,$5,$8 sra $2,$9,31 sltu $3,$18,32 sw $4,48($22) sw $5,52($22) sw $2,4($22) sw $10,24($22) sw $9,0($22) .set noreorder .set nomacro bne $3,$0,$L20 lw $4,16($22) .set macro .set reorder andi $2,$4,0x3 beq $2,$0,$L52$L20: move $5,$21 .set noreorder .set nomacro jal memcpy move $6,$18 .set macro .set reorder$L28: lw $5,16($22) move $6,$17 move $4,$16 .set noreorder .set nomacro jal get_buffer addu $5,$18,$5 .set macro .set reorder .set noreorder .set nomacro j $L9 move $6,$2 .set macro .set reorder$L50: lw $2,4($19) bgez $2,$L32 lui $6,%hi($LC1) .set noreorder .set nomacro j $L45 addiu $6,$6,%lo($LC1) .set macro .set reorder$L49: .set noreorder .set nomacro bne $2,$0,$L55 lw $31,60($sp) .set macro .set reorder li $6,-1 # 0xffffffffffffffff lw $22,56($sp) lw $21,52($sp) lw $20,48($sp) lw $19,44($sp) lw $18,40($sp) lw $17,36($sp) lw $16,32($sp) move $2,$6 .set noreorder .set nomacro j $31 addiu $sp,$sp,64 .set macro .set reorder$L52: addiu $4,$4,-4 addu $6,$4,$18 sltu $3,$4,$6 .set noreorder .set nomacro beq $3,$0,$L26 addiu $5,$sp,12 .set macro .set reorder$L40:#APP S32LDI xr1,$5,4 S32SDI xr1,$4,4#NO_APP sltu $2,$4,$6 bne $2,$0,$L40$L26: andi $3,$18,0x3 li $2,3 # 0x3 .set noreorder .set nomacro beq $3,$2,$L31 li $2,1 # 0x1 .set macro .set reorder bne $3,$2,$L28 lbu $2,4($5) .set noreorder .set nomacro j $L28 sb $2,4($4) .set macro .set reorder$L32: move $4,$16 move $6,$17 .set noreorder .set nomacro jal av_get_packet move $5,$22 .set macro .set reorder move $6,$2 lbu $3,22($sp) lbu $2,23($sp) lbu $4,21($sp) lbu $5,20($sp) sll $3,$3,16 sll $2,$2,24 or $2,$2,$3 or $2,$2,$5 sll $4,$4,8 or $4,$4,$2 lw $3,4($19) sra $2,$4,31 sw $3,24($22) sw $2,4($22) .set noreorder .set nomacro j $L9 sw $4,0($22) .set macro .set reorder$L31: lbu $2,4($5) sb $2,4($4) lbu $3,5($5) sb $3,5($4) lbu $2,6($5) .set noreorder .set nomacro j $L28 sb $2,6($4) .set macro .set reorder .end nuv_packet .section .rodata.str1.4 .align 2$LC2: .ascii "NuppelVideo\000" .align 2$LC3: .ascii "MythTVVideo\000" .section .text.nuv_probe,"ax",@progbits .align 2 .align 5 .ent nuv_probe .type nuv_probe, @functionnuv_probe: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,20($sp) sw $16,16($sp) lw $16,4($4) lui $5,%hi($LC2) addiu $5,$5,%lo($LC2) move $4,$16 jal memcmp li $6,12 # 0xc lui $5,%hi($LC3) move $4,$16 addiu $5,$5,%lo($LC3) bne $2,$0,$L62 li $6,12 # 0xc$L57: li $3,100 # 0x64 lw $31,20($sp)$L63: lw $16,16($sp) move $2,$3 j $31 addiu $sp,$sp,24$L62: jal memcmp nop beq $2,$0,$L57 move $3,$0 j $L63 lw $31,20($sp) .set macro .set reorder .end nuv_probe .section .text.nuv_header,"ax",@progbits .align 2 .align 5 .ent nuv_header .type nuv_header, @functionnuv_header: .frame $sp,120,$31 # vars= 56, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-120 sw $31,116($sp) sw $fp,112($sp) sw $23,108($sp) sw $22,104($sp) sw $21,100($sp) sw $19,92($sp) sw $18,88($sp) sw $16,80($sp) sw $20,96($sp) sw $17,84($sp) move $21,$4 addiu $18,$4,16 addiu $16,$sp,29 lw $2,12($21) move $5,$16 li $6,12 # 0xc move $4,$18 jal get_buffer sw $2,72($sp) lui $5,%hi($LC3) move $4,$16 addiu $5,$5,%lo($LC3) jal memcmp li $6,12 # 0xc sltu $2,$2,1 addiu $5,$sp,24 li $6,5 # 0x5 move $4,$18 jal get_buffer sw $2,56($sp) li $6,3 # 0x3 move $7,$0 jal url_fskip move $4,$18 jal get_le32 move $4,$18 move $4,$18 jal get_le32 sw $2,76($sp) move $4,$18 jal get_le32 move $fp,$2 jal get_le32 move $4,$18 jal get_byte move $4,$18 li $6,3 # 0x3 move $7,$0 jal url_fskip move $4,$18 jal get_le64 move $4,$18 move $5,$3 jal av_int2dbl move $4,$2 move $4,$18 move $22,$2 jal get_le64 move $23,$3 move $5,$3 jal av_int2dbl move $4,$2 move $4,$18 sw $3,68($sp) jal get_le32 sw $2,64($sp) move $4,$18 jal get_le32 move $16,$2 move $4,$18 jal get_le32 move $19,$2 jal get_le32 move $4,$18 bne $16,$0,$L98 lw $3,72($sp) li $2,-1 # 0xffffffffffffffff sw $2,0($3) move $20,$0 move $2,$0$L67: bne $19,$0,$L99 lw $4,72($sp) li $2,-1 # 0xffffffffffffffff sw $2,4($4) bne $20,$0,$L96 move $22,$0 j $L103 lw $2,56($sp)$L102: li $2,88 # 0x58 beq $3,$2,$L78 li $2,68 # 0x44 beq $3,$2,$L101 li $6,7 # 0x7 move $7,$0 jal url_fskip move $4,$18 jal get_le32 move $4,$18 li $3,16711680 # 0xff0000 ori $3,$3,0xffff and $2,$2,$3 move $6,$2 move $7,$0$L79: jal url_fskip move $4,$18$L96: jal url_feof move $4,$18 bne $2,$0,$L73 nop jal get_byte move $4,$18 li $16,82 # 0x52 bne $2,$16,$L102 move $3,$2 li $6,11 # 0xb j $L79 move $7,$0$L78: li $6,7 # 0x7 move $7,$0 jal url_fskip move $4,$18 jal get_le32 move $4,$18 li $3,16711680 # 0xff0000 ori $3,$3,0xffff and $3,$2,$3 li $2,512 # 0x200 beq $3,$2,$L85 move $6,$3 j $L79 move $7,$0$L101: jal get_byte move $4,$18 move $4,$18 li $6,6 # 0x6 move $7,$0 jal url_fskip move $19,$2 jal get_le32 move $4,$18 li $3,16711680 # 0xff0000 ori $3,$3,0xffff beq $20,$0,$L97 and $17,$2,$3 beq $19,$16,$L82 move $4,$17$L97: move $6,$17 j $L79 move $7,$0$L87: move $4,$18 jal url_fskip move $7,$0$L89: beq $22,$0,$L91 move $4,$18 lw $16,8($22) jal get_le32 move $4,$18 sw $2,232($16) lw $17,8($22) jal get_le32 move $4,$18 sw $2,64($17) lw $16,8($22) jal get_le32 move $4,$18 sw $2,392($16) move $4,$18 jal get_le32 lw $17,8($22) lw $16,8($22) sw $2,68($17) lw $4,232($16) jal wav_codec_get_id lw $5,392($16) sw $2,228($16) li $2,1 # 0x1 sw $2,108($22) move $4,$18$L105: li $6,488 # 0x1e8 jal url_fskip move $7,$0$L73: lw $4,8($20)$L104: move $2,$0 lw $3,228($4) lw $4,72($sp) xori $3,$3,0x57 sltu $3,$3,1 sw $3,8($4) lw $31,116($sp) lw $fp,112($sp) lw $23,108($sp) lw $22,104($sp) lw $21,100($sp) lw $20,96($sp) lw $19,92($sp) lw $18,88($sp) lw $17,84($sp) lw $16,80($sp) j $31 addiu $sp,$sp,120$L82: lw $16,8($20) jal av_malloc sw $17,28($16) lw $3,8($20) sw $2,24($16) lw $5,24($3) move $6,$17 jal get_buffer move $4,$18 lw $3,56($sp) beq $3,$0,$L73 move $6,$0 j $L79 move $7,$0$L99: lw $3,72($sp) move $4,$21 move $5,$2 jal av_new_stream sw $2,4($3) lw $5,8($2) move $22,$2 li $2,16 # 0x10 sw $2,392($5) li $3,1 # 0x1 li $2,65536 # 0x10000 sw $3,224($5) sw $2,228($5) li $3,2 # 0x2 li $2,1376256 # 0x150000 sw $3,68($5) li $4,44100 # 0xac44 ori $2,$2,0x8880 li $3,4 # 0x4 sw $4,64($5) sw $2,4($5) sw $3,272($5) move $4,$22 li $5,32 # 0x20 li $6,1 # 0x1 jal av_set_pts_info li $7,1000 # 0x3e8 bne $20,$0,$L96 lw $2,56($sp)$L103: bne $2,$0,$L96 nop j $L104 lw $4,8($20)$L98: move $5,$0 sw $0,0($3) jal av_new_stream move $4,$21 lw $16,8($2) move $20,$2 lw $4,76($sp) li $2,87 # 0x57 sw $2,228($16) addiu $17,$sp,48 li $2,10 # 0xa sw $4,40($16) sw $2,392($16) sw $fp,44($16) li $2,10000 # 0x2710 sw $0,224($16) move $6,$22 move $7,$23 move $4,$17 jal av_d2q sw $2,16($sp) lw $3,52($sp) lw $2,48($sp) lw $6,64($sp) lw $7,68($sp) sw $2,400($16) sw $3,404($16) li $2,60000 # 0xea60 move $4,$17 jal av_d2q sw $2,16($sp) lw $2,48($sp) lw $3,52($sp) move $4,$20 sw $2,12($20) sw $3,16($20) li $5,32 # 0x20 li $6,1 # 0x1 jal av_set_pts_info li $7,1000 # 0x3e8 j $L67 li $2,1 # 0x1$L85: jal get_le32 move $4,$18 beq $20,$0,$L87 li $6,4 # 0x4 lw $16,8($20) jal get_le32 move $4,$18 lw $17,8($20) sw $2,232($16) lw $5,232($17) lui $4,%hi(codec_bmp_tags) jal codec_get_id addiu $4,$4,%lo(codec_bmp_tags) lw $4,8($20) sw $2,228($17) lw $3,232($4) li $2,1196425216 # 0x47500000 ori $2,$2,0x4a52 bne $3,$2,$L89 li $2,87 # 0x57 j $L89 sw $2,228($4)$L91: li $6,16 # 0x10 jal url_fskip move $7,$0 j $L105 move $4,$18 .set macro .set reorder .end nuv_header .globl nuv_demuxer .section .rodata.str1.4 .align 2$LC4: .ascii "nuv\000" .align 2$LC5: .ascii "NuppelVideo format\000" .data .align 2 .type nuv_demuxer, @object .size nuv_demuxer, 64nuv_demuxer: .word $LC4 .word $LC5 .word 12 .word nuv_probe .word nuv_header .word nuv_packet .word 0 .word 0 .space 32 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?