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 + -
显示快捷键?