Ensamblador - Juego en ensamblador

 
Vista:

Juego en ensamblador

Publicado por microprocessor (46 intervenciones) el 10/05/2007 21:10:24
Saludos!

Acabo de crear un juego de 3 en raya en Netwide Assembler y queria saber si os interesaria.
Tiene cuatro tipos de juego:
1. Persona-Persona
2. Persona-Ordenador
3. Ordenador-Persona
4. Ordenador-Ordenador (Nivel Alto gana a Nivel Bajo)

y cuatro niveles de inteligencia:
1. Lo hace todo al azar
2. Mira primero si puede el contrario hacer tres en raya, si es cierto, lo evita, sino, lo hace como en el nivel 1
3. Primero mira si puede ganar, sino funciona como en el nivel 2
4. (Mas sofisticado)

***La idea ha sido de un mensaje de Jose Luis "Ayuda Programa (04/05/07) que lo pedia en ensamblador MIPS***

Gracias y espero que os interese
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder

Juego en ensamblador

Publicado por sandra (2 intervenciones) el 07/06/2011 13:49:36
POR FAVOR NECESITO Q M ENVIEN EL CODIGO PARA DE ESTE JEUGO Y LO PUEDA VER!!! LO NECESITO!! LO MAS RPAIDO POSIBLE!! MI CORREO ES [email protected]
se los agradeceria muuucho!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por andyz (2 intervenciones) el 06/06/2011 03:21:21
Hola, justo ahora ando buscando una guia para hacer un juego tres en raya en assembler, no se si todavia esta disponible pero te agradeceria mucho si me lo puedes enviar a mi correo! [email protected]
Muchas Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por damian (1 intervención) el 29/05/2007 17:34:51
oye si me puedes pasar el programa me ayudaria mucho
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por andyz (2 intervenciones) el 09/06/2011 03:33:37
Hola te escribo de nuevo para pedirte ayuda, si me puedes enviar el programa es urgente... Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por dep (1 intervención) el 29/05/2007 19:06:47
estoy interesado en el juego me lo podrias enviar a mi correo
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por microprocessor (46 intervenciones) el 30/05/2007 22:37:16
Iba a quitarlo, pero por suerte lo tengo guardado todavia:

org 100h

MAIN:
mov byte [Paso],0
mov word [Jug1],0
mov byte [TxtJugador],"1"
xor al,al
mov cx,9
mov di,C1
repne stosb

Datos:
call Borrar
mov bx,TxtDatos
call prtext

InDatos:
call input
cmp al,"1"
je Principal
cmp al,"2"
je PO
cmp al,"3"
je OP
cmp al,"4"
je OO
cmp al,"5"
je OO2
cmp al,27
je near Salir
jmp InDatos

PO:
call InputLevel
mov byte [Jug2],al
jmp Principal

OP:
call InputLevel
mov byte [Jug1],al
jmp Principal

OO2:
mov byte [Paso],1
OO:
mov al,"1"
call print
mov al,"."
call print
call InputLevel
mov byte [Jug1],al
call prLine
mov al,"2"
call print
mov al,"."
call print
call InputLevel
mov byte [Jug2],al
jmp Principal

InputLevel:
mov bx,TxtLevel
call prtext
mov bl,[MinLevel]
mov bh,[MaxLevel]

InputLevelB
call input
cmp al,bl
jb InputLevelB
cmp al,bh
jg InputLevelB
call print
ret

Principal:
call Borrar
call ImpTablero
call prLine
call JJugador
call Borrar

Juego:
call ImpTablero
call prLine
call C3R

call CEmpate
call IncJugador
cmp byte [Paso],1
jne NPaso
call input
cmp al,27
je near WaitEsc
NPaso
call JJugador
call prLine

call Borrar
jmp Juego

JJugador:
mov bx,TxtTecla
call PRTEXT
mov al,[TxtJugador]
sub al,31h
xor ah,ah
mov si,ax
mov al,[Jug1+si]
or al,al
jz near JPersona

