📄 rf_oper.lst
字号:
331 006A
332 006A ; SZ PER
333 006A ; JMP NFIRST_PER
334 006A ;
335 006A ; MOV A, PER_CNT
336 006A ; MOV PER, A
337 006A ; JMP PER_NEXT
338 006A
339 006A NFIRST_PER:
340 006A
341 006A 0700 R MOV A, PER
342 006B 0300 R ADD A, PER_CNT
343 006C 1985 RR ACC
344 006D 0E7F AND A, 07FH
345 006E 0080 R MOV PER, A
346 006F
347 006F PER_NEXT:
348 006F 1F00 R CLR PERIOD_CNT
349 0070 1F00 R CLR PER_CNT
350 0071
351 0071 NOT_100_CNT:
352 0071
353 0071 0003 RET
354 0072
355 0072 HANDLE_RF_DATA:
356 0072 ;;============ ALIVE COUNT =========================
357 0072 ; MOV A, 15
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 7
358 0072 ; XOR A, WAIT_NO_ALIVE_PACK_COUNT
359 0072 ; SZ ACC
360 0072 ; INC WAIT_NO_ALIVE_PACK_COUNT
361 0072 ;;==================================================
362 0072
363 0072 0FAC MOV A, RF_INBUFF
364 0073 0081 MOV MP0, A
365 0074
366 0074 0700 MOV A, ID0
367 0075
368 0075 0CE1 XOR A, 0E1H
369 0076 1085 SZ ACC
370 0077 2800 R JMP NOT_MOUSE_DATA
371 0078
372 0078 3000 R SET RF_MDATA_GOT
373 0079 1481 INC MP0
374 007A 0700 MOV A, ID0
375 007B 0400 R XOR A, RF_LAST_MSERIAL
376 007C 1085 SZ ACC
377 007D 2800 R JMP GOT_NEW_MOUSE_DATA
378 007E ;M_SERIAL SAME!
379 007E 1480 R INC M_COUNT ;FOR TEST
380 007F 3800 E SNZ FIFO_WF
381 0080 2800 R JMP UPDATE_MSERIAL
382 0081 1480 R INC F_WRITE_FAIL_COUNT ;FOR TEST
383 0082 GOT_NEW_MOUSE_DATA:
384 0082 ;=========================== FOR OFFICE BUTTON ==============================
385 0082 ;SET RF_MDATA_GOT
386 0082 0FAC MOV A, RF_INBUFF
387 0083 0081 MOV MP0, A
388 0084 1481 INC MP0
389 0085 1481 INC MP0
390 0086 1481 INC MP0
391 0087 3980 SNZ ID0.3
392 0088 2800 R JMP L_M_R_BUT_OR_XYZ
393 0089 2000 E CALL WRITE_FIFO2XX
394 008A
395 008A 3C00 E SZ FIFO_WF
396 008B 3400 R CLR RF_MDATA_GOT
397 008C 3C00 E SZ FIFO_WF
398 008D 2800 R JMP NOT_UPDATE_MSERIAL
399 008E 2800 R JMP UPDATE_MSERIAL
400 008F ;============================================================================
401 008F L_M_R_BUT_OR_XYZ:
402 008F 2000 E CALL WRITE_FIFO2
403 0090 3C00 E SZ FIFO_WF
404 0091 3400 R CLR RF_MDATA_GOT
405 0092 3C00 E SZ FIFO_WF
406 0093 2800 R JMP NOT_UPDATE_MSERIAL
407 0094
408 0094 UPDATE_MSERIAL:
409 0094 0FAC MOV A, RF_INBUFF
410 0095 0081 MOV MP0, A
411 0096 1481 INC MP0
412 0097 0700 MOV A, ID0
413 0098 0080 R MOV RF_LAST_MSERIAL, A
414 0099 0003 RET ;JMP NOT_KB_D2_NOR_C3_DATA
415 009A
416 009A ;CLR FIFO2_WF_CNT
417 009A
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 8
418 009A NOT_UPDATE_MSERIAL:
419 009A 0003 RET
420 009B NOT_MOUSE_DATA:
421 009B
422 009B 0700 MOV A, ID0
423 009C 0CD2 XOR A, 0D2H
424 009D 1085 SZ ACC
425 009E 2800 R JMP MAYBE_ALIVE_PACKAGE ;NOT_KB_D2_DATA
426 009F 2800 R JMP D2_PACK_ACCESS
427 00A0
428 00A0 MAYBE_ALIVE_PACKAGE:
429 00A0 0700 MOV A, ID0
430 00A1 0CD3 XOR A, 0D3H
431 00A2 1085 SZ ACC
432 00A3 2800 R JMP NOT_KB_D2_DATA
433 00A4 ;============= D3_ALIVE_PACKAGE ACCESS SECTION =============
434 00A4 D3_PACK_ACCESS:
435 00A4 3000 R SET RF_KDATA_GOT
436 00A5 1F00 R CLR WAIT_NO_ALIVE_PACK_COUNT
437 00A6 2800 R JMP UPDATE_KSERIAL
438 00A7 ;============= D2_PACKAGE ACCESS SECTION ===================
439 00A7 D2_PACK_ACCESS:
440 00A7 50B0 SZ [0B0H]
441 00A8 2800 R JMP SET_MAKE_KEY
442 00A9 50B1 SZ [0B1H]
443 00AA 2800 R JMP SET_MAKE_KEY
444 00AB 2800 R JMP CLEAR_MAKE_KEY
445 00AC SET_MAKE_KEY:
446 00AC 3000 R SET MAKE_KEY
447 00AD 2800 R JMP D2_PACK_ACC
448 00AE CLEAR_MAKE_KEY:
449 00AE 3400 R CLR MAKE_KEY
450 00AF D2_PACK_ACC:
451 00AF 3000 R SET RF_KDATA_GOT
452 00B0 1481 INC MP0
453 00B1 0700 MOV A, ID0
454 00B2 0400 R XOR A, RF_LAST_KSERIAL
455 00B3 1085 SZ ACC
456 00B4 2800 R JMP GOT_NEW_KB_DATA
457 00B5
458 00B5 3800 E SNZ FIFO_WF1
459 00B6 2800 R JMP UPDATE_KSERIAL
460 00B7
461 00B7 GOT_NEW_KB_DATA:
462 00B7 2000 E CALL WRITE_FIFO1
463 00B8 3C00 E SZ FIFO_WF1
464 00B9 3400 R CLR RF_KDATA_GOT
465 00BA 3C00 E SZ FIFO_WF1
466 00BB 2800 R JMP NOT_UPDATE_KSERIAL
467 00BC
468 00BC ; SZ FIFO_WF
469 00BC ; CLR RF_LAST_MSERIAL
470 00BC ; SZ FIFO_WF
471 00BC ; JMP NOT_UPDATE_MSERIAL
472 00BC
473 00BC UPDATE_KSERIAL:
474 00BC 0FAC MOV A, RF_INBUFF
475 00BD 0081 MOV MP0, A
476 00BE 1481 INC MP0
477 00BF 0700 MOV A, ID0
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 9
478 00C0 0080 R MOV RF_LAST_KSERIAL, A
479 00C1 0003 RET ;JMP NOT_KB_D2_NOR_C3_DATA
480 00C2
481 00C2 NOT_UPDATE_KSERIAL:
482 00C2 ; CLR RF_LAST_KSERIAL
483 00C2 0003 RET
484 00C3
485 00C3 NOT_KB_D2_DATA:
486 00C3 0700 MOV A, ID0
487 00C4 0CC3 XOR A, 0C3H
488 00C5 1085 SZ ACC
489 00C6 2800 R JMP NOT_KB_D2_NOR_C3_DATA
490 00C7 ; ============ C3_PACKAGE ACCESS SECTION ==================
491 00C7 3000 R SET RF_KDATA_GOT
492 00C8 1481 INC MP0
493 00C9 0700 MOV A, ID0
494 00CA 0400 R XOR A, RF_LAST_KSERIAL
495 00CB 1085 SZ ACC
496 00CC 2000 E CALL WRITE_FIFO2X
497 00CD
498 00CD 3C00 E SZ FIFO_WF1
499 00CE 2000 E CALL WRITE_FIFO2X
500 00CF 2800 R JMP UPDATE_KSERIAL
501 00D0 ; CALL WRITE_FIFO2X
502 00D0 ; =================================================
503 00D0 NOT_KB_D2_NOR_C3_DATA:
504 00D0 ;MOV A, 15
505 00D0 ;XOR A, WAIT_NO_ALIVE_PACK_COUNT
506 00D0 ;SZ ACC
507 00D0 ;RET
508 00D0 ;CALL WRITE_FIFO1_ALLZERO ;WRITE_FIFO1_TIMEOUT_BREAK_KEY
509 00D0 0003 RET
510 00D1
511 00D1 RF_RESET:
512 00D1 3792 CLR PSB
513 00D2 3192 SET TRRDY
514 00D3
515 00D3 2000 R CALL DELAY_120MS
516 00D4
517 00D4 3592 CLR TRRDY
518 00D5 2000 R CALL DELAY_20US
519 00D6 3392 SET PSB
520 00D7
521 00D7 2000 R CALL DELAY_120MS
522 00D8 0003 RET
523 00D9
524 00D9 RF_REG_WRITE:
525 00D9 3312 SET SPIEN
526 00DA 2000 R CALL DELAY_20US
527 00DB
528 00DB ;WRITE R/W BIT, 1
529 00DB 3292 SET TRSDAT
530 00DC 3212 SET TRSCLK
531 00DD 3612 CLR TRSCLK
532 00DE 3692 CLR TRSDAT
533 00DF
534 00DF 3C00 R SZ RF_REG_ADDRESS.6
535 00E0 3292 SET TRSDAT
536 00E1 3212 SET TRSCLK
537 00E2 3612 CLR TRSCLK
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 10
538 00E3 3692 CLR TRSDAT
539 00E4
540 00E4 3C00 R SZ RF_REG_ADDRESS.5
541 00E5 3292 SET TRSDAT
542 00E6 3212 SET TRSCLK
543 00E7 3612 CLR TRSCLK
544 00E8 3692 CLR TRSDAT
545 00E9
546 00E9 3C00 R SZ RF_REG_ADDRESS.4
547 00EA 3292 SET TRSDAT
548 00EB 3212 SET TRSCLK
549 00EC 3612 CLR TRSCLK
550 00ED 3692 CLR TRSDAT
551 00EE
552 00EE 3C00 R SZ RF_REG_ADDRESS.3
553 00EF 3292 SET TRSDAT
554 00F0 3212 SET TRSCLK
555 00F1 3612 CLR TRSCLK
556 00F2 3692 CLR TRSDAT
557 00F3
558 00F3 3C00 R SZ RF_REG_ADDRESS.2
559 00F4 3292 SET TRSDAT
560 00F5 3212 SET TRSCLK
561 00F6 3612 CLR TRSCLK
562 00F7 3692 CLR TRSDAT
563 00F8
564 00F8 3C00 R SZ RF_REG_ADDRESS.1
565 00F9 3292 SET TRSDAT
566 00FA 3212 SET TRSCLK
567 00FB 3612 CLR TRSCLK
568 00FC 3692 CLR TRSDAT
569 00FD
570 00FD 3C00 R SZ RF_REG_ADDRESS.0
571 00FE 3292 SET TRSDAT
572 00FF 3212 SET TRSCLK
573 0100 3612 CLR TRSCLK
574 0101 3692 CLR TRSDAT
575 0102
576 0102
577 0102 ;ADDRESS PHASE
578 0102 ; MOV A, 7
579 0102 ; MOV RF_LCOUNT0, A
580 0102 ; WREGAP:
581 0102 ; SZ RF_REG_ADDRESS.6
582 0102 ; SET TRSDAT
583 0102 ; SET TRSCLK
584 0102 ; CLR TRSCLK
585 0102 ; CLR TRSDAT
586 0102 ; RL RF_REG_ADDRESS
587 0102 ; SDZ RF_LCOUNT0
588 0102 ; JMP WREGAP
589 0102 ;
590 0102 ; RL RF_REG_ADDRESS
591 0102
592 0102 3C00 R SZ RF_REG_DATA.7
593 0103 3292 SET TRSDAT
594 0104 3212 SET TRSCLK
595 0105 3612 CLR TRSCLK
596 0106 3692 CLR TRSDAT
597 0107
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 11
598 0107 3C00 R SZ RF_REG_DATA.6
599 0108 3292 SET TRSDAT
600 0109 3212 SET TRSCLK
601 010A 3612 CLR TRSCLK
602 010B 3692 CLR TRSDAT
603 010C
604 010C 3C00 R SZ RF_REG_DATA.5
605 010D 3292 SET TRSDAT
606 010E 3212 SET TRSCLK
607 010F 3612 CLR TRSCLK
608 0110 3692 CLR TRSDAT
609 0111
610 0111 3C00 R SZ RF_REG_DATA.4
611 0112 3292 SET TRSDAT
612 0113 3212 SET TRSCLK
613 0114 3612 CLR TRSCLK
614 0115 3692 CLR TRSDAT
615 0116
616 0116 3C00 R SZ RF_REG_DATA.3
617 0117 3292 SET TRSDAT
618 0118 3212 SET TRSCLK
619 0119 3612 CLR TRSCLK
620 011A 3692 CLR TRSDAT
621 011B
622 011B 3C00 R SZ RF_REG_DATA.2
623 011C 3292 SET TRSDAT
624 011D 3212 SET TRSCLK
625 011E 3612 CLR TRSCLK
626 011F 3692 CLR TRSDAT
627 0120
628 0120 3C00 R SZ RF_REG_DATA.1
629 0121 3292 SET TRSDAT
630 0122 3212 SET TRSCLK
631 0123 3612 CLR TRSCLK
632 0124 3692 CLR TRSDAT
633 0125
634 0125 3C00 R SZ RF_REG_DATA.0
635 0126 3292 SET TRSDAT
636 0127 3212 SET TRSCLK
637 0128 3612 CLR TRSCLK
638 0129 3692 CLR TRSDAT
639 012A
640 012A ;DATA PHASE
641 012A ; MOV A, 8
642 012A ; MOV RF_LCOUNT0, A
643 012A ; WREGDP:
644 012A ; SZ RF_REG_DATA.7
645 012A ; SET TRSDAT
646 012A ; SET TRSCLK
647 012A ; CLR TRSCLK
648 012A ; CLR TRSDAT
649 012A ; RL RF_REG_DATA
650 012A ; SDZ RF_LCOUNT0
651 012A ; JMP WREGDP
652 012A
653 012A 3712 CLR SPIEN
654 012B
655 012B 0003 RET
656 012C
657 012C
"File: RF_OPER.ASM Holtek Cross-Assembler Version 2.86 Page 12
658 012C RF_REG_READ:
659 012C 3312 SET SPIEN
660 012D 2000 R CALL DELAY_20US
661 012E
662 012E ;WRITE R/W BIT, 0
663 012E 3692 CLR TRSDAT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -