mirror of
https://github.com/holub/mame
synced 2025-07-05 01:48:29 +03:00
Merge branch 'master' of https://github.com/mamedev/mame
This commit is contained in:
commit
483d1f49b2
@ -6,6 +6,301 @@
|
||||
<!-- Games -->
|
||||
<!-- -->
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: after install it returns to DOS with mangled text graphics -->
|
||||
<software name="11hourd" supported="no">
|
||||
<description>The 11th Hour - Der Nachfolger von 7th Guest (Germany)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Virgin</publisher>
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="11th hour, the - der nachfolger von 7th guest (1995)(virgin)(de)(disc 1 of 4)" sha1="eb0471c3d431dee4b5bcbc2811af6a474b63ac6d" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="11th hour, the - der nachfolger von 7th guest (1995)(virgin)(de)(disc 2 of 4)" sha1="b0ebebb747eb26f232540b36f1c56c834b8c87cf" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom3" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="11th hour, the - der nachfolger von 7th guest (1995)(virgin)(de)(disc 3 of 4)" sha1="34d57fdcb0b5d6e86d100f0d27519b9b4ed7bef7" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom4" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="11th hour, the - der nachfolger von 7th guest (1995)(virgin)(de)(disc 4 of 4)" sha1="082aaadad9ecac63de51eafee7248c663c8722bf" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 3.1 / 95 -->
|
||||
<software name="3dupin">
|
||||
<description>3-D Ultra Pinball (Budget Sierra Originals Version)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Sierra</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="3-d ultra pinball (1995)(sierra)[budget sierra originals]" sha1="e80e3ec21233bea55b6a07a814b5b193982afda8" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS (with Adobe Acrobat 2.1 for Windows) -->
|
||||
<!-- disc label: pack34 -->
|
||||
<!-- Super Tetris has manual copy protection -->
|
||||
<!-- Other games (shareware): Green, Aldo II Adventure, Phylox, Draw Poker, Space Miner -->
|
||||
<software name="5p1stet">
|
||||
<description>5 Plus One - Super Tetris (Compilation)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Prism Leisure Corporation PLC</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="5 plus one - super tetris (1996)(prism leisure)[compilation]" sha1="a39d6ee739ad1aa2056f690770c4f3137aa762ea" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95, Direct X 3.0 -->
|
||||
<!-- disc label: 688i_hk -->
|
||||
<!-- Requires High Color -->
|
||||
<software name="688ihuki" supported="no">
|
||||
<description>688I Hunter-Killer</description>
|
||||
<year>1997</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="688i hunter-killer (1997)(electronic arts)" sha1="51352c95bcb4a9fbc74291b03c65591b3e7dd5bd" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95 -->
|
||||
<!-- 486 class with 8MB RAM and 256 colors -->
|
||||
<!-- has some game demos on disc -->
|
||||
<!-- TODO: Unreadable install strings -->
|
||||
<!-- TODO: black screen/hangs when launching a demo play in 640x480 resolution (ibm8514_cmd_w with invalid BitBLT params) -->
|
||||
<software name="a10cuba" supported="partial">
|
||||
<description>A-10 Cuba!</description>
|
||||
<year>1996</year>
|
||||
<publisher>Activision / Parsoft Interactive</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="a-10 cuba! (1996)(activision)" sha1="a9bc7e3b7306c46acf33b93ae168862d18734245" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="a10cubam" cloneof="a10cuba" supported="partial">
|
||||
<description>A-10 Cuba! (Megamedia Megaten Pack)</description>
|
||||
<year>1997</year>
|
||||
<publisher>Megamedia / Parsoft Interactive</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="a-10 cuba! (1997)(megamedia)[compilation megapak 7]" sha1="5fc89dde64013ab6d070572ac2b9a8829bbde084" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="aceventd">
|
||||
<description>Ace Ventura (Germany)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Bomico</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ace ventura (1996)(bomico)(de)" sha1="e07d870a94ae435e80a03b6fa1677bb820cb8a9a" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Direct X 3.0 -->
|
||||
<software name="acmidway2">
|
||||
<description>Arcade's Greatest Hits - The Midway Collection 2</description>
|
||||
<year>1997</year>
|
||||
<publisher>GT Interactive</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="arcade's greatest hits - the midway collection 2 (1997)(gt interactive)" sha1="ff8fe48c76edd0fc5dc1321ea85e9d367b5e6400" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 3.1 -->
|
||||
<!-- According to the readme, running this on Windows 95 causes issues -->
|
||||
<!-- disc label: Actionpack5 -->
|
||||
<!-- Multi-5 language support: English, French, German, Italian, Spanish -->
|
||||
<software name="actatari">
|
||||
<description>Activision's Atari 2600 Action Pack (Megapak 8) (Europe)</description>
|
||||
<year>1997</year>
|
||||
<publisher>Megamedia</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="activision's atari 2600 action pack (1997)(megamedia)(m5)[compilation megapak 8]" sha1="279c4f6bc3de53083e30cfc9e0ce16b9d5815a6b" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- English -->
|
||||
<!-- disc label: Actionpack2 -->
|
||||
<software name="actatari2">
|
||||
<description>Activision's Atari 2600 Action Pack 2</description>
|
||||
<year>1995</year>
|
||||
<publisher>Activision</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="activision's atari 2600 action pack 2 (1995)(activision)[compilation]" sha1="03ef65a0db996d8dc092037b94af930c8a638b13" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- disc label: Vault3 -->
|
||||
<!-- TODO: unreadable install strings -->
|
||||
<!-- contains atari1 / atari2 / atari3 and Commodore 64 15 Pack -->
|
||||
<software name="actgvv3" supported="partial">
|
||||
<description>Activision Game Vault Volume 3</description>
|
||||
<year>1997</year>
|
||||
<publisher>Activision</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="activision game vault volume 3 (1997)(activision)[compilation]" sha1="93c4d5d7ab0f2da31b122eb5dedeccdc53b03266" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: no second disc available -->
|
||||
<software name="add2mc" supported="partial">
|
||||
<description>Advanced Dungeons & Dragons 2nd Edition Masterpiece Collection</description>
|
||||
<year>1995</year>
|
||||
<publisher>Mindscape</publisher>
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="advanced dungeons & dragons 2nd edition masterpiece collection (1995)(mindscape)(disc 1 of 4)[compilation]" sha1="adb4cc2ce2ae70724a78b8a3c1fc9b8c09996930" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="advanced dungeons & dragons 2nd edition masterpiece collection (1995)(mindscape)(disc 2 of 4)[compilation]" status="nodump" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom3" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="advanced dungeons & dragons 2nd edition masterpiece collection (1995)(mindscape)(disc 3 of 4)[compilation]" sha1="eb3a8b15c7b21ee50cedfcf1870e8644396acfad" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom4" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="advanced dungeons & dragons 2nd edition masterpiece collection (1995)(mindscape)(disc 4 of 4)[compilation]" sha1="f98d047b64169a19c72f0ebd94d1667086a1c76a" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- DOS (crashes in Windows 95) -->
|
||||
<!-- Disc label: ads -->
|
||||
<!-- TODO: bad color pen (DOS cyan color issue) -->
|
||||
<software name="advdesim">
|
||||
<description>Advanced Destroyer Simulator</description>
|
||||
<year>1996</year>
|
||||
<publisher>Action Sixteen / Futura</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="advanced destroyer simulator (1996)(action sixteen)" sha1="15d429c53ded4840a6d0365b3ba141558fcdc34f" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Windows 3.1 -->
|
||||
<!-- TODO: cannot setup emm386.exe for this in any way or form, might be a bug? -->
|
||||
<software name="aeurope" supported="no">
|
||||
<description>Aces over Europe</description>
|
||||
<year>1995</year>
|
||||
<publisher>Sierra</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="aces over europe (1995)(sierra)[budget sierra originals]" sha1="09ed6d42a2d61b636aae54f69b6680d96165a5af" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<software name="aftlifeu">
|
||||
<description>Afterlife (US v1.1)</description>
|
||||
<year>1996</year>
|
||||
<publisher>LucasArts</publisher>
|
||||
<info name="version" value="1.1" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="afterlife (1996)(lucasarts)(us)[compilation lucas arts archives vol. iii]" sha1="1a606741a00f0a3008d59da978ab0bab0d8aec1e" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- TODO: disc swap not working -->
|
||||
<software name="ah64dles" supported="partial">
|
||||
<description>AH-64D Longbow (Spain)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ah-64d longbow (1996)(electronic arts)(es)(disc 1 of 2)" sha1="0352e3f301c8e7eb0fd1f1af695a5991e6c4cfa2" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ah-64d longbow (1996)(electronic arts)(es)(disc 2 of 2)" sha1="5ed254fdfabcfde936eb971ae9652c28bf0c3fa4" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- Windows 95, Direct X 5.0 -->
|
||||
<!-- Pentium class 90 MHz -->
|
||||
<!-- S3 "software video" is really slow -->
|
||||
<!-- Disc label: Air War 3 -->
|
||||
<software name="airwar3" supported="partial">
|
||||
<description>Air Warrior III</description>
|
||||
<year>1997</year>
|
||||
<publisher>Interactive Magic / Kesmai Corporation</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="air warrior iii (1997)(interactive magic)" sha1="8cf74e4da52b66cbd3b0ba4a0f3807680f9b73aa" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Mac -->
|
||||
<!-- Has two Windows utilities, BREAK (cockpit art editor) and VFILM (shareware film editor) -->
|
||||
<!-- Disc label: awplus -->
|
||||
<software name="airwarpl">
|
||||
<description>Air Warrior Plus (v1.16b)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Kesmai Corporation</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="air warrior plus v1.16b (1995)(on-line)[pc-mac]" sha1="8e4e21b7ac87016874e13d1c9fa02969757cf4ad" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95 / 98 / ME / 2000 -->
|
||||
<!-- Pentium II class 233 MHz -->
|
||||
<software name="akimboj" supported="no">
|
||||
@ -19,6 +314,20 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: weird fade in/out effects at every transition (inverted?) -->
|
||||
<software name="aliencrn">
|
||||
<description>Halloween Harry - Alien Carnage</description>
|
||||
<year>1994</year>
|
||||
<publisher>Multi Media International / Apogee / Interactive Binary Illusions / Sub Zer0</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="alien carnage (1994)(multi media international)(nl)(en)" sha1="de45bd5492cb07bd1de9167bcf8b2f55e5f1780c" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="alieninc">
|
||||
<!--
|
||||
Alien Incident
|
||||
@ -46,11 +355,101 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="arampage">
|
||||
<software name="alienleg">
|
||||
<description>Alien Legacy (v1.10)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Sierra</publisher>
|
||||
<info name="version" value="1.10" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="alien legacy (1995)(sierra)" sha1="e40dd8dd278e34e32edd7b1478f62195627773ae" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- language support: English, Dutch, German, French, Spanish, Italian -->
|
||||
<!-- TODO: locks up on movies -->
|
||||
<software name="alienody" supported="no">
|
||||
<description>Alien Odyssey (Europe)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Philips / Argonaut Software LTD</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="alien odyssey (1995)(philips)" sha1="536635f92489b146f693aa724cd5938794b8190c" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- TODO: can't setup sb16 sound card properly, hangs at "TimerRegister Event" -->
|
||||
<!-- TODO: disc swap doesn't work properly -->
|
||||
<software name="alienscb" supported="partial">
|
||||
<description>Aliens - A Comic Book Adventure (v1.01A)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Mindscape</publisher>
|
||||
<info name="version" value="1.01a" />
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="aliens - a comic book adventure v1.01a (1995)(mindscape)(disc 1 of 2)" sha1="364bb9677c93db8a3f8b68328ddf360eac2aae88" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="aliens - a comic book adventure v1.0 (1995)(mindscape)(disc 2 of 2)" sha1="13aba65247d17645fe9522f0eaf5a89b3cda5783" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- Requires 570KB of conventional memory -->
|
||||
<software name="amazonge">
|
||||
<description>Amazon - Guardians of Eden</description>
|
||||
<year>1993</year>
|
||||
<publisher>Access Software</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="amazon - guardians of eden (1993)(access software)" sha1="ec783cbcd3fed9e6f0f0e32a4cd8c390e2fecf4d" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: black screen at game launch -->
|
||||
<software name="animal" supported="no">
|
||||
<description>Animal</description>
|
||||
<year>1997</year>
|
||||
<publisher>Microtime</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="animal (1997)(microtime)" sha1="8f5c7791bf89e662a0dfc8f08858788c28c33895" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Windows 3.1 -->
|
||||
<!-- TODO: cannot setup emm386.exe for this in any way or form, might be a bug? -->
|
||||
<software name="apacific" supported="no">
|
||||
<description>Aces of the Pacific</description>
|
||||
<year>1994</year>
|
||||
<publisher>Sierra</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="aces of the pacific (1994)(sierra)" sha1="42422f83009e0771968243cb0ea1172699bf8787" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="arampage">
|
||||
<description>Alien Rampage (v1.13)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Softdisk</publisher>
|
||||
<info name="version" value="1.13" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<feature name="disk_label" value="Alien Rampage" />
|
||||
<diskarea name="cdrom">
|
||||
@ -65,14 +464,182 @@
|
||||
<year>1996</year>
|
||||
<publisher>ASCII / Yellow Horn</publisher>
|
||||
<info name="alt_title" value="あらびあんKid" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="kid" sha1="a837c3f4cde66b244bccbae22cb1cec83df6698d" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: videos farts/doesn't complete playback, eventually dies with a out of conventional memory error -->
|
||||
<software name="arcappled" supported="no">
|
||||
<description>Archibald Applebrook's Abenteuer (Germany v1.00)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Software 2000</publisher>
|
||||
<info name="version" value="1.00" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="archibald applebrook's abenteuer (1995)(software 2000)(de)" sha1="37bdb42590fadfb0ad857bd4876ec4708d4569e0" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<!-- TODO: black screen at game launch -->
|
||||
<software name="archonul" supported="no">
|
||||
<description>Archon Ultra (v1.1)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Strategic Simulations</publisher>
|
||||
<info name="version" value="1.1" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="archon ultra v1.1 (1996)(strategic simulations)" sha1="025039ccc5f048b5c6e30523d39b3b8afedd040c" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<software name="armofist">
|
||||
<description>Armored Fist</description>
|
||||
<year>1994</year>
|
||||
<publisher>Nova Logic</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="armored fist (1994)(nova logic)" sha1="96211c6dc7a179f5e25af7f4527cf51afe1c3934" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS -->
|
||||
<software name="ascend">
|
||||
<description>Ascendancy</description>
|
||||
<year>1995</year>
|
||||
<publisher>Virgin / The Logic Factory</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ascendancy (1995)(virgin)" sha1="611fa4261d2b9b454bad01011f7e10f2f55d3c11" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="ascendd" cloneof="ascend">
|
||||
<description>Ascendancy (Germany)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Softgold / The Logic Factory</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ascendancy (1995)(softgold)(de)" sha1="dd2f22050c372a0f8f91966bb31580c2a743dcb9" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95 -->
|
||||
<!-- TODO: Menus are in High color mode -->
|
||||
<software name="atariac1">
|
||||
<description>Atari Arcade Hits 1</description>
|
||||
<year>1999</year>
|
||||
<publisher>Hasbro Interactive</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atari arcade hits 1 (1999)(hasbro interactive)" sha1="89f9ef71790e880fd8c72bec268f424b5b04e189" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS (won't run in Windows 95) -->
|
||||
<!-- disc label: atf_1_03f-->
|
||||
<software name="atf">
|
||||
<description>A.T.F. - Advanced Tactical Fighters (v1.03f)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Electronic Arts / Jane's Information Group Limited</publisher>
|
||||
<info name="version" value="1.03f" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="a.t.f. - advanced tactical fighters (1996)(electronic arts)" sha1="f5352fa4715369d20509aad64f7a32dba057b782" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- disc label: gatf_1_01f-->
|
||||
<software name="atfd" cloneof="atf">
|
||||
<description>A.T.F. - Advanced Tactical Fighters (Germany v1.01f)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
<info name="version" value="1.01f" />
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="a.t.f. - advanced tactical fighters (1996)(electronic arts)(de)" sha1="1363020d9e4f295191ad14c25cb1d01704f13712" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Untested, presumably needs above -->
|
||||
<software name="atfnatof" cloneof="atf">
|
||||
<description>A.T.F. - NATO Fighters (Data Disc)</description>
|
||||
<year>1996</year>
|
||||
<publisher>Electronic Arts</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atf nato fighters (1996)(electronic arts)[data disc]" sha1="5f1e63d5b42f67a826576edcead7e52b6fc62044" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Windows 95 -->
|
||||
<!-- Pentium class 133 MHz -->
|
||||
<!-- TODO: Under DOS hangs if sb16 is selected, "initialization problem with sound card" if that's disabled -->
|
||||
<software name="atlantisd" supported="partial">
|
||||
<description>Atlantis - Das sagenhafte Abenteuer (Germany)</description>
|
||||
<year>1997</year>
|
||||
<publisher>Cryo</publisher>
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atlantis - das sagenhafte abenteuer (1997)(cryo)(de)(disc 1 of 4)" sha1="6b9ad0cc67383d918597a4045995be9c242d1acf" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atlantis - das sagenhafte abenteuer (1997)(cryo)(de)(disc 2 of 4)" sha1="73fe7c4a42357ecfcc17b45d203ca63ae0bfa668" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom3" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atlantis - das sagenhafte abenteuer (1997)(cryo)(de)(disc 3 of 4)" sha1="5ce2a617b69ca6773a81f4df9c0560ddb1b9f8cb" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom4" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="atlantis - das sagenhafte abenteuer (1997)(cryo)(de)(disc 4 of 4)" sha1="8822942cc93c3c6cebb547b5696c696a44a15d72" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- DOS -->
|
||||
<software name="aworld80">
|
||||
<description>Around the World in 80 Days</description>
|
||||
<year>1994</year>
|
||||
<publisher>EA Kids</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="around the world in 80 days (1994)(ea kids)" sha1="0441b9f94df42b3f5edeb3135ce9739af17fc8d5" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!--
|
||||
Register key:
|
||||
BB2KLEJP-50008573
|
||||
@ -323,6 +890,19 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95 -->
|
||||
<!-- Cannot be installed on non-Japanese OS -->
|
||||
<software name="kotobuki" supported="partial">
|
||||
<description>Kotobuki (Japan)</description>
|
||||
<year>1997</year>
|
||||
<publisher>C's Ware</publisher>
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="kotobuki" sha1="9bae69ba85d54d98d2a1b3cf256a0b4d2a35d00d" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Untouched image from original CD created with an ASUS DRW-1814BLT (EAC drive sample read offset reported as +6)
|
||||
If you subtract 0x18 (4 * 6) bytes from a .wav extracted from this CHD the audio matches a rip done with EAC (verified) -->
|
||||
<software name="krondor">
|
||||
@ -348,6 +928,18 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95 -->
|
||||
<software name="ku2impact">
|
||||
<description>KU2 Impact (Japan)</description>
|
||||
<year>1995</year>
|
||||
<publisher>Panther Software</publisher>
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="ku2impact" sha1="f7470a5ea219ad410bea1475953c550827381a98" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="moon" supported="no">
|
||||
<description>Moon (Japan)</description>
|
||||
<year>1998</year>
|
||||
@ -398,7 +990,7 @@
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- Windows 3.1 / Mac LCIII -->
|
||||
<software name="orgaslave">
|
||||
<description>Orgaslave (Japan)</description>
|
||||
@ -417,6 +1009,18 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="orpheocr">
|
||||
<description>Are You Afraid of the Dark - The Tale of Orpheo's Curse</description>
|
||||
<year>1994</year>
|
||||
<publisher>Viacom New Media / Nickelodeon</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="are you afraid of the dark - the tale of orpheo's curse (1994)(viacom new media)" sha1="487f7f1fc8a30507f1ec990bf7ccfc102657a123" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 3.1 -->
|
||||
<software name="paulymou" supported="partial">
|
||||
<description>Pauly Mouse (Japan)</description>
|
||||
@ -483,6 +1087,26 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Windows 95 -->
|
||||
<!-- TODO: no sound in DOS installer with SB16 -->
|
||||
<!-- TODO: eventually black screen when launching game in either OSes -->
|
||||
<software name="redalert" supported="no">
|
||||
<description>Command & Conquer - Red Alert</description>
|
||||
<year>1996</year>
|
||||
<publisher>Virgin / Westwood Studios</publisher>
|
||||
|
||||
<part name="cdrom1" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="Command & Conquer - Red Alert (1996)(Virgin)(Disc 1 of 2)[!]" sha1="30e980766b5de27296c4f49cd41a7baec50736c4" />
|
||||
</diskarea>
|
||||
</part>
|
||||
<part name="cdrom2" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="Command & Conquer - Red Alert (1996)(Virgin)(Disc 2 of 2)" sha1="1e51fd94731a631903603207bae5d4313757fb92" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="rise2dc" supported="partial">
|
||||
<description>Rise 2 Resurrection - Director's Cut</description>
|
||||
<year>1995</year>
|
||||
@ -598,6 +1222,19 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="stg" supported="partial">
|
||||
<description>S.T.G.</description>
|
||||
<year>1999</year>
|
||||
<publisher>GameLand / DaiCom Software</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="stg" sha1="553a04c67860c49d2c5fa1da983c4bc3ab5267fd" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<software name="turricn2">
|
||||
<description>Turrican II - The Final Fight</description>
|
||||
<year>1996</year>
|
||||
@ -628,6 +1265,20 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 3.1 -->
|
||||
<!-- Disc label: Cyberplasm_ -->
|
||||
<!-- TODO: gfx shift issue on 256 color mode -->
|
||||
<software name="vcyondo" supported="partial">
|
||||
<description>Awesome Adventures of Victor Vector & Yondo, The - The Cyberplasm Formula</description>
|
||||
<year>1994</year>
|
||||
<publisher>Sanctuary Woods</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="awesome adventures of victor vector & yondo, the - the cyberplasm formula (1994)(sanctuary woods)" sha1="e359d345ec6657122b50f5904d5c4324c32a2658" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- Windows 95/98/ME/XP and Mac OS supported -->
|
||||
<!-- Requires 256 colors minimum otherwise they crashes at boot -->
|
||||
@ -690,7 +1341,7 @@
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
|
||||
<!-- -->
|
||||
<!-- Drivers / Utilities / Operating Systems -->
|
||||
<!-- -->
|
||||
@ -765,6 +1416,19 @@
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<!-- DOS / Windows 3.1 / 95 -->
|
||||
<software name="sb16">
|
||||
<description>Sound Blaster 16 CD driver</description>
|
||||
<year>1996</year>
|
||||
<publisher>Creative Labs</publisher>
|
||||
|
||||
<part name="cdrom" interface="cdrom">
|
||||
<diskarea name="cdrom">
|
||||
<disk name="sb16" sha1="c87097c58d1c3fcea03e5e4b50d2cafdcb870f16" />
|
||||
</diskarea>
|
||||
</part>
|
||||
</software>
|
||||
|
||||
<software name="ultrasnd" supported="partial">
|
||||
<!-- includes Gravis UltraSound (GUS) Installation - V4.11 -->
|
||||
<description>The UltraSound CD</description>
|
||||
|
@ -944,6 +944,7 @@ function linkProjects_mame_mess(_target, _subtarget)
|
||||
"bandai",
|
||||
"banctec",
|
||||
"be",
|
||||
"bitcorp",
|
||||
"bnpo",
|
||||
"bondwell",
|
||||
"booth",
|
||||
@ -1610,6 +1611,13 @@ files {
|
||||
MAME_DIR .. "src/mame/machine/bebox.cpp",
|
||||
}
|
||||
|
||||
createMESSProjects(_target, _subtarget, "bitcorp")
|
||||
files {
|
||||
MAME_DIR .. "src/mame/drivers/gamate.cpp",
|
||||
MAME_DIR .. "src/mame/video/gamate.cpp",
|
||||
MAME_DIR .. "src/mame/video/gamate.h",
|
||||
}
|
||||
|
||||
createMESSProjects(_target, _subtarget, "bnpo")
|
||||
files {
|
||||
MAME_DIR .. "src/mame/drivers/b2m.cpp",
|
||||
@ -3512,9 +3520,6 @@ files {
|
||||
MAME_DIR .. "src/mame/drivers/fc100.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/fk1.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/ft68m.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/gamate.cpp",
|
||||
MAME_DIR .. "src/mame/video/gamate.cpp",
|
||||
MAME_DIR .. "src/mame/video/gamate.h",
|
||||
MAME_DIR .. "src/mame/drivers/gameking.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/gimix.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/goupil.cpp",
|
||||
@ -3623,6 +3628,7 @@ files {
|
||||
MAME_DIR .. "src/mame/drivers/terco.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/terminals.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/ti630.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/tr175.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/trs80dt1.cpp",
|
||||
MAME_DIR .. "src/mame/drivers/tsispch.cpp",
|
||||
MAME_DIR .. "src/mame/includes/tsispch.h",
|
||||
|
@ -14,7 +14,7 @@ TODO:
|
||||
can not be used in CV1K (/SEL pin is NC, internally pulled to VCC), probably not used in PGM2 too.
|
||||
770:
|
||||
- sequencer timers implemented but seems unused, presumably because of design flaws or bugs, likely due to lack of automatic adding of sequencer # to register offset.
|
||||
in result sequences uses very long chains of 32-sample wait commands instead, wasting a lost of ROM space.
|
||||
in result sequences uses very long chains of 32-sample wait commands instead, wasting a lot of ROM space.
|
||||
- sequencer triggers not implemented, not sure how they works (Deathsmiles ending tune starts sequence with TGST = 01h, likely a bug and don't affect tune playback)
|
||||
774:
|
||||
- 4 channel output
|
||||
|
@ -2194,12 +2194,12 @@ WRITE8_MEMBER(vga_device::mem_w)
|
||||
|
||||
READ8_MEMBER(vga_device::mem_linear_r)
|
||||
{
|
||||
return vga.memory[offset];
|
||||
return vga.memory[offset % vga.svga_intf.vram_size];
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(vga_device::mem_linear_w)
|
||||
{
|
||||
vga.memory[offset] = data;
|
||||
vga.memory[offset % vga.svga_intf.vram_size] = data;
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START( pcvideo_vga )
|
||||
@ -3867,6 +3867,7 @@ WRITE16_MEMBER(ibm8514a_device::ibm8514_cmd_w)
|
||||
ibm8514.gpbusy = false;
|
||||
break;
|
||||
case 0xc000: // BitBLT
|
||||
// TODO: a10cuba sets up blantantly invalid parameters here, CPU core bug maybe?
|
||||
if(LOG_8514) logerror("8514/A: Command (%04x) - BitBLT from %i,%i to %i,%i Width: %i Height: %i\n",ibm8514.current_cmd,
|
||||
ibm8514.curr_x,ibm8514.curr_y,ibm8514.dest_x,ibm8514.dest_y,ibm8514.rect_width,ibm8514.rect_height);
|
||||
off = 0;
|
||||
|
@ -11,6 +11,14 @@ Note:
|
||||
get the hang of the system (and checking where the old code fails
|
||||
eventually)
|
||||
|
||||
Hardware infos can be found at:
|
||||
http://www.zimmers.net/cbmpics/cbm/c65/c65manual.txt
|
||||
http://www.zimmers.net/cbmpics/cbm/c65/c65faq20.txt
|
||||
|
||||
Hardware pics:
|
||||
http://www.zimmers.net/cbmpics/cbm/c65/c65-2b-lhs.JPG
|
||||
http://www.zimmers.net/cbmpics/cbm/c65/c65-2b-rhs.JPG
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
@ -21,7 +29,7 @@ Note:
|
||||
#include "softlist_dev.h"
|
||||
#include "speaker.h"
|
||||
|
||||
#define MAIN_CLOCK XTAL_3_5MHz
|
||||
#define MAIN_CLOCK XTAL_28_37516MHz/8
|
||||
|
||||
class c65_state : public driver_device
|
||||
{
|
||||
@ -671,9 +679,9 @@ WRITE_LINE_MEMBER(c65_state::cia0_irq)
|
||||
static MACHINE_CONFIG_START( c65 )
|
||||
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu",M4510,MAIN_CLOCK)
|
||||
MCFG_CPU_ADD("maincpu", M4510, MAIN_CLOCK)
|
||||
MCFG_CPU_PROGRAM_MAP(c65_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen",c65_state,vic3_vblank_irq)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", c65_state, vic3_vblank_irq)
|
||||
|
||||
MCFG_DEVICE_ADD("cia_0", MOS6526, MAIN_CLOCK)
|
||||
MCFG_MOS6526_TOD(60)
|
||||
@ -706,9 +714,8 @@ static MACHINE_CONFIG_START( c65 )
|
||||
MCFG_PALETTE_INIT_OWNER(c65_state, c65)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
// MCFG_SOUND_ADD("aysnd", AY8910, MAIN_CLOCK/4)
|
||||
// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.30)
|
||||
MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker")
|
||||
// 2x 8580 SID
|
||||
|
||||
// software list
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list", "c65_flop")
|
||||
|
@ -806,12 +806,11 @@ ROM_START( nuretemi )
|
||||
DVD_BIOS
|
||||
|
||||
ROM_REGION( 0x20000, ":nichisnd:audiorom", 0 ) // z80
|
||||
// identical to vol. 19, probably an attempt to fix a dead board.
|
||||
ROM_LOAD( "11.ic51", 0x000000, 0x020000, BAD_DUMP CRC(d1ba05d6) SHA1(8d29cdbf00946e06e92225eb260a694d17d7b8d4) )
|
||||
ROM_LOAD( "11.ic51", 0x000000, 0x020000, CRC(655ec499) SHA1(5cea38e998edc7833b9a644930daecd99933c277) )
|
||||
|
||||
ROM_REGION( 0x400000, "blit_gfx", ROMREGION_ERASEFF ) // blitter based gfxs
|
||||
ROM_LOAD16_BYTE( "3.ic40", 0x000000, 0x080000, CRC(5c7af7f6) SHA1(78e58e3a81a6585c2c61f0026b7dc73a72c0d862) )
|
||||
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(335b6388) SHA1(c5427b42af011b5a5026d905b1740684b9f6f953) )
|
||||
ROM_LOAD16_BYTE( "4.ic41", 0x000001, 0x080000, CRC(335b6388) SHA1(c5427b42af011b5a5026d905b1740684b9f6f953) )
|
||||
|
||||
DISK_REGION( "ide:0:hdd:image" )
|
||||
DISK_IMAGE_READONLY( "nb8016", 0, SHA1(607d9f390265da3f0c50753d0ea32257b12e8c08) )
|
||||
|
@ -29,7 +29,7 @@
|
||||
// internal artwork
|
||||
#include "gnw_dualv.lh"
|
||||
#include "gnw_dualh.lh"
|
||||
#include "hh_sm510_test.lh" // common test-layout - use external artwork
|
||||
//#include "hh_sm510_test.lh" // common test-layout - use external artwork
|
||||
//#include "hh_sm500_test.lh" // "
|
||||
|
||||
|
||||
@ -3575,8 +3575,13 @@ static MACHINE_CONFIG_START( nummunch )
|
||||
MCFG_SM510_WRITE_R_CB(WRITE8(hh_sm510_state, piezo_r1_w))
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_SVG_ADD("screen", "svg")
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_SIZE(1920, 875)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 875-1)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
|
||||
MCFG_DEFAULT_LAYOUT(layout_hh_sm510_test)
|
||||
MCFG_DEFAULT_LAYOUT(layout_svg)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
@ -4018,7 +4023,10 @@ ROM_START( nummunch )
|
||||
ROM_LOAD( "nummunch.program", 0x0000, 0x1000, CRC(2f7ff516) SHA1(132e7c5c4d69170953b2e51731992d6d6ba829f9) )
|
||||
|
||||
ROM_REGION( 0x100, "maincpu:melody", 0 )
|
||||
ROM_LOAD( "nummunch.melody", 0x000, 0x100, NO_DUMP )
|
||||
ROM_LOAD( "nummunch.melody", 0x000, 0x100, CRC(96fe463a) SHA1(dcef5eee15a3f6d21e0db1b8ae3fbddc81633fc8) )
|
||||
|
||||
ROM_REGION( 140664, "svg", 0)
|
||||
ROM_LOAD( "nummunch.svg", 0, 140664, CRC(879df7e2) SHA1(78d8500a445cbbea0090d4e97b781c1e4ed11dd3) )
|
||||
ROM_END
|
||||
|
||||
|
||||
@ -4072,4 +4080,4 @@ CONS( 1995, tjdredd, 0, 0, tjdredd, tjdredd, tjdredd_state, 0, "T
|
||||
CONS( 1995, tapollo13, 0, 0, tapollo13, tapollo13, tapollo13_state, 0, "Tiger Electronics", "Apollo 13 (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
CONS( 1996, tsjam, 0, 0, tsjam, tsjam, tsjam_state, 0, "Tiger Electronics", "Space Jam (handheld)", MACHINE_SUPPORTS_SAVE )
|
||||
|
||||
CONS( 1989, nummunch, 0, 0, nummunch, nummunch, nummunch_state, 0, "VTech", "Electronic Number Muncher", MACHINE_SUPPORTS_SAVE | MACHINE_NOT_WORKING )
|
||||
CONS( 1989, nummunch, 0, 0, nummunch, nummunch, nummunch_state, 0, "VTech", "Electronic Number Muncher", MACHINE_SUPPORTS_SAVE )
|
||||
|
@ -348,7 +348,106 @@ WRITE16_MEMBER(pgm2_state::unk30120014_w)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
KOV3 ROM board uses special module intead of program ROM, tiny PCB with FPGA stamped "HW1" and BGA Flash ROM stamped "IG-L".
|
||||
This module uses few pins for serial comms (wired to IGS036 GPIO), it can not be dumped as regular ROM until special unlock procedure (return weird data pattern while locked).
|
||||
|
||||
In case of KOV3 unlock sequence is:
|
||||
1) send via serial 0x0d and 64bit xor_value, result must be A3A3A3A36D6D6D6D
|
||||
2) send via serial 0x25 and 64bit xor_value, store result as 64bit key (after xor with xor_value)
|
||||
3) read first 10h bytes from ROM area (at this point ROM area read as scrambled or random data)
|
||||
4) write "key" to ROM area, using 2x 16bit writes, write offsets and data depends on 64bit key
|
||||
5) write static sequence of words to ROM area, which probably enable ROM descrambling and normal access
|
||||
6) read "expected sum" from ROM 10000002-10000009 (presumable at this point ROM area read as descrambled)
|
||||
7) read first 10h bytes from ROM area and check they are not same as was at step 3
|
||||
8) perform whole ROM summing, result must match 64bit key xor "expected sum" read at step 6
|
||||
|
||||
It is not clear if real address/data xor values derived from written "key",
|
||||
or FPGA just waiting to be be written magic value at specific address in ROM area, and if this happen enable descrambling using hardcoded values.
|
||||
|
||||
Current implementation assume "expected sum" read at step 6) is regular data from ROM (descrambled),
|
||||
our keys calculated assuming this, so further ROM sum check passes OK.
|
||||
But, there is chances in hardware its not like that, but these bytes comes from FPGA (some indication of this is the fact 5) and 6) is actually single routine).
|
||||
In this case we have 2 unknowns (key and summ) and can not guess both. Will be needed serial comm logs from real hardware.
|
||||
*/
|
||||
|
||||
READ_LINE_MEMBER(pgm2_state::module_data_r)
|
||||
{
|
||||
return module_out_latch ? ASSERT_LINE : CLEAR_LINE;
|
||||
}
|
||||
WRITE_LINE_MEMBER(pgm2_state::module_data_w)
|
||||
{
|
||||
module_in_latch = (state == ASSERT_LINE) ? 1 : 0;
|
||||
}
|
||||
WRITE_LINE_MEMBER(pgm2_state::module_clk_w)
|
||||
{
|
||||
if (module_prev_state != state && state == CLEAR_LINE)
|
||||
{
|
||||
if (module_clk_cnt < 80)
|
||||
{
|
||||
int offs = module_clk_cnt / 8;
|
||||
int bit = (module_clk_cnt & 7) ^ 7;
|
||||
module_rcv_buf[offs] &= ~(1 << bit);
|
||||
module_rcv_buf[offs] |= module_in_latch << bit;
|
||||
|
||||
++module_clk_cnt;
|
||||
if (module_clk_cnt >= 80)
|
||||
{
|
||||
switch (module_rcv_buf[0])
|
||||
{
|
||||
case 0x0d: // init or status check
|
||||
module_send_buf[0] = module_send_buf[1] = module_send_buf[2] = module_send_buf[3] = 0xa3;
|
||||
module_send_buf[4] = module_send_buf[5] = module_send_buf[6] = module_send_buf[7] = 0x6d;
|
||||
break;
|
||||
case 0x25: // get key
|
||||
for (int i = 0; i < 8; i++)
|
||||
module_send_buf[i] = module_key[i] ^ module_rcv_buf[i + 1];
|
||||
break;
|
||||
default:
|
||||
logerror("unknown FPGA command %02X!\n", module_rcv_buf[0]);
|
||||
break;
|
||||
}
|
||||
|
||||
module_send_buf[8] = 0;
|
||||
for (int i = 0; i < 8; i++) // sum reply bytes
|
||||
module_send_buf[8] += module_send_buf[i];
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
int offs = (module_clk_cnt - 80) / 8;
|
||||
int bit = (module_clk_cnt & 7) ^ 7;
|
||||
module_out_latch = (module_send_buf[offs] >> bit) & 1;
|
||||
++module_clk_cnt;
|
||||
if (module_clk_cnt >= 152)
|
||||
module_clk_cnt = 0;
|
||||
}
|
||||
}
|
||||
module_prev_state = state;
|
||||
}
|
||||
|
||||
WRITE32_MEMBER(pgm2_state::module_scramble_w)
|
||||
{
|
||||
decrypt_kov3_module(module_addr_xor, module_data_xor);
|
||||
}
|
||||
|
||||
// very primitive Atmel ARM PIO simulation, should be improved and devicified
|
||||
WRITE32_MEMBER(pgm2_state::pio_sodr_w)
|
||||
{
|
||||
pio_out_data |= data & mem_mask;
|
||||
module_data_w((pio_out_data & 0x100) ? ASSERT_LINE : CLEAR_LINE);
|
||||
module_clk_w((pio_out_data & 0x200) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
WRITE32_MEMBER(pgm2_state::pio_codr_w)
|
||||
{
|
||||
pio_out_data &= ~(data & mem_mask);
|
||||
module_data_w((pio_out_data & 0x100) ? ASSERT_LINE : CLEAR_LINE);
|
||||
module_clk_w((pio_out_data & 0x200) ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
READ32_MEMBER(pgm2_state::pio_pdsr_r)
|
||||
{
|
||||
return (module_data_r() == ASSERT_LINE ? 1 : 0) << 8; // fpga data read and status (bit 7, must be 0)
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( pgm2_map, AS_PROGRAM, 32, pgm2_state )
|
||||
AM_RANGE(0x00000000, 0x00003fff) AM_ROM //AM_REGION("user1", 0x00000) // internal ROM
|
||||
@ -423,6 +522,14 @@ static ADDRESS_MAP_START( pgm2_ram_rom_map, AS_PROGRAM, 32, pgm2_state )
|
||||
AM_IMPORT_FROM(pgm2_map)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( pgm2_module_rom_map, AS_PROGRAM, 32, pgm2_state )
|
||||
AM_RANGE(0x10014a40, 0x10014a43) AM_WRITE(module_scramble_w)
|
||||
AM_RANGE(0xfffff430, 0xfffff433) AM_WRITE(pio_sodr_w)
|
||||
AM_RANGE(0xfffff434, 0xfffff437) AM_WRITE(pio_codr_w)
|
||||
AM_RANGE(0xfffff43c, 0xfffff43f) AM_READ(pio_pdsr_r)
|
||||
AM_IMPORT_FROM(pgm2_rom_map)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( pgm2 )
|
||||
PORT_START("INPUTS0")
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
|
||||
@ -528,6 +635,13 @@ void pgm2_state::machine_start()
|
||||
save_item(NAME(m_mcu_last_cmd));
|
||||
save_item(NAME(m_shareram));
|
||||
save_item(NAME(m_share_bank));
|
||||
save_item(NAME(pio_out_data));
|
||||
save_item(NAME(module_in_latch));
|
||||
save_item(NAME(module_out_latch));
|
||||
save_item(NAME(module_prev_state));
|
||||
save_item(NAME(module_clk_cnt));
|
||||
save_item(NAME(module_rcv_buf));
|
||||
save_item(NAME(module_send_buf));
|
||||
}
|
||||
|
||||
void pgm2_state::machine_reset()
|
||||
@ -541,6 +655,10 @@ void pgm2_state::machine_reset()
|
||||
memcpy(memregion("user1")->base(), &m_encrypted_copy[0], memregion("user1")->bytes());
|
||||
|
||||
m_has_decrypted = 0;
|
||||
|
||||
pio_out_data = 0;
|
||||
module_prev_state = 0;
|
||||
module_clk_cnt = 151; // this needed because of "false" clock pulse happen during gpio init
|
||||
}
|
||||
|
||||
static const gfx_layout tiles8x8_layout =
|
||||
@ -630,6 +748,8 @@ static MACHINE_CONFIG_DERIVED( pgm2_lores, pgm2 )
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( pgm2_hires, pgm2 )
|
||||
MCFG_CPU_MODIFY("maincpu")
|
||||
MCFG_CPU_PROGRAM_MAP(pgm2_module_rom_map)
|
||||
MCFG_SCREEN_MODIFY("screen")
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 512-1, 0, 240-1)
|
||||
MACHINE_CONFIG_END
|
||||
@ -1168,13 +1288,13 @@ DRIVER_INIT_MEMBER(pgm2_state,ddpdojh)
|
||||
machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x20021e04, 0x20021e07, read32_delegate(FUNC(pgm2_state::ddpdojh_speedup2_r), this));
|
||||
}
|
||||
|
||||
static const uint8_t kov3_100_key[] = { 0xde, 0x29, 0x52, 0x84, 0x71, 0x9e, 0xed, 0x66 };
|
||||
static const uint8_t kov3_102_key[] = { 0x0e, 0x49, 0x9f, 0x1b, 0xca, 0x14, 0xec, 0x33 };
|
||||
static const uint8_t kov3_104_key[] = { 0xaf, 0x35, 0x5f, 0xf9, 0x63, 0x78, 0xe8, 0xf9 };
|
||||
|
||||
DRIVER_INIT_MEMBER(pgm2_state,kov3)
|
||||
{
|
||||
common_encryption_init();
|
||||
// patch FPGA check
|
||||
uint32_t* rom = (uint32_t*)memregion("maincpu")->base();
|
||||
rom[0x2a8c / 4] = 0xe320f000; // not endian safe ?
|
||||
|
||||
machine().device("maincpu")->memory().space(AS_PROGRAM).install_read_handler(0x200000b4, 0x200000b7, read32_delegate(FUNC(pgm2_state::kov3_speedup_r),this));
|
||||
}
|
||||
|
||||
@ -1193,19 +1313,23 @@ void pgm2_state::decrypt_kov3_module(uint32_t addrxor, uint16_t dataxor)
|
||||
|
||||
DRIVER_INIT_MEMBER(pgm2_state, kov3_104)
|
||||
{
|
||||
decrypt_kov3_module(0x18ec71, 0xb89d);
|
||||
// currently we don't know how to derive address/data xor values from real keys, so we need both
|
||||
module_addr_xor = 0x18ec71; module_data_xor = 0xb89d;
|
||||
module_key = kov3_104_key;
|
||||
DRIVER_INIT_CALL(kov3);
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(pgm2_state, kov3_102)
|
||||
{
|
||||
decrypt_kov3_module(0x021d37, 0x81d0);
|
||||
module_addr_xor = 0x021d37; module_data_xor = 0x81d0;
|
||||
module_key = kov3_102_key;
|
||||
DRIVER_INIT_CALL(kov3);
|
||||
}
|
||||
|
||||
DRIVER_INIT_MEMBER(pgm2_state, kov3_100)
|
||||
{
|
||||
decrypt_kov3_module(0x3e8aa8, 0xc530);
|
||||
module_addr_xor = 0x3e8aa8; module_data_xor = 0xc530;
|
||||
module_key = kov3_100_key;
|
||||
DRIVER_INIT_CALL(kov3);
|
||||
}
|
||||
|
||||
|
@ -1522,7 +1522,7 @@ WRITE_LINE_MEMBER(seta_state::utoukond_ym3438_interrupt)
|
||||
WRITE_LINE_MEMBER(seta_state::pit_out0)
|
||||
{
|
||||
if (state)
|
||||
m_maincpu->set_input_line(4, HOLD_LINE);
|
||||
m_maincpu->set_input_line(4, ASSERT_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -2580,8 +2580,9 @@ static ADDRESS_MAP_START( madshark_map, AS_PROGRAM, 16, seta_state )
|
||||
AM_RANGE(0x500004, 0x500005) AM_READ_PORT("COINS") // Coins
|
||||
AM_RANGE(0x500008, 0x50000b) AM_READ(seta_dsw_r) // DSW
|
||||
AM_RANGE(0x50000c, 0x50000d) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
|
||||
AM_RANGE(0x600004, 0x600005) AM_WRITE(ipl1_ack_w)
|
||||
AM_RANGE(0x600000, 0x600005) AM_RAM_WRITE(seta_vregs_w) AM_SHARE("vregs") // ? Coin Lockout + Video Registers
|
||||
AM_RANGE(0x600006, 0x600007) AM_WRITENOP // ?
|
||||
AM_RANGE(0x600006, 0x600007) AM_WRITE(ipl2_ack_w)
|
||||
AM_RANGE(0x700400, 0x700fff) AM_RAM AM_SHARE("paletteram") // Palette
|
||||
AM_RANGE(0x800000, 0x803fff) AM_RAM_WRITE(seta_vram_0_w) AM_SHARE("vram_0") // VRAM 0&1
|
||||
AM_RANGE(0x880000, 0x883fff) AM_RAM_WRITE(seta_vram_2_w) AM_SHARE("vram_2") // VRAM 2&3
|
||||
@ -2617,8 +2618,8 @@ static ADDRESS_MAP_START( magspeed_map, AS_PROGRAM, 16, seta_state )
|
||||
AM_RANGE(0x500008, 0x50000b) AM_READ(seta_dsw_r) // DSW
|
||||
AM_RANGE(0x50000c, 0x50000d) AM_DEVWRITE("watchdog", watchdog_timer_device, reset16_w)
|
||||
AM_RANGE(0x500010, 0x500015) AM_RAM_WRITE(msgundam_vregs_w) AM_SHARE("vregs") // ? Coin Lockout + Video Registers
|
||||
AM_RANGE(0x500018, 0x500019) AM_WRITENOP // lev 2 irq ack?
|
||||
AM_RANGE(0x50001c, 0x50001d) AM_WRITENOP // lev 4 irq ack?
|
||||
AM_RANGE(0x500018, 0x500019) AM_WRITE(ipl1_ack_w) // lev 2 irq ack?
|
||||
AM_RANGE(0x50001c, 0x50001d) AM_WRITE(ipl2_ack_w) // lev 4 irq ack?
|
||||
AM_RANGE(0x600000, 0x600005) AM_WRITE(magspeed_lights_w) // Lights
|
||||
AM_RANGE(0x600006, 0x600007) AM_WRITENOP // ?
|
||||
AM_RANGE(0x700000, 0x7003ff) AM_RAM // Palette RAM (tested)
|
||||
@ -2635,11 +2636,7 @@ static ADDRESS_MAP_START( magspeed_map, AS_PROGRAM, 16, seta_state )
|
||||
AM_RANGE(0xa80000, 0xa80001) AM_RAM // ? $4000
|
||||
AM_RANGE(0xb00000, 0xb03fff) AM_RAM AM_DEVREADWRITE("spritegen", seta001_device, spritecode_r16, spritecode_w16) // Sprites Code + X + Attr
|
||||
AM_RANGE(0xb04000, 0xb07fff) AM_RAM // tested
|
||||
#if __uPD71054_TIMER
|
||||
AM_RANGE(0xc00000, 0xc00007) AM_WRITE(timer_regs_w) // ?
|
||||
#else
|
||||
AM_RANGE(0xc00000, 0xc00007) AM_WRITENOP // ?
|
||||
#endif
|
||||
AM_RANGE(0xc00000, 0xc00007) AM_DEVREADWRITE8("pit", pit8254_device, read, write, 0x00ff)
|
||||
AM_RANGE(0xd00000, 0xd03fff) AM_DEVREADWRITE("x1snd", x1_010_device, word_r, word_w) // Sound
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -8931,7 +8928,7 @@ static MACHINE_CONFIG_START( madshark )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
|
||||
MCFG_CPU_PROGRAM_MAP(madshark_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", seta_state, wrofaero_interrupt)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", seta_state, irq2_line_assert)
|
||||
|
||||
MCFG_DEVICE_ADD("pit", PIT8254, 0) // uPD71054C
|
||||
MCFG_PIT8253_CLK0(16000000/2/8)
|
||||
@ -8977,13 +8974,13 @@ static MACHINE_CONFIG_START( magspeed )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", M68000, 16000000) /* 16 MHz */
|
||||
MCFG_CPU_PROGRAM_MAP(magspeed_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", seta_state, wrofaero_interrupt)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", seta_state, irq2_line_assert)
|
||||
|
||||
MCFG_WATCHDOG_ADD("watchdog")
|
||||
|
||||
#if __uPD71054_TIMER
|
||||
MCFG_MACHINE_START_OVERRIDE(seta_state, wrofaero )
|
||||
#endif // __uPD71054_TIMER
|
||||
MCFG_DEVICE_ADD("pit", PIT8254, 0) // uPD71054C
|
||||
MCFG_PIT8253_CLK0(16000000/2/8)
|
||||
MCFG_PIT8253_OUT0_HANDLER(WRITELINE(seta_state, pit_out0))
|
||||
|
||||
MCFG_DEVICE_ADD("spritegen", SETA001_SPRITE, 0)
|
||||
MCFG_SETA001_SPRITE_GFXDECODE("gfxdecode")
|
||||
|
@ -167,25 +167,6 @@ COMP( 1986, qvt201, 0, 0, terminals, terminals, terminals_state, 0, "Qume", "QVT
|
||||
|
||||
|
||||
|
||||
/**************************************************************************************************************
|
||||
|
||||
Relisys TR175 II.
|
||||
Chips: MC68000P12, HM82C11C, SCN2681, 3x W24257-70L, KDA0476BCN-66 (RAMDAC), 4 undumped proms, Beeper, Button battery
|
||||
Crystals: 28.322, 46.448, 11.0592, unknown.
|
||||
Colour screen.
|
||||
|
||||
***************************************************************************************************************/
|
||||
|
||||
ROM_START( tr175 )
|
||||
ROM_REGION(0x20000, "maincpu", 0)
|
||||
ROM_LOAD16_BYTE( "v6.05.u50", 0x00000, 0x10000, CRC(5a33b6b3) SHA1(d673f50dd88f8a154ddaabe34cfcc9ab91435a4c) )
|
||||
ROM_LOAD16_BYTE( "v6.05.u45", 0x00001, 0x10000, CRC(e220befe) SHA1(8402280577e6de4b85843222bbd6b06a3f625b3b) )
|
||||
ROM_END
|
||||
|
||||
COMP( 1982, tr175, 0, 0, terminals, terminals, terminals_state, 0, "Relisys", "TR175II", MACHINE_IS_SKELETON )
|
||||
|
||||
|
||||
|
||||
/**************************************************************************************************************
|
||||
|
||||
Televideo TVI-912C.
|
||||
@ -247,20 +228,3 @@ ROM_START( tv965 )
|
||||
ROM_END
|
||||
|
||||
COMP( 1989, tv965, 0, 0, terminals, terminals, terminals_state, 0, "TeleVideo", "TVI-965", MACHINE_IS_SKELETON )
|
||||
|
||||
|
||||
|
||||
/**************************************************************************************************************
|
||||
|
||||
DEC VT420.
|
||||
Chips: SCN8031HFCN40, SCN2681TC1N40, M5M4464AP, HM62256LFP-10T, TC23SC070AT, TC531001CP-1815
|
||||
Crystals: 43.320
|
||||
|
||||
***************************************************************************************************************/
|
||||
|
||||
ROM_START( vt420 )
|
||||
ROM_REGION(0x20000, "maincpu", 0)
|
||||
ROM_LOAD( "23-068e9-00.e2", 0x00000, 0x20000, CRC(22c3f93b) SHA1(b212911c41e4dba2e09d91fdd1f72d6c7536b0af) )
|
||||
ROM_END
|
||||
|
||||
COMP( 1990, vt420, 0, 0, terminals, terminals, terminals_state, 0, "DEC", "VT-420", MACHINE_IS_SKELETON )
|
||||
|
123
src/mame/drivers/tr175.cpp
Normal file
123
src/mame/drivers/tr175.cpp
Normal file
@ -0,0 +1,123 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:
|
||||
/***********************************************************************************************************************************
|
||||
|
||||
Skeleton driver for Relisys TR-175 II color terminal.
|
||||
|
||||
************************************************************************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/mc68681.h"
|
||||
#include "video/ramdac.h"
|
||||
#include "video/scn2674.h"
|
||||
#include "screen.h"
|
||||
|
||||
class tr175_state : public driver_device
|
||||
{
|
||||
public:
|
||||
tr175_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag)
|
||||
, m_maincpu(*this, "maincpu")
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(ffec01_w);
|
||||
DECLARE_WRITE8_MEMBER(fff000_w);
|
||||
DECLARE_READ8_MEMBER(fff400_r);
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(draw_character);
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
};
|
||||
|
||||
WRITE8_MEMBER(tr175_state::ffec01_w)
|
||||
{
|
||||
logerror("%s: Writing %02X to FFEC01\n", machine().describe_context(), data);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(tr175_state::fff000_w)
|
||||
{
|
||||
logerror("%s: Writing %02X to FFF000\n", machine().describe_context(), data);
|
||||
}
|
||||
|
||||
READ8_MEMBER(tr175_state::fff400_r)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( mem_map, AS_PROGRAM, 16, tr175_state )
|
||||
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_REGION("maincpu", 0)
|
||||
AM_RANGE(0xfe8000, 0xfebfff) AM_RAM // 8-bit?
|
||||
AM_RANGE(0xfefe00, 0xfefedd) AM_WRITENOP // 8-bit; cleared at startup
|
||||
AM_RANGE(0xff8000, 0xffbfff) AM_RAM // main RAM
|
||||
AM_RANGE(0xff0000, 0xff7fff) AM_RAM // video RAM?
|
||||
AM_RANGE(0xffe000, 0xffe01f) AM_DEVREADWRITE8("duart", scn2681_device, read, write, 0xff00)
|
||||
AM_RANGE(0xffe400, 0xffe40f) AM_DEVREADWRITE8("avdc", scn2674_device, read, write, 0xff00)
|
||||
AM_RANGE(0xffe800, 0xffe805) AM_UNMAP //AM_DEVREADWRITE8("pai", um82c11_device, read, write, 0xff00)
|
||||
AM_RANGE(0xffec00, 0xffec01) AM_WRITE8(ffec01_w, 0x00ff)
|
||||
AM_RANGE(0xfff000, 0xfff001) AM_WRITE8(fff000_w, 0xff00)
|
||||
AM_RANGE(0xfff400, 0xfff401) AM_READ8(fff400_r, 0xff00)
|
||||
AM_RANGE(0xfffc00, 0xfffc01) AM_DEVWRITE8("ramdac", ramdac_device, index_w, 0x00ff)
|
||||
AM_RANGE(0xfffc02, 0xfffc03) AM_DEVWRITE8("ramdac", ramdac_device, pal_w, 0x00ff)
|
||||
AM_RANGE(0xfffc04, 0xfffc05) AM_DEVWRITE8("ramdac", ramdac_device, mask_w, 0x00ff)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
SCN2674_DRAW_CHARACTER_MEMBER(tr175_state::draw_character)
|
||||
{
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( vram_map, 0, 8, tr175_state )
|
||||
AM_RANGE(0x0000, 0x3fff) AM_READNOP
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( ramdac_map, 0, 8, tr175_state )
|
||||
AM_RANGE(0x000, 0x3ff) AM_DEVREADWRITE("ramdac", ramdac_device, ramdac_pal_r, ramdac_rgb666_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( tr175 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static MACHINE_CONFIG_START( tr175 )
|
||||
MCFG_CPU_ADD("maincpu", M68000, 12'000'000)
|
||||
MCFG_CPU_PROGRAM_MAP(mem_map)
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
|
||||
MCFG_SCREEN_SIZE(720, 360)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 720-1, 0, 360-1)
|
||||
MCFG_SCREEN_UPDATE_DEVICE("avdc", scn2674_device, screen_update)
|
||||
|
||||
MCFG_DEVICE_ADD("avdc", SCN2674, 4000000)
|
||||
MCFG_SCN2674_INTR_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_2))
|
||||
MCFG_SCN2674_TEXT_CHARACTER_WIDTH(8)
|
||||
MCFG_SCN2674_GFX_CHARACTER_WIDTH(8)
|
||||
MCFG_SCN2674_DRAW_CHARACTER_CALLBACK_OWNER(tr175_state, draw_character)
|
||||
MCFG_DEVICE_ADDRESS_MAP(0, vram_map)
|
||||
MCFG_VIDEO_SET_SCREEN("screen")
|
||||
|
||||
MCFG_DEVICE_ADD("duart", SCN2681, XTAL_11_0592MHz / 3) // is this the right clock?
|
||||
MCFG_MC68681_IRQ_CALLBACK(INPUTLINE("maincpu", M68K_IRQ_1))
|
||||
|
||||
MCFG_PALETTE_ADD("palette", 0x100)
|
||||
MCFG_RAMDAC_ADD("ramdac", ramdac_map, "palette")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
||||
|
||||
/**************************************************************************************************************
|
||||
|
||||
Relisys TR-175 II.
|
||||
Chips: MC68000P12, HM82C11C, SCN2681, 3x W24257-70L, KDA0476BCN-66 (RAMDAC), 4 undumped proms, Beeper, Button battery
|
||||
Crystals: 28.322, 46.448, 11.0592, unknown.
|
||||
Colour screen.
|
||||
|
||||
***************************************************************************************************************/
|
||||
|
||||
ROM_START( tr175 )
|
||||
ROM_REGION(0x20000, "maincpu", 0)
|
||||
ROM_LOAD16_BYTE( "v6.05.u50", 0x00001, 0x10000, CRC(5a33b6b3) SHA1(d673f50dd88f8a154ddaabe34cfcc9ab91435a4c) )
|
||||
ROM_LOAD16_BYTE( "v6.05.u45", 0x00000, 0x10000, CRC(e220befe) SHA1(8402280577e6de4b85843222bbd6b06a3f625b3b) )
|
||||
ROM_END
|
||||
|
||||
COMP( 1982, tr175, 0, 0, tr175, tr175, tr175_state, 0, "Relisys", "TR-175 II", MACHINE_IS_SKELETON )
|
@ -10,6 +10,7 @@
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/mcs51/mcs51.h"
|
||||
//#include "machine/mc68681.h"
|
||||
#include "machine/ram.h"
|
||||
#include "screen.h"
|
||||
|
||||
@ -19,13 +20,15 @@ class vt520_state : public driver_device
|
||||
public:
|
||||
vt520_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag) ,
|
||||
m_maincpu(*this, "maincpu") { }
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_rom(*this, "maincpu") { }
|
||||
|
||||
DECLARE_READ8_MEMBER(vt520_some_r);
|
||||
virtual void machine_reset() override;
|
||||
virtual void video_start() override;
|
||||
uint32_t screen_update_vt520(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_region_ptr<uint8_t> m_rom;
|
||||
};
|
||||
|
||||
|
||||
@ -36,7 +39,7 @@ ADDRESS_MAP_END
|
||||
/*
|
||||
On the board there is TC160G41AF (1222) custom chip
|
||||
doing probably all video/uart logic
|
||||
there is 43.430MHz xtal near by
|
||||
there is 43.320MHz xtal near by
|
||||
*/
|
||||
|
||||
READ8_MEMBER( vt520_state::vt520_some_r )
|
||||
@ -59,9 +62,8 @@ INPUT_PORTS_END
|
||||
void vt520_state::machine_reset()
|
||||
{
|
||||
address_space &space = m_maincpu->space(AS_PROGRAM);
|
||||
uint8_t *rom = memregion("maincpu")->base();
|
||||
space.unmap_write(0x0000, 0xffff);
|
||||
membank("bank1")->set_base(rom + 0x70000);
|
||||
membank("bank1")->set_base(&m_rom[m_rom.length() - 0x10000]);
|
||||
}
|
||||
|
||||
void vt520_state::video_start()
|
||||
@ -73,12 +75,29 @@ uint32_t vt520_state::screen_update_vt520(screen_device &screen, bitmap_ind16 &b
|
||||
return 0;
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( vt520 )
|
||||
static MACHINE_CONFIG_START( vt420 )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu",I8032, XTAL_20MHz)
|
||||
MCFG_CPU_ADD("maincpu", I80C31, XTAL_43_320MHz / 3) // SCN8031HCFN40 (divider not verified)
|
||||
MCFG_CPU_PROGRAM_MAP(vt520_mem)
|
||||
MCFG_CPU_IO_MAP(vt520_io)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
|
||||
MCFG_SCREEN_SIZE(802, 480)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 802-1, 0, 480-1)
|
||||
MCFG_SCREEN_UPDATE_DRIVER(vt520_state, screen_update_vt520)
|
||||
MCFG_SCREEN_PALETTE("palette")
|
||||
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_START( vt520 )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", I80C32, XTAL_20MHz) // Philips P80C32IBPN
|
||||
MCFG_CPU_PROGRAM_MAP(vt520_mem)
|
||||
MCFG_CPU_IO_MAP(vt520_io)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
@ -98,7 +117,19 @@ static MACHINE_CONFIG_START( vt520 )
|
||||
MCFG_RAM_DEFAULT_SIZE("256K")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/* ROM definition */
|
||||
/**************************************************************************************************************
|
||||
|
||||
DEC VT420.
|
||||
Chips: SCN8031HCFN40, SCN2681TC1N40, M5M4464AP, HM62256LFP-10T, TC23SC070AT, TC531001CP-1815
|
||||
Crystals: 43.320
|
||||
|
||||
***************************************************************************************************************/
|
||||
|
||||
ROM_START( vt420 )
|
||||
ROM_REGION(0x20000, "maincpu", 0)
|
||||
ROM_LOAD( "23-068e9-00.e2", 0x00000, 0x20000, CRC(22c3f93b) SHA1(b212911c41e4dba2e09d91fdd1f72d6c7536b0af) )
|
||||
ROM_END
|
||||
|
||||
ROM_START( vt520 )
|
||||
ROM_REGION( 0x80000, "maincpu", ROMREGION_ERASEFF )
|
||||
ROM_LOAD( "23-010ed-00.e20", 0x0000, 0x80000, CRC(2502cc22) SHA1(0437c3107412f69e09d050fef003f2a81d8a3163)) // "(C)DEC94 23-010ED-00 // 9739 D" dumped from a VT520-A4 model
|
||||
@ -106,7 +137,7 @@ ROM_END
|
||||
|
||||
/* Driver */
|
||||
|
||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT STATE INIT COMPANY FULLNAME FLAGS */
|
||||
//COMP( 1993, vt510, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT510", MACHINE_NOT_WORKING)
|
||||
COMP( 1994, vt520, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT520", MACHINE_NOT_WORKING | MACHINE_NO_SOUND)
|
||||
//COMP( 1994, vt525, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT525", MACHINE_NOT_WORKING)
|
||||
COMP( 1990, vt420, 0, 0, vt420, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT420 Video Terminal", MACHINE_IS_SKELETON )
|
||||
//COMP( 1993, vt510, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT510 Video Terminal", MACHINE_IS_SKELETON)
|
||||
COMP( 1994, vt520, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT520 Video Terminal", MACHINE_IS_SKELETON)
|
||||
//COMP( 1994, vt525, 0, 0, vt520, vt520, vt520_state, 0, "Digital Equipment Corporation", "VT525 Video Terminal", MACHINE_IS_SKELETON)
|
||||
|
@ -59,6 +59,14 @@ public:
|
||||
DECLARE_WRITE16_MEMBER(vbl_ack_w);
|
||||
DECLARE_WRITE16_MEMBER(unk30120014_w);
|
||||
|
||||
DECLARE_WRITE32_MEMBER(pio_sodr_w);
|
||||
DECLARE_WRITE32_MEMBER(pio_codr_w);
|
||||
DECLARE_READ32_MEMBER(pio_pdsr_r);
|
||||
DECLARE_WRITE32_MEMBER(module_scramble_w);
|
||||
DECLARE_READ_LINE_MEMBER(module_data_r);
|
||||
DECLARE_WRITE_LINE_MEMBER(module_data_w);
|
||||
DECLARE_WRITE_LINE_MEMBER(module_clk_w);
|
||||
|
||||
DECLARE_READ32_MEMBER(orleg2_speedup_r);
|
||||
DECLARE_READ32_MEMBER(kov2nl_speedup_r);
|
||||
DECLARE_READ32_MEMBER(kof98umh_speedup_r);
|
||||
@ -131,6 +139,16 @@ private:
|
||||
|
||||
std::vector<uint8_t> m_encrypted_copy;
|
||||
|
||||
uint32_t pio_out_data;
|
||||
uint32_t module_addr_xor, module_data_xor;
|
||||
const uint8_t *module_key;
|
||||
uint32_t module_in_latch;
|
||||
uint32_t module_out_latch;
|
||||
int module_prev_state;
|
||||
int module_clk_cnt;
|
||||
uint8_t module_rcv_buf[10];
|
||||
uint8_t module_send_buf[9];
|
||||
|
||||
// devices
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<screen_device> m_screen;
|
||||
|
@ -36455,11 +36455,9 @@ qvt102
|
||||
qvt103
|
||||
qvt190
|
||||
qvt201
|
||||
tr175
|
||||
tv912c
|
||||
tv955
|
||||
tv965
|
||||
vt420
|
||||
|
||||
@source:terracre.cpp
|
||||
amatelas // (c) 1986
|
||||
@ -37051,6 +37049,9 @@ tp84 // GX388 (c) 1984
|
||||
tp84a // GX388 (c) 1984
|
||||
tp84b // GX388 (c) 1984
|
||||
|
||||
@source:tr175.cpp
|
||||
tr175 // Relisys
|
||||
|
||||
@source:tr606.cpp
|
||||
tr606 // Roland
|
||||
|
||||
@ -37889,6 +37890,7 @@ vt320 // 1987 Digital Equipment Corporation
|
||||
vt330 // 1987 Digital Equipment Corporation
|
||||
|
||||
@source:vt520.cpp
|
||||
vt420 // 1990 Digital Equipment Corporation
|
||||
vt520 // 1994 Digital Equipment Corporation
|
||||
|
||||
@source:vta2000.cpp
|
||||
|
@ -696,6 +696,7 @@ tmc1800.cpp
|
||||
tmc2000e.cpp
|
||||
tmc600.cpp
|
||||
tosh1000.cpp
|
||||
tr175.cpp
|
||||
tr606.cpp
|
||||
tranz330.cpp
|
||||
tricep.cpp
|
||||
|
Loading…
Reference in New Issue
Block a user