JOrdenador:
push ax
call prLine
pop ax
cmp al,"1"
je JOrdenador1
cmp al,"2"
je JOrdenador2
cmp al,"3"
je JOrdenador3
cmp al,"4"
je JOrdenador4

JOrdenador1:
mov ax,9
call Rnd
mov si,ax
cmp byte [C1+si],0
jnz JOrdenador1
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
ret

JOrdenador2:
call Evitar3
cmp al,9
;mov al,[TxtJugador]
je JOrdenador1
xor ah,ah
mov si,ax
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
ret

JOrdenador3:
call Ganar3
cmp al,9
je JOrdenador2
xor ah,ah
mov si,ax
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
ret

JOrdenador4:
call Ganar3
cmp al,9
je CEvitar
xor ah,ah
mov si,ax
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
ret

CEvitar:
call Evitar3
cmp al,9
je CCentral
xor ah,ah
mov si,ax
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
ret

CCentral:
cmp byte [C5],0
jne CBordes
mov al,[TxtJugador]
sub al,30h
mov [C5],al
mov al,8
call print
ret

CBordes:
cmp byte [C1],0
je RBordes
cmp byte [C3],0
je RBordes
cmp byte [C7],0
je RBordes
cmp byte [C9],0
je RBordes
jmp JOrdenador1

RBordes:
mov al,4
call Rnd
cmp al,0
je RBordes1
cmp al,1
je RBordes3
cmp al,2
je RBordes7
cmp al,3
je RBordes9

RBordes1:
cmp byte [C1],0
jne RBordes
mov al,[TxtJugador]
sub al,30h
mov [C1],al
ret

RBordes3:
cmp byte [C3],0
jne RBordes
mov al,[TxtJugador]
sub al,30h
mov [C3],al
ret

RBordes7:
cmp byte [C7],0
jne RBordes
mov al,[TxtJugador]
sub al,30h
mov [C7],al
ret

RBordes9:
cmp byte [C9],0
jne RBordes
mov al,[TxtJugador]
sub al,30h
mov [C9],al
ret


Evitar3:
mov al,[TxtJugador]
sub al,30h
add al,1
cmp al,3
jne E1
mov al,1
jmp E1

Ganar3:
mov al,[TxtJugador]
sub al,30h
jmp E1

E1:
cmp [C1],al
jne E2

E12
cmp [C2],al
jne E13
cmp byte [C3],0
je near RC3

E13
cmp [C3],al
jne E14
cmp byte [C2],0
je near RC2

E14
cmp [C4],al
jne E15
cmp byte [C7],0
je near RC7

E15
cmp [C5],al
jne E17
cmp byte [C9],0
je near RC9

E17
cmp [C7],al
jne E19
cmp byte [C4],0
je near RC4

E19
cmp [C9],al
je E2
cmp byte [C5],0
je near RC5

E2:
cmp [C2],al
jne E3

E23
cmp [C3],al
jne E25
cmp byte [C1],0
je near RC1

E25:
cmp [C5],al
jne E28
cmp byte [C8],0
je near RC8

E28
cmp [C8],al
jne E3
cmp byte [C5],0
je near RC5


E3:
cmp [C3],al
jne E4

E35
cmp [C5],al
jne E36
cmp byte [C7],0
je near RC7

E36:
cmp [C6],al
jne E37
cmp byte [C9],0
je near RC9

E37
cmp [C7],al
jne E39
cmp byte [C5],0
je near RC5

E39
cmp [C9],al
jne E4
cmp byte [C6],0
je near RC6


E4:
cmp [C4],al
jne E5

E45
cmp [C5],al
jne E46
cmp byte [C6],0
je near RC6

E46:
cmp [C6],al
jne E47
cmp byte [C5],0
je near RC5

E47:
cmp [C7],al
jne E5
cmp byte [C1],0
je near RC1


E5:
cmp [C5],al
jne E6

E56
cmp [C6],al
jne E57
cmp byte [C4],0
je near RC4

E57:
cmp [C7],al
jne E58
cmp byte [C3],0
je near RC3

E58:
cmp [C8],al
jne E59
cmp byte [C2],0
je near RC2

E59:
cmp [C9],al
jne E6
cmp byte [C1],0
je near RC1

E6:
cmp [C6],al
jne E7

E69
cmp [C9],al
jne E7
cmp byte [C3],0
je near RC3

E7:
cmp [C7],al
jne E8

E78
cmp [C8],al
jne E79
cmp byte [C9],0
je near RC9

E79
cmp [C9],al
jne E8
cmp byte [C8],0
je near RC8

E8:
cmp [C8],al
jne E9

E89
cmp [C9],al
jne E9
cmp byte [C7],0
je near RC7

E9:
mov al,9
ret


RC1:
mov al,0
ret
RC2:
mov al,1
ret
RC3:
mov al,2
ret
RC4:
mov al,3
ret
RC5:
mov al,4
ret
RC6:
mov al,5
ret
RC7:
mov al,6
ret
RC8:
mov al,7
ret
RC9:
mov al,8
ret


JPersona:
mov al,","
call print
mov al," "
call print
mov bx,TxtMover
call PRTEXT
call InCasilla
call prLine
ret

Victoria:
mov bx,TxtVictoria
mov al,[TxtJugador]
mov [TxtVic],al
call prtext
jmp WaitEsc
C3R:

C3R1:
;o
; o
; o
mov al,[C1]
or al,al
jz C3R2
cmp al,[C5]
jne C3R2
cmp al,[C9]
jne C3R2
jmp Victoria

C3R2:
; o
; o
; o
mov al,[C2]
or al,al
jz C3R3
cmp al,[C5]
jne C3R3
cmp al,[C8]
jne C3R3
jmp Victoria

C3R3:
mov al,[C3]
or al,al
jz C3R4
cmp al,[C5]
jne C3R4
cmp al,[C7]
jne C3R4
jmp Victoria

C3R4:
mov al,[C4]
or al,al
jz C3R5
cmp al,[C5]
jne C3R5
cmp al,[C6]
jne C3R5
jmp Victoria

C3R5:
mov al,[C1]
or al,al
jz C3R6
cmp al,[C2]
jne C3R6
cmp al,[C3]
jne C3R6
jmp Victoria

C3R6:
mov al,[C7]
or al,al
jz C3R7
cmp al,[C8]
jne C3R7
cmp al,[C9]
jne C3R7
jmp Victoria

C3R7:
mov al,[C1]
or al,al
jz C3R8
cmp al,[C4]
jne C3R8
cmp al,[C7]
jne C3R8
jmp Victoria

C3R8:
mov al,[C3]
or al,al
jz C3R9
cmp al,[C6]
jne C3R9
cmp al,[C9]
jne C3R9
jmp Victoria

C3R9:
ret

CEmpate:
mov cx,0ah
mov di,C1
mov al,0
repne scasb
or cx,cx
jz Empate
ret

Empate:
mov bx,TxtEmpate
call PRTEXT
jmp WaitEsc

IncJugador:
inc byte [TxtJugador]
jnp Return
sub byte [TxtJugador],2
Return:
ret

ImpTablero:
mov bx,C1
mov si,0
mov di,3
call ImpFila
call prLine
mov bx,TxtFil
call prtext
mov bx,C1
mov si,3
mov di,6
call ImpFila
call prLine
mov bx,TxtFil
call prtext
mov bx,C1
mov si,6
mov di,9
call ImpFila
call prLine
ret

ImpFila:
mov al,[bx+si]
call ImpCasilla
inc si
cmp si,di
je ImpFilaR
mov al,"|"
call print
jmp ImpFila
ImpFilaR:
ret

InCasilla:
call input
cmp al,27
je MAIN
cmp al,30h
jb InCasilla
cmp al,39h
ja InCasilla
xor ah,ah
mov si,ax
sub si,31h
cmp byte [C1+si],0
jnz InCasilla
push ax
mov al,[TxtJugador]
sub al,30h
mov [C1+si],al
pop ax
call print
ret

WaitEsc:
call input
cmp al,27
jne WaitEsc
jmp MAIN

Salir:
call prLine
jmp 0

input:
xor ah,ah
int 16h
ret

ImpCasilla:
cmp al,1
je ImpCasillaO
cmp al,2
je ImpCasillaX
mov al,0
call print
ret

ImpCasillaO:
mov al,"O"
call print
ret

ImpCasillaX
mov al,"X"
call print
ret

prLine:
mov al,10
call print
mov al,13
call print
ret

print:
push bx
push ax
mov ah,0fh
int 10h
pop ax
mov ah,0eh
int 10h
pop bx
ret

PRTEXT:
PUSH AX
PUSH BX
PUSH CX
PUSH DX
PUSH SI
MOV SI,0
CALL PCTEXT
POP SI
POP DX
POP CX
POP BX
POP AX
RET

PCTEXT:
MOV AL,[ES:BX+SI]
CMP AL,0
JE RETURN
CALL PRINT
INC SI
JMP PCTEXT

PRINT:
call print

RETURN:
ret

prtext:
call PRTEXT
ret

Borrar:
push es
mov ax,0b800h
mov es,ax
mov ah,0fh
int 10h
mov ah,2
xor dx,dx
int 10h
mov di,0
mov cx,1000
mov ax,720h
repne stosw
pop es
ret

Rnd:
mov bl,al
mov ax,0
int 1ah
in al,70h
and al,128
out 71h,al
in al,71h
mov ax,dx
xor ah,ah
div bl
mov al,ah
xor ah,ah
ret

C1 db 0
C2 db 0
C3 db 0
C4 db 0
C5 db 0
C6 db 0
C7 db 0
C8 db 0
C9 db 0
Jug1 db 0
Jug2 db 0
Paso db 0
TxtFil db "-*-*-",10,13,0
TxtTecla db "Turno del jugador "
TxtJugador db "1",0
TxtMover db "Donde desea mover?",0
TxtEmpate db "EMPATE",0
TxtVictoria db "VICTORIA JUGADOR "
TxtVic db 0,10,13,0
TxtDatos db "*** 3N LINE 1.0 ***",10,13,"----------------------",10,13,"ELEGIR TIPO DE JUEGO:",10,13,"1.Persona-Persona",10,13,"2.Persona-Ordenador",10,13,"3.Ordenador-Persona",10,13,"4.Ordenador-Ordenador",10,13,"5.Ordenador-Ordenador (Paso a Paso)",10,13,10,13,"ESC Salir",10,13,0
TxtLevel db "Introducir nivel de dificultad (1-2-3-4)",0
MinLevel db "1"
MaxLevel db "4"

times 800h-($-$$) db 0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por sandra (2 intervenciones) el 07/06/2011 13:23:04
hola m gustaria q m mandes ese archivo a mi correo [email protected] !!! lo necestio tngo q mostrar un juego y m dijeron q sea el tres en raya!!
por favor m lo envias!??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por mª isabel monje valcarcel (1 intervención) el 08/06/2008 13:56:08
hola estoy interesada en que me mandes el juego que as hecho, si por favor me lo podrias mandar al correo, [email protected] te lo agradeceria mucho, un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por Susana (1 intervención) el 04/12/2008 02:46:53
hola, si me interesa, donde puedo bajarlo????
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por walter (1 intervención) el 08/12/2008 15:43:45
hola susanita veo que nesecitas el tres en raya pues te cuento que yo tengo pero me gustaria saber si entiendes el juego yo te puedo ayudat si tu tienes algo hecho mandame a mi correo y yo te lo ahumento lo que reras se muy bien assembler incluso puedo hacertelo bien presentable para que puedas cumplir con el objetivo que tienes con estes juego espero tu respues y no dudes de que yo te audare explicame como quieres y yo te ayudare tambien se mucho de programacion en C++ .NET ASP,WEB en si casito los lenguajes tu preguntame que quiere syo te ayudare
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por microprocessor (46 intervenciones) el 09/12/2008 17:32:09
Aqui esta un link para descargar el archivo del codigo, el archivo ya compilado (.COM), el compilador (NASM.EXE) y la licencia para redistribuir el compilador.

