Page 2 of 2 FirstFirst 12
Results 11 to 14 of 14

Thread: Ability to compile mame

  1. #11
    Member registered user
    Join Date
    Apr 2007
    Posts
    79

    Thumbs up

    =========================

    Knoppix 9.1 and mame 235

    ==========================

    You can install mame 235 and run under knoppix9.1 by getting the debian i386 packages from testing (bookworm):


    https://packages.debian.org/bookworm/i386/mame/download

    Download Page for mame_0.235+dfsg.1-2_i386.deb

    https://packages.debian.org/bookworm...-data/download

    Download Page for mame-data_0.235+dfsg.1-2_all.deb


    You still need these files also (see my previous post about mame 228 above for more information)

    liblua5.3-0_5.3.3-1.1+b1_i386.deb
    libpugixml1v5_1.11.4-1_i386.deb

    You can also get mame-doc (0.235+dfsg.1-2) if you like.

    Then just put them all in a directory and "sudo dpkg -i *.deb" and then you should be able to run mame 235 by running "mame".

    Mame 235 is only a couple of months old, so it's pretty up to date.

    =======================

    (The Mame 237 debs in sid won't work on knoppix 9.1)

    If you search at package.debian.org for mame there's various versions available, 235 being the most recent that will work on knoppix 9.1.


    stretch (oldoldstable) (games): Multiple Arcade Machine Emulator (MAME)
    0.182-1: amd64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
    buster (oldstable) (games): Multiple Arcade Machine Emulator (MAME)
    0.206+dfsg.1-1: amd64 arm64 armel armhf i386 mips mips64el mipsel s390x
    bullseye (stable) (games): Multiple Arcade Machine Emulator (MAME)
    0.228+dfsg.1-1: amd64 arm64 armhf i386 mips64el ppc64el s390x
    bookworm (testing) (games): Multiple Arcade Machine Emulator (MAME)
    0.235+dfsg.1-2: amd64 arm64 armel armhf i386 mips64el ppc64el s390x
    sid (unstable) (games): Multiple Arcade Machine Emulator (MAME)
    0.237+dfsg.1-1: amd64 arm64 armel armhf hppa i386 mips64el mipsel ppc64 ppc64el riscv64 s390x sh4 sparc64 x32

  2. #12
    Member registered user
    Join Date
    Apr 2007
    Posts
    79
    =========================

    Knoppix 9.1 and other emulators

    ==========================
    You can get other emulators running also, not just mame. I was able to get:

    atari800
    vice (name of executable program is x64, xpet, x128 )
    dosbox
    fs-uae
    stella

    running on knoppix9.1 by downloading the deb packages from package.debian.com (bullseye stable)

    You could also use synaptic to download the packages, but I like the debs so I can install it offline (no internet necessary).


    atari800_4.1.0-3_i386.deb
    vice_3.5.0.dfsg-3_i386.deb (c64 emulator)
    stella_6.5.2-1_i386.deb (atari 2600 emulator)

    dosbox_0.74-3-3_i386.deb (dos games emulator)
    libsdl-sound1.2_1.0.3-9+b1_i386.deb

    fs-uae_3.0.5+dfsg-1_i386.deb (fs-uae is an amiga emulator)
    fs-uae-launcher_3.0.5+dfsg-1_all.deb
    python3-pyqt5.qtopengl_5.15.2+dfsg-3_i386.deb

    There's other emulators too:
    https://packages.debian.org/bullseye/games-emulator

    (This metapackage lists a bunch of emulator packages)
    Last edited by don999; 11-06-2021 at 02:19 AM.

  3. #13
    Member registered user
    Join Date
    Apr 2007
    Posts
    79
    =========================

    Getting the joystick/gamepad working (using setfacl)

    ==========================

    Okay, I have spent way more time than I ever wanted to fiddling with permissions and the like. However, I've found a pretty simple way to get the joystick working.

    There's actually two different styles of joystick access: one is with /dev/input/eventX and the other is with /dev/input/jsX.

    I think /dev/input/eventX is the more recent, and /dev/input/jsX is the "old" way.

    So when I boot knoppix, my gamepad shows up as /dev/input/event4. So you'll need to figure out which file represents your gamepad.

    When I do a "ls -l /dev/input/by-id" the gamepad has a symlink to /dev/input/event4.

    So I do this:

    Code:
    sudo setfacl -m "u:knoppix:rw-" /dev/input/event4
    sudo setfacl -m "u:knoppix:rw-" /dev/input/js0
    touch /dev/input/js0
    so once you "touch" the js0, it sets up a symlink to /dev/input/js0 in the /dev/input/by-id directory.
    When you run touch, it may complain about not being able to set the time. (Doesn't seem to hurt anything)
    The reason I use "touch" is to make an access to /dev/input/js0.
    Running "hexdump -C /dev/input/js0" would do the same thing (CTRL+C to exit after generating some joystick activity).

    The setfacl commands above will give the user knoppix read and write file access using an access control list. setfacl = set file access control list (-m is modify).
    getfacl = get file access control list.
    If you do a "ls -l /dev/input" you will see a + after rw-rw-r--+, the + indicates that there's an access control list for that file.

    So as a test, launch chromium or firefox, go to "about:blank" and bring up the f12 console. Press a joystick button. Type "navigator:getGamepads()" and hit enter.
    Remember that you have to generate joystick activity (like pressing buttons) to see the gamepad in chromium or firefox.

    If your joystick is working on /dev/input/js0 you should see a list like

    Code:
    (firefox) 
    navigator.getGamepads() 
    
    Array [ Gamepad ]
    
    (chromium) 
    navigator.getGamepads()
    GamepadList {0: Gamepad, 1: null, 2: null, 3: null, length: 4}
    If it isn't working, you will see

    Code:
    (firefox)
    navigator.getGamepads() 
    
    Array []
    
    (chromium)
    navigator.getGamepads()
    GamepadList {0: null, 1: null, 2: null, 3: null, length: 4}
    Once you enter the commands below, press a joystick button. Type "navigator:getGamepads()" and hit enter. You don't have to relaunch firefox or chromium if it's already open, it should work.

    Code:
    echo launch chromium or firefox here and getGamepads here wont work
    sudo setfacl -m "u:knoppix:rw-" /dev/input/event4
    sudo setfacl -m "u:knoppix:rw-" /dev/input/js0
    touch /dev/input/js0
    echo now getGamepads here should work
    Last edited by don999; 11-14-2021 at 01:19 AM.

  4. #14
    Member registered user
    Join Date
    Apr 2007
    Posts
    79

    Being able to compile mame in knoppix 9.1

    ============================
    Being able to compile mame 238 in knoppix 9.1
    ============================

    What's necessary to compile mame is just:

    sudo apt-get install git build-essential python libsdl2-dev libsdl2-ttf-dev libfontconfig-dev libpulse-dev qt5-default

    but what if we wanted to be able to compile mame by adding .deb packages manually?

    I got the following packages from packages.debian.org:

    libasound2-dev_1.2.4-1.1_i386.deb
    libpulse-dev_14.2-2_i386.deb
    libqt5core5a_5.15.2+dfsg-9_i386.deb
    libqt5gui5_5.15.2+dfsg-9_i386.deb
    libqt5widgets5_5.15.2+dfsg-9_i386.deb
    libsdl2-dev_2.0.14+dfsg2-3_i386.deb
    libsdl2-ttf-dev_2.0.15+dfsg1-1_i386.deb
    libsdl-sound1.2_1.0.3-9+b1_i386.deb
    libsndio-dev_1.5.0-3_i386.deb
    libudev-dev_247.3-6_i386.deb
    qtbase5-dev_5.15.2+dfsg-9_i386.deb
    qtbase5-dev-tools_5.15.2+dfsg-9_i386.deb

    also need these to run:

    liblua5.3-0_5.3.3-1.1+b1_i386.deb
    libpugixml1v5_1.11.4-1_i386.deb

    So put them all in a directory then:

    sudo dpkg -i --force-depends *.deb

    and it will install them all at once. We use --force-depends because we haven't actually got every package needed to satisfy all the dependencies.


    Get the source for mame0238 and extracting the mame0238.exe, cd into the directory, edit the makefile with
    "nano makefile" so that we specify our compile to be 32 bit and where to find qt5:


    #PTR64 = 1
    edit to say
    PTR64 = 0
    since we're compiling for an 32 bit target

    and also

    #QT_HOME = /usr/lib/qt5/
    edit to
    QT_HOME = /usr/lib/i386-linux-gnu/qt5/

    then save it with CTRL+O, exit with CTRL+X.

    time make -j4

    and it should be able to complete the compile.

    and launch your freshly compiled mame with

    ./mame -rompath "path_to_my_roms"

Page 2 of 2 FirstFirst 12

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G picture

A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G

$26.99



A-Tech 16GB 2x 8GB 2Rx4 PC3-10600R DDR3 1333 MHz ECC RDIMM REG Server Memory RAM picture

A-Tech 16GB 2x 8GB 2Rx4 PC3-10600R DDR3 1333 MHz ECC RDIMM REG Server Memory RAM

$33.99



Hynix 32GB PC4-17000 LRDIMM DDR4 2133MHz Server Memory RAM HMA84GL7MMR4N-TF picture

Hynix 32GB PC4-17000 LRDIMM DDR4 2133MHz Server Memory RAM HMA84GL7MMR4N-TF

$39.99



A-Tech 8GB 2x 4GB 2Rx4 PC3-10600R DDR3 1333MHz ECC RDIMM REG Server Memory RAM picture

A-Tech 8GB 2x 4GB 2Rx4 PC3-10600R DDR3 1333MHz ECC RDIMM REG Server Memory RAM

$14.99



SAMSUNG 16GB Kit 2x 8GB DDR3 PC3L-12800 DESKTOP Memory picture

SAMSUNG 16GB Kit 2x 8GB DDR3 PC3L-12800 DESKTOP Memory

$34.95



8GB 2X4GB DDR3 PC3-12800U Desktop Memory Ram DELL HP LENOVO ACER GATEWAY  picture

8GB 2X4GB DDR3 PC3-12800U Desktop Memory Ram DELL HP LENOVO ACER GATEWAY

$19.99



Samsung 8GB (2x4GB) DDR3 1Rx8 PC3-12800U DDR3 Desktop Memory RAM  picture

Samsung 8GB (2x4GB) DDR3 1Rx8 PC3-12800U DDR3 Desktop Memory RAM

$14.95



Crucial 32GB KIT (2x16GB) 3200MHz 260-pin SODIMM DDR4 RAM Memory CT16G4SFRA32A picture

Crucial 32GB KIT (2x16GB) 3200MHz 260-pin SODIMM DDR4 RAM Memory CT16G4SFRA32A

$118.99



A-Tech 16GB 2x 8GB PC3-12800 Desktop DDR3 1600 MHz 240pin DIMM Memory RAM 16G 8G picture

A-Tech 16GB 2x 8GB PC3-12800 Desktop DDR3 1600 MHz 240pin DIMM Memory RAM 16G 8G

$53.99



A-Tech 8GB PC3-12800 Desktop DDR3 1600 MHz Non ECC 240-Pin DIMM Memory RAM 1x 8G picture

A-Tech 8GB PC3-12800 Desktop DDR3 1600 MHz Non ECC 240-Pin DIMM Memory RAM 1x 8G

$26.99