vo_tga.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 574 行
MID
574 行
.file 1 "vo_tga.c" .section .mdebug.abi32 .previous .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 li $2,-1 # 0xffffffffffffffff .set macro .set reorder .end draw_slice .section .text.draw_frame,"ax",@progbits .align 2 .align 5 .ent draw_frame .type draw_frame, @functiondraw_frame: .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 li $2,-1 # 0xffffffffffffffff .set macro .set reorder .end draw_frame .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.uninit,"ax",@progbits .align 2 .align 5 .ent uninit .type uninit, @functionuninit: .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 $16,%hi(line_buff) lw $2,%lo(line_buff)($16) sw $31,20($sp) beq $2,$0,$L14 move $4,$2 jal uc_free nop sw $0,%lo(line_buff)($16)$L14: lw $31,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,24 .set macro .set reorder .end uninit .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC0: .ascii "%08d.tga\000" .align 2$LC1: .ascii "wb\000" .section .text.control,"ax",@progbits .align 2 .align 5 .ent control .type control, @functioncontrol: .frame $sp,96,$31 # vars= 40, regs= 10/0, args= 16, gp= 0 .mask 0xc0ff0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-96 li $2,2 # 0x2 sw $17,60($sp) sw $31,92($sp) sw $fp,88($sp) sw $23,84($sp) sw $22,80($sp) sw $21,76($sp) sw $20,72($sp) sw $19,68($sp) sw $18,64($sp) sw $16,56($sp) sw $6,104($sp) sw $7,108($sp) beq $4,$2,$L18 move $17,$5 li $2,13 # 0xd beq $4,$2,$L19 li $2,-3 # 0xfffffffffffffffd lw $31,92($sp) lw $fp,88($sp)$L70: lw $23,84($sp) lw $22,80($sp) lw $21,76($sp) lw $20,72($sp) lw $19,68($sp) lw $18,64($sp) lw $17,60($sp) lw $16,56($sp) j $31 addiu $sp,$sp,96$L18: lw $2,0($5) li $3,-1112014848 # 0xffffffffbdb80000 ori $3,$3,0xadf1 addu $2,$2,$3 sltu $4,$2,18 beq $4,$0,$L67 lw $31,92($sp) li $3,1 # 0x1 sll $3,$3,$2 li $2,131072 # 0x20000 ori $2,$2,0x201 and $3,$3,$2 beq $3,$0,$L68 lw $fp,88($sp) j $L70 li $2,3 # 0x3$L67: lw $fp,88($sp)$L68: lw $23,84($sp) lw $22,80($sp) lw $21,76($sp) lw $20,72($sp) lw $19,68($sp) lw $18,64($sp) lw $17,60($sp) lw $16,56($sp) move $2,$0 j $31 addiu $sp,$sp,96$L19: lui $3,%hi(frame_num) lw $2,%lo(frame_num)($3) addiu $16,$sp,34 addiu $2,$2,1 lui $6,%hi($LC0) move $4,$16 addiu $6,$6,%lo($LC0) move $7,$2 li $5,20 # 0x14 jal snprintf sw $2,%lo(frame_num)($3) lui $5,%hi($LC1) move $4,$16 addiu $5,$5,%lo($LC1) lw $22,48($17) lbu $20,3($17) lw $16,24($17) lw $19,28($17) jal FS_FOpen lw $17,32($17) beq $2,$0,$L62 move $18,$2 addiu $6,$sp,16 move $7,$6 move $5,$0$L63: sltu $2,$5,18 beq $2,$0,$L25 lui $3,%hi($L33) sll $2,$5,2 addiu $3,$3,%lo($L33) addu $2,$2,$3 lw $4,0($2) j $4 nop .rdata .align 2 .align 2$L33: .word $L25 .word $L25 .word $L26 .word $L25 .word $L25 .word $L25 .word $L25 .word $L25 .word $L25 .word $L25 .word $L25 .word $L25 .word $L27 .word $L28 .word $L29 .word $L30 .word $L31 .word $L32 .section .text.control$L32: li $2,32 sb $2,0($6)$L35: move $4,$7 li $5,18 # 0x12 li $6,1 # 0x1 jal FS_FWrite move $7,$18 li $3,1 # 0x1 beq $2,$3,$L64 addiu $2,$20,7$L36: jal FS_FClose move $4,$18$L62: lw $31,92($sp) lw $fp,88($sp) lw $23,84($sp) lw $22,80($sp) lw $21,76($sp) lw $20,72($sp) lw $19,68($sp) lw $18,64($sp) lw $17,60($sp) lw $16,56($sp) li $2,1 # 0x1 j $31 addiu $sp,$sp,96$L25: addiu $5,$5,1 slt $2,$5,18 beq $2,$0,$L35 sb $0,0($6) j $L63 addiu $6,$6,1$L26: li $2,2 sb $2,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L29: sb $19,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L30: sra $2,$19,8 sb $2,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L31: sb $20,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L27: sb $16,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L28: sra $2,$16,8 sb $2,0($6) addiu $5,$5,1 j $L63 addiu $6,$6,1$L64: sra $2,$2,3 li $3,32 # 0x20 beq $20,$3,$L65 mul $21,$16,$2 blez $19,$L36 move $16,$0 j $L49 li $20,1 # 0x1$L66: beq $19,$16,$L36 addu $17,$17,$22$L49: move $4,$17 move $5,$21 li $6,1 # 0x1 jal FS_FWrite move $7,$18 beq $2,$20,$L66 addiu $16,$16,1 j $L36 nop$L65: blez $19,$L36 move $20,$0 lui $fp,%hi(line_buff) li $23,1 # 0x1$L43: blez $16,$L44 lw $4,%lo(line_buff)($fp) move $5,$4 move $6,$17 move $7,$0 li $8,-1$L46: sb $8,0($5) lbu $2,1($6) addiu $7,$7,1 sb $2,1($5) lbu $3,2($6) sb $3,2($5) lbu $2,3($6) addiu $6,$6,4 sb $2,3($5) bne $16,$7,$L46 addiu $5,$5,4$L44: move $5,$21 li $6,1 # 0x1 jal FS_FWrite move $7,$18 bne $2,$23,$L36 addiu $20,$20,1 beq $20,$19,$L36 addu $17,$17,$22 j $L43 nop .set macro .set reorder .end control .section .text.config,"ax",@progbits .align 2 .align 5 .ent config .type config, @functionconfig: .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) sw $16,16($sp) sw $31,24($sp) lui $16,%hi(line_buff) lw $2,%lo(line_buff)($16) move $17,$4 beq $2,$0,$L72 move $4,$2 jal uc_free nop sw $0,%lo(line_buff)($16)$L72: li $2,1111949312 # 0x42470000 lw $3,56($sp) ori $2,$2,0x5220 beq $3,$2,$L77 sll $4,$17,2 lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$0 j $31 addiu $sp,$sp,32$L77: jal uc_malloc nop sw $2,%lo(line_buff)($16) lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$0 j $31 addiu $sp,$sp,32 .set macro .set reorder .end config .section .rodata.str1.4 .align 2$LC2: .ascii "[VO_TGA] Unknown subdevice: %s.\012\000" .section .text.preinit,"ax",@progbits .align 2 .align 5 .ent preinit .type preinit, @functionpreinit: .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 move $2,$4 lui $6,%hi($LC2) move $7,$4 sw $31,16($sp) addiu $6,$6,%lo($LC2) move $3,$0 li $4,3 # 0x3 beq $2,$0,$L81 li $5,2 # 0x2 jal mp_msg nop li $3,89 # 0x59$L81: lw $31,16($sp) move $2,$3 j $31 addiu $sp,$sp,24 .set macro .set reorder .end preinit .globl video_out_tga .data .align 2 .type video_out_tga, @object .size video_out_tga, 40video_out_tga: .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 .local frame_num .comm frame_num,4,4 .local line_buff .comm line_buff,4,4 .section .rodata.str1.4 .align 2$LC3: .ascii "Targa output\000" .align 2$LC4: .ascii "tga\000" .align 2$LC5: .ascii "Daniele Forghieri - guru@digitalfantasy.it\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 + -
显示快捷键?