bookmarklst.s01

来自「炬力方案176*132软件源码,适用于AK1025」· S01 代码 · 共 767 行 · 第 1/2 页

S01
767
字号
	LD	C,194
	LD	DE,39
	CALL	LWRD ?0077
	POP	AF
; 107.	         SetTextPos(explorer_str_x_def, menu_pos_list[pRow]-2);
	CALL	LWRD ?0079
; 108.	         GetBooKMarkItem(BmkItemInfor,active);
	PUSH	IY
	POP	BC
	LD	HL,6
	ADD	HL,SP
	CALL	LWRD ?0080
; 109.	         SetPenColor(Color_WHITE_def);                                //取列表名
; 110.	         PutS(BmkItemInfor,-1);
	ADD	HL,SP
	EX	DE,HL
	CALL	LWRD PutS
; 111.	    }
; 112.	     else  //if(Old_active==active)               刷新一页屏
	JP	LWRD ?0023
?0016:
; 113.	    {
; 114.	        SetTextOutMode(1);
	LD	E,1
	CALL	LWRD SetTextOutMode
; 115.	        ResShowPic(MENUTWO,0,0);
	LD	C,0
	PUSH	BC
	LD	DE,195
	CALL	LWRD ?0077
	POP	AF
; 116.	        SetPenColor(Color_WHITE_def);                  
	CALL	LWRD ?0081
; 117.	        if(mode==MUSICBOOKMARK_SELECT) 
	LD	B,(IX+12)
	DEC	B
	LD	C,148
	PUSH	BC
	LD	C,22
	PUSH	BC
	LD	C,(IX+10)
	JR	NZ,?0019
?0018:
; 118.	         ResShowMultiString(MEB2,string_id, list_str_x_def, list_str_y_def);//显示菜单头
	LD	DE,422
	JR	?0068
; 119.	        else
?0019:
; 120.	         ResShowMultiString(MEB4,string_id, list_str_x_def, list_str_y_def);//显示菜单头
	LD	DE,424
?0068:
	LD	A,BYTE3 ResShowMultiString
	LD	HL,LWRD ResShowMultiString
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
?0020:
; 121.	        ResShowPic(DHT,194,8);
	LD	C,8
	PUSH	BC
	LD	C,194
	LD	DE,38
	CALL	LWRD ?0077
	POP	AF
; 122.	        //显示列表名
; 123.	        pPageHead=(active/6)*6;
	LD	BC,6
	PUSH	IY
	POP	DE
	CALL	LWRD ?SS_DIV_L02
	LD	A,E
	ADD	A,A
	LD	B,A
	ADD	A,A
	ADD	A,B
	LD	(IX-14),A
; 124.	        ItemCount=BookMarkBuff.RecordCount-pPageHead;
	LD	A,(BookMarkBuff+2)
	SUB	(IX-14)
	LD	(IX-15),A
; 125.	        if(ItemCount>6)
	LD	B,A
	LD	A,C
	CP	B
	JR	NC,?0022
?0021:
; 126.	            ItemCount=6;
	LD	(IX-15),C
?0022:
; 127.	        ActiveRow=active%6;
	LD	B,0
	PUSH	IY
	POP	DE
	CALL	LWRD ?SS_MOD_L02
	LD	(IX-13),E
; 128.	
; 129.	        for(pRow=0;pRow<ItemCount;pRow++)
	LD	(IX-16),B
?0024:
	LD	A,(IX-16)
	CP	(IX-15)
	JR	NC,?0023
?0025:
; 130.	        {
; 131.	            output8(0x4e,input8(0x4e) | 0x08);
	IN	A,(78)
	SET	3,A
	OUT	(78),A
; 132.	            GetBooKMarkItem(BmkItemInfor,(pPageHead+pRow));
	LD	L,(IX-16)
	LD	B,0
	LD	D,B
	LD	E,(IX-14)
	LD	H,B
	ADD	HL,DE
	LD	C,L
	LD	B,H
	LD	HL,6
	ADD	HL,SP
	EX	DE,HL
	LD	A,BYTE3 GetBooKMarkItem
	LD	HL,LWRD GetBooKMarkItem
	CALL	LWRD ?BANK_CALL_DIRECT_L08
; 133.	
; 134.	           if(pRow==ActiveRow)
	LD	A,(IX-16)
	CP	(IX-13)
	JR	NZ,?0028
?0027:
; 135.	           {
; 136.	               ResShowPic(FILEBCK,explorer_str_x_def-2, menu_pos_list[pRow]-4);
	LD	C,A
	LD	B,0
	LD	HL,menu_pos_list
	ADD	HL,BC
	LD	A,(HL)
	ADD	A,252
	LD	C,A
	PUSH	BC
	LD	C,30
	LD	DE,44
	CALL	LWRD ?0077
	POP	AF
; 137.	               ResShowPic(DHTHK,194, menu_pos_list[pRow]+5);
	LD	C,(IX-16)
	LD	B,0
	LD	HL,menu_pos_list
	ADD	HL,BC
	LD	A,(HL)
	ADD	A,5
	LD	C,A
	PUSH	BC
	LD	C,194
	LD	DE,39
	CALL	LWRD ?0077
	POP	AF
?0028:
; 138.	           }
; 139.	           SetPenColor(Color_WHITE_def);                    
	CALL	LWRD ?0081
; 140.	           ResShowPic(MFILE,explorer_pic_x_def,menu_pos_list[pRow]-1);
	LD	C,(IX-16)
	LD	B,0
	LD	HL,menu_pos_list
	ADD	HL,BC
	LD	A,(HL)
	ADD	A,255
	LD	C,A
	PUSH	BC
	CALL	LWRD ?0078
	POP	AF
; 141.	           SetTextPos(explorer_str_x_def, menu_pos_list[pRow]-2);
	CALL	LWRD ?0079
; 142.	           PutS(BmkItemInfor,-1);
	LD	C,255
	LD	HL,6
	ADD	HL,SP
	EX	DE,HL
	CALL	LWRD PutS
	INC	(IX-16)
; 143.	        }
; 144.	    } //else
	JP	LWRD ?0024
?0023:
?0017:
; 145.	    SetPenColor(Color_WHITE_def);
	CALL	LWRD ?0081
; 146.	}
	POP	IY
	JP	LWRD ?BANK_LEAVE_DIRECT_L08
?0076:
	CALL	LWRD ?SS_MOD_L02
	LD	(IX-16),E
	LD	D,B
	LD	HL,menu_pos_list
	ADD	HL,DE
	LD	A,(HL)
	ADD	A,252
	LD	C,A
	RET
?0078:
	LD	C,13
	LD	DE,198
?0077:
	LD	A,BYTE3 ResShowPic
	LD	HL,LWRD ResShowPic
	JP	LWRD ?BANK_CALL_DIRECT_L08
?0079:
	LD	C,(IX-16)
	LD	B,0
	LD	HL,menu_pos_list
	ADD	HL,BC
	LD	A,(HL)
	ADD	A,254
	LD	C,A
	LD	E,32
	JP	LWRD SetTextPos
?0080:
	EX	DE,HL
	LD	A,BYTE3 GetBooKMarkItem
	LD	HL,LWRD GetBooKMarkItem
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	LD	BC,0
	LD	DE,65535
	CALL	LWRD SetPenColor
	LD	C,255
	LD	HL,6
	RET
?0081:
	LD	BC,0
	LD	DE,65535
	JP	LWRD SetPenColor
ActiveBookMark:
; 147.	
; 148.	
; 149.	////////////显示删除确认菜单
; 150.	BOOL ActiveBookMark(int SelIndex)
; 151.	{
	PUSH	BC
	PUSH	DE
; 152.	    long cTime;
; 153.	/*    
; 154.	    memcpy(&g_music_vars.BreakPTSave, &(BookMarkBuff.MusicBreakPoint[SelIndexToArryIndex(SelIndex)]),sizeof(STRU_MusicBreakPoint));
; 155.	    cTime=((long)g_music_vars.BreakPTDisTime.hour*2764800+(long)g_music_vars.BreakPTDisTime.minute*46080+(long)g_music_vars.BreakPTDisTime.second*768)/10;
; 156.	    memcpy(&(g_music_vars.BreakPTSave.breakPTTime[6]),(char *)&cTime,4);
; 157.	*/   
; 158.	    memcpy(&g_music_vars.BreakPTSave, &(BookMarkBuff.MusicBreakPoint[SelIndexToArryIndex(SelIndex)]),sizeof(STRU_MusicBreakPoint));
	LD	BC,30
	LD	A,BYTE3 SelIndexToArryIndex
	LD	HL,LWRD SelIndexToArryIndex
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	EX	DE,HL
	CALL	LWRD ?S_MUL_L02
	LD	HL,BookMarkBuff+4
	ADD	HL,DE
	LD	DE,g_music_vars+50
	LDIR
; 159.	  
; 160.	    output8(0x27,input8(0x27)&0xbf);        
	IN	A,(39)
	RES	6,A
	OUT	(39),A
; 161.	    musicpSendCommand(MC_STOP, NULL);
	LD	E,6
	CALL	LWRD ?0082
; 162.	    musicpSendCommand(MC_CLOSE, NULL);
	LD	E,2
	LD	A,BYTE3 musicpSendCommand
	LD	HL,LWRD musicpSendCommand
	CALL	LWRD ?BANK_CALL_DIRECT_L08
; 163.	    output8(0x27,input8(0x27)|0x40);
	IN	A,(39)
	SET	6,A
	OUT	(39),A
; 164.	    
; 165.	    g_music_vars.MusicOpenMod = Nor_Break_open;
	LD	A,1
	LD	(g_music_vars+6),A
; 166.	        
; 167.	    musicpSendCommand(MC_OPEN,  (int)& g_Openparam );
	LD	BC,g_Openparam
	LD	E,A
	CALL	LWRD ?0082
; 168.	    musicpSendCommand(MC_LOAD, NULL);
	LD	E,3
	CALL	LWRD ?0082
; 169.	
; 170.	    musicpSendCommand(MC_RESTORE, NULL);
	LD	E,69
	LD	A,BYTE3 musicpSendCommand
	LD	HL,LWRD musicpSendCommand
	CALL	LWRD ?BANK_CALL_DIRECT_L08
; 171.	    musicpSendCommand(MC_SETPOWERCOUNT, 5);      //by jmzhang
	LD	BC,5
	LD	E,89
	LD	A,BYTE3 musicpSendCommand
	LD	HL,LWRD musicpSendCommand
	CALL	LWRD ?BANK_CALL_DIRECT_L08
; 172.	
; 173.	//    StartIntro(FALSE);
; 174.	    musicpSendCommand(MC_PLAY, Nor_Break_open);
	LD	BC,1
	LD	E,4
	LD	A,BYTE3 musicpSendCommand
	LD	HL,LWRD musicpSendCommand
	CALL	LWRD ?BANK_CALL_DIRECT_L08
; 175.	
; 176.	    return TRUE;
	LD	L,1
; 177.	}
	POP	AF
	POP	BC
	JP	LWRD ?BANK_FAST_LEAVE_L08
?0082:
	LD	A,BYTE3 musicpSendCommand
	LD	HL,LWRD musicpSendCommand
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	LD	BC,0
	RET
UI_BookMarkMenu:
; 178.	
; 179.	int UI_BookMarkMenu(file_location_t *curfile,BYTE mode,BYTE LanID)
; 180.	{
	CALL	LWRD ?ENT_AUTO_DIRECT_L09
	DEFW	-4
	PUSH	IY
; 181.	    int CurSelItem;
; 182.	    int LastSelItem;
; 183.	    int SelIndex;
; 184.	    BYTE Msg;
; 185.	    BOOL ReDraw;
; 186.	
; 187.	    if((!GetBookMark(&BookMarkBuff,curfile))||(BookMarkBuff.RecordCount<1))
	LD	C,(IX+2)
	LD	B,(IX+3)
	LD	DE,BookMarkBuff
	LD	A,BYTE3 GetBookMark
	LD	HL,LWRD GetBookMark
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	INC	L
	DEC	L
	JR	Z,?0031
	LD	HL,(BookMarkBuff+2)
	LD	BC,32769
	LD	A,B
	XOR	H
	LD	H,A
	SBC	HL,BC
	JR	NC,?0030
?0031:
?0032:
?0029:
; 188.	    {
; 189.	         main_ResShowPic(MESSAGE,30,25);
	LD	C,25
	PUSH	BC
	LD	C,30
	LD	DE,197
	LD	A,BYTE3 main_ResShowPic
	LD	HL,LWRD main_ResShowPic
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
; 190.	         SetTextOutMode(1);   //字体透明
	LD	E,1
	CALL	LWRD SetTextOutMode
; 191.	         SetPenColor(Color_BLACK_def);
	LD	BC,0
	LD	E,C
	LD	D,B
	CALL	LWRD SetPenColor
; 192.	         ResShowMultiString(EBOKMSG5,LanID, 35, 70);
	LD	C,70
	PUSH	BC
	LD	C,35
	PUSH	BC
	LD	C,(IX+10)
	LD	DE,429
	LD	A,BYTE3 ResShowMultiString
	LD	HL,LWRD ResShowMultiString
	CALL	LWRD ?BANK_CALL_DIRECT_L08
	POP	AF
	POP	AF
; 193.	         SetTextOutMode(0);            //字体不透

⌨️ 快捷键说明

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