⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jpeginit.asm

📁 DSP GEPE 压缩算法
💻 ASM
📖 第 1 页 / 共 3 页
字号:
           CMPLT   .L1     A3,A4,A4          ; |131| 
||         MVK     .S2     64,B4             ; |131| 

           XOR     .S1     1,A4,A4           ; |131| 
||         CMPLT   .L2X    A3,B4,B4          ; |131| 

           AND     .S2X    B4,A4,B0          ; |131| 
	.line	29
   [ B0]   B       .S1     L6                ; |134| 
   [ B0]   MVK     .S1     0x6,A0            ; |134| 
           NOP             4
           ; BRANCH OCCURS                   ; |134| 
;** --------------------------------------------------------------------------*
	.line	30
           MVK     .S1     64,A4             ; |135| 

           CMPLT   .L1     A3,A4,A4          ; |135| 
||         MVK     .S2     128,B4            ; |135| 

           XOR     .S1     1,A4,A4           ; |135| 
||         CMPLT   .L2X    A3,B4,B4          ; |135| 

           AND     .S2X    B4,A4,B0          ; |135| 
	.line	33
   [ B0]   B       .S1     L6                ; |138| 
   [ B0]   MVK     .S1     0x7,A0            ; |138| 
           NOP             4
           ; BRANCH OCCURS                   ; |138| 
;** --------------------------------------------------------------------------*
	.line	34
           MVK     .S1     128,A4            ; |139| 

           CMPLT   .L1     A3,A4,A4          ; |139| 
||         MVK     .S2     256,B4            ; |139| 

           XOR     .S1     1,A4,A4           ; |139| 
||         CMPLT   .L2X    A3,B4,B4          ; |139| 

           AND     .S2X    B4,A4,B0          ; |139| 
	.line	37
   [ B0]   B       .S1     L6                ; |142| 
   [ B0]   MVK     .S1     0x8,A0            ; |142| 
           NOP             4
           ; BRANCH OCCURS                   ; |142| 
;** --------------------------------------------------------------------------*
	.line	38
           MVK     .S1     256,A4            ; |143| 

           CMPLT   .L1     A3,A4,A4          ; |143| 
||         MVK     .S2     512,B4            ; |143| 

           XOR     .S1     1,A4,A4           ; |143| 
||         CMPLT   .L2X    A3,B4,B4          ; |143| 

           AND     .S2X    B4,A4,B0          ; |143| 
	.line	41
   [ B0]   B       .S1     L6                ; |146| 
   [ B0]   MVK     .S1     0x9,A0            ; |146| 
           NOP             4
           ; BRANCH OCCURS                   ; |146| 
;** --------------------------------------------------------------------------*
	.line	42
           MVK     .S1     512,A0            ; |147| 

           CMPLT   .L1     A3,A0,A0          ; |147| 
||         MVK     .S2     1024,B4           ; |147| 

           XOR     .L1     1,A0,A0           ; |147| 
||         CMPLT   .L2X    A3,B4,B4          ; |147| 
||         MVK     .S1     1024,A4           ; |147| 

           CMPLT   .L1     A3,A4,A0          ; |147| 
||         AND     .S2X    B4,A0,B0          ; |147| 

           XOR     .L2     1,B0,B4           ; |147| 
||         XOR     .S1     1,A0,A0           ; |147| 
||         MVK     .S2     2048,B5           ; |147| 

           CMPLT   .L2X    A3,B5,B4          ; |147| 
||         AND     .S1X    A0,B4,A0          ; |147| 

           AND     .S1X    B4,A0,A1          ; |147| 
   [ A1]   B       .S1     L4                ; |147| 
           XOR     .S2     1,B0,B1           ; |147| 
           NOP             4
           ; BRANCH OCCURS                   ; |147| 
;** --------------------------------------------------------------------------*
	.line	46
   [ B0]   B       .S1     L5                ; |151| 
           ZERO    .D1     A0
           NOP             4
           ; BRANCH OCCURS                   ; |151| 
;** --------------------------------------------------------------------------*
           B       .S1     L6
           NOP             5
           ; BRANCH OCCURS  
;** --------------------------------------------------------------------------*
L4:    
	.line	48
   [ B1]   B       .S1     L6
           MVK     .S1     0xb,A0
           NOP             4
           ; BRANCH OCCURS  
;** --------------------------------------------------------------------------*
L5:    
	.line	45
           MVK     .S1     0xa,A0            ; |150| 
;** --------------------------------------------------------------------------*
L6:    
	.line	52
           RET     .S2     B3                ; |157| 
           MV      .D1     A0,A4             ; |150| 
           NOP             4
           ; BRANCH OCCURS                   ; |157| 
	.endfunc	157,000000000h,0



	.sect	".text"
	.global	_BuildVLITable
	.sym	_BuildVLITable,_BuildVLITable, 32, 2, 0
	.func	90

;******************************************************************************
;* FUNCTION NAME: _BuildVLITable                                              *
;*                                                                            *
;*   Regs Modified     : A0,A1,A3,A4,A5,A6,B0,B1,B2,B3,B4,B5,SP               *
;*   Regs Used         : A0,A1,A3,A4,A5,A6,B0,B1,B2,B3,B4,B5,DP,SP            *
;*   Local Frame Size  : 0 Args + 0 Auto + 4 Save = 4 byte                    *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o3) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_BuildVLITable:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_i,6, 3, 4, 16
	.sym	_i,6, 3, 4, 16
           STW     .D2T2   B3,*SP--(8)       ; |91| 
	.line	5
           LDW     .D2T2   *+DP(_DC_MAX_QUANTED),B2 ; |94| 
           NOP             4
           CMPGT   .L2     B2,0,B0           ; |94| 
   [!B0]   B       .S1     L8                ; |94| 
           NOP             5
           ; BRANCH OCCURS                   ; |94| 
;** --------------------------------------------------------------------------*
	.line	7
	.line	3
           ZERO    .D1     A6                ; |92| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L7:    
	.line	7
           CALL    .S1     _ComputeVLI       ; |96| 
           MVKL    .S2     RL0,B3            ; |96| 
           MVKH    .S2     RL0,B3            ; |96| 
           MV      .D1     A6,A4             ; |96| 
           NOP             2
RL0:       ; CALL OCCURS                     ; |96| 
           LDW     .D2T1   *+DP(_pVLITAB),A0 ; |96| 
           NOP             4
           STB     .D1T1   A4,*+A0[A6]       ; |96| 
	.line	8
           SUB     .D2     B2,1,B2           ; |97| 
   [ B2]   B       .S1     L7                ; |97| 
           ADD     .D1     1,A6,A0           ; |97| 
           EXT     .S1     A0,16,16,A6       ; |97| 
           NOP             3
           ; BRANCH OCCURS                   ; |97| 
;** --------------------------------------------------------------------------*
L8:    
	.line	10
           LDH     .D2T1   *+DP(_DC_MIN_QUANTED),A6 ; |99| 
           NOP             4
           CMPLT   .L1     A6,0,A1           ; |99| 
   [!A1]   B       .S1     L10               ; |99| 
           NOP             5
           ; BRANCH OCCURS                   ; |99| 
;*----------------------------------------------------------------------------*
;*   SOFTWARE PIPELINE INFORMATION
;*      Disqualified loop: Loop contains a call
;*----------------------------------------------------------------------------*
L9:    
	.line	12
           CALL    .S1     _ComputeVLI       ; |101| 
           MVKL    .S2     RL1,B3            ; |101| 
           MVKH    .S2     RL1,B3            ; |101| 
           MV      .D1     A6,A4             ; |101| 
           NOP             2
RL1:       ; CALL OCCURS                     ; |101| 
           LDW     .D2T1   *+DP(_pVLITAB),A0 ; |101| 
           NOP             4
           STB     .D1T1   A4,*+A0[A6]       ; |101| 
	.line	13
           ADD     .D1     1,A6,A0           ; |102| 
           EXT     .S1     A0,16,16,A6       ; |102| 
           CMPLT   .L1     A6,0,A1           ; |102| 
   [ A1]   B       .S1     L9                ; |102| 
           NOP             5
           ; BRANCH OCCURS                   ; |102| 
;** --------------------------------------------------------------------------*
L10:    
	.line	14
           LDW     .D2T2   *++SP(8),B3       ; |103| 
           NOP             4
           RET     .S2     B3                ; |103| 
           NOP             5
           ; BRANCH OCCURS                   ; |103| 
	.endfunc	103,000080000h,8



	.sect	".text"
	.global	_BuildSTDHuffTab
	.sym	_BuildSTDHuffTab,_BuildSTDHuffTab, 32, 2, 0
	.func	159

;******************************************************************************
;* FUNCTION NAME: _BuildSTDHuffTab                                            *
;*                                                                            *
;*   Regs Modified     : A0,A1,A3,A5,A7,A8,B0,B1,B4,B5,B6                     *
;*   Regs Used         : A0,A1,A3,A4,A5,A6,A7,A8,B0,B1,B3,B4,B5,B6,DP,SP      *
;*   Local Frame Size  : 0 Args + 0 Auto + 0 Save = 0 byte                    *
;******************************************************************************

;******************************************************************************
;*                                                                            *
;* Using -g (debug) with optimization (-o3) may disable key optimizations!    *
;*                                                                            *
;******************************************************************************
_BuildSTDHuffTab:
;** --------------------------------------------------------------------------*
	.line	2
	.sym	_nrcodes,4, 28, 17, 32
	.sym	_stdTab,20, 28, 17, 32
	.sym	_huffCode,6, 24, 17, 32, _tagHUFFCODE
	.sym	_huffCode,6, 24, 4, 32, _tagHUFFCODE
	.sym	_stdTab,0, 28, 4, 32
	.sym	_nrcodes,4, 28, 4, 32
	.sym	_i,3, 4, 4, 32
	.sym	_j,5, 4, 4, 32
	.sym	_k,16, 4, 4, 32
	.sym	_code,20, 13, 4, 16
           MV      .S1X    B4,A0             ; |160| 
	.line	8
           MVK     .S2     0x10,B1           ; |166| 
	.line	5
           ZERO    .D2     B0                ; |163| 
	.line	6
           ZERO    .D2     B4                ; |164| 
	.line	8
           MVK     .S1     0x1,A3            ; |166| 
;** --------------------------------------------------------------------------*
;**   BEGIN LOOP L11
;** --------------------------------------------------------------------------*
L11:    
	.line	10
           LDBU    .D1T1   *+A3[A4],A1       ; |168| 
           NOP             4

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -