;---------------------------------
;   Mod 6022BE Firmware
;   for FX2LP chip (Enhanced 8051)
;
;   Disassembled with Dis51
;
;---------------------------------

CSEG AT 0000h
	LJMP L0001

L0027:
	MOV DPTR, #0E682h
	MOVX A, @DPTR
	ORL A, #0C0h
	MOVX @DPTR, A
	MOV DPTR, #0E681h
	MOVX @DPTR, A
	ORL PCON, #1h
	NOP
	NOP
	NOP
	NOP
	NOP
	RET

L0048:
	MOV A, #0h
	MOV 86h, A
	MOV DPTR, #0FDA5h
	MOV R4, #5h
L0049:
	INC DPTR
	MOV A, DPL
	ORL A, DPH
	JNZ L0049
	RET

L0026:
	SETB C
	RET

	DB 032h
	DB 02h
	DB 011h
	DB 096h
	DB 053h
	DB 0D8h
	DB 0EFh
	DB 032h
	DB 032h
	DB 02h
	DB 00h
	DB 02Eh
	DB 00h
	DB 01h
	DB 02h
	DB 02h
	DB 03h
	DB 03h
	DB 04h
	DB 04h
	DB 05h
	DB 05h
L0032:
	SETB C
	RET

	DB 032h
	DB 02h
	DB 0Ch
	DB 00h
L0139:
	SETB C
	RET

L0052:
	SETB C
	RET

	DB 032h
	DB 02h
	DB 0Ah
	DB 073h
L0063:
	SETB C
	RET

L0073:
	SETB C
	RET

	DB 032h
	DB 02h
	DB 0Ch
	DB 00h
L0094:
	MOV DPTR, #0E678h
	MOVX A, @DPTR
	ANL A, #10h
	MOV R7, A
	SWAP A
	ANL A, #0Fh
	ORL A, #50h
	MOV 19h, A
	RRC A
	CLR A
	RLC A
	MOV 1Ch, A
	SETB 2h
	MOV DPTR, #0E6B9h
	MOVX A, @DPTR
	ADD A, #5Eh
	JZ L0095
	ADD A, #0F0h
	JZ L0096
	ADD A, #0D2h
	CJNE A, #8h, L0097
L0097:
	JC L0098
	LJMP L0099

L0098:
	MOV DPTR, #008Fh
	MOV B, #3h
	MUL AB
	XCH A, DPH
	ADD A, B
	XCH A, DPH
	JMP @A+DPTR

	DB 02h
	DB 02h
	DB 04Bh
	DB 02h
	DB 02h
	DB 096h
	DB 02h
	DB 02h
	DB 0DCh
	DB 02h
	DB 04h
	DB 046h
	DB 02h
	DB 011h
	DB 023h
	DB 02h
	DB 04h
	DB 0D5h
	DB 02h
	DB 04h
	DB 0D5h
	DB 02h
	DB 04h
	DB 065h
L0096:
	MOV C, 5h
	CLR A
	RLC A
	MOV DPTR, #0E740h
	MOVX @DPTR, A
	CLR A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	INC A
	MOVX @DPTR, A
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #80h
	MOVX @DPTR, A
	LJMP L0100

L0095:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	MOV 2Dh, #0h
	MOV 2Eh, A
	INC DPTR
	MOVX A, @DPTR
	MOV R6, A
	CLR A
	MOV A, R6
	ORL 2Dh, A
	MOV DPTR, #0E6BEh
	MOVX A, @DPTR
	MOV 2Fh, #0h
	MOV 30h, A
	INC DPTR
	MOVX A, @DPTR
	MOV R6, A
	CLR A
	MOV A, R6
	ORL 2Fh, A
	MOV DPTR, #0E6B8h
	MOVX A, @DPTR
	XRL A, #0C0h
	JZ L0101
	LJMP L0102

L0101:
	MOV A, 30h
	ORL A, 2Fh
	JNZ L0113
	LJMP L0100

L0113:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	JB ACC.1, L0113
	CLR C
	MOV A, 30h
	SUBB A, #40h
	MOV A, 2Fh
	SUBB A, #0h
	JNC L0114
	MOV 31h, 2Fh
	MOV 32h, 30h
	SJMP L0115

L0114:
	MOV 31h, #0h
	MOV 32h, #40h
L0115:
	MOV DPTR, #0E6B9h
	MOVX A, @DPTR
	CJNE A, #0A3h, L0116
	CLR A
	MOV 33h, A
	MOV 34h, A
L0119:
	CLR C
	MOV A, 34h
	SUBB A, 32h
	MOV A, 33h
	SUBB A, 31h
	JNC L0117
	MOV A, 2Eh
	ADD A, 34h
	MOV DPL, A
	MOV A, 2Dh
	ADDC A, 33h
	MOV DPH, A
	MOVX A, @DPTR
	MOV R7, A
	MOV A, #40h
	ADD A, 34h
	MOV DPL, A
	CLR A
	ADDC A, #0E7h
	MOV DPH, A
	MOV A, R7
	MOVX @DPTR, A
	INC 34h
	MOV A, 34h
	JNZ L0118
	INC 33h
L0118:
	SJMP L0119

L0116:
	CLR A
	MOV 33h, A
	MOV 34h, A
L0122:
	CLR C
	MOV A, 34h
	SUBB A, 32h
	MOV A, 33h
	SUBB A, 31h
	JNC L0120
	MOV A, #40h
	ADD A, 34h
	MOV DPL, A
	CLR A
	ADDC A, #0E7h
	MOV DPH, A
	MOV A, #0CDh
	MOVX @DPTR, A
	INC 34h
	MOV A, 34h
	JNZ L0121
	INC 33h
L0121:
	SJMP L0122

L0120:
	MOV R5, 32h
	MOV R2, #0E7h
	MOV R1, #40h
	MOV R6, #0E7h
	MOV R7, #40h
	MOV R3, 7h
	MOV R7, 2Eh
	MOV R6, 2Dh
	LCALL L0123
L0117:
	CLR A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	MOV A, 32h
	MOVX @DPTR, A
	ADD A, 2Eh
	MOV 2Eh, A
	MOV A, 31h
	ADDC A, 2Dh
	MOV 2Dh, A
	CLR C
	MOV A, 30h
	SUBB A, 32h
	MOV 30h, A
	MOV A, 2Fh
	SUBB A, 31h
	MOV 2Fh, A
	LJMP L0101

L0102:
	MOV DPTR, #0E6B8h
	MOVX A, @DPTR
	XRL A, #40h
	JZ L0103
	LJMP L0100

L0103:
	MOV A, 30h
	ORL A, 2Fh
	JNZ L0104
	LJMP L0100

L0104:
	CLR A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	MOVX @DPTR, A
L0105:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	JB ACC.1, L0105
	MOV DPTR, #0E68Bh
	MOVX A, @DPTR
	MOV 31h, #0h
	MOV 32h, A
	MOV DPTR, #0E6B9h
	MOVX A, @DPTR
	CJNE A, #0A3h, L0106
	CLR A
	MOV 33h, A
	MOV 34h, A
L0109:
	CLR C
	MOV A, 34h
	SUBB A, 32h
	MOV A, 33h
	SUBB A, 31h
	JNC L0107
	MOV A, #40h
	ADD A, 34h
	MOV DPL, A
	CLR A
	ADDC A, #0E7h
	MOV DPH, A
	MOVX A, @DPTR
	MOV R7, A
	MOV A, 2Eh
	ADD A, 34h
	MOV DPL, A
	MOV A, 2Dh
	ADDC A, 33h
	MOV DPH, A
	MOV A, R7
	MOVX @DPTR, A
	INC 34h
	MOV A, 34h
	JNZ L0108
	INC 33h
L0108:
	SJMP L0109

L0106:
	MOV R5, 32h
	MOV R2, #0E7h
	MOV R1, #40h
	MOV R6, #0E7h
	MOV R7, #40h
	MOV R3, 7h
	MOV R7, 2Eh
	MOV R6, 2Dh
	LCALL L0110
L0107:
	MOV A, 32h
	ADD A, 2Eh
	MOV 2Eh, A
	MOV A, 31h
	ADDC A, 2Dh
	MOV 2Dh, A
	CLR C
	MOV A, 30h
	SUBB A, 32h
	MOV 30h, A
	MOV A, 2Fh
	SUBB A, 31h
	MOV 2Fh, A
	LJMP L0103

	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 0A0h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0F9h
	DB 090h
	DB 0E7h
	DB 040h
	DB 0E0h
	DB 0F5h
	DB 035h
	DB 014h
	DB 060h
	DB 029h
	DB 014h
	DB 060h
	DB 01Dh
	DB 024h
	DB 0FDh
	DB 060h
	DB 010h
	DB 024h
	DB 0FBh
	DB 060h
	DB 03h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A4h
	DB 0D2h
	DB 0A3h
	DB 0D2h
	DB 0A2h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A4h
	DB 0C2h
	DB 0A3h
	DB 0C2h
	DB 0A2h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A4h
	DB 0C2h
	DB 0A3h
	DB 0D2h
	DB 0A2h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A4h
	DB 0D2h
	DB 0A3h
	DB 0C2h
	DB 0A2h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 0A0h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0F9h
	DB 090h
	DB 0E7h
	DB 040h
	DB 0E0h
	DB 0F5h
	DB 035h
	DB 024h
	DB 0FEh
	DB 060h
	DB 01Ah
	DB 024h
	DB 0FDh
	DB 060h
	DB 0Dh
	DB 024h
	DB 0FBh
	DB 070h
	DB 01Bh
	DB 0C2h
	DB 0A7h
	DB 0D2h
	DB 0A6h
	DB 0D2h
	DB 0A5h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A7h
	DB 0C2h
	DB 0A6h
	DB 0C2h
	DB 0A5h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A7h
	DB 0C2h
	DB 0A6h
	DB 0D2h
	DB 0A5h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0C2h
	DB 0A7h
	DB 0D2h
	DB 0A6h
	DB 0C2h
	DB 0A5h
	DB 02h
	DB 04h
	DB 0D7h
	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 0A0h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0F9h
	DB 090h
	DB 0E7h
	DB 040h
	DB 0E0h
	DB 0F5h
	DB 035h
	DB 012h
	DB 0Eh
	DB 0F2h
	DB 03h
	DB 088h
	DB 01h
	DB 03h
	DB 074h
	DB 04h
	DB 03h
	DB 060h
	DB 08h
	DB 03h
	DB 0C2h
	DB 0Ah
	DB 03h
	DB 04Dh
	DB 010h
	DB 03h
	DB 0AFh
	DB 014h
	DB 03h
	DB 03Bh
	DB 018h
	DB 03h
	DB 029h
	DB 01Eh
	DB 03h
	DB 017h
	DB 030h
	DB 03h
	DB 09Ch
	DB 032h
	DB 00h
	DB 00h
	DB 03h
	DB 0D3h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0EAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 050h
	DB 074h
	DB 0FFh
	DB 0F0h
	DB 075h
	DB 01Ah
	DB 01h
	DB 02h
	DB 03h
	DB 0D3h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0AAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 050h
	DB 074h
	DB 0FFh
	DB 0F0h
	DB 075h
	DB 01Ah
	DB 01h
	DB 02h
	DB 03h
	DB 0D3h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 050h
	DB 074h
	DB 0FBh
	DB 0F0h
	DB 075h
	DB 01Ah
	DB 01h
	DB 02h
	DB 03h
	DB 0D3h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 01h
	DB 0F0h
	DB 0A3h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 073h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 02h
	DB 0F0h
	DB 0A3h
	DB 04h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 05Fh
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 05h
	DB 0F0h
	DB 0A3h
	DB 04h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 04Bh
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 017h
	DB 0F0h
	DB 0A3h
	DB 04h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 037h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 02Fh
	DB 0F0h
	DB 0A3h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 024h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 077h
	DB 0F0h
	DB 0A3h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 080h
	DB 011h
	DB 090h
	DB 0E6h
	DB 01h
	DB 074h
	DB 0CAh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 040h
	DB 074h
	DB 0EFh
	DB 0F0h
	DB 0A3h
	DB 0F0h
	DB 0E4h
	DB 0F5h
	DB 01Ah
	DB 090h
	DB 0E6h
	DB 0F5h
	DB 074h
	DB 0FFh
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 080h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0F3h
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 081h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0C3h
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 082h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0C1h
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 083h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0C2h
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 085h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0C0h
	DB 0F0h
	DB 090h
	DB 0E0h
	DB 086h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 0F4h
	DB 0F0h
	DB 075h
	DB 0AFh
	DB 07h
	DB 0E5h
	DB 01Ah
	DB 0B4h
	DB 01h
	DB 0Ah
	DB 074h
	DB 0E0h
	DB 0F5h
	DB 09Ah
	DB 074h
	DB 087h
	DB 0F5h
	DB 09Bh
	DB 080h
	DB 08h
	DB 074h
	DB 0E0h
	DB 0F5h
	DB 09Ah
	DB 074h
	DB 00h
	DB 0F5h
	DB 09Bh
	DB 075h
	DB 09Dh
	DB 0E4h
	DB 0E4h
	DB 0F5h
	DB 09Eh
	DB 0F5h
	DB 033h
	DB 0F5h
	DB 034h
	DB 090h
	DB 0E6h
	DB 07Bh
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 07Ch
	DB 0F0h
	DB 05h
	DB 034h
	DB 0E5h
	DB 034h
	DB 070h
	DB 02h
	DB 05h
	DB 033h
	DB 064h
	DB 080h
	DB 045h
	DB 033h
	DB 070h
	DB 0EAh
	DB 02h
	DB 04h
	DB 0D7h
	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 0A0h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0F9h
	DB 090h
	DB 0E7h
	DB 040h
	DB 0E0h
	DB 0F5h
	DB 035h
	DB 064h
	DB 01h
	DB 070h
	DB 077h
	DB 075h
	DB 01Dh
	DB 01h
	DB 080h
	DB 072h
	DB 090h
	DB 0E6h
	DB 0BAh
	DB 0E0h
	DB 075h
	DB 02Dh
	DB 00h
	DB 0F5h
	DB 02Eh
	DB 0A3h
	DB 0E0h
	DB 0FEh
	DB 0E4h
	DB 0EEh
	DB 042h
	DB 02Dh
	DB 090h
	DB 0E6h
	DB 0BEh
	DB 0E0h
	DB 075h
	DB 02Fh
	DB 00h
	DB 0F5h
	DB 030h
	DB 0A3h
	DB 0E0h
	DB 0FEh
	DB 0E4h
	DB 0EEh
	DB 042h
	DB 02Fh
	DB 0E5h
	DB 030h
	DB 045h
	DB 02Fh
	DB 060h
	DB 04Ch
	DB 090h
	DB 0E6h
	DB 0A0h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0F9h
	DB 0C3h
	DB 0E5h
	DB 030h
	DB 094h
	DB 040h
	DB 0E5h
	DB 02Fh
	DB 094h
	DB 00h
	DB 050h
	DB 08h
	DB 085h
	DB 02Fh
	DB 031h
	DB 085h
	DB 030h
	DB 032h
	DB 080h
	DB 06h
	DB 075h
	DB 031h
	DB 00h
	DB 075h
	DB 032h
	DB 040h
	DB 090h
	DB 0E7h
	DB 040h
	DB 074h
	DB 01h
	DB 0F0h
	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0E5h
	DB 032h
	DB 0F0h
	DB 025h
	DB 02Eh
	DB 0F5h
	DB 02Eh
	DB 0E5h
	DB 031h
	DB 035h
	DB 02Dh
	DB 0F5h
	DB 02Dh
	DB 0C3h
	DB 0E5h
	DB 030h
	DB 095h
	DB 032h
	DB 0F5h
	DB 030h
	DB 0E5h
	DB 02Fh
	DB 095h
	DB 031h
	DB 0F5h
	DB 02Fh
	DB 080h
	DB 0B0h
L0099:
	SETB C
	RET

L0100:
	CLR C
	RET

L0024:
	MOV DPTR, #0E6B9h
	MOVX A, @DPTR
	JNZ L0050
	LJMP L0051

L0050:
	DEC A
	JNZ L0061
	LJMP L0062

L0061:
	ADD A, #0FEh
	JNZ L0071
	LJMP L0072

L0071:
	ADD A, #0FBh
	JNZ L0078
	LJMP L0079

L0078:
	DEC A
	JNZ L0081
	LJMP L0082

L0081:
	DEC A
	JNZ L0086
	LJMP L0087

L0086:
	DEC A
	JNZ L0089
	LJMP L0090

L0089:
	ADD A, #5h
	JZ L0092
	LJMP L0093

L0092:
	LCALL L0139
	JC L0140
	LJMP L0054

L0140:
	MOV DPTR, #0E6BBh
	MOVX A, @DPTR
	ADD A, #0FEh
	JZ L0141
	DEC A
	JZ L0142
	ADD A, #0FDh
	JZ L0143
	DEC A
	JZ L0144
	ADD A, #6h
	JNZ L0145
	MOV A, 0Ch
	MOV DPTR, #0E6B3h
	MOVX @DPTR, A
	MOV A, 0Dh
	MOV DPTR, #0E6B4h
	MOVX @DPTR, A
	LJMP L0054

L0143:
	MOV A, 14h
	MOV DPTR, #0E6B3h
	MOVX @DPTR, A
	MOV A, 15h
	MOV DPTR, #0E6B4h
	MOVX @DPTR, A
	LJMP L0054

L0141:
	MOV A, 0Eh
	MOV DPTR, #0E6B3h
	MOVX @DPTR, A
	MOV A, 0Fh
	MOV DPTR, #0E6B4h
	MOVX @DPTR, A
	LJMP L0054

L0144:
	MOV A, 10h
	MOV DPTR, #0E6B3h
	MOVX @DPTR, A
	MOV A, 11h
	MOV DPTR, #0E6B4h
	MOVX @DPTR, A
	LJMP L0054

L0142:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	MOV R7, A
	LCALL L0146
	MOV R2, 6h
	MOV R1, 7h
	MOV R3, #1h
	MOV A, R2
	ORL A, R1
	ORL A, R3
	JZ L0147
	MOV A, R6
	MOV DPTR, #0E6B3h
	MOVX @DPTR, A
	MOV A, R7
	MOV DPTR, #0E6B4h
	MOVX @DPTR, A
	LJMP L0054

L0147:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	LJMP L0054

L0145:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	LJMP L0054

L0087:
	LCALL L0088
	LJMP L0054

L0090:
	LCALL L0091
	LJMP L0054

L0082:
	LCALL L0083
	LJMP L0054

L0079:
	LCALL L0080
	LJMP L0054

L0051:
	LCALL L0052
	JC L0053
	LJMP L0054

L0053:
	MOV DPTR, #0E6B8h
	MOVX A, @DPTR
	ADD A, #7Fh
	JZ L0055
	DEC A
	JZ L0056
	ADD A, #2h
	JZ L0057
	LJMP L0058

L0057:
	MOV C, 0h
	CLR A
	RLC A
	MOV R7, A
	ADD A, ACC
	MOV R7, A
	MOV C, 3h
	CLR A
	RLC A
	ORL A, R7
	MOV DPTR, #0E740h
	MOVX @DPTR, A
	CLR A
	INC DPTR
	MOVX @DPTR, A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	MOV A, #2h
	MOVX @DPTR, A
	LJMP L0054

L0055:
	CLR A
	MOV DPTR, #0E740h
	MOVX @DPTR, A
	INC DPTR
	MOVX @DPTR, A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	MOV A, #2h
	MOVX @DPTR, A
	LJMP L0054

L0056:
	MOV DPTR, #0E6BCh
	MOVX A, @DPTR
	ANL A, #7Eh
	MOV R7, A
	MOV R6, #0h
	MOVX A, @DPTR
	SETB C
	SUBB A, #80h
	JC L0059
	MOV R4, #0h
	MOV R5, #1h
	SJMP L0060

L0059:
	MOV R4, #0h
	MOV R5, #0h
L0060:
	MOV A, R4
	ORL A, R6
	MOV R6, A
	MOV A, R5
	ORL A, R7
	ADD A, #36h
	MOV DPL, A
	MOV A, #0h
	ADDC A, R6
	MOV DPH, A
	CLR A
	MOVC A, @A+DPTR
	MOV R7, A
	RLC A
	SUBB A, ACC
	MOV R6, A
	MOV A, R7
	ADD A, #0A1h
	MOV R7, A
	MOV A, R6
	ADDC A, #0E6h
	MOV DPL, R7
	MOV DPH, A
	MOVX A, @DPTR
	ANL A, #1h
	MOV DPTR, #0E740h
	MOVX @DPTR, A
	CLR A
	INC DPTR
	MOVX @DPTR, A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	MOV A, #2h
	MOVX @DPTR, A
	LJMP L0054

L0058:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	LJMP L0054

L0062:
	LCALL L0063
	JC L0064
	LJMP L0054

L0064:
	MOV DPTR, #0E6B8h
	MOVX A, @DPTR
	ADD A, #0FEh
	JZ L0065
	ADD A, #2h
	JZ L0066
	LJMP L0054

L0066:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	CJNE A, #1h, L0067
	CLR 0h
	LJMP L0054

L0067:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	LJMP L0054

L0065:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	JNZ L0068
	MOV DPTR, #0E6BCh
	MOVX A, @DPTR
	ANL A, #7Eh
	MOV R7, A
	MOV R6, #0h
	MOVX A, @DPTR
	SETB C
	SUBB A, #80h
	JC L0069
	MOV R4, #0h
	MOV R5, #1h
	SJMP L0070

L0069:
	MOV R4, #0h
	MOV R5, #0h
L0070:
	MOV A, R4
	ORL A, R6
	MOV R6, A
	MOV A, R5
	ORL A, R7
	ADD A, #36h
	MOV DPL, A
	MOV A, #0h
	ADDC A, R6
	MOV DPH, A
	CLR A
	MOVC A, @A+DPTR
	MOV R7, A
	RLC A
	SUBB A, ACC
	MOV R6, A
	MOV A, R7
	ADD A, #0A1h
	MOV R7, A
	MOV A, R6
	ADDC A, #0E6h
	MOV DPL, R7
	MOV DPH, A
	MOVX A, @DPTR
	ANL A, #0FEh
	MOVX @DPTR, A
	MOV DPTR, #0E6BCh
	MOVX A, @DPTR
	ANL A, #80h
	MOV R7, A
	RRC A
	RRC A
	RRC A
	ANL A, #1Fh
	MOV R7, A
	MOVX A, @DPTR
	ANL A, #0Fh
	ADD A, R7
	MOV DPTR, #0E683h
	MOVX @DPTR, A
	MOVX A, @DPTR
	ORL A, #20h
	MOVX @DPTR, A
	LJMP L0054

L0068:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	SJMP L0054

L0072:
	LCALL L0073
	JNC L0054
	MOV DPTR, #0E6B8h
	MOVX A, @DPTR
	ADD A, #0FEh
	JZ L0074
	ADD A, #2h
	JNZ L0054
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	CJNE A, #1h, L0075
	SETB 0h
	SJMP L0054

L0075:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	XRL A, #2h
	JZ L0054
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	SJMP L0054

L0074:
	MOV DPTR, #0E6BCh
	MOVX A, @DPTR
	ANL A, #7Eh
	MOV R7, A
	MOV R6, #0h
	MOVX A, @DPTR
	SETB C
	SUBB A, #80h
	JC L0076
	MOV R4, #0h
	MOV R5, #1h
	SJMP L0077

L0076:
	MOV R4, #0h
	MOV R5, #0h
L0077:
	MOV A, R4
	ORL A, R6
	MOV R6, A
	MOV A, R5
	ORL A, R7
	ADD A, #36h
	MOV DPL, A
	MOV A, #0h
	ADDC A, R6
	MOV DPH, A
	CLR A
	MOVC A, @A+DPTR
	MOV R7, A
	RLC A
	SUBB A, ACC
	MOV R6, A
	MOV A, R7
	ADD A, #0A1h
	MOV R7, A
	MOV A, R6
	ADDC A, #0E6h
	MOV DPL, R7
	MOV DPH, A
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	SJMP L0054

L0093:
	LCALL L0094
	JNC L0054
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
L0054:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	ORL A, #80h
	MOVX @DPTR, A
	RET

