NES M&M1

Not tested, based on the DOS-profile of MM1
fceumm_libretro and nestopia_libretro core tested

<?xml version="1.0" encoding="UTF-8" ?>
<gamelink>

    <card
        title="MIGHT AND MAGIC: BOOK ONE"
        short="MIGHT AND MAGIC"
        titlelo="Might and Magic: Book One"
        sort_name="MIGHT AND MAGIC 1"
        system="NES"
        beta="true"
    />

    <libretro>

    <!-- Might and Magic (U) -->
        <detect system="NES">
            <content_hash>8b783f6dfef1402fc48701b6a3490f55b7ca17e7b859d2703dff015e0f2a5854</content_hash>
            <peek bytes="9f a0 a2 9e" />
        </detect>

    </libretro>

    <regions>

        <region id="80" name="Varn" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" tilex="5" tiley="4"
                label_major="true"
                natural_rows="true"
                x_letters="true" />
        </region>

        <region id="1" name="Sorpigal" ground_floor="true" start_floor="G" auto_create="true" >
            <grid width="16" height="16" />
        </region>

        <region id="2" name="Portsmith" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="3" name="Algary" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="4" name="Dusk" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="5" name="Erliquin" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="7" name="Wizard's Cave" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="11" name="Korin Bluffs" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="12" name="Volcano" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="13" name="The Magic Square" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="14" name="Medusa Lair" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="32" name="Castle Doom" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="33" name="Castle White Wolf" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="34" name="Castle Alamar" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="35" name="Castle Blackridge North" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="36" name="Castle Blackridge South" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="37" name="Castle Dragadune" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="41" name="Forest Stronghold" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="49" name="Ancient Wizard Lair" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="51" name="Warrior's Stronghold" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="53" name="Fabled Gold Building" start_floor="B1" >
            <grid width="16" height="16" />
        </region>

        <region id="57" name="Astral Plane" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

        <region id="64" name="Soul Maze" ground_floor="true" start_floor="G" >
            <grid width="16" height="16" />
        </region>

    </regions>

    <views>

        <!-- CLASSES -->

        <class name="base">
            <xpos offset="0" length="1" min="0" max="13" />
            <ypos offset="1" length="1" min="0" max="13" />
            <face offset="2" length="1" n="00" e="01" s="02" w="03" />
         </class>

        <!-- TOWNS / DUNGEONS -->

        <!-- Sorpigal -->
        <packetview extends="base" region="1">
            <check offset="3" length="1" value="01" />
            <const_floor>G</const_floor>
        </packetview>
        <packetview extends="base" region="1">
            <check offset="3" length="1" value="06" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- Portsmith -->
        <packetview extends="base" region="2">
            <check offset="3" length="1" value="02" />
            <const_floor>G</const_floor>
        </packetview>
        <packetview extends="base" region="2">
            <check offset="3" length="1" value="08" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- Algary -->
        <packetview extends="base" region="3">
            <check offset="3" length="1" value="03" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Dusk -->
        <packetview extends="base" region="4">
            <check offset="3" length="1" value="04" />
            <const_floor>G</const_floor>
        </packetview>
        <packetview extends="base" region="4">
            <check offset="3" length="1" value="0a" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- Erliquin -->
        <packetview extends="base" region="5">
            <check offset="3" length="1" value="05" />
            <const_floor>G</const_floor>
        </packetview>
        <packetview extends="base" region="5">
            <check offset="3" length="1" value="09" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- CASTLES -->

        <!-- Doom -->
        <packetview extends="base" region="32">
            <check offset="3" length="1" value="20" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- White Wolf -->
        <packetview extends="base" region="33">
            <check offset="3" length="1" value="21" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Alamar -->
        <packetview extends="base" region="34">
            <check offset="3" length="1" value="22" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Blackridge North -->
        <packetview extends="base" region="35">
            <check offset="3" length="1" value="23" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Blackridge South -->
        <packetview extends="base" region="36">
            <check offset="3" length="1" value="24" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Dragadune -->
        <packetview extends="base" region="37">
            <check offset="3" length="1" value="25" />
            <const_floor>B1</const_floor>
        </packetview>
        <packetview extends="base" region="37">
            <check offset="3" length="1" value="26" />
            <const_floor>B2</const_floor>
        </packetview>
        <packetview extends="base" region="37">
            <check offset="3" length="1" value="27" />
            <const_floor>B3</const_floor>
        </packetview>
        <packetview extends="base" region="37">
            <check offset="3" length="1" value="28" />
            <const_floor>B4</const_floor>
        </packetview>

        <!-- CAVES / MISC DUNGEONS -->

        <!-- Wizard's Cave -->
        <packetview extends="base" region="7">
            <check offset="3" length="1" value="07" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Korin Bluffs -->
        <packetview extends="base" region="11">
            <check offset="3" length="1" value="0b" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Volcano -->
        <packetview extends="base" region="12">
            <check offset="3" length="1" value="0c" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- The Magic Square -->
        <packetview extends="base" region="13">
            <check offset="3" length="1" value="0d" />
            <const_floor>B1</const_floor>
        </packetview>

        <!-- Medusa Lair -->
        <packetview extends="base" region="14">
            <check offset="3" length="1" value="0e" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Forest Stronghold -->
        <packetview extends="base" region="41">
            <check offset="3" length="1" value="29" />
            <const_floor>B1</const_floor>
        </packetview>
        <packetview extends="base" region="41">
            <check offset="3" length="1" value="30" />
            <const_floor>B2</const_floor>
        </packetview>

        <!-- Ancient Wizard Lair -->
        <packetview extends="base" region="49">
            <check offset="3" length="1" value="31" />
            <const_floor>B1</const_floor>
        </packetview>
        <packetview extends="base" region="49">
            <check offset="3" length="1" value="32" />
            <const_floor>B2</const_floor>
        </packetview>

        <!-- Warrior's Stronghold -->
        <packetview extends="base" region="51">
            <check offset="3" length="1" value="33" />
            <const_floor>B1</const_floor>
        </packetview>
        <packetview extends="base" region="51">
            <check offset="3" length="1" value="34" />
            <const_floor>B2</const_floor>
        </packetview>

        <!-- Fabled Gold Building -->
        <packetview extends="base" region="53">
            <check offset="3" length="1" value="35" />
            <const_floor>B1</const_floor>
        </packetview>
        <packetview extends="base" region="53">
            <check offset="3" length="1" value="36" />
            <const_floor>B2</const_floor>
        </packetview>
        <packetview extends="base" region="53">
            <check offset="3" length="1" value="37" />
            <const_floor>B3</const_floor>
        </packetview>
        <packetview extends="base" region="53">
            <check offset="3" length="1" value="38" />
            <const_floor>B4</const_floor>
        </packetview>

        <!-- Astral Plane -->
        <packetview extends="base" region="57">
            <check offset="3" length="1" value="39" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- Soul Maze -->
        <packetview extends="base" region="64">
            <check offset="3" length="1" value="40" />
            <const_floor>G</const_floor>
        </packetview>

        <!-- VARN -->

        <!-- (A1) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="81" />
            <move x="0" y="-48" />
        </packetview>

        <!-- (B1) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="85" />
            <move x="16" y="-48" />
        </packetview>

        <!-- (C1) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="89" />
            <move x="32" y="-48" />
        </packetview>

        <!-- (D1) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8d" />
            <move x="48" y="-48" />
        </packetview>

        <!-- (E1) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="91" />
            <move x="64" y="-48" />
        </packetview>

        <!-- (A2) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="82" />
            <move x="0" y="-32" />
        </packetview>

        <!-- (B2) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="86" />
            <move x="16" y="-32" />
        </packetview>

        <!-- (C2) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8a" />
            <move x="32" y="-32" />
        </packetview>

        <!-- (D2) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8e" />
            <move x="48" y="-32" />
        </packetview>

        <!-- (E2) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="92" />
            <move x="64" y="-32" />
        </packetview>

        <!-- (A3) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="83" />
            <move x="0" y="-16" />
        </packetview>

        <!-- (B3) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="87" />
            <move x="16" y="-16" />
        </packetview>

        <!-- (C3) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8b" />
            <move x="32" y="-16" />
        </packetview>

        <!-- (D3) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8f" />
            <move x="48" y="-16" />
        </packetview>

        <!-- (E3) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="93" />
            <move x="64" y="-16" />
        </packetview>

        <!-- (A4) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="84" />
            <move x="0" y="0" />
        </packetview>

        <!-- (B4) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="88" />
            <move x="16" y="0" />
        </packetview>

        <!-- (C4) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="8c" />
            <move x="32" y="0" />
        </packetview>

        <!-- (D4) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="90" />
            <move x="48" y="0" />
        </packetview>

        <!-- (E4) -->
        <packetview extends="base" region="80">
            <check offset="3" length="1" value="94" />
            <move x="64" y="0" />
        </packetview>

    </views>

</gamelink>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License