vo_mpegpes.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 424 行
MID
424 行
.file 1 "vo_mpegpes.c" .section .mdebug.abi32 .previous .section .text.config,"ax",@progbits .align 2 .align 5 .ent config .type config, @functionconfig: .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 config .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_slice,"ax",@progbits .align 2 .align 5 .ent draw_slice .type draw_slice, @functiondraw_slice: .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_slice .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.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 li $8,-3 # 0xfffffffffffffffd sw $6,8($sp) beq $4,$2,$L19 sw $7,12($sp) j $31 move $2,$8$L19: lw $3,0($5) li $2,1297088512 # 0x4d500000 ori $2,$2,0x4553 xor $3,$3,$2 li $8,259 # 0x103 movn $8,$0,$3 j $31 move $2,$8 .set macro .set reorder .end control .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "grab.mpg\000" .align 2$LC1: .ascii "Saving PES stream to %s\012\000" .align 2$LC2: .ascii "rb\000" .section .text.preinit,"ax",@progbits .align 2 .align 5 .ent preinit .type preinit, @functionpreinit: .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 $16,16($sp) lui $6,%hi($LC1) move $16,$4 sw $31,20($sp) addiu $6,$6,%lo($LC1) li $5,4 # 0x4 beq $16,$0,$L27 li $4,3 # 0x3$L21: jal mp_msg move $7,$16 lui $5,%hi($LC2) move $4,$16 jal BUFF_Open addiu $5,$5,%lo($LC2) move $5,$2 slt $4,$2,0 lw $31,20($sp) li $2,-1 # 0xffffffffffffffff lw $16,16($sp) movz $2,$0,$4 lui $3,%hi(vo_mpegpes_fd) addiu $sp,$sp,24 j $31 sw $5,%lo(vo_mpegpes_fd)($3)$L27: lui $2,%hi($LC0) j $L21 addiu $16,$2,%lo($LC0) .set macro .set reorder .end preinit .section .text.send_lpcm_packet,"ax",@progbits .align 2 .align 5 .globl send_lpcm_packet .ent send_lpcm_packet .type send_lpcm_packet, @functionsend_lpcm_packet: .frame $sp,40,$31 # vars= 0, regs= 1/0, args= 32, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 lw $3,56($sp) lui $2,%hi(my_write) addiu $2,$2,%lo(my_write) sw $31,32($sp) sw $7,16($sp) sw $3,24($sp) sw $2,28($sp) jal send_mpeg_lpcm_packet sw $0,20($sp) lw $31,32($sp) j $31 addiu $sp,$sp,40 .set macro .set reorder .end send_lpcm_packet .section .text.my_write,"ax",@progbits .align 2 .align 5 .ent my_write .type my_write, @functionmy_write: .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) lui $2,%hi(vo_mpegpes_fd) move $16,$5 move $5,$4 lw $4,%lo(vo_mpegpes_fd)($2) jal write move $6,$16 move $2,$16 lw $31,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,24 .set macro .set reorder .end my_write .section .text.send_pes_packet,"ax",@progbits .align 2 .align 5 .globl send_pes_packet .ent send_pes_packet .type send_pes_packet, @functionsend_pes_packet: .frame $sp,40,$31 # vars= 0, regs= 1/0, args= 32, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sra $2,$7,31 sw $2,20($sp) lui $2,%hi(my_write) li $3,1 # 0x1 addiu $2,$2,%lo(my_write) sw $31,32($sp) sw $3,24($sp) sw $2,28($sp) jal send_mpeg_pes_packet sw $7,16($sp) lw $31,32($sp) j $31 addiu $sp,$sp,40 .set macro .set reorder .end send_pes_packet .section .text.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .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 sw $17,20($sp) lui $17,%hi(vo_mpegpes_fd2) lw $3,%lo(vo_mpegpes_fd2)($17) sw $16,16($sp) sw $31,24($sp) bltz $3,$L41 lui $16,%hi(vo_mpegpes_fd) lw $2,%lo(vo_mpegpes_fd)($16) beq $3,$2,$L35 move $4,$3 jal BUFF_Close nop lw $2,%lo(vo_mpegpes_fd)($16)$L35: li $16,-1 # 0xffffffffffffffff move $4,$2 bltz $2,$L40 sw $16,%lo(vo_mpegpes_fd2)($17) jal BUFF_Close nop lui $2,%hi(vo_mpegpes_fd) sw $16,%lo(vo_mpegpes_fd)($2)$L40: lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32$L41: j $L35 lw $2,%lo(vo_mpegpes_fd)($16) .set macro .set reorder .end uninit .section .text.draw_frame,"ax",@progbits .align 2 .align 5 .ent draw_frame .type draw_frame, @functiondraw_frame: .frame $sp,40,$31 # vars= 0, regs= 1/0, args= 32, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $31,32($sp) lw $2,0($4) lw $7,12($2) lw $4,0($2) lw $5,4($2) bgtz $7,$L43 lw $6,8($2) lui $2,%hi(vo_pts) lw $7,%lo(vo_pts)($2)$L43: li $2,1 # 0x1 sw $2,24($sp) lui $2,%hi(my_write) sra $3,$7,31 addiu $2,$2,%lo(my_write) sw $3,20($sp) sw $2,28($sp) jal send_mpeg_pes_packet sw $7,16($sp) lw $31,32($sp) move $2,$0 j $31 addiu $sp,$sp,40 .set macro .set reorder .end draw_frame .globl vo_mpegpes_fd .data .align 2 .type vo_mpegpes_fd, @object .size vo_mpegpes_fd, 4vo_mpegpes_fd: .word -1 .globl video_out_mpegpes .align 2 .type video_out_mpegpes, @object .size video_out_mpegpes, 40video_out_mpegpes: .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 .section .rodata.str1.4 .align 2$LC3: .ascii "Mpeg-PES file\000" .align 2$LC4: .ascii "mpegpes\000" .align 2$LC5: .ascii "A'rpi\000" .subsection -1 .align 2$LC6: .ascii "\000" .data .align 2 .type info, @object .size info, 16info: .word $LC3 .word $LC4 .word $LC5 .word $LC6 .ident "GCC: (GNU) 4.1.2"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?