1
0
mirror of https://github.com/Gehstock/Mist_FPGA.git synced 2026-01-22 10:21:02 +00:00

IremM62: add Lot Lot (but wrong, 12x10 tiles?)

This commit is contained in:
Gyorgy Szombathelyi 2020-03-07 21:41:10 +01:00
parent c51a739fdb
commit 598500d7bd
5 changed files with 141 additions and 3 deletions

View File

@ -0,0 +1,131 @@
<misterromdescription>
<name>Lot Lot</name>
<mameversion>0216</mameversion>
<setname>lotlot</setname>
<manufacturer>Irem</manufacturer>
<rbf>iremm62</rbf>
<rom index="1"><part>8</part></rom>
<rom index="0" zip="lotlot.zip" md5="dbd20cd8f5d2555911090e62e4621920" type="merged|nonmerged">
<!-- CPU1, 128k -->
<part name="lot-a-4e"/>
<part name="lot-a-4d"/>
<part name="lot-a-4e"/>
<part name="lot-a-4d"/>
<part name="lot-a-4e"/>
<part name="lot-a-4d"/>
<part name="lot-a-4e"/>
<part name="lot-a-4d"/>
<!-- SND CPU2, 64k -->
<part repeat="8" name="lot-a-3h"/>
<!-- GFX1, 128k -->
<group width="32">
<part name="lot-k-4a"/>
<part name="lot-k-4c"/>
<part name="lot-k-4b"/>
<part name="lot-k-4b"/>
</group>
<group width="32">
<part name="lot-k-4a"/>
<part name="lot-k-4c"/>
<part name="lot-k-4b"/>
<part name="lot-k-4b"/>
</group>
<group width="32">
<part name="lot-k-4a"/>
<part name="lot-k-4c"/>
<part name="lot-k-4b"/>
<part name="lot-k-4b"/>
</group>
<group width="32">
<part name="lot-k-4a"/>
<part name="lot-k-4c"/>
<part name="lot-k-4b"/>
<part name="lot-k-4b"/>
</group>
<!-- GFX2, 256k -->
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<group width="32">
<part name="lot-b-4k"/>
<part name="lot-b-3n"/>
<part name="lot-b-4c"/>
<part name="lot-b-4c"/>
</group>
<!-- GFX3, 64k -->
<group width="32">
<part name="lot-k-4p"/>
<part name="lot-k-4l"/>
<part name="lot-k-4n"/>
<part name="lot-k-4n"/>
</group>
<group width="32">
<part name="lot-k-4p"/>
<part name="lot-k-4l"/>
<part name="lot-k-4n"/>
<part name="lot-k-4n"/>
</group>
<!-- spr_color_proms, 3*256b -->
<part name="lot-b-1m"/>
<part name="lot-b-1n"/>
<part name="lot-b-1l"/>
<!-- chr_color_proms, 3*256b -->
<part name="lot-k-2f"/>
<part name="lot-k-2e"/>
<part name="lot-k-2d"/>
<!-- fg_color_proms, 3*256b -->
<part name="lot-k-2l"/>
<part name="lot-k-2k"/>
<part name="lot-k-2j"/>
<!-- spr_height_prom -->
<part name="lot-b-5p"/>
</rom>
</misterromdescription>

View File

@ -214,11 +214,13 @@ begin
STD_MATCH(cpu_a, X"D"&"-----------1") else
'0';
-- Text RAM $C800-$CFFF, ($D000-$DFFF - KIDNIKI)
-- Text RAM $C800-$CFFF - BATTROAD, $D000-$DFFF - KIDNIKI, $A000-$AFFF - LOTLOT
textram_cs <= '1' when hwsel = HW_BATTROAD and
cpu_a(15 downto 11) = x"C"&'1' else
'1' when hwsel = HW_KIDNIKI and
cpu_a(15 downto 12) = x"D" else
'1' when hwsel = HW_LOTLOT and
cpu_a(15 downto 12) = x"A" else
'0';
-- RAM $E000-$EFFF
@ -456,6 +458,10 @@ begin
m62_vscroll2 <= (others => '0');
m62_topbottom_mask <= '0';
elsif rising_edge(clk_sys) then
if hwsel = HW_LOTLOT then
m62_hscroll <= std_logic_vector(to_signed(-64, m62_hscroll'length));
m62_vscroll <= std_logic_vector(to_unsigned(32, m62_vscroll'length));
end if;
if cpu_clk_en = '1' and cpu_mem_wr = '1' then
case cpu_a is
when X"A000" =>

View File

@ -17,6 +17,7 @@ package platform_variant_pkg is
constant HW_HORIZON : integer := 5;
constant HW_BATTROAD : integer := 6;
constant HW_KIDNIKI : integer := 7;
constant HW_LOTLOT : integer := 8;
type rom_a is array (natural range <>) of string;

View File

@ -75,7 +75,7 @@ architecture SYN of target_top is
begin
hires <= '1' when hwsel = HW_LDRUN or hwsel = HW_LDRUN2 or hwsel = HW_LDRUN3 or hwsel = HW_LDRUN4 or hwsel = HW_KIDNIKI else '0';
hires <= '1' when hwsel = HW_LDRUN or hwsel = HW_LDRUN2 or hwsel = HW_LDRUN3 or hwsel = HW_LDRUN4 or hwsel = HW_KIDNIKI or hwsel= HW_LOTLOT else '0';
process(clock_sys) begin
if rising_edge(clock_sys) then

View File

@ -112,7 +112,7 @@ begin
if x(2 downto 0) = "100" then
attr_d_r := ctl_i.attr_d(7 downto 0);
if hwsel = HW_KUNGFUM or
--hwsel = LOTLOT or
hwsel = HW_LOTLOT or
hwsel = HW_LDRUN or
hwsel = HW_LDRUN2 or
hwsel = HW_BATTROAD