Acaba de aparecer una nueva versión de la actualización no oficial para la BIOS de MSX-Audio. Ha sido un año muy productivo para sd_snatcher. Ahora el día a día le llama a la puerta y deberá cambiar sus prioridades. Esta es su última producción del año 2011 y puede que no tenga tiempo de analizar todos los comentarios que se hagan sobre ella. Así que es recomendable que leas el archivo readme.txt y su FAQ. Esta versión tiene muchas características nuevas y corrige varios errores:
- Muchos errores corregidos y optimizaciones en general
- Mejorado el conjunto de instrumentos de la BIOS de MSX-Music
- Soporte para los chips de sonido OPL3 (y OPL4fm)
- Soporte para sonido estéreo
- El nuevo parámetro WaveSelect para chips de sonido OPL2/3/4 (registro E0h) está soportado en los instrumentos, en sus parámetro +21 (primer operador) y +29 (segundo operador), lo que permite instrumentos propios mejorados
- Nueva extensión SoundChipFish. Se trata de una librería de traducción de chips de sonido que soporta traducción al vuelo de comandos entre los siguientes chips de sonido: OPLL->OPLn (YM2413 to YM3527/Y8950/YM3812/YMF262/YMF278), AY-3-8910 a OPL3 (incluido OPL4fm, por supuesto)
- Compatibilidad del software con la BIOS de MSX-Music. Todos los juegos que utilizan las funciones INIOPL/WRTOPL de la BIOS de MSX-Music funcionarán con esta BIOS ya que utiliza la librería SoundChipFish para traducir al vuelo comandos OPLL a OPLx. Esto acabará con años de incompatibilidad propiciada por un mal diseño cuando se creó MSX-Music. Esperemos que ello ayude a reducir la confusión que causaba a muchos usuarios de MSX. Por supuesto los programadores deben respetar el estándar MSX para sacarle provecho (utilizar la BIOS en vez de acceso directo al hardware)
- Los siguientes juegos que utilizan MSX-Music funcionarán correctamente en cualquier dispositivo que utilice la BIOS v1.3 para MSX-Audio e incluso su música se escuchará en estéreo en cartuchos OPL3/4: Penguin Kun Wars 2, Dante2, Lübeck, Sea Sardine, Fleet Commander 2 (requiere de un parche para corregir una condición de carrera que el juego tenía en sus rutinas de inicialización), Gladius
- ...y la reciente versión de FireHawk-HDD. La traducción es ligera así que el juego funciona mejor que la versión original incluso traduciendo comandos de OPLL a OPLn. Para traducir simultáneamente de OPLL->OPL3 y de PSG->OPL3 se recomienda un Z80B a 5.37MHz
- Esta nueva versión de la BIOS ocupa más y requiere una ROM de 64KB. La placa de actualización del Philips Music-Module ya soporta esto. Tan sólo es cuestión de instalar una EPROM 27C512 y de configurar los jumpers adecuadamente. Para el Music-Module de Toshiba se requiere una pequeña modificación en la actualización
- Debido a que la ROM es más grande ya no hay soporte para el cartucho Panasonic FS-CA1. Si alguien modifica la placa de dicho cartucho para esta versión de la BIOS, quizás se contemple en versiones futuras de la BIOS (sólo si openMSX emula el cartucho FS-CA1 actualizado)
- Se ha eliminado el soporte OPL dual porque era lento, tenía errores y no añadía nuevos canales FM para que pudiesen utilizarse. Como contrapartida se han corregido muchas rutinas lo que permitirá en el futuro tener un verdadero soporte OPL-dual de 18 canales
- Ahora también hay soporte para OPL2 (YM3812) aunque no se ha presentado el binario ya que actualmente no hay ningún cartucho real (o emulado) que contenga dicho chip de sonido (y para cartuchos hechos en casa es mucho mejor montar un OPL3)
- Nuevas rutinas de detección del chip de sonido que se rigen estrictamente por el algoritmo recomendado por Yamaha
- Ahora detecta y soporta cualquiera de los chips de sonido OPL en la siguientes configuraciones de los puertos de E/S: puertos de E/S C0h-C1h o C2h-C3h para chips de sonido OPL1/OPL2 y puertos de E/S C0h-C3h o C4h-C7h para chips de sonido OPL3/OPL4
- Ahora se soportan las tablas de transporte/atenuación de estilo de MSX-Music. Cuando se invoca CALL MUSIC, el MSX-Audio bajará la el tope de RAM para asignar RAM a las estructuras necesarias para imitar la estructuras en la RAM de MSX-Music, proporcionando así mayor compatibilidad con la música BASIC FM que hace uso dePOKEs
- Otras ampliaciones MSX-Music presentes en una misma máquina se deshabilitarán cuando la BIOS reciba un CALL AUDIO o CALL MUSIC. Ello permitirá evitar conflictos en máquinas con MSX-Music interno en un slot inferior (como los Panasonic MSX2+/TR y CIEL Expert-Turbo)
- Corregido un error que informaba el canal de ritmo incorrectamente como si fuese un canal ADPCM
- Desplazadas varias rutinas de inicialización al frame-2 para liberar espacio para la nuevas rutinas en frame-1
- 0066h ahora llamará a HNMI para permitir la depuración de hardware real utilizando el NMI
- Soporte para máquinas Turbo Z80 de hasta 7MHz sin reloj de sistema
Enlace relacionado: Página MSX de FRS