📄 sub_display.s01
字号:
LD C,139
PUSH BC
LD C,25
LD DE,47
CALL LWRD ?0126
POP AF
; 185. SetTextPos(POS_DIRNAME, POSY_DIRNAME);
LD C,140
LD E,35
CALL LWRD SetTextPos
; 186. SetTextOutMode(1); //设字体透明
LD E,1
CALL LWRD SetTextOutMode
; 187. SetPenColor(Color_WHITE_def);
LD BC,0
LD DE,65535
CALL LWRD SetPenColor
; 188. PutS(dir_name, -1);
LD C,255
LD DE,dir_name
CALL LWRD PutS
; 189. if(g_music_vars.location.disk=='H')
LD A,(g_music_vars+7)
CP 72
JR NZ,?0052
?0051:
; 190. main_ResShowPic(CARDDISK,194,140);
LD C,140
PUSH BC
LD C,194
LD DE,30
CALL LWRD ?0126
POP AF
?0052:
; 191. ResShowPic(SCROLLBC,35,110);
LD C,110
PUSH BC
LD C,35
LD DE,213
CALL LWRD ?0129
POP AF
; 192. SetPenColor(Color_WHITE_def);
LD BC,0
LD DE,65535
CALL LWRD SetPenColor
; 193. SetBackgdColor(Color_BULE1_def);
LD BC,0
LD DE,30014
CALL LWRD SetBackgdColor
; 194. Scroll(g_TagInfoBuf, TRUE, g_comval.langid);
LD HL,g_comval+12
LD C,(HL)
PUSH BC
LD C,1
LD DE,g_TagInfoBuf
LD A,BYTE3 Scroll
LD HL,LWRD Scroll
CALL LWRD ?BANK_CALL_DIRECT_L08
POP HL
; 195. ResShowPic(NEXTBCK,35,79);
LD C,79
PUSH BC
LD C,35
LD DE,163
CALL LWRD ?0129
POP AF
; 196. SetPenColor(0xffe0); //与屏的设置有关
LD BC,0
LD DE,65504
CALL LWRD SetPenColor
; 197. SetTextPos(POS_FILENAME, POSY_FILENAME);
LD C,79
LD E,45
CALL LWRD SetTextPos
; 198. PutS(g_TagInfoBuf1, -1);//显示下一首信息
LD C,255
LD DE,g_TagInfoBuf1
CALL LWRD PutS
; 199. SetTextOutMode(0);
LD E,0
CALL LWRD SetTextOutMode
; 200.
; 201. if (UpDisplayFlag & up_lyricflag)
LD HL,(UpDisplayFlag)
BIT 6,H
JR Z,?0057
?0053:
; 202. {
; 203. if (g_lyricflag)
LD A,(g_lyricflag)
OR A
LD C,162
PUSH BC
LD C,135
JR Z,?0056
?0055:
; 204. {
; 205. main_ResShowPic(MMUSICT,135,162);
LD DE,133
JR ?0098
; 206. }
; 207. else
?0056:
; 208. {
; 209. main_ResShowPic(MMUSICC,135,162); //clear the lyric flag
LD DE,132
?0098:
CALL LWRD ?0126
POP AF
?0057:
?0054:
; 210. }
; 211. }
; 212.
; 213. UpDisplayFlag = 0x00;
; 214. return;
; 215. }
?0050:
; 216. UpDisplayFlag = 0x00;
LD HL,0
LD (UpDisplayFlag),HL
; 217. return;
; 218. }
?0058:
POP DE
POP BC
JP LWRD ?BANK_FAST_LEAVE_L08
?0128:
LD L,A
LD H,0
ADD HL,HL
LD DE,songnum_id
?0127:
ADD HL,DE
LD E,(HL)
INC HL
LD D,(HL)
?0126:
LD A,BYTE3 main_ResShowPic
LD HL,LWRD main_ResShowPic
JP LWRD ?BANK_CALL_DIRECT_L08
?0129:
LD A,BYTE3 ResShowPic
LD HL,LWRD ResShowPic
JP LWRD ?BANK_CALL_DIRECT_L08
?0130:
LD DE,(g_music_vars)
LD A,BYTE3 ui_show_vol
LD HL,LWRD ui_show_vol
JP LWRD ?BANK_CALL_DIRECT_L08
Show_MusicType:
; 219.
; 220. //-----------显示音乐类型图标-----------
; 221. void Show_MusicType(void)
; 222. {
CALL LWRD ?ENT_AUTO_DIRECT_L09
DEFW 65510
; 223. switch (g_currentMusicType)
LD DE,(g_currentMusicType)
CALL LWRD ?C_S_SWITCH_L06
DEFB 1
DEFW 6
DEFW ?BANK_LEAVE_DIRECT_L08
DEFW ?0060
DEFW ?0061
DEFW ?0065
DEFW ?0065
DEFW ?0066
DEFW ?0067
?0060:
; 224. {
; 225. case Music_MP3:
; 226. ui_show_a(MMP3);
LD DE,130
JR ?0111
; 227. break;
?0061:
; 228.
; 229. case Music_WMA:
; 230. {
; 231. wma_inf_t drminfbuff;
; 232. wmapSendCommand(MC_GETINF, (int)&drminfbuff);
LD HL,0
ADD HL,SP
LD C,L
LD B,H
LD E,16
LD A,BYTE3 wmapSendCommand
LD HL,LWRD wmapSendCommand
CALL LWRD ?BANK_CALL_DIRECT_L08
; 233.
; 234. if (drminfbuff.drmmode != INF_NORMALWMA)
XOR A
OR (IX-26)
JR Z,?0065
?0062:
; 235. {
; 236.
; 237. ui_show_a(MDRM);
LD DE,92
JR ?0111
; 238. }
; 239. else
?0063:
; 240. {
; 241. ui_show_a(TYPEWMA);
?0064:
; 242. }
; 243. }
; 244. break;
?0065:
; 245.
; 246. case Music_ASF:
; 247. case Music_WMV:
; 248. ui_show_a(TYPEWMA);
LD DE,251
JR ?0111
; 249. break;
?0066:
; 250.
; 251. case Music_OGG:
; 252. ui_show_a(MOGG);
LD DE,4
JR ?0111
; 253. break;
?0067:
; 254. case Music_APE:
; 255. ui_show_a(MAPE);
LD DE,80
?0111:
LD A,BYTE3 ui_show_a
LD HL,LWRD ui_show_a
CALL LWRD ?BANK_CALL_DIRECT_L08
; 256. break;
?0068:
; 257. default:
; 258. break;
?0059:
; 259. }
; 260. }
JP LWRD ?BANK_LEAVE_DIRECT_L08
DisplayErrMsg:
; 261.
; 262.
; 263. //-----------显示错误信息---------------
; 264. void DisplayErrMsg(int ErrMsg)
; 265. {
CALL LWRD ?ENT_AUTO_DIRECT_L09
DEFW 65528
; 266. DC oldDC_sav;
; 267. GetDCStatus(&oldDC_sav);
LD HL,0
ADD HL,SP
EX DE,HL
CALL LWRD GetDCStatus
; 268. SetPenColor(Color_BLACK_def);
LD BC,0
LD E,C
LD D,B
CALL LWRD SetPenColor
; 269. SetBackgdColor(Color_MENU_def);
LD BC,0
LD DE,64704
CALL LWRD SetBackgdColor
; 270. ClearScreen(NULL);
LD DE,0
CALL LWRD ClearScreen
; 271. SetTextOutMode(1);
LD E,1
CALL LWRD SetTextOutMode
; 272. ResShowMultiString(ErrMsg, g_comval.langid, 255, 80);
LD C,80
PUSH BC
LD C,255
PUSH BC
LD BC,(g_comval+12)
LD E,(IX+2)
LD D,(IX+3)
LD A,BYTE3 ResShowMultiString
LD HL,LWRD ResShowMultiString
CALL LWRD ?BANK_CALL_DIRECT_L08
POP AF
POP AF
; 273. SetTextOutMode(0);
LD E,0
CALL LWRD SetTextOutMode
; 274. SetPenColor(oldDC_sav.PenColor);
LD C,(IX-6)
LD B,(IX-5)
LD E,(IX-8)
LD D,(IX-7)
CALL LWRD SetPenColor
; 275. SetBackgdColor(oldDC_sav.BackgdColor);
LD HL,4
ADD HL,SP
LD E,(HL)
INC HL
LD D,(HL)
INC HL
LD C,(HL)
INC HL
LD B,(HL)
CALL LWRD SetBackgdColor
?0070:
; 276. while( ap_get_message() != NULL ); //清空消息池
CALL LWRD ap_get_message
OR A
JR NZ,?0070
?0071:
?0069:
; 277. ap_sleep(4);
LD DE,4
LD A,BYTE3 ap_sleep
LD HL,LWRD ap_sleep
CALL LWRD ?BANK_CALL_DIRECT_L08
; 278. need_draw = TRUE;
LD A,1
LD (need_draw),A
; 279. }
JP LWRD ?BANK_LEAVE_DIRECT_L08
ui_show_vol:
; 280.
; 281.
; 282. void ui_show_vol(BYTE volume)
; 283. { char id;
CALL LWRD ?ENT_AUTO_DIRECT_L09
DEFW 65532
; 284. char temp[3];
; 285.
; 286. itoa_2(volume, temp);
LD HL,0
ADD HL,SP
LD C,L
LD B,H
LD E,(IX+2)
LD A,BYTE3 itoa_2
LD HL,LWRD itoa_2
CALL LWRD ?BANK_CALL_DIRECT_L08
; 287. id=temp[0]-0x30;
LD A,(IX-4)
ADD A,208
; 288. main_ResShowPic(num_id[id],POS_VOl,POSY_VOl);
LD C,162
PUSH BC
LD C,24
PUSH BC
LD L,A
LD H,0
ADD HL,HL
LD BC,num_id
ADD HL,BC
LD E,(HL)
INC HL
LD D,(HL)
LD A,BYTE3 main_ResShowPic
LD HL,LWRD main_ResShowPic
POP BC
CALL LWRD ?BANK_CALL_DIRECT_L08
POP AF
; 289. id=temp[1]-0x30;
LD A,(IX-3)
ADD A,208
; 290. main_ResShowPic(num_id[id],POS_VOl+7,POSY_VOl);
LD C,162
PUSH BC
LD C,31
PUSH BC
LD L,A
LD H,0
ADD HL,HL
LD BC,num_id
ADD HL,BC
LD E,(HL)
INC HL
LD D,(HL)
LD A,BYTE3 main_ResShowPic
LD HL,LWRD main_ResShowPic
POP BC
CALL LWRD ?BANK_CALL_DIRECT_L08
POP AF
; 291.
; 292. }
JP LWRD ?BANK_LEAVE_DIRECT_L08
ui_show_h:
; 293.
; 294. void ui_show_h(const char *string) //显示歌曲曲目
; 295. {
PUSH BC
PUSH IX
PUSH AF
PUSH DE
POP IX
; 296. char id;
; 297. id = *string-0x30;
LD A,(DE)
ADD A,208
; 298. main_ResShowPic(songnum_id[id],POS_SONGNUM-8,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,78
CALL LWRD ?0128
POP AF
; 299. string++;
; 300. id= *string-0x30;
LD A,(IX+1)
ADD A,208
; 301. main_ResShowPic(songnum_id[id],POS_SONGNUM,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,86
CALL LWRD ?0128
POP AF
; 302. string++;
; 303. id= *string-0x30;
LD A,(IX+2)
ADD A,208
; 304. main_ResShowPic(songnum_id[id],POS_SONGNUM+8,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,94
CALL LWRD ?0128
POP AF
; 305. main_ResShowPic(SINGLINE,POS_SONGNUM+16,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,102
LD DE,219
CALL LWRD ?0126
POP AF
; 306. string++;
; 307. id= *string-0x30;
LD A,(IX+3)
ADD A,208
; 308. main_ResShowPic(songnum_id[id],POS_SONGNUM+24,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,110
CALL LWRD ?0128
POP AF
; 309. string++;
; 310. id= *string-0x30;
LD A,(IX+4)
ADD A,208
; 311. main_ResShowPic(songnum_id[id],POS_SONGNUM+32,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,118
CALL LWRD ?0128
POP AF
; 312. string++;
; 313. id= *string-0x30;
LD A,(IX+5)
ADD A,208
; 314. main_ResShowPic(songnum_id[id],POS_SONGNUM+40,POSY_SONGNUM);
LD C,162
PUSH BC
LD C,126
CALL LWRD ?0128
POP AF
; 315. }
POP HL
POP IX
POP BC
JP LWRD ?BANK_FAST_LEAVE_L08
; 316.
RSEG IDATA0
SRSModeFlag:
DEFS 1
RSEG CDATA0
DEFB 0
RSEG APC_SUB_DIS
EQ_PIC:
DEFW 110
DEFW 111
DEFW 112
DEFW 113
DEFW 114
DEFW 115
DEFW 116
DEFW 110
LOOP_PIC:
DEFW 122
DEFW 123
DEFW 124
DEFW 125
DEFW 126
DEFW 127
DEFW 128
PALYLIST_PIC:
DEFW 174
DEFW 15
DEFW 13
DEFW 73
DEFW 44
DEFW 48
num_id:
DEFW 241
DEFW 242
DEFW 243
DEFW 244
DEFW 245
DEFW 246
DEFW 247
DEFW 248
DEFW 249
DEFW 250
songnum_id:
DEFW 134
DEFW 135
DEFW 136
DEFW 137
DEFW 138
DEFW 139
DEFW 140
DEFW 141
DEFW 142
DEFW 143
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -