abouvier / clrmamepro-parser
Parser for ClrMamePro DAT files
Installs: 18
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/abouvier/clrmamepro-parser
Requires
- php: ^8.0
- ext-parle: *
- ext-spl: *
Requires (Dev)
- escapestudios/symfony2-coding-standard: @dev
- friendsofphp/php-cs-fixer: @stable
- jetbrains/phpstorm-stubs: @dev
- phpstan/phpstan: @stable
- phpstan/phpstan-strict-rules: @dev
- phpunit/phpunit: @stable
- squizlabs/php_codesniffer: @stable
- vimeo/psalm: @stable
This package is auto-updated.
Last update: 2025-10-25 06:14:11 UTC
README
clrmamepro-parser
Parser for ClrMamePro DAT files, using Parle PHP extension.
Installation
$ composer require abouvier/clrmamepro-parser
Example
$ cat "Microsoft - Xbox - BIOS Datfile (7) (2010-09-13).dat"
clrmamepro (
    name "Microsoft - Xbox - BIOS Images"
    description "Microsoft - Xbox - BIOS Images (7) (2010-09-13)"
    category Console
    version 2010-09-13
    author "Jackal | redump.org"
)
game (
    name "xbox-3944"
    description "Xbox v1.0 (Kernel Version 1.00.3944.01)"
    rom ( name xbox-3944.bin size 1048576 crc 32a9ecb6 md5 e8b39b98cf775496c1c76e4f7756e6ed sha1 67054fc88bda94e33e86f1b19be60efec0724fb6 )
)
game (
    name "xbox-4034"
    description "Xbox v1.0 (Kernel Version 1.00.4034.01)"
    rom ( name xbox-4034.bin size 1048576 crc 0d6fc88f md5 b49a417511b2dbb485aa255a32a319d1 sha1 ab676b712204fb1728bf89f9cd541a8f5a64ab97 )
)
game (
    name "xbox-4817"
    description "Xbox v1.1 (Kernel Version 1.00.4817.01)"
    rom ( name xbox-4817.bin size 1048576 crc 3f30863a md5 430b3edf0f1ea5c77f47845ed3cbd22b sha1 dc955bd4d3ca71e01214a49e5d0aba615270c03c )
)
$ cat example.php
<?php use Abouvier\Clrmamepro\Exception\ParserException; use Abouvier\Clrmamepro\Parser; require __DIR__.'/vendor/autoload.php'; try { print_r(Parser::create()->parse(file_get_contents('Microsoft - Xbox - BIOS Datfile (7) (2010-09-13).dat'))); } catch (ParserException $e) { fprintf(STDERR, "%s\n", $e->getMessage()); exit(1); }
$ php example.php
Array
(
    [clrmamepro] => Array
        (
            [0] => Array
                (
                    [name] => Microsoft - Xbox - BIOS Images
                    [description] => Microsoft - Xbox - BIOS Images (7) (2010-09-13)
                    [category] => Console
                    [version] => 2010-09-13
                    [author] => Jackal | redump.org
                )
        )
    [game] => Array
        (
            [0] => Array
                (
                    [name] => xbox-3944
                    [description] => Xbox v1.0 (Kernel Version 1.00.3944.01)
                    [rom] => Array
                        (
                            [0] => Array
                                (
                                    [name] => xbox-3944.bin
                                    [size] => 1048576
                                    [crc] => 32a9ecb6
                                    [md5] => e8b39b98cf775496c1c76e4f7756e6ed
                                    [sha1] => 67054fc88bda94e33e86f1b19be60efec0724fb6
                                )
                        )
                )
            [1] => Array
                (
                    [name] => xbox-4034
                    [description] => Xbox v1.0 (Kernel Version 1.00.4034.01)
                    [rom] => Array
                        (
                            [0] => Array
                                (
                                    [name] => xbox-4034.bin
                                    [size] => 1048576
                                    [crc] => 0d6fc88f
                                    [md5] => b49a417511b2dbb485aa255a32a319d1
                                    [sha1] => ab676b712204fb1728bf89f9cd541a8f5a64ab97
                                )
                        )
                )
            [2] => Array
                (
                    [name] => xbox-4817
                    [description] => Xbox v1.1 (Kernel Version 1.00.4817.01)
                    [rom] => Array
                        (
                            [0] => Array
                                (
                                    [name] => xbox-4817.bin
                                    [size] => 1048576
                                    [crc] => 3f30863a
                                    [md5] => 430b3edf0f1ea5c77f47845ed3cbd22b
                                    [sha1] => dc955bd4d3ca71e01214a49e5d0aba615270c03c
                                )
                        )
                )
        )
)