Professional Documents
Culture Documents
LJMP ROJO
CLR P0.4
JNB P0.4,$
MOV A,P3
ANL A,11110000B
CJNE A,# 00H, UNO_AQUI1
LJMP INICIO
LJMP ROJO
LJMP P2A
LJMP ROJO
DOS_AQUI1:CJNE A,#11010000B,TRES_AQUI1
P2P:
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
LJMP AMARILLO
LJMP AMARILLO
;................
P2A:
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
LJMP JUGADOR1
CALL YCHK
INC R0
LJMP JUGADOR 1
CALL CHKDRAW
LJMP JUGADOR1
LJMP JUGADOR2
CALL YCHK
INC R0
LJMP JUGADOR2
CALL CHKDRAW
LJMP AI2
CALL RCHK
INC R0
CALL AIPENSAR2
CALL CHKDRAW
JNB P0.4,$
LJMP AI1
CALL COMPROBAR_ROJO
COMPROBAR_ROJO:CLR P0.4
CALL RCHK
INC R0
JNB P3.7,OCHO1
CALL CHKDRAW
LJMP NUEVE1
LJMP JUGADOR1
A2P:
JNB P3.6, F1
CALL AIPENSAR1
LJMP SIETE1
CALL COMPROBAR_AMARILLO
OT1:
CALL YCHK
INC R0
CALL CHKDRAW
LJMP TRES1
LJMP JUGADOR2
LJMP CINCO1
CLR P0.4
MOV P3,#00H
JB P0.5, RETRED
JNB P0.4,$
SETB P0.5
MOV A, P3
RET
ANL A,#1111000B
JB P0.6, RETRED
LJMP JUGADOR2
SETB P0.6
RET
LJMP JUGADOR2
JB P0.7, RETRED
JNB P3.2,FF1
SETB P0.7
JNB P3.3,SEIX
RET
LJMP SIETE
JB P1.5, RETRED
SETB P1.5
LJMP TRES
RET
CINCO1: JB P1.1,RETRED
LJMP CINCO
JB P1.6, RETRED
SETB P1.6
JB P0.0, REINICIO_AMARILLO
RET
SETB P0.0
RET
JB P1.7,RETRED
SETB P1.7
JB P0.1, REINICIO_AMARILLO
RET
SETB P0.1
SIETE1: JB P2.0,RETRED
RET
JB P2.5, RETRED
SETB P2.5
JB P0.2, REINICIO_AMARILLO
RET
SETB P0.2
RET
JB P2.6, RETRED
SETB P2.6
JB P1.0
RET
RET
JB P2.7, RETRED
JB P1.1, REINICIO_AMARILLO
SETB P2.7
SETB P1.1
RET
RET
JB P1.2,REINICIO_AMARILLO
SETB P1.2
RET
LJMP NUEVE
JB P2.0, REINICIO_AMARILLO
SETB P2.0
MOV C, P1.5
RET
MOV ACC.6,C
MOV C, P2.5
JB P2.1, REINICIO_AMARILLO
MOV ACC.5,C
SETB P2.1
RET
LJMP GANA_R
SETB P2.2
MOV C, P0.6
RET
MOV ACC.7, C
MOV C, P1.6
RCHK:
MOV ACC.6,C
MOV C, P2.6
ANL A, #1110000B
MOV ACC.5,C
MOV R7,A
LJMP GANA_R
LJMP GANA_R
MOV ACC.7, C
ANL A, #11100000B
MOV C, P1.7
MOV R7,A
MOV ACC.6,C
MOV C, P2.7
LJMP GANA_R
MOV ACC.5,C
CJNE A,# 11100000B, HORIZONTALR
LJMP GANA_R
ANL A, #1110000B
MOV R7,A
MOV C, P0.5
LJMP GANA_R
MOV ACC.7, C
MOV C, P1.6
MOV ACC.6,C
MOV C, P0.5
MOV C, P2.7
MOV ACC.7, C
MOV ACC.5,C
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
MOV ACC.5,C
LJMP GANA_Y
REINICIO_R: RET
MOV ACC.7, C
YCHK:
MOV C, P1.1
MOV ACC.6,C
MOV C, P2.1
ANL A, #0000111B
MOV ACC.5,C
MOV R7,A
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
MOV ACC.6,C
LJMP GANA_Y
MOV C, P2.2
MOV ACC.5,C
ANL A, #00000111B
LJMP GANA_Y
MOV R7,A
CJNE R7,#00000111B, VERTICALY
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
JB P0.5, SIGUIENTE1
LJMP GANA_Y
MOV P3,#00001000B
LJMP NEGRO
MOV C, P2.0
MOV ACC.5,C
CJNE A,# 11100000B, REINICIO_Y
LJMP GANA_Y
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
JB P1.6,SIGUIENTE5
MOV P3,#00001001B
LJMP NEGRO
RET
JB P0.5, SIGUIENTE10
MOV P3, #00001000B
LJMP NEGRO
SIGUIENTE6: MOV A, P2
JB P1.5,SIGUIENTE11
ANL A, #00000111B
MOV R2,A
LJMP NEGRO
LJMP NEGRO
JB P2.6,SIGUIENTE8
;........
LJMP NEGRO
MOV C, P0.1
MOV ACC.7,C
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
MOV P2.0
JB P1.6,SIGUIENTE14
MOV ACC.5,C
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
MOV P2.2
JB P1.6,SIGUIENTE20
MOV ACC.5,C
LJMP NEGRO
JB P0.7, SIGUIENTE16
MOV P3, #00001100B
LJMP NEGRO
JB P1.7,SIGUIENTE17
MOV P3, #00000110B
;........
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
;........CORRECION
MOV R1,A
CJNE R1,#11000000B, SIGUIENTE28
JB P1.0, SIGUIENTE28
MOV P3,#00000010B
LJMP NEGRO
;.........
SIGUIENTE24: MOV A, P0
JB P1.2,SIGUIENTE30
ANL A, #11100000B
MOV R1,A
LJMP NEGRO
;...................
JB P0.0, SIGUIENTE25
SIGUIENTE30: MOV A, P2
MOV P3,#00001000B
ANL A, #11100000B
LJMP NEGRO
MOV R1,A
JB P0.1,SIGUIENTE26
MOV P3, #00000100B
JB P2.0, SIGUIENTE31
MOV P3,#00001110B
LJMP NEGRO
LJMP NEGRO
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
MOV P2.5
JB P1.1,SIGUIENTE38
MOV ACC.5,C
LJMP NEGRO
JB P0.0, SIGUIENTE34
MOV P3, #00001000B
LJMP NEGRO
JB P1.0,SIGUIENTE35
MOV P3, #00000010B
;........
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
LJMP NEGRO
;........
SIGUIENTE45: MOV A, 00H
MOV C, P0.7
MOV ACC.7,C
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
LJMP NEGRO
JB P2.0,SIGUIENTE90
MOV P3, #00001110B
LJMP NEGRO
;................
;................
;................
LJMP NEGRO
JB P0.6, ESTABLECER6
MOV P3, # 00000100B
LJMP BACK
JB P0.0, SIGUIENTE92
MOV P3, #00001110B
LJMP NEGRO
JB P0.5, ESTABLECER7
MOV P3, # 0000101B
SIGUIENTE92: JB P0.7,ESTABLECER1
LJMP BACK
JB P0.2,ESTABLECER1
MOV P3, #00001100
LJMP NEGRO
JB P0.7, ESTABLECER8
MOV P3, # 00001100B
LJMP BACK
JB P1.6, ESTABLECER2
MOV P3, # 00001010B
LJMP BACK
JB P1.5, ESTABLECER3
LJMP NEGRO
ESTABLECE9:
MOV P3, # 00001001B
LJMP NEGRO
JB P2.6, ESTABLECER4
MOV P3, # 00000001B
LJMP BACK
JB P1.1, ENCONTRAR
JB P1.6, ENCONTRAR
JB P1.7, ESTABLECER5
MOV P3, # 00000110B
LJMP BACK
RET
LJMP NEGRO1
JB P0.2, ENCONTRAR2
JB P0.7, ENCONTRAR2
MOV P3,# 11000000B
LJMP NEGRO1
JB P2.7, ALT
MOV P3,# 10010000B
LJMP NEGRO1
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
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
CHKL02: MOV A, P1
ANL A, # 00000111B
MOV R1, A
MOV A, P1
ANL A, # 11100000B
MOV R2, P1
CJNE R2, # 11100000B, SIGUIENTE011
JB P1.0, SIGUIENTE011
JB P1.5, SIGUIENTE011
MOV P3, # 00100000B
LJMP NEGRO1
SIGUIENTE011: CJNE R1, # 00000110B,
SIGUIENTE012
JB P1.5, SIGUIENTE012
MOV R1,A
JB P1.0, SIGUIENTE012
MOV A, P2
ANL A ,# 11100000B
LJMP NEGRO1
MOV R2, A
CJNE R2, # 11000000B, SIGUIENTE021
JB P2.0, SIGUIENTE021
JB P2.5, SIGUIENTE021
MOV P3, #11100000B
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
JB P1.5, SIGUIENTE032
JB P2.1, SIGUIENTE043
JB P1.0, SIGUIENTE032
JB P2.6, SIGUIENTE043
LJMP NEGRO1
LJMP NEGRO1
SIGUIENTE043: MOV A, #00H
MOV C, P0.1
JB P2.5, CHKL05
MOV ACC.7, C
JB P2.0, CHKL05
MOV C, P1.1
MOV ACC.6, C
LJMP NEGRO1
MOV C, P2.1
MOV ACC.5, C
MOV C, P0.6
JB P0.6, SIGUIENTE041
MOV ACC.7, C
JB P0.1, SIGUIENTE041
MOV C, P1.6
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
JB P1.1, SIGUIENTE045
JB P2.6, CHKL06
JB P1.6, SIGUIENTE045
JB P2.1, CHKL06
LJMP NEGRO1
LJMP NEGRO1
MOV C, P0.7
MOV ACC.7, C
JB P0.7, SIGUIENTE051
MOV C, P1.7
JB P0.2, SIGUIENTE051
MOV ACC.6, C
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
JB P1.2, SIGUIENTE055
JB P1.7, SIGUIENTE055
LJMP NEGRO1
LJMP NEGRO1
MOV C, P0.5
MOV ACC.7, C
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
MOV C, P0.2
MOV ACC.7, C
MOV C, P1.2
LJMP NEGRO1
MOV ACC.6, C
MOV C, P2.2
JB P1.1, SIGUIENTE065
MOV ACC.5, C
JB P1.6, SIGUIENTE065
LJMP NEGRO1
CHKL08: MOV A, #00H
LJMP NEGRO1
MOV C, P0.7
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
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
JB P1.1, SIGUIENTE075
JB P0.5, SIGUIENTE061
JB P0.0, SIGUIENTE061
JB P1.6, SIGUIENTE075
LJMP NEGRO1
LJMP NEGRO1
JB P1.6, SIGUIENTE062
JB P2.5, SIGUIENTE073
JB P1.1, SIGUIENTE062
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 ACC.6, C
MOV C, P2.0
JB P1.7, ESTABLECER5
MOV ACC.5, C
LJMP NEGRO1
JB P0.7, SIGUIENTE071
JB P0.2, SIGUIENTE071
JB P0.6, ESTABLECER6
LJMP NEGRO1
LJMP NEGRO1
ESTABLECER6: JB P0.0, ESTABLECER7
JB P0.5, ESTABLECER7
MOV P3, #10000000B
LJMP NEGRO1
ESTABLECER7: JB P0.2, ESTABLECER8
JB P0.7, ESTABLECER8
MOV P3, #11000000B
LJMP NEGRO1