Autor Tema: Poyecto: Maquina SIMPLE de videojuegos  (Leído 33764 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Poyecto: Maquina SIMPLE de videojuegos
« en: 05 de Julio de 2008, 18:44:15 »
Hola amigos!
Hace tiempo que tengo una idea dando vueltas por la cabeza, y me he decidido abrir este hilo con dos objetivos:

1) Ordenar mejor mis ideas al transcribirlas para que otro las comprenda
2) Recibir consejos, opiniones, ayudas y "compañeros de aventuras"

La idea es la siguiente:
Hace unos 30 años, los geeks pasaban horas frente a un videojuego como el PONG, y hasta les parecia divertido.

Mi idea original es construir un circuito que me permita escribir dierentes juegos, lo suficientemente SIMPLES como para que el proyecto siga siendo algo placentero y no se transforme en una pesadilla.
Juegos con fichas, de ingenio, tipo arkanoid, tetris, space invaders...algunas cosas asi. Incluso, por que no, alguna aventura basada en texto.

El hardware que tengo en mente incluye una LCD monocroma de 128x64 que tengo por ahi (la resolucion de los primeros  computers home no era mucho mayor que eso) , unos 6 u 8 botones que sean el "pad" de juegos (o un conector para poder usar algun viejo pad de PC, de los que usaban un conector DB-15), una EEPROM, un PIC a 20MHz con bastante memoria, un buzzer, y alguna cosilla mas.

Lo primero será decidir que PIC usar.

A medida que se me vayan ocurriendo cosas, las ire posteando por aqui. El lenguaje de programacion será CCS. Estoy abandonando definitivamente el BASIC.

Saludos!
--------------------------------------------------------------------------
EDITO:
Algunos hilos, relacionados con este proyecto, han sido abiertos en sitios mas apropiados para mantener el orden:

- Libreria gráfica CCS para GLCD KS0108.
- Generador de imagenes de video con PIC

« Última modificación: 12 de Julio de 2008, 15:45:24 por aitopes »
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado SavageChicken

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 931
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #1 en: 05 de Julio de 2008, 23:47:24 »
Está muy bonita la idea.

Se me ocurren un par de cosas:

Una es la posibilidad de usar la tele como hacían los antiguos home computers, porque creo que es más fácil para la mayoría esta opción que conseguir un display LCD
Segundo, me parece genial que dejes el basic  :D :D :D, fuera de broma, algo así no lo puedes encarar en basic. (aunque yo adoro la simplicidad de ese lenguaje)

En lo que pueda trataré de ayudar, aunque estoy sin nada de tiempo. (aunque sea apoyo anímico  :-) )

Salud  8)
No hay preguntas tontas...
Solo hay tontos que no preguntan.

Desconectado jfmateos2

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3145
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #2 en: 06 de Julio de 2008, 04:00:58 »
¿Una pantalla LCD sería lo suficientemente rápida para juegos como Arkanoid?

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #3 en: 06 de Julio de 2008, 04:12:35 »
Sí, Juanfe, se puede conseguir. Al final de este vídeo verás una pelotita rebotando.

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #4 en: 06 de Julio de 2008, 15:00:31 »
algo así no lo puedes encarar en basic. (aunque yo adoro la simplicidad de ese lenguaje)

Hola:

Pues me parece que estás equivocado, no veo por que no se pueda hacer en basic, si tienes instalado proteus, dale una mirada a los ejemplos, hay un juego de Space Invaders hecho en Protón y lo puedes simular, lo que quiere hacer Ariel es 100% realizable en Basic, ahora que él quiera usar CCS es otra cosa.

Ariel, y porqué no utilizar un mando como los de Play Station o almenos que utilices el un analógico y unos cuantos botones que bien lo puedes conandar desde el mismo micro, le daría un toquesito más chévere, almenos es lo que pienso.

Yo probé el ejemplo de los Space Invaders y lo modifiqué un poco para un microcontrolador 18F452 a 20Mhz, y he escaneado imágenes y las he enviado desde el PC al GLCD a través del micro con un 18F4550 a 48 Mhz, con el segundo mucho más rápido, las naves del primer juego se mueven bien y el sonido y lo demás es una pasada, esto es algo muy interesante y que desde tiempo lo he estado mirando, yo tengo por ahí un par de GLCD 240x128 con controlador T6963C y tambien andaba haciendo un jueguillo, algo así como el del pong, recuerdo que la pelotita se movía bien y sin problemas, este temita es interesante, lo estaré siguiendo.

A ver si te animas por el analógico del PS.  :mrgreen:

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #5 en: 06 de Julio de 2008, 16:05:47 »
Buenas aitopes!!!
Te comento q yo hace unos dias te mande un mail con unas dudas sobre matrices de leds (8x8), y te comente q estoy haciendo unos jueguitos para la misma. Por ahora no tengo mucho hecho porq recien estoy terminando de rendir finales. Pero ya estoy libre y con muchas ganas de ponerme con esto!
Por ahora queria hacer algo simple: el tipico juego de la viborita q a medida q va comiendo va creciendo, y no se puede chocar con los bordes ni consigo misma. Tambien tenia pensado hacer un jueguito de autos, un tetris y cosas por el estilo.

La cuestion es q me gusta mucho programar, y estoy dispuesto a ayudar, asiq cualquier cosa chiflen.

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #6 en: 06 de Julio de 2008, 16:55:10 »
Hola todos!
Antes que nada, gracias por apoyar mis locuras :)

Juanfe: el LCD que tengo es "bastante rapido". He probado de mandar muchos textos, por ejemplo, y dibuja a una velocidad aceptable. Y lo mejor de todo es que ya lo tengo comprado (*)

SavageChicken: Gracias amigo! Espero ver tus opiniones por aqui.

Manolo: Muy bueno el video! :)

LordLafebre: Es cierto, en BASIC se puede hacer PERFECTAMENTE. Lo del CCS es por que me gusta más, me parece mas ordenado, y con mas codigo para ver. No reniego del BASIC (tengo casi 40 años y he programado "cosas" desde los 14 con BASIC), pero el CCS me entusiasma ahora, quizas para cambiar un poco.

Respecto del mando, no seria demasiado problema usar el que propones. Eso creo que ya lo he decidido: usar un mando comprado. Nunca voy a poder hacer algo de la misma calidad (sobre todo la caja),  y ademas, si se rompe, basta con enchufar otro.

Gera: si, recuerdo tu proyecto! Tenias algun problema con el refresco que resolvimos hace unas semanas.

Respecto de los juegos a programar, son justamente ese tipo de juegos, como el de la "vivora". No son la gran cosa, pero vamos!! Hacerlos uno mismo tiene ese "gustito" especial, no? :)


Supongo que tendre(mos) que pensar en el hard y en una "biblioteca" de funciones standar, (Lee_joystik, sonido, line, sprites, etc), y documentarlas y publicarlas, por si alguien mas se anima a escribir algo para esta "plataforma". :)

Saludos!

Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado SavageChicken

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 931
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #7 en: 06 de Julio de 2008, 22:06:45 »
Hola amigos.

La razón por la que opino que en basic un proyecto así es (si no imposible) muy difícil de encarar, es que el código resulta mucho menos compacto y rápido que en C o assembler. La razón por lo que lo digo es que en un proyecto de hace muchos años atrás, la velocidad del código resultante en basic era unas 4 veces menor a un código equivalente hecho diréctamente en assembler.
Puede que hoy por hoy se haya avanzado en este aspecto y lo que estoy diciendo no se cumpla con los compiladores de ahora.
No quiero crear controversia tampoco, ya hay varios post con temas sobre cual lenguaje es mejor o peor y al final no se llega a ningún lado.

Lo importante es que la idea es buena y está prendiendo.
Tal como dice Ariel un tema importante es definir el PIC, yo me inclino por modelos populares y fáciles de conseguir como el 16F877A o puede ser alguno de la línea 18F de los más populares.

Salud  8)
No hay preguntas tontas...
Solo hay tontos que no preguntan.

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #8 en: 06 de Julio de 2008, 22:31:52 »
Hola Savagechiken!

Saque unas fotos del display y a dos 18F4520 (capsula SMD) que tengo a mano,mas tarde las posteo. Me gustaria que ese sea el "cerebro"del aparatejo. De hecho, estoy pensando que quizas se pueda usar un micro como principal, y otro que lea el jystick, se encargue del sonido, etc.

Pero aun no lo pense a fndo (pros y contras).
Saludos.
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #9 en: 07 de Julio de 2008, 00:35:09 »
Supongo que tendre(mos) que pensar en el hard y en una "biblioteca" de funciones standar, (Lee_joystik, sonido, line, sprites, etc), y documentarlas y publicarlas, por si alguien mas se anima a escribir algo para esta "plataforma". :)

Saludos!



Totalmente de acuerdo... lo mas importante aca es hacer una biblioteca con las funciones basicas. Asi luego podremos concentrarnos de pleno en cada juego en particular sin complicarnos por detalles como dibujar en la pantalla, reproducir sonidos, etc...
Habria q ir determinando qué funciones vamos a implementar, sus prototipos y todo eso...
Podriamos ir empezando con algun juego simple para ver q problemas surgen y de ahi encarar.

Saludos!

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #10 en: 07 de Julio de 2008, 11:07:21 »
Hola Gera!
Lo primero es definir el hardware. Una "version 1.0" sencilla, sin volar demsiado (anoche me descubri pensando en puertos de expansion para futuros accesorios, etc) para poder construirlo pronto.

Este es el display que pienso usar. Tengo un dia complicado, pero si puedo, esta noche subo un diagrama tentativo. Tengo que buscar data de los pads a usar!




Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado SavageChicken

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 931
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #11 en: 07 de Julio de 2008, 14:09:27 »
Hola Ariel.

Esta muy bueno el display, pero sigo opinando que si lo que buscamos es algo que muchos puedan usar, sería mejor una alternativa más común a todo el mundo, ya sea la tele, un monitor de computadora o algo similar.
Me parece buena la idea de usar un hardware dedicado, tal ves para el audio, el video y los controles, de manera que sea más sencillo aún programar los juego, y que la "BIOS" o como quieran llamarle, batalle con la parte complicada.
No quiero ser majadero, pero si recordamos las viejas "home computer", implementaban sistemas sencillos para generar video y el resultado era muy bueno, además creo que hay varios en el foro que nos pueden hechar una mano en eso.

Salud.-  8)
« Última modificación: 07 de Julio de 2008, 14:12:23 por SavageChicken »
No hay preguntas tontas...
Solo hay tontos que no preguntan.

Desconectado gera

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2188
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #12 en: 07 de Julio de 2008, 14:57:07 »
Es cierto q no todos tenemos LCDs como esos. Yo voto por la matriz de leds, q ya la tengo hecha jajaja.
Si no, insisto... hagamos el proyecto picPAL en CCS!!! pero ese es otro asunto... seria un buen proyecto ;)

"conozco dos cosas infinitas: el universo y la estupidez humana. Y no estoy muy seguro del primero." A.Einstein

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #13 en: 07 de Julio de 2008, 15:24:46 »
La generacion de video para un TV, con una calidad RAZONABLE, digamos 256x192 pixeles a 4 colores, es una tarea MUY compleja. Personalmente, no me le animo, ni de cerca. La generacion de los tiempos tiene que ser extremadamente precisa. Ahi si necesitariamos un PIC dedicado a eso.

Por otra parte, se puede hacer un circuito extra, que genere los tiempos. Una serie de compuertas y circuitos TTL que envien un pulso cada vez que comienza una linea de barrido o algo asi. Insisto,solo he leido muy poco sobre el tema. Este circuito que menciono lo vi en alguna elektor, y no era demasiado complejo.

Por otra parte, hay un tipo que se hizo un ordenador completo con integrados TTL, que hasta corre DOS. Los graficos son (si mal no recuerdo) de 640x400 en monocromo, y de 320x200 a 8 colores. La "placa de video" son 5 tarjetas de circuito impreso con unos 75 integrados. Es mas: hable con el y tengo los PDF para imprimir los PCB. Pero solo compre unos 55 integrados, por que el resto no existen en Argentina. Son TTL de la serie F o FA, que trabajan a frecuencia mas altas.

En fin, como deciua, quizas el agregado del video para TV sea más complejo que el resto del proyecto.

Aunque por otra parte, podria servir para muchos proyectos mas... :)

¿que hacemos?

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado flacoclau

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1692
    • El Micro Reactor
Re: Poyecto: Maquina SIMPLE de videojuegos
« Respuesta #14 en: 07 de Julio de 2008, 15:44:01 »
Muy buen proyecto:
¿y si se hace modular como las entrenadoras? Osea hacerle un puerto para conectar el pic que gestione una glcd o video o vga, digo...
ya que el tema del joystick y el sonido en primera instancia no debe ser gran cosa, quizás el sonido más adelante sí, pero creo que el gran problema de todo
va a ser el tema visual.
 Hace tiempo me compré una Game Boy Pocket ya que mi idea era hacer un mini osciloscopio como el de la revista, obviamente el tema quedó en el olvido, pero también es una posibilidad, sería bueno estudiar como trabaja este bichito ya que hace todo (video audio y demás) con un clon del Z80.
Hay mucha info dando vueltas sobre esto.

http://www.todopic.com.ar/foros/index.php?topic=9082.0

http://www.todopic.com.ar/foros/index.php?topic=13432.0

¿¿¿Ariel donde conseguiste ese display??
¿¿¿cuanto te costo???

Las personas con buena ortografía me atraen textualmente.

El Micro Reactor

Córdoba capital - Argentina.


 

anything