L0015:
	CLR 4h
	CLR 0h
	CLR 3h
	CLR 1h
	CLR 2h
	MOV 8h, #8h
	MOV 9h, #7h
	LCALL L0016
	CLR 0C9h
	MOV 0CDh, #0F8h
	MOV 0CCh, #40h
	SETB 0CAh
	SETB 0ADh
	CLR P0.7
	CLR P2.0
	SETB P2.1
	MOV R6, #0Eh
	MOV R7, #0h
	MOV 0Ch, R6
	MOV 0Dh, R7
	MOV 14h, #0Eh
	MOV 15h, #12h
	MOV 0Ah, #0Eh
	MOV 0Bh, #1Ch
	MOV 12h, #0Eh
	MOV 13h, #3Ch
	MOV 16h, #0Eh
	MOV 17h, #5Ch
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	JNB ACC.7, L0017
	MOV 0Eh, 0Ah
	MOV 0Fh, 0Bh
	MOV 10h, 12h
	MOV 11h, 13h
	SJMP L0018

L0017:
	MOV 0Eh, 12h
	MOV 0Fh, 13h
	MOV 10h, 0Ah
	MOV 11h, 0Bh
L0018:
	MOV A, R6
	ANL A, #0E0h
	JNZ L0019
	LJMP L0020

L0019:
	MOV 29h, #0h
	MOV 2Ah, #80h
	MOV R6, #0Eh
	MOV R7, #0h
	MOV 2Bh, R6
	MOV 2Ch, R7
	CLR C
	MOV A, #90h
	SUBB A, R7
	MOV R7, A
	MOV A, #0Eh
	SUBB A, R6
	XCH A, R7
	ADD A, #2h
	XCH A, R7
	ADDC A, #0h
	MOV R6, A
	CLR A
	MOV 28h, R7
	MOV 27h, R6
	MOV 26h, A
	MOV 25h, A
	MOV 24h, A
	MOV 23h, A
	MOV 22h, A
	MOV 21h, A
L0155:
	MOV R7, 28h
	MOV R6, 27h
	MOV R5, 26h
	MOV R4, 25h
	MOV R3, 24h
	MOV R2, 23h
	MOV R1, 22h
	MOV R0, 21h
	CLR C
	LCALL L0153
	JNC L0154
	MOV A, 2Ah
	ADD A, 24h
	MOV DPL, A
	MOV A, 29h
	ADDC A, 23h
	MOV DPH, A
	MOV A, #0CDh
	MOVX @DPTR, A
	CLR A
	MOV R2, A
	MOV R1, A
	MOV R0, A
	MOV A, 24h
	ADD A, #1h
	MOV 24h, A
	MOV A, R2
	ADDC A, 23h
	MOV 23h, A
	MOV A, R1
	ADDC A, 22h
	MOV 22h, A
	MOV A, R0
	ADDC A, 21h
	MOV 21h, A
	SJMP L0155

L0154:
	CLR A
	MOV 24h, A
	MOV 23h, A
	MOV 22h, A
	MOV 21h, A
L0157:
	MOV R7, 28h
	MOV R6, 27h
	MOV R5, 26h
	MOV R4, 25h
	MOV R3, 24h
	MOV R2, 23h
	MOV R1, 22h
	MOV R0, 21h
	CLR C
	LCALL L0153
	JNC L0156
	MOV A, 2Ch
	ADD A, 24h
	MOV DPL, A
	MOV A, 2Bh
	ADDC A, 23h
	MOV DPH, A
	MOVX A, @DPTR
	MOV R7, A
	MOV A, 2Ah
	ADD A, 24h
	MOV DPL, A
	MOV A, 29h
	ADDC A, 23h
	MOV DPH, A
	MOV A, R7
	MOVX @DPTR, A
	CLR A
	MOV R2, A
	MOV R1, A
	MOV R0, A
	MOV A, 24h
	ADD A, #1h
	MOV 24h, A
	MOV A, R2
	ADDC A, 23h
	MOV 23h, A
	MOV A, R1
	ADDC A, 22h
	MOV 22h, A
	MOV A, R0
	ADDC A, 21h
	MOV 21h, A
	SJMP L0157

L0156:
	MOV 0Ch, 29h
	MOV 0Dh, 2Ah
	MOV A, #0h
	ADD A, #80h
	MOV R7, A
	MOV A, #0Eh
	ADDC A, #0FFh
	MOV R6, A
	CLR C
	MOV A, 15h
	SUBB A, R7
	MOV 15h, A
	MOV A, 14h
	SUBB A, R6
	MOV 14h, A
	CLR C
	MOV A, 0Fh
	SUBB A, R7
	MOV 0Fh, A
	MOV A, 0Eh
	SUBB A, R6
	MOV 0Eh, A
	CLR C
	MOV A, 11h
	SUBB A, R7
	MOV 11h, A
	MOV A, 10h
	SUBB A, R6
	MOV 10h, A
	CLR C
	MOV A, 0Bh
	SUBB A, R7
	MOV 0Bh, A
	MOV A, 0Ah
	SUBB A, R6
	MOV 0Ah, A
	CLR C
	MOV A, 13h
	SUBB A, R7
	MOV 13h, A
	MOV A, 12h
	SUBB A, R6
	MOV 12h, A
	CLR C
	MOV A, 17h
	SUBB A, R7
	MOV 17h, A
	MOV A, 16h
	SUBB A, R6
	MOV 16h, A
L0020:
	SETB 0E8h
	ORL 0D8h, #20h
	MOV DPTR, #0E668h
	MOVX A, @DPTR
	ORL A, #9h
	MOVX @DPTR, A
	MOV DPTR, #0E65Ch
	MOVX A, @DPTR
	ORL A, #3Dh
	MOVX @DPTR, A
	SETB EA
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	JB ACC.1, L0021
	SETB 6h
	LCALL L0022
L0021:
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ANL A, #0F7h
	MOVX @DPTR, A
	ANL 8Eh, #0F8h
	CLR 4h
L0034:
	JNB 1h, L0023
	LCALL L0024
	CLR 1h
L0023:
	JNB 4h, L0025
	LCALL L0026
	JNC L0025
	CLR 4h
L0030:
	LCALL L0027
	JB 0h, L0028
	MOV DPTR, #0E682h
	MOVX A, @DPTR
	JNB ACC.7, L0029
	MOVX A, @DPTR
	JB ACC.1, L0030
L0029:
	MOV DPTR, #0E682h
	MOVX A, @DPTR
	JNB ACC.6, L0028
	MOVX A, @DPTR
	JB ACC.0, L0030
L0028:
	LCALL L0031
	LCALL L0032
L0025:
	LCALL L0033
	SJMP L0034

	DB 022h
	DB 0C1h
	DB 05h
	DB 060h
	DB 080h
	DB 0E0h
	DB 00h
	DB 0Eh
	DB 03h
	DB 01h
	DB 011h
	DB 01h
	DB 01h
	DB 030h
	DB 07h
	DB 01h
	DB 00h
	DB 02h
	DB 01h
	DB 00h
	DB 00h
	DB 011h
	DB 00h
	DB 0FFh
	DB 0FEh
	DB 0FFh
	DB 0FEh
	DB 0FFh
	DB 0FEh
	DB 0FFh
	DB 0FFh
	DB 00h
	DB 09h
	DB 012h
	DB 012h
	DB 00h
	DB 02Dh
	DB 012h
	DB 03Fh
	DB 08h
	DB 03h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 07h
	DB 01h
	DB 02h
	DB 04h
	DB 01h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 0FFh
	DB 0FCh
	DB 0FFh
	DB 0FEh
	DB 0FFh
	DB 0FEh
	DB 0FFh
	DB 0FFh
	DB 09h
	DB 09h
	DB 012h
	DB 012h
	DB 00h
	DB 02Dh
	DB 036h
	DB 03Fh
	DB 017h
	DB 018h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 07h
	DB 00h
	DB 02h
	DB 01h
	DB 00h
	DB 00h
	DB 00h
	DB 010h
	DB 00h
	DB 0FFh
	DB 0FBh
	DB 0FFh
	DB 0FBh
	DB 0FBh
	DB 0FBh
	DB 0FBh
	DB 0FBh
	DB 00h
	DB 09h
	DB 012h
	DB 012h
	DB 00h
	DB 02Dh
	DB 012h
	DB 03Fh
	DB 08h
	DB 03h
	DB 01h
	DB 03Fh
	DB 01h
	DB 01h
	DB 01h
	DB 07h
	DB 01h
	DB 02h
	DB 00h
	DB 01h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 0FFh
	DB 0FDh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 09h
	DB 09h
	DB 012h
	DB 012h
	DB 00h
	DB 02Dh
	DB 036h
	DB 03Fh
	DB 060h
	DB 080h
	DB 0E0h
	DB 087h
	DB 01h
	DB 02h
	DB 01h
	DB 01h
	DB 03Fh
	DB 01h
	DB 01h
	DB 07h
	DB 00h
	DB 00h
	DB 02h
	DB 00h
	DB 01h
	DB 00h
	DB 00h
	DB 00h
	DB 07h
	DB 02h
	DB 02h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 03Fh
	DB 00h
	DB 00h
	DB 03Fh
	DB 03h
	DB 01h
	DB 03Fh
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 07h
	DB 02h
	DB 02h
	DB 05h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 05h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 00h
	DB 00h
	DB 03Fh
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 03Fh
	DB 01h
	DB 01h
	DB 080h
	DB 01h
	DB 01h
	DB 01h
	DB 0BFh
	DB 07h
	DB 02h
	DB 02h
	DB 03h
	DB 02h
	DB 02h
	DB 02h
	DB 011h
	DB 00h
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 0FFh
	DB 00h
	DB 09h
	DB 012h
	DB 012h
	DB 00h
	DB 02Dh
	DB 012h
	DB 03Fh
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 01h
	DB 07h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 07h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 00h
	DB 03Fh
	DB 047h
	DB 0E0h
	DB 080h
	DB 0C0h
	DB 00h
	DB 00h
	DB 0Fh
	DB 0CAh
	DB 01Eh
	DB 00h
	DB 00h
	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 0C0h
	DB 085h
	DB 0C0h
	DB 084h
	DB 0C0h
	DB 086h
	DB 075h
	DB 086h
	DB 00h
	DB 0C0h
	DB 0D0h
	DB 075h
	DB 0D0h
	DB 00h
	DB 0C0h
	DB 00h
	DB 0C0h
	DB 01h
	DB 0C0h
	DB 02h
	DB 0C0h
	DB 03h
	DB 0C0h
	DB 06h
	DB 0C0h
	DB 07h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 030h
	DB 0E2h
	DB 06h
	DB 075h
	DB 041h
	DB 06h
	DB 02h
	DB 0Bh
	DB 05Dh
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 020h
	DB 0E1h
	DB 0Ch
	DB 0E5h
	DB 041h
	DB 064h
	DB 02h
	DB 060h
	DB 06h
	DB 075h
	DB 041h
	DB 07h
	DB 02h
	DB 0Bh
	DB 05Dh
	DB 0E5h
	DB 041h
	DB 024h
	DB 0FEh
	DB 060h
	DB 05Fh
	DB 014h
	DB 060h
	DB 036h
	DB 024h
	DB 0FEh
	DB 070h
	DB 03h
	DB 02h
	DB 0Bh
	DB 04Eh
	DB 024h
	DB 0FCh
	DB 070h
	DB 03h
	DB 02h
	DB 0Bh
	DB 05Ah
	DB 024h
	DB 08h
	DB 060h
	DB 03h
	DB 02h
	DB 0Bh
	DB 05Dh
	DB 0ABh
	DB 03Dh
	DB 0AAh
	DB 03Eh
	DB 0A9h
	DB 03Fh
	DB 0AFh
	DB 040h
	DB 05h
	DB 040h
	DB 08Fh
	DB 082h
	DB 075h
	DB 083h
	DB 00h
	DB 012h
	DB 0Eh
	DB 092h
	DB 090h
	DB 0E6h
	DB 079h
	DB 0F0h
	DB 0E5h
	DB 040h
	DB 065h
	DB 03Ch
	DB 070h
	DB 070h
	DB 075h
	DB 041h
	DB 05h
	DB 080h
	DB 06Bh
	DB 090h
	DB 0E6h
	DB 079h
	DB 0E0h
	DB 0ABh
	DB 03Dh
	DB 0AAh
	DB 03Eh
	DB 0A9h
	DB 03Fh
	DB 0AEh
	DB 040h
	DB 08Eh
	DB 082h
	DB 075h
	DB 083h
	DB 00h
	DB 012h
	DB 0Eh
	DB 0BFh
	DB 075h
	DB 041h
	DB 02h
	DB 0E5h
	DB 03Ch
	DB 064h
	DB 01h
	DB 070h
	DB 04Eh
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 020h
	DB 0F0h
	DB 080h
	DB 045h
	DB 0E5h
	DB 03Ch
	DB 024h
	DB 0FEh
	DB 0B5h
	DB 040h
	DB 07h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 020h
	DB 0F0h
	DB 0E5h
	DB 03Ch
	DB 014h
	DB 0B5h
	DB 040h
	DB 0Ah
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 040h
	DB 0F0h
	DB 075h
	DB 041h
	DB 00h
	DB 090h
	DB 0E6h
	DB 079h
	DB 0E0h
	DB 0ABh
	DB 03Dh
	DB 0AAh
	DB 03Eh
	DB 0A9h
	DB 03Fh
	DB 0AEh
	DB 040h
	DB 08Eh
	DB 082h
	DB 075h
	DB 083h
	DB 00h
	DB 012h
	DB 0Eh
	DB 0BFh
	DB 05h
	DB 040h
	DB 080h
	DB 0Fh
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 040h
	DB 0F0h
	DB 075h
	DB 041h
	DB 00h
	DB 080h
	DB 03h
	DB 075h
	DB 041h
	DB 00h
	DB 053h
	DB 091h
	DB 0DFh
	DB 0D0h
	DB 07h
	DB 0D0h
	DB 06h
	DB 0D0h
	DB 03h
	DB 0D0h
	DB 02h
	DB 0D0h
	DB 01h
	DB 0D0h
	DB 00h
	DB 0D0h
	DB 0D0h
	DB 0D0h
	DB 086h
	DB 0D0h
	DB 084h
	DB 0D0h
	DB 085h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
L0033:
	MOV A, 1Dh
	XRL A, #1h
	JNZ L0035
	MOV 1Dh, #2h
	MOV DPTR, #0E6F5h
	MOV A, #0FFh
	MOVX @DPTR, A
	MOV DPTR, #0E604h
	MOV A, #80h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV A, #2h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV A, #6h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV R7, A
	MOV R6, A
L0037:
	NOP
	INC R7
	CJNE R7, #0h, L0036
	INC R6
L0036:
	CJNE R6, #3h, L0037
	CJNE R7, #0E8h, L0037
L0035:
	MOV A, 0BBh
	JNB ACC.7, L0038
	MOV DPTR, #0E6F4h
	MOVX A, @DPTR
	JNB ACC.0, L0038
	MOV A, 0ACh
	JB ACC.0, L0038
L0039:
	MOV A, 0BBh
	JNB ACC.7, L0039
	MOV DPTR, #0E6D0h
	MOV A, #28h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E6D1h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV 0BBh, #6h
L0038:
	RET

L0126:
	LCALL L0127
L0130:
	MOV A, 41h
	ADD A, #0FAh
	JZ L0128
	DEC A
	JZ L0129
	ADD A, #7h
	JNZ L0130
	SETB C
	RET

L0129:
	CLR A
	MOV 41h, A
	SETB C
	RET