Pesa alrededor de 103 KB y se puede descargar desde:
http://avenidadecanarias.com/3nline.zip
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por wilmer (1 intervención) el 31/03/2009 00:26:15
porfavor me urge tener el codigo de ese juego pero en asm para pic 16f84a, de antemano muchas gracias por la ayuda que me puedan brindar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por Sol (4 intervenciones) el 02/11/2010 02:51:09
Hola soy nueva en el tema de ensamblador y necesito hacer un programa en ensamblador integrado con c++. Consiste en hacer una figura que gire sobre si misma al darle con las direccionales..
Como vi que eres muy bueno en esto, me gustaría saber si me puedes ayudar..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por DAVID (1 intervención) el 10/11/2010 17:17:42
Hey mi llave me interesa ese codigo, pero tendria que hacerle algunas modificaciones. por favor me ayudas y me pasas el codigo.

muchas gracias, por favor agradezco su oportuna ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por jose miguel (1 intervención) el 13/11/2010 04:24:34
Hola me interesaria verlo, suena chistoso y no me imagino como se podria ver te agradeceria.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por Lili (1 intervención) el 25/04/2011 15:42:12
Hola, me parece muy interesante tu juego y justo ahora ando buscando una guia para hacer un juego en assembler, no se si todavia esta disponible pero te agradeceria mucho si podes enviarmelo! [email protected]
Muchas Gracias
Lili
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Juego en ensamblador

Publicado por jesus (1 intervención) el 01/06/2012 23:09:55
Eh justo ahora necesito un juego como este as paro y mándalo a mi correo por fas te lo agradeceré mucho
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por Dennisse Delgado (1 intervención) el 08/11/2012 00:57:21
No me lo quieres enviar??? [email protected] lo antes posible!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por josue (1 intervención) el 30/11/2012 00:08:38
hola, estoy aprendiendo asembler y me interesa el juego de tres en raya si todavia esta disponoble mandame a mi correo por favor.... [email protected] gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por jota ese (1 intervención) el 09/02/2015 16:15:02
Hola por favor ayúdeme con el ejecutable también estoy buscando un juego de ajedrez alguien me podría facilitar es un deber de la univ
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por franz (1 intervención) el 11/05/2014 23:41:24
hola amigo estoy interesado en tu juego me lo podrias pasar porfa viejito me pidieron un proyecto en assembler y tu proyecto esta interesante me lo envias a mi correo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por juan (1 intervención) el 15/06/2014 02:13:12
por fa necesito el juego este es mi correo [email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por elizabeth (1 intervención) el 27/11/2014 18:40:32
saludos,
ayudenme con el codigo ando buscando dos juegos diferentes mi correo [email protected]
el de ajedrez es uno
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por Alvaro (1 intervención) el 18/05/2015 16:24:35
Necesito recibir el codigo de el tres en raya en ensamblador lo mas rapido posible, mi correo es el dado, por favor me seria de muchisima utilidad gracias de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por Vicor Mar Carrilllo (1 intervención) el 25/05/2015 04:09:51
Me interesa conocer el codigo me lo podrías enviar? :( me urge demasiado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Juego en ensamblador

Publicado por sebas (1 intervención) el 08/04/2022 18:24:19
Te agradezco mucho si me puedes enviar el código, tengo un proyecto y me serviría mucho de guía.
Correo: [email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar