sega/sega_beena.cpp: Added basic book page display.

sega_beena_cart.xml: Put page scans in individual data areas.

frontend/mame/luaengine_mem.cpp: Added a raw read function for memory
regions.

plugins/layout: Added bitmap classes to layout sandbox.
This commit is contained in:
Vas Crabb 2023-11-04 00:37:48 +11:00
parent ddbdbb3a61
commit 6e60af32c1
7 changed files with 564 additions and 35 deletions

View File

@ -419,6 +419,12 @@ manager.machine.devices[tag]:memregion(tag)
Methods
~~~~~~~
region:read(offs, len)
Reads up to the specified length in bytes from the specified offset in the
memory region. The bytes read will be returned as a string. If the
specified length extends beyond the end of the memory region, the returned
string will be shorter than requested. Note that the data will be in host
byte order.
region:read_i{8,16,32,64}(offs)
Reads a signed integer value of the size in bits from the specified offset
in the memory region. The offset is specified in bytes. Reading beyond the

View File

@ -484,6 +484,10 @@ providing whats needed:
creating :ref:`attotime <luascript-ref-attotime>`, :ref:`bounds
<luascript-ref-renderbounds>` and :ref:`colour <luascript-ref-rendercolor>`
objects.
* ``emu.bitmap_ind8``, ``emu.bitmap_ind16``, ``emu.bitmap_ind32``,
``emu.bitmap_ind64``, ``emu.bitmap_yuy16``, ``emu.bitmap_rgb32`` and
``emu.bitmap_argb32`` objects for creating
:ref:`bitmaps <luascript-ref-bitmap>`.
* ``emu.print_verbose``, ``emu.print_error``, ``emu.print_warning``,
``emu.print_info`` and ``emu.print_debug`` functions for diagnostic output.
* Standard Lua ``tonumber``, ``tostring``, ``pairs`` and ``ipairs`` functions,
@ -667,3 +671,21 @@ Get item vertical scroll position
item; larger values pan down. Call with ``nil`` as the argument to restore
the default vertical scroll position handler (based on bindings in the
``yscroll`` child element).
.. _layscript-events-element:
Layout element events
~~~~~~~~~~~~~~~~~~~~~
Layout element events apply to an individual visual element definition.
Draw
``element:set_draw_callback(cb)``
Set callback for additional drawing after the elements components have been
drawn. This gives the script direct control over the final texture when an
element item is drawn.
The callback is passed two arguments: the element state (an integer) and the
32-bit ARGB bitmap at the required size. The callback must not attempt to
resize the bitmap.

View File

@ -15,18 +15,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100034-0041 - 1-nichi 10-pun de E ga Jouzu ni Kakeru Beena (Japan).bin" size="0x800000" crc="e823b0fd" sha1="ade6a02a516e87b21320def50f46d0414d35abac"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x11b6a4c"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x11b6a4c" crc="f8e2e06f" sha1="98d9b75d8324925cdc8996634c192f54b191ab3c"/>
</dataarea>
<dataarea name="page2" size="0x183cb1c"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x183cb1c" crc="e88c8f6e" sha1="9f649a332d0a1be0f3566c63a85a21b1e5618e8b"/>
</dataarea>
<dataarea name="page3" size="0x197c6c4"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x197c6c4" crc="30182f89" sha1="9cb9ccee2d21aaf7358ebfca21cb37b332cb5a98"/>
</dataarea>
<dataarea name="page4" size="0x1867cca"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1867cca" crc="301d2785" sha1="302902938fe6013d5d3254f8738b07b9494a9856"/>
</dataarea>
<dataarea name="page5" size="0x183b750"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x183b750" crc="d61c2830" sha1="fa92264b6f96d49c34c8b06b44469a5e430374f2"/>
</dataarea>
<dataarea name="page6" size="0x178d006"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x178d006" crc="be606943" sha1="e28069d2608cb1bb13a3753ba520a0254112e86b"/>
</dataarea>
<dataarea name="page7" size="0x191749e"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x191749e" crc="8bfd1ea8" sha1="1a9b78ac4238dfa437285e42f0bc7f8fd4a45e92"/>
</dataarea>
<dataarea name="page8" size="0x1756da2"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1756da2" crc="720920cb" sha1="9291de9a4ecbe42ad3eb0fceb03edaf3824de3e9"/>
</dataarea>
<dataarea name="page9" size="0x178b5cb"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x178b5cb" crc="c1c51104" sha1="a2ff91851ebae16649a06474408bea1a2fcb9aba"/>
</dataarea>
<dataarea name="page10" size="0x19850b0"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x19850b0" crc="520272eb" sha1="5d40da3e50581201c87f5460bbef1c328675a3cc"/>
</dataarea>
<dataarea name="page11" size="0x19b8863"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x19b8863" crc="77aa6918" sha1="b2095780c92fb55926e8e26759ebc803fe78d677"/>
</dataarea>
<dataarea name="page12" size="0x14630ba"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x14630ba" crc="d4a4f360" sha1="af125bddb75aba6ffca1a68dd6f226a15cbd7ce6"/>
</dataarea>
</part>
@ -41,18 +63,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100031-1016 - Anpanman no Waku Waku Game Oekaki (Japan).bin" size="0x800000" crc="6330409d" sha1="53d85b60cea717dba39264c9530858fbc621237a"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x1c3a89c"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1c3a89c" crc="3b8f9a7b" sha1="5b3516229015d264bd4efad905d6c9dc7077a8c9"/>
</dataarea>
<dataarea name="page2" size="0x1e83913"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1e83913" crc="bf00ec34" sha1="f0f6454194c2a1c1fba9deca0932e7ca1437b18f"/>
</dataarea>
<dataarea name="page3" size="0x2049aa0"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x2049aa0" crc="ea78bec6" sha1="61a9218ff9b1f4605a47c570f065c1c0dfb88518"/>
</dataarea>
<dataarea name="page4" size="0x1eab879"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1eab879" crc="96ca5bc4" sha1="b9ba414d5eaad753b3f8c117f0a08b7170b3f350"/>
</dataarea>
<dataarea name="page5" size="0x2118de6"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x2118de6" crc="3985b6d4" sha1="c8007d56430b1052b8e78862bfd32ca29b7abc82"/>
</dataarea>
<dataarea name="page6" size="0x1efa1a2"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1efa1a2" crc="5e1bad7c" sha1="43729477aa2fcfa3ef0bdc18c616561105b7c583"/>
</dataarea>
<dataarea name="page7" size="0x2182362"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x2182362" crc="769f0a9b" sha1="b4eea9b8c1fdc4c90585aaa57a0d26d28c70aceb"/>
</dataarea>
<dataarea name="page8" size="0x1f2078f"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1f2078f" crc="abaa43bc" sha1="aa18af322c11830609e22eb1211628514d83304d"/>
</dataarea>
<dataarea name="page9" size="0x203043c"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x203043c" crc="84c9bdaa" sha1="ce889774d56ecf2a53acbb60a16b37c01d495efa"/>
</dataarea>
<dataarea name="page10" size="0x1c7da38"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x1c7da38" crc="2c6dfdeb" sha1="4bae2d8ac7dc6edfc559ff467599279f95741c5d"/>
</dataarea>
<dataarea name="page11" size="0x1acdaca"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x1acdaca" crc="9ff9e13e" sha1="2378dd2da016cccd2340668eee9ca1d0540c816a"/>
</dataarea>
<dataarea name="page12" size="0x1b3ed31"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x1b3ed31" crc="039b0e84" sha1="f90082cea75ec02618deca28bfbae8ec30e2f023"/>
</dataarea>
</part>
@ -67,18 +111,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100008-1000 - Shoku Iku Series 1 Soreike Anpanman-Sukikirai Nai Ko Genki na Ko.bin" size="0x00800000" crc="e7d8333d" sha1="7488dddf64cb0c93b17235db93cf6a1bd5c05c0f"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x01d4aed0"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01d4aed0" crc="b023d113" sha1="6ac75a2710a140d39276d620638b596735290938"/>
</dataarea>
<dataarea name="page2" size="0x01ce8218"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01ce8218" crc="ed4180db" sha1="6867123542392c3282fecc40645443bbb5f7aa43"/>
</dataarea>
<dataarea name="page3" size="0x01d45080"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01d45080" crc="c4fa1860" sha1="6e9f6c45275eedb1bd8f66239ea31ce37138d006"/>
</dataarea>
<dataarea name="page4" size="0x01fca2df"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01fca2df" crc="e357a704" sha1="d5c65a085b86c74b03ec5e5a4ac5e5b7a5442c7f"/>
</dataarea>
<dataarea name="page5" size="0x01fad4a6"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01fad4a6" crc="eafa1e83" sha1="4fd2309b32486ba047ec80f8b928a7019300b8bf"/>
</dataarea>
<dataarea name="page6" size="0x01d8f1bc"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01d8f1bc" crc="8679d842" sha1="b4c2242b7813b3fdc3c9a863069a6384930349a0"/>
</dataarea>
<dataarea name="page7" size="0x01afa23b"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01afa23b" crc="bfe7bf50" sha1="ce14030e60e5552a08174fff2e99bbba6aea1d68"/>
</dataarea>
<dataarea name="page8" size="0x01debbaf"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01debbaf" crc="a6435cf9" sha1="60e48945065a3af2b99db7936c3f0c045f96206b"/>
</dataarea>
<dataarea name="page9" size="0x01d3ab11"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01d3ab11" crc="1407e768" sha1="52ecbfe3a8ce3a5b68a046b4c18221781443b050"/>
</dataarea>
<dataarea name="page10" size="0x013b58bc"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x013b58bc" crc="6afd75f3" sha1="7f77f972a2605cf9e154383a2c3b07f74c06645b"/>
</dataarea>
<dataarea name="page11" size="0x015acf2a"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x015acf2a" crc="3e46f77e" sha1="44ec480201e79ef2d0bdc23fd1b3881cf0de0eb2"/>
</dataarea>
<dataarea name="page12" size="0x016d1853"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x016d1853" crc="ed4ce2e5" sha1="75302e842a5e09378070866dbd3fb370e464e387"/>
</dataarea>
</part>
@ -93,14 +159,28 @@ license:CC0-1.0
<dataarea name="rom" size="0x400000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100001-1000 - Beena Town e Youkoso (Japan).bin" size="0x400000" crc="b86b8d11" sha1="7fae650ccfb574a3d460a5a7e42cad099d06e7e4"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x1ef651a"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1ef651a" crc="79431205" sha1="3cb20f80018f356f711876e9f3623e0bb4fd8dba"/>
</dataarea>
<dataarea name="page2" size="0x1fde709"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1fde709" crc="72778f05" sha1="998f3c6bbd5bdabf1150fe5dcfa5eee0dfc85083"/>
</dataarea>
<dataarea name="page3" size="0x1fbfd28"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1fbfd28" crc="e4f1a9b4" sha1="e88da1ee32615d263b616fc495f5f271892b7d82"/>
</dataarea>
<dataarea name="page4" size="0x1ef0e79"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1ef0e79" crc="1945ee85" sha1="23f2db46075b1d5be48a0df680235b8dc39b62d2"/>
</dataarea>
<dataarea name="page5" size="0x1fbfd2b"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1fbfd2b" crc="4fba7dfa" sha1="bf86eb4bb3f278f425c666b13bf7dd8ecb8ca557"/>
</dataarea>
<dataarea name="page6" size="0x1be6425"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1be6425" crc="5e439b1e" sha1="dc2e26a93644bd02b6fc4cb803509457863af333"/>
</dataarea>
<dataarea name="page7" size="0x1cd7f10"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1cd7f10" crc="140f5dca" sha1="76e5ebf5fa61fc7c0962cb222d9836df1be62d30"/>
</dataarea>
<dataarea name="page8" size="0x203de88"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x203de88" crc="f8b7cca2" sha1="62be480fe570c4a3724693379fe2917af21c428f"/>
</dataarea>
</part>
@ -115,16 +195,34 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100005-1000 - Disney Tanoshii o-Benkyou Series-Mic de Kantan ABC (Japan).bin" size="0x800000" crc="e95e91a0" sha1="ea3dcaca3c1fcc31dbc58674238c7c32d12539ad"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x1eeef5b"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1eeef5b" crc="e3e3bda5" sha1="01588ca8952b15cf96385c16d4f84ffcc84577ef"/>
</dataarea>
<dataarea name="page2" size="0x1e7b04a"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1e7b04a" crc="7587cf18" sha1="e76698fe50b2f35900bdab736f4099540155f3fd"/>
</dataarea>
<dataarea name="page3" size="0x2198fe7"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x2198fe7" crc="bafc211e" sha1="a8a177841bb634f973f0fa1267648cc4d455a812"/>
</dataarea>
<dataarea name="page4" size="0x2100ccd"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x2100ccd" crc="f0a53d77" sha1="33beb3c2a89dcd35c39092bc9fab5f4608993794"/>
</dataarea>
<dataarea name="page5" size="0x2031a2d"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x2031a2d" crc="f1a4ae68" sha1="0143c4ff729e80a5c1c49e41484e6cc7c33ed72e"/>
</dataarea>
<dataarea name="page6" size="0x1e698ee"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1e698ee" crc="dd6cb40e" sha1="17e25c3ad90b3ee7f60208cca67b611bfe4dd8a9"/>
</dataarea>
<dataarea name="page7" size="0x1f1492e"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1f1492e" crc="06dc678d" sha1="2c9009604acfa517a407951e7a5bff95718ab2ab"/>
</dataarea>
<dataarea name="page8" size="0x1d92fc9"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1d92fc9" crc="d3bfc642" sha1="4bcecd682712bd06f6d9901af3ede91efbb35682"/>
</dataarea>
<dataarea name="page9" size="0x1dc3333"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x1dc3333" crc="0a59e863" sha1="4ccce518e2b53494c1f68bbc742b398cd6bfa202"/>
</dataarea>
<dataarea name="page10" size="0x1f05eea"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x1f05eea" crc="541f1068" sha1="22f50cd233c9059129cb90bf4a7d62b9fa04ff71"/>
</dataarea>
</part>
@ -139,16 +237,34 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100032-1001 - Disney Tanoshii Oekaki-o-Mise-ya-san o Tsukutchaou (Japan).bin" size="0x800000" crc="2c3107b0" sha1="19b216901a1c7b06bfc892b6df64f6efef569159"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x1f405f5"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1f405f5" crc="edc4474e" sha1="1efe8aed1e39c7a8e37ea9bb4eb15c6eb0a2164b"/>
</dataarea>
<dataarea name="page2" size="0x1f7cfe2"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1f7cfe2" crc="c1486187" sha1="99f760de274dc1def1997ae369dc5cb994630934"/>
</dataarea>
<dataarea name="page3" size="0x1ce9d44"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1ce9d44" crc="e9f02350" sha1="bc62ac5a118856393378f6c7ba1f37064dbccd83"/>
</dataarea>
<dataarea name="page4" size="0x1fc7930"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1fc7930" crc="a66d0a3f" sha1="c6d274e3057752067773729fa48be167cc569016"/>
</dataarea>
<dataarea name="page5" size="0x1d28699"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1d28699" crc="7a2addfd" sha1="99adfe0a3f1abb853982cf7c7f8bc06ec9396672"/>
</dataarea>
<dataarea name="page6" size="0x1f3acfa"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1f3acfa" crc="d5e6d4f1" sha1="52f6914643b703e662f3c72a8e3af842fdc9ac2d"/>
</dataarea>
<dataarea name="page7" size="0x1c22530"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1c22530" crc="f181f7ff" sha1="adfa30fa2de7e3113d6450c2827486c33a20430e"/>
</dataarea>
<dataarea name="page8" size="0x1fc964e"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1fc964e" crc="113420bb" sha1="8bc8a7f1a2660292e9373eeafdde46c6137d208b"/>
</dataarea>
<dataarea name="page9" size="0x1d0443f"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x1d0443f" crc="1105baea" sha1="f0869e6ac9165cc9c984519d74c16f2badb1ae06"/>
</dataarea>
<dataarea name="page10" size="0x204a0d4"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x204a0d4" crc="2bf18016" sha1="6c7a69cc57224fbb77a77045f64ba5de8f21ae97"/>
</dataarea>
</part>
@ -163,14 +279,28 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100029-1000 - Cooking Beena-o-Ryouri Dekichatta (Japan).bin" size="0x800000" crc="a3f58ab8" sha1="20b3dfe395f7c97a32c93b580040787b98fd6024"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x1f0d2bd"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1f0d2bd" crc="4bee410c" sha1="75c527111df0e12a960ba02a7d6bb023232dd901"/>
</dataarea>
<dataarea name="page2" size="0x1ddee9f"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1ddee9f" crc="bdcf11cb" sha1="654df738a2eb6aec22202a8de9963d0283d80383"/>
</dataarea>
<dataarea name="page3" size="0x1c8258a"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1c8258a" crc="1daf3316" sha1="d7ad47a27b0afc12cc50a5a66d7bb65b870de82f"/>
</dataarea>
<dataarea name="page4" size="0x1e1e700"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1e1e700" crc="458298f3" sha1="b8a72d18eca5b4a603bcb1efcafb7388516aab20"/>
</dataarea>
<dataarea name="page5" size="0x1e643db"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1e643db" crc="68f58736" sha1="7517f5df1f644cac392150a9e1b1f5bc0aee2130"/>
</dataarea>
<dataarea name="page6" size="0x1da0ea5"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1da0ea5" crc="9c567543" sha1="94520e8c1569114ca2b2147f814058073d511df5"/>
</dataarea>
<dataarea name="page7" size="0x1d9813e"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1d9813e" crc="c5bd8898" sha1="b4a717e41959715310c85fab48fc99d5fc88a6e1"/>
</dataarea>
<dataarea name="page8" size="0x1b3d110"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1b3d110" crc="db5ff567" sha1="2d4fcb531a1495630ee4404fbd03e3b7e014fbc9"/>
</dataarea>
</part>
@ -185,18 +315,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="beena.bin" size="0x800000" crc="afa3466c" sha1="b49914f97db95f611489487f558d13d7cceb3299"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x1ca26ec"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1ca26ec" crc="d8e18a54" sha1="887a96931bf622cb673f2550323ad3923eff337e"/>
</dataarea>
<dataarea name="page2" size="0x1e37a3d"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1e37a3d" crc="62ae3535" sha1="d8f6c19c466715df5a568ac7cac8dacb53f2e04a"/>
</dataarea>
<dataarea name="page3" size="0x1ce4f16"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1ce4f16" crc="fe6c72d9" sha1="2c4412eb518fbac2e8519c87e53270d960ecab53"/>
</dataarea>
<dataarea name="page4" size="0x19a864d"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x19a864d" crc="edede3ea" sha1="81914894358c74064aa5f9e980ac37f7140f80c3"/>
</dataarea>
<dataarea name="page5" size="0x18998f4"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x18998f4" crc="16837cc0" sha1="eb86b2943cf603a63cd5b94faa0d06ee8a3139d6"/>
</dataarea>
<dataarea name="page6" size="0x195b7e5"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x195b7e5" crc="3e307e6d" sha1="23ed9ab2a4122d7cb33d8d6174ca901b88647b4d"/>
</dataarea>
<dataarea name="page7" size="0x195df07"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x195df07" crc="efccbb5b" sha1="83de26d52cb6578d8323551a289223c8a305e37d"/>
</dataarea>
<dataarea name="page8" size="0x18a9dd8"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x18a9dd8" crc="7455ebb2" sha1="34576eee067534535cda838a9e94794e2cfee585"/>
</dataarea>
<dataarea name="page9" size="0x17a5c57"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x17a5c57" crc="59ead843" sha1="29c4cd7929cfd68f41d65024ee5ca3cc62fa4a8b"/>
</dataarea>
<dataarea name="page10" size="0x186546b"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x186546b" crc="6d3d8c91" sha1="9909322c09277ddd306f10f9a04a897b0fe74961"/>
</dataarea>
<dataarea name="page11" size="0x179d3a8"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x179d3a8" crc="c3911254" sha1="2d2932e97a0b20a9b5e5fd78a3bbad0f1e146813"/>
</dataarea>
<dataarea name="page12" size="0x187a9df"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x187a9df" crc="f1cdc95d" sha1="aa926c9360edcecdaa3a9ce1b5e17ee61048cee4"/>
</dataarea>
</part>
@ -211,18 +363,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100002-1200 - Soreike Anpanman Hajimete Kaketa yo Oboeta yo Hiragana Katakana - Gojuuon Board Kinou-tsuki.bin" size="0x00800000" crc="b6e038c9" sha1="b12bd91e8ead04f558d32ce9086102a3c99f13eb"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x01b8b6ae"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01b8b6ae" crc="e4c3a37a" sha1="de492d61bf91bee346734f62a6db257a6ce74f1c"/>
</dataarea>
<dataarea name="page2" size="0x01c3f600"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01c3f600" crc="ef0fccc9" sha1="cc014da292163146e08d89672149ba7dc181f1fc"/>
</dataarea>
<dataarea name="page3" size="0x01d61a02"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01d61a02" crc="84682ff3" sha1="216425eb85d6cc5855e853d0b135a6426fe2c0a0"/>
</dataarea>
<dataarea name="page4" size="0x01e10787"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01e10787" crc="d5aa2d56" sha1="42902317bef31b659e9c40f4c51f554aefd610cf"/>
</dataarea>
<dataarea name="page5" size="0x01da7955"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01da7955" crc="e4795152" sha1="5bd9bd97721b1b69b1362b4261052b9e3a58b8c6"/>
</dataarea>
<dataarea name="page6" size="0x01d3ac0d"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01d3ac0d" crc="1a58e117" sha1="aa8bb93b8157cc0c8dc895f72203d9ed807e164b"/>
</dataarea>
<dataarea name="page7" size="0x01ec5159"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01ec5159" crc="f354c1d8" sha1="05959842511ce24faaaf16b7beefc1f3cee3a1e3"/>
</dataarea>
<dataarea name="page8" size="0x01e66848"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01e66848" crc="95a956fc" sha1="72e116dd2400d321b704e35e1b8d13d2129cae6c"/>
</dataarea>
<dataarea name="page9" size="0x01e5551d"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01e5551d" crc="42973b09" sha1="182c26df4a2a29893a6a2efe769a4744084e67aa"/>
</dataarea>
<dataarea name="page10" size="0x012bc820"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x012bc820" crc="05f22b7f" sha1="a87f840b3c84e7f1886eead28ea9879ca3630e79"/>
</dataarea>
<dataarea name="page11" size="0x01213cba"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x01213cba" crc="e1e8b81a" sha1="4c0a484b4156fd07a4f2b8eb96d7475e8559c6d0"/>
</dataarea>
<dataarea name="page12" size="0x01421db2"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x01421db2" crc="6b5728a5" sha1="024d1e0deae7bcbdf7f3b6c4483de91b7fd96961"/>
</dataarea>
</part>
@ -237,16 +411,34 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100035-1000 - Hello Kitty no Hiragana Katakana o-Namae Kaitemiyou (Japan).bin" size="0x800000" crc="133ec328" sha1="0bce6e18b5b9ed3f74791a72cb8656b0f5dd18bc"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x1a60ce1"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1a60ce1" crc="53d0e6d1" sha1="aabcf9e28eadce0809b8120a1a3e1e9e7fbb6e80"/>
</dataarea>
<dataarea name="page2" size="0x1c5078f"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1c5078f" crc="60b29e06" sha1="12db6a9725e9c0d1fd5f56d29b4e3bcb31ed0149"/>
</dataarea>
<dataarea name="page3" size="0x1d2cb24"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1d2cb24" crc="b7d78291" sha1="2c892bc3484b82a8096ccd385e89e4646dfced6d"/>
</dataarea>
<dataarea name="page4" size="0x1c749e5"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1c749e5" crc="d01b6c3b" sha1="b25c997ebe8af95ab5ace120fa2c6fa6082fc2b8"/>
</dataarea>
<dataarea name="page5" size="0x1d60ac0"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1d60ac0" crc="ceb605eb" sha1="3ffed517a43cf35df20d50c2b94e7974e971a411"/>
</dataarea>
<dataarea name="page6" size="0x1b0ff5f"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1b0ff5f" crc="72b4401a" sha1="f280051bc8d1cd5a63155e8a4a4e74938d140f1a"/>
</dataarea>
<dataarea name="page7" size="0x1b8bb97"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1b8bb97" crc="3f749e5b" sha1="64fe37a8c00aac7db57a12c2e0167fb116639d03"/>
</dataarea>
<dataarea name="page8" size="0x1e0d5ed"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1e0d5ed" crc="9c1dc5fa" sha1="92bc3bcab2c6ba1d74aeb4f1fb735d9278be26f5"/>
</dataarea>
<dataarea name="page9" size="0x1ee884c"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x1ee884c" crc="4cf83534" sha1="14690fd451c4ad4b84c9d2221196415b7021e0fa"/>
</dataarea>
<dataarea name="page10" size="0x1798a61"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x1798a61" crc="81de18d9" sha1="5a27602c43b6e3497018ce26655c93b1a207cc65"/>
</dataarea>
</part>
@ -261,16 +453,34 @@ license:CC0-1.0
<dataarea name="rom" size="0x400000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100006-1000 - Kazoku Minna no Nouryoku Trainer (Japan).bin" size="0x00400000" crc="8097f3ec" sha1="1e65579b74f141591db2122b34ce293d1d2120ff"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x01e37832"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01e37832" crc="8de70b0f" sha1="d198caa20060f49774c2e2103fe1ef168f16e13a"/>
</dataarea>
<dataarea name="page2" size="0x01d7eeb6"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01d7eeb6" crc="c8677ffc" sha1="85419e7ae1f6f85659ab848855be4db192b20e21"/>
</dataarea>
<dataarea name="page3" size="0x01e24e0f"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01e24e0f" crc="ffd4762a" sha1="9a84422272bed23c77392031c1b858c6ec5e2d1a"/>
</dataarea>
<dataarea name="page4" size="0x01d465df"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01d465df" crc="cb60e2d6" sha1="5324a22fdde1e24f8797cba51e9589f3b81d3e41"/>
</dataarea>
<dataarea name="page5" size="0x01b9db20"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01b9db20" crc="fabd3a8f" sha1="255574ae14304d9068029189aeb722357a257c5c"/>
</dataarea>
<dataarea name="page6" size="0x01d98d45"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01d98d45" crc="f560da1d" sha1="857ba8882146b2cf8c35b17fb66711310741f52d"/>
</dataarea>
<dataarea name="page7" size="0x01a0648c"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01a0648c" crc="6b83e144" sha1="b33cd0ba66270ca99661b28eab5892e21ac42b2f"/>
</dataarea>
<dataarea name="page8" size="0x01dfa9e0"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01dfa9e0" crc="3fd345d6" sha1="8ef21ccfa7dd473f269996bf5de8c7b7c320cd88"/>
</dataarea>
<dataarea name="page9" size="0x01124676"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01124676" crc="b1a8e3cc" sha1="231048de3bc7863e47a8b5da79a8a5bed501d7b6"/>
</dataarea>
<dataarea name="page10" size="0x01e618a8"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01e618a8" crc="571593da" sha1="4125714a58e526b74e7c2e60294bb6450c2bdc8c"/>
</dataarea>
</part>
@ -285,18 +495,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100009-1000 - Kouchuu Ouja Mushiking-Mori no Tami no Densetsu-Minna de Tanken Kouchuu no Mori (Japan).bin" size="0x800000" crc="99154825" sha1="566978b9e11dfc1d7a1012b56d8e638927f2eadb"/>
</dataarea>
<dataarea name="pages" size="0x2500000"> <!-- book pages -->
<dataarea name="page1" size="0x21cb47c"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x21cb47c" crc="548c67cf" sha1="4ac40d4c141b13dff7c24b13d85a744a8617d727"/>
</dataarea>
<dataarea name="page2" size="0x20df2aa"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x20df2aa" crc="55c28217" sha1="e8bd6cab2d4538d276313583f23308575d42d4c5"/>
</dataarea>
<dataarea name="page3" size="0x2103669"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x2103669" crc="d6031ee4" sha1="934f551cf6389783aa2ab78b8c614369de03677c"/>
</dataarea>
<dataarea name="page4" size="0x20cc9ea"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x20cc9ea" crc="4748fbf6" sha1="fdd2aa1762e0d6b776c7709f809c02921d64ce5d"/>
</dataarea>
<dataarea name="page5" size="0x209cadd"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x209cadd" crc="25ec2521" sha1="bbd92191a6586de4c13ec9f71294762735703629"/>
</dataarea>
<dataarea name="page6" size="0x20c781e"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x20c781e" crc="2178e60c" sha1="4b2abcc7e2cff68134e2ae9e36fc31dbbec656bf"/>
</dataarea>
<dataarea name="page7" size="0x2122935"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x2122935" crc="8acbe635" sha1="9d8b9ea7345261c191248944381ac876aec79d62"/>
</dataarea>
<dataarea name="page8" size="0x21ad9fc"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x21ad9fc" crc="976e7325" sha1="ae7100bd7f84fa59282aba092427bf54150f79c6"/>
</dataarea>
<dataarea name="page9" size="0x2061a8f"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x2061a8f" crc="fb534812" sha1="c769acf84797145a73808ecc95db9909d8f2fd1d"/>
</dataarea>
<dataarea name="page10" size="0x1f090ce"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x1f090ce" crc="9e939c49" sha1="20af9e67afd71eacba2bc6b47af68db9a0c9ed0a"/>
</dataarea>
<dataarea name="page11" size="0x1f6baf6"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x1f6baf6" crc="2c2929f0" sha1="ab071639eef8b459eb36204d2c21daa735e9eb02"/>
</dataarea>
<dataarea name="page12" size="0x20d25fd"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x20d25fd" crc="6350eb48" sha1="d1e1e6f0c812e490ea120508257bb33ed61609e3"/>
</dataarea>
</part>
@ -311,16 +543,34 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="T-160001-1000 - Meet Bub-Bub to Eigo Tanken (Japan).bin" size="0x00800000" crc="283b3c85" sha1="343c27c192da191d91fea43246da924b8f1af6ee"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x01f47bf2"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01f47bf2" crc="05abebd9" sha1="3ebe1d84e05630c62b87206c3cb2963164690971"/>
</dataarea>
<dataarea name="page2" size="0x01cfada2"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01cfada2" crc="4bb75849" sha1="368b151b3f2028766ca1b4980e7610021b9ba6fa"/>
</dataarea>
<dataarea name="page3" size="0x01e36d07"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01e36d07" crc="198755b3" sha1="24d3a83077de597d1b47db5c1ab97913dacbda8d"/>
</dataarea>
<dataarea name="page4" size="0x020d41a2"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x020d41a2" crc="2c0032fc" sha1="df25c4886d7ea107c1566e9e3576735db47af503"/>
</dataarea>
<dataarea name="page5" size="0x021a5c58"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x021a5c58" crc="501027f7" sha1="828ee2de3de6d478c57e256c72b37361b38c11c5"/>
</dataarea>
<dataarea name="page6" size="0x01f3b8c8"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01f3b8c8" crc="7eb4cb7e" sha1="150bafd30d89360366a6052117b76bdb22e0cfc3"/>
</dataarea>
<dataarea name="page7" size="0x020a9378"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x020a9378" crc="89106788" sha1="0ae76653260ca74e6fa137836eab8724486e116c"/>
</dataarea>
<dataarea name="page8" size="0x02006605"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x02006605" crc="b74b7bb6" sha1="5fdd587235c8228e3aa41a8e9ffd9b2fc970cf26"/>
</dataarea>
<dataarea name="page9" size="0x01e9bba4"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01e9bba4" crc="25cf2047" sha1="fb63bf3c6927d51ecc5e7e4de4a8a9f40b78d996"/>
</dataarea>
<dataarea name="page10" size="0x01d6ff5c"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01d6ff5c" crc="316c4d0a" sha1="ecdef9b4e1fec98534f8142ec0eca253eb30ea28"/>
</dataarea>
</part>
@ -335,18 +585,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100013-1101 - Oshare Majo Love and Berry-Cute ni Oshare (Japan).bin" size="0x00800000" crc="f5245eea" sha1="2006c3fd2b662f4bb77388bfeefc2c885908fc5f"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x0198d462"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x0198d462" crc="2d538544" sha1="b941ee5a0ab7b10a72fb966084ed7adbc384fa91"/>
</dataarea>
<dataarea name="page2" size="0x01af32a1"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01af32a1" crc="f141c0d1" sha1="89c0ff1ca5beff44a1e044f8aae2e55e549105e6"/>
</dataarea>
<dataarea name="page3" size="0x01c30083"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01c30083" crc="87954a64" sha1="d9d84721d283189626d19655235033c654e9813f"/>
</dataarea>
<dataarea name="page4" size="0x01dffa11"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01dffa11" crc="3746d018" sha1="937fd82e8882920f3194eb0c97420a68a4a1132b"/>
</dataarea>
<dataarea name="page5" size="0x01f0860b"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01f0860b" crc="ee2776b4" sha1="0b2b099030489551f912a90fbce6a38eb0a56229"/>
</dataarea>
<dataarea name="page6" size="0x01acb747"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01acb747" crc="2f595a0c" sha1="7ce02197c82688c48f6bfd8175ee647c01bcef3a"/>
</dataarea>
<dataarea name="page7" size="0x01d60cb6"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01d60cb6" crc="74a97b09" sha1="cea02a52355ca503d8702aca202017a0971057e9"/>
</dataarea>
<dataarea name="page8" size="0x01983b69"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01983b69" crc="0fb3c5a8" sha1="be5b3831dc5de811eb18b9439511aad9cd22bf86"/>
</dataarea>
<dataarea name="page9" size="0x01d24a30"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01d24a30" crc="4d409c74" sha1="fd4c84ac9f3cc922eb1c8fc2dd141594eff1d6a5"/>
</dataarea>
<dataarea name="page10" size="0x01b31796"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01b31796" crc="c3b9cd4a" sha1="165817c2cc83797bfd6015b49205385df9a1290e"/>
</dataarea>
<dataarea name="page11" size="0x01b0a1b4"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x01b0a1b4" crc="38abc9e1" sha1="06321f73833d10c9f2fc76ca0d554eee835a7ea1"/>
</dataarea>
<dataarea name="page12" size="0x019ad5a7"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x019ad5a7" crc="5d3cfe64" sha1="b6170feb62793945dc3fab6bd196990542e1f03a"/>
</dataarea>
</part>
@ -361,18 +633,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x400000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100003-1000 - Partner In TV o-Uchi ni Wan-chan ga Yattekita (Japan).bin" size="0x400000" crc="3a3c9f33" sha1="ba2ed83d1caf05b0e84c39d2939b5ac1e11d160f"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x1e8a179"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1e8a179" crc="35fb351c" sha1="e90964dbfb562cc72f35300563c1e00c32fa2117"/>
</dataarea>
<dataarea name="page2" size="0x1dac8f8"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1dac8f8" crc="d36a7596" sha1="f9adca966ebb7e36027b1011670903d84b478807"/>
</dataarea>
<dataarea name="page3" size="0x1d5e4a6"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1d5e4a6" crc="6df2ce9a" sha1="ad2cdf2038f6d14ff4e7cb251ab843bdf0b4c292"/>
</dataarea>
<dataarea name="page4" size="0x1c75a86"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1c75a86" crc="cfb1ba56" sha1="d6e4890eb3c70bf352d4ada7377ea0ebfbafe6e4"/>
</dataarea>
<dataarea name="page5" size="0x1bd986d"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1bd986d" crc="127fdd20" sha1="ad78629896ec068ceed08f4953b8f74d9b9118d9"/>
</dataarea>
<dataarea name="page6" size="0x1f8d91c"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1f8d91c" crc="34701f5e" sha1="27e539f122ca1a41444bb5b939377c61abac0b24"/>
</dataarea>
<dataarea name="page7" size="0x1de8d7d"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1de8d7d" crc="32c3b95b" sha1="5a09b326b481367f045c4f6463a8562b0bbd61a4"/>
</dataarea>
<dataarea name="page8" size="0x1a09b12"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1a09b12" crc="d55b43dd" sha1="1dd7fcc5af986936b549e3f961f734ddff640396"/>
</dataarea>
<dataarea name="page9" size="0x1b079d7"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x1b079d7" crc="37f6e79b" sha1="c340a509d0172032ada16e445324e5b55c35dee3"/>
</dataarea>
<dataarea name="page10" size="0x19e9638"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x19e9638" crc="acffec41" sha1="26b55fde4901843fe8949155779ca7908b91ec1e"/>
</dataarea>
<dataarea name="page11" size="0x1cb2875"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x1cb2875" crc="abe16a75" sha1="2222efa35f600309e961a5088d25676126a391de"/>
</dataarea>
<dataarea name="page12" size="0x1ef088f"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x1ef088f" crc="47a4b952" sha1="3c5642a7d644fac6d029b183150315ce230fd089"/>
</dataarea>
</part>
@ -387,14 +681,28 @@ license:CC0-1.0
<dataarea name="rom" size="0x400000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100018-1000 - Point Gakushuu Tokei (Japan).bin" size="0x400000" crc="fa74bd0b" sha1="46e3c8f68b18f3b72cf0f3b404960e4534bd4eeb"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x1b01d31"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1b01d31" crc="64bd8b70" sha1="13093c55209e9bc5aae9074c11b0f20b10ba27c2"/>
</dataarea>
<dataarea name="page2" size="0x1c7c875"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x1c7c875" crc="ffbf7001" sha1="a8c46fafb745aae29540e9438c114df24953b644"/>
</dataarea>
<dataarea name="page3" size="0x1d6c05a"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1d6c05a" crc="33ad5c4e" sha1="7c6eb6bd0552fa118cb2535f05a082ce9e621ced"/>
</dataarea>
<dataarea name="page4" size="0x15f2613"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x15f2613" crc="f1efe876" sha1="2fffe5aa9d75a4ecaa62b225a9c1489bfb567443"/>
</dataarea>
<dataarea name="page5" size="0x1a22cc7"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1a22cc7" crc="d5d69788" sha1="72c456feaa43fc6da61e67b75f2de9825f002da6"/>
</dataarea>
<dataarea name="page6" size="0x1d487f1"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1d487f1" crc="cd0163ed" sha1="24bf937e2295b4718b7df775a2f1e2ba5648b95c"/>
</dataarea>
<dataarea name="page7" size="0x1da9a29"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1da9a29" crc="7efb76c2" sha1="3b9c474dece679d6b073cffb31d0b641bf5c34f9"/>
</dataarea>
<dataarea name="page8" size="0x1a55c9e"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1a55c9e" crc="c5ebe3a8" sha1="34e3f80757a8fbeef8f20110c585b31ecadeb891"/>
</dataarea>
</part>
@ -409,18 +717,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100042-1000 - Pocket Monsters Best Wishes Chinou Ikusei Pokemon Daiundoukai (Japan).bin" size="0x800000" crc="a88ec549" sha1="866b56789fcb118e1ac50a8214a630a092aadd2f"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x1df00e4"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x1df00e4" crc="842d5598" sha1="0d9150822828726ee5d8cdf179afefa11f79ed02"/>
</dataarea>
<dataarea name="page2" size="0x2000723"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x2000723" crc="0b8cc1e4" sha1="c68e79627e0c13ea1165ce11c4a45ab34afa28f3"/>
</dataarea>
<dataarea name="page3" size="0x1f19d2f"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x1f19d2f" crc="eb600fef" sha1="b16c3698d201fc27fbe94065e3b7392971cb9b70"/>
</dataarea>
<dataarea name="page4" size="0x1e2f618"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x1e2f618" crc="2e154295" sha1="001d44b79abdeb3ec48d1c898cad98a36fc407a0"/>
</dataarea>
<dataarea name="page5" size="0x1e276d7"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x1e276d7" crc="4136418f" sha1="733c9c80f8614aaa24e9174e9a5f1c524232cd4c"/>
</dataarea>
<dataarea name="page6" size="0x1e2b00c"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x1e2b00c" crc="1dc6ee4e" sha1="a6d96b70759d50b54fbfff91b03e63a7270907d7"/>
</dataarea>
<dataarea name="page7" size="0x1cff872"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x1cff872" crc="1a607e99" sha1="16d3a2f2788b38f451e8cbb44e6a31525586ae5f"/>
</dataarea>
<dataarea name="page8" size="0x1ad9529"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x1ad9529" crc="6701731b" sha1="d2b6718907513239f664e184cfa5d150d6957289"/>
</dataarea>
<dataarea name="page9" size="0x1b85a1c"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x1b85a1c" crc="5670b958" sha1="84576ba7e1155f3155f65b42af757d41aee80934"/>
</dataarea>
<dataarea name="page10" size="0x1c6296e"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x1c6296e" crc="66df1325" sha1="49778e96652a113785e3d75b0e6de17d4ebce4ef"/>
</dataarea>
<dataarea name="page11" size="0x1d3f5a5"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x1d3f5a5" crc="63fe33c2" sha1="130acb3c9317e21f2fee4e524226ade5df85cec2"/>
</dataarea>
<dataarea name="page12" size="0x1c292dc"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x1c292dc" crc="c47162c8" sha1="0cb2a72e71082f5ded491dac93562977af6fa984"/>
</dataarea>
</part>
@ -435,18 +765,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="S-100039-1100 - Pocket Monsters Diamond and Pearl Pokemon o Sagase Meiro de Daibouken.bin" size="0x00800000" crc="7bbf9599" sha1="25aba3628c627c3ed603f14cb50cfe6101816db7"/>
</dataarea>
<dataarea name="pages" size="0x4000000"> <!-- book pages -->
<dataarea name="page1" size="0x0204f417"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x0204f417" crc="088c3d4c" sha1="d66a27f30374568998cff2ed89e494ac7f449687"/>
</dataarea>
<dataarea name="page2" size="0x020d5ff7"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x020d5ff7" crc="3f992374" sha1="b5dd1f438afc18ac6ca78aa2757129bb1f53b54e"/>
</dataarea>
<dataarea name="page3" size="0x020912fe"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x020912fe" crc="b064c6ea" sha1="a4107dbcdc40713a651da52653b9e639b2d9addc"/>
</dataarea>
<dataarea name="page4" size="0x01d4bccc"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01d4bccc" crc="6e36704b" sha1="8c92b5ea3f0c6b5fe32b38aa6cb4d53643979305"/>
</dataarea>
<dataarea name="page5" size="0x01cc6307"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01cc6307" crc="3d97eea3" sha1="274e3f8fa546e123737ee8a835dadcb9ab856cb9"/>
</dataarea>
<dataarea name="page6" size="0x0213b831"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x0213b831" crc="175f961f" sha1="32dd1aec5d9cdc21b7271c3d03fa7fb40efd8e13"/>
</dataarea>
<dataarea name="page7" size="0x0218c656"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x0218c656" crc="93c42240" sha1="4c28d441a1869c4575606afd6740cee7f643c427"/>
</dataarea>
<dataarea name="page8" size="0x01c103b2"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01c103b2" crc="776645c5" sha1="6d2d4ab8e0fb414f9adc3cbb8d800a66fabe52ca"/>
</dataarea>
<dataarea name="page9" size="0x01d39b58"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01d39b58" crc="aaeeba31" sha1="b14cf1b928f6dd776fe07025af57ca3025adc09e"/>
</dataarea>
<dataarea name="page10" size="0x01f12421"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01f12421" crc="b15278dc" sha1="676b0ad811e37fccb4752f0c7dea918feaafe30f"/>
</dataarea>
<dataarea name="page11" size="0x01f95984"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x01f95984" crc="7ab6d5a4" sha1="730c62496f275e2afa8cb541820393a343406065"/>
</dataarea>
<dataarea name="page12" size="0x01caf8d8"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x01caf8d8" crc="4bde2da0" sha1="4cd3056b090baea6c31e22033595d6d62642310d"/>
</dataarea>
</part>
@ -461,18 +813,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="T-110008-1101 - Yes PreCure 5 Asonde Oboeyou Hiragana.bin" size="0x00800000" crc="6ae77335" sha1="29650349b117b96105882da7b12cac8fe9a04813"/>
</dataarea>
<dataarea name="pages" size="0x4000000"> <!-- book pages -->
<dataarea name="page1" size="0x01fd2372"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01fd2372" crc="9290ac04" sha1="d106071e01ee790d85d46a2378ce5f638331b67a"/>
</dataarea>
<dataarea name="page2" size="0x0200a259"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x0200a259" crc="d919d19b" sha1="20444680d29b6a66471cbdb77537ba054753b9d6"/>
</dataarea>
<dataarea name="page3" size="0x01fd80c8"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01fd80c8" crc="97c2ba5e" sha1="128b226187bfc53e4b1abf7be04c068a61c88240"/>
</dataarea>
<dataarea name="page4" size="0x01e53520"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01e53520" crc="05504999" sha1="5e0367e18c3b592c14bda31c07ffae9ec11b1c31"/>
</dataarea>
<dataarea name="page5" size="0x01d820ff"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01d820ff" crc="586f06b0" sha1="89e66342feb2bf31f3137549999c43e1db3cb5e0"/>
</dataarea>
<dataarea name="page6" size="0x01f19795"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01f19795" crc="bb34e7ae" sha1="d4cf3a99400876b25101036ffd4eac3fa2294c36"/>
</dataarea>
<dataarea name="page7" size="0x01ea5f1a"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01ea5f1a" crc="b3fe0898" sha1="8d8adc11188e72b7a611463aa02f79f594c1ac5f"/>
</dataarea>
<dataarea name="page8" size="0x01c861fa"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01c861fa" crc="97768994" sha1="c79a1578ad7af9fc26c6f31a1feaeeeac9e50844"/>
</dataarea>
<dataarea name="page9" size="0x01b8988d"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01b8988d" crc="b0d4350e" sha1="c9286072197320be847c5a06bc548a10316e344c"/>
</dataarea>
<dataarea name="page10" size="0x01c6cf67"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01c6cf67" crc="057776ac" sha1="b4de54d5242557de642828444da7744031555160"/>
</dataarea>
<dataarea name="page11" size="0x01cb84db"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x01cb84db" crc="ab9576a2" sha1="02e90539aed46f6813cca5a15ade32f323927678"/>
</dataarea>
<dataarea name="page12" size="0x02068f02"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x02068f02" crc="9122ba08" sha1="4989f83caf182b87721ef839eaf35605e0fa3490"/>
</dataarea>
</part>
@ -487,18 +861,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="T-110015-1000 - Oshare ni Henshin HeartCatch PreCure (Japan).bin" size="0x00800000" crc="e2575324" sha1="500ad94f4dda4b886ff1991ddc4a730d94b37cd6"/>
</dataarea>
<dataarea name="pages" size="0x3000000"> <!-- book pages -->
<dataarea name="page1" size="0x01e37d48"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x01e37d48" crc="579e4159" sha1="75fd0eaa077c12507c78711ce099a76878eb532d"/>
</dataarea>
<dataarea name="page2" size="0x01db5256"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x01db5256" crc="9f453453" sha1="b51e2ed7a73b0aff4a8b3510fdffff08b65e91ce"/>
</dataarea>
<dataarea name="page3" size="0x01dfb0f8"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x01dfb0f8" crc="68311309" sha1="0194118cb242910b0607fd582374e516c146c04d"/>
</dataarea>
<dataarea name="page4" size="0x01d0e912"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01d0e912" crc="4aec06f8" sha1="4ec004b883d2049245c195612aff1f5432eee5ee"/>
</dataarea>
<dataarea name="page5" size="0x01daf868"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x01daf868" crc="29825290" sha1="3b7f871b42e93f4c5e0628e58e4ac9167b31e742"/>
</dataarea>
<dataarea name="page6" size="0x01c8de2e"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x01c8de2e" crc="1599df83" sha1="24195c85a66abd87088dafad14765965f4bd11ad"/>
</dataarea>
<dataarea name="page7" size="0x01ce0348"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01ce0348" crc="4756a0ae" sha1="bc331f2986b1f412286969212954c61202b49374"/>
</dataarea>
<dataarea name="page8" size="0x01f35f14"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x01f35f14" crc="b1a80b5a" sha1="8e7fc65993db25d11e9f9c7077b40733fd203f62"/>
</dataarea>
<dataarea name="page9" size="0x0203ebe3"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x0203ebe3" crc="4eb371b4" sha1="01fb11361a2eda3dc636281d0cc8670c065f56f8"/>
</dataarea>
<dataarea name="page10" size="0x01bb54b5"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01bb54b5" crc="70c6cd1f" sha1="24d1b18ff1540c2d23671ab88aaca4e08dbe3865"/>
</dataarea>
<dataarea name="page11" size="0x01c4a92a"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x01c4a92a" crc="37bbe4a9" sha1="cdc876ae65a91384791b689db8024eb2f169a158"/>
</dataarea>
<dataarea name="page12" size="0x01e16773"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x01e16773" crc="8f7ec572" sha1="6433b383cdd164fbb07fccdfed5ce4b37bea7476"/>
</dataarea>
</part>
@ -513,18 +909,40 @@ license:CC0-1.0
<dataarea name="rom" size="0x800000" width="32" endianness="big">
<rom loadflag="load16_word_swap" name="T-110012-1000 - Samurai Sentai Shinkenger Battle ga Ippai Iza Mairu.bin" size="0x00800000" crc="41ed4615" sha1="f0106c4a79f9aff9815318eadc272c7c62a50ec2"/>
</dataarea>
<dataarea name="pages" size="0x2000000"> <!-- book pages -->
<dataarea name="page1" size="0x019ac721"> <!-- book pages -->
<rom name="0 - 0001.png" size="0x019ac721" crc="2d276d8a" sha1="ff068e3823c692a21c2134b6a34aa4835d6d8ac1"/>
</dataarea>
<dataarea name="page2" size="0x019e6a2b"> <!-- book pages -->
<rom name="0 - 0002.png" size="0x019e6a2b" crc="cea0a7a0" sha1="8bba02926c08b1f976ae62221ef03674d807b50c"/>
</dataarea>
<dataarea name="page3" size="0x019e2c25"> <!-- book pages -->
<rom name="0 - 0003.png" size="0x019e2c25" crc="c983678b" sha1="1526f789405ee21ccd1c6ff0dbf131adca6749fa"/>
</dataarea>
<dataarea name="page4" size="0x01854a14"> <!-- book pages -->
<rom name="0 - 0004.png" size="0x01854a14" crc="1cd4866e" sha1="edafdd7b34fe2baac8374fc692e91c0e62d3c4c5"/>
</dataarea>
<dataarea name="page5" size="0x019e157b"> <!-- book pages -->
<rom name="0 - 0005.png" size="0x019e157b" crc="ffbfc659" sha1="f0fdd96f2a641671c0e55b64be11d6fa279c3014"/>
</dataarea>
<dataarea name="page6" size="0x018ba810"> <!-- book pages -->
<rom name="0 - 0006.png" size="0x018ba810" crc="6b904c5a" sha1="46ca949377cd473a2ad3d67c70c8d12f2cbaaead"/>
</dataarea>
<dataarea name="page7" size="0x01969cc7"> <!-- book pages -->
<rom name="0 - 0007.png" size="0x01969cc7" crc="4bb32ec7" sha1="f7a28ce039dd3dc7ada8eae1d617631391135f66"/>
</dataarea>
<dataarea name="page8" size="0x0172a1fe"> <!-- book pages -->
<rom name="0 - 0008.png" size="0x0172a1fe" crc="f41e7f36" sha1="52af6f1b1dd31c75c0004b8280ec6e8da3f57cf1"/>
</dataarea>
<dataarea name="page9" size="0x01a7a889"> <!-- book pages -->
<rom name="0 - 0009.png" size="0x01a7a889" crc="9914b734" sha1="b64ab24e3bf41b07310da2cde90aa2088602aaa1"/>
</dataarea>
<dataarea name="page10" size="0x01876e20"> <!-- book pages -->
<rom name="0 - 0010.png" size="0x01876e20" crc="937ce7ea" sha1="664e8bdb23ff2be1183ea235504fba289f5af279"/>
</dataarea>
<dataarea name="page11" size="0x018f0769"> <!-- book pages -->
<rom name="0 - 0011.png" size="0x018f0769" crc="aeb76e32" sha1="797ebb767c30496d1caddb15a24c397941b295fd"/>
</dataarea>
<dataarea name="page12" size="0x018bfb44"> <!-- book pages -->
<rom name="0 - 0012.png" size="0x018bfb44" crc="ed48a893" sha1="e0ca297e88dec53c74462a3018c904d41ffde037"/>
</dataarea>
</part>

View File

@ -22,6 +22,13 @@ function layout.startplugin()
attotime = emu.attotime,
render_bounds = emu.render_bounds,
render_color = emu.render_color,
bitmap_ind8 = emu.bitmap_ind8,
bitmap_ind16 = emu.bitmap_ind16,
bitmap_ind32 = emu.bitmap_ind32,
bitmap_ind64 = emu.bitmap_ind64,
bitmap_yuy16 = emu.bitmap_yuy16,
bitmap_rgb32 = emu.bitmap_rgb32,
bitmap_argb32 = emu.bitmap_argb32,
print_verbose = emu.print_verbose,
print_error = emu.print_error,
print_warning = emu.print_warning,

View File

@ -1405,6 +1405,18 @@ if opt_tool(FORMATS, "MZ_CAS") then
}
end
--------------------------------------------------
--
--@src/lib/formats/nabupc_dsk.h,FORMATS["NABUPC_DSK"] = true
--------------------------------------------------
if opt_tool(FORMATS, "NABUPC_DSK") then
files {
MAME_DIR.. "src/lib/formats/nabupc_dsk.cpp",
MAME_DIR.. "src/lib/formats/nabupc_dsk.h",
}
end
--------------------------------------------------
--
--@src/lib/formats/nanos_dsk.h,FORMATS["NANOS_DSK"] = true
@ -2318,15 +2330,4 @@ if opt_tool(FORMATS, "FS_HP98X5") then
}
end
--------------------------------------------------
--
--@src/lib/formats/nabupc_dsk.h,FORMATS["NABUPC_DSK"] = true
--------------------------------------------------
if opt_tool(FORMATS, "NABUPC_DSK") then
files {
MAME_DIR.. "src/lib/formats/nabupc_dsk.cpp",
MAME_DIR.. "src/lib/formats/nabupc_dsk.h",
}
end
end

View File

@ -11,6 +11,8 @@
#include "emu.h"
#include "luaengine.ipp"
#include <cstring>
namespace {
@ -734,6 +736,21 @@ void lua_engine::initialize_memory(sol::table &emu)
auto region_type = sol().registry().new_usertype<memory_region>("region", sol::no_constructor);
region_type.set_function(
"read",
[] (memory_region &region, sol::this_state s, offs_t offset, offs_t length)
{
// TODO: should this do something special if the offset isn't a multiple of the byte width?
buffer_helper buf(s);
const offs_t limit = std::min<offs_t>(region.bytes(), offset + length);
const offs_t copyable = (limit > offset) ? (limit - offset) : 0;
auto space = buf.prepare(copyable);
if (copyable)
std::memcpy(space.get(), &region.as_u8(offset), copyable);
space.add(copyable);
buf.push();
return sol::make_reference(s, sol::stack_reference(s, -1));
});
region_type.set_function("read_i8", &region_read<s8>);
region_type.set_function("read_u8", &region_read<u8>);
region_type.set_function("read_i16", &region_read<s16>);

View File

@ -3,10 +3,68 @@
license:CC0-1.0
-->
<mamelayout version="2">
<view name="Single Screen">
<bounds x="0" y="0" width="704" height="480" />
<element name="leftpage">
<!-- force maximum state -->
<rect state="0"><color alpha="0" /></rect>
<rect state="6"><color alpha="0" /></rect>
</element>
<element name="rightpage">
<!-- force maximum state -->
<rect state="0"><color alpha="0" /></rect>
<rect state="6"><color alpha="0" /></rect>
</element>
<view name="Default View">
<screen index="0">
<bounds left="0" top="0" right="704" bottom="480" />
<bounds x="0" y="0" width="4" height="3" />
</screen>
<element id="leftpage" ref="leftpage">
<bounds x="0" y="3.1" width="2" height="2.8" />
</element>
<element id="rightpage" ref="rightpage">
<bounds x="2" y="3.1" width="2" height="2.8" />
</element>
</view>
<script><![CDATA[
file:set_resolve_tags_callback(
function ()
-- get memory regions for page scans
local pages = { }
for i = 1, 12 do
local page = file.device:memregion(string.format('cartslot:page%u', i))
if page ~= nil then
pages[i] = page
else
break
end
end
-- make page display respond to page selection input
local pagectrl = file.device:ioport('PAGE')
local function get_page() return pagectrl:read() end
file.views['Default View'].items['leftpage']:set_element_state_callback(get_page)
file.views['Default View'].items['rightpage']:set_element_state_callback(get_page)
-- render even pages on the left, odd pages on the right
local function draw_page(n, dest)
local page = pages[n]
if page ~= nil then
-- TODO: reduce temporary memory usage when I/O classes are exposed to Lua
local data = page:read(0, page.size)
local image = emu.bitmap_argb32.load(data)
image:resample(dest)
end
end
file.elements['leftpage']:set_draw_callback(
function (state, bitmap)
draw_page(state * 2, bitmap)
end)
file.elements['rightpage']:set_draw_callback(
function (state, bitmap)
draw_page((state * 2) + 1, bitmap)
end)
end)
]]></script>
</mamelayout>