Foros del Web » Programación para mayores de 30 ;) » Programación General »

Programación de puertos. Entre dos maquinas. SERIAL en C

Estas en el tema de Programación de puertos. Entre dos maquinas. SERIAL en C en el foro de Programación General en Foros del Web. Pues me pusieron de proyecto final a hacer un programa (JUEGO) que pueda manejarlo cada uno en distinta maquina, un juego de ping pong, cada ...
  #1 (permalink)  
Antiguo 23/05/2005, 19:54
 
Fecha de Ingreso: julio-2004
Mensajes: 54
Antigüedad: 19 años, 9 meses
Puntos: 0
Programación de puertos. Entre dos maquinas. SERIAL en C

Pues me pusieron de proyecto final a hacer un programa (JUEGO) que pueda manejarlo cada uno en distinta maquina, un juego de ping pong, cada jugador en una maquina diferente, la programacion del juego la hice con algunas fallas, que pronto solucionare, pero la duda esta en esto, como programar el puerto para que en la otra maquina me mande señal para mover tanto tecla derecha e izquierda del juego, y que los programas funcionen en conjunto

Y como configurar cada puerto para cada maquina, tengo muchas dudas, en la escuela muy apenas vimos los puertos en una sola clase, y pues hay que trabajar que es el proyecto final, si alguien me echa una mano o algun tuto para aprender en una semana se los agradeceria.

Si alguien le interesa el codigo del juego, que me fallan algunas cosas y si lo pueden corregir me seria de gran ayuda que tengo bastantes trabajos por hacer, pero estoy mas dedicado a este, ya que no tengo bases para los puertos

Cita:
#include <stdio.h>
#include <graphics.h>
#include <conio.h>
#include <stdlib.h>

int cx,cy,r,bx,by,dx,dy,largo,ancho;
int max_x,max_y;
int puntos=0;
int velocidad,retardo;
int graficos(int);
void inicio(int);
void moverpelota();
void verifrebotepared();
int verifrebotebarra();
void puntaje();
int perdio();
void mnoverbarra();
int teclaespecial();

void main()
{
graficos(1);
inicio(10);
for (;;)
{
moverpelota();
verifrebotepared();
puntaje();
moverbarra();
perdio();
break;
}
closegraph();
}

int graficos(int resolucion)
{
int tarj=DETECT,modoresolucion;
initgraph(&tarj,&modoresolucion,"c:\\tc\\bgi");
modoresolucion=resolucion;
return;
}

int inicio(int vel)
{
max_x=getmaxX();
max_y=getmaxY();
cx=cy=100;
r=15;
bx=0;
by=max_y-ancho;
velociadad=vel;
dx=dy=1;
circle(cx,cy,1);
rectangle(bx,by,bx+largo,by+ancho)
}

void moverpelota()
{
setcolo(BLACK);
circle(cx,cy,1);
cx+=dx;
cy+=dy;
setcolor(WHITE);
circle(cx,cy,1);
}

void verifrebotepared()
{
//choke en x
if (cx<r) dx=1;
if(cx>=max_x-r) dx=-1
//recybote en y
if (cy<=r) dy=1;
}

int verifrebotebarra()
{
if ((by-cy==r)&&(bx<=cx)&&(cx==bx+largo))
{//sonido
dy=-1;
puntos++;
return 1;
}
return 0;
}

void puntaje()
{
char texto[50];
sprintf(texto,"Marcador: %d",puntos);
cuttextxy(10,20,texto);
}

int perdio()
{
if (cy==max_y)
return 1;
return 0;
}

void moverbarra()
{
int l;
if (kbbhit());
{
setcolor(BLACK);
rectangle(bx,by,bx+largo,by+ancho);
l=teclaespecial();
if (l==77)
bx+=10;
if (l==75)
bx-=10;
setcolor(WHITE);
rectangle(bx,by,bx+largo,by+ancho);)
}
}

int teclaespecial()
{
if (!getch())
return getch();
return 0;
}
PD. No soy bueno en C, pero me facina el lenguaje y aprender de mis errores.
  #2 (permalink)  
Antiguo 24/05/2005, 08:25
Avatar de Developer9
(Desactivado)
 
Fecha de Ingreso: abril-2005
Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 19 años
Puntos: 47
Hace tiempo cuando programaba en C++ nos enseñaron a utilizar el puerto serial, pero es con programación orientada a objetos, tengo una clase llamada RS232 que es el protocolo de comunicación mas simple. Dame tu e-mail y te la paso
  #3 (permalink)  
Antiguo 24/05/2005, 16:11
 
Fecha de Ingreso: julio-2004
Mensajes: 54
Antigüedad: 19 años, 9 meses
Puntos: 0
Cita:
Iniciado por Developer9
Hace tiempo cuando programaba en C++ nos enseñaron a utilizar el puerto serial, pero es con programación orientada a objetos, tengo una clase llamada RS232 que es el protocolo de comunicación mas simple. Dame tu e-mail y te la paso
Ok muchas gracias por la ayuda, mi correo es [email protected]
  #4 (permalink)  
Antiguo 24/05/2005, 17:15
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Si cabe aquí es mejor postearla.

Por otra parte, no uses conio.h ni graphics.h, no son estándar, son del compilador Borland.

Cierto que conio.h existe, pero el estándar no dice nada sobre el deber de que existan tales funciones, como es lógico, dado que los superordenadores SPARC, microchips grabables, máquinas *NIX, PCs etc etc y sus respectivos sistemas no tienen por qué tener una función que mueva el cursor a X,Y posición... Muchos ni siquiera podrían, porque no tienen modos gráficos o porque no tienen pantalla directamente
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:01.