Placa MVS vertical

Este proyecto es una nueva adaptación de una placa arcade MVS para su uso en TVS convencionales.

En este caso, el modelo utilizado es el MV1C. Tiene como peculiaridad que la entrada del cartucho es vertical, integrando el zócalo en la placa principal, y que su tamaño es bastante reducido. Esta disposición permite crear una carcasa completa de un tamaño decente, y añadir una tapa para el peine del cartucho:

La premisa es la misma de casos anteriores, no modificar la placa original (en este caso, se ha retirado su carcasa), realizar una carcasa por impresión 3d, y permitir su uso como si de una consola se tratase.

El resultado es:

La carcasa está compuesta de 10 piezas principales, con una tapa deslizante para el zócalo. Más fotos:

El interior:

Como novedad, debido a la escasez de espacio dentro de la carcasa, y para evitar el jaleo habitual de cables, he hecho un par de PCBs para el conector jamma y el scart utilizando el CNC:

Un pequeño vídeo con musicota del Metal Slug 3:

En unas semanas publicaré los modelos STL en thingiverse para quien quiera imprimirlo, así como los eagle de las pcbs. Durante el montaje han aparecido algunos detallesque revisar, y prefiero publicarlas una vez que estén completamente listas.

Gracias a Julen por retarme a comenzar este proyecto, que se ha prolongado más de lo que esperaba, y a mis amigos y compañeros de Byte Swap .

Anuncios

Grabado láser

Aquí va una pequeña entrada, mientras termino el próximo proyecto…

Las pasadas navidades compré en AliExpress un pequeño grabador laser. Este es su aspecto:

Usad gafas protectoras, niños!

Al igual que las impresoras 3d, se basa en una placa arduino (nano en este caso), con motores nema, y un firmware libre llamado GRBL, análogo a marlin.

De serie trae el GRBL 0.8c. Traté de actualizarlo, pero no salió del todo bien, porque el láser no se apagaba nunca. La mesa puede dar fe de ello… Finalmente tuve que volver al original

A diferecia de la impresora 3d, no tiene opción de lectura desde SD, y el envío del gcode se realiza por usb desde un pc. He utilizado principalmente dos aplicaciones para generar los gcode:
Laser GRBL http://lasergrbl.com/en/
Lite Fire Laser (Venía en un pincho con el aparato)

De la primera me quedo con los algoritmos de corte y bordeado, que van muy fluidos, y de la segunda con la funcion de grabado propiamente.

El laser es de 2000mw. Da para cortar cartón, cartulina, goma eva… para madera no llega. Lo que es buena, es para grabado.

Algunas cositas:

Juego de Tronos

Groot

Un Buho

Otros

La madera que se ve cortada en rodajas es de nogal (juego de tronos) y chopo (groot y el buho), procedente de la ultima poda 🙂 El resto es ocume y pino.

Y para acabar, unos vídeos con musicota, que siempre queda más épico:

Carcasa Impresa para GDEMU de Dreamcast con lector SD integrado

GDEMU es un Emulador de Disco Óptico para Dreamcast, que permite el reemplazo de todo el lector óptico, para instalar en su lugar una tarjeta SD donde almacenar isos de juegos ejecutables en la consola.

Es una idea muy práctica, ya no sólo para cargar y almacenar backups fácilmente, sino para resucitar consolas con lentes o lectores muertos.

Se trata de un proyecto personal de su autor, Deunan, con página “oficial” en wordpress donde se puede encargar:
https://gdemu.wordpress.com

Existe también un clon chino, que es el que he utilizado en este proyecto, y que se puede encontrar en las páginas habituales de compras. No daré enlaces de compra de clones por respeto al autor del original.

El aspecto de la placa es este:gdemu (1)

Se instala retirando todo el lector de la consola y pinchandolo en su lugar:

gdemu (8)

La consola arranca y detecta el juego que se haya almacenado en la carpeta 01 de la SD como si fuese un disco virtual. El botón permite cambiar el disco virtual, pasando a la carpeta 02 y sucesivas cada vez que se pulsa.

Este diseño es muy práctico y de fácil instalación, pero presenta un problema de accesibilidad a la SD una vez se monta la carcasa de nuevo al quedar varios centímetros por debajo del hueco. Sobre todo, para caballeros con unas manazas como las mías…

La finalidad de este proyecto es crear una sencilla “tapa” que se pueda producir en impresora 3D para el hueco del lector optico, en la que ubicar un extensor del lector de SD del GDEMU.

Después de unas cuantas medidas y pruebas, el resultado del diseño fue este:

gdemu

La carcasa de Dreamcast tiene tres pivotes para sujetar el bloque optico. Dichos pivotes se pueden usar como anclaje para la tapa, ya que tienen agujeros de 2mm en los que roscar tornillos:

Los extensores de SD se pueden localizar en distintas medidas en aliexpress:
https://es.aliexpress.com/item/SD-Male-To-SD-Female-SDHC-SDXC-Card-Reader-Extension-Adapter-Cable-Extender-For-Phone-Car/32820269171.html?spm=a2g0s.9042311.0.0.410a63c0Bc7Sf9
Con uno de 15 centímetros vamos sobrados, pero si se usa uno de más, hay sitio para alojar el exceso de cable. El primero que compré fue de 48 cm (era el más corto) y entra bien.

Para mejorar la estética, el lector de SD se aloja en una bonita carcasa con el logo de Dreamcast, colocado con una leve inclinación que mejora el acceso:

gdemu (4)

Finalmente, el botón de cambio de disco queda accesible, a través de un “palo” extensor. Se puede poner un muelle dentro para dejarlo más elegante, pero no es obligatorio.

El resultado final mejora la presencia de la consola con el GDEMU instalado:

gdemu (19)

Aquí un vídeo con el detalle de la instalación:

Si a alguien le interesa fabricarse su propia tapa, he dejado los modelos disponibles en thingiverse (licencia creative commons BY-SA-NC-ND) en el siguiente enlace:
https://www.thingiverse.com/thing:3279412

Lo he usado poco de momento, pero es recomendable no tocar la SD en caliente aunque el autor diga que se puede. Sobre todo, usando el alargador, ya que el gdemu no detectará la salida de la SD del zócalo, pudiendose producir corrupción de datos, y cuelgues.

Me queda investigar, como proyecto complementario, el tema del flujo del aire de refrigeración dentro de la consola, ya que la eliminación del bloque óptio afecta al camino que sigue. Hay quien añade una “pared” como esta para asegurar que el aire llega a la fuente como antes:

(Actualizado el 22/12/2018): He añadido en la pieza de thingiverse una nueva pieza que actua como soporte y separador  al mismo tiempo:

El resultado es un anclaje bastante sólido para el GDEMU, que a la vez mejora el flujo del aire. Se monta utilizando dos de los anclajes del lector optico, así que se pueden usar los mismos tornillos. Primero hay que sujetar la pieza poniendo los tornillos marcados en rojo, y luego, colocar el GDEMU encima y sujetarlo con un par de roscachapas en los agujeros marcados en azul:

gdemu (38)

Antes de terminar, agradecer como siempre al resto del equipo de Byte Swap las ideas y apoyo. A O’Neill y Naikon por presentarme el GDEMU y “provocarme” para hacer la tapa. Y al grupo de Telegram de Dreamcast https://t.me/dreamcastSega de Alberto, Martintxo, Javier y compañía, por las sugerencias, y por el cariño que demuestran a esta gran consola de Sega.

Adaptador Master System – Mega Drive

Este es un proyecto realizado en colaboración con el resto del equipo Byte Swap. Especial agradecimiento a Giacomo (Santi), que es quien diseñó la placa que contiene este adaptador, y a O’neill (Javi), encargado de la logística.

El Master System Converter fue un periférico de Mega Drive que permitía utilizar en esta consola la mayor parte de juegos de Master System:

sms12

Esta retrocompatibilidad se lograba gracias al hardware ya presente en Mega Drive, lo que convierte este adaptador en un mero puente entre el cartucho y la consola.

Realizando una investigación, se puede “traducir” el slot de master system al de mega drive. Prescindiendo del adaptador de tarjetas, y con una carcasaimpresa, el resultado es:

 

 

 

 

mastermega (2)

 

 

 

 

mastermega (8)

mastermega (1)

Aquí, en funcionamiento:

 

mastermega-20

Esta es una revisión con el botón en el lateral, en su posición original. Está hecha en dos piezas para poder meter la placa con el botón ya montado:

Convertir una placa arcade bootleg COMECOCOS en un PACMAN

Hace tiempo conseguí un par de placas bootleg de MS PACMAN, conocido en España como COMECOCOS. Se trata de unas placas con una curiosa traduccion al español, con el grabado  “MADE IN GREECE” en la placa.

PACMAN (9)

El aspecto del juego, se mantiene, con los nombres cambiados, y algun color distinto:

Buscando en páginas de venta, es casi imposible localizar placas arcade originales de juegos clásicos tipo Galaga, Donkey Kong, Pacman… A Europa da la sensación de que llegaron pocos de estos juegos, y en algunos casos, ni siquiera bootlegs.

Investigando un poco en el listado de roms de MAME, encontré que este bootleg lleva el citado MADE IN GREECE en el título de la ROM… y que existía otra ROM con este identificador como bootleg del PACMAN original, llamada PUCKMAN.

Con todo esto pensé… quizá pueda convertir este COMECOCOS en un PUCKMAN… y luego convertir el PUCKMAN en algo parecido a un PACMAN…

Así que al lío.

Lo primero era analizar las ROMs de ambos juegos. Comparándolas, vemos que el contenido es muy parecido:

PACMAN (21)

Leí con el willem las eeprom montadas en los zócalos numerados 11 y 13 de la placa, comprobando que corresponden de esta manera con los ficheros del zip:

PLACA mspacmanbcc.zip
Zócalo 11 comecocos.bin
Zócalo 13 10.e5

Comparando con un editor hexadecimal los cuatro archivos de ambas ROMs, pude llegar a esta equivalencia:

PLACA mspacmanbcc.zip pacmansp.zip
Zócalo 11 comecocos.bin 1.bin
Zócalo 13 10.e5 2.bin

En este punto preparé dos eproms 27C256B para grabar los ficheros 1.bin y 2.bin de la ROM del PUCKMAN. Como podéis observar el fichero 2.bin de PUCKMAN pesa 8KB mientras que su equivalente del COMECOCOS, 10.e5, pesa 32KB. Para evitar problemas, preparé una concatenación de 4 cuatro veces el contenido del fichero y lo grabé.

Monto las eproms, enchufo a la TV, y…

Qué colores más raros, ¿no? Pacman es morado y los fantasmas no tienen sus colores originales…

Investigando otro poco más, y teniendo en cuenta el esquema de colores que estoy viendo, y el que debería ver, llego a la conclusión de que los canales verde y azul del RGB están cambiados. Intercambio los pines del euroconector y…

Mucho mejor. Parece que esta placa simplemente tiene los canales cambiados para que COMECOCOS sea algo distinta de MS PACMAN.

Hecho esto, tenemos una placa con un pacman con una traducción atroz… ¿quién es “EL  SUPER” y por qué los fantasmas tienen los nombres de los hermanos Marx?

Esto se puede solucionar relativamente fácil con un editor hexadecimal, editando el contenido de 1.bin de la ROM de puckman y cambiando las traducciones. En este vídeo se puede ver la comparación entre un PACMAN original y un PUCKMAN traducido al castellano:

Con el editor se pueden ir cambiando los strings, con MUCHO cuidado de no salirse de cada zona de texto:

Cabe destacar que la equivalencia de símbolos entre lo que muestra el editor y lo que se ve al ejecutar el juego es:

editor pantalla
puntoy coma (;) guion (-)
arroba (@) espacio ( )
ampersand (&) comilla (“)

Todo el proceso se puede ir probando en un emulador, sustituyendo los ficheros 1.bin a medida que se modifiquen símbolos, antes de grabar la eprom. Así se evita tener que grabar la eprom para probar en la placa cada vez que se toque algo.

Con esto, tendremos una jamma bootleg muy parecida a un PACMAN original…

