You are on page 1of 19

ORG 0000H

LJMP ROJO

INICIO: MOV P2, #00H

ROJO: CLR P0.3

MOV P1, #00H

CLR P0.4

MOV P0, #00H

MOV P3, #00H

MOV R0, #00H

JNB P0.4,$

MOV P3, #00H

MOV A,P3

REINICIO: JB P1.3, PCHK


JB P1.4,P2P

ANL A,11110000B
CJNE A,# 00H, UNO_AQUI1

LJMP INICIO

LJMP ROJO

PCHK: JNB P1.4, COGER

UNO_AQUI1:CJNE A,#01010000B, DOS_AQUI1

LJMP P2A

LJMP ROJO

COGER: LJMP A2P

DOS_AQUI1:CJNE A,#11010000B,TRES_AQUI1

P2P:

TRES_AQUI1: JNB P3.4, AQUI1

AMARILLO: CLR P0.3

JNB P3.5, AQUI1

CLR P0.4

LJMP ROJO

MOV P3,#00H

AQUI1:CALL COMPROBAR_ROJO

JNB P0.3, $

CALL RCHK

MOV A, P3

INC R0

ANL A, 00001111B

CALL CHKDRAW

CJNE A,#00H, UNO_AQUI

LJMP AMARILLO

LJMP AMARILLO

;................
P2A:

UNO_AQUI: CJNE A, #00000101B, DOS_AQUI

JUGADOR1:CLR P0.3

LJMP AMARILLO

CLR P0.4

DOS_AQUI:CJNE A, #00001101B,TRES_AQUI

MOV P3,#00H

LJMP AMARILLO

JNB P0.3,$

TRES_AQUI:JNB P3.0,AQUI

MOV A, P3

JNB P3.1,AQUI

ANL A,#00001111B

LJMP AMARILLO

CJNE A, #00H, UNO_AQUI2

AQUI: CALL COMPROBAR_AMARILLO

LJMP JUGADOR1

CALL YCHK

UNO_AQUI2:CJNE A,#00000101B, DOS_AQUI2

INC R0

LJMP JUGADOR 1

CALL CHKDRAW

TRES_AQUI2: JNB P3.0, AQUI2

JNB P3.1, AQUI2

DOS_AQUI3:CJNE A,#11010000B, TRES_AQUI3

LJMP JUGADOR1

LJMP JUGADOR2

AQUI2: CALL COMPROBAR_AMARILLO

TRES_AQUI3: JNB P3.4,AQUI3

CALL YCHK

JNB P3.5, AQUI3

INC R0

LJMP JUGADOR2

CALL CHKDRAW

AQUI3: CALL COMPROBAR_ROJO

LJMP AI2

CALL RCHK

AI2: MOV P3,#00H

INC R0

CALL AIPENSAR2

CALL CHKDRAW

JNB P0.4,$

LJMP AI1

CALL COMPROBAR_ROJO

COMPROBAR_ROJO:CLR P0.4

CALL RCHK

JNB P3.4, NEN1

INC R0

JNB P3.7,OCHO1

CALL CHKDRAW

LJMP NUEVE1

LJMP JUGADOR1

NEN1:JNB P3.5, OT1

A2P:

JNB P3.6, F1

AI1: MOV P3,#00H

JNB P3.7, SEIX1

CALL AIPENSAR1

LJMP SIETE1

CALL COMPROBAR_AMARILLO

OT1:

CALL YCHK

JNB P3.6, UNO1

INC R0

JNB P3.7, DOS1

CALL CHKDRAW

LJMP TRES1

LJMP JUGADOR2

F1: JNB P3.7, CUATRO1

JUGADOR2: CLR P0.3

LJMP CINCO1

CLR P0.4

UNO1: JB P0.0, RETRED

MOV P3,#00H

JB P0.5, RETRED

JNB P0.4,$

SETB P0.5

MOV A, P3

RET

ANL A,#1111000B

DOS1: JB P0.1, RETRED

CJNE A, #00H, UNO_AQUI3

JB P0.6, RETRED

LJMP JUGADOR2

SETB P0.6

UNO_AQUI3:CJNE A, #01010000B, DOS_AQUI3

RET

LJMP JUGADOR2

TRES1: JB P0.2, RETRED

JB P0.7, RETRED

JNB P3.2,FF1

SETB P0.7

JNB P3.3,SEIX

RET

LJMP SIETE

CUATRO1: JB P1.0, RETRED

OT: JNB P3.2, UNO

JB P1.5, RETRED

JNB P3.3, DOS

SETB P1.5

LJMP TRES

RET

FF1:JNB P3.3 ,CUATRO

CINCO1: JB P1.1,RETRED

LJMP CINCO

JB P1.6, RETRED

UNO: JB P0.5, REINICIO_AMARILLO

