Home Artists Posts Import Register

Downloads

Content

Español abajo

Arcade video games have three types of sound sources:

  1. Square/triangular waveforms at different frequencies: PSG sound (1942, Exed Exes, Kicker, Track'n Field...)
  2. Sine waves modulating other sine waves in frequency: FM sound (Street Fighter 2, Shinobi, Out Run...)
  3. Digitised sounds: PCM sound (Drums in Out Run, the title song in Teenage Mutant Turtles...)

All these sound sources are produced digitally. We can  reproduce that generation with complete accuracy. But, there is a  digital to analog conversion before the speaker. Details of this  conversion are typically ignored in emulators or FPGA implementations.

First, for PSG and FM sound sources, there is an aliasing  problem due to resampling the audio at 48kHz (both in MiSTer HDMI and  Analogue Pocket). This occurs because the transition from one digital  value to the next assumes a specific analog signal appearance, which  depends on the sampling rate. This artifact is usually small, though,  particularly for FM chips whose sampling frequency is often above 48kHz.

Second, for PCM sound sources, the sampling rate is  typically very far from 48kHz. Values such as 4 and 8kHz are common.  Unless a filter is applied, the original signal will have ghost versions of itself at higher frequencies (known as aliasing). This  effect makes the sound more metallic. Unfortunately, many of us now  remember the metallic sounds of emulation more than the original sounds.

The arcade boards did have analog filters to prevent  aliasing. These filters were in most cases simple first-order RC  filters, which did not provide much attenuation and did not completely  remove the aliasing. Some boards, like SEGA System 16, had second-order  filters and were more effective at removing it.

With the help of Artemio, we have been looking at the  effect of the CAPCOM CPS filter at 770 Hz. Although the quest is not  over, I have understood the limitations of the previous approach and I  am working towards a more accurate replica of the filter.

I have also spent a week preparing old cores for having filter information added. We are now going system by system, collecting the filter information from PCBs and schematics so we can apply it to the cores. We will have a massive core update soon that will change how PCM sound feels in all cores.

Other Updates

  • New beta core for Pocket: 1943
  • 1942 for Pocket promoted to public core
  • The NewZealand Story, the version sporting three Z80 CPUs is now supported and becomes the default one. The game Kabuki Z in the same core, is almost ready for prime time. Stay tuned for more news on it.
  • Fixed Black Tiger logo remaining visible when it should not, reported by BMF54123
  • Problem with Out Run screen visible while updating is solved, reported by theenemy-thd
  • FX volume in Section Z/Legendary Wings reduced by 3dB to improve music-FX balance

Español

Los videojuegos arcade tienen tres tipos de fuentes de sonido:

  1. Formas de onda cuadradas/triangulares a diferentes frecuencias: Sonido PSG (1942, Exed Exes, Kicker, Track'n Field...)
  2. Ondas sinusoidales que modulan otras ondas sinusoidales en frecuencia: Sonido FM (Street Fighter 2, Shinobi, Out Run...)
  3. Sonidos digitalizados: Sonido PCM (la batería de Out Run, la canción principal de Teenage Mutant Turtles...).

Todas estas fuentes de sonido se producen digitalmente.  Podemos reproducir esa generación con total exactitud. Pero, hay una  conversión de digital a analógico antes del altavoz. Los detalles de  esta conversión se suelen ignorar en los emuladores o en las  implementaciones FPGA.

En primer lugar, para las fuentes de sonido PSG y FM,  existe un problema de aliasing debido al remuestreo del audio a 48kHz  (tanto en MiSTer HDMI como en Analogue Pocket). Esto ocurre porque la  transición de un valor digital al siguiente asume una apariencia de  señal analógica específica, que depende de la frecuencia de muestreo.  Sin embargo, este artefacto suele ser pequeño, sobre todo en el caso de  los chips FM, cuya frecuencia de muestreo suele ser superior a 48 kHz.

En segundo lugar, en el caso de las fuentes de sonido PCM,  la frecuencia de muestreo suele estar muy lejos de los 48kHz. Valores  como 4 y 8kHz son habituales. A menos que se aplique un filtro, la señal  original tendrá versiones fantasma de sí misma a frecuencias  más altas (lo que se conoce como aliasing). Este efecto hace que el  sonido sea más metálico. Por desgracia, muchos de nosotros recordamos  ahora más los sonidos metálicos de la emulación que los sonidos  originales.

Las placas arcade tenían filtros analógicos para evitar el  aliasing. Estos filtros eran en la mayoría de los casos simples filtros  RC de primer orden, que no proporcionaban mucha atenuación y no  eliminaban completamente el aliasing. Algunas placas, como la SEGA  System 16, tenían filtros de segundo orden y eran más eficaces a la hora  de eliminarlo.

Con la ayuda de Artemio, hemos estado observando el efecto  del filtro el sistema CAPCOM CPS a 770 Hz. Aunque la investigación no  ha terminado, he comprendido las limitaciones del enfoque anterior y  estoy trabajando para conseguir una réplica más exacta del filtro.

También he pasado una semana preparando núcleos antiguos para poder añadirles información sobre el filtrado. Ahora vamos sistema por sistema, recopilando la información del filtro de las placas de circuito impreso y los esquemas para poder aplicarla a los núcleos. Pronto tendremos una actualización  masiva de los núcleos que cambiará la sensación de sonido PCM en todos  los núcleos.

Otras actualizaciones

  • Nuevo núcleo beta para Pocket: 1943
  • 1942 para Pocket promocionado a núcleo público
  • The NewZealand Story, la versión con tres CPUs Z80 está ahora soportada y se convierte en la predeterminada. El juego Kabuki Z en el mismo núcleo, está casi listo para salir al ruedo. Permanece atento para más noticias sobre él.
  • Arreglado el logo de Black Tiger que permanecía visible cuando no debería, reportado por BMF54123
  • El problema con la pantalla de Out Run visible mientras se actualiza está resuelto, reportado por theenemy-thd
  • Volumen de FX en la Sección Z/Legendary Wings reducido en 3dB para mejorar el balance música-FX

Files

Comments

Alessandro Bertolotti

Outrun still have problem! I do not see the car again with this update

Tony Vo

Will you join replay2? Or only mister fpga ?