L0128:
	CLR A
	MOV 41h, A
	SETB C
	RET

	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 02h
	DB 012h
	DB 081h
	DB 00h
	DB 02h
	DB 012h
	DB 0C7h
	DB 00h
	DB 02h
	DB 012h
	DB 0B1h
	DB 00h
	DB 02h
	DB 012h
	DB 099h
	DB 00h
	DB 02h
	DB 010h
	DB 089h
	DB 00h
	DB 02h
	DB 010h
	DB 0C0h
	DB 00h
	DB 02h
	DB 00h
	DB 02Ah
	DB 00h
	DB 02h
	DB 00h
	DB 032h
	DB 00h
	DB 02h
	DB 00h
	DB 042h
	DB 00h
	DB 02h
	DB 00h
	DB 04Ah
	DB 00h
	DB 02h
	DB 00h
	DB 052h
	DB 00h
	DB 02h
	DB 0Bh
	DB 0F9h
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FAh
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FBh
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FCh
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FDh
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FEh
	DB 00h
	DB 02h
	DB 00h
	DB 032h
	DB 00h
	DB 02h
	DB 0Bh
	DB 0FFh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FAh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FBh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FCh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FDh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FEh
	DB 00h
	DB 02h
	DB 0Dh
	DB 0FFh
	DB 00h
	DB 02h
	DB 00h
	DB 032h
	DB 00h
	DB 02h
	DB 00h
	DB 032h
	DB 00h
	DB 02h
	DB 00h
	DB 032h
	DB 00h
	DB 02h
	DB 013h
	DB 011h
	DB 00h
	DB 02h
	DB 013h
	DB 012h
	DB 00h
	DB 02h
	DB 013h
	DB 013h
	DB 00h
	DB 02h
	DB 013h
	DB 014h
	DB 00h
	DB 02h
	DB 013h
	DB 015h
	DB 00h
	DB 02h
	DB 013h
	DB 016h
	DB 00h
	DB 02h
	DB 013h
	DB 017h
	DB 00h
	DB 02h
	DB 013h
	DB 018h
	DB 00h
	DB 02h
	DB 013h
	DB 019h
	DB 00h
	DB 02h
	DB 013h
	DB 01Ah
	DB 00h
	DB 02h
	DB 013h
	DB 01Bh
	DB 00h
	DB 02h
	DB 013h
	DB 01Ch
	DB 00h
	DB 02h
	DB 013h
	DB 01Dh
	DB 00h
	DB 02h
	DB 013h
	DB 01Eh
	DB 00h
	DB 02h
	DB 013h
	DB 01Fh
	DB 00h
	DB 02h
	DB 013h
	DB 020h
	DB 00h
	DB 02h
	DB 013h
	DB 021h
	DB 00h
	DB 02h
	DB 013h
	DB 022h
	DB 00h
L0016:
	MOV DPTR, #0E600h
	MOV A, #10h
	MOVX @DPTR, A
	LCALL L0158
	NOP
	NOP
	NOP
	MOV DPTR, #0E612h
	MOV A, #0A0h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E613h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E614h
	MOV A, #0E0h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E615h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E604h
	MOV A, #80h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV A, #2h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV A, #6h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E618h
	INC A
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV A, #11h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E61Ah
	MOV A, #9h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E6D2h
	MOV A, #2h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E6E2h
	DEC A
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E671h
	MOVX @DPTR, A
	MOV 0B4h, #0FFh
	MOV DPTR, #0E670h
	MOVX @DPTR, A
	MOV 0B2h, #80h
	CLR P2.4
	CLR P2.3
	CLR P2.2
	CLR P2.7
	CLR P2.6
	CLR P2.5
	MOV 1Dh, A
	MOV 1Ah, A
	LCALL L0159
	MOV DPTR, #0E67Ah
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	RET

L0001:
	MOV R0, #7Fh
	CLR A
L0002:
	MOV @R0, A
	DJNZ R0, L0002
	MOV SP, #41h
	LJMP L0003

L0004:
	LJMP L0015

L0006:
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	MOV R0, A
L0014:
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	JC L0012
	MOV @R0, A
	SJMP L0013

L0012:
	MOVX @R0, A
L0013:
	INC R0
	DJNZ R7, L0014
	SJMP L0009

L0007:
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	MOV R0, A
	ANL A, #7h
	ADD A, #0Ch
	XCH A, R0
	CLR C
	RLC A
	SWAP A
	ANL A, #0Fh
	ORL A, #20h
	XCH A, R0
	MOVC A, @A+PC
	JC L0010
	CPL A
	ANL A, @R0
	SJMP L0011

L0010:
	ORL A, @R0
L0011:
	MOV @R0, A
	DJNZ R7, L0007
	SJMP L0009

	DB 01h
	DB 02h
	DB 04h
	DB 08h
	DB 010h
	DB 020h
	DB 040h
	DB 080h
L0003:
	MOV DPTR, #095Eh
L0009:
	CLR A
	MOV R6, #1h
	MOVC A, @A+DPTR
	JZ L0004
	INC DPTR
	MOV R7, A
	ANL A, #3Fh
	JNB ACC.5, L0005
	ANL A, #1Fh
	MOV R6, A
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	JZ L0005
	INC R6
L0005:
	XCH A, R7
	ANL A, #0C0h
	ADD A, ACC
	JZ L0006
	JC L0007
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	MOV R2, A
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	MOV R0, A
L0008:
	CLR A
	MOVC A, @A+DPTR
	INC DPTR
	XCH A, R0
	XCH A, DPL
	XCH A, R0
	XCH A, R2
	XCH A, DPH
	XCH A, R2
	MOVX @DPTR, A
	INC DPTR
	XCH A, R0
	XCH A, DPL
	XCH A, R0
	XCH A, R2
	XCH A, DPH
	XCH A, R2
	DJNZ R7, L0008
	DJNZ R6, L0008
	SJMP L0009

L0125:
	LCALL L0133
L0136:
	MOV A, 41h
	ADD A, #0FAh
	JZ L0134
	DEC A
	JZ L0135
	ADD A, #7h
	JNZ L0136
	SETB C
	RET

L0135:
	CLR A
	MOV 41h, A
	SETB C
	RET

L0134:
	CLR A
	MOV 41h, A
	SETB C
	RET

	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 012h
	DB 01h
	DB 00h
	DB 02h
	DB 00h
	DB 00h
	DB 00h
	DB 040h
	DB 0B5h
	DB 04h
	DB 022h
	DB 060h
	DB 00h
	DB 00h
	DB 01h
	DB 02h
	DB 00h
	DB 01h
	DB 0Ah
	DB 06h
	DB 00h
	DB 02h
	DB 00h
	DB 00h
	DB 00h
	DB 040h
	DB 01h
	DB 00h
	DB 09h
	DB 02h
	DB 020h
	DB 00h
	DB 01h
	DB 01h
	DB 00h
	DB 080h
	DB 032h
	DB 09h
	DB 04h
	DB 00h
	DB 00h
	DB 02h
	DB 0FFh
	DB 00h
	DB 00h
	DB 00h
	DB 07h
	DB 05h
	DB 02h
	DB 02h
	DB 00h
	DB 02h
	DB 00h
	DB 07h
	DB 05h
	DB 086h
	DB 02h
	DB 00h
	DB 02h
	DB 00h
	DB 09h
	DB 02h
	DB 020h
	DB 00h
	DB 01h
	DB 01h
	DB 00h
	DB 080h
	DB 032h
	DB 09h
	DB 04h
	DB 00h
	DB 00h
	DB 04h
	DB 0FFh
	DB 00h
	DB 00h
	DB 00h
	DB 07h
	DB 05h
	DB 02h
	DB 02h
	DB 040h
	DB 00h
	DB 00h
	DB 07h
	DB 05h
	DB 086h
	DB 02h
	DB 040h
	DB 00h
	DB 00h
	DB 04h
	DB 03h
	DB 09h
	DB 04h
	DB 0Eh
	DB 03h
	DB 04Fh
	DB 00h
	DB 044h
	DB 00h
	DB 04Dh
	DB 00h
	DB 020h
	DB 00h
	DB 020h
	DB 00h
	DB 020h
	DB 00h
	DB 022h
	DB 03h
	DB 048h
	DB 00h
	DB 061h
	DB 00h
	DB 06Eh
	DB 00h
	DB 074h
	DB 00h
	DB 065h
	DB 00h
	DB 06Bh
	DB 00h
	DB 044h
	DB 00h
	DB 053h
	DB 00h
	DB 04Fh
	DB 00h
	DB 036h
	DB 00h
	DB 030h
	DB 00h
	DB 032h
	DB 00h
	DB 032h
	DB 00h
	DB 042h
	DB 00h
	DB 045h
	DB 00h
	DB 020h
	DB 00h
	DB 00h
	DB 00h
	DB 0BBh
	DB 01h
	DB 0Ch
	DB 0E5h
	DB 082h
	DB 029h
	DB 0F5h
	DB 082h
	DB 0E5h
	DB 083h
	DB 03Ah
	DB 0F5h
	DB 083h
	DB 0E0h
	DB 022h
	DB 050h
	DB 06h
	DB 0E9h
	DB 025h
	DB 082h
	DB 0F8h
	DB 0E6h
	DB 022h
	DB 0BBh
	DB 0FEh
	DB 06h
	DB 0E9h
	DB 025h
	DB 082h
	DB 0F8h
	DB 0E2h
	DB 022h
	DB 0E5h
	DB 082h
	DB 029h
	DB 0F5h
	DB 082h
	DB 0E5h
	DB 083h
	DB 03Ah
	DB 0F5h
	DB 083h
	DB 0E4h
	DB 093h
	DB 022h
	DB 0F8h
	DB 0BBh
	DB 01h
	DB 0Dh
	DB 0E5h
	DB 082h
	DB 029h
	DB 0F5h
	DB 082h
	DB 0E5h
	DB 083h
	DB 03Ah
	DB 0F5h
	DB 083h
	DB 0E8h
	DB 0F0h
	DB 022h
	DB 050h
	DB 06h
	DB 0E9h
	DB 025h
	DB 082h
	DB 0C8h
	DB 0F6h
	DB 022h
	DB 0BBh
	DB 0FEh
	DB 05h
	DB 0E9h
	DB 025h
	DB 082h
	DB 0C8h
	DB 0F2h
	DB 022h
L0153:
	MOV A, R3
	SUBB A, R7
	MOV B, A
	MOV A, R2
	SUBB A, R6
	ORL B, A
	MOV A, R1
	SUBB A, R5
	ORL B, A
	MOV A, R0
	SUBB A, R4
	ORL A, B
	RET

	DB 0D0h
	DB 083h
	DB 0D0h
	DB 082h
	DB 0F8h
	DB 0E4h
	DB 093h
	DB 070h
	DB 012h
	DB 074h
	DB 01h
	DB 093h
	DB 070h
	DB 0Dh
	DB 0A3h
	DB 0A3h
	DB 093h
	DB 0F8h
	DB 074h
	DB 01h
	DB 093h
	DB 0F5h
	DB 082h
	DB 088h
	DB 083h
	DB 0E4h
	DB 073h
	DB 074h
	DB 02h
	DB 093h
	DB 068h
	DB 060h
	DB 0EFh
	DB 0A3h
	DB 0A3h
	DB 0A3h
	DB 080h
	DB 0DFh
L0158:
	MOV DPTR, #0E601h
	MOV A, #0CAh
	MOVX @DPTR, A
	MOV DPTR, #0E6F5h
	MOV A, #0FFh
	MOVX @DPTR, A
	MOV DPTR, #0E080h
	MOVX A, @DPTR
	MOV DPTR, #0E6F3h
	MOVX @DPTR, A
	MOV DPTR, #0E081h
	MOVX A, @DPTR
	MOV DPTR, #0E6C3h
	MOVX @DPTR, A
	MOV DPTR, #0E082h
	MOVX A, @DPTR
	MOV DPTR, #0E6C1h
	MOVX @DPTR, A
	MOV DPTR, #0E083h
	MOVX A, @DPTR
	MOV DPTR, #0E6C2h
	MOVX @DPTR, A
	MOV DPTR, #0E085h
	MOVX A, @DPTR
	MOV DPTR, #0E6C0h
	MOVX @DPTR, A
	MOV DPTR, #0E086h
	MOVX A, @DPTR
	MOV DPTR, #0E6F4h
	MOVX @DPTR, A
	MOV 0AFh, #7h
	MOV A, #0E0h
	MOV 9Ah, A
	MOV A, #0h
	MOV 9Bh, A
	MOV 9Dh, #0E4h
	CLR A
	MOV 9Eh, A
	MOV R7, A
L0160:
	MOV DPTR, #0E67Bh
	MOVX A, @DPTR
	MOV DPTR, #0E67Ch
	MOVX @DPTR, A
	INC R7
	CJNE R7, #80h, L0160
	RET

	DB 0ABh
	DB 07h
	DB 0AAh
	DB 06h
	DB 0ACh
	DB 05h
	DB 0E4h
	DB 0FDh
	DB 0E5h
	DB 01Ch
	DB 060h
	DB 010h
	DB 0EAh
	DB 07Eh
	DB 00h
	DB 0Dh
	DB 0EEh
	DB 024h
	DB 07h
	DB 0F5h
	DB 082h
	DB 0E4h
	DB 034h
	DB 0E1h
	DB 0F5h
	DB 083h
	DB 0EAh
	DB 0F0h
	DB 0EBh
	DB 0AEh
	DB 05h
	DB 0Dh
	DB 074h
	DB 07h
	DB 02Eh
	DB 0F5h
	DB 082h
	DB 0E4h
	DB 034h
	DB 0E1h
	DB 0F5h
	DB 083h
	DB 0EBh
	DB 0F0h
	DB 0AFh
	DB 05h
	DB 0Dh
	DB 074h
	DB 07h
	DB 02Fh
	DB 0F5h
	DB 082h
	DB 0E4h
	DB 034h
	DB 0E1h
	DB 0F5h
	DB 083h
	DB 0ECh
	DB 0F0h
	DB 07Ah
	DB 0E1h
	DB 07Bh
	DB 07h
	DB 0AFh
	DB 019h
	DB 012h
	DB 0Dh
	DB 0DEh
	DB 0AFh
	DB 019h
	DB 012h
	DB 010h
	DB 0F7h
	DB 022h
L0123:
	MOV 36h, R6
	MOV 37h, R7
	MOV 38h, R5
	MOV 39h, R2
	MOV 3Ah, R3
	CLR A
	MOV R5, A
	MOV A, 1Ch
	JZ L0124
	MOV A, 36h
	MOV R7, A
	MOV R6, #0h
	INC R5
	MOV A, R6
	ADD A, #7h
	MOV DPL, A
	CLR A
	ADDC A, #0E1h
	MOV DPH, A
	MOV A, R7
	MOVX @DPTR, A
L0124:
	MOV A, 37h
	MOV R6, 5h
	INC R5
	MOV A, #7h
	ADD A, R6
	MOV DPL, A
	CLR A
	ADDC A, #0E1h
	MOV DPH, A
	MOV A, 37h
	MOVX @DPTR, A
	MOV R2, #0E1h
	MOV R3, #7h
	MOV R7, 19h
	LCALL L0125
	MOV R3, 3Ah
	MOV R2, 39h
	MOV R5, 38h
	MOV R7, 19h
	LCALL L0126
	RET

L0043:
	MOV 2Dh, R6
	MOV 2Eh, R7
	MOV DPTR, #0E600h
	MOVX A, @DPTR
	ANL A, #18h
	JNZ L0044
	MOV A, 2Eh
	ADD A, #1h
	MOV R7, A
	CLR A
	ADDC A, 2Dh
	CLR C
	RRC A
	MOV 2Dh, A
	MOV A, R7
	RRC A
	MOV 2Eh, A
	SJMP L0045

L0044:
	MOV DPTR, #0E600h
	MOVX A, @DPTR
	ANL A, #18h
	MOV R7, A
	CJNE R7, #10h, L0045
	MOV A, 2Eh
	ADD A, ACC
	MOV 2Eh, A
	MOV A, 2Dh
	RLC A
	MOV 2Dh, A
L0045:
	MOV A, 2Eh
	DEC 2Eh
	MOV R6, 2Dh
	JNZ L0046
	DEC 2Dh
L0046:
	ORL A, R6
	JZ L0047
	LCALL L0048
	SJMP L0045

L0047:
	RET

L0083:
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	JNB ACC.7, L0084
	NOP
	NOP
	NOP
	MOV DPTR, #0E624h
	MOV A, #2h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E625h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	SETB 5h
	SJMP L0085

L0084:
	NOP
	NOP
	NOP
	CLR A
	MOV DPTR, #0E624h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	MOV DPTR, #0E625h
	MOV A, #40h
	MOVX @DPTR, A
	NOP
	NOP
	NOP
	CLR 5h
