From 178ce5d47bc593cb600b3dac40cc28dae85f6cde Mon Sep 17 00:00:00 2001 From: Gyorgy Szombathelyi Date: Tue, 18 Feb 2020 20:43:40 +0100 Subject: [PATCH] Journey: fix ypbpr, add MRA --- .../Midway MCR 2/Journey_MiST/README.txt | 9 ++- .../Journey_MiST/meta/Journey.mra | 34 +++++++++++ .../Journey_MiST/rtl/Journey_MiST.sv | 57 ++++++++++--------- 3 files changed, 71 insertions(+), 29 deletions(-) create mode 100644 Arcade_MiST/Midway MCR 2/Journey_MiST/meta/Journey.mra diff --git a/Arcade_MiST/Midway MCR 2/Journey_MiST/README.txt b/Arcade_MiST/Midway MCR 2/Journey_MiST/README.txt index a3d4e32e..b7d5620b 100644 --- a/Arcade_MiST/Midway MCR 2/Journey_MiST/README.txt +++ b/Arcade_MiST/Midway MCR 2/Journey_MiST/README.txt @@ -4,8 +4,13 @@ -- 03 January 2020 -- -- TV 15kHz interlaced / VGA --- JOURNEY.ROM required --- cat d2 d3 d4 d5 d6 a b c d g3 g4 a7 a8 a5 a6 a3 a4 a1 a2 > JOURNEY.ROM +-- +-- Create JOURNEY.ROM from MAME ROM zip files using the mra utility and the MRA file. +-- Example: mra -z /path/to/mame/roms Journey.mra +-- Copy the RBF to the SD Card. +-- Copy the ROM files to the root of the SD Card. +-- +-- MRA utilty: https://github.com/sebdel/mra-tools-c -- -- Based on Kickman/Timber by Dar --------------------------------------------------------------------------------- diff --git a/Arcade_MiST/Midway MCR 2/Journey_MiST/meta/Journey.mra b/Arcade_MiST/Midway MCR 2/Journey_MiST/meta/Journey.mra new file mode 100644 index 00000000..c508429d --- /dev/null +++ b/Arcade_MiST/Midway MCR 2/Journey_MiST/meta/Journey.mra @@ -0,0 +1,34 @@ + + Journey + 0216 + 201912310000 + 1984 + Bally Midway + Action + MCR3 + journey + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Arcade_MiST/Midway MCR 2/Journey_MiST/rtl/Journey_MiST.sv b/Arcade_MiST/Midway MCR 2/Journey_MiST/rtl/Journey_MiST.sv index a5d5c542..1762f856 100644 --- a/Arcade_MiST/Midway MCR 2/Journey_MiST/rtl/Journey_MiST.sv +++ b/Arcade_MiST/Midway MCR 2/Journey_MiST/rtl/Journey_MiST.sv @@ -89,14 +89,33 @@ wire [7:0] joystick_0; wire [7:0] joystick_1; wire scandoublerD; wire ypbpr; -wire [15:0] audio_l, audio_r; -wire hs, vs, cs; -wire blankn; -wire [2:0] g, r, b; +wire no_csync; wire key_pressed; wire [7:0] key_code; wire key_strobe; +user_io #( + .STRLEN(($size(CONF_STR)>>3))) +user_io( + .clk_sys (clk_sys ), + .conf_str (CONF_STR ), + .SPI_CLK (SPI_SCK ), + .SPI_SS_IO (CONF_DATA0 ), + .SPI_MISO (SPI_DO ), + .SPI_MOSI (SPI_DI ), + .buttons (buttons ), + .switches (switches ), + .scandoubler_disable (scandoublerD ), + .ypbpr (ypbpr ), + .no_csync (no_csync ), + .key_strobe (key_strobe ), + .key_pressed (key_pressed ), + .key_code (key_code ), + .joystick_0 (joystick_0 ), + .joystick_1 (joystick_1 ), + .status (status ) + ); + wire [15:0] rom_addr; wire [15:0] rom_do; wire [13:0] snd_addr; @@ -193,6 +212,11 @@ always @(posedge clk_sys) begin end +wire [15:0] audio_l, audio_r; +wire hs, vs, cs; +wire blankn; +wire [2:0] g, r, b; + journey journey( .clock_40(clk_sys), .reset(reset), @@ -227,8 +251,8 @@ journey journey( wire vs_out; wire hs_out; -assign VGA_VS = scandoublerD | vs_out; -assign VGA_HS = scandoublerD ? cs : hs_out; +assign VGA_HS = (~no_csync & scandoublerD & ~ypbpr)? cs : hs_out; +assign VGA_VS = (~no_csync & scandoublerD & ~ypbpr)? 1'b1 : vs_out; mist_video #(.COLOR_DEPTH(3), .SD_HCNT_WIDTH(10)) mist_video( .clk_sys ( clk_sys ), @@ -254,27 +278,6 @@ mist_video #(.COLOR_DEPTH(3), .SD_HCNT_WIDTH(10)) mist_video( .ypbpr ( ypbpr ) ); -user_io #( - .STRLEN(($size(CONF_STR)>>3))) -user_io( - .clk_sys (clk_sys ), - .conf_str (CONF_STR ), - .SPI_CLK (SPI_SCK ), - .SPI_SS_IO (CONF_DATA0 ), - .SPI_MISO (SPI_DO ), - .SPI_MOSI (SPI_DI ), - .buttons (buttons ), - .switches (switches ), - .scandoubler_disable (scandoublerD ), - .ypbpr (ypbpr ), - .key_strobe (key_strobe ), - .key_pressed (key_pressed ), - .key_code (key_code ), - .joystick_0 (joystick_0 ), - .joystick_1 (joystick_1 ), - .status (status ) - ); - dac #( .C_bits(16)) dac_l(