Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: How to make a dedicated MAME 0.250 Appliance on a Raspberry Pi 4/Pi 400  (Read 127855 times)

0 Members and 3 Guests are viewing this topic.

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #40 on: September 16, 2020, 09:48:34 am »
Thanks for your quick reply.
So I better make a backup before I update.
What are the update commands in servicemode?

Yes, make à backup of the MAME binary before starting à MESS/MAME build.

Start the build with (provided you already made the ajustments to drawbgfx.cpp):

./mame-update.sh 0224
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #41 on: September 16, 2020, 09:52:18 am »
Ok, I will try out tonight and let you know.
Thanks!

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #42 on: September 16, 2020, 02:15:43 pm »
To remove the line "MAKEOPTS='SUBTARGET=arcade",
where is the "mame-update.sh" located?
In servicemode if I type
Code: [Select]
nano ~/mame-update.shall I get is a blank GNU nano 3.2.
Sorry for the noob question, I'm a Windows user ;).
And always, thanks for taking your time.

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #43 on: September 16, 2020, 04:29:04 pm »
To remove the line "MAKEOPTS='SUBTARGET=arcade",
where is the "mame-update.sh" located?
In servicemode if I type
Code: [Select]
nano ~/mame-update.shall I get is a blank GNU nano 3.2.
Sorry for the noob question, I'm a Windows user ;).
And always, thanks for taking your time.

Hi, you should be able to edit the mame-update.sh script with the command you specified. Are you logged with the user "pi" ?

If not, you should use this user account to log in. The password is the default one: raspberry

All the scripts are under /home/pi, including mame-update.sh

As a side note, you should only remove SUBTARGET=arcade from the options. All the remaining options have to remain there, unchanged.
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #44 on: September 16, 2020, 04:32:47 pm »
ANNOUNCEMENT - NEW IMAGE AVAILABLE WITH MAME 0.224

Just to let everyone know that I published today a new version of the image with MAME 0.224. The minimum size of the SD card should be 16 GB (10 GB for the root filesystem and the remaining space for the data partition for storing ROMs).

Please see the original post at the beginning of this thread for the download link and the first steps do do once the image is written to the SD card.

Thanks and happy gaming!
« Last Edit: September 17, 2020, 07:42:15 am by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #45 on: September 16, 2020, 04:36:18 pm »
wow, many thanks!
is this the full mame version (with mess)?

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #46 on: September 16, 2020, 05:11:52 pm »
wow, many thanks!
is this the full mame version (with mess)?

Hi, no this version does not include MESS. I am currently compiling the full version, as a first try. Let's see how it goes. Stay tuned.
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #47 on: September 16, 2020, 11:05:38 pm »
wow, many thanks!
is this the full mame version (with mess)?

Hi, no this version does not include MESS. I am currently compiling the full version, as a first try. Let's see how it goes. Stay tuned.

Hi, just to let you know that I successfully compiled the complete MAME (including the MESS code). I decided to include the MESS code, as it has no impact on ressource consumption on the system.

I will update the image file tomorrow.
« Last Edit: September 17, 2020, 07:40:24 am by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #48 on: September 17, 2020, 01:43:18 am »
 :applaud:
Thanks a lot‼️

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #49 on: September 17, 2020, 12:32:58 pm »
Just to let know to everyone that I uploaded today a new version of the disk image file. The MAME binary now include the MESS code for the emulation of classic computer systems in addition to arcade systems.

The original post of this thread has been upated with the new download link.

Enjoy!
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #50 on: September 17, 2020, 12:45:20 pm »
Fantastic news!
I will try out tonight.
One question:
Is there also a folder for "artwork" on "\\arcade\data"?
I ask because the "Game & Watch" system needs an artwork folder.

Thanks!
« Last Edit: September 17, 2020, 12:47:45 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #51 on: September 17, 2020, 12:50:16 pm »
Fantastic news!
I will try out tonight.
One question:
Is there also a folder for "artwork" on "\\arcade\data"?

Thanks!

Hi, the answer is yes. I externalized (among others) the "artwork" folder, so you can use your own effect masks for emulating a CRT. Not to be confused with the "snap" folder, where all the game snapshots should be placed (also under \\arcade\data).

I hope this anwser your question.

Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #52 on: September 17, 2020, 12:50:49 pm »
First of all it's really amazing getting a working MAME 0.224 on a Raspberry Pi 4, many thanks for your effort and time!

I just tested your image and have some feedback/questions/issues:
Somehow the software list per system won't get recognized automatically which means you cannot load the game instantly in the software list menu. For example the game system "VIDEOPAC" has a voice module which has to get loaded in -cart1 and then the actual game in -cart2. I can only select one slot (cart, floppy or whatever the system needs). That's because somehow the system can't see its software.
Maybe this setting or feature is manually turned off or not yet implemented?

Further issues/questions:
- How can I change "Video Options"? Somehow I cannot enter it. I would like to have "bilinear filtering" off.
- Under "Machine options" when I set "UI Active ON", MAME is freezing (nothing can be edited).
- When I connect a USB Joystick it doesn't get recognized and cannot be mapped. Do I need to set it manually in the "cfg" folder (default.cfg)?
« Last Edit: September 17, 2020, 05:29:19 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #53 on: September 18, 2020, 06:11:37 pm »
First of all it's really amazing getting a working MAME 0.224 on a Raspberry Pi 4, many thanks for your effort and time!

I just tested your image and have some feedback/questions/issues:
Somehow the software list per system won't get recognized automatically which means you cannot load the game instantly in the software list menu. For example the game system "VIDEOPAC" has a voice module which has to get loaded in -cart1 and then the actual game in -cart2. I can only select one slot (cart, floppy or whatever the system needs). That's because somehow the system can't see its software.
Maybe this setting or feature is manually turned off or not yet implemented?

Further issues/questions:
- How can I change "Video Options"? Somehow I cannot enter it. I would like to have "bilinear filtering" off.
- Under "Machine options" when I set "UI Active ON", MAME is freezing (nothing can be edited).
- When I connect a USB Joystick it doesn't get recognized and cannot be mapped. Do I need to set it manually in the "cfg" folder (default.cfg)?

First, let me say that I am very happy to hear comments and feedback like yours, teller! :)

I will try to answer your issues/questions the best I can.
For MESS emulation, I did not made tests, as this part of the code has been enabled very recently (as you know). Can you explain me how to reproduce your problem? Do I need to download the BIOS of the Phillips Videopac+ system first? What voice module does need loading from cartridge1 and what game are you trying to emulate in cartridge2? I will try to reproduce your issue and see what I can do.

The "Video Options" menu is unfortunately not working for me too (I get a Segmentation fault when I try to use it). If you want to turn off "bilinear filtering" globally, just ajust mame.ini in that way:

#
# OSD ACCELERATED VIDEO OPTIONS
#
filter                    0


For your "Machine Options" issue, do you mean the "Configure Machine" from the main selection screen?

For the USB Joystick to be recognized, you first need to be in read/write mode (use the alias "rw" in an SSH session) when connecting it. This way, Linux will be able to write the values to the root filesystem persistently. Also make sure your joystick is supported natively by the Linux kernel (lsusb -t). Once recognized by the Linux kernel, you assign the joystick configuration file (mappings) in /data/ini/mame.ini:

#
# CORE INPUT OPTIONS
#
ctrlr                     
<name-of-cfg-file-without-extension>

The mapping file is ending with a .cfg extension and should be placed in "/data/ctrlr" folder.

I hope these answers helps you a bit!
« Last Edit: September 19, 2020, 09:31:48 am by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #54 on: September 19, 2020, 10:22:41 am »
Where is my reply?

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #55 on: September 19, 2020, 10:25:40 am »
Hi teller,

I think your last post was deleted (it contained a link to a copywrited software, I guess). Can you post it again (without the link), please?

Regarding the problem with enabling "UI Active" to "On", I do not have this problem. But I think I know the cause. I just want to confirm something with your version of the file "mame-launcher.sh". Can you confirm that you have the line in red below in the script?

#!/bin/bash

# This script launch the MAME emulator and respawn it if quit unexpectedly.

export SDL_VIDEODRIVER=kmsdrm
export SDL_RENDER_DRIVER=opengles2
export SDL_RENDER_VSYNC=1
export SDL_GRAB_KEYBOARD=1
export SDL_VIDEO_GLES2=1


if [ ! -z $MAMEPATH ] && [ -f $MAMEPATH/mame ]; then
    cd $MAMEPATH
    while
        $MAMEPATH/mame -nojoy -nomouse > /dev/null 2>&1
        (( $? != 0 ))
    do
        :
    done
else
    echo $0 - Variable MAMEPATH is not defined or invalid!
    read -n 1 -s -r -p "Press any key to continue..."
    echo
fi

Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #56 on: September 19, 2020, 10:48:33 am »
I don't have that red line in "mame-launcher.sh".
Shall I add it?

I posted a video about how the "software package list" looks in MAME on Windows and how you use The Voice module for the Videopac.
Here's the video again:


"filter 0" and "UI active On" I could set successfully in mame.ini.

I still cannot map my usb joystick, but in "rw" mode I can see it under js0 and I also tested the directions but when I try to map it in MAME under "General Options/General Inputs/Player 1 Controls" the Joystick controls cannot be mapped.
« Last Edit: September 19, 2020, 11:54:00 am by teller »

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #57 on: September 19, 2020, 10:53:58 am »
I just added the red line you mentioned and now the software list appears!
thanks for the fix!

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #58 on: September 19, 2020, 11:09:02 am »
I just added the red line you mentioned and now the software list appears!
thanks for the fix!

Great, things look good so far!

For your joystick, I think I have the solution :

Edit mame-launcher.sh and remove "-nojoy" from the Line calling the MAME binary. The Line in question begin with:

$MAMEPATH/mame -nojoy -nomouse

If you don't have any specific joystick mappings in Windows, that means you don't need them on the Raspberry Pi, so leave the "ctrlr" option empty in mame.ini.


Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #59 on: September 19, 2020, 11:42:21 am »
The Joystick works too!
Thanks!

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #60 on: September 19, 2020, 11:58:01 am »
The Joystick works too!
Thanks!

Great news!

So everything works as expected?
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #61 on: September 19, 2020, 12:11:49 pm »
somehow i get a segmentation fault line 24 when starting some games.

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #62 on: September 19, 2020, 12:19:30 pm »
somehow i get a segmentation fault line 24 when starting some games.

You talk about the Odyssey2 games emulated by the MESS codebase?
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #63 on: September 19, 2020, 12:36:59 pm »
yep. It worked before but after loading the voice module and adding a game in -cart2. I cannot play any of the odyssey2 games  :hissy: and I don't know why. All I get is a segmentation fault line 21 error.
all other systems work very well. I also tried the Intellivison with Intellivoice (2 cart-mode too) and there is no issue at all.


bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #64 on: September 19, 2020, 12:47:24 pm »
yep. It worked before but after loading the voice module and adding a game in -cart2. I cannot play any of the odyssey2 games  :hissy: and I don't know why. All I get is a segmentation fault line 21 error.
all other systems work very well. I also tried the Intellivison with Intellivoice (2 cart-mode too) and there is no issue at all.

Maybe flush the content of /data/nvram and any persistent data that might have been written to /data for the Odyssey2. We ajusted mame-launcher.sh so MAME can work correctly, so there may be an before/after effect/inconsistency in data files of the Odyssey2 system.
« Last Edit: September 19, 2020, 03:18:07 pm by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #65 on: September 19, 2020, 04:23:37 pm »
To get the voice module working the odyssey2.cfg should be generated as this:
Code: [Select]
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
    <system name="odyssey2">
        <image_directories>
        <device instance="cartridge1" directory="/home/pi/mame0224" />
            <device instance="cartridge2" directory="/home/pi/mame0224" />
        </image_directories>
    </system>
</mameconfig>

But somehow it won't generate those directories properly.


I've also tested thos "Game & Watch" games and they are sadly too slowly for the Pi4. They must be cpu-hungry because of the vectorized svg's, maybe?
« Last Edit: September 19, 2020, 06:02:34 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #66 on: September 19, 2020, 06:44:45 pm »
To get the voice module working the odyssey2.cfg should be generated as this:
Code: [Select]
<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
    <system name="odyssey2">
        <image_directories>
        <device instance="cartridge1" directory="/home/pi/mame0224" />
            <device instance="cartridge2" directory="/home/pi/mame0224" />
        </image_directories>
    </system>
</mameconfig>

But somehow it won't generate those directories properly.

What directories are not generated properly? If you specify the path "/home/pi/mame0224", please note that this path is read-only in normal operation. If you need write access, we need to externalize it to /data first. But first, I need to know what kind of files are generated.

Quote from: teller
I've also tested thos "Game & Watch" games and they are sadly too slowly for the Pi4. They must be cpu-hungry because of the vectorized svg's, maybe?

I didn't tested these games, so I can't comment, sorry about that.
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #67 on: September 19, 2020, 06:54:36 pm »
Teller, please note that I will be uploading a new version of the disk image-file.

Today, I made some additions that may (or not) fix your problem with the Odyssey2 system.

CHANGES:

1. In /data/ini/mame.ini, these paths have changed (please make the ajustments):

Code: [Select]
homepath             $HOME/.mame/lua
input_directory      $HOME/.mame/inp
diff_directory       $HOME/.mame/diff

2. Create the new folders on /data:

Code: [Select]
cd /data
mkdir lua inp diff
sudo chown -R nobody:pi /data
sudo chmod -R 3774 /data

3. Create the related symlinks in ~/.mame folder:

Code: [Select]
ln -s /data/lua      ~/.mame/lua
ln -s /data/inp      ~/.mame/inp
ln -s /data/diff     ~/.mame/diff
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #68 on: September 20, 2020, 04:12:47 am »
you're a unstoppable!😜

I just tested your new image and for the sake of Videopac G7400 I still get an error but this time with more infos, see screenshot below.
I am sure that all my files are working because I copied them from my Windows MAME 0.224 set and they should be identical. This "charset_ef9340_1.rom" which is inside the "ef9340_1.zip" is working on my pc but somehow it doesn't get tolerated here as a proper BIOS. And that strange message: Invalid BIOS "1", reverting to default.
Maybe there is still something missing, needed, buggy?

All the best and thanks again.
« Last Edit: September 20, 2020, 06:10:16 am by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #69 on: September 20, 2020, 09:23:14 am »
you're a unstoppable!😜

I just tested your new image and for the sake of Videopac G7400 I still get an error but this time with more infos, see screenshot below.
I am sure that all my files are working because I copied them from my Windows MAME 0.224 set and they should be identical. This "charset_ef9340_1.rom" which is inside the "ef9340_1.zip" is working on my pc but somehow it doesn't get tolerated here as a proper BIOS. And that strange message: Invalid BIOS "1", reverting to default.
Maybe there is still something missing, needed, buggy?

All the best and thanks again.

Thanks teller!

I suggest you copy the hash files related to Odyssey2 from your Windows machine to your Raspberry Pi in /home/pi/mame0224/hash folder. MAME is using those files to check if romsets are the expected version.

As a side note, you see more information (error messages) because there is a little error in mame-launcher.sh. I will upload a new fixed version today. The script will behave differently if called in Service mode or Arcade mode.

So to get full debug, with the new image, just switch to Service mode in an SSH session and start MAME with verbose mode :

Code: [Select]
rw
servicemode
sudo reboot

./mame-launcher.sh -v
« Last Edit: September 20, 2020, 09:30:00 am by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #70 on: September 20, 2020, 02:02:52 pm »
Thanks but it's not the hash files, I tried that. I also tried swapping out the dependent bios files with the latest ones but had still no luck.
I tried verbose mode but can't find out why most of the odyssey2 or g7400 games won't start. Weirdly I can load every game as a .bin file via File Loader when using Tab menu. But sadly it's not possible loading 'The Voice' directly from the software list menu and then loading a voice supported game into the 2nd cartridge slot.

I don't think that this 0.224 version would need different bios content than from Windows as it comes from the same source, which makes sense.
« Last Edit: September 20, 2020, 02:16:49 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #71 on: September 20, 2020, 02:36:31 pm »
Thanks but it's not the hash files, I tried that. I also tried swapping out the dependent bios files with the latest ones but had still no luck.
I tried verbose mode but can't find out why most of the odyssey2 or g7400 games won't start. Weirdly I can load every game as a .bin file via File Loader when using Tab menu. But sadly it's not possible loading 'The Voice' directly from the software list menu and then loading a voice supported game into the 2nd cartridge slot.

I don't think that this 0.224 version would need different bios content than from Windows as it comes from the same source, which makes sense.

The only thing I can see is that MAME (for some reason) try to write data to the root filesystem, wich is read-only by default. To validate this, you can put the system in read/write mode (while in Service mode) and try to load Odissey2 or G7400 games. You can also start MAME with -oslog and -log options to get more information on what's going on (in Service mode).
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #72 on: September 20, 2020, 09:04:32 pm »
FYI, the new disk image-file has been uploaded and is now available from the link in the original post of this topic. Enjoy!
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #73 on: September 21, 2020, 01:04:28 pm »
Thanks!
I made further investigations why Odyssey2/Videopac crashes when starting from the Software list. It's not because my files are wrong or missing or because of your image.
It's simply because it crashes generally on Linux. I just installed the latest MAME 0.224 on Linux (Ubuntu) and directed the same roms which I have on a SD card. Also The Voice module won't work.
For the moment it only works on Windows, so time will tell and hopefully it will on 0.225.
I've also heard that Odyssey/Videopac won't work normally on the latest SDL MAME on Mac.
« Last Edit: September 21, 2020, 01:40:19 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #74 on: September 21, 2020, 01:47:35 pm »
Thanks!
I made further investigations why Odyssey2/Videopac crashes when starting from the Software list. It's not because my files are wrong or missing or because of your image.
It's simply because it crashes generally on Linux. I just installed the latest MAME 0.224 on Linux (Ubuntu) and directed the same roms which I have on a SD card. Also The Voice module won't work.
For the moment it only works on Windows, so time will tell and hopefully it will on 0.225.
I've also heard that Odyssey/Videopac won't work normally on the latest SDL MAME on Mac.

I'm very glad to hear that my image is not related to the Odyssey2/Videopac problem. As I understand it, it looks like it is related to the use of the SDL layer by MAME. Maybe you could file a bug report to MAME devs.
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
« Last Edit: September 22, 2020, 12:18:29 pm by teller »

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #76 on: September 23, 2020, 05:16:21 pm »
Somebody already mentioned it:
https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=117746

Great, at least the bug is known and documented. Do you know if it has been filed on the official MAME testers team (on mametesters.org)?
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9393
  • Last login:Today at 10:08:43 am
  • Designated spam hunter
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #77 on: September 23, 2020, 08:34:14 pm »
Somebody already mentioned it:
https://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=117746

Great, at least the bug is known and documented. Do you know if it has been filed on the official MAME testers team (on mametesters.org)?
Looks like there's no need to report it to MAME testers -- the "m_b = get_feature("b_pin") && bool(strtoul(get_feature("b_pin"), nullptr, 0)) ? 1 : 0;" code mentioned by hap in that thread was added to lines 146 and 147 of src/devices/bus/odyssey2/slot.cpp on August 30th.

You can see the before(pink)/after(green) code about half-way down the page of this commit.
https://github.com/mamedev/mame/commit/3624b416ba81e5e17f051005f5bd39cb1f6d1130#diff-c903dd5a8ba87be3732bd5fca46d20c7


Scott

teller

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 31
  • Last login:January 07, 2024, 10:17:32 am
  • I want to build my own arcade controls!
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #78 on: September 24, 2020, 12:10:34 pm »
Does that mean if we would compile MAME again it would be fixed or do we have to wait for 0.225?

bbegin

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 186
  • Last login:February 05, 2024, 07:23:14 pm
  • Arcade games enthusiast, bartop arcade project WIP
Re: How to make a dedicated MAME Appliance on a Raspberry Pi 4B
« Reply #79 on: September 24, 2020, 12:38:29 pm »
Does that mean if we would compile MAME again it would be fixed or do we have to wait for 0.225?

Hi teller, if you download the master branch (from GitHub), then yes you will get all the fixes that have been already integrated in the master branch. You will get à file named mame-master.zip. You will have to uncompress in a folder you create manually (like mame0224a) and call the build script with: ./mame-update 0224a
« Last Edit: September 24, 2020, 12:54:20 pm by bbegin »
Personal project:
How to make a dedicated MAME Appliance on a Raspberry Pi 4/Pi 400
https://gist.github.com/sonicprod/f5a7bb10fb9ed1cc5124766831e120c4