L0085:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	MOV 1Bh, A
	SETB C
	RET

	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 090h
	DB 0E6h
	DB 080h
	DB 0E0h
	DB 030h
	DB 0E7h
	DB 0Eh
	DB 085h
	DB 0Ah
	DB 0Eh
	DB 085h
	DB 0Bh
	DB 0Fh
	DB 085h
	DB 012h
	DB 010h
	DB 085h
	DB 013h
	DB 011h
	DB 080h
	DB 0Ch
	DB 085h
	DB 012h
	DB 0Eh
	DB 085h
	DB 013h
	DB 0Fh
	DB 085h
	DB 0Ah
	DB 010h
	DB 085h
	DB 0Bh
	DB 011h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 010h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 090h
	DB 0E6h
	DB 080h
	DB 0E0h
	DB 030h
	DB 0E7h
	DB 0Eh
	DB 085h
	DB 0Ah
	DB 0Eh
	DB 085h
	DB 0Bh
	DB 0Fh
	DB 085h
	DB 012h
	DB 010h
	DB 085h
	DB 013h
	DB 011h
	DB 080h
	DB 0Ch
	DB 085h
	DB 012h
	DB 0Eh
	DB 085h
	DB 013h
	DB 0Fh
	DB 085h
	DB 0Ah
	DB 010h
	DB 085h
	DB 0Bh
	DB 011h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 020h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 020h
	DB 0E6h
	DB 0F9h
	DB 0C2h
	DB 0E9h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 080h
	DB 0F0h
	DB 0EFh
	DB 025h
	DB 0E0h
	DB 090h
	DB 0E6h
	DB 079h
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 030h
	DB 0E0h
	DB 0F9h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 044h
	DB 040h
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 078h
	DB 0E0h
	DB 020h
	DB 0E6h
	DB 0F9h
	DB 0E4h
	DB 090h
	DB 0E6h
	DB 08Ah
	DB 0F0h
	DB 090h
	DB 0E6h
	DB 08Bh
	DB 0F0h
L0111:
	MOV DPTR, #0E6A0h
	MOVX A, @DPTR
	JB ACC.1, L0111
	MOV DPTR, #0E740h
	MOVX A, @DPTR
	JZ L0112
	SUBB A, #3h
	JNC L0112
	ADD A, #0Ah
	MOV DPTR, #0E61Ah
	MOVX @DPTR, A
L0112:
	LJMP L0100

	DB 036h
	DB 070h
	DB 02h
	DB 05h
	DB 036h
	DB 014h
	DB 0FFh
	DB 0E5h
	DB 03Ah
	DB 025h
	DB 03Bh
	DB 0F5h
	DB 082h
	DB 0E4h
	DB 035h
	DB 039h
	DB 0F5h
	DB 083h
	DB 0E0h
	DB 0FDh
	DB 012h
	DB 0Fh
	DB 073h
	DB 05h
	DB 03Bh
	DB 080h
	DB 0D9h
	DB 022h
L0127:
	MOV R1, 7h
L0131:
	MOV DPTR, #0E678h
	MOVX A, @DPTR
	JB ACC.6, L0131
	MOV A, 41h
	JNZ L0132
	MOV DPTR, #0E678h
	MOVX A, @DPTR
	ORL A, #80h
	MOVX @DPTR, A
	MOV A, R1
	ADD A, ACC
	ORL A, #1h
	MOV DPTR, #0E679h
	MOVX @DPTR, A
	MOV 3Ch, R5
	MOV R7, 3h
	MOV R1, 7h
	MOV 3Dh, #1h
	MOV 3Eh, R2
	MOV 3Fh, R1
	CLR A
	MOV 40h, A
	MOV 41h, #3h
	SETB C
	RET

L0132:
	CLR C
	RET

	DB 0C0h
	DB 0E0h
	DB 0B2h
	DB 087h
	DB 0E5h
	DB 09h
	DB 015h
	DB 09h
	DB 070h
	DB 02h
	DB 015h
	DB 08h
	DB 0E5h
	DB 09h
	DB 045h
	DB 08h
	DB 070h
	DB 015h
	DB 075h
	DB 08h
	DB 04h
	DB 075h
	DB 09h
	DB 01Fh
	DB 030h
	DB 02h
	DB 06h
	DB 0B2h
	DB 0A1h
	DB 0D2h
	DB 0A0h
	DB 080h
	DB 04h
	DB 0B2h
	DB 0A0h
	DB 0D2h
	DB 0A1h
	DB 0C2h
	DB 02h
	DB 075h
	DB 0CDh
	DB 0F8h
	DB 075h
	DB 0CCh
	DB 040h
	DB 0C2h
	DB 0CFh
	DB 0D0h
	DB 0E0h
	DB 032h
L0133:
	MOV R1, 7h
L0137:
	MOV DPTR, #0E678h
	MOVX A, @DPTR
	JB ACC.6, L0137
	MOV A, 41h
	JNZ L0138
	MOV DPTR, #0E678h
	MOVX A, @DPTR
	ORL A, #80h
	MOVX @DPTR, A
	MOV A, R1
	ADD A, ACC
	MOV DPTR, #0E679h
	MOVX @DPTR, A
	MOV 3Ch, R5
	MOV R7, 3h
	MOV R1, 7h
	MOV 3Dh, #1h
	MOV 3Eh, R2
	MOV 3Fh, R1
	CLR A
	MOV 40h, A
	MOV 41h, #1h
	SETB C
	RET

L0138:
	CLR C
	RET

L0022:
	JNB 6h, L0151
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ORL A, #0Ah
	MOVX @DPTR, A
	SJMP L0152

L0151:
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ORL A, #8h
	MOVX @DPTR, A
L0152:
	MOV R7, #0DCh
	MOV R6, #5h
	LCALL L0043
	MOV DPTR, #0E65Dh
	MOV A, #0FFh
	MOVX @DPTR, A
	MOV DPTR, #0E65Fh
	MOVX @DPTR, A
	ANL 91h, #0EFh
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ANL A, #0F7h
	MOVX @DPTR, A
	RET

L0031:
	MOV DPTR, #0E682h
	MOVX A, @DPTR
	JNB ACC.0, L0040
	MOVX A, @DPTR
	JB ACC.6, L0041
L0040:
	MOV DPTR, #0E682h
	MOVX A, @DPTR
	JNB ACC.1, L0042
	MOVX A, @DPTR
	JNB ACC.7, L0042
L0041:
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ORL A, #1h
	MOVX @DPTR, A
	MOV R7, #14h
	MOV R6, #0h
	LCALL L0043
	MOV DPTR, #0E680h
	MOVX A, @DPTR
	ANL A, #0FEh
	MOVX @DPTR, A
L0042:
	RET

L0146:
	MOV R1, 7h
	MOV R6, 16h
	MOV R7, 17h
L0150:
	MOV DPL, R7
	MOV DPH, R6
	INC DPTR
	MOVX A, @DPTR
	XRL A, #3h
	JNZ L0148
	MOV R5, 1h
	DEC R1
	MOV A, R5
	JNZ L0149
	RET

L0149:
	MOV DPL, R7
	MOV DPH, R6
	MOVX A, @DPTR
	MOV R4, #0h
	ADD A, R7
	MOV R5, A
	MOV A, R4
	ADDC A, R6
	MOV R6, A
	MOV R7, 5h
	SJMP L0150

L0148:
	MOV R6, #0h
	MOV R7, #0h
	RET

	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 0D2h
	DB 01h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 01h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 0D2h
	DB 04h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 08h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 04h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
	DB 0C0h
	DB 0E0h
	DB 0C0h
	DB 083h
	DB 0C0h
	DB 082h
	DB 053h
	DB 091h
	DB 0EFh
	DB 090h
	DB 0E6h
	DB 05Dh
	DB 074h
	DB 02h
	DB 0F0h
	DB 0D0h
	DB 082h
	DB 0D0h
	DB 083h
	DB 0D0h
	DB 0E0h
	DB 032h
L0080:
	MOV DPTR, #0E740h
	MOV A, 1Bh
	MOVX @DPTR, A
	CLR A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	INC A
	MOVX @DPTR, A
	SETB C
	RET

L0088:
	MOV DPTR, #0E740h
	MOV A, 18h
	MOVX @DPTR, A
	CLR A
	MOV DPTR, #0E68Ah
	MOVX @DPTR, A
	MOV DPTR, #0E68Bh
	INC A
	MOVX @DPTR, A
	SETB C
	RET

L0091:
	MOV DPTR, #0E6BAh
	MOVX A, @DPTR
	MOV 18h, A
	SETB C
	RET

L0159:
	CLR A
	MOV 41h, A
	SETB 0E9h
	SETB EA
	RET

	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
	DB 032h
CSEG AT 7F92h
	DB 00h
CSEG AT E600h
	DB 00h
END
