¿Creamos una consola?, si, pero con los pies en el suelo

1, 2, 3, 4, 57
Grupos del proyecto

Hardware
bertobp
Saturnino
teesala

Software
ANTONIOND
Tomax_Payne
thanatos_xbox

Modelado
SilvestreX
Saryon
BUENDANI
Charlie_wii

Marketing
danibarna
doblete
kulunguelejfn
Saryon
jordigahan
alan wake GKL


Hola a todos,

llevo muchos años registrado en EOL y he visto uno tras otro hilos en los que se hablaba acerca de crear una consola desde esta comunidad. Inevitablemente la mayoría de proyectos (a día de hoy todos), acaban muriendo en el olvido por que se llegan a callejones sin salida o cuellos de botella.

A mi, personalmente, me ha hecho siempre mucha ilusión desarrollar un proyecto de esta índole. Paralelamente mi trabajo consiste básicamente en la gestión de proyectos informáticos desde la fase de acuerdo (en las que se decide a grandes rasgos el proyecto) hasta la de implantación y mantenimiento, por lo que podemos aprovechar mi experiencia. Puedo aportar igualmente conocimientos de electrónica y programación, que considero son los dos pilares para que esto funcione.

Deberíamos uir de especificaciones altas o funcionamientos excesivamente depurados, al igual que tendríamos que implementar el uso de componentes lo más simples posibles para que a la vez que avanzamos otros compañeros puedan ir conociendo este mundo del desarrollo hardware. Por ejemplo, nada de FPGA's ni Bridges, como mucho el uso de procesadores de 16 bits conocidos (p.e. serie Motorola 68000 en sus versiones actualizadas) y PIC de baja-media gama, aparte de algunos chipes para gestiones muy concretas (p.e. los DAC). El motivo para uir de hardware más potente es que a medida que avanzamos en la escala tecnológica hay menos compañeros que puedan colaborar en el proyecto, por lo que todo se ralentiza y acaba por estancarse.

En definitiva, nuestro objetivo sería desarrollar una consola similar (en la medida de lo posible) a la Neo-Geo: una base hardware con una gestión software ligera. La carga de juegos por SD sería lo recomendado ya que podríamos tratarlas como si fueran los antiguos cartuchos.

A ratos he ido diseñando la parte de vídeo, con dos memorias buffer de 500Kx16 (500.000 posiciones con 16 bits por posición) para una resolución máxima de 800x600 (aunque habría que reducirla a 620x480), una memoria de 2Mx16 para tiles, sprites y tablas de pantalla, un procesador de 16 bits, 3 DAC de alta velocidad y algunos chipes para gestionar los buses. Prácticamente está hecha, faltaría audio, procesador central, diseño de buses y acceso a pads de juegos.

Bueno, no os quiero soltar más rollos, que ya es un buen ladrillo. A ver que os parece la idea y nos ponemos a ello ;)


Bueno, pues ahí vamos. Comenzamos definiendo grupos de trabajo para que quien quiera colaborar pueda aportar su granito de arena. De todas formas si alguien piensa que puede haber más grupos que lo diga ahora...o calle para siempre :)

=================================================

Desarrollo Hardware

Grupo encargado de crear la arquitectura de la máquina, con la premisa del bajo coste y facilidad de implementación. Lo ideal es gente con conocimientos de electrónica y/o aficionados a la misma. El techo tecnológica lo podemos poner en procesadores y PIC de 16 bits, como el ya mencionado MC68000 o los PIC24F. Igualmente buscaremos estándares en salidas de vídeo y creación de periféricos.

bertobp
Saturnino
teesala


Desarrollo BIOS y funciones imbuidas

En trabajo directo con el grupo de desarrollo hardware creará todo el sistema de arranque y checking de la consola, a la vez que desarrollará funciones avanzadas (por ejemplo, rotación de sprites o acercamientos). La mejor opción sería desarrollar en C, ya que hay librerías muy completas para trabajar con estructuras de 16 bits y aportará un código más reducido y rápido.

ANTONIOND
Tomax_Payne
thanatos_xbox


Desarrollo IDE

Al igual que el anterior grupo, lo formará gente con conocimientos de programación. No obstante hasta avanzado el proyecto no podrá entrar en funcionamiento ya que no tendrán una base hardware/software sobre la que desarrollar. Pienso que este grupo lo irá conformando gente del grupo anterior según se avance y haya menos que desarrollar en cuanto a BIOS y funciones imbuidas.

Desarrollo de modelado

Gente con creatividad y conocimientos sobre el arte de crear moldes y dar el aspecto externo a todo lo que desarrollemos.

SilvestreX
Saryon
BUENDANI
Charlie_wii


Marketing

No, no es para venderla :) este grupo dará a conocer el proyecto, expandirá la idea, captará gente para la causa XD ...Sobre todo debemos tener cuidado y ser respetuosos y nunca spammear. Está bien que la comunidad sepa de este proyecto y otra cosa es que nos vean más que Verano Azul XD
En un ejercicio divertido puede crear cartelones con Paint, slogans,...casi cualquier cosa.

danibarna
doblete
kulunguelejfn
Saryon
jordigahan
alan wake GKL


=================================================

Algo a tener en cuenta es como haremos para que todos escribamos en el hilo y no nos hagamos un lío de grupos. Sugiero que nos creemos alguna imagen de grupo y la acompañemos con nuestros posts, así a golpe de vista sabremos a que grupo pertenece cada uno.

Si lo veis adecuado podemos conformar los grupos desde hoy al jueves 12 de Mayo (inclusive).

Por último, quien quiera contribuir tiene que ser consciente acerca de que este proyecto no es inmediato. Hacerlo todo nos llevará un tiempo y en una previsión optimista podemos obtener los primeros resultados hacia finales de otoño. Lo bueno es que según avancemos todo se precipitará con mayor rapidez.

** Iré usando este primer post para actualizar el estado del proyecto, para lo que pondré en spoiler todo lo anteriormente escrito.


Ya tenemos los grupos iniciales, así que vamos a definir las primeras funciones de cada grupo:

Desarrollo Hardware

- establecer bloques lógicos, que en un principio deberían ser unidad central, sonido, video, acceso a almacenamiento y periféricos.

- definir especificaciones técnicas.

- elegir la electrónica más conveniente para cada uno de los bloques.

- idear sistema de buses para conexión inter-bloque.

- depuración del diseño

- implementación sobre simulación, o en el mejor de los casos, sobre plataforma física.

- testeo de estabilidad del sistema y pruebas de stress del mismo.

Comentar que tenemos que aportar con sentido, es decir, argumentar por que elegimos cada opción con la meta de alcanzar un consenso.

Desarrollo BIOS y funciones imbuidas

Como ya se comentó, este grupo debe trabajar estrechamente con el anterior, valorando siempre la complejidad que puede suponer programar sobre determinadas estructuras. Una vez seleccionada la electrónica buscaremos librerías específicas sobre las que desarrollar el software. Lo ideal es el uso de C o C++, por la limpieza del código y velocidad. Desde luego se contempla el uso de cualquier lenguaje que se amolde a la electrónica que se decida implementar.

Una vez elegido el tipo de procesadores desarrollaremos funciones para mover bloques de memoria, rotación de sprites, rutinas de limpieza, acceso a periféricos, inicialización de la consola,...

Desarrollo de modelado

Comenzaremos con bocetos del diseño de la consola. Debería dar sensación de potencia, pero accesible, nada agresivo. Combinar ángulos cerrados con formas redondeadas puede ser muy aceptado. Todo vale para el desarrollo, ya sea a mano y posterior escaneado, PhotoShop, Paint Shop,...la herramienta que mejor manejéis y podáis utilizar en trabajo colaborativo con los demás compañeros del grupo.

En un primer momento no hay restricciones por las dimensiones, posteriormente junto con el grupo de Hardware veremos si todo encaja correctamente o que modificaciones habría que afrontar.

De la misma forma hay que desarrollar mandos y periféricos precisos.

Marketing

Sé que este ha sido el grupo con más llamada, os gusta crear ;)
Y aunque ya fue comentado os lo repito, imaginación, esa es la herramienta que se necesita. Una idea, aunque no sepamos plasmarla, si es buena seguro que el grupo la saca adelante.

Las labores iniciales deberían ser las siguientes:

- dar un nombre al proyecto (ojo, no a la consola, eso será más adelante).

- hacer conocer a otros compañeros del foro la existencia de este proyecto a través de carteles digitales, firmas, comentarios,... eso si, no se permitirá ninguna clase de spam ni intrusismo sin sentido. Se debe respetar el foro, al igual que cualquier otro lugar de internet donde se hable del proyecto. Respeto e imaginación es la receta.

- desarrollar ideas que den a conocer lo que estamos haciendo, sois el medio de información y comunicación con el mundo ;)

Marketing tiene que ser muy comunicativo, dialogar con todos los grupos y presentar los resultados de las ideas desarrolladas a los demás para que la mayoría dé su aprobación. Estoy convencido de que todo saldrá genial.

=============================

Más cosas, sería bueno que cuando posteásemos incluyéramos alguna imagen que representara al grupo al que se pertenece para que el mismo hilo accedamos rápidamente a los mensajes de otros compañeros de equipo. Pensaba en un sistema de barras (como las usadas en las firmas) que abrieran cada post. Daría mucha agilidad a la hora de acceder a la información que busquemos. Marketing puede generar imágenes que usar, es un primer paso rápido, eficaz y necesario.

Interacción y comunicación: los pilares para la buena salud del proyecto. Hay que hablar entre grupos para el correcto avance. Por ejemplo, Marketing puede consultar detalladamente las especificaciones técnicas para crear imágenes promocionales. Hay numerosas posibilidades, es cuestión de no trabajar como grupos aislados.

Yo ayudaré en la medida de mis conocimientos a todos los grupos y velaré por un buen ambiente, así que aquí estaré para cualquier cosa.

Otra cosa que debemos tener presente es que las ideas que aportemos pueden llevarse a cabo o no. Colaboramos en plena democracia y nadie puede imponer sus deseos. Sería deseable que nadie se tomase a mal que algo de lo que diga no se haga, son ideas que seguro valdrán para otros proyectos.

Por último, tomaros esto como una diversión, algo nuevo en lo que aportar que seguro nos enseñará muchas cosas a distintos niveles. Compromiso, el necesario, sé que esto es un proyecto de larga duración y habrá gente que por diversos motivos no lo continuará mientras que otros tantos se subirán al barco. Nadie quedará mal si debe abandonar, todos serán bien recibidos. Siempre se agradecerá el aportar el más pequeño de los granos de arena :)
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Lo ideal:
Freescale 8-bit para la CPU (porque son Von-Neummann y son capaces de ejecutar código desde la propia RAM interna)
PIC para la VDP (porque son rápidos y baratos)

Es un proyecto que tengo yo también en mente
socram8888 escribió:Lo ideal:
Freescale 8-bit para la CPU (porque son Von-Neummann y son capaces de ejecutar código desde la propia RAM interna)
PIC para la VDP (porque son rápidos y baratos)

Es un proyecto que tengo yo también en mente


Me parece buena opción, y la carga de la memoria para tiles y sprites podría ser mediante serie usando un PIC (o un tiny, que son más rápidos).

Con conseguir crear algo y que sea asequible estaríamos ante un gran triunfo :)
Yo precisamente estaba dandole vueltas pero por el tema del diseño,es decir lo que yo tenia en mente es crear un pc con placa mini-itx consolizado con un diseño de carcasa pequeño que tuviera el look and feel de las consolas clasicas,neogeo megadrive etc.He estado mirando como hacer una carcasa a nivel industrial y por lo visto hay empresas que realizan impresiones en abs (http://es.wikipedia.org/wiki/Acrilonitr ... o_estireno) con impresoras 3d.Si no es asi como se podria hacer una carcasa de material plastico a precio asequible?
Freestate escribió:Yo precisamente estaba dandole vueltas pero por el tema del diseño,es decir lo que yo tenia en mente es crear un pc con placa mini-itx consolizado con un diseño de carcasa pequeño que tuviera el look and feel de las consolas clasicas,neogeo megadrive etc.He estado mirando como hacer una carcasa a nivel industrial y por lo visto hay empresas que realizan impresiones en abs (http://es.wikipedia.org/wiki/Acrilonitr ... o_estireno) con impresoras 3d.Si no es asi como se podria hacer una carcasa de material plastico a precio asequible?


Compañero,

siempre con mis máximos respetos, estas son las ideas que dan al traste con proyectos como este. Me explico: tenemos que partir de base 0, nada prediseñado ni montado. Otros hilos al final se han convertido en un chorro de hilos hablando sobre si llegar a poner procesadores Intel como el Pentium III [mamaaaaa]

No obstante, por si te sirve de referencia, la apariencia la puedes consgeuir haciendo un chasis de madera, lacándolo, dándole barniz y poniendo unos vinilos.
Quizas lo mas complejo de este proyecto es la base de electronica,prosesador, memoria, etc... tendria que ser facil programar para el sistema muy facil. Y lo que es el desarrollo estetico es mas facil aunque complejo ya que es algo muy sujeto al gusto de cada uno, tambien seria interesante por ejemplo el tema de mandos por ejemplo por usb, eso daria la opcion de usar casi cualquier mando existente.
Me encantaría la idea, y después produciríais mas para vender en el foro a un precio asequible?
Siento mi ignorancia, pero seria tipo emulador o habría que programar los juegos sólo para este sistema?
Jdioxjp escribió:Quizas lo mas complejo de este proyecto es la base de electronica,prosesador, memoria, etc... tendria que ser facil programar para el sistema muy facil. Y lo que es el desarrollo estetico es mas facil aunque complejo ya que es algo muy sujeto al gusto de cada uno, tambien seria interesante por ejemplo el tema de mandos por ejemplo por usb, eso daria la opcion de usar casi cualquier mando existente.


Lo de los mandos usb, puf eso sería la crema.

Gracias de antemano y que siga adelante el proyecto.
Jdioxjp escribió:Quizas lo mas complejo de este proyecto es la base de electronica,prosesador, memoria, etc... tendria que ser facil programar para el sistema muy facil. Y lo que es el desarrollo estetico es mas facil aunque complejo ya que es algo muy sujeto al gusto de cada uno, tambien seria interesante por ejemplo el tema de mandos por ejemplo por usb, eso daria la opcion de usar casi cualquier mando existente.


Los mandos es de los más sencillo de implementar a la vez que barato. Con dos multiplexores de 16:1 puedes construir un pad con hasta 24 botones :) ...y todo esto por menos de 3 €.

Integrar USB hace todo el desarrollo más complejo, por que o bien por software o por hardware hay que implementar la comunicación con el dispositivo y su interpretación.
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Mandos, mejor con latches e intentar tener asi compatibilidad con los mandos de NES y SNES

Si usásemos un multiplexor, luego si quisiesemos ampliar el mando, tendriamos que usar complejos sistemas como los mandos de 6 botones de la MD, que requiere un preciso timing

En cambio, con un latch PISO (Parallel Input- Serial Output), en caso de querer ampliarlo, sería tan simple como añadir varios latches juntos uno detrás de otro

Yo puedo encargarme de lo que sea en PC, como alguna IDE o un emulador

Un pequeño offtopic: tengo otro proyecto personal bastante ambicioso, diseñar un RISC desde cero con chips (puertas logicas, latches, etc...) con ALU, cinco registros (A, B, X, Y, Z), cada uno con una funcion distinta. Eso sí, con una mínima: que sea lo más simple posible
Gran inciativa, por pena no tengo ni idea de electronica, pero me encantaria ver su finalizacion, si la terminais y haceis un codigo para los juegos y demas, subid tutos e intentare crear cosas.

Gran iniciativa :D
socram8888 escribió:Mandos, mejor con latches e intentar tener asi compatibilidad con los mandos de NES y SNES

Si usásemos un multiplexor, luego si quisiesemos ampliar el mando, tendriamos que usar complejos sistemas como los mandos de 6 botones de la MD, que requiere un preciso timing

En cambio, con un latch PISO (Parallel Input- Serial Output), en caso de querer ampliarlo, sería tan simple como añadir varios latches juntos uno detrás de otro

Yo puedo encargarme de lo que sea en PC, como alguna IDE o un emulador

Un pequeño offtopic: tengo otro proyecto personal bastante ambicioso, diseñar un RISC desde cero con chips (puertas logicas, latches, etc...) con ALU, cinco registros (A, B, X, Y, Z), cada uno con una funcion distinta. Eso sí, con una mínima: que sea lo más simple posible


Me parece muy buena idea usar latchers, pero debemos uir de ideas preconcebidas como compatibilidad con hardware ya existente, ya que siempre acabamos derivando los temas hacia uno u otro lado y perdemos el norte :)

De todas formas podemos plantear ideas hasta el fin de semana y pasar a una prefase de características.

Recordar, lo ideal es que sea simple, barato y...que lo hagamos.

Ah, para centrar más la idea: conceptualmente como una Atari 2600 o NES y con la potencia de una Neo-Geo (hoy en día los chips necesarios están tirados de precios).
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
¿Potencia de NeoGeo? ¿Pretendes usar ARM a más de 75MHz?
Por si os sirve de ayuda, hace un tiempo cree un post igual y llegamos a seleccionar como seria casi al completo un sistema de 8bits, y nos tiramos la de dios para elegir los componentes xD -> Link
socram8888 escribió:¿Potencia de NeoGeo? ¿Pretendes usar ARM a más de 75MHz?


Con potencia me refiero a que pueda mover grandes sprites, buen sonido y que vaya fluido :)

Con ingenio y el uso de un procesador medio rápido de 16 bits en uso conjunto con un esquema de memoria y buffer bien desarrollada podemos ocnseguir resultados impresionantes.

KFR escribió:Por si os sirve de ayuda, hace un tiempo cree un post igual y llegamos a seleccionar como seria casi al completo un sistema de 8bits, y nos tiramos la de dios para elegir los componentes xD -> Link


Si, lo seguí y leí. Es uno de los que me motivó a crear este ;)
Espero que no os moleste mi opinión, pero creo que lo estáis enfocando al revés, creo que antes de pensar en un hardware hay que sopesar las posibilidades de viabilidad reales y, sobretodo, el objetivo final.

Lo primero, hay que pensar en quien se va a encargar de crear la bios de la consola y de qué forma se va a hacer, al enfocarlo hacia un hardware "sencillo" no hay que preocuparse de los drivers por que ya están más que escritos pero hay que juntarlo todo y luego decirle a dicha bios que tiene que interpretar "X" órdenes para poder reproducir el juego, lo que nos lleva al segundo problema: el SDK de la consola, ¿va a ser una consola que requerirá programación específica (y espero que nadie pretenda que se programe en ensamblador) o se va a intentar buscar una base ya existente?. Si es la primera opción, habría que buscar a bastante gente que estuviese dispuesta a programar, y si no se meten grupos interesados, difícilmente se vería algo muy superior a un POC. Si es la segunda opción va a estar el proyecto limitado a la base usada, lo cual no tiene por qué ser malo, pero sí puede pecar de ser una merca "copia" de otra cosa.

Creo que antes de nada hay que tener claro todo esto, luego ya se mirará el hardware.
Baek escribió:Espero que no os moleste mi opinión, pero creo que lo estáis enfocando al revés, creo que antes de pensar en un hardware hay que sopesar las posibilidades de viabilidad reales y, sobretodo, el objetivo final.

Lo primero, hay que pensar en quien se va a encargar de crear la bios de la consola y de qué forma se va a hacer, al enfocarlo hacia un hardware "sencillo" no hay que preocuparse de los drivers por que ya están más que escritos pero hay que juntarlo todo y luego decirle a dicha bios que tiene que interpretar "X" órdenes para poder reproducir el juego, lo que nos lleva al segundo problema: el SDK de la consola, ¿va a ser una consola que requerirá programación específica (y espero que nadie pretenda que se programe en ensamblador) o se va a intentar buscar una base ya existente?. Si es la primera opción, habría que buscar a bastante gente que estuviese dispuesta a programar, y si no se meten grupos interesados, difícilmente se vería algo muy superior a un POC. Si es la segunda opción va a estar el proyecto limitado a la base usada, lo cual no tiene por qué ser malo, pero sí puede pecar de ser una merca "copia" de otra cosa.

Creo que antes de nada hay que tener claro todo esto, luego ya se mirará el hardware.


Interesante lo que indicas, pero creo que va más allá del propósito general de este, por ahora, pseudo proyecto. Por ejemplo, no hay drivers, todo es una arquitectura plana. Imaginemos por un momento como funciona la Atari 2600: todo el hardware montado en placa, una pequeña ROM de inicio (lo que señalas como BIOS, que puede ser tan simple como un volcado de pantalla y comprobar que los procesadores estén ready) y el cartucho (en nuestro caso una SD) que funciona a modo de ROM interna. No es preciso complicarse más la vida.

En cuanto al SDK, lo ideal sería crear un IDE gráfico, que compilase en C lo que el desarrolador del juego estableciera, ya que hoy en día hay bibliotecas en C para prácticamente cualquier procesador de 16 bits (al igual que para PIC).

Si nos ponemos en el plan de crear una consola que siga de la A a la Z todo el protocolo de inicialización y ejecución de software como una comercial actual (no olvidemos que la NES y MS, p.e., seguían los principios de la Atari en cuanto a lo escueto de su funcionamiento interno).
socram8888 escribió:Lo ideal:
Freescale 8-bit para la CPU (porque son Von-Neummann y son capaces de ejecutar código desde la propia RAM interna)
PIC para la VDP (porque son rápidos y baratos)

Es un proyecto que tengo yo también en mente


Yo trabajo con esos sistemas :cool: aunque, no creo que sea la mejor para este fin.
He buscado el siguiente documento para que le podáis echar un vistazo. Imaginar si esa gente pudo crear una consola con las severas limitaciones de la época lo que se podría hacer ahora con electrónica de hace 15 años...

http://www.atariguide.com/pdfs/Atari_26 ... Manual.pdf
FiXeD escribió:
Baek escribió:Espero que no os moleste mi opinión, pero creo que lo estáis enfocando al revés, creo que antes de pensar en un hardware hay que sopesar las posibilidades de viabilidad reales y, sobretodo, el objetivo final.

Lo primero, hay que pensar en quien se va a encargar de crear la bios de la consola y de qué forma se va a hacer, al enfocarlo hacia un hardware "sencillo" no hay que preocuparse de los drivers por que ya están más que escritos pero hay que juntarlo todo y luego decirle a dicha bios que tiene que interpretar "X" órdenes para poder reproducir el juego, lo que nos lleva al segundo problema: el SDK de la consola, ¿va a ser una consola que requerirá programación específica (y espero que nadie pretenda que se programe en ensamblador) o se va a intentar buscar una base ya existente?. Si es la primera opción, habría que buscar a bastante gente que estuviese dispuesta a programar, y si no se meten grupos interesados, difícilmente se vería algo muy superior a un POC. Si es la segunda opción va a estar el proyecto limitado a la base usada, lo cual no tiene por qué ser malo, pero sí puede pecar de ser una merca "copia" de otra cosa.

Creo que antes de nada hay que tener claro todo esto, luego ya se mirará el hardware.


Interesante lo que indicas, pero creo que va más allá del propósito general de este, por ahora, pseudo proyecto. Por ejemplo, no hay drivers, todo es una arquitectura plana. Imaginemos por un momento como funciona la Atari 2600: todo el hardware montado en placa, una pequeña ROM de inicio (lo que señalas como BIOS, que puede ser tan simple como un volcado de pantalla y comprobar que los procesadores estén ready) y el cartucho (en nuestro caso una SD) que funciona a modo de ROM interna. No es preciso complicarse más la vida.

En cuanto al SDK, lo ideal sería crear un IDE gráfico, que compilase en C lo que el desarrolador del juego estableciera, ya que hoy en día hay bibliotecas en C para prácticamente cualquier procesador de 16 bits (al igual que para PIC).

Si nos ponemos en el plan de crear una consola que siga de la A a la Z todo el protocolo de inicialización y ejecución de software como una comercial actual (no olvidemos que la NES y MS, p.e., seguían los principios de la Atari en cuanto a lo escueto de su funcionamiento interno).

Precisamente por eso digo que lo mejor es que esos conceptos queden claros, si se elige el camino que dices está claro que todo lo que ejecute va a ser necesario programarlo específicamente para la consola, yo también creo que es lo mejor ya que es la única forma de que la consola se considere verdaderamente única, pero lleva aparejado el inconveniente del desarrollo de software, correría un más que probable riesgo de morir por falta de desarrollos.

Sobre lo de la bios, has puesto los dos extremos, cuando perfectamente puede haber un camino intermedio, una bios simple pero que interprete código y se pueda usar como conexión con el hardware, algo similar a una BIOS de PC mismamente o a la de cualquier consola de las generaciones 16/32 bits, aunque claro, alguien tendría que currársela. Eso (y la posibilidad de reescribirla desde la SD para posibles ampliaciones o actualizaciones) le añadiría una versatilidad interesante a la consola, sin ir más lejos se me ocurre la posiblidad de cambios en tiempo real para el juego desde la bios estilo unibios de AES.
FiXeD escribió:
Freestate escribió:Yo precisamente estaba dandole vueltas pero por el tema del diseño,es decir lo que yo tenia en mente es crear un pc con placa mini-itx consolizado con un diseño de carcasa pequeño que tuviera el look and feel de las consolas clasicas,neogeo megadrive etc.He estado mirando como hacer una carcasa a nivel industrial y por lo visto hay empresas que realizan impresiones en abs (http://es.wikipedia.org/wiki/Acrilonitr ... o_estireno) con impresoras 3d.Si no es asi como se podria hacer una carcasa de material plastico a precio asequible?


Compañero,

siempre con mis máximos respetos, estas son las ideas que dan al traste con proyectos como este. Me explico: tenemos que partir de base 0, nada prediseñado ni montado. Otros hilos al final se han convertido en un chorro de hilos hablando sobre si llegar a poner procesadores Intel como el Pentium III [mamaaaaa]

No obstante, por si te sirve de referencia, la apariencia la puedes consgeuir haciendo un chasis de madera, lacándolo, dándole barniz y poniendo unos vinilos.


Me habeis malinterpretado,simplemente indicaba que a mi el reto me interesa,pero no desde la perspectiva del hardware,sino de crear una carcasa de diseño unico de calidad profesional para esa consola,que el mundo ha evolucionado,no vas a currarte la maquina y meterla en madera hombre! Ahora mismo hay impresoras 3d que se usan para prototipado industrial que imprimen modelos en abs de calidad buena y incluso colores.Ya que se hace bien por dentro que por fuera luzca como profesional tambien no?
Baek: es muy interesante tu propuesta, desde luego. Podemos seguir con la "brain storm" :cool: para bosquejar el prototipo y ya a partir de este fin de semana ponernos con un concepto claro de como empezar.

Freestate: me gusta tu enfoque. Desde luego tendremos que montarnos diversos grupos para sacar el proyecto adelante y veo que en el campo que hablas tienes buenos conocimientos ;)
Desde aqui todo mi animo, pero tened una cosa clara, aunad las ideas, sino al final pasara como siempre, que todo el curro se lo encargan entre 2 y entre que ya no tenemos el tiempo que quisieramos y demas, se va todo al traste.

Mi recomendacion, es que no os compliqueis la vida, y por lo menos para el prototipo hagais algo sencillo, despues se pueden ir implimentando cosas, porque si atascamos en la bios, ya hemos terminado.

Un saludo
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Exacto. Yo decía ir a por esos dos chips porque son baratos y sencillos de conseguir, y luego ya ir aumentando conforme fuésemos viendo

Y si, también creo que haría falta una BIOS, aunque sólo sea para almacenar rutinas programadas en ensamblador tipo DrawTile(x, y) y así reducir el tamaño y complicación de los programas

Para la PPU había pensado usar tiles de 8x8 píxeles y 8 bits de resolución de color sin paleta (4 bits luminancia - 4 bits crominancia), ya que es más rápido a la hora de implementar (y no digo de trabajo para programarlo, sino a la velocidad requerida para su procesamiento)
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
El Uzebox es un infierno similar al Spectrum ZX81. TODO, absolutamente TODO tiene que estar controlado por un simple PIC: procesamiento, mostrar imágenes (con la consiguiente pérdida de rendimiento), los mandos, etc...

Y además, no puede ejecutar datos desde un almacenamiento externo de ROM o RAM, por lo que tiene que ser programado al vuelo cada vez que quieras cambiar de juego (con la consiguiente lentitud de carga)

Y otro problema del PIC es que al no ser Von Neumann, no se pueden hacer tablas de datos (ej.: un mapa de un juego, una lista de enemigos, una lista de personajes, nombres o características, etc...)


Exacto, como te ha dicho socram8888, la Uze Box es una consola basada en un único PIC, lo cual nos dejaría un margen muy pequeño de gente que supiera/pudiera avanzar el proyecto. COn el añadido de la programación que ha de ser específica.

De todas formas me alegra comprobar vuestros aportes de ideas, seguro que vamos a perfilar un buen proyecto :)
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Mi idea es gastar un PIC bastante rápido que sea capaz de generar la señal YUV directamente (es decir, la señal de vídeo PAL directamente) en lugar de necesitar un codificador RGB externo

O NTSC, pero yo pienso que al ser un proyecto español gastemos el estándar de aquí (que para una vez que la base sea PAL en lugar de NTSC...)
socram8888 escribió:Mi idea es gastar un PIC bastante rápido que sea capaz de generar la señal YUV directamente (es decir, la señal de vídeo PAL directamente) en lugar de necesitar un codificador RGB externo

O NTSC, pero yo pienso que al ser un proyecto español gastemos el estándar de aquí (que para una vez que la base sea PAL en lugar de NTSC...)


Otro tema a tener en cuenta es la resolución: hoy en día es común que la gente tenga televisores de bastantes pulgadas, pudiendo fijar las 32" como base, por lo que habrá que elevarla lo máximo posible. supongo que con una resolución de 640x480.

Aparte, a botepronto, se me ocurren varios de los grupos que podemos crear:

- desarrolladores hardware
- desarrolladores software (check inicial y rutinas de apoyo básicas)
- diseño del IDE (o SDK)
- diseño artístico
- marketing :p
FiXeD escribió:
socram8888 escribió:Mi idea es gastar un PIC bastante rápido que sea capaz de generar la señal YUV directamente (es decir, la señal de vídeo PAL directamente) en lugar de necesitar un codificador RGB externo

O NTSC, pero yo pienso que al ser un proyecto español gastemos el estándar de aquí (que para una vez que la base sea PAL en lugar de NTSC...)


Otro tema a tener en cuenta es la resolución: hoy en día es común que la gente tenga televisores de bastantes pulgadas, pudiendo fijar las 32" como base, por lo que habrá que elevarla lo máximo posible. supongo que con una resolución de 640x480.

Aparte, a botepronto, se me ocurren varios de los grupos que podemos crear:

- desarrolladores hardware
- desarrolladores software (check inicial y rutinas de apoyo básicas)
- diseño del IDE (o SDK)
- diseño artístico
- marketing :p


Marketing? En que consistiria exactamente en este contexto? Y diseño artístico?
FiXeD escribió:
socram8888 escribió:Mi idea es gastar un PIC bastante rápido que sea capaz de generar la señal YUV directamente (es decir, la señal de vídeo PAL directamente) en lugar de necesitar un codificador RGB externo

O NTSC, pero yo pienso que al ser un proyecto español gastemos el estándar de aquí (que para una vez que la base sea PAL en lugar de NTSC...)


Otro tema a tener en cuenta es la resolución: hoy en día es común que la gente tenga televisores de bastantes pulgadas, pudiendo fijar las 32" como base, por lo que habrá que elevarla lo máximo posible. supongo que con una resolución de 640x480.

Aparte, a botepronto, se me ocurren varios de los grupos que podemos crear:

- desarrolladores hardware
- desarrolladores software (check inicial y rutinas de apoyo básicas)
- diseño del IDE (o SDK)
- diseño artístico
- marketing :p

Ah, ¿pero se plantea como una posible venta "en serie" una vez realizada?, entonces crea otro grupo y bien grande, desarrolladores de juegos.

Y también podrías crear otro grupo con colaboradores ocasionales, ya que por ejemplo, yo, podría colaborar en los tres primeros grupos, pero ajustando esa colaboración dentro del muy limitado tiempo del que dispongo.

Ah, y añade betatesters.
A ver, que marketing lo he puesto para que todo sea más relajado, a modo de broma. De todas formas viendo vuestras respuestas no estaría mal crear uno con el propósito de extender por EOL la iniciativa, por que seguro que hay gente que no entra a este subforo y que seguro podría aportar mucho al mismo.

En cuanto a vender algo, lo dudo, pienso que el conocimiento y los descubrimientos deben ser de dominio publico. Cuando llevemos a buen puerto el proyecto se debería poder acceder a él gratuitamente para que cualquiera pudiera montarse su consola en casa. Aunque cierto es que se podría ofrecer algún tipo de kit o carcasa estándar. Pero de momento es algo que ni me planteo por que no quiero que el lucro enturbie un sueño que comparten varias personas :)
Yo me apunto al Hardware!! :)
bertobp escribió:Yo me apunto al Hardware!! :)



He estado mirando la serie MC68000 de Freescale, rápida,flexible y asequible ;)
FiXeD escribió:
bertobp escribió:Yo me apunto al Hardware!! :)



He estado mirando la serie MC68000 de Freescale, rápida,flexible y asequible ;)


Eso me parece tener los pies en el suelo ;)
En cuanto a la salida de vídeo, tenemos que ver si obtamos por modular a PAL o lo hacemos como VGA estándar.
Curioso proyecto ;)

¿Estais pensando en una Portátil con TV-Out o en una de sobremesa?

¡Ánimo!
oskarzer0 escribió:Curioso proyecto ;)

¿Estais pensando en una Portátil con TV-Out o en una de sobremesa?

¡Ánimo!


De momento una sobremesa, hacer una portátil implica más costos, sobre todo al tener que implementar la pantalla.

Queremos hacer algo asequible a todo el mundo :)
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
Si vamos a gastar 68000, probablemente yo puedo hacer la BIOS

Eso sí, si vamos a gastar 68000, tiene que ser con la memoria ROM y RAM integrada. Dudo que el proyecto sea accesible de lo contrario
Obviamente pondremos una ROM para el asunto de la BIOS y rutinas imbuidas. Lo que se puede hacer es que ha partir de determinado direccionamiento sea la SD la que actúe como RAM, a la antigua usanza.

Pensaba en que podríamos usar dos 68000, uno para vídeo y otro como core.
socram8888 está baneado por "incumplimiento términos y condiciones de uso"
¿Pero externa? Si es así, pienso que esto no va a pasar más allá de eso: un proyecto. No creo que haya mucha gente dispuesta a montar un bus de datos con la enorme cantidad de cables que eso requiere (~40 en el caso del 68000)

Y una SD no funcinaría: necesitas RAM intermedia para poder cargar y ejecutar el programa
Pensaba en la posibilidad que daba la SD al ser de conexión serie. Pero pensándolo veo oportuno que introduzcamos un segmento RAM para datos temporales y ejecución de los juegos.
como software, se podria adaptar el proyecto para utilizar el desaroyo de este juego:
hilo_desarrollo-juego-de-naves-para-megadrive-ayuda_1577049_s125
Porque no hacen la consola región libre, así funciona tanto en PAL como NTSC ?
De todos modos, animo con el proyecto.
doblete escribió:Porque no hacen la consola región libre, así funciona tanto en PAL como NTSC ?
De todos modos, animo con el proyecto.


Por este motivo pensaba en hacerla con salida VGA, que es compatible con la mayoría de televisores actuales y, personalmente, en este sentido casi tengo desarrollada la parte de vídeo ;)
FiXeD escribió:
doblete escribió:Porque no hacen la consola región libre, así funciona tanto en PAL como NTSC ?
De todos modos, animo con el proyecto.


Por este motivo pensaba en hacerla con salida VGA, que es compatible con la mayoría de televisores actuales y, personalmente, en este sentido casi tengo desarrollada la parte de vídeo ;)


Puf si lo hicíeseis asi, seriaiss dios, por otra parte me molaria que fuera por rca y poder sacarlo por una mini tele para hacer una mini maca.
FiXeD escribió:
doblete escribió:Porque no hacen la consola región libre, así funciona tanto en PAL como NTSC ?
De todos modos, animo con el proyecto.


Por este motivo pensaba en hacerla con salida VGA, que es compatible con la mayoría de televisores actuales y, personalmente, en este sentido casi tengo desarrollada la parte de vídeo ;)


Gracias por responder, lo de la salida VGA estaría bueno, así que voy a estar pendiente de este Hilo.
Saludos.
Veo que cada vez hay mas gente interesada en esto.

Jeje, haber si sale adelante, todo mi apoyo! Yo creo que seria bueno hacer una lista grande de toda las cosas que harían falta en el proyecto, auqnue sean als mínimas chorradas, así los que entendemos poco podemos colaborar en algo y ''sentirnos colaboradores'' XD
Saludos y ánimo! [boing]
Muy muy interesante proyecto. No os puedo ayudar en nada tecnico, ya que no me entero de casi nada de lo que decis [+risas] , pero si necesitais cualquier cosa, aqui me teneis.
Solo una pregunta de alguien totalmente profano en la materia: ¿al final que formato usareis para los posibles juegos?. Es que como habeis dicho de quitar la SD para la carga, ya me ha quedado la duda.
Pido perdon por adelantado por mi desconocimiento.
Lo del vga... no está mal pero para tvs antiguas es tb recomendable usar rgb. Y mandos lo suyo es usar mandos conocidos y que se puedan comprar, super nintendo sería bueno pero encontrar conectores no tanto, mejor alguno que use db9 como megadrive, neogeo es directo, pero conseguir mandos está la cosa mal.
socram8888 escribió:¿Pero externa? Si es así, pienso que esto no va a pasar más allá de eso: un proyecto. No creo que haya mucha gente dispuesta a montar un bus de datos con la enorme cantidad de cables que eso requiere (~40 en el caso del 68000)

Y una SD no funcinaría: necesitas RAM intermedia para poder cargar y ejecutar el programa


Yo podria encargarme de fabricar PCBs en circuito impreso.
Pienso como tu, un Motorola 68000 seria ideal, y habria que aclarar la arquitectura, para mi cuanto mas simple y "abierta" sea mejor, asi seria mas facil hacer perifericos, desarrollar;...
338 respuestas
1, 2, 3, 4, 57