声明:我司做的反汇编程序有以下特点:
1. ****成功,编译后和原来的******一样;
2. 程序和数据******分开,所有的程序******反成汇编,不会当做数据来处理;
3. 子程序之前用分段行分开;
4. 带寄存器名称,方便程序阅读;
5. 带PC地址和机器码,方便修改程序;
6. 中断和程序入口注释。
ORG 0000H
JMP L0073 ;0000
;====================================================================================
L0002: DB 020H,020H ;
;====================================================================================
HALT ;0004
L0005: DB 064H,06FH,062H
;====================================================================================
L0008: RETI ;0008
;====================================================================================
L0009: DB 072H,069H,06EH
;====================================================================================
L000C: RETI ;000C
;====================================================================================
L000D: DB 05FH,064H,040H
;====================================================================================
L0010: RETI ;0010
;====================================================================================
L0011: DB 068H,06FH,074H
;====================================================================================
L0014: RETI ;0014
;====================================================================================
L0015: DB 06DH,061H,069H
;====================================================================================
L0018: RETI ;0018
;====================================================================================
L0019: DB 06CH,02EH,063H
;====================================================================================
L001C: RETI ;001C
;====================================================================================
L001D: DB 06FH,06DH,020H ;om
;====================================================================================
L0020: JMP L0509 ;0020
;====================================================================================
L0022: DB 020H,020H ;
;====================================================================================
L0024: LJMP L07E6 ;0024
;====================================================================================
L0027: DB 020H ;
;====================================================================================
L0028: LJMP L0909 ;0028
;====================================================================================
L002B: DB 020H ;
;====================================================================================
L002C: JMP L0068 ;002C
;====================================================================================
L002E: DB 020H,020H ;
;====================================================================================
L0030: RETI ;0030
;====================================================================================
L0031: DB 020H,020H,020H ;
;====================================================================================
L0034: RETI ;0034
;====================================================================================
L0035: DB 020H,020H,020H ;
;====================================================================================
L0038: LJMP L1184 ;0038
;====================================================================================
L003B: DB 020H ;
;====================================================================================
L003C: LJMP L10D9 ;003C
;====================================================================================
L003F: DB 020H ;
;====================================================================================
L0040: RETI ;0040
;====================================================================================
L0041: DB 020H,020H,020H ;
;====================================================================================
L0044: CMP [0B0H],0A0H ;0044
JNC L004C ;0047
INC [0B0H] ;0049
RETI ;004B
;====================================================================================
L004C: AND REG[INT_MSK1],7FH ;004C
AND REG[INT_MSK2],0FDH ;004F
AND [0BCH],0F7H ;0052
MOV [0B2H],00H ;0055
RETI ;0058
;====================================================================================
L0059: DB 030H,030H,030H,030H,030H,030H,030H,030H
L0061: DB 030H,030H,030H
;====================================================================================
L0064: MOV REG[RESWDT],38H ;0064
RETI ;0067
;====================================================================================
L0068: MOV A,REG[EP0MODE] ;0068
MOV REG[EP0MODE],03H ;006A
MOV REG[EP1MODE],00H ;006D
MOV REG[EP2MODE],00H ;0070
L0073: OR F,10H ;0073
MOV REG[OSC_CR0],1BH ;0075
AND F,07H ;0078
MOV A,0E3H ;007A
SWAP A,SP ;007C
MOV REG[P04CR],00H ;007D
MOV REG[P05CR],00H ;0080
MOV REG[P06CR],01H ;0083
MOV REG[P0DATA],40H ;0086
MOV [0BDH],00H ;0089
MOV [0BEH],00H ;008C
MOV [0BCH],00H ;008F
MOV REG[TMRCR],50H ;0092
MOV REG[PIRL],40H ;0095
MOV REG[PIRH],00H ;0098
MOV REG[USBCR],80H ;009B
MOV REG[INT_CLR0],00H ;009E
MOV REG[INT_CLR1],00H ;00A1
MOV REG[INT_CLR2],00H ;00A4
MOV REG[INT_MSK0],40H ;00A7
MOV REG[INT_MSK1],09H ;00AA
MOV REG[INT_MSK2],00H ;00AD
OR F,01H ;00B0
MOV REG[USBXCR],80H ;00B2
L00B5: TST REG[P0DATA],10H ;00B5
JZ L00BF ;00B8
OR [0BDH],10H ;00BA
JMP L00C2 ;00BD
;====================================================================================
L00BF: AND [0BDH],0EFH ;00BF
L00C2: TST [0BCH],04H ;00C2
JZ L00B5 ;00C5
LJMP L0809 ;00C7
;====================================================================================
L00CA: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00D2: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00DA: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00E2: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00EA: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00F2: DB 030H,030H,030H,030H,030H,030H,030H,030H
L00FA: DB 030H,030H,030H,030H,030H,030H,000H,022H
L0102: DB 029H,097H,0F8H,026H,09BH,0C3H,048H
;====================================================================================