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

📄 main.s

📁 sunplus spca514 cdmp3 源码
💻 S
📖 第 1 页 / 共 3 页
字号:
	.dbline 202
; 				  dvd_key = D_CENT_VOL_KEY|Cchvol;
	lds R24,_Cchvol
	clr R25
	ori R25,243
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 203
; 				  break;
	xjmp L29
L43:
	.dbline 209
; 		#endif 
; 	
; 		#ifdef BASS_ONE_KEY
; 		#ifndef BASS_TWO_KEY
; 			case DISPLAY_BASS:
; 				if(Bassvol < 14)
	lds R24,_Bassvol
	cpi R24,14
	brsh L44
	.dbline 210
; 				{
	.dbline 211
; 					Bassvol++;
	subi R24,255	; addi 1
	sts _Bassvol,R24
	.dbline 212
;     				pt2320_bass();
	xcall _pt2320_bass
	.dbline 213
L44:
	.dbline 213
; 				};
	.dbline 214
; 			    dvd_key = D_BASS_KEY | Bassvol;
	lds R24,_Bassvol
	clr R25
	ori R25,245
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 215
; 				break;
	xjmp L29
L46:
	.dbline 223
; 		#endif
; 		#endif
; 		 
; 		#ifdef TREBLE_ONE_KEY
; 		#ifndef TREBLE_TWO_KEY
; 			case DISPLAY_TREBLE:
; 			
; 				if(Treblevol < 14)
	lds R24,_Treblevol
	cpi R24,14
	brsh L47
	.dbline 224
; 				{
	.dbline 225
; 					Treblevol++;
	subi R24,255	; addi 1
	sts _Treblevol,R24
	.dbline 226
; 					pt2320_treble();
	xcall _pt2320_treble
	.dbline 227
L47:
	.dbline 227
; 				};
	.dbline 229
; 			
; 			    dvd_key = D_TREBLE_KEY|Treblevol;
	lds R24,_Treblevol
	clr R25
	ori R25,246
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 230
; 			    break;
	xjmp L29
L49:
	.dbline 237
; 		#endif
; 		#endif
; 		
; 		#ifdef BALANCE_ONE_KEY
; 		#ifndef BALANCE_TWO_KEY
; 			case DISPLAY_BALANCE:
; 				if(Balanceval <14)
	lds R24,_Balanceval
	cpi R24,14
	brsh L50
	.dbline 238
; 				{
	.dbline 239
; 					Balanceval++;
	subi R24,255	; addi 1
	sts _Balanceval,R24
	.dbline 240
; 					set_balance();
	xcall _set_balance
	.dbline 241
; 				}
L50:
	.dbline 242
; 				dvd_key = D_BALANCE_KEY | Balanceval;
	lds R24,_Balanceval
	clr R25
	ori R25,247
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 243
; 			    break;
	xjmp L29
L28:
	.dbline 247
; 		#endif
; 		#endif
; 			default:
; 		       display_type = DISPLAY_VOL;
	ldi R24,5
	sts _display_type,R24
	.dbline 248
; 			   dvd_key = D_VOLUME_KEY|Mchvol;
	lds R24,_Mchvol
	clr R25
	ori R25,241
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 249
; 			   break;
L29:
	.dbline 250
; 		};
	.dbline 251
; 		radio_is_muted = 0;
	clr R2
	sts _radio_is_muted,R2
	.dbline 252
; 		mute_radio();
	xcall _mute_radio
	.dbline 253
; 	    break;
	xjmp L21
L53:
	.dbline 255
; 	case UICC_VOLUME_DOWN:
; 		g_ui_tmp_msg_cnt = 20;
	ldi R24,20
	sts _g_ui_tmp_msg_cnt,R24
	.dbline 256
; 		switch(display_type)
	lds R20,_display_type
	clr R21
	cpi R20,5
	ldi R30,0
	cpc R21,R30
	brge X18
	xjmp L54
X18:
	ldi R24,11
	ldi R25,0
	cp R24,R20
	cpc R25,R21
	brge X19
	xjmp L54
X19:
	ldi R24,<L78
	ldi R25,>L78
	movw R30,R20
	sbiw R30,5
	lsl R30
	rol R31
	add R30,R24
	adc R31,R25
	lpm R0,Z+
	lpm R1,Z
	movw R30,R0
	ijmp
X2:
	.dbline 257
; 		{
L57:
	.dbline 259
; 			case DISPLAY_VOL:
; 				if(Mchvol > 0)
	clr R2
	lds R3,_Mchvol
	cp R2,R3
	brsh L58
	.dbline 260
; 				{
	.dbline 261
; 					Mchvol--;
	mov R24,R3
	subi R24,1
	sts _Mchvol,R24
	.dbline 262
; 					pt2320_vol();
	xcall _pt2320_vol
	.dbline 263
L58:
	.dbline 263
; 				};
	.dbline 265
; 				
; 				dvd_key = D_VOLUME_KEY | Mchvol;
	lds R24,_Mchvol
	clr R25
	ori R25,241
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 266
; 			    break;
	xjmp L55
L60:
	.dbline 269
; 		#ifndef NO_SIX_CHANNEL_OUTPUT
; 		     case DISPLAY_SVOL:
; 			      if(Schvol>0)
	clr R2
	lds R3,_Schvol
	cp R2,R3
	brsh L61
	.dbline 270
; 				  {
	.dbline 271
; 				    Schvol--;
	mov R24,R3
	subi R24,1
	sts _Schvol,R24
	.dbline 272
; 					pt2320_Sch();
	xcall _pt2320_Sch
	.dbline 273
L61:
	.dbline 273
; 				  };
	.dbline 274
; 				  dvd_key = D_SURR_VOL_KEY|Schvol;
	lds R24,_Schvol
	clr R25
	ori R25,242
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 275
; 				  break;
	xjmp L55
L63:
	.dbline 277
; 			 case DISPLAY_SWVOL:
; 			  	  if(SWchvol>0)
	clr R2
	lds R3,_SWchvol
	cp R2,R3
	brsh L64
	.dbline 278
; 				  {
	.dbline 279
; 				    SWchvol--;
	mov R24,R3
	subi R24,1
	sts _SWchvol,R24
	.dbline 280
; 					pt2320_SWch();
	xcall _pt2320_SWch
	.dbline 281
L64:
	.dbline 281
; 				  };
	.dbline 282
; 				  dvd_key = D_SW_VOL_KEY|SWchvol;
	lds R24,_SWchvol
	clr R25
	ori R25,244
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 283
; 				  break;
	xjmp L55
L66:
	.dbline 285
; 			 case DISPLAY_CVOL:
; 			  	  if(Cchvol>0)
	clr R2
	lds R3,_Cchvol
	cp R2,R3
	brsh L67
	.dbline 286
; 				  {
	.dbline 287
; 				    Cchvol--;
	mov R24,R3
	subi R24,1
	sts _Cchvol,R24
	.dbline 288
; 					pt2320_Cch();
	xcall _pt2320_Cch
	.dbline 289
L67:
	.dbline 289
; 				  };
	.dbline 290
; 				  dvd_key = D_CENT_VOL_KEY|Cchvol;
	lds R24,_Cchvol
	clr R25
	ori R25,243
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 291
; 				  break;
	xjmp L55
L69:
	.dbline 296
; 		#endif
; 			#ifdef BASS_ONE_KEY
;    			#ifndef BASS_TWO_KEY
;    			case DISPLAY_BASS:	
;    				if(Bassvol > 0)
	clr R2
	lds R3,_Bassvol
	cp R2,R3
	brsh L70
	.dbline 297
; 				{
	.dbline 298
; 					Bassvol--;
	mov R24,R3
	subi R24,1
	sts _Bassvol,R24
	.dbline 299
; 				    pt2320_bass();
	xcall _pt2320_bass
	.dbline 300
L70:
	.dbline 300
;         		};
	.dbline 301
;         	    dvd_key = D_BASS_KEY | Bassvol;
	lds R24,_Bassvol
	clr R25
	ori R25,245
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 302
; 				break;
	xjmp L55
L72:
	.dbline 309
;    			#endif
;    			#endif
; 			
;    			#ifdef TREBLE_ONE_KEY
;    			#ifndef TREBLE_TWO_KEY
;    			case DISPLAY_TREBLE:
; 				if(Treblevol > 0)
	clr R2
	lds R3,_Treblevol
	cp R2,R3
	brsh L73
	.dbline 310
; 				{
	.dbline 311
; 		 			Treblevol--;
	mov R24,R3
	subi R24,1
	sts _Treblevol,R24
	.dbline 312
; 				    pt2320_treble();
	xcall _pt2320_treble
	.dbline 313
L73:
	.dbline 313
; 			    };
	.dbline 314
; 				dvd_key = D_TREBLE_KEY | Treblevol;
	lds R24,_Treblevol
	clr R25
	ori R25,246
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 315
;    			    break;
	xjmp L55
L75:
	.dbline 322
;    			#endif
;    			#endif
; 			
;    			#ifdef BALANCE_ONE_KEY
;    			#ifndef BALANCE_TWO_KEY
;    			case DISPLAY_BALANCE:
;    				if(Balanceval >0)
	clr R2
	lds R3,_Balanceval
	cp R2,R3
	brsh L76
	.dbline 323
; 				{
	.dbline 324
; 					Balanceval--;
	mov R24,R3
	subi R24,1
	sts _Balanceval,R24
	.dbline 325
; 					set_balance();
	xcall _set_balance
	.dbline 326
L76:
	.dbline 326
; 				};
	.dbline 327
; 				dvd_key = D_BALANCE_KEY | Balanceval;
	lds R24,_Balanceval
	clr R25
	ori R25,247
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 328
;    			    break;
	xjmp L55
L54:
	.dbline 332
;    			#endif
;    			#endif
; 			default:
; 			   display_type = DISPLAY_VOL;
	ldi R24,5
	sts _display_type,R24
	.dbline 333
; 			   dvd_key = D_VOLUME_KEY | Mchvol;
	lds R24,_Mchvol
	clr R25
	ori R25,241
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 334
;    		}
L55:
	.dbline 335
; 		radio_is_muted = 0;
	clr R2
	sts _radio_is_muted,R2
	.dbline 336
; 		mute_radio();
	xcall _mute_radio
	.dbline 337
;        	break;
	xjmp L21
L79:
	.dbline 341
;        		
; 		#ifndef D_NO_6CHANNEL_OUTPUT
; 		case UICC_VOLUME_MODE:
; 		     if(work_mode!=DVD_MODE)
	lds R2,_work_mode
	tst R2
	breq L80
	.dbline 342
; 			  break;
	xjmp L21
L80:
	.dbline 343
; 		     g_ui_tmp_msg_cnt = 20;
	ldi R24,20
	sts _g_ui_tmp_msg_cnt,R24
	.dbline 344
; 			 display_type++;
	lds R24,_display_type
	subi R24,255	; addi 1
	sts _display_type,R24
	.dbline 345
; 			 if((display_type<DISPLAY_VOL)||(  display_type>DISPLAY_SWVOL))
	cpi R24,5
	brlo L84
	ldi R24,8
	lds R2,_display_type
	cp R24,R2
	brsh L82
L84:
	.dbline 346
; 			    display_type = DISPLAY_VOL;
	ldi R24,5
	sts _display_type,R24
L82:
	.dbline 347
; 			 tmp = D_AMODE_KEY|((display_type-5)<<6);
	ldi R18,6
	ldi R19,0
	lds R16,_display_type
	clr R17
	subi R16,5
	sbci R17,0
	xcall lsl16
	movw R20,R16
	ori R21,249
	.dbline 348
; 			 switch(display_type)
	lds R22,_display_type
	clr R23
	cpi R22,5
	ldi R30,0
	cpc R23,R30
	brge X20
	xjmp L21
X20:
	ldi R24,8
	ldi R25,0
	cp R24,R22
	cpc R25,R23
	brge X21
	xjmp L21
X21:
	ldi R24,<L92
	ldi R25,>L92
	movw R30,R22
	sbiw R30,5
	lsl R30
	rol R31
	add R30,R24
	adc R31,R25
	lpm R0,Z+
	lpm R1,Z
	movw R30,R0
	ijmp
X3:
	.dbline 349
; 			 {
L88:
	.dbline 351
; 			  case DISPLAY_VOL:
; 			  	   dvd_key = tmp|Mchvol;
	lds R2,_Mchvol
	clr R3
	movw R4,R20
	or R4,R2
	or R5,R3
	sts _dvd_key+1,R5
	sts _dvd_key,R4
	.dbline 352
; 				   break;
	xjmp L21
L89:
	.dbline 354
; 			  case DISPLAY_SVOL:
; 			       dvd_key = tmp|Schvol;
	lds R2,_Schvol
	clr R3
	movw R4,R20
	or R4,R2
	or R5,R3
	sts _dvd_key+1,R5
	sts _dvd_key,R4
	.dbline 355
; 				   break;
	xjmp L21
L90:
	.dbline 357
; 			  case DISPLAY_CVOL:
; 			       dvd_key = tmp|Cchvol;
	lds R2,_Cchvol
	clr R3
	movw R4,R20
	or R4,R2
	or R5,R3
	sts _dvd_key+1,R5
	sts _dvd_key,R4
	.dbline 358
; 				   break;
	xjmp L21
L91:
	.dbline 360
; 			  case DISPLAY_SWVOL:
; 			       dvd_key = tmp|SWchvol;
	lds R2,_SWchvol
	clr R3
	movw R4,R20
	or R4,R2
	or R5,R3
	sts _dvd_key+1,R5
	sts _dvd_key,R4
	.dbline 361
; 				   break;
	.dbline 362
; 			 };
	.dbline 363
; 			 break;
	xjmp L21
L93:
	.dbline 369
; 		#endif
; 		
; 		
; 		#ifdef BASS_ONE_KEY
;         case UICC_BASS:
;         	g_ui_tmp_msg_cnt = 20;
	ldi R24,20
	sts _g_ui_tmp_msg_cnt,R24
	.dbline 370
;         	display_type = DISPLAY_BASS;
	ldi R24,9
	sts _display_type,R24
	.dbline 371
; 			dvd_key = D_BASS_KEY | Bassvol;
	lds R24,_Bassvol
	clr R25
	ori R25,245
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 372
; 			break;
	xjmp L21
L94:
	.dbline 376
; 		#endif
; 		#ifdef TREBLE_ONE_KEY
; 		case UICC_TREBLE:
;         	g_ui_tmp_msg_cnt = 20;
	ldi R24,20
	sts _g_ui_tmp_msg_cnt,R24
	.dbline 377
;         	display_type = DISPLAY_TREBLE;
	ldi R24,10
	sts _display_type,R24
	.dbline 378
; 			dvd_key = D_TREBLE_KEY | Treblevol;
	lds R24,_Treblevol
	clr R25
	ori R25,246
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 379
; 			break;
	xjmp L21
L95:
	.dbline 383
; 		#endif
; 		#ifdef BALANCE_ONE_KEY
; 		case UICC_BALANCE:
;         	g_ui_tmp_msg_cnt = 20;
	ldi R24,20
	sts _g_ui_tmp_msg_cnt,R24
	.dbline 384
;         	display_type = DISPLAY_BALANCE;
	ldi R24,11
	sts _display_type,R24
	.dbline 385
; 			dvd_key = D_BALANCE_KEY | Balanceval;
	lds R24,_Balanceval
	clr R25
	ori R25,247
	sts _dvd_key+1,R25
	sts _dvd_key,R24
	.dbline 386
; 			break;
	xjmp L21
L96:
	.dbline 480
; 		#endif
; 	/*
; 		case UICC_LOUDNESS:
; 			g_ui_tmp_msg_cnt = 20;
; 			if(display_type!=DISPLAY_LOUDNESS)
; 			{
; 				display_type = DISPLAY_LOUDNESS;
; 			}
; 			else if(Loudnessval)
; 				Loudnessval=0;
; 			else
; 				Loudnessval = 1;
; 			#ifdef USE_PT2314
; 			pt2314_loudness(Loudnessval);
; 			#endif
; 			dvd_key = D_LOUDNESS_KEY|Loudnessval;
; 			break;
;       */
; 	 #ifdef BASS_TWO_KEY
; 		case UICC_BASS_UP:
; 			if(dislay_type == DISPLAY_BASS)
; 			{
; 			   if(Bassvol<14)
; 			   {
; 			     Bassvol++;
; 			   	 PT2320_bass();
; 				}
; 			}
; 			else
; 			{

⌨️ 快捷键说明

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