SETB P1.6

JB P0.0, REINICIO_AMARILLO

RET

SETB P0.0

SEIX1: JB P1.2, RETRED

RET

JB P1.7,RETRED

DOS: JB P0.6, REINICIO_AMARILLO

SETB P1.7

JB P0.1, REINICIO_AMARILLO

RET

SETB P0.1

SIETE1: JB P2.0,RETRED

RET

JB P2.5, RETRED

TRES: JB P0.7, REINICIO_AMARILLO

SETB P2.5

JB P0.2, REINICIO_AMARILLO

RET

SETB P0.2

OCHO1: JB P2.1, RETRED

RET

JB P2.6, RETRED

CUATRO: JB P1.5, REINICIO_AMARILLO

SETB P2.6

JB P1.0

RET

RET

NUEVE1: JB P2.2, RETRED

CINCO: JB P1.6, REINICIO_AMARILLO

JB P2.7, RETRED

JB P1.1, REINICIO_AMARILLO

SETB P2.7

SETB P1.1

RET

RET

RETRED: LJMP ROJO

SEIX: JB P1.7, REINICIO_AMARILLO

COMPROBAR_AMARILLO: CLR P0.3

JB P1.2,REINICIO_AMARILLO

JNB P3.0, NEN

SETB P1.2

JNB P3.3, OCHO

RET

LJMP NUEVE

SIETE: JB P2.5, REINICIO_AMARILLO

NEN: JNB P3.1, OT

JB P2.0, REINICIO_AMARILLO

SETB P2.0

MOV C, P1.5

RET

MOV ACC.6,C

OCHO: JB P2.6, REINICIO_AMARILLO

MOV C, P2.5

JB P2.1, REINICIO_AMARILLO

MOV ACC.5,C

SETB P2.1

CJNE A,# 11100000B, VERTICALR1

RET

LJMP GANA_R

NUEVE: JB P2.7, REINICIO_AMARILLO


JB P2.2, REINICIO_AMARILLO

VERTICALR1: MOV A, #00H

SETB P2.2

MOV C, P0.6

RET

MOV ACC.7, C

;OPERAND EXPECTED : LJMP AMARILLO

MOV C, P1.6

RCHK:

MOV ACC.6,C

CRUZAR: MOV A,P0

MOV C, P2.6

ANL A, #1110000B

MOV ACC.5,C

MOV R7,A

CJNE A,# 11100000B, VERTICALR2

CJNE R7,# 11100000B, CRUZAR1

LJMP GANA_R

LJMP GANA_R

VERTICAL2: MOV A, #00H


MOV C, P0.7

CRUZAR1: MOV A,P1

MOV ACC.7, C

ANL A, #11100000B

MOV C, P1.7

MOV R7,A

MOV ACC.6,C

CJNE R7,# 11100000B, CRUZAR2

MOV C, P2.7

LJMP GANA_R

MOV ACC.5,C
CJNE A,# 11100000B, HORIZONTALR

CRUZAR2: MOV A,P2

LJMP GANA_R

ANL A, #1110000B
MOV R7,A

HORIZONTALR: MOV A, #00H

CJNE R7,# 11100000B, VERTICALR

MOV C, P0.5

LJMP GANA_R

MOV ACC.7, C
MOV C, P1.6

VERTICALR: MOV A, #00H

MOV ACC.6,C

MOV C, P0.5

MOV C, P2.7

MOV ACC.7, C

MOV ACC.5,C

CJNE A,# 11100000B, HORIZONTALR1


LJMP GANA_R

VERTICALY: MOV A, #00H


MOV C, P0.0

HORIZONTALR1: MOV A, #00H

MOV ACC.7, C

MOV C, P0.7

MOV C, P1.0

MOV ACC.7, C

MOV ACC.6,C

MOV C, P1.6

MOV C, P2.0

MOV ACC.6,C

MOV ACC.5,C

MOV C, P2.5

CJNE A,# 11100000B, VERTICALY1

MOV ACC.5,C

LJMP GANA_Y

CJNE A,# 11100000B, REINICIO_R


LJMP GANA_R

VERTICALY1: MOV A, #00H


MOV C, P0.1

REINICIO_R: RET

MOV ACC.7, C

YCHK:

MOV C, P1.1
MOV ACC.6,C

CRUZAY: MOV A,P0

MOV C, P2.1

ANL A, #0000111B

MOV ACC.5,C

MOV R7,A

CJNE A,# 11100000B, VERTICALY2

CJNE R7,# 00000111B, CRUZAY1

LJMP GANA_R

LJMP GANA_Y
VERTICAY2: MOV A, #00H
CRUZAY1: MOV A,P1

MOV C, P0.2

ANL A, #000011B

MOV ACC.7, C

MOV R7,A

MOV C, P1.2

CJNE R7,# 00000111B, CRUZAY2

MOV ACC.6,C

LJMP GANA_Y

MOV C, P2.2
MOV ACC.5,C

CRUZAY2: MOV A,P2

CJNE A,# 11100000B, HORIZONTALY

ANL A, #00000111B

LJMP GANA_Y

MOV R7,A
CJNE R7,#00000111B, VERTICALY

HORIZONTALR: MOV A, #00H

LJMP GANA_Y

MOV C, P0.0

MOV ACC.7, C
MOV C, P1.1

CHKL1: MOV A, P0

MOV ACC.6,C

ANL A, #00000110B

MOV C, P2.2

MOV R2,A

MOV ACC.5,C

CJNE R2,#00000110B, SIGUIENTE1

CJNE A,# 11100000B, HORIZONTALY1

JB P0.5, SIGUIENTE1

LJMP GANA_Y

MOV P3,#00001000B
LJMP NEGRO

HORIZONTALY1: MOV A, #00H


MOV C, P0.2
MOV ACC.7, C
MOV C, P1.1
MOV ACC.6,C

SIGUIENTE1: CJNE R2, #00000101B,


SIGUIENTE2
JB P0.6,SIGUIENTE2
MOV P3, #00000100B
LJMP NEGRO

MOV C, P2.0
MOV ACC.5,C
CJNE A,# 11100000B, REINICIO_Y
LJMP GANA_Y

SIGUIENTE2: CJNE R2, #00000011B,


SIGUIENTE3
JB P0.7,SIGUIENTE3
MOV P3, #00001100B
LJMP NEGRO

REINICIO_Y: RET
CHKDRAW: CJNE R0, #09H, REINICIOC
REINICIOC: RET
GANA_Y: SETB P2.3
LJMP INICIO
GANA_R: SETB P2.4
LJMP INICIO
DRAW: SETB P2.3

; .............................
SIGUIENTE3: MOV A, P1
ANL A, #00000111B
MOV R2,A
CJNE R2,#00000110B, SIGUIENTE4
JB P1.5, SIGUIENTE4
MOV P3,#00000010B
LJMP NEGRO

SETB P2.4
LJMP INICIO

SIGUIENTE4: CJNE R2, #00000101B,


SIGUIENTE5

AIPENSAR1 JB P2.2, CHKL1

JB P1.6,SIGUIENTE5

MOV P3,#00001001B

MOV P3, #00001010B

NEGRO: SETB P0.3

LJMP NEGRO

RET

SIGUIENTE5: CJNE R2, #00000011B,


SIGUIENTE6
JB P1.7,SIGUIENTE6

JB P0.5, SIGUIENTE10
MOV P3, #00001000B
LJMP NEGRO

MOV P3, #00000110B


LJMP NEGRO
;...................

SIGUIENTE10: CJNE A, #10100000B,


SIGUIENTE11

SIGUIENTE6: MOV A, P2

JB P1.5,SIGUIENTE11

ANL A, #00000111B

MOV P3, #00000010B

MOV R2,A

LJMP NEGRO

CJNE R2,#00000110B, SIGUIENTE7


JB P2.5, SIGUIENTE7
MOV P3,#00001110B
LJMP NEGRO

SIGUIENTE11: CJNE A, #11000000B,


SIGUIENTE12
JB P2.5,SIGUIENTE12
MOV P3, #00001110B

SIGUIENTE7: CJNE R2, #00000101B,


SIGUIENTE8

LJMP NEGRO

JB P2.6,SIGUIENTE8

;........

MOV P3, #00000001B

SIGUIENTE12: MOV A, 00H

LJMP NEGRO

MOV C, P0.1
MOV ACC.7,C

SIGUIENTE8: CJNE R2, #00000011B,


SIGUIENTE9
JB P2.7,SIGUIENTE9
MOV P3, #00001001B
LJMP NEGRO
;........
SIGUIENTE9: MOV A, 00H
MOV C, P0.0

MOV C, P1.1
MOV ACC.6,C
MOV P2.1
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE13
JB P0.6, SIGUIENTE13
MOV P3, #00000100B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.0
MOV ACC.6,C

SIGUIENTE13: CJNE A, #10100000B,


SIGUIENTE14

MOV P2.0

JB P1.6,SIGUIENTE14

MOV ACC.5,C

MOV P3, #000001010B

CJNE A, #01100000B, SIGUIENTE10

LJMP NEGRO

MOV C, P0.0
SIGUIENTE14: CJNE A, #11000000B,
SIGUIENTE15
JB P2.6,SIGUIENTE15
MOV P3, #00000001B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.1
MOV ACC.6,C
MOV P2.2
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE19

;........
SIGUIENTE15: MOV A, 00H
MOV C, P0.2

JB P0.5, SIGUIENTE19
MOV P3, #00001000B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.2
MOV ACC.6,C

SIGUIENTE19: CJNE A, #10100000B,


SIGUIENTE20

MOV P2.2

JB P1.6,SIGUIENTE20

MOV ACC.5,C

MOV P3, #00001010B

CJNE A, #01100000B, SIGUIENTE16

LJMP NEGRO

JB P0.7, SIGUIENTE16
MOV P3, #00001100B
LJMP NEGRO

SIGUIENTE20: CJNE A, #11000000B,


SIGUIENTE21
JB P2.7,SIGUIENTE21

SIGUIENTE16: CJNE A, #10100000B,


SIGUIENTE17

MOV P3, #00001001B


LJMP NEGRO

JB P1.7,SIGUIENTE17
MOV P3, #00000110B

;........

LJMP NEGRO

SIGUIENTE21: MOV A, 00H


MOV C, P0.2

SIGUIENTE17: CJNE A, #11000000B,


SIGUIENTE18
JB P2.7,SIGUIENTE18
MOV P3, #00001001B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.1
MOV ACC.6,C
MOV P2.0
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE22

;........
SIGUIENTE18: MOV A, 00H

JB P0.7, SIGUIENTE22
MOV P3, #00001100B

LJMP NEGRO

SIGUIENTE27: MOV A, P1
ANL A, #11100000B

SIGUIENTE22: CJNE A, #10100000B,


SIGUIENTE23
JB P1.6,SIGUIENTE23
MOV P3, #00001010B
LJMP NEGRO

SIGUIENTE23: CJNE A, #11000000B,


SIGUIENTE24
JB P2.5,SIGUIENTE24
MOV P3, #00001110B
LJMP NEGRO

;........CORRECION

MOV R1,A
CJNE R1,#11000000B, SIGUIENTE28
JB P1.0, SIGUIENTE28
MOV P3,#00000010B
LJMP NEGRO

SIGUIENTE28: CJNE R1, #10100000B,


SIGUIENTE29
JB P1.1,SIGUIENTE29
MOV P3, #00001010B
LJMP NEGRO

;.........

SIGUIENTE29: CJNE R1, #01100000B,


SIGUIENTE30

SIGUIENTE24: MOV A, P0

JB P1.2,SIGUIENTE30

ANL A, #11100000B

MOV P3, #00000110B

MOV R1,A

LJMP NEGRO

CJNE R1,#11000000B, SIGUIENTE25

;...................

JB P0.0, SIGUIENTE25

SIGUIENTE30: MOV A, P2

MOV P3,#00001000B

ANL A, #11100000B

LJMP NEGRO

MOV R1,A

SIGUIENTE25: CJNE R1, #10100000B,


SIGUIENTE26

CJNE R1,#11000000B, SIGUIENTE31

JB P0.1,SIGUIENTE26
MOV P3, #00000100B

JB P2.0, SIGUIENTE31
MOV P3,#00001110B
LJMP NEGRO

LJMP NEGRO

SIGUIENTE26: CJNE R2, #01100000B,


SIGUIENTE27
JB P0.2,SIGUIENTE27
MOV P3, #00001100B
LJMP NEGRO
; .............................

SIGUIENTE31: CJNE R1, #10100000B,


SIGUIENTE32
JB P2.1,SIGUIENTE32
MOV P3, #00000001B
LJMP NEGRO

SIGUIENTE32: CJNE R1, #01100000B,


SIGUIENTE33
JB P2.2,SIGUIENTE33
MOV P3, #00001001B
LJMP NEGRO
;........
SIGUIENTE33: MOV A, 00H
MOV C, P0.50

MOV C, P1.6
MOV ACC.6,C
MOV P2.6
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE37
JB P0.1, SIGUIENTE37
MOV P3, #00000100B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.5
MOV ACC.6,C

SIGUIENTE37: CJNE A, #10100000B,


SIGUIENTE38

MOV P2.5

JB P1.1,SIGUIENTE38

MOV ACC.5,C

MOV P3, #000001010B

CJNE A, #01100000B, SIGUIENTE34

LJMP NEGRO

JB P0.0, SIGUIENTE34
MOV P3, #00001000B
LJMP NEGRO

SIGUIENTE38: CJNE A, #11000000B,


SIGUIENTE39
JB P2.6,SIGUIENTE39

SIGUIENTE34: CJNE A, #10100000B,


SIGUIENTE35

MOV P3, #00000001B


LJMP NEGRO

JB P1.0,SIGUIENTE35
MOV P3, #00000010B

;........

LJMP NEGRO

SIGUIENTE39: MOV A, 00H


MOV C, P0.7

SIGUIENTE35: CJNE A, #11000000B,


SIGUIENTE36
JB P2.0,SIGUIENTE36
MOV P3, #00001110B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.7
MOV ACC.6,C
MOV P2.7
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE40

;........
SIGUIENTE36: MOV A, 00H
MOV C, P0.6
MOV ACC.7,C

JB P0.2, SIGUIENTE40
MOV P3, #00001100B
LJMP NEGRO

SIGUIENTE40: CJNE A, #10100000B,


SIGUIENTE41
JB P1.2,SIGUIENTE41
MOV P3, #00000110B
LJMP NEGRO

LJMP NEGRO

;........
SIGUIENTE45: MOV A, 00H
MOV C, P0.7
MOV ACC.7,C

SIGUIENTE41: CJNE A, #11000000B,


SIGUIENTE42
JB P2.2,SIGUIENTE42
MOV P3, #00001001B
LJMP NEGRO

MOV C, P1.6
MOV ACC.6,C
MOV P2.5
MOV ACC.5,C
CJNE A, #01100000B, SIGUIENTE46

;........
SIGUIENTE42: MOV A, 00H
MOV C, P0.5

JB P0.2, SIGUIENTE46
MOV P3, #00001100B
LJMP NEGRO

MOV ACC.7,C
MOV C, P1.6
MOV ACC.6,C
MOV P2.7
MOV ACC.5,C

SIGUIENTE46: CJNE A, #10100000B,


SIGUIENTE47
JB P1.1,SIGUIENTE47
MOV P3, #00001010B
LJMP NEGRO

CJNE A, #01100000B, SIGUIENTE43


JB P0.0, SIGUIENTE43
MOV P3, #00001000B

SIGUIENTE47: CJNE A, #11000000B,


SIGUIENTE90

LJMP NEGRO

JB P2.0,SIGUIENTE90
MOV P3, #00001110B

SIGUIENTE43: CJNE A, #10100000B,


SIGUIENTE44
JB P1.1,SIGUIENTE44
MOV P3, #00001010B
LJMP NEGRO

LJMP NEGRO

;................
;................
;................

SIGUIENTE44: CJNE A, #11000000B,


SIGUIENTE45
JB P2.2,SIGUIENTE45
MOV P3, #00001001B

SIGUIENTE90: JB P0.5, SIGUIENTE91


JB P0.0, SIGUIENTE91

MOV P3, # 00001000B

ESTABLECE5: JB P0.1, ESTABLECER6

LJMP NEGRO

JB P0.6, ESTABLECER6
MOV P3, # 00000100B

SIGUIENTE91: JB P2.5, SIGUIENTE92

LJMP BACK

JB P0.0, SIGUIENTE92
MOV P3, #00001110B

ESTABLECE6: JB P0.0, ESTABLECER7

LJMP NEGRO

JB P0.5, ESTABLECER7
MOV P3, # 0000101B

SIGUIENTE92: JB P0.7,ESTABLECER1

LJMP BACK

JB P0.2,ESTABLECER1
MOV P3, #00001100

ESTABLECE7: JB P0.2, ESTABLECER8

LJMP NEGRO

JB P0.7, ESTABLECER8
MOV P3, # 00001100B

ESTABLECE1: JB P1.1, ESTABLECER2

LJMP BACK

JB P1.6, ESTABLECER2
MOV P3, # 00001010B
LJMP BACK

ESTABLECE8: JB P2.0, ESTABLECER9


JB P2.5 , ESTABLECER9

ESTABLECE2: JB P1.0, ESTABLECER3

MOV P3, # 00001110B

JB P1.5, ESTABLECER3

LJMP NEGRO

MOV P3, # 00000010B


LJMP BACK

ESTABLECE9:
MOV P3, # 00001001B

ESTABLECE3: JB P2.1, ESTABLECER4

LJMP NEGRO

JB P2.6, ESTABLECER4
MOV P3, # 00000001B

AIPENSAR2: CJNE R0, # 01H, PONER

LJMP BACK

JB P1.1, ENCONTRAR
JB P1.6, ENCONTRAR

ESTABLECE4: JB P1.2, ESTABLECER5

MOV P3, # 10100000B

JB P1.7, ESTABLECER5
MOV P3, # 00000110B

NEGRO1: SETB P0.4

LJMP BACK

RET

ENCONTRAR: JNB P0.2, ENCONTRAR1


JB P2.0, ENCONTRAR1
JB P2.5, ENCONTRAR1
MOV P3,# 11100000B
LJMP NEGRO1

SIGUIENTE01: CJNE R1, #00000110B,


SIGUIENTE02
JB P0.5, SIGUIENTE02
JB P0.0, SIGUIENTE02
MOV P3, #10000000B

ENCONTRAR1: JNB P2.0, ENCONTRAR2

LJMP NEGRO1

JB P0.2, ENCONTRAR2
JB P0.7, ENCONTRAR2
MOV P3,# 11000000B
LJMP NEGRO1

SIGUIENTE02: CJNE R2, #10100000B,


SIGUIENTE03
JB P0.1, SIGUIENTE03
JB P0.6, SIGUIENTE03

ENCONTRAR2: JNB P1.1, ALT


JB P2.2, ALT

MOV P3, #01000000B


LJMP NEGRO1

JB P2.7, ALT
MOV P3,# 10010000B
LJMP NEGRO1

SIGUIENTE03: CJNE R1, #00000101B,


SIGUIENTE04

ALT: MOV P3, # 10100000B

JB P0.5, SIGUIENTE04

LJMP NEGRO

JB P0.0, SIGUIENTE04
MOV P3, #01000000B
LJMP NEGRO1

PONER: MOV A, P0
ANL A, #00000111
MOV R1,A

SIGUIENTE04: CJNE R2, #01100000B,


SIGUIENTE05

MOV A, P0
JB P0.2, SIGUIENTE05
ANL A, # 11100000B
JB P0.7, SIGUIENTE05
MOV R2, A
MOV P3, #11000000B
CJNE R2, # 11000000B, SIGUIENTE01
LJMP NEGRO1
JB P0.0, SIGUIENTE01
JB P0.5, SIGUIENTE01
MOV P3, #10000000B
SIGUIENTE05: CJNE R1, #00000011B, CHKL02
LJMP NEGRO1
JB P0.7, CHKL02

JB P0.2, CHKL02

LJMP NEGRO1

MOV P3, #11000000B


LJMP NEGRO1

CHKL02: MOV A, P1
ANL A, # 00000111B
MOV R1, A
MOV A, P1

SIGUIENTE014: CJNE R2, # 01100000B,


SIGUIENTE015
JB P1.2, SIGUIENTE015
JB P1.7, SIGUIENTE015
MOV P3, # 01100000B
LJMP NEGRO1

ANL A, # 11100000B
MOV R2, P1
CJNE R2, # 11100000B, SIGUIENTE011
JB P1.0, SIGUIENTE011
JB P1.5, SIGUIENTE011
MOV P3, # 00100000B

SIGUIENTE015: CJNE R1, # 00000011B, CHKL03


JB P1.7, CHKL03
JB P1.2, CHKL03
MOV P3, # 01100000B
LJMP NEGRO1

LJMP NEGRO1
SIGUIENTE011: CJNE R1, # 00000110B,
SIGUIENTE012

CHKL03: MOV A,P2


ANL A, # 00000111B

JB P1.5, SIGUIENTE012

MOV R1,A

JB P1.0, SIGUIENTE012

MOV A, P2

MOV P3, # 00100000B

ANL A ,# 11100000B

LJMP NEGRO1

MOV R2, A
CJNE R2, # 11000000B, SIGUIENTE021

SIGUIENTE012: CJNE R2, # 10100000B,


SIGUIENTE013
JB P1.1, SIGUIENTE013
JB P1.6, SIGUIENTE013

JB P2.0, SIGUIENTE021
JB P2.5, SIGUIENTE021
MOV P3, #11100000B
LJMP NEGRO1

MOV P3, # 10100000B


LJMP NEGRO1

SIGUIENTE013: CJNE R1, # 00000101B,


SIGUIENTE014
JB P1.6, SIGUIENTE014
JB P1.1, SIGUIENTE014
MOV P3, # 10100000B

SIGUIENTE021: CJNE R1,# 00000110B,


SIGUIENTE022
JB P2.5, SIGUIENTE022
JB P2.0, SIGUIENTE022
MOV P3, # 11100000B
LJMP NEGRO1

SIGUIENTE022: CJNE R2, # 10100000B,


SIGUIENTE023
JB P2.1, SIGUIENTE023
JB P2.6, SIGUIENTE023
MOV P3, # 00010000B
LJMP NEGRO1

MOV C, P2.5
MOV ACC.5, C
CJNE A, #01100000B, SIGUIENTE034
JB P0.0, SIGUIENTE034
JB P0.5, SIGUIENTE034
MOV P3, #10000000B
LJMP NEGRO1

SIGUIENTE023: CJNE R1,# 00000101B,


SIGUIENTE024
JB P2.6, SIGUIENTE024
JB P2.1, SIGUIENTE024
MOV P3, # 00010000B
LJMP NEGRO1

SIGUIENTE034: CJNE A, #10100000B,


SIGUIENTE035
JB P1.0, SIGUIENTE035
JB P1.5, SIGUIENTE035
MOV P3, #00100000B
LJMP NEGRO1

SIGUIENTE024: CJNE R2, # 01100000B,


SIGUIENTE025
JB P2.2, SIGUIENTE025
JB P2.7, SIGUIENTE025
MOV P3, # 10010000B
LJMP NEGRO1

SIGUIENTE035: CJNE A, #11000000B,


SIGUIENTE033
JB P2.0, SIGUIENTE033
JB P2.5, SIGUIENTE033
MOV P3, #11100000B
LJMP NEGRO1

SIGUIENTE025: CJNE R1, # 00000011B, CHKL04


JB P2.7, CHKL04
JB P2.2, CHKL04
MOV P3, # 10010000B
LJMP NEGRO1

SIGUIENTE033: MOV A, #00H


MOV C, P0.0
MOV ACC.7, C
MOV C, P1.0
MOV ACC.6, C
MOV C, P2.0
MOV ACC.5, C

CHKL04: MOV A, #00H


MOV C, P0.5
MOV ACC.7, C
MOV C, P1.5
MOV ACC.6, C

CJNE A, #01100000B, SIGUIENTE031


JB P0.5, SIGUIENTE031
JB P0.0, SIGUIENTE031
MOV P3, #10000000B
LJMP NEGRO1

SIGUIENTE031: CJNE A, #10100000B,


SIGUIENTE032

SIGUIENTE045: CJNE A, #11000000B,


SIGUIENTE043

JB P1.5, SIGUIENTE032

JB P2.1, SIGUIENTE043

JB P1.0, SIGUIENTE032

JB P2.6, SIGUIENTE043

MOV P3, #00100000B

MOV P3, #00010000B

LJMP NEGRO1

LJMP NEGRO1
SIGUIENTE043: MOV A, #00H

SIGUIENTE032: CJNE A, #11000000B, CHKL05

MOV C, P0.1

JB P2.5, CHKL05

MOV ACC.7, C

JB P2.0, CHKL05

MOV C, P1.1

MOV P3, #11100000B

MOV ACC.6, C

LJMP NEGRO1

MOV C, P2.1
MOV ACC.5, C

CHKL05: MOV A, #00H

CJNE A, #01100000B, SIGUIENTE041

MOV C, P0.6

JB P0.6, SIGUIENTE041

MOV ACC.7, C

JB P0.1, SIGUIENTE041

MOV C, P1.6

MOV P3, #01000000B

MOV ACC.6, C

LJMP NEGRO1

MOV C, P2.6
MOV ACC.5, C
CJNE A, #01100000B, SIGUIENTE044
JB P0.1, SIGUIENTE44
JB P0.6, SIGUIENTE044
MOV P3, #01000000B
LJMP NEGRO1

SIGUIENTE041: CJNE A, #10100000B,


SIGUIENTE042
JB P1.6, SIGUIENTE042
JB P1.1, SIGUIENTE042
MOV P3, #10100000B
LJMP NEGRO1

SIGUIENTE044: CJNE A, #10100000B,


SIGUIENTE045

SIGUIENTE042: CJNE A, #11000000B, CHKL06

JB P1.1, SIGUIENTE045

JB P2.6, CHKL06

JB P1.6, SIGUIENTE045

JB P2.1, CHKL06

MOV P3, #10100000B

MOV P3, #00010000B

LJMP NEGRO1

LJMP NEGRO1

CHKL06: MOV A, #00H

MOV C, P0.7

CJNE A, #01100000B, SIGUIENTE051

MOV ACC.7, C

JB P0.7, SIGUIENTE051

MOV C, P1.7

JB P0.2, SIGUIENTE051

MOV ACC.6, C

MOV P3, #11000000B

MOV C, P2.7

LJMP NEGRO1

MOV ACC.5, C
CJNE A, #01100000B, SIGUIENTE054
JB P0.2, SIGUIENTE054
JB P0.7, SIGUIENTE054
MOV P3, #11000000B
LJMP NEGRO1
;...............
;................
SIGUIENTE054: CJNE A, #10100000B,
SIGUIENTE055

SIGUIENTE051: CJNE A, #10100000B,


SIGUIENTE052
JB P1.7, SIGUIENTE052
JB P1.2, SIGUIENTE052
MOV P3, #01100000B
LJMP NEGRO1
SIGUIENTE052: CJNE A, #11000000B, CHKL07
JB P2.7, CHKL07
JB P2.2, CHKL07

JB P1.2, SIGUIENTE055

MOV P3, #10010000B

JB P1.7, SIGUIENTE055

LJMP NEGRO1

MOV P3, #01100000B

CHKL07: MOV A, #00H

LJMP NEGRO1

MOV C, P0.5
MOV ACC.7, C

SIGUIENTE055: CJNE A, #11000000B,


SIGUIENTE053
JB P2.2, SIGUIENTE053
JB P2.7, SIGUIENTE053
MOV P3, #10010000B
LJMP NEGRO1

MOV C, P1.6
MOV ACC.6, C
MOV C, P2.7
MOV ACC.5, C
CJNE A, #01100000B, SIGUIENTE064
JB P0.0, SIGUIENTE064
JB P0.5, SIGUIENTE064

SIGUIENTE053: MOV A, #00H

MOV P3, #10000000B

MOV C, P0.2
MOV ACC.7, C
MOV C, P1.2

LJMP NEGRO1

MOV ACC.6, C

SIGUIENTE064: CJNE A, #10100000B,


SIGUIENTE065

MOV C, P2.2

JB P1.1, SIGUIENTE065

MOV ACC.5, C

JB P1.6, SIGUIENTE065

MOV P3, #10100000B

LJMP NEGRO1
CHKL08: MOV A, #00H

LJMP NEGRO1

MOV C, P0.7

SIGUIENTE065: CJNE A, #11000000B,


SIGUIENTE063

MOV ACC.7, C

JB P2.2, SIGUIENTE063
JB P2.7, SIGUIENTE063
MOV P3, #10010000B
LJMP NEGRO1

MOV C, P1.6
MOV ACC.6, C
MOV C, P2.5
MOV ACC.5, C
CJNE A, #01100000B, SIGUIENTE074
JB P0.2, SIGUIENTE074

SIGUIENTE063: MOV A, #00H


MOV C, P0.0

JB P0.7, SIGUIENTE074
MOV P3, #11000000B

MOV ACC.7, C
MOV C, P1.1

LJMP NEGRO1

MOV ACC.6, C
MOV C, P2.2
MOV ACC.5, C

SIGUIENTE074: CJNE A, #10100000B,


SIGUIENTE075

CJNE A, #01100000B, SIGUIENTE061

JB P1.1, SIGUIENTE075

JB P0.5, SIGUIENTE061
JB P0.0, SIGUIENTE061

JB P1.6, SIGUIENTE075

MOV P3, #10000000B

MOV P3, #10100000B

LJMP NEGRO1

LJMP NEGRO1

SIGUIENTE061: CJNE A, #10100000B,


SIGUIENTE062

SIGUIENTE075: CJNE A, #11000000B,


SIGUIENTE073
JB P2.0, SIGUIENTE073

JB P1.6, SIGUIENTE062

JB P2.5, SIGUIENTE073

JB P1.1, SIGUIENTE062

MOV P3, #11100000B

MOV P3, #10100000B

LJMP NEGRO1

LJMP NEGRO1
SIGUIENTE073: MOV A, #00H
SIGUIENTE062: CJNE A, #11000000B, CHKL08

MOV C, P0.2

JB P2.7, CHKL08

MOV ACC.7, C

JB P2.2, CHKL08

MOV C, P1.1

MOV P3, #10010000B

MOV ACC.6, C

MOV C, P2.0

JB P1.7, ESTABLECER5

MOV ACC.5, C

MOV P3, #01100000B

CJNE A, #01100000B, SIGUIENTE071

LJMP NEGRO1

JB P0.7, SIGUIENTE071

ESTABLECER5: JB P0.1, ESTABLECER6

JB P0.2, SIGUIENTE071

JB P0.6, ESTABLECER6

MOV P3, #11000000B

MOV P3, #01000000B

LJMP NEGRO1

LJMP NEGRO1
ESTABLECER6: JB P0.0, ESTABLECER7

SIGUIENTE071: CJNE A, #10100000B,


SIGUIENTE072
JB P1.6, SIGUIENTE072
JB P1.1, SIGUIENTE072
MOV P3, #10100000B
LJMP NEGRO1

JB P0.5, ESTABLECER7
MOV P3, #10000000B
LJMP NEGRO1
ESTABLECER7: JB P0.2, ESTABLECER8
JB P0.7, ESTABLECER8
MOV P3, #11000000B
LJMP NEGRO1

SIGUIENTE072: CJNE A, #11000000B,


ESTABLECER1
JB P2.5, ESTABLECER1
JB P2.0, ESTABLECER1
MOV P3, #11100000B
LJMP NEGRO1
ESTABLECER1: JB P1.1, ESTABLECER2
JB P1.6, ESTABLECER2
MOV P3, #10100000B
LJMP NEGRO1
ESTABLECER2: JB P1.0, ESTABLECER3
JB P1.5, ESTABLECER3
MOV P3, #00100000B
LJMP NEGRO1
ESTABLECER3: JB P2.1, ESTABLECER4
JB P2.6, ESTABLECER4
MOV P3, #00010000B
LJMP NEGRO1
ESTABLECER4: JB P1.2, ESTABLECER5

ESTABLECER8: JB P2.0, ESTABLECER9


JB P2.5, ESTABLECER9
MOV P3, #11100000B
LJMP NEGRO1
ESTABLECER9: MOV P3, #10010000B
LJMP NEGRO1
END

You might also like