diff --git a/Arcade_MiST/Namco Super Pacman Hardware/meta/Grobda.mra b/Arcade_MiST/Namco Super Pacman Hardware/meta/Grobda.mra
index 131de7d2..6d43617e 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/meta/Grobda.mra
+++ b/Arcade_MiST/Namco Super Pacman Hardware/meta/Grobda.mra
@@ -35,4 +35,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac n Pal.mra b/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac n Pal.mra
index ed332900..3e5b9171 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac n Pal.mra
+++ b/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac n Pal.mra
@@ -8,7 +8,7 @@
druaga
20210326
- 05
+ 07
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac-Man & Chomp Chomp.mra b/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac-Man & Chomp Chomp.mra
index ea9cf5c9..020f52ab 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac-Man & Chomp Chomp.mra
+++ b/Arcade_MiST/Namco Super Pacman Hardware/meta/Pac-Man & Chomp Chomp.mra
@@ -8,7 +8,7 @@
druaga
20210326
- 05
+ 07
@@ -44,7 +44,7 @@
-
+
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/TheTowerofDruaga_mist.sv b/Arcade_MiST/Namco Super Pacman Hardware/rtl/TheTowerofDruaga_mist.sv
index f515b416..3da56194 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/TheTowerofDruaga_mist.sv
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/TheTowerofDruaga_mist.sv
@@ -66,7 +66,7 @@ always @(*) begin
DSW2 = 0;
case (core_mod)
- 7'h0, 7'h1, 7'h3, 7'h6: // DRUAGA, DIGDUG2, GROBDA
+ 7'h0, 7'h1, 7'h3: // DRUAGA, DIGDUG2
begin
DSW0 = status[15:8];
DSW1 = status[23:16];
@@ -78,6 +78,13 @@ always @(*) begin
DSW1 = status[23:16];
DSW2 = { {2{status[27:24]}} };
end
+ 7'h6: // GROBDA
+ begin
+ DSW0 = status[15:8];
+ DSW1 = {status[23:22], m_fire2B, m_fireB, status[19:16]};
+ DSW2 = status[31:24];
+ end
+
default:
begin
DSW0 = status[15:8];
@@ -113,8 +120,6 @@ wire key_strobe;
wire key_pressed;
wire [7:0] key_code;
-// assign core_mod=7'd5;
-
user_io #(.STRLEN($size(CONF_STR)>>3))user_io(
.clk_sys (clock_48 ),
.conf_str (CONF_STR ),
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_sprite.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_sprite.v
index c3a9c0cc..4372a107 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_sprite.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_sprite.v
@@ -28,8 +28,7 @@ module DRUAGA_SPRITE
input FLIP_SCREEN
);
-parameter [2:0] SUPERPAC=3'd5;
-parameter [2:0] GROBDA=3'd6;
+`include "param.v"
reg [9:0] CLT1_A;
wire [3:0] CLT1_D;
@@ -92,7 +91,7 @@ always @(*) begin
(ox[1:0]==2'b01) ? { pn, SPCO[14], SPCO[10], SPCO[6], SPCO[2] } :
(ox[1:0]==2'b10) ? { pn, SPCO[13], SPCO[ 9], SPCO[5], SPCO[1] } :
{ pn, SPCO[12], SPCO[ 8], SPCO[4], SPCO[0] } ;
- if( MODEL == SUPERPAC || MODEL == GROBDA) begin // 2bpp
+ if( MODEL == SUPERPAC || MODEL == GROBDA || MODEL == PACNPAL) begin // 2bpp
CLT1_A[9:2]= { 2'd0, CLT1_A[9:4] };
end
end
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_video.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_video.v
index 9806e1ec..389c4fa3 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_video.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/druaga_video.v
@@ -35,8 +35,7 @@ module DRUAGA_VIDEO
input FLIP_SCREEN
);
-parameter [2:0] SUPERPAC=3'd5;
-parameter [2:0] GROBDA=3'd6;
+`include "param.v"
wire [8:0] HPOS = PH-8'd16;
wire [8:0] VPOS = PV;
@@ -91,11 +90,11 @@ always @ ( posedge VCLKx8 ) begin
end
-assign CLT0_A = BGPN ^ ( (MODEL==SUPERPAC || MODEL==GROBDA) ? 8'h0 : 8'h03 );
-assign VRAM_A = VRAMADRS & ( (MODEL==SUPERPAC || MODEL==GROBDA) ? 11'h3FF : 11'h7FF );
+assign CLT0_A = BGPN ^ ( (MODEL==SUPERPAC || MODEL==GROBDA || MODEL==PACNPAL) ? 8'h0 : 8'h03 );
+assign VRAM_A = VRAMADRS & ( (MODEL==SUPERPAC || MODEL==GROBDA || MODEL==PACNPAL) ? 11'h3FF : 11'h7FF );
wire BGHI = BGH & (CLT0_D!=4'd15);
-wire [4:0] BGCOL = { 1'b1, ((MODEL==SUPERPAC || MODEL==GROBDA) ? ~CLT0_D :CLT0_D) };
+wire [4:0] BGCOL = { 1'b1, ((MODEL==SUPERPAC || MODEL==GROBDA || MODEL==PACNPAL) ? ~CLT0_D :CLT0_D) };
always @(*) begin
COL = HPOS[8:3] ^ {5{FLIP_SCREEN}};
@@ -103,7 +102,7 @@ always @(*) begin
// rather than the original circuit count.
ROW = (VPOS[8:3] + 6'h2) ^ {5{FLIP_SCREEN}};
- if( MODEL==SUPERPAC || MODEL==GROBDA ) begin
+ if( MODEL==SUPERPAC || MODEL==GROBDA || MODEL==PACNPAL) begin
VRAMADRS = { 1'b0,
COL[5] ? {COL[4:0], ROW[4:0]} :
{ROW[4:0], COL[4:0]}
@@ -119,7 +118,7 @@ end
//----------------------------------------
wire [4:0] SPCOL;
-DRUAGA_SPRITE #(.SUPERPAC(SUPERPAC)) spr
+DRUAGA_SPRITE spr
(
VCLKx8, VCLK_EN,
HPOS, VPOS, oHB,
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/fpga_druaga.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/fpga_druaga.v
index 35468909..e5c5e675 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/fpga_druaga.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/fpga_druaga.v
@@ -41,8 +41,6 @@ module fpga_druaga
input FLIP_SCREEN
);
-parameter [2:0] SUPERPAC=3'd5;
-
// Clock Generator
reg [4:0] CLKS;
@@ -79,7 +77,7 @@ wire [10:0] vram_a;
wire [15:0] vram_d;
wire [6:0] spra_a;
wire [23:0] spra_d;
-MEMS #(.SUPERPAC(SUPERPAC)) mems
+MEMS mems
(
MCLK,
CLKCPUx2,
@@ -101,7 +99,7 @@ wire SCPU_IRQ, SCPU_IRQEN;
wire SCPU_RESET, IO_RESET;
wire PSG_ENABLE;
-REGS #(.SUPERPAC(SUPERPAC)) regs
+REGS regs
(
CLKCPUx2, RESET, oVB,
MCPU_ADRS, MCPU_VMA, MCPU_WE,
@@ -117,7 +115,7 @@ REGS #(.SUPERPAC(SUPERPAC)) regs
// I/O Controler
wire IsMOTOS;
-IOCTRL #(.SUPERPAC(SUPERPAC)) ioctrl(
+IOCTRL ioctrl(
CLKCPUx2, oVB, IO_RESET, MCPU_CS_IO, MCPU_WE, MCPU_ADRS[5:0],
MCPU_DO,
IO_O,
@@ -241,8 +239,7 @@ module MEMS
input [2:0] MODEL
);
-parameter [2:0] SUPERPAC=3'd5;
-parameter [2:0] GROBDA=3'd6;
+`include "param.v"
wire [7:0] mrom_d, srom_d;
//DLROM #(15,8) mcpui( CPUCLKx2, MCPU_ADRS[14:0], mrom_d, ROMCL,ROMAD[14:0],ROMDT,ROMEN & (ROMAD[16:15]==2'b0_0));
@@ -266,7 +263,7 @@ wire mrom_cs = ( MCPU_ADRS[15] ) & MCPU_VMA; // $8000-$FFFF
always @(*) begin
cram_ad = mram_ad;
- if( MODEL == SUPERPAC || MODEL == GROBDA) begin
+ if( MODEL == SUPERPAC || MODEL == GROBDA || MODEL == PACNPAL) begin
mram_cs0 = ( MCPU_ADRS[15:10] == 6'b000000 ) && MCPU_VMA; // $0000-$03FF
mram_cs1 = ( MCPU_ADRS[15:10] == 6'b000001 ) && MCPU_VMA; // $0400-$07FF
mram_cs2 = ( MCPU_ADRS[15:11] == 5'b00001 ) && MCPU_VMA; // $1000-$17FF
@@ -352,16 +349,14 @@ module REGS
input [2:0] MODEL
);
-parameter [2:0] SUPERPAC=3'd5;
-parameter [2:0] GROBDA=3'd6;
-
+`include "param.v"
// BG Scroll Register
wire MCPU_SCRWE = ( ( MCPU_ADRS[15:11] == 5'b00111 ) & MCPU_VMA & MCPU_WE );
always @ ( negedge MCPU_CLK or posedge RESET ) begin
if ( RESET ) SCROLL <= 8'h0;
else begin
- if( MODEL==SUPERPAC || MODEL==GROBDA)
+ if( MODEL==SUPERPAC || MODEL==GROBDA || MODEL==PACNPAL)
SCROLL <= 8'd0;
else if ( MCPU_SCRWE )
SCROLL <= MCPU_ADRS[10:3];
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl.v
index 3314d828..f3016847 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl.v
@@ -42,13 +42,12 @@ reg [9:0] pSTKTRG12;
reg [2:0] pCSTART12;
reg bUpdate;
-reg bIOMode;
-
-parameter [2:0] SUPERPAC=3'd5;
+reg [1:0] bIOMode;
+`include "param.v"
assign OUT = { 4'b1111, outr };
-assign IsMOTOS = bIOMode;
+assign IsMOTOS = bIOMode == 1;
// Detect falling edges:
wire [11:0] iSTKTRG12 = ( STKTRG12 ^ pSTKTRG12 ) & STKTRG12;
@@ -60,13 +59,13 @@ BCDCONV creditsBCD( credits, CREDIT_ONES, CREDIT_TENS );
always @ ( posedge CLK ) begin
if ( ENABLE ) begin
if ( ADRS[5] ) begin
- if ( WR ) memc[ADRS[4:0]] <= IN;
+ if ( WR ) memc[ADRS[4:0]] <= IN[3:0];
outr <= memc[ADRS[4:0]];
end else if ( ADRS[4] ) begin
- if ( WR ) memb[ADRS[3:0]] <= IN;
+ if ( WR ) memb[ADRS[3:0]] <= IN[3:0];
outr <= memb[ADRS[3:0]];
end else begin
- if ( WR ) mema[ADRS[3:0]] <= IN;
+ if ( WR ) mema[ADRS[3:0]] <= IN[3:0];
outr <= mema[ADRS[3:0]];
end
end
@@ -78,14 +77,28 @@ always @ ( posedge CLK ) begin
credits <= 0;
end else begin
if ( UPDATE & (~bUpdate) ) begin
- if ( mema[4'h8] == 4'h8 || MODEL==SUPERPAC )
- bIOMode <= 1'b1; // Is running "Motos" ?
+ if (MODEL == PACNPAL)
+ bIOMode <= 2'd3;
+ else if (MODEL == GROBDA)
+ bIOMode <= 2'd2;
+ else if ( mema[4'h8] == 4'h8 || MODEL==SUPERPAC)
+ bIOMode <= 2'd1; // Is running "Motos" ?
- if ( bIOMode ) begin
- `include "ioctrl_1.v"
+ if ( bIOMode == 3) begin
+ `include "ioctrl_1a.v"
+ `include "ioctrl_2b.v"
+ end
+ else if ( bIOMode == 2) begin
+ `include "ioctrl_0a.v"
+ `include "ioctrl_1b.v"
+ end
+ else if ( bIOMode == 1) begin
+ `include "ioctrl_1a.v"
+ `include "ioctrl_1b.v"
end
else begin
- `include "ioctrl_0.v"
+ `include "ioctrl_0a.v"
+ `include "ioctrl_0b.v"
end
pCSTART12 <= CSTART12;
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0a.v
similarity index 56%
rename from Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0.v
rename to Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0a.v
index f86ec387..d2a60bd7 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0a.v
@@ -12,21 +12,21 @@
if ( iCSTART12[2] & ( credits < 99 ) ) begin
credit_add = 8'h01;
- credits = credits + 1;
+ credits = credits + 1'd1;
end
if ( mema[4'h9] == 0 ) begin
if ( ( credits >= 2 ) & iCSTART12[1] ) begin
credit_sub = 8'h02;
- credits = credits - 2;
+ credits = credits - 2'd2;
end else if ( ( credits >= 1 ) & iCSTART12[0] ) begin
credit_sub = 8'h01;
- credits = credits - 1;
+ credits = credits - 1'd1;
end
end
mema[4'h0] <= credit_add;
- mema[4'h1] <= credit_sub | {7'd0,CSTART12[0]};
+ mema[4'h1] <= credit_sub | {3'd0,CSTART12[0]};
mema[4'h2] <= CREDIT_TENS;
mema[4'h3] <= CREDIT_ONES;
mema[4'h4] <= STKTRG12[3:0];
@@ -60,48 +60,3 @@
default:;
endcase
-
-
- case ( memb[4'h8] )
-
- 4'h1,4'h3: begin
- memb[4'h0] <= 0;
- memb[4'h1] <= 0;
- memb[4'h2] <= 0;
- memb[4'h3] <= 0;
- memb[4'h4] <= 0;
- memb[4'h5] <= 0;
- memb[4'h6] <= 0;
- memb[4'h7] <= 0;
- end
-
- 4'h4: begin
- memb[4'h0] <= DIPSW[11: 8]; // (P0) DSW1 Mappy
- memb[4'h1] <= DIPSW[15:12];
-
- memb[4'h2] <= DIPSW[ 3: 0]; // (P1) DSW0
- memb[4'h4] <= DIPSW[ 7: 4];
-
- memb[4'h5] <={DIPSW[15:14],STKTRG12[ 5],iSTKTRG12[ 5]}; // (P2) DSW1 Druaga/DigDug2
- memb[4'h6] <= DIPSW[23:20]; // IsMappy ? DIPSW[19:16] : DIPSW[11:8]
-
- memb[4'h7] <={DIPSW[19:18],STKTRG12[11],iSTKTRG12[11]}; // (P3) DSW2
-
- memb[4'h3] <= 0;
- end
-
- 4'h5: begin
- memb[4'h0] <= 4'h0;
- memb[4'h1] <= 4'h8;
- memb[4'h2] <= 4'h4;
- memb[4'h3] <= 4'h6;
- memb[4'h4] <= 4'hE;
- memb[4'h5] <= 4'hD;
- memb[4'h6] <= 4'h9;
- memb[4'h7] <= 4'hD;
- end
-
- default:;
-
- endcase
-
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0b.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0b.v
new file mode 100644
index 00000000..2a66fd66
--- /dev/null
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_0b.v
@@ -0,0 +1,49 @@
+//------------------------------------------
+// I/O Chip for "Mappy/Druaga/DigDug2"
+//
+// Copyright (c) 2007,19 MiSTer-X
+//------------------------------------------
+
+ case ( memb[4'h8] )
+
+ 4'h1,4'h3: begin
+ memb[4'h0] <= 0;
+ memb[4'h1] <= 0;
+ memb[4'h2] <= 0;
+ memb[4'h3] <= 0;
+ memb[4'h4] <= 0;
+ memb[4'h5] <= 0;
+ memb[4'h6] <= 0;
+ memb[4'h7] <= 0;
+ end
+
+ 4'h4: begin
+ memb[4'h0] <= DIPSW[11: 8]; // (P0) DSW1 Mappy
+ memb[4'h1] <= DIPSW[15:12];
+
+ memb[4'h2] <= DIPSW[ 3: 0]; // (P1) DSW0
+ memb[4'h4] <= DIPSW[ 7: 4];
+
+ memb[4'h5] <={DIPSW[15:14],STKTRG12[ 5],iSTKTRG12[ 5]}; // (P2) DSW1 Druaga/DigDug2
+ memb[4'h6] <= DIPSW[23:20]; // IsMappy ? DIPSW[19:16] : DIPSW[11:8]
+
+ memb[4'h7] <={DIPSW[19:18],STKTRG12[11],iSTKTRG12[11]}; // (P3) DSW2
+
+ memb[4'h3] <= 0;
+ end
+
+ 4'h5: begin
+ memb[4'h0] <= 4'h0;
+ memb[4'h1] <= 4'h8;
+ memb[4'h2] <= 4'h4;
+ memb[4'h3] <= 4'h6;
+ memb[4'h4] <= 4'hE;
+ memb[4'h5] <= 4'hD;
+ memb[4'h6] <= 4'h9;
+ memb[4'h7] <= 4'hD;
+ end
+
+ default:;
+
+ endcase
+
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1a.v
similarity index 75%
rename from Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1.v
rename to Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1a.v
index 1e78daeb..8f963e69 100644
--- a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1.v
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1a.v
@@ -25,21 +25,21 @@
if ( iCSTART12[2] & ( credits < 99 ) ) begin
credit_add = 8'h01;
- credits = credits + 1;
+ credits = credits + 1'd1;
end
if ( mema[4'h9] == 0 ) begin
if ( ( credits >= 2 ) && iCSTART12[1] ) begin
credit_sub = 8'h02;
- credits = credits - 2;
+ credits = credits - 2'd2;
end else if ( ( credits >= 1 ) && iCSTART12[0] ) begin
credit_sub = 8'h01;
- credits = credits - 1;
+ credits = credits - 1'd1;
end
end
mema[4'h0] <= credit_add;
- mema[4'h1] <= credit_sub | {7'd0,CSTART12[0]};
+ mema[4'h1] <= credit_sub | {3'd0,CSTART12[0]};
mema[4'h2] <= CREDIT_TENS;
mema[4'h3] <= CREDIT_ONES;
mema[4'h4] <= STKTRG12[3:0];
@@ -57,28 +57,3 @@
default:;
endcase
-
-
- case ( memb[4'h8] )
-
- 4'h8: begin
- memb[4'h0] <= 4'h6;
- memb[4'h1] <= 4'h9;
- end
-
- 4'h9: begin
- memb[4'h2] <= DIPSW[3:0];
- memb[4'h4] <= DIPSW[7:4];
- memb[4'h6] <= DIPSW[15:12];
-
- memb[4'h0] <= 0;
- memb[4'h1] <= 0;
- memb[4'h3] <= 0;
- memb[4'h5] <= 0;
- memb[4'h7] <= 0;
- end
-
- default:;
-
- endcase
-
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1b.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1b.v
new file mode 100644
index 00000000..335048c4
--- /dev/null
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_1b.v
@@ -0,0 +1,29 @@
+//------------------------------------------
+// I/O Chip for "Motos"
+// Namco 56xx
+//
+// Copyright (c) 2007,19 MiSTer-X
+//------------------------------------------
+ case ( memb[4'h8] )
+
+ 4'h8: begin
+ memb[4'h0] <= 4'h6;
+ memb[4'h1] <= 4'h9;
+ end
+
+ 4'h9: begin
+ memb[4'h2] <= DIPSW[3:0];
+ memb[4'h4] <= DIPSW[7:4];
+ memb[4'h6] <= DIPSW[15:12];
+
+ memb[4'h0] <= DIPSW[19:16];
+ memb[4'h1] <= DIPSW[23:20];
+ memb[4'h3] <= 0;
+ memb[4'h5] <= 0;
+ memb[4'h7] <= 0;
+ end
+
+ default:;
+
+ endcase
+
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_2b.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_2b.v
new file mode 100644
index 00000000..20db8bc5
--- /dev/null
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/ioctrl_2b.v
@@ -0,0 +1,25 @@
+//------------------------------------------
+// I/O Chip for "Pac & Pal"
+// Namco 59xx
+//
+// Copyright (c) 2007,19 MiSTer-X
+// Copyright (c) 2022 Slingshot
+//------------------------------------------
+ case ( memb[4'h8] )
+
+ 4'h3: begin
+ memb[4'h4] <= DIPSW[3:0]; //0
+ memb[4'h5] <= DIPSW[23:20]; //2
+ memb[4'h6] <= DIPSW[19:16]; //1
+ memb[4'h7] <= DIPSW[15:12]; //3
+
+ memb[4'h0] <= 0;
+ memb[4'h1] <= 0;
+ memb[4'h2] <= 0;
+ memb[4'h3] <= 0;
+ end
+
+ default:;
+
+ endcase
+
diff --git a/Arcade_MiST/Namco Super Pacman Hardware/rtl/param.v b/Arcade_MiST/Namco Super Pacman Hardware/rtl/param.v
new file mode 100644
index 00000000..dd871ffb
--- /dev/null
+++ b/Arcade_MiST/Namco Super Pacman Hardware/rtl/param.v
@@ -0,0 +1,3 @@
+localparam [2:0] SUPERPAC=3'd5;
+localparam [2:0] GROBDA=3'd6;
+localparam [2:0] PACNPAL=3'd7;
\ No newline at end of file