gxf.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 1,973 行 · 第 1/2 页
MID
1,973 行
.file 1 "gxf.c" .section .mdebug.abi32 .previous .section .text.parse_packet_header,"ax",@progbits .align 2 .align 5 .ent parse_packet_header .type parse_packet_header, @functionparse_packet_header: .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $18,24($sp) sw $17,20($sp) sw $16,16($sp) sw $31,28($sp) move $16,$4 move $18,$6 jal get_be32 move $17,$5 beq $2,$0,$L12 move $4,$16$L2: move $2,$0$L9: lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32$L12: jal get_byte nop li $3,1 # 0x1 bne $2,$3,$L2 move $4,$16 jal get_byte nop sw $2,0($17) jal get_be32 move $4,$16 move $3,$2 sra $2,$2,24 slt $5,$3,16 bne $2,$0,$L2 sw $3,0($18) addiu $2,$3,-16 bne $5,$0,$L2 move $4,$16 jal get_be32 sw $2,0($18) bne $2,$0,$L2 move $4,$16 jal get_byte nop li $3,225 # 0xe1 bne $2,$3,$L2 move $4,$16 jal get_byte nop xori $2,$2,0xe2 j $L9 sltu $2,$2,1 .set macro .set reorder .end parse_packet_header .section .text.gxf_resync_media,"ax",@progbits .align 2 .align 5 .ent gxf_resync_media .type gxf_resync_media, @functiongxf_resync_media: .frame $sp,88,$31 # vars= 24, regs= 10/0, args= 24, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-88 sw $19,60($sp) addiu $19,$4,16 move $4,$19 sw $fp,80($sp) sw $23,76($sp) sw $22,72($sp) sw $21,68($sp) sw $20,64($sp) sw $17,52($sp) sw $16,48($sp) sw $31,84($sp) sw $18,56($sp) lw $fp,104($sp) lw $21,108($sp) move $16,$6 jal get_be32 move $17,$7 move $20,$2 li $3,-2147483648 # 0xffffffff80000000 move $2,$0 move $22,$0 move $23,$0 sw $2,32($sp) sw $3,36($sp)$L41: bne $20,$0,$L48 addiu $2,$16,-1 addiu $4,$16,-1$L49: sltu $2,$4,$16 addiu $5,$17,-1 addu $5,$2,$5 li $2,-1 # 0xffffffffffffffff move $16,$4 beq $4,$2,$L42 move $17,$5$L22: jal url_feof move $4,$19 bne $2,$0,$L46 or $2,$22,$23 jal get_byte move $4,$19 move $18,$2 move $20,$2 li $2,1 # 0x1 bne $18,$2,$L41 nop jal url_ftell move $4,$19 li $6,-5 # 0xfffffffffffffffb move $4,$19 li $7,-1 # 0xffffffffffffffff sw $2,40($sp) sw $3,44($sp) jal url_fseek sw $18,16($sp) move $4,$19 addiu $5,$sp,28 jal parse_packet_header addiu $6,$sp,24 beq $2,$0,$L30 lw $3,28($sp) li $2,191 # 0xbf beq $3,$2,$L43 nop$L30: lw $6,40($sp)$L47: lw $7,44($sp)$L51: move $4,$19 jal url_fseek sw $0,16($sp) beq $20,$0,$L49 addiu $4,$16,-1 addiu $2,$16,-1$L48: sltu $4,$2,$16 addiu $3,$17,-1 addu $3,$4,$3 move $16,$2 li $2,-1 # 0xffffffffffffffff beq $16,$2,$L45 move $17,$3$L18: jal url_feof move $4,$19 bne $2,$0,$L46 or $2,$22,$23 jal get_byte move $4,$19 sll $3,$20,8 j $L41 or $20,$3,$2$L42: bne $5,$2,$L22 nop$L16: or $2,$22,$23$L46: beq $2,$0,$L50 lw $2,32($sp) move $4,$19 move $6,$22 move $7,$23 jal url_fseek sw $0,16($sp) lw $2,32($sp)$L50: lw $3,36($sp) lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j $31 addiu $sp,$sp,88$L45: bne $3,$2,$L18 or $2,$22,$23 j $L46 nop$L43: jal get_byte move $4,$19 jal get_byte move $4,$19 move $4,$19 jal get_be32 move $18,$2 move $4,$19 move $3,$0 sw $2,32($sp) jal url_ftell sw $3,36($sp) addiu $4,$2,-22 sltu $6,$4,$2 addiu $5,$3,-1 addu $5,$6,$5 move $22,$4 bltz $fp,$L28 move $23,$5 bne $18,$fp,$L47 lw $6,40($sp)$L28: bltz $21,$L16 lw $3,36($sp) sra $5,$21,31 slt $2,$3,$5 bne $2,$0,$L47 lw $6,40($sp) bne $3,$5,$L46 or $2,$22,$23 lw $3,32($sp) sltu $2,$3,$21 beq $2,$0,$L46 or $2,$22,$23 j $L51 lw $7,44($sp) .set macro .set reorder .end gxf_resync_media .section .text.gxf_read_timestamp,"ax",@progbits .align 2 .align 5 .ent gxf_read_timestamp .type gxf_read_timestamp, @functiongxf_read_timestamp: .frame $sp,48,$31 # vars= 0, regs= 6/0, args= 24, gp= 0 .mask 0x801f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-48 sw $31,44($sp) sw $20,40($sp) sw $19,36($sp) sw $18,32($sp) sw $17,28($sp) move $18,$6 sw $16,24($sp) lw $7,4($18) lw $6,0($6) addiu $20,$4,16 move $19,$4 move $4,$20 lw $16,64($sp) lw $17,68($sp) jal url_fseek sw $0,16($sp) lw $8,0($18) lw $9,4($18) subu $6,$16,$8 subu $7,$17,$9 sltu $2,$16,$6 subu $2,$7,$2 move $4,$19 move $7,$2 li $2,-1 # 0xffffffffffffffff sw $2,20($sp) jal gxf_resync_media sw $2,16($sp) move $4,$20 move $16,$2 jal url_ftell move $17,$3 sw $2,0($18) sw $3,4($18) move $2,$16 move $3,$17 lw $31,44($sp) lw $20,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,48 .set macro .set reorder .end gxf_read_timestamp .section .text.gxf_seek,"ax",@progbits .align 2 .align 5 .ent gxf_seek .type gxf_seek, @functiongxf_seek: .frame $sp,48,$31 # vars= 0, regs= 6/0, args= 24, gp= 0 .mask 0x801f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-48 sll $5,$5,2 sw $20,40($sp) sw $31,44($sp) sw $19,36($sp) sw $18,32($sp) sw $17,28($sp) sw $16,24($sp) addu $5,$5,$4 lw $2,100($5) move $20,$4 lw $17,92($2) lw $16,88($2) slt $2,$7,$17 lw $18,100($4) move $5,$17 bne $2,$0,$L55 move $4,$16 beq $7,$17,$L70 sltu $2,$6,$16 move $16,$6 move $17,$7$L55: subu $6,$16,$4 sltu $2,$16,$6 subu $7,$17,$5 subu $7,$7,$2 move $4,$18 li $2,5 # 0x5 jal av_index_search_timestamp sw $2,16($sp) bltz $2,$L57 move $6,$2 lw $3,148($18) sll $4,$2,3 lw $5,144($18) sll $2,$2,5 subu $2,$2,$4 addiu $3,$3,-2 addu $4,$5,$2 slt $3,$6,$3 lw $8,0($4) beq $3,$0,$L71 lw $9,4($4) lw $2,48($4) lw $3,52($4) subu $4,$2,$8 sltu $6,$2,$4 subu $5,$3,$9 subu $5,$5,$6 move $18,$4 bgtu $5,$0,$L61 move $19,$5 beq $5,$0,$L72 li $2,196608 # 0x30000 li $18,196608 # 0x30000$L74: ori $18,$18,0x2000 j $L61 move $19,$0$L71: li $18,104857600 # 0x6400000 move $19,$0$L61: move $6,$8 move $7,$9 addiu $4,$20,16 jal url_fseek sw $0,16($sp) move $4,$20 move $6,$18 move $7,$19 li $2,-1 # 0xffffffffffffffff sw $2,16($sp) jal gxf_resync_media sw $16,20($sp) subu $4,$2,$16 sltu $6,$2,$4 subu $5,$3,$17 subu $5,$5,$6 move $7,$5 blez $5,$L73 move $6,$4$L57: lw $31,44($sp)$L77: lw $20,40($sp) lw $19,36($sp)$L79: lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) li $2,-1 # 0xffffffffffffffff j $31 addiu $sp,$sp,48$L73: bne $5,$0,$L75 subu $2,$0,$6 bleu $4,$0,$L76 subu $3,$0,$7$L64: bgtz $7,$L77 lw $31,44($sp) bne $7,$0,$L78 lw $20,40($sp) sltu $2,$6,5 beq $2,$0,$L79 lw $19,36($sp) lw $31,44($sp) lw $20,40($sp)$L78: lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) move $2,$0 j $31 addiu $sp,$sp,48$L70: bne $2,$0,$L55 nop move $16,$6 j $L55 move $17,$7$L72: ori $2,$2,0x2000 sltu $2,$2,$4 bne $2,$0,$L61 nop j $L74 li $18,196608 # 0x30000$L75: subu $3,$0,$7$L76: sltu $4,$0,$2 subu $3,$3,$4 move $6,$2 j $L64 move $7,$3 .set macro .set reorder .end gxf_seek .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "GXF: too many index entries %u (%x)\012\000" .align 2$LC1: .ascii "GXF: invalid index length\012\000" .section .text.gxf_read_index,"ax",@progbits .align 2 .align 5 .ent gxf_read_index .type gxf_read_index, @functiongxf_read_index: .frame $sp,88,$31 # vars= 8, regs= 10/0, args= 40, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-88 sw $31,84($sp) sw $23,76($sp) sw $22,72($sp) sw $21,68($sp) sw $18,56($sp) sw $17,52($sp) sw $16,48($sp) sw $fp,80($sp) sw $20,64($sp) sw $19,60($sp) move $17,$4 addiu $22,$4,16 lw $2,100($17) move $4,$22 move $16,$5 jal get_le32 sw $2,40($sp) move $4,$22 jal get_le32 move $18,$2 move $21,$2 sltu $2,$2,1001 beq $2,$0,$L81 addiu $23,$16,-8 sll $fp,$21,2$L83: sltu $2,$23,$fp beq $2,$0,$L84 lw $4,40($sp) lui $6,%hi($LC1) move $4,$17 addiu $6,$6,%lo($LC1) jal av_log move $5,$0 move $6,$23 sra $7,$23,31 move $4,$22 lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) j url_fskip addiu $sp,$sp,88$L84: move $6,$0 move $7,$0 sw $6,16($sp) sw $7,20($sp) sw $0,24($sp) sw $0,28($sp) jal av_add_index_entry sw $0,32($sp) beq $21,$0,$L86 move $20,$0 move $16,$18 move $17,$0 li $18,1 # 0x1 move $19,$0$L88: jal get_le32 move $4,$22 move $3,$0 srl $4,$2,22 sll $3,$3,10 or $3,$4,$3 sll $2,$2,10 lw $4,40($sp) move $6,$2 move $7,$3 sw $18,16($sp) sw $19,20($sp) sw $0,24($sp) sw $0,28($sp) jal av_add_index_entry sw $0,32($sp) addu $4,$18,$16 sltu $2,$4,$18 addu $5,$19,$17 addu $5,$2,$5 addiu $20,$20,1 move $18,$4 bne $20,$21,$L88 move $19,$5$L86: subu $6,$23,$fp move $4,$22 lw $31,84($sp) lw $fp,80($sp) lw $23,76($sp) lw $22,72($sp) lw $21,68($sp) lw $20,64($sp) lw $19,60($sp) lw $18,56($sp) lw $17,52($sp) lw $16,48($sp) sra $7,$6,31 j url_fskip addiu $sp,$sp,88$L81: lui $6,%hi($LC0) move $7,$21 addiu $6,$6,%lo($LC0) move $4,$17 move $5,$0 sw $21,16($sp) jal av_log li $fp,4000 # 0xfa0 j $L83 li $21,1000 # 0x3e8 .set macro .set reorder .end gxf_read_index .section .rodata.str1.4 .align 2$LC2: .ascii "GXF: map packet not found\012\000" .align 2$LC3: .ascii "GXF: unknown version or invalid map preamble\012\000" .align 2$LC4: .ascii "GXF: material data longer than map data\012\000" .align 2$LC5: .ascii "GXF: track description longer than map data\012\000" .align 2$LC6: .ascii "GXF: invalid track type %x\012\000" .align 2$LC7: .ascii "GXF: invalid track id %x\012\000" .align 2$LC8: .ascii "GXF: invalid track description length specified\012\000" .align 2$LC9: .ascii "GXF: sync lost in header\012\000" .align 2$LC10: .ascii "GXF: UMF packet too short\012\000" .align 2$LC11: .ascii "GXF: UMF packet missing\012\000" .section .text.gxf_header,"ax",@progbits .align 2 .align 5 .ent gxf_header .type gxf_header, @functiongxf_header: .frame $sp,112,$31 # vars= 56, regs= 10/0, args= 16, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-112 sw $21,92($sp) sw $18,80($sp) addiu $21,$sp,16 addiu $18,$4,16 sw $20,88($sp) move $5,$21 move $20,$4 addiu $6,$sp,20 move $4,$18 sw $31,108($sp) sw $fp,104($sp) sw $23,100($sp) sw $22,96($sp) sw $19,84($sp) sw $17,76($sp) jal parse_packet_header sw $16,72($sp) beq $2,$0,$L94 lw $3,16($sp) li $2,188 # 0xbc beq $3,$2,$L96 lw $2,20($sp)$L94: lui $6,%hi($LC2) move $4,$20 addiu $6,$6,%lo($LC2) jal av_log move $5,$0 move $2,$0$L97: lw $31,108($sp) lw $fp,104($sp) lw $23,100($sp) lw $22,96($sp) lw $21,92($sp) lw $20,88($sp) lw $19,84($sp) lw $18,80($sp) lw $17,76($sp) lw $16,72($sp) j $31 addiu $sp,$sp,112$L96: move $4,$18 addiu $2,$2,-2 jal get_byte sw $2,20($sp) li $3,224 # 0xe0 beq $2,$3,$L207 lui $6,%hi($LC3)$L226: move $4,$20 addiu $6,$6,%lo($LC3) jal av_log move $5,$0 j $L97 move $2,$0$L207: jal get_byte move $4,$18 li $3,255 # 0xff bne $2,$3,$L226 lui $6,%hi($LC3) lw $2,20($sp) move $4,$18 addiu $2,$2,-2 jal get_be16 sw $2,20($sp) lw $3,20($sp) move $5,$2 sw $2,24($sp) slt $2,$3,$2 bne $2,$0,$L208 move $4,$0 subu $2,$3,$5 li $5,-2147483648 # 0xffffffff80000000 sw $4,48($sp) sw $5,52($sp) sw $4,40($sp) sw $5,44($sp) sw $2,20($sp)$L205: lw $5,24($sp)$L230: slt $2,$5,2 bne $2,$0,$L227 move $6,$5$L104: jal get_byte move $4,$18 move $4,$18 jal get_byte move $16,$2 lw $5,24($sp) move $3,$2 addiu $5,$5,-2 slt $2,$5,$2 bne $2,$0,$L105 sw $5,24($sp) subu $5,$5,$3 li $2,4 # 0x4 beq $3,$2,$L209 sw $5,24($sp) move $6,$3 sra $7,$3,31 jal url_fskip move $4,$18 lw $5,24($sp) slt $2,$5,2 beq $2,$0,$L104 nop$L105: move $6,$5$L227: sra $7,$5,31 jal url_fskip move $4,$18 lw $2,20($sp) move $4,$18 addiu $2,$2,-2 jal get_be16 sw $2,20($sp) lw $3,20($sp) move $5,$2 sw $2,24($sp) slt $2,$3,$2 bne $2,$0,$L210 lui $6,%hi($LC5) subu $2,$3,$5 sw $0,32($sp) sw $0,36($sp) sw $2,20($sp)$L206: lw $2,24($sp)$L221: blez $2,$L211 addiu $5,$2,-4 move $4,$18 jal get_byte sw $5,24($sp) move $4,$18 jal get_byte move $23,$2 move $4,$18 jal get_be16 move $22,$2 move $16,$2 lw $2,24($sp) lui $3,%hi(ff_frame_rate_tab) subu $5,$2,$16 addiu $fp,$3,%lo(ff_frame_rate_tab) sw $0,64($sp) sw $0,60($sp) sw $0,56($sp) sw $5,24($sp)$L116: slt $2,$16,2 bne $2,$0,$L228 move $6,$16 jal get_byte move $4,$18 move $4,$18 move $19,$2 jal get_byte addiu $16,$16,-2 move $17,$2 slt $2,$16,$2 bne $2,$0,$L118 li $2,4 # 0x4 beq $17,$2,$L212 move $6,$17 sra $7,$17,31 jal url_fskip move $4,$18$L127: j $L116 subu $16,$16,$17$L212: jal get_be32 move $4,$18 move $3,$2 li $2,80 # 0x50 beq $19,$2,$L213 li $2,82 # 0x52 bne $19,$2,$L127 addiu $2,$3,-1 sltu $2,$2,2 beq $2,$0,$L127 nop subu $16,$16,$17 j $L116 sw $3,64($sp)$L118: move $6,$16$L228: sra $7,$16,31 jal url_fskip move $4,$18 andi $2,$23,0x80 beq $2,$0,$L214 andi $3,$22,0xc0 li $2,192 # 0xc0 beq $3,$2,$L132 lui $6,%hi($LC7)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?