Porter

User avatar
pgimeno
Top Contributor
Posts: 669
Joined: Thu Jun 11, 2020 9:44 am
Has thanked: 246 times
Been thanked: 208 times

Porter

Unread post by pgimeno »

Porter is a bootleg of Dock Man / Port Man, modified to run on Moon Cresta hardware (the original runs on The Pit hardware, which I believe we don't have a core for). Indeed the colours are off and the sound effects are similar to those of Moon Cresta, if not identical (sometimes making you chuckle).

The question is, what is needed to make it run? Just a MRA? Modifying the Moon Cresta core? A new core? I've taken a look and it seems that it uses more ROM space than Moon Cresta, which might be a problem if the core is not prepared for that, I don't know. Also I haven't found a specification of MRA, so I have no idea how to create an MRA that can deal with these ROMs.
User avatar
jimmystones
Core Developer
Posts: 216
Joined: Sun Nov 22, 2020 1:26 pm
Location: Reading, UK
Has thanked: 32 times
Been thanked: 248 times
Contact:

Re: Porter

Unread post by jimmystones »

There is some documentation on the MRA format here:
https://github.com/MiSTer-devel/Main_Mi ... -MRA-files

I'll be the first to admit it is not straightforward to understand though!

Moon Cresta runs on the Galaxian core, and that would probably need some minor modifications at the very least for Portman to work properly. Usually some custom code is needed to pass the DIP switches and other inputs in the right format for each game for example - but it might work if you use the same setup as Moon Cresta if you are lucky, who knows!
User avatar
pgimeno
Top Contributor
Posts: 669
Joined: Thu Jun 11, 2020 9:44 am
Has thanked: 246 times
Been thanked: 208 times

Re: Porter

Unread post by pgimeno »

Alas, it doesn't work. It needs more ROM space. Apparently the core assumes that the ROM takes 16K and gfx memory starts right after the first 16K. However, Porter needs 20K of ROM.

If the core allowed 32K of ROM, I think this could work:

Code: Select all

<misterromdescription>
	<name>Porter</name>
	<region></region>
	<homebrew>no</homebrew>
	<bootleg>yes</bootleg>
	<version>Moon Cresta Hardware</version>
	<alternative></alternative>
	<platform></platform>
	<series></series>
	<year>1982</year>
	<manufacturer>Bootleg</manufacturer>
	<category>Shooter - Gallery</category>

	<setname>porter</setname>
	<parent>porter</parent>
	<mameversion>0220</mameversion>
	<rbf>galaxian</rbf>
	<about></about>

	<resolution>15kHz</resolution>
	<rotation>vertical (ccw)</rotation>
	<flip>yes</flip>

	<players>2 (alternating)</players>
	<joystick>2-way horizontal</joystick>
	<special_controls></special_controls>
	<num_buttons>1</num_buttons>
	<button_names></button_names>

	<buttons default="A,Start,Select,R,B,L" names="Fire,Start 1P,Start 2P,Coin,Test,Pause"></buttons>

	<switches default="1F,5F,04">
		<dip bits="14" ids="2c/1cr,1c/1cr" name="Coinage"></dip>
		<dip bits="16" ids="30000,50000" name="Bonus Life After"></dip>
		<dip bits="19" ids="Upright,Cocktail" name="Cabinet"></dip>
	</switches>

	<rom index="1">
		<part>01</part>
	</rom>
	<rom index="0" md5="abd1d6477749713797d44d6425642e58" zip="mooncrst.zip|mooncrgx.zip">
		<!-- Z80 ROM -->
		<part crc="babaf7fe" name="port1.bin" offset="0" length="2048"/>
		<part crc="8f7eb0e3" name="port2.bin" offset="0" length="2048"/>
		<part crc="683939b5" name="port3.bin" offset="0" length="2048"/>
		<part crc="6a65d58d" name="port4.bin" offset="0" length="2048"/>
		<part crc="babaf7fe" name="port1.bin" offset="2048" length="2048"/>
		<part crc="8f7eb0e3" name="port2.bin" offset="2048" length="2048"/>
		<part crc="683939b5" name="port3.bin" offset="2048" length="2048"/>
		<part crc="6a65d58d" name="port4.bin" offset="2048" length="2048"/>
		<part crc="2978a9aa" name="port5.bin"/>
		<part crc="7ecdffb5" name="port6.bin"/>
		<!-- Pad to 32K -->
		<part repeat="12288">00</part>
		<!-- GFX ROM -->
		<part crc="603294f9" name="port7.bin"/>
		<part crc="b66a763d" name="port8.bin"/>
		<!-- PROM -->
		<part crc="6a0c7d87" name="mmi6331.6l"/>
	</rom>
	<rom index="2"></rom>
	<rom index="3" md5="none">
		<part>
		00 00 00 48 00 00 00 02 00 02 00 08 00 FF 02 00
		00 00 40 42 00 54 00 24
		</part>
	</rom>
	<nvram index="4" size="84"/>

	<remark></remark>

	<mratimestamp>20210430005030</mratimestamp>
</misterromdescription>
Post Reply