1
0
mirror of https://github.com/Gehstock/Mist_FPGA.git synced 2026-04-30 05:45:29 +00:00

Release Number Crash

This commit is contained in:
Marcel
2021-05-25 16:06:46 +02:00
parent 4e441dbd71
commit 715b318d71
3 changed files with 26 additions and 12 deletions

View File

@@ -159,7 +159,6 @@ set_global_assignment -name VHDL_FILE rtl/pacman_audio.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/GFX1.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/ROM_PGM_0.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/ROM_PGM_1.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/ROM_PGM_2.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/PROM7_DST.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/PROM4_DST.vhd
set_global_assignment -name VHDL_FILE rtl/ROM/PROM1_DST.vhd

View File

@@ -49,6 +49,11 @@ localparam CONF_STR = {
"V,v1.20.",`BUILD_DATE
};
wire rotate = status[2];
wire [1:0] scanlines = status[4:3];
wire blend = status[5];
assign LED = 1;
assign AUDIO_R = AUDIO_L;
@@ -119,7 +124,7 @@ mist_video #(.COLOR_DEPTH(3),.SD_HCNT_WIDTH(10)) mist_video(
.VGA_B(VGA_B),
.VGA_VS(VGA_VS),
.VGA_HS(VGA_HS),
.rotate({1'b1,status[2]}),
.rotate({1'b1,rotate}),
.scandoubler_disable(scandoublerD),
.scanlines(status[4:3]),
.ce_divider(1'b1),
@@ -139,8 +144,9 @@ user_io(
.SPI_MOSI (SPI_DI ),
.buttons (buttons ),
.switches (switches ),
.scandoubler_disable (scandoublerD ),
.scandoubler_disable (scandoublerD),
.ypbpr (ypbpr ),
.no_csync (no_csync ),
.key_strobe (key_strobe ),
.key_pressed (key_pressed ),
.key_code (key_code ),
@@ -169,8 +175,8 @@ arcade_inputs inputs (
.key_code ( key_code ),
.joystick_0 ( joystick_0 ),
.joystick_1 ( joystick_1 ),
.rotate ( status[2] ),
.orientation ( 2'b10 ),
.rotate ( rotate ),
.orientation ( 2'b11 ),
// .joyswap ( 1'b0 ),
.oneplayer ( 1'b1 ),
.controls ( {m_tilt, m_coin4, m_coin3, m_coin2, m_coin1, m_four_players, m_three_players, m_two_players, m_one_player} ),

View File

@@ -132,7 +132,7 @@ architecture RTL of pacmant is
-- watchdog
signal watchdog_cnt : std_logic_vector(3 downto 0);
signal watchdog_reset_l : std_logic;
signal freeze : std_logic;
-- signal freeze : std_logic;
begin
@@ -205,10 +205,18 @@ begin
--
-- cpu
--
p_cpu_wait_comb : process(freeze, sync_bus_wreq_l)
-- p_cpu_wait_comb : process(freeze, sync_bus_wreq_l)
-- begin
-- cpu_wait_l <= '1';
-- if (freeze = '1') or (sync_bus_wreq_l = '0') then
-- cpu_wait_l <= '0';
-- end if;
-- end process;
p_cpu_wait_comb : process(sync_bus_wreq_l)
begin
cpu_wait_l <= '1';
if (freeze = '1') or (sync_bus_wreq_l = '0') then
if (sync_bus_wreq_l = '0') then
cpu_wait_l <= '0';
end if;
end process;
@@ -234,7 +242,8 @@ begin
watchdog_cnt <= "1111";
elsif (iodec_wdr_l = '0') then
watchdog_cnt <= "0000";
elsif rising_vblank and (freeze = '0') then
-- elsif rising_vblank and (freeze = '0') then
elsif rising_vblank then
watchdog_cnt <= watchdog_cnt + "1";
end if;
@@ -466,11 +475,11 @@ begin
-- 0 interrupt ena
-- 1 sound ena
-- 2 not used
-- 3 flip
-- 3 not used
-- 4 1 player start lamp
-- 5 2 player start lamp
-- 6 coin lockout
-- 7 coin counter
-- 7 not used
wait until rising_edge(clk);
if (ena_6 = '1') then
@@ -522,7 +531,7 @@ begin
elsif (sync_bus_wreq_l = '0') then
cpu_data_in <= sync_bus_reg;
else
if (cpu_addr(15 downto 14) <= "00") then -- ROM at 0000
if (cpu_addr(15 downto 14) <= "00") then -- ROM at 0000 - 3fff
cpu_data_in <= program_rom_dinl;
elsif(cpu_addr(15 downto 13) = "100") then -- ROM at 8000 - 9fff
cpu_data_in <= program_rom_din2;