mirror of
https://github.com/Gehstock/Mist_FPGA.git
synced 2026-01-20 09:44:38 +00:00
Segasys1: controls for Water Match
This commit is contained in:
parent
8ad920fb32
commit
6e4c37faae
@ -7,14 +7,16 @@
|
||||
<manufacturer>Sega</manufacturer>
|
||||
<category>Sport</category>
|
||||
<rbf>segasys1</rbf>
|
||||
<switches default="FF,7E" base="8">
|
||||
<dip bits="9,10" name="Lives" ids="Infinite,5,4,3"/>
|
||||
<dip bits="11,13" name="Bonus at" ids="Never,90k,80k,70k,60k,50k,40k,30k"/>
|
||||
<switches default="FF,7E" base="8">
|
||||
<dip bits="8" name="Cabinet" ids="Upright,Cocktail"/>
|
||||
<dip bits="9" name="Demo Sounds" ids="On,Off"/>
|
||||
<dip bits="10,11" name="Time" ids="Fastest,Faster,Fast,Normal"/>
|
||||
<dip bits="14" name="Difficulty" ids="Hard,Easy"/>
|
||||
</switches>
|
||||
<rom index="1">
|
||||
<part>06</part>
|
||||
<part>0E</part>
|
||||
</rom>
|
||||
<rom index="0" zip="wmatch.zip" md5="08e27ac5ddafccaccaef721cdade2ec2" type="merged|nonmerged|split">
|
||||
<rom index="0" zip="wmatch.zip" md5="1b67822537b11d05b6252d118ffbf985" type="merged|nonmerged|split">
|
||||
<part name="wm.129"/>
|
||||
<part name="wm.130"/>
|
||||
<part name="wm.131"/>
|
||||
@ -46,17 +46,23 @@ wire rotate = status[2];
|
||||
wire [1:0] scanlines = status[4:3];
|
||||
wire blend = status[5];
|
||||
|
||||
wire [7:0] INP0 = ~{m_left, m_right,m_up, m_down,1'b0,m_fireB,m_fireA,m_fireC};
|
||||
wire [7:0] INP1 = ~{m_left2,m_right2,m_up2, m_down2,1'b0,m_fire2B,m_fire2A,m_fire2C};
|
||||
wire [7:0] INP2 = ~{2'b00,m_two_players, m_one_player,3'b000, m_coin1};
|
||||
//WaterMatch
|
||||
//wire [7:0] INP0 = ~{m_left, m_right,m_up, m_down,m_left2, m_right2,m_up2, m_down2};
|
||||
//wire [7:0] INP1 = ~{m_left3, m_right3,m_up3, m_down3,m_left4, m_right4,m_up4, m_down4};
|
||||
//wire [7:0] INP2 = ~{m_fire2C,m_fireC,m_two_players, m_one_player,3'b000, m_coin1};
|
||||
reg [7:0] INP0, INP1, INP2;
|
||||
always @(*) begin
|
||||
INP0 = ~{m_left, m_right,m_up, m_down,1'b0,m_fireB,m_fireA,m_fireC};
|
||||
INP1 = ~{m_left2,m_right2,m_up2, m_down2,1'b0,m_fire2B,m_fire2A,m_fire2C};
|
||||
INP2 = ~{2'b00,m_two_players, m_one_player,3'b000, m_coin1};
|
||||
if (core_mod[3]) begin
|
||||
//WaterMatch
|
||||
INP0 = ~{m_left, m_right, m_up, m_down, m_left2,m_right2,m_up2,m_down2};
|
||||
INP1 = ~{m_left3,m_right3,m_up3,m_down3,m_left4,m_right4,m_up4,m_down4};
|
||||
INP2 = ~{m_fire3A | m_fire4A,m_fireA | m_fire2A,m_two_players, m_one_player,3'b000, m_coin1};
|
||||
end
|
||||
end
|
||||
|
||||
wire [7:0] DSW0 = status[15: 8];
|
||||
wire [7:0] DSW1 = status[23:16];
|
||||
|
||||
wire [6:0] core_mod; // [0]=SYS1/SYS2,[1]=H/V,[2]=H256/H240
|
||||
wire [6:0] core_mod; // [0]=SYS1/SYS2,[1]=H/V,[2]=H256/H240,[3]=4controllers
|
||||
wire [1:0] orientation = { 1'b0, core_mod[1] };
|
||||
|
||||
assign LED = ~ioctl_downl;
|
||||
@ -78,6 +84,8 @@ wire [1:0] buttons;
|
||||
wire [1:0] switches;
|
||||
wire [7:0] joystick_0;
|
||||
wire [7:0] joystick_1;
|
||||
wire [7:0] joystick_2;
|
||||
wire [7:0] joystick_3;
|
||||
wire key_pressed;
|
||||
wire key_strobe;
|
||||
wire [7:0] key_code;
|
||||
@ -295,7 +303,7 @@ arcade_inputs inputs (
|
||||
.rotate ( rotate ),
|
||||
.orientation ( orientation ),
|
||||
.joyswap ( 1'b0 ),
|
||||
.oneplayer ( 1'b1 ),
|
||||
.oneplayer ( ~core_mod[3]),
|
||||
.controls ( {m_tilt, m_coin4, m_coin3, m_coin2, m_coin1, m_four_players, m_three_players, m_two_players, m_one_player} ),
|
||||
.player1 ( {m_fireF, m_fireE, m_fireD, m_fireC, m_fireB, m_fireA, m_up, m_down, m_left, m_right} ),
|
||||
.player2 ( {m_fire2F, m_fire2E, m_fire2D, m_fire2C, m_fire2B, m_fire2A, m_up2, m_down2, m_left2, m_right2} ),
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user