On the 2nd of August, I took on the challenge of extracting the full schematics of an arcade PCB. I had normally worked on systems with schematics available, but that was a big limitation. Most arcade games don't have schematics published. Of course, you could check what emulators do, but we are not here to port emulators. We are here to recreate the original systems in new hardware.
Exed Exes was one of the old CAPCOM games missing a conversion. I had the board but no schematics. It's a two-deck board, very large, but I knew it would be similar to other games of the same era. So I started the conversion and got hooked to it. I couldn't stop joining chips and drawing schematics.
I discovered the MAME version was quite well done indeed. It misses a few hardware features. Although, not all of them seem used by the game. These are some of the differences between the hardware (FPGA core) and MAME:
-CPU/GPU bus sharing with accurate delays
-Sprites handled by a DMA that slows down the main CPU
-Graphics priority handled as the original PROMs indicate
-Global palette registers and scroll/OBJ palette pseudo multiplexer
-CPU interrupts are generated at specific lines -including the audio CPU
Once the schematics were quite advanced, I could not resist starting the FPGA core, and here you have it. Find the files attached or use the update_all script if you are a MiSTer user.
I go back now to work on System16 after this brief break. See you next week!
Español
El 2 de agosto, asumí el desafío de extraer los diagramas esquemáticos completos de una placa arcade. Normalmente había trabajado en sistemas con esquemas disponibles, pero esa era una gran limitación. La mayoría de los juegos de arcade no tienen esquemas publicados. Por supuesto, puedes ver lo que hacen los emuladores, pero no estamos aquí para portar emuladores. Estamos aquí para recrear los sistemas originales en hardware moderno.
Exed Exes era uno de los viejos juegos de CAPCOM al que le faltaba una conversión FPGA. Tenía la placa pero no esquemas. Es una placa de doble, muy grande, pero sabía que sería similar a otros juegos de la misma época. Así que comencé la conversión y me enganché. No podía dejar de unir chips y dibujar esquemas.
Descubrí que la versión de MAME estaba bastante bien hecha. Faltan algunas características de hardware. Aunque, no todas parecen utilizadas por el juego. Estas son algunas de las diferencias entre el hardware (FPGA) y MAME:
-Compartición de bus de CPU / GPU con retrasos precisos
-Sprites manejados por un DMA que ralentiza la CPU principal
-La prioridad de los gráficos se maneja como indican las PROM originales
-Registros de paleta global y pseudo multiplexor de paleta de desplazamiento / OBJ
-Las interrupciones de la CPU se generan en líneas específicas -incluida la CPU de audio
Una vez que los esquemas estaban bastante avanzados, no pude resistirme a comenzar el núcleo FPGA, y aquí lo tenéis. Usa los archivos adjuntos o el script update_all si eres usuario de MiSTer.
Vuelvo al trabajo en System16 después de este paréntesis. ¡Te veo la proxima semana!
David Filskov
2021-08-16 07:02:57 +0000 UTCMatt McColley
2021-08-14 09:18:00 +0000 UTC