CASIO ROM PACKs para teclados Casiotone

Foro dedicado a sistemas varios: juguetes programables, calculadoras, agendas electrónicas, traductoras, y cualquier otro sistema de la época.
Avatar de Usuario
Tolaemon
Atari 1040 STf
Atari 1040 STf
Mensajes: 1019
Registrado: 16 May 2004, 22:29
Gracias dadas: 2 veces
Gracias recibidas: 8 veces

CASIO ROM PACKs para teclados Casiotone

Mensajepor Tolaemon » 20 Dic 2019, 18:50

Buenas hacía lustros que no posteaba por aquí...! Y lo hago para comentar que desde hace un tiempo ando inmerso en un proyecto que consiste en crear un emulador de CASIO ROM PACKs. Para quien no lo sepa, las CASIO ROM PACKs son unos pequeños cartuchos que utilizaban algunos modelos de teclados musicales CASIO de los 80 ( los famosos Casiotone ). Muchos modelos llevaban un slot para poder insertar cartuchos con melodías que luego se podían reproducir y también practicar con el teclado pulsando las teclas al ritmo de unos leds rojos y verdes.

He tenido que hacer ingeniería inversa para entender como funcionan estas ROMs, ya que no son ROMs convencionales. Quiero decir que no son las "típicas ROMs" con bus de datos de 8 o 16 bits, y bus de direcciones independientes. Resumiendo, las CASIO ROM PACKs disponen de un único bus bidireccional de 4 bits y de lógica inversa, que se utiliza tanto para datos como para direcciones lo que hace la gestión un poco más liosa. El contenido de las ROMs se divide en tantos bloques como temas contenga el cartucho. A su vez cada bloque se subdivide en otros bloques para la melodía principal, para la melodía de acompañamiento, y otro para los acordes. Creo que ahora comprendo un 33% de la estructura y comandos contenidos en estas ROMs, pero necesito más información para terminar de comprender bien los diferentes comandos etc. Llegado a este punto he creado un placa muy sencilla que puede clonar cartuchos y emularlos. Además con la información que he ido sacando, creo que incluso ya se podrían crear temas nuevos para los los Casiotone.

Por defecto estos teclados CASIO traían el cartucho "Songs of the world" con 4 canciones populares, y tengo un par de estos pero necesitaría algunos más para volcar más ROMs y obtener más información. Se editaron bastantes ROM PACKs, p.ej. con temas de Michael Jackson, de Chicago, de los Beach Boys, temas de música popular, música clásica etc. Por eso escribo por aquí por si hay alguien que tenga otras ROM PACKs ( o conozca a alguien que las tenga ) y esté dispuesto a prestármelas un par de días para poder hacer un volcado de todas ellas y más adelante compartirlas por Internet. O incluso si alguno es de Madrid y le da reparo prestármelas por un tiempo, se puede pasar por mi casa, o puedo intentar llevar yo la electrónica a la suya, las volcamos y se las lleva de nuevo. O si quiere hacer cambios ahora mismo dispongo de una Atari CX2600 con cartuchos que estaría dispuesto a cambiar por algunas ROM Packs.

No se si lo terminaré, pero mi idea es hacer el proyecto Open Source y publicar en Internet los esquemáticos del diseño, los del PCB, el código fuente, y también todas las CASIO ROM PACKs que pueda haber recopilado ( cruzo los dedos para que no salga el típico toca web OS con los temas de licencias etc. ). Me gustaría encontrar la manera de facilitar la creación de nuevos temas para estos y quizás también añadirles soporte MIDI...

Os dejo aquí algunas fotos del proyecto:
CASIO_ROM_PACK1.jpg
CASIO_ROM_PACK1.jpg (277.13 KiB) Visto 1187 veces

CASIO_ROM_PACK3.jpg
CASIO_ROM_PACK3.jpg (202.81 KiB) Visto 1187 veces

CASIO_ROM_PACK2.jpg
CASIO_ROM_PACK2.jpg (420.18 KiB) Visto 1187 veces

Urusergi
MSX Turbo R
MSX Turbo R
Mensajes: 385
Registrado: 21 Dic 2011, 10:11
Ubicación: Madrid
Gracias dadas: 287 veces
Gracias recibidas: 13 veces

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor Urusergi » 20 Dic 2019, 22:20

Buen proyecto! espero que siga adelante.

Yo tuve un rom pack de rock pero se lo di a alguien de este foro, de otra manera ya estaría contactando contigo para regalártelo.

Avatar de Usuario
zup
Amiga 2500
Amiga 2500
Mensajes: 2774
Registrado: 04 Sep 2009, 20:07
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo DS/3DS
Primera consola: Nintendo GameBoy
Ubicación: Navarra
Gracias dadas: 51 veces
Gracias recibidas: 214 veces
Contactar:

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor zup » 21 Dic 2019, 09:03

Esta página tiene algo más de información, aunque está orientada solo a usuarios. Hay una lista bastante completa de los rompacks que se lanzaron, que incluye muestras de algunas canciones.

Yo compré por internet hace algún tiempo dos tecladitos Casio (solo conservo uno), y conseguí tener los rompacks RO-551 (el de Greensleves, el que tiene todo el mundo) y el RO-265 (por variar algo). El problema es que mi hijo quitó el RO-265 y vete a saber dónde está... si lo encuentro, te lo mando.

En otro orden de cosas, hice un mp3 con el sonido de inicio de mi Casio y también localicé un soundfont, por si alguien tiene la tentación de usar OmniMIDI para averiguar cómo sonaría una canción moderna en esa maravilla (TRAMPA: La mayoría de los Casio PT no permitían polifonía.. o al menos no te dejaban tocar varias notas a la vez).

Otras preguntas interesantes... ¿con ese proyecto se podrían duplicar cartuchos? ¿O crear un supercartucho con tantas canciones como teclas tenía el PT? ¿Has logrado replicar el comportamiento de las luces del teclado (imagino que se limita a "copiar" las notas que suenan en los leds) o los modos de aprendizaje?
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start.
Además vendo cosas!

Avatar de Usuario
Tolaemon
Atari 1040 STf
Atari 1040 STf
Mensajes: 1019
Registrado: 16 May 2004, 22:29
Gracias dadas: 2 veces
Gracias recibidas: 8 veces

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor Tolaemon » 21 Dic 2019, 19:47

Otras preguntas interesantes... ¿con ese proyecto se podrían duplicar cartuchos? ¿O crear un supercartucho con tantas canciones como teclas tenía el PT? ¿Has logrado replicar el comportamiento de las luces del teclado (imagino que se limita a "copiar" las notas que suenan en los leds) o los modos de aprendizaje?


Sí a todo :D Ahora mismo tengo el volcado del único cartucho del que dispongo, el "RO-551 World songs" y puedo reproducirlo en el Casiotone usando el emulador ROM PACKs. El emulador de ROM PACKs no utiliza ni memorias ROM ni RAM convencionales ni CPLDs ni FPGAs. Únicamente utiliza un microcontrolador de 8 bits que monitoriza el bus de datos/direcciones y las correspondientes señales de control del Casiotone simulando ser una ROM: este mira la dirección que le está pidiendo el Casiotone, y le entrega el dato asociado a esta dirección. Como el bus funciona a una frecuencia de reloj muy baja ( unos 200KHz ) es viable hacerlo con un microcontrolador, aunque en realidad los tiempos están bastante apurados. De hecho he tenido que hacer overclocking del microcontrolador con un oscilador de 32Mhz, además he tenido que programar todo en ensamblador, y bajar un poco la frecuencia de funcionamiento del bus del Casiotone para que sea un poco más lento y "facilitar el trabajo" al emulador ( el Casiotone incopora unos potenciometros que permiten afinar y ajustar la frecuencia de funcionamiento del bus ).

El volcado del cartucho "RO-551 World songs" son unos 8kBs y el micro que uso tiene 64kBs de flash. Como el programa ocupa unos 20kB los 44kB restantes quedarían disponibles para guardar la información de cartuchos, esto es 40kB/8kB unos 5 cartuchos. No obstante los cartuchos se podrían guardar en una SD externa de los MBs que haga falta, y cargarlos a demanda del usuario.... Por ahora tengo la friolera de 1 cartucho volcado.

Los modos de aprendizaje ( Melody guide 1,2,3 y 4) también funcionan. De hecho estos son modos de reproducción de la melodía almacenada, en que, en lugar de reproducir las notas una tras de otra, lo que hace es encender el led correspondiente, esperar a que el usuario pulse la tecla asociada a ese led, y así una tras de otra ....


Volver a “Sistemas Varios”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados