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

📄 decodermenu.s01

📁 炬力方案176*132软件源码,适用于AK1025
💻 S01
📖 第 1 页 / 共 2 页
字号:
	JP	LWRD ?0084
?0031:
; 132.	           break;            
?0032:
; 133.	
; 134.	        default:
; 135.	          result = RESULT_IGNORE;
; 136.	          break;
?0015:
; 137.	        }
; 138.	     return result;
; 139.	    }
?0014:
; 140.	
; 141.	 else       //有卡
; 142.	    {
; 143.	
; 144.	       switch (list.active)
	CALL	LWRD ?S_S_SWITCH_L06
	DEFW	0
	DEFW	5
	DEFW	?0055
	DEFW	?0034
	DEFW	?0037
	DEFW	?0042
	DEFW	?0049
	DEFW	?0052
?0034:
; 145.	        {
; 146.	            case 0:
; 147.	
; 148.	              if (g_reader_vars.location.disk == 'H')
	LD	A,(g_reader_vars+6)
	CP	72
	JR	NZ,?0036
?0035:
; 149.	               {
; 150.	                 g_reader_vars.location.disk = 'C';
	LD	A,67
	LD	(g_reader_vars+6),A
; 151.	                 FSELInit(FSEL_TYPE_TXT, FSEL_ALL_REPEATALL,FSEL_TYPE_COMMONDIR, g_reader_vars.location.disk);
	LD	C,A
	PUSH	BC
	LD	C,B
	PUSH	BC
	LD	C,4
	LD	E,C
	LD	A,BYTE3 fselInit
	LD	HL,LWRD fselInit
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
; 152.	                 fselGetLocation(& g_reader_vars.location);  
	CALL	LWRD ?0087
; 153.	                 need_sel_file=TRUE;   
	LD	A,1
	LD	(need_sel_file),A
?0036:
; 154.	               }
; 155.	             BankSwitch((unsigned long)DecodeOnePage >> 16);
	LD	B,0
	LD	E,BYTE3 DecodeOnePage
	CALL	LWRD BankSwitch
; 156.	
; 157.	             result=ui_directory(&g_reader_vars.location, FSEL_TYPE_TXT, g_comval.langid);
	LD	HL,g_comval+12
	LD	C,(HL)
	PUSH	BC
	CALL	LWRD ?0088
	POP	AF
; 158.	             FSELSetMode(FSEL_ALL_SEQUENCE);
	CALL	LWRD ?0089
; 159.	        BankSwitch((unsigned long)LoadData >> 16); 
	LD	B,0
	LD	E,BYTE3 LoadData
	LD	C,B
	CALL	LWRD BankSwitch
; 160.	            g_reader_vars.g_txt.CurrentSeek=0;
	LD	L,C
	LD	H,B
	LD	(g_reader_vars+59),HL
	LD	(g_reader_vars+61),BC
; 161.	            g_reader_vars.g_txt.BufSector=0;                       
	LD	(g_reader_vars+63),HL
; 162.	
; 163.	               g_menu_active = FALSE;
	JP	LWRD ?0074
; 164.	             break;
?0037:
; 165.	
; 166.	            case 1:
; 167.	              if (g_reader_vars.location.disk == 'C')
	LD	A,(g_reader_vars+6)
	CP	67
	JR	NZ,?0039
?0038:
; 168.	               {
; 169.	                 g_reader_vars.location.disk = 'H';    
	LD	A,72
	LD	(g_reader_vars+6),A
; 170.	                 need_sel_file=TRUE;  
	LD	A,1
	LD	(need_sel_file),A
; 171.	                 result=FSELInit(FSEL_TYPE_TXT, FSEL_ALL_REPEATALL,FSEL_TYPE_COMMONDIR, g_reader_vars.location.disk);
	LD	C,72
	PUSH	BC
	LD	C,B
	PUSH	BC
	LD	C,4
	LD	E,C
	LD	A,BYTE3 fselInit
	LD	HL,LWRD fselInit
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
	LD	H,0
	PUSH	HL
	POP	IX
; 172.	                 if(!result)
	LD	A,L
	OR	A
	JR	NZ,?0041
?0040:
; 173.	                 {
; 174.	                   g_reader_vars.location.disk = 'C'; 
	LD	A,67
	LD	(g_reader_vars+6),A
; 175.	                   g_DiskStateFlag=g_DiskStateFlag&ClrCardOKFlag_def; 
	LD	HL,g_DiskStateFlag
	RES	3,(HL)
; 176.	                   ui_show_msg (CREADERR, CREADERR, g_comval.langid);        //temp ybfu
	LD	BC,(g_comval+12)
	LD	B,0
	PUSH	BC
	LD	BC,630
	LD	E,C
	LD	D,B
	LD	A,BYTE3 ui_show_msg
	LD	HL,LWRD ui_show_msg
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
; 177.	                   break;
	JP	LWRD ?0033
?0041:
; 178.	                 }
; 179.	                 g_DiskStateFlag=g_DiskStateFlag|SetCardOKFlag_def;
	LD	HL,g_DiskStateFlag
	SET	3,(HL)
; 180.	                 fselGetLocation(& g_reader_vars.location);
	CALL	LWRD ?0087
?0039:
; 181.	 
; 182.	               }
; 183.	              BankSwitch((unsigned long)DecodeOnePage >> 16);
	LD	B,0
	LD	E,BYTE3 DecodeOnePage
	CALL	LWRD BankSwitch
; 184.	              result=ui_directory(&g_reader_vars.location, FSEL_TYPE_TXT, g_comval.langid);
	LD	HL,g_comval+12
	LD	C,(HL)
	PUSH	BC
	CALL	LWRD ?0088
	POP	AF
; 185.	              FSELSetMode(FSEL_ALL_SEQUENCE);
	CALL	LWRD ?0089
; 186.	            g_reader_vars.g_txt.PrevSeek=0;
	LD	BC,0
	LD	L,C
	LD	H,B
	LD	(g_reader_vars+55),HL
	LD	(g_reader_vars+57),BC
; 187.	            g_reader_vars.g_txt.CurrentSeek=0;
	LD	(g_reader_vars+59),HL
	LD	(g_reader_vars+61),BC
; 188.	            g_reader_vars.g_txt.BufSector=0;                       
	LD	(g_reader_vars+63),HL
; 189.	              BankSwitch((unsigned long)LoadData >> 16); 
	LD	E,BYTE3 LoadData
	CALL	LWRD BankSwitch
; 190.	
; 191.	               g_menu_active = FALSE;
?0074:
	XOR	A
	LD	(g_menu_active),A
; 192.	             break;
	JP	LWRD ?0033
?0042:
; 193.	
; 194.	          case 2:
; 195.	            sub_list.strid = play_text;
	LD	HL,play_text
	LD	(sub_list),HL
; 196.	            sub_list.total = 2;
	LD	HL,2
	LD	(sub_list+2),HL
; 197.	            sub_list.active = g_reader_vars.playflag;
	LD	BC,(g_reader_vars+2)
	LD	B,H
	LD	(sub_list+4),BC
; 198.	            sub_list.string_id = g_comval.langid;
	LD	A,(g_comval+12)
	LD	(sub_list+8),A
; 199.	            sub_list.headid = MenuStrIDWithCard[sub_list.active];
	LD	L,C
	LD	H,B
	ADD	HL,HL
	LD	BC,MenuStrIDWithCard
	ADD	HL,BC
	LD	B,(HL)
	INC	HL
	LD	H,(HL)
	LD	L,B
	LD	(sub_list+6),HL
; 200.	            result = ui_popup_list(&sub_list, NULL);
	LD	C,0
	PUSH	BC
	LD	L,C
	LD	H,C
	PUSH	HL
	LD	DE,sub_list
	LD	A,BYTE3 ui_popup_list
	LD	HL,LWRD ui_popup_list
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
	PUSH	HL
	POP	IX
; 201.	            if(result!=0) return result;
	LD	A,L
	OR	H
	JP	NZ,?0033
?0043:
?0044:
; 202.	            active=sub_list.active;
	LD	HL,(sub_list+4)
; 203.	            g_reader_vars.playflag=active;
	LD	A,L
	LD	(g_reader_vars+2),A
; 204.	            if(active==1)
	LD	A,1
	XOR	L
	OR	H
	JR	NZ,?0046
?0045:
; 205.	            {
; 206.	                       slider.min = 1;
	LD	HL,1
	LD	(slider+2),HL
; 207.	                       slider.max = 10;
	LD	L,10
	LD	(slider+4),HL
; 208.	                       slider.step = 1;
	LD	L,1
	LD	(slider+8),HL
; 209.	                       slider.value = g_reader_vars.autoplaytime;
	LD	BC,(g_reader_vars+3)
	LD	B,H
	LD	(slider+6),BC
; 210.	                       slider.title = JPEGSET2;
	LD	HL,589
	LD	(slider),HL
; 211.	                       slider.string_id=g_comval.langid;
	LD	A,(g_comval+12)
	LD	(slider+10),A
; 212.	                       result = ui_slider(&slider, NULL);
	LD	C,B
	PUSH	BC
	PUSH	BC
	LD	DE,slider
	LD	A,BYTE3 ui_slider
	LD	HL,LWRD ui_slider
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
	PUSH	HL
	POP	IX
; 213.	                       if(result != 0) return result;
	LD	A,L
	OR	H
	JR	NZ,?0033
?0047:
?0048:
; 214.	                       g_reader_vars.autoplaytime = (char)slider.value;
	LD	A,(slider+6)
	LD	(g_reader_vars+3),A
?0046:
; 215.	            }
; 216.	            return RESULT_IGNORE; 
	LD	HL,52
; 217.	             
; 218.	         case 3:
	JR	?0056
?0049:
; 219.	          result=ui_delete(&g_reader_vars.location,DELETE_FILE,g_comval.langid);
	LD	HL,g_comval+12
	LD	C,(HL)
	PUSH	BC
	LD	C,B
	LD	DE,g_reader_vars+6
	LD	A,BYTE3 ui_delete
	LD	HL,LWRD ui_delete
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	PUSH	HL
	POP	IX
; 220.	          if(result==RESULT_IGNORE)
	LD	A,52
	XOR	L
	OR	H
	JR	NZ,?0051
?0050:
; 221.	           result=0; 
?0085:
	LD	IX,0
?0051:
; 222.	            g_reader_vars.g_txt.PrevSeek=0;
	LD	BC,0
	LD	L,C
	LD	H,B
	LD	(g_reader_vars+55),HL
	LD	(g_reader_vars+57),BC
; 223.	            g_reader_vars.g_txt.CurrentSeek=0;
	LD	(g_reader_vars+59),HL
	LD	(g_reader_vars+61),BC
; 224.	            g_reader_vars.g_txt.BufSector=0;                       
	LD	(g_reader_vars+63),HL
; 225.	          break;
	JR	?0033
?0052:
; 226.	          
; 227.	        case 4:
; 228.	            FSELSetMode(FSEL_ALL_REPEATALL);
	LD	E,4
	CALL	LWRD ?0090
; 229.	            result = ui_delete_all(&g_reader_vars.location, DELETE_TXT, g_comval.langid); 
	LD	HL,g_comval+12
	LD	C,(HL)
	PUSH	BC
	LD	C,4
	LD	DE,g_reader_vars+6
	LD	A,BYTE3 ui_delete_all
	LD	HL,LWRD ui_delete_all
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	PUSH	HL
	POP	IX
; 230.	           if(result==RESULT_IGNORE)result=0;   
	LD	A,52
	XOR	L
	OR	H
	JR	NZ,?0033
?0053:
?0084:
	LD	IX,0
?0054:
; 231.	           break;   
	JR	?0033
?0055:
; 232.	
; 233.	        default:
; 234.	          result = RESULT_IGNORE;
	LD	IX,52
; 235.	          break;
?0033:
; 236.	        }
; 237.	
; 238.	       return result;
	PUSH	IX
	POP	HL
; 239.	
; 240.	    }
?0056:
	POP	AF
	POP	IX
	POP	IY
	POP	DE
	POP	BC
	JP	LWRD ?BANK_FAST_LEAVE_L08
?0087:
	LD	DE,g_reader_vars+6
	LD	A,BYTE3 fselGetLocation
	LD	HL,LWRD fselGetLocation
	JP	LWRD ?BANK_CALL_DIRECT_L08
?0088:
	LD	C,4
	LD	DE,g_reader_vars+6
	LD	A,BYTE3 ui_directory
	LD	HL,LWRD ui_directory
	JP	LWRD ?BANK_CALL_DIRECT_L08
?0089:
	PUSH	HL
	POP	IX
	LD	E,0
?0090:
	LD	A,BYTE3 fselSetMode
	LD	HL,LWRD fselSetMode
	JP	LWRD ?BANK_CALL_DIRECT_L08
; 241.	
; 242.	}
	RSEG	CONST
MenuStrID:
	DEFW	461
	DEFW	587
	DEFW	463
	DEFW	464
	DEFW	465
MenuStrIDWithCard:
	DEFW	461
	DEFW	462
	DEFW	587
	DEFW	463
	DEFW	464
	DEFW	465
play_text:
	DEFW	588
	DEFW	589
	RSEG	UDATA0
list:
	DEFS	9
sub_list:
	DEFS	9
slider:
	DEFS	11
	END

⌨️ 快捷键说明

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