Habrá que hacer ahora una carcasa, ¿no?

Arduino PONG

Este es un proyecto realizado un fin de semana ocioso…

Llevaba tiempo queriendo hacer un experimento sobre el uso de arduinos para generar señales de video. Realizando una búsqueda en Internet, encontré la librería TVOut, que permite generar una señal de vídeo, representando algo parecido a una interfaz de texto.

De hecho, como podéis ver en las especificaciones, los comandos son muy similares a una salida de consola, con ordenes de escritura de texto en determinadas posiciones.

Y encima, junto a varios ejemplos, encontré una implementación del pong clásico… Perfecto, nuevo juguete al canto. El autor original del código (Peter Lamonica) tiene publicado este vídeo y el código.

Creo que el pong no necesita muchas presentaciones, pero por si alguien está despistado, aquí está la Wikipedia al rescate.

tumblr_nubbhqC9yT1rpco88o2_r1_500

El montaje de la placa es muy sencillo. El código tiene definidos los pines de las ruletas, que son potenciómetros de 10 KOhm, y la propia libreria tiene definidas las salidas de las señales de vídeo. como conector para video, audio y mandos he utilizado jack de audio estero, que tienen los 3 canales necesarios en cada caso.

 

A esto le añadí una bonita carcasa y mando impresos, y el resultado es:

 

Si a alguien interesa, aquí dejo el diseño en thingiverse.

Como puntos pendientes tengo la modificación del código. Me gustaría realizar una opción de un solo jugador, y añadir colores a la pantalla.

Cartucho casero ZX Spectrum para Interface II

Un amigo me ha conseguido recientamente un zx spectrum +2. Motivado con el hallazgo, he aprovechado para realizar un proyecto que tenía en mente desde hace meses.

CARTUCHO MONOJUEGO:

Hace tiempo me encontré con este artículo sobre cómo construir cartuchos de juegos para el spectrum:

http://trastero.speccy.org/cosas/droy/cartuchos/cartuchos_s.htm

El diseño del cartucho pertenece a Droy. Le doy las gracias a él y a la web El Trastero del Spectrum por todos los interesantesartículos que tienen publicados.

He tenido el spectrum durante muchos años, y hasta topar con este artículo no sabía que se habían comercializado juegos en formato cartucho para spectrum. El catálogo fue pequeño y se vendieron pocas unidades…

rom_carts[1]

Lo primero que necesitaba era un interface II para poder usar el cartucho. El propio Droy explica cómo construir uno aquí:

http://trastero.speccy.org/cosas/droy/interface2/interface2_s.htm

Yo opté por ir a ebay, donde encontré uno “averiado” por 15 euros… Entrecomillo lo de “averiado”, porque el interface II sólo es una placa con unos conectores… no tiene componentes. La avería era una rotura en el zócalo de conexión al spectrum, que arreglé con loctite para pegar el trozo suelto y un punzón para enderezar los contactos.

El esquema de la placa del cartucho es bastante sencillo, sólo había que imprimir el diseño de eagle, tranferir a la placa, etc…

Por último, añadí una carcasa impresa con pegatina para identificar el juego:

Aquí está el diseño para imprimir si interesa a alguien:

https://www.thingiverse.com/thing:2958251

Hay dos versiones como se ve en la primera foto. Una tiene un protector completo, mientras que la otra deja el conector al aire. A gusto del consumidor.

Después de toda la vida cargando los juegos desde audio, no me acostumbro a encender y jugar:

Para acabar un pequeño vídeo demostrativo:

 

CARTUCHO MULTIJUEGO:

En cuanto he tenido funcionando un par de catuchos monojuego, me he animado a montar el multijuego.

El circuito se puede encontrar también en El Trastero del Spectrum, y nuevamente es obra de Droy:

http://trastero.speccy.org/cosas/droy/zxflash/zxflashcart_s.htm

La placa es un poco más compleja y ha tocado esperar a que llegasen componentes desde distintas partes del mundo:

Un vez montado, he decidido preparar 2 ROMS con un recopilatorio de juegos de ULTIMATE:

Y a darle caña: