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: 1021
Registrado: 16 May 2004, 22:29
Gracias dadas: 3 veces
Gracias recibidas: 10 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 3239 veces

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

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

Urusergi
MSX Turbo R
MSX Turbo R
Mensajes: 395
Registrado: 21 Dic 2011, 10:11
Ubicación: Madrid
Gracias dadas: 325 veces
Gracias recibidas: 16 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: 2858
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: 54 veces
Gracias recibidas: 237 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: 1021
Registrado: 16 May 2004, 22:29
Gracias dadas: 3 veces
Gracias recibidas: 10 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 ....

Urusergi
MSX Turbo R
MSX Turbo R
Mensajes: 395
Registrado: 21 Dic 2011, 10:11
Ubicación: Madrid
Gracias dadas: 325 veces
Gracias recibidas: 16 veces

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor Urusergi » 11 May 2020, 21:48

Haciendo limpieza (ahora tengo mucho tiempo libre ](*,)) me he encontrado con el cartón que traía mi rom pop superstars, asi que lo he escaneado, por si pudiera servir de algo.
Adjuntos
ROM Packs.jpg
ROM Packs.jpg (240.61 KiB) Visto 1533 veces

Avatar de Usuario
AnwarStudio
ZX Spectrum 16
ZX Spectrum 16
Mensajes: 4
Registrado: 09 Sep 2020, 10:55
Sistema Favorito: PC
primer_sistema: C16
consola_favorita: Sony PSP
Primera consola: Atari 2600
Ubicación: México
Gracias dadas: 6 veces
Gracias recibidas: 10 veces
Contactar:

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor AnwarStudio » 12 Sep 2020, 15:23

Qué tal! Saludos!

Hace poco tiempo encontré tu trabajo sobre las ROM y con mucho gusto estoy dispuesto a contribuir donandote algunas de ellas, recientemente unos amigos me consiguieron un lote de una bodega de Casio donde las iban a desechar y me pude hacer de un gran número de estos ROM, me interesa mucho tu trabajo ya que me gustaría aprender a crear música para esta plataforma y reconstruir un ROM que no puedo conseguir por su escasez, te puedo hacer llegar unos cuantos de los ROM que tengo y no tienes porque preocuparte por retornarlos, como digo al principio con todo gusto te dono unos cuantos.
DFF35886-0F77-44BF-ADBC-0D581FD56F49.jpeg
Bodega de Casio México
DFF35886-0F77-44BF-ADBC-0D581FD56F49.jpeg (88.4 KiB) Visto 296 veces
Adjuntos
19CB29EA-24C0-40F6-842C-F3B0035EDBB6.jpeg
Puedo donarte de uno a dos de cada uno de los diversos que encontré.
19CB29EA-24C0-40F6-842C-F3B0035EDBB6.jpeg (108.07 KiB) Visto 296 veces

Avatar de Usuario
Namek
Atari 1040 STf
Atari 1040 STf
Mensajes: 853
Registrado: 11 Jul 2011, 13:13
Gracias dadas: 21 veces
Gracias recibidas: 51 veces

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor Namek » 12 Sep 2020, 23:38

DIOS DEL AMOR HERMOSO, QUE MONTONACO DE ROM PACKS!!! :shock:

Avatar de Usuario
jltursan
Amiga 2500
Amiga 2500
Mensajes: 4045
Registrado: 13 Oct 2006, 19:45
Sistema Favorito: MSX
primer_sistema: Dragon
Ubicación: Serracines, Madrid, España
Gracias dadas: 59 veces
Gracias recibidas: 134 veces
Contactar:

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor jltursan » 13 Sep 2020, 12:32

¡Wow, vaya visión, enhorabuena por el hallazgo! =D>

¿Y cuantos modelos diferentes hay?, ¡increible!

Avatar de Usuario
AnwarStudio
ZX Spectrum 16
ZX Spectrum 16
Mensajes: 4
Registrado: 09 Sep 2020, 10:55
Sistema Favorito: PC
primer_sistema: C16
consola_favorita: Sony PSP
Primera consola: Atari 2600
Ubicación: México
Gracias dadas: 6 veces
Gracias recibidas: 10 veces
Contactar:

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor AnwarStudio » 14 Sep 2020, 04:00

jltursan escribió:¡Wow, vaya visión, enhorabuena por el hallazgo! =D>

¿Y cuantos modelos diferentes hay?, ¡increible!


Saludos; en esta bodega sólo encontramos 10 variedades diferentes; pero hubo cientos de ROM-Pack que poco a poco voy localizando, saludos!

Avatar de Usuario
Tolaemon
Atari 1040 STf
Atari 1040 STf
Mensajes: 1021
Registrado: 16 May 2004, 22:29
Gracias dadas: 3 veces
Gracias recibidas: 10 veces

Re: CASIO ROM PACKs para teclados Casiotone

Mensajepor Tolaemon » 14 Sep 2020, 09:25

!Increíble! !Sí que has localizado un buen tesoro!

Como comentaba en el hilo, en mis ratos libres, que últimamente son pocos, he ido desarrollando un emulador de cartuchos Casio ROM Pack. Estos cartuchos usan unos chip ROM un tanto peculiares. No son el típico cartucho con un bus de datos y bus de direcciones independientes con sus señales de !CS , R/!W etc, sino que usan una bus compartido un tanto enrevesado.

La parte del emulador la tengo ya funcionando. He conseguido copiar unos 7 cartuchos diferentes y reproducirlos. A primeras, lo lógico hubiera sido utilizar una FPGA o CPLD para implementarlo, pero al tratarse de ROMs relativamente lentas, al final he decidido simular el cartucho con un microcontrolador de los "rápidos" programado en assembler para optimizar los tiempos. Esto me ofrece mucha más flexibilidad a la hora de utilizar e integrar determinados periféricos ( LCD, bus serie, acceso a almacenamiento externo ... ). Conencé con un micro AVR de 8 bits, pero al final salté a un ARM de 32bits. Ahora ando implementando el acceso al sistema de ficheros para poder guardar y leer diferentes ROMs guardadas en una tarjeta SD. Cada ROM ocupa unos 4 KB, por lo que una tarjeta SD de 1GB cabrían hasta 1 millón de ROMs... muchas más de las que existen. La idea sería poder seleccionar mediante una interfaz gráfica la ROM de la tarjeta a SD a a reproducir. Más adelante se le podría incluir una interfaz MIDI.

También he estado investigando el contenido de las ROMs y creo que sería factible desarrollar algún tipo de herramienta para que la gente pudiera crear sus propias melodías nuevas y cargarlas en los CASIOtone. Cada cartucho se organiza en una serie de bloques. Cada bloque es una canción que contiene 3 pistas: la melodía principal, la melodía de acompañamiento, y la base de ritmo/acordes.

Yo estaría interesado en un ejemplar de cada modelo de ROMs, siempre que no lo tenga ya repetido. Te mando un privado.
Adjuntos
rompackmulator2.jpg
rompackmulator2.jpg (196.94 KiB) Visto 196 veces
rompackmulator1.jpg
rompackmulator1.jpg (236.87 KiB) Visto 196 veces


Volver a “Sistemas Varios”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado