亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mpa_layer2aug.s

?? samsung 9908DVD源代碼,
?? S
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
/*
 *  mpa_layer2aug.s
 *
 *  MPEG/audio multichannel decoder.
 *	Copyright (C) 2003 Optical Player P/J, Samsung Electronics.
 *
 */
 
.include	"mpa.h"

.if( _DECODER_TYPE == MPEG_2_71CH )

.extern		MPG_II_decode_sample
.extern 	MC_II_denormalize_sample

.secFILE_mpa_layer2aug 	



/********************************************************************

 Function:		AUG_layer_II_decode

 Description:	

********************************************************************/
AUG_layer_II_decode::
				push		a10, a14
				ebk			#0000b
				er			xsd


;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::            Decode aug composite status information             ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;				index registers 
;				@bank0
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0: 	 x		 1		 x		 x
;				sd1: 	 x		 1		 x		 x
;				sd2: 	 x		 1		 x		 x
; 
AUG_composite_status_info
				esd0		d0, #1
				esd1		d0, #1
				esd2		d0, #1
				
				eld			a, #2
				jsr			getbits
				eld			rpd1.aug_mtx_proc, d
				ecld		r0, d
				eld			a, #1
				jsr			getbits
				eld			rpd1.aug_dyn_cross_on, d
				ecld		r1, d
				eld			a, #1
				jsr			getbits
				eld			rpd1.aug_future_ext, d
				ecld		r2, d

aug_transmission_channel_info
				eld			rp0, #aug_tc_alloc
				ld			r7, #GRANULES-1
				cmp			eq, r0, #0
				brtd		%f0
				ld			r3, #3
				cmp			eq, r0, #1
				brtd		%f0
				ld			r3, #2
				eld			d, #0
				bnzd		r7, $
				eld			@rp0+d0, d
				bra			aug_dynamic_crosstalk_info

%0				ecld		a, r3
				jsr			getbits
				bnzd		r7, %b0
				eld			@rp0+d0, d
				
aug_dynamic_crosstalk_info
				eld			rp1, #aug_dyn_cross_mode				
				cmp			eq, r1, #TRUE
				brtd		%f1
				ld			r7, #GRANULES-1				
				eld			d, #0
				bnzd		r7, $
				eld			@rp1+d0, d
				bra			get_aug_crc_value

%1				eld			a, #5
				jsr			getbits
				bnzd		r7, %b1
				eld			@rp1+d0, d

get_aug_crc_value
				eld			a, #CRC_WORD_LENGTH
				jsr			getbits
				eld			rpd0.aug_crc_val, d



;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::                  Decode aug bit allocations                    ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;				index registers 
;				@bank0
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0: 	 x		 1		 x		 x
;				sd1: 	 x		 x		 0		 1
; 
AUG_II_decode_bit_alloc
				er			xsd
				eld			sd0, #0x0100
				eld			sd1, #0x0001

 				eld			rp0, #bit_alloc+64+96
				eld			rp1, #nbal_table				
				eld			a, rpd1.sblimit_mc
				ecld		r6, a
				dec			r6
				ld			r10, r6						; backup mc_sblimit
				
				cmp			eq, r1, #TRUE				; r1 = aug_dyn_cross_on
				brt			aug_dyn_cross_mode_on

aug_dyn_cross_mode_off
				eld			a, @rp1+s1					; nbal_table[sb]
				jsr			getbits
				eld			@rp0+d0, d
				eld			a, @rp1+s0					; nbal_table[sb]
				jsr			getbits
				bnzd		r6, aug_dyn_cross_mode_off
				eld			@rp0+d0, d
				bra			AUG_II_decode_scfsi

aug_dyn_cross_mode_on
				jsr			AUG_II_dyncross_bitalloc
				cmp			eq, r2, #_DECODE_OK
				brf			end_of_aug_layer_II_decoding

				


;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::            Decode scalefactor selection information            ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;				index registers 
;				@bank0
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0: 	 x		 x		 x		 1
;				sd1: 	 x		 1		 x		 x
; 
AUG_II_decode_scfsi
				er			xsd
				esd0		s0, #1
				esd1		d0, #1
				eld			rp0, #bit_alloc+64+96
				eld			rp1, #scfsi
				inc			r10
				ld			r6, r10						; mc_sblimit
				ld			r4, #2						; aug_channels
				mul			uu, r6, r4					; sblimit x nmch
				dec			r6
				ld			r7, r6
%0				eld			a, @rp0+s0
				ecp			a, #0
				ebrad		ec0, %f1
				eld			d, #4						; default 4
				eld			a, #2
				jsr			getbits
%1				bnzd		r6, %b0
				eld			@rp1+d0, d



;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::                      Decode scalefactors                       ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;				index registers 
;				@bank0
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0: 	 x		 x		 x		 1
;				sd1: 	 x		 x		 x		 1
;				sd2: 	 x		 1		 x		 x
; 
AUG_II_decode_scalefactor
				er			xsd
				esd0		s0, #1
				esd1		s0, #1
				esd2		d0, #1
				eld			rp0, #bit_alloc+64+96
				eld			rp1, #scfsi
				eld			rp2, #scale_index+(NCH+NMCH)*PARTS*SBLIMIT
				
decode_aug_scalefactor
				eld			a, @rp0+s0						; bit_alloc[sb][ch]
				ecp			a, #0
				ebra		ec0, aug_default_scalefactor

				eld			a, #6
				jsr			getbits
				eld			@rp2+d0, d						; scale_index[sb][ch][0]
				
				eld			b, @rp1+s0						; scfsi[sb][ch]				
				ecp			b, #2
				ebrad		ec0, aug_scale_one
				ecld		r5, b
				ecp			b, #0
				ebra		ec0, aug_scale_all
				brad		aug_scale_1_3
				ecld		r4, d

aug_scale_one	brad		%f1
				eld			@rp2+d0, d 
				
aug_scale_all	eld			a, #6
				jsr			getbits
				eld			@rp2+d0, d 
aug_scale_1_3
aug_scale_1_2	eld			a, #6				
				jsr			getbits
				sr			r5
				brf			%f1
				sr			r5
				brf			%f0
				brad		%f1
				eld			@rp2+d0, d 	; scale_index[sb][ch][1] = scale_index[sb][ch][2]
%0				ecld		c, r4 		; scale_index[sb][ch][1] = scale_index[sb][ch][0]
				eld			@rp2+d0, c
%1				bnzd		r7, decode_aug_scalefactor
				eld			@rp2+d0, d 				 		; scale_index[sb][ch][2]
				bra			mc_aug_error_check
aug_default_scalefactor
				eld			d, #63
				erps		rp1+s0
				eld			@rp2+d0, d
				brad		%b1
				eld			@rp2+d0, d	



;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::                         Aug CRC check                          ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
; mandatory CRC check
mc_aug_error_check
				eld			a, rpd1.mandatory_crc_check
				ecp			a, #TRUE
				ebra		ec1, AUG_II_decode_subband_sample
				jsr			AUG_error_check
				eld			a, rpd0.aug_crc_val
				ecp			a, c
				ebra		ec0, AUG_II_decode_subband_sample
.ifdef _DEBUG_
/** debug **/	bra			$
.endif

				eld			b, rpd1.error_count
				eadd		b, #1
				eld			rpd1.error_count, b

				brad		end_of_aug_layer_II_decoding
				mRETURN		(_AUG_CRC_ERROR)


				
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
;::                                                                ::;
;::                      Decode aug samples                        ::;
;::                                                                ::;
;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;
; fraction buffer structure
;	gr0 	ch5   0x21e0	:<---  96  --->:
;			ch6   0x2240	:<---  96  --->:
; 
;				index registers 
;				@bank0
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0:   +32		 1	   -96     -95
;				sd1: 	 x		 x		 x		 1
;				sd2: 	 x		 x		 0		 x
; 				
;				@bank1 (aug_dyn_cross_on == 1)
;						d1		d0		s1		s0
;				---------------------------------------
;				sd0: 	 x		 x		 x		20
;				sd1: 	 x		 x		 x		 x
;				sd2: 	 x		 x		 x		 1
;				sd3:   -96		 x		32		17
; 
AUG_II_decode_subband_sample
				es			psh1
				es			usm
				es			op
				es			opm

				ebk			#1111b
				er			xsd
				eld			sd0, #0x0004
				eld			sd3, #0x0001
				es			xsd
				eld			sd0, #0x0001
				eld			sd3, #0xa021
				eld			sd1, #0x0000
				eld			sd2, #0x0001
				
				ebk			#0000b
				er			xsd
				eld			sd0, #0x0101
				es			xsd
				eld			sd0, #0x20aa
				eld			sd1, #0x0001
				eld			sd2, #0x0000

				eld			a, rpd1.aug_dyn_cross_on
				ecld		r1, a
				ld			r9, r1
				eld			a, rpd1.dyn_cross_LR
				ecld		r1, a
				ld			r12, r1
				eld			a, rpd1.alloc_tbl_ptr	; allocation table pointer
				eld			rp0, #fraction+96*(STEREO+NMCH)
				eld			b, rpd1.sblimit_mc
				eld			rpd1, a
				ecld		r6, b
				ld			r10, r6
				ld			r13, #2					; r13 => aug channels
				ld			r11, #7					; r11 => total channels
				dec			r11
				ld			r0, #0x80				; high word of -1.0 
				ld			r8, #0					; granule count
				eld			mc1, #aug_dyn_cross_mode
				
aug_gr_loop_start
				eld			rp1, #bit_alloc+64+96
				eld			rp2, rpd1
				ebk			#0110b
				eld			rp1, #aug_tc_table
				eld			rp2, #sbgr_table
				ebk			#0000b
				ld			r6, #0					; subband count
				ld			r7, #5					; start channel

aug_sb_loop_start
; search the valid transmission channel
				ebk			#1111b
				eld			b, @rp2+s0				; the number of sbgr.
				eld			rp3, mc1				; aug_dyn_cross_mode
				erpn		rp3, b
				eld			c, @rp3					; aug_dyn_cross_mode[sbgr]
				eld			rp0, rp1
				erpn		rp0, c
				ebk			#0000b
aug_ch_loop_start
				eld			a, @rp1+s0				; bit_alloc[sb][ch]
				ecp			a, #0
				ebra		ec0, aug_ch_not_transmitted
				cmp			eq, r9, #TRUE			; if (aug_dyn_cross_on == 1)
				brf			aug_decode_sample
aug_dyn_mode_transmitted_ch
				ebk			#0001b
				eld			d, @rp0+s0				; aug_tc_table[aug_dyn_cross_mode[sbgr]]
				ecp			d, #7
				ebra		ec1, aug_channel_copied
				ebk			#0000b
aug_decode_sample
				bsrd		MPG_II_decode_sample
				eld			mc0, rp2
				eld			rp2, mc0
				
aug_ch_loop_check
				cmp			eq, r7, r11
				brfd		aug_ch_loop_start
				inc			r7
			
aug_sb_loop_check
				inc			r6						; sb increase
				erpn		rp2, #16				
				erps		rp0+s0
				erps		rp0+s1
%1				cmp			ge, r6, r10
				brfd		aug_sb_loop_start
				ld			r7, #5					; start channel

aug_rest_subband_sample
; remain subband samples are zero in each granule
				ld			r2, r10					; mc_sblimit
				ld			r3, r13					; aug_channel
				ecld		a, r2
				ld			r6, #SBLIMIT-1
				sub			r6, r10
				ld			r2, r6
				ld			r7, #PARTS
				mul			uu, r7, r3
				dec			r7
				eld			d, #0
%2				bnzd		r6, $
				eld			@rp0+d0, d				
				erpn		rp0, a
				bnzd		r7, %b2
				ld			r6, r2
								
aug_gr_loop_check
				ld			r2, #MAX_CHANNEL
				sub			r2, r13
				ld			r1, #PARTS*SBLIMIT
				mul			uu, r2, r1
				sub			r2, r10
				ecld		a, r2	
				erpn		rp0, a
				cmp			eq, r8, #GRANULES-1
				brfd		aug_gr_loop_start
				inc			r8
				eld			rpd1, #layer_info
				
				bra			aug_denormalize_sample


aug_ch_not_transmitted
				eld			d, #0
				eld			@rp0+d1, d
				eld			@rp0+d1, d
				eld			@rp0+d1, d
				ebk			#0001b
				erps		rp0+s0
				brad		aug_ch_loop_check
				ebk			#0000b

aug_channel_copied
				ebk			#1000b
				eld			rp3, rp0
				ecp			d, #1
				ebra		ec2, aug_copy_from_T01
				ecp			d, #2
				ebra		ec0, aug_copy_from_T2
				ecp			d, #3
				ebra		ec0, aug_copy_from_T3
				ecp			d, #4
				ebra		ec0, aug_copy_from_T4
				ecp			d, #5
				ebra		ec0, aug_copy_from_T5
.ifdef _DEBUG_
/** debug **/	bra			$
.endif

aug_copy_from_T0
				ld			r1, r7
				sub			r7, #1
				bnzd		r7, $
				erpd		rp3+d1
				brad		aug_copy_sample
				ld			r7, r1
aug_copy_from_T1
				ld			r1, r7
				sub			r7, #2
				bnzd		r7, $
				erpd		rp3+d1
				brad		aug_copy_sample
				ld			r7, r1
aug_copy_from_T2
				ld			r1, r7
				sub			r7, #3
				bnzd		r7, $
				erpd		rp3+d1
				brad		aug_copy_sample
				ld			r7, r1
aug_copy_from_T3
				ld			r1, r7
				sub			r7, #4
				bnzd		r7, $
				erpd		rp3+d1
				brad		aug_copy_sample
				ld			r7, r1
aug_copy_from_T4
				ld			r1, r7
				sub			r7, #5
				bnzd		r7, $
				erpd		rp3+d1
				brad		aug_copy_sample

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情综合色播激情啊| 精品国产乱码久久久久久老虎| 99久久精品一区二区| 波多野结衣亚洲| av在线不卡免费看| 91在线视频网址| 91偷拍与自偷拍精品| 日本韩国一区二区三区视频| 91麻豆国产福利在线观看| 色久综合一二码| 欧美性受xxxx| 在线成人高清不卡| 91精品国产91久久久久久一区二区 | 国产日产欧美一区二区三区| 国产日韩欧美精品电影三级在线| 国产午夜精品一区二区三区嫩草 | 一区二区三区精品久久久| 亚洲国产日韩精品| 天天av天天翘天天综合网色鬼国产 | 日韩欧美中文一区| 精品久久国产97色综合| 国产亚洲精品资源在线26u| 中国色在线观看另类| 亚洲欧美一区二区三区极速播放 | 91在线无精精品入口| 色88888久久久久久影院野外| 精品视频在线视频| 欧美r级电影在线观看| 国产精品美日韩| 亚洲午夜久久久久久久久电影网| 日韩av电影免费观看高清完整版 | 成人av集中营| 在线免费观看不卡av| 欧美一区二区三区人| 国产精品色噜噜| 日精品一区二区三区| 国产一区二区三区电影在线观看| 波多野结衣亚洲| 制服丝袜亚洲色图| 国产欧美视频一区二区| 亚洲国产精品一区二区久久| 国产在线精品免费| 色婷婷精品久久二区二区蜜臂av| 91精品国产麻豆国产自产在线 | 亚洲日本乱码在线观看| 人人爽香蕉精品| 成人国产精品免费| 日韩欧美自拍偷拍| 欧美国产97人人爽人人喊| 午夜视频在线观看一区二区| 精品一区中文字幕| 色爱区综合激月婷婷| 欧美大片一区二区| 一区二区三区精品视频在线| 精品伊人久久久久7777人| 欧洲视频一区二区| 国产欧美一区二区三区沐欲| 天堂影院一区二区| 99免费精品视频| 精品久久国产97色综合| 亚洲丰满少妇videoshd| 成人毛片老司机大片| 欧美成人乱码一区二区三区| 亚洲最大色网站| 成人黄动漫网站免费app| 日韩一二在线观看| 性做久久久久久| 91网上在线视频| 国产农村妇女毛片精品久久麻豆| 亚洲v中文字幕| 99精品桃花视频在线观看| 久久久亚洲午夜电影| 日本最新不卡在线| 欧美综合欧美视频| 国产精品久久久久aaaa| 国产在线视频精品一区| 欧美一区在线视频| 午夜精品福利一区二区蜜股av| av网站一区二区三区| 久久亚洲捆绑美女| 精品中文字幕一区二区| 国产精品日韩精品欧美在线| 日本欧美一区二区三区乱码| 欧美又粗又大又爽| 成人欧美一区二区三区白人| 国产v日产∨综合v精品视频| 久久午夜电影网| 久久97超碰国产精品超碰| 欧美日韩国产综合草草| 亚洲国产综合色| 欧美少妇xxx| 亚洲综合色网站| 在线免费观看日韩欧美| 一区二区高清视频在线观看| 91日韩精品一区| 亚洲男女一区二区三区| 99re视频精品| 亚洲欧美区自拍先锋| 91香蕉视频污在线| 亚洲人123区| 91久久精品网| 亚洲不卡在线观看| 欧美电影影音先锋| 蜜桃传媒麻豆第一区在线观看| 欧美电影在线免费观看| 青草国产精品久久久久久| 欧美日韩国产经典色站一区二区三区| 一区二区三区日本| 欧美日韩一区二区三区视频| 亚洲午夜三级在线| 欧美一级二级三级乱码| 精品一区二区三区免费| 久久久久久久久蜜桃| 丁香婷婷综合色啪| 最新国产の精品合集bt伙计| 一本到不卡精品视频在线观看| 亚洲精品国产a| 欧美日韩久久久| 日本不卡一二三| 久久综合久色欧美综合狠狠| 国产成人精品网址| 自拍偷拍欧美精品| 欧美日韩视频在线第一区| 美女在线一区二区| 国产偷v国产偷v亚洲高清| 91在线porny国产在线看| 亚洲网友自拍偷拍| 日韩视频永久免费| 国产精品 日产精品 欧美精品| 国产精品久久久久一区 | 国产亚洲一区二区三区四区| 成人福利视频在线| 亚洲综合免费观看高清完整版在线 | 婷婷亚洲久悠悠色悠在线播放| 日韩欧美一区在线| 成人av影院在线| 亚洲小说欧美激情另类| 精品国产伦一区二区三区免费| 成人激情校园春色| 日韩精品一二三| 国产女人18毛片水真多成人如厕| 日本精品视频一区二区三区| 麻豆国产精品777777在线| 日本一区二区不卡视频| 欧美亚洲国产怡红院影院| 久久精品999| 一区二区三区在线免费播放| 精品久久久久av影院| 在线亚洲精品福利网址导航| 久久精工是国产品牌吗| 亚洲乱码日产精品bd| 久久综合九色综合97婷婷| 欧美无人高清视频在线观看| 国产乱码精品一区二区三区忘忧草| 一区二区三区日韩精品视频| 久久精品日韩一区二区三区| 欧美性猛交一区二区三区精品| 国产福利一区二区| 日韩精品亚洲一区二区三区免费| 国产欧美精品国产国产专区| 在线电影欧美成精品| 91免费在线播放| 国产精品一区二区三区99| 日日夜夜免费精品| 亚洲精品欧美激情| 久久久国产精品麻豆| 在线成人av网站| 日本乱码高清不卡字幕| 懂色av一区二区在线播放| 男人的天堂亚洲一区| 亚洲一区二区三区四区不卡| 中文字幕精品一区二区三区精品| 777精品伊人久久久久大香线蕉| 99久久精品免费观看| 国产高清久久久| 美国精品在线观看| 亚洲成人av福利| 亚洲黄一区二区三区| 中文在线免费一区三区高中清不卡| 日韩手机在线导航| 欧美日韩你懂得| 91福利资源站| 91女人视频在线观看| 风间由美一区二区av101| 精品一区二区国语对白| 日本一不卡视频| 亚洲成av人片一区二区梦乃| 一区二区三区免费看视频| 日韩伦理av电影| 1区2区3区精品视频| 国产精品久久夜| 中文字幕精品一区二区三区精品| 精品国产露脸精彩对白| 欧美一区二区在线观看| 欧美顶级少妇做爰| 777色狠狠一区二区三区| 欧美日本在线视频| 欧美日韩国产美| 91精品久久久久久久久99蜜臂| 9191国产精品|