calinput.asm
来自「税控收款机软件。包括底层驱动和上层的应用一起。是一个完整的税控收款机软件方案」· 汇编 代码 · 共 2,180 行 · 第 1/3 页
ASM
2,180 行
DB ' ' ,' ' ,' ' ,0B7H,0A2H,0C6H,0B1H,0B4H,0F2H,0D3H
DB 0A1H,0CDH,0EAH,0B3H,0C9H,000H
?SC_446:
DB ' ' ,' ' ,' ' ,0C7H,0EBH,0B2H,0E5H,0C8H,0EBH,0D3H
DB 0C3H,0BBH,0A7H,0BFH,0A8H,000H
?SC_462:
DB ' ' ,0D2H,0D1H,0BEH,0ADH,0B5H,0BDH,0B1H,0A8H,0CBH
DB 0B0H,0C8H,0D5H,',' ,0C7H,0EBH,0B1H,0A8H,0CBH,0B0H
DB 000H
GeRen:
DB 028H
DB 0B8H
DB 0F6H
DB 0C8H
DB 0CBH
DB 029H
DB 0CBH
DB 0B0H
DB 0C4H
DB 0BFH
Daxiedanwei:
DB 0CDH
DB 0F2H
DB 0C7H
DB 0AAH
DB 0B0H
DB 0DBH
DB 0CAH
DB 0B0H
DB 0D4H
DB 0AAH
DB 0BDH
DB 0C7H
DB 0B7H
DB 0D6H
DB 0D5H
DB 0FBH
Daxieshuzi:
DB 0C1H
DB 0E3H
DB 0D2H
DB 0BCH
DB 0B7H
DB 0A1H
DB 0C8H
DB 0FEH
DB 0CBH
DB 0C1H
DB 0CEH
DB 0E9H
DB 0C2H
DB 0BDH
DB 0C6H
DB 0E2H
DB 0B0H
DB 0C6H
DB 0BEH
DB 0C1H
RSEG ?PR?CALINPUT
Com017C:
L?0381:
USING 0
MOVX A,@DPTR
MOV R6,A
INC DPTR
MOVX A,@DPTR
MOV R7,A
CLR A
L?0382:
MOV R4,A
MOV R5,A
MOV DPTR,#i?040
LCALL ?C?LSTXDATA
MOV DPTR,#i?040
MOVX A,@DPTR
MOV R4,A
INC DPTR
MOVX A,@DPTR
MOV R5,A
INC DPTR
MOVX A,@DPTR
MOV R6,A
INC DPTR
MOVX A,@DPTR
MOV R7,A
CLR A
MOV R3,A
MOV R2,#01H
MOV R1,A
MOV R0,A
LCALL ?C?LMUL
MOV DPTR,#i?040
L?0383:
LCALL ?C?LSTXDATA
L?0384:
MOV DPTR,#i?040
L?0385:
MOVX A,@DPTR
MOV R4,A
INC DPTR
MOVX A,@DPTR
MOV R5,A
INC DPTR
MOVX A,@DPTR
MOV R6,A
INC DPTR
MOVX A,@DPTR
RET
L?0386:
USING 0
L?0387:
MOV DPTR,#cccc
L?0388:
CLR A
MOV R7,A
MOV R6,A
MOV R5,#0C8H
MOV R4,#042H
L?0389:
MOVX A,@DPTR
MOV R0,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
MOV R3,A
RET
L?0390:
USING 0
MOV R0,#LOW (inv_cur_vol+021H)
MOV R4,#HIGH (inv_cur_vol+021H)
MOV R6,#00H
MOV R7,#04H
L?0391:
MOV R5,#01H
MOV R3,#01H
MOV R2,#HIGH (inv_prn_cur_info)
MOV R1,#LOW (inv_prn_cur_info)
LJMP ?C?COPY
L?0392:
USING 0
L?0393:
MOV R0,#LOW (inv_prn_cur_info+0B5H)
MOV R4,#HIGH (inv_prn_cur_info+0B5H)
MOV R7,#0AH
L?0394:
MOV R5,#01H
MOV R3,#01H
MOV R2,#HIGH (inv_cur_vol)
MOV R1,#LOW (inv_cur_vol)
MOV R6,#00H
LJMP ?C?COPY
L?0395:
USING 0
MOV R0,#LOW (ttt?1289)
MOV R4,#HIGH (ttt?1289)
MOV R5,#01H
MOV R3,#01H
L?0396:
MOV R6,#00H
MOV R7,#04H
LJMP ?C?COPY
L?0398:
USING 0
MOV B,#024H
MOV A,k?349
MUL AB
ADD A,#LOW (prn_page_buf+0225H)
MOV DPL,A
MOV A,B
ADDC A,#HIGH (prn_page_buf+0225H)
L?0399:
MOV DPH,A
MOV A,DPL
ADD A,i?348
L?0400:
MOV DPL,A
CLR A
ADDC A,DPH
MOV DPH,A
RET
L?0401:
USING 0
MOV R0,#LOW (flash_temp)
MOV R4,#HIGH (flash_temp)
MOV R5,#01H
MOV R3,#01H
LJMP ?C?COPY
L?0402:
USING 0
MOV R0,#LOW (inv_prn_cur_info+039H)
MOV R4,#HIGH (inv_prn_cur_info+039H)
MOV R5,#01H
MOV R6,#00H
LJMP ?C?COPY
L?0403:
USING 0
L?0404:
MOV A,R7
ADD A,R3
L?0405:
MOV R7,A
MOV A,R6
ADDC A,R2
L?0406:
MOV R6,A
MOV A,R5
ADDC A,R1
MOV R5,A
MOV A,R4
ADDC A,R0
MOV R4,A
RET
L?0407:
USING 0
MOV R0,#LOW (Hz_Record)
MOV R4,#HIGH (Hz_Record)
MOV R2,#HIGH (fiscal_code_adc)
MOV R1,#LOW (fiscal_code_adc)
L?0408:
MOV R5,#01H
MOV R3,#01H
MOV R6,#00H
MOV R7,#014H
LJMP ?C?COPY
L?0409:
USING 0
L?0410:
MOVX A,@DPTR
MOV R7,A
SWAP A
L?0411:
ANL A,#0FH
MOV B,#010H
MUL AB
MOV R3,#0FFH
ADD A,#LOW (D00)
MOV R1,A
MOV A,#HIGH (D00)
ADDC A,B
MOV R2,A
RET
L?0412:
USING 0
MOV R0,#LOW (prn_page_buf+018EH)
MOV R4,#HIGH (prn_page_buf+018EH)
MOV R5,#01H
MOV R6,#00H
LJMP ?C?COPY
L?0413:
USING 0
L?0414:
MOV ?_sprintf?BYTE+09H,A
L?0415:
MOV ?_sprintf?BYTE+08H,R6
MOV ?_sprintf?BYTE+07H,R5
MOV ?_sprintf?BYTE+06H,R4
L?0416:
MOV R3,#01H
MOV R2,#HIGH (databuf)
MOV R1,#LOW (databuf)
RET
L?0417:
USING 0
MOV R5,#01H
MOV R3,#01H
MOV R2,#HIGH (user+019H)
MOV R1,#LOW (user+019H)
MOV R6,#00H
LJMP ?C?COPY
L?0418:
USING 0
MOV R7,A
CLR A
LCALL ?C?FCASTL
CLR A
MOV R3,A
MOV R2,A
MOV R1,#0C8H
MOV R0,#042H
LCALL ?C?FPDIV
L?0419:
MOV DPTR,#aaaa
L?0420:
LCALL ?C?LSTXDATA
L?0421:
MOV ?_sprintf?BYTE+03H,#0FFH
MOV ?_sprintf?BYTE+04H,#HIGH (?SC_165)
MOV ?_sprintf?BYTE+05H,#LOW (?SC_165)
RET
L?0422:
USING 0
MOV R2,#HIGH (GeRen)
MOV R1,#LOW (GeRen)
L?0423:
MOV R5,#01H
MOV R3,#0FFH
MOV R6,#00H
MOV R7,#06H
LJMP ?C?COPY
L?0424:
USING 0
L?0425:
MOV A,R7
MOVX @DPTR,A
MOV A,#LOW (databuf+01H)
ADD A,i?348
MOV DPL,A
CLR A
ADDC A,#HIGH (databuf+01H)
L?0426:
MOV DPH,A
MOVX A,@DPTR
L?0427:
MOV R7,A
L?0428:
MOV B,#024H
MOV A,k?349
MUL AB
RET
L?0429:
USING 0
MOV R2,#HIGH (icc_buff)
MOV R1,#LOW (icc_buff)
MOV R7,#016H
L?0430:
MOV R5,#01H
MOV R3,#01H
MOV R6,#00H
LJMP ?C?COPY
L?0431:
USING 0
L?0432:
MOV DPTR,#TimeControlCard
L?0433:
ADD A,#01H
MOV R7,A
CLR A
ADDC A,R6
MOV R6,A
CLR A
ADDC A,R5
MOV R5,A
CLR A
ADDC A,R4
MOV R4,A
LJMP ?C?LSTXDATA
L?0434:
USING 0
L?0435:
MOV DPTR,#prn_page_buf+01E2H
MOVX A,@DPTR
MOV DPTR,#prn_page_buf+01E4H
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+01E1H
MOVX A,@DPTR
MOV DPTR,#prn_page_buf+01E3H
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+01E2H
MOV A,#02DH
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+01E0H
MOVX A,@DPTR
INC DPTR
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+01DFH
MOVX A,@DPTR
INC DPTR
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+01DFH
RET
L?0436:
USING 0
MOV R5,#01H
MOV R3,#0FFH
L?0437:
MOV R6,#00H
MOV R7,#02H
LJMP ?C?COPY
L?0438:
USING 0
L?0439:
MOV A,#LOW (databuf)
ADD A,i?2199
L?0440:
MOV DPL,A
CLR A
ADDC A,#HIGH (databuf)
MOV DPH,A
MOVX A,@DPTR
RET
L?0441:
USING 0
MOV R5,#01H
MOV R3,#0FFH
L?0442:
MOV R6,#00H
MOV R7,#08H
LJMP ?C?COPY
L?0443:
USING 0
L?0444:
MOV A,R5
MOVX @DPTR,A
MOV DPTR,#i?1286
MOVX A,@DPTR
MOV R6,A
ADD A,#LOW (databuf+01H)
MOV DPL,A
CLR A
ADDC A,#HIGH (databuf+01H)
L?0445:
MOV DPH,A
MOVX A,@DPTR
MOV R5,A
MOV B,#024H
MOV A,R4
MUL AB
RET
L?0446:
USING 0
L?0447:
MOV DPH,A
MOVX A,@DPTR
SWAP A
ANL A,#0FH
ADD A,#030H
MOV R7,A
MOV A,i?2199
L?0448:
ADD A,ACC
MOV R5,A
CLR A
RLC A
MOV R4,A
RET
L?0449:
USING 0
MOV A,k?349
L?0450:
MUL AB
L?0451:
ADD A,#LOW (prn_page_buf+0222H)
MOV DPL,A
MOV A,B
ADDC A,#HIGH (prn_page_buf+0222H)
MOV DPH,A
RET
L?0452:
USING 0
L?0453:
MOV R6,#01H
MOV R3,#01H
L?0454:
MOV R7,#0FH
MOV R5,#00H
MOV R2,#HIGH (inv_prn_cur_info)
MOV R1,#LOW (inv_prn_cur_info)
LJMP ?C?MEMSET
L?0455:
USING 0
MOV R0,#LOW (inv_prn_tmp_info)
MOV R4,#HIGH (inv_prn_tmp_info)
MOV R2,#HIGH (flash_temp)
MOV R1,#LOW (flash_temp)
L?0456:
MOV R5,#01H
MOV R3,#01H
L?0457:
MOV R6,#01H
MOV R7,#0FH
LJMP ?C?COPY
L?0458:
USING 0
MOV R4,#00H
ADD A,R1
MOV R1,A
MOV A,R4
ADDC A,R2
MOV R2,A
LCALL ?C?CLDOPTR
MOV C,A_1
ORL C,A_0
MOV B_4,C
MOV C,A_2
ORL C,A_3
MOV B_5,C
MOV C,A_4
ORL C,A_5
MOV B_6,C
MOV C,A_6
ORL C,A_7
MOV B_7,C
ANL B,#0F0H
MOV A,B
ORL A,R7
MOV g_temp,A
RET
L?0459:
USING 0
MOV DPL,A
CLR A
ADDC A,#HIGH (inv_cur_vol)
L?0460:
MOV DPH,A
MOVX A,@DPTR
ANL A,#0FH
ADD A,#030H
RET
L?0461:
USING 0
ADD A,#00H
MOV R7,A
CLR A
ADDC A,R6
MOV R6,A
MOV A,R5
ADDC A,#020H
MOV R5,A
CLR A
ADDC A,R4
MOV R4,A
LJMP ?C?LSTXDATA
L?0462:
USING 0
MOV R7,#025H
MOV R2,#HIGH (inv_cur_vol)
MOV R1,#LOW (inv_cur_vol)
L?0463:
MOV R6,#00H
MOV R5,#00H
MOV R3,#01H
LJMP ?C?MEMSET
L?0464:
USING 0
MOV DPH,#00H
LCALL ?C?CLDOPTR
MOV C,A_1
ORL C,A_0
MOV B_0,C
MOV C,A_3
ORL C,A_2
MOV B_1,C
MOV C,A_5
ORL C,A_4
MOV B_2,C
MOV C,A_7
ORL C,A_6
MOV B_3,C
MOV A,B
ANL A,#0FH
MOV R7,A
RET
L?0465:
USING 0
ADDC A,R2
L?0466:
MOV DPH,A
MOV A,R7
L?0467:
MOVX @DPTR,A
L?0468:
MOV DPTR,#i?1286
MOVX A,@DPTR
INC A
MOVX @DPTR,A
RET
L?0470:
USING 0
L?0471:
ADDC A,R4
L?0472:
MOV DPH,A
MOV A,R7
MOVX @DPTR,A
INC i?2199
MOV A,i?2199
RET
L?0473:
USING 0
L?0474:
MOV DPTR,#prn_page_buf+0367H
MOV A,#02DH
MOVX @DPTR,A
MOV DPTR,#prn_page_buf+0386H
MOV A,#0CDH
MOVX @DPTR,A
INC DPTR
MOV A,#0CBH
MOVX @DPTR,A
RET
L?0475:
USING 0
MOV DPL,A
CLR A
ADDC A,#HIGH (inv_cur_vol)
L?0476:
MOV DPH,A
MOVX A,@DPTR
SWAP A
ANL A,#0FH
ADD A,#030H
RET
L?0477:
USING 0
MOV A,R7
L?0478:
MOV B,#02FH
MUL AB
ADD A,#LOW (tax)
MOV DPL,A
MOV A,B
ADDC A,#HIGH (tax)
MOV DPH,A
MOVX A,@DPTR
RET
L?0479:
USING 0
LCALL ?C?LMUL
L?0480:
MOV R0,AR4
L?0481:
MOV R1,AR5
MOV R2,AR6
MOV R3,AR7
RET
L?0482:
USING 0
L?0483:
MOVX A,@DPTR
MOV B,#05H
MUL AB
ADD A,#LOW (inv_prn_cur_info+0FF15H)
MOV DPL,A
MOV A,B
ADDC A,#HIGH (inv_prn_cur_info+0FF15H)
MOV DPH,A
RET
L?0484:
USING 0
L?0485:
LCALL ?C?FPADD
L?0486:
MOV DPTR,#dddd
LJMP ?C?LSTXDATA
L?0487:
USING 0
MOV R5,#01H
MOV R3,#0FFH
L?0488:
MOV R6,#00H
MOV R7,#0AH
LJMP ?C?COPY
L?0489:
USING 0
MOV R7,A
MOVX A,@DPTR
MOV R0,A
INC DPTR
MOVX A,@DPTR
MOV R1,A
INC DPTR
MOVX A,@DPTR
MOV R2,A
INC DPTR
MOVX A,@DPTR
ADD A,R7
MOV R7,A
MOV A,R2
ADDC A,R6
L?0490:
MOV R6,A
MOV A,R1
ADDC A,R5
MOV R5,A
MOV A,R0
ADDC A,R4
MOV R4,A
RET
L?0491:
USING 0
MOV R7,A
CLR A
LCALL ?C?FCASTL
L?0492:
MOV DPTR,#cccc
L?0493:
LCALL ?C?LSTXDATA
MOV DPTR,#cccc
RET
L?0495:
USING 0
ADD A,#01H
MOV R7,A
CLR A
ADDC A,R6
MOV DPTR,#inv_cur_info
L?0496:
MOV R6,A
CLR A
ADDC A,R5
MOV R5,A
CLR A
ADDC A,R4
MOV R4,A
LJMP ?C?LSTXDATA
L?0497:
USING 0
MOV R0,#LOW (inv_tmp_vol)
MOV R4,#HIGH (inv_tmp_vol)
MOV R2,#HIGH (inv_cur_vol)
MOV R1,#LOW (inv_cur_vol)
MOV R7,#00H
L?0498:
MOV R5,#01H
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?