📄 new0001.l
字号:
1196 02A4 send_next:
1197
1198
1199 02A4 E6 3B E0 ld ACC_SEN_VAL,#0E0H
1200 02A7 F6 07 21 call PT2314_SEND
1201 02AA F6 08 01 call Pt2258_Send
1202
1203 02AD E4 35 3B ld ACC_SEN_VAL,EQ_RAM
1204 02B0 F6 07 21 call PT2314_SEND
1205 02B3 F6 07 4E call SEND_EQ_VAL
1206
1207 02B6 E6 3B 0F ld ACC_SEN_VAL,#15
1208 02B9 F6 03 C9 call Delay_50ms
1209
1210 <01> CLR_MUTE
1211 02BC 56 E0 FE AND P0,#0FEH
1212 <01> .ENDM
1213 02BF set_volume_ret:
1214 02BF AF RET
1215 ;*******************************************************************
1216
1217 [01] .IF 0
1218 power_key_par proc
1219 [00] .ENDIF
1220 02C0 power_key_par:
1221 <01> KEY_VALID_IS_LOW
1222 02C0 76 00 20 TM STATE_ALL,#00100000B
1223 <01> .ENDM
1224 02C3 6D 03 04 jp Z,power_ret
1225 02C6 A6 39 0D cp Current_Key,#IR_POWER_KEY
1226 02C9 ED 03 04 jp NE,power_ret
1227 <01> CLR_KEY_VALID
1228 02CC 56 00 DF AND STATE_ALL,#11011111B
1229 <01> .ENDM
1230 02CF B0 3D clr FUNCTION_STAT
1231 <01> SET_MUTE
1232 02D1 46 E0 01 OR P0,#01H
1233 <01> .ENDM
1234
1235 <01> CLR_FLAT
1236 02D4 56 E3 BF AND P3,#0BFH
1237 <01> .ENDM
1238 <01> CLR_POP
1239 02D7 56 E2 BF AND P2,#0BFH
1240 <01> .ENDM
1241 <01> CLR_ROCK
1242 02DA 56 E2 DF AND P2,#0DFH
1243 <01> .ENDM
1244 <01> CLR_JAZZ
1245 02DD 56 E2 7F AND P2,#7FH
1246 <01> .ENDM
1247
1248
1249
1250 02E0 E6 3B 05 ld ACC_SEN_VAL,#5
1251 02E3 F6 03 C9 call Delay_50ms
1252
1253 <01> CLR_TAPE
1254 02E6 56 E2 FE AND P2,#0FEH
1255 <01> .ENDM
1256 <01> CLR_CD
1257 02E9 56 E2 FD AND P2,#0FDH
1258 <01> .ENDM
1259 <01> CLR_RADIO
1260 02EC 56 E2 FB AND P2,#0FBH
1261 <01> .ENDM
1262 <01> CLR_AUX
1263 02EF 56 E2 F7 AND P2,#0F7H
1264 <01> .ENDM
1265
1266 <01> XOR_POWER
1267 02F2 B6 E0 02 XOR P0,#02H
1268 <01> .ENDM
1269 <01> POWER_IS_LOW
1270 02F5 76 E0 02 TM P0,#02H
1271 <01> .ENDM
1272 02F8 6D 03 04 jp Z,power_ret
1273 02FB E6 43 14 ld PT2258_VOL,#14h
1274 02FE E6 3B 05 ld ACC_SEN_VAL,#5
1275 0301 F6 03 C9 call Delay_50ms
1276 0304 power_ret:
1277 0304 AF RET
1278 ;*******************************************************************
1279
1280 ;**********************************************************************
1281 [01] .IF 0
1282 Get_Remote_Key PROC
1283 [00] .ENDIF
1284 ;**********************************************************************
1285 0305 Get_Remote_Key:
1286 0305 E6 39 FF ld Current_Key,#0FFH
1287 <01> IR_KEY_DOWN_IS_LOW
1288 0308 76 00 08 TM STATE_ALL,#00001000B
1289 <01> .ENDM
1290 030B 6D 03 11 jp Z,get_rem_key
1291 030E E4 38 39 ld Current_Key,Current_Key_Bak
1292 0311 get_rem_key:
1293 <01> DATA_OK_IS_HIGH
1294 0311 66 00 04 TCM STATE_ALL,#00000100B
1295 <01> .ENDM
1296 0314 6D 03 18 jp Z,get_ir_key
1297 0317 AF RET
1298 0318 get_ir_key:
1299 <01> CLR_DATA_OK
1300 0318 56 00 FB AND STATE_ALL,#11111011B
1301 <01> .ENDM
1302 031B 60 06 COM remote_cmd_code0
1303 031D E4 06 36 ld REMOTE_CODE_BAK,remote_cmd_code0
1304 0320 A4 05 06 cp remote_cmd_code0,remote_cmd_code1
1305 0323 6D 03 27 jp Z,get_code
1306 0326 AF RET
1307 0327 get_code:
1308 0327 E4 36 39 ld Current_Key,REMOTE_CODE_BAK
1309 032A E4 39 38 ld Current_Key_Bak,Current_Key
1310 032D AF RET
1311 ;**********************************************************************
1312
1313
1314
1315
1316
1317
1318 ;**********************************************************************
1319 [01] .IF 0
1320 Get_Key PROC
1321 [00] .ENDIF
1322 ;**********************************************************************
1323 032E Get_Key:
1324 032E E4 39 37 ld PREVIOUS_KEY,Current_Key
1325
1326 0331 A6 37 FF cp PREVIOUS_KEY,#0FFH
1327 0334 ED 03 3C jp NZ,NO_CLR_KEY_DELAY
1328 0337 B0 40 clr KEY_DELAY
1329 <01> CLR_REP_KEY
1330 0339 56 41 F7 AND FLAG3,#0F7H
1331 <01> .ENDM
1332
1333 033C NO_CLR_KEY_DELAY:
1334
1335
1336 033C F6 03 05 call Get_Remote_Key
1337 033F A6 39 FF cp Current_Key,#0FFH
1338 0342 6D 03 4B jp EQ,search_ad_key
1339 0345 F6 03 67 call Get_Vol_Key
1340 0348 8D 03 5A jp IS_OK
1341 034B search_ad_key:
1342 034B F6 06 27 call Get_AD_Key
1343
1344 ;call Get_AD2_Key
1345
1346 034E F6 03 67 call Get_Vol_Key
1347 0351 A6 39 FF cp Current_Key,#0FFH
1348 0354 ED 03 5A jp NE,IS_OK
1349
1350 0357 E4 39 37 ld PREVIOUS_KEY,Current_Key
1351 035A IS_OK:
1352 <01> CLR_KEY_VALID
1353 035A 56 00 DF AND STATE_ALL,#11011111B
1354 <01> .ENDM
1355 035D A4 37 39 cp Current_Key,PREVIOUS_KEY
1356 0360 6D 03 66 jp EQ,RET_KEY_FAIL
1357 <01> SET_KEY_VALID
1358 0363 46 00 20 OR STATE_ALL,#00100000B
1359 <01> .ENDM
1360 0366 RET_KEY_FAIL:
1361 0366 AF RET
1362 ;**********************************************************************
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373 ;**********************************************************************
1374 [01] .IF 0
1375 Get_Vol_Key PROC
1376 [00] .ENDIF
1377 ;**********************************************************************
1378 0367 Get_Vol_Key:
1379
1380
1381 ;-----------------------------------------------------------------------
1382 0367 JUD_VOL_INC_KEY:
1383 0367 A6 39 10 cp Current_Key,#IR_VOL_INC_KEY
1384 036A ED 03 82 jp NE,V_UP_K_I
1385 036D E4 39 37 ld PREVIOUS_KEY,Current_Key;为使后面的按键为无效
1386 0370 A6 40 02 cp KEY_DELAY,#TIME_500MS
1387 0373 7D 03 98 jp ULT,JUD_VOL_DEC_KEY
1388 0376 E6 39 10 ld Current_Key,#IR_VOL_INC_KEY;
1389 0379 E6 37 FF ld PREVIOUS_KEY,#0FFH
1390 037C B0 40 clr KEY_DELAY
1391 <01> SET_REP_KEY
1392 037E 46 41 08 OR FLAG3,#08H
1393 <01> .ENDM
1394 0381 AF RET
1395 0382 V_UP_K_I:
1396 0382 A6 37 10 cp PREVIOUS_KEY,#IR_VOL_INC_KEY
1397 0385 ED 03 98 jp NE,JUD_VOL_DEC_KEY
1398
1399 <01> REP_KEY_IS_DOWN
1400 0388 66 41 08 TCM FLAG3,#08H
1401 <01> .ENDM
1402 038B 6D 03 98 jp Z,JUD_VOL_DEC_KEY
1403 038E E6 37 FF ld PREVIOUS_KEY,#0FFH
1404 <01> SET_REP_KEY
1405 0391 46 41 08 OR FLAG3,#08H
1406 <01> .ENDM
1407 0394 E6 39 10 ld Current_Key,#IR_VOL_INC_KEY
1408 0397 AF RET
1409 ;-----------------------------------------------------------------------
1410 0398 JUD_VOL_DEC_KEY:
1411 0398 A6 39 14 cp Current_Key,#IR_VOL_DEC_KEY
1412 039B ED 03 B3 jp NE,V_DOWN_K_I
1413 039E E4 39 37 ld PREVIOUS_KEY,Current_Key;为使后面的按键为无效
1414 03A1 A6 40 02 cp KEY_DELAY,#TIME_500MS
1415 03A4 7D 03 C8 jp ULT,JUD_VOL_DEC_KEY_RET
1416 03A7 E6 39 14 ld Current_Key,#IR_VOL_DEC_KEY;
1417 03AA E6 37 FF ld PREVIOUS_KEY,#0FFH
1418 03AD B0 40 clr KEY_DELAY
1419 <01> SET_REP_KEY
1420 03AF 46 41 08 OR FLAG3,#08H
1421 <01> .ENDM
1422
1423 03B2 AF RET
1424 03B3 V_DOWN_K_I:
1425 03B3 A6 37 14 cp PREVIOUS_KEY,#IR_VOL_DEC_KEY
1426 03B6 ED 03 C8 jp NE,JUD_VOL_DEC_KEY_RET
1427 <01> REP_KEY_IS_DOWN
1428 03B9 66 41 08 TCM FLAG3,#08H
1429 <01> .ENDM
1430 03BC 6D 03 C8 jp Z,JUD_VOL_DEC_KEY_RET
1431 03BF E6 37 FF ld PREVIOUS_KEY,#0FFH
1432 <01> SET_REP_KEY
1433 03C2 46 41 08 OR FLAG3,#08H
1434 <01> .ENDM
1435 03C5 E6 39 14 ld Current_Key,#IR_VOL_DEC_KEY
1436 03C8 JUD_VOL_DEC_KEY_RET:
1437 03C8 AF RET
1438 ;**********************************************************************
1439
1440
1441
1442
1443
1444 .include "time.asm"
1445 ;**********************************************************************
1446 ; DELAY TIMES FROM ACC_SEN_VAL
1447 ; ONT TIMES 50MS
1448 [01] .IF 0
1449 Delay_50ms proc
1450 [00] .ENDIF
1451 ;**********************************************************************
1452 03C9 Delay_50ms:
1453 03C9 A6 3B 00 cp ACC_SEN_VAL,#00H
1454 03CC ED 03 D0 jp NE,CON_DELAY_50MS
1455 03CF AF RET
1456 03D0 CON_DELAY_50MS:
1457 03D0 70 3B push ACC_SEN_VAL
1458 03D2 E6 3B FB ld ACC_SEN_VAL,#0FBH
1459 03D5 F6 08 4C call REMOTE_DELAY_200uS
1460 03D8 50 3B pop ACC_SEN_VAL
1461 03DA 00 3B dec ACC_SEN_VAL
1462 03DC A6 3B 01 cp ACC_SEN_VAL,#01H
1463 03DF FD 03 D0 jp UGE,CON_DELAY_50MS
1464 03E2 AF RET
1465 ;**********************************************************************
1466
1467
1468 ;**********************************************************************
1469 ; DELAY TIMES FROM ACC_SEN_VAL
1470 ; ONT TIMES 50MS
1471 [01] .IF 0
1472 Delay_10ms proc
1473 [00] .ENDIF
1474 ;**********************************************************************
1475 03E3 Delay_10ms:
1476 03E3 E6 3B 32 ld ACC_SEN_VAL,#50
1477 03E6 F6 08 4C call REMOTE_DELAY_200uS
1478 03E9 AF RET
1479 ;**********************************************************************
1480
1481
1482 [01] .IF 0
1483 DELAY_200MS PROC
1484 [00] .ENDIF
1485 03EA DELAY_200MS:
1486 03EA E6 3B F8 ld ACC_SEN_VAL,#0F8H
1487 03ED F6 08 4C call REMOTE_DELAY_200uS
1488 03F0 E6 3B F8 ld ACC_SEN_VAL,#0F8H
1489 03F3 F6 08 4C call REMOTE_DELAY_200uS
1490 03F6 AF RET
1491
1492 ;*************************************************************
1493
1494
1495
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -