Author Topic: Mame Installation Instructions  (Read 15019 times)

bmac2

  • Newbie
  • *
  • Posts: 9
    • View Profile
Mame Installation Instructions
« on: May 06, 2008, 10:54:10 pm »
I was the test pig for installing the mame plugin that TSCHAK wrote.  It works quite well, very freaking impressive actually.  I have posted the directions for exactly how to install mame.  There are 49 steps listed, and I tried to write it down in every detail.  So please follow these directions and test the system.  Any errors with the install instructions or problems, let me know in the irc channel.  Any issues with the mame plugin itself, obviously let tschak know. 

the directions are at the wiki page   http://wiki.linuxmce.org/index.php/Mame_installation

now a couple of hints that are not there,  5 (not F5) is the add credits, 1 and 2 are the start games.  Enjoy!

bmac2

hari

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 2428
    • View Profile
    • ago control
Re: Mame Installation Instructions
« Reply #1 on: May 07, 2008, 12:52:00 am »
cool!!!
* hari will play Bubble Bobble soon ;)
rock your home - http://www.agocontrol.com home automation

abooreal

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: Mame Installation Instructions
« Reply #2 on: May 15, 2008, 07:04:32 am »
First of all, Thnx for sharing the great work!

I am trying to install MAME on my linuxMCE but I ran into an error following the steps on the wiki.

I followed the wiki step by step up to the step where I need to make the lmce_game, (it is right after copying the libWindowUtils.so to the usr/pluto/lib.

Code: [Select]

Computing dependencies for Table_Rom_RomAttribute.cpp done
Computing dependencies for Table_RomAttributeType.cpp done
Computing dependencies for Table_RomAttribute.cpp done
Computing dependencies for Table_Rom.cpp done
Computing dependencies for Table_GameSystem.cpp done
Computing dependencies for TableRow.cpp done
Computing dependencies for Database_lmce_game.cpp done
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Database_lmce_game.cpp -o Database_lmce_game.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 TableRow.cpp -o TableRow.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Table_GameSystem.cpp -o Table_GameSystem.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Table_Rom.cpp -o Table_Rom.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Table_RomAttribute.cpp -o Table_RomAttribute.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Table_RomAttributeType.cpp -o Table_RomAttributeType.o
g++ -c -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 Table_Rom_RomAttribute.cpp -o Table_Rom_RomAttribute.o
Table_Rom_RomAttribute.cpp: In member function ‘bool Table_Rom_RomAttribute::Commit(bool, bool)’:
Table_Rom_RomAttribute.cpp:268: warning: unused variable ‘id’
Table_Rom_RomAttribute.cpp: In member function ‘bool Table_Rom_RomAttribute::GetRows(std::string, std::vector<Row_Rom_RomAttribute*, std::allocator<Row_Rom_RomAttribute*> >*)’:
Table_Rom_RomAttribute.cpp:438: warning: unused variable ‘lengths’
Table_Rom_RomAttribute.cpp: In member function ‘Row_Rom_RomAttribute* Table_Rom_RomAttribute::FetchRow(DoubleLongKey&)’:
Table_Rom_RomAttribute.cpp:579: warning: unused variable ‘lengths’
g++ -shared -pipe -Wall -O2 -D_GNU_SOURCE -fPIC -g -ggdb3 -I.. -I../.. -I../DCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DMULTI_THREADED -DNO_SQL_THREAD_LOG -I/usr/include/mysql -o liblmce_game.so ../db_wrapper/db_wrapper.o ../db_wrapper/ClientSocket.o ../db_wrapper/Socket.o Database_lmce_game.o TableRow.o Table_GameSystem.o Table_Rom.o Table_RomAttribute.o Table_RomAttributeType.o Table_Rom_RomAttribute.o
/usr/bin/ld: ../db_wrapper/ClientSocket.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
../db_wrapper/ClientSocket.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [liblmce_game.so] Error 1

then it stops there. no liblmce_game.so was generated.
Can someone give me a tip on this issue?  ???

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Mame Installation Instructions
« Reply #3 on: May 15, 2008, 07:59:31 am »
I do not have an amd64 to test here, so I can't reproduce the problem, but it looks like you're trying to mix amd64 libs and i386 libs together...can someone else help to try to resolve this issue?

-Thom

abooreal

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: Mame Installation Instructions
« Reply #4 on: May 21, 2008, 08:36:05 am »
Thnx for the quick reply Thom~~ ;D ;D

I fixed the "relocation R_X86_64_32 ..." problem by removing all the .o files in the db_wrapper folder. (I don't know if this will create some strange behaviors or not... ::) ???)

I continued to follow the steps in the wiki but I ran into another problem in the "Additional Libs" section.

The link "http://rbelmont.mameworld.info/sdlmame0125.zip" returns a google main page, (I don't know what is going on with this...) so I downloaded it off this link instead: "http://minimyth.org/download/garchive/sdlmame0125.zip".

I unzipped it and jumped into the folder trying to make, and i got this error:
Code: [Select]
Compiling src/osd/sdl/sdlsync.c...
cc1: warnings being treated as errors
In file included from src/osd/sdl/osinline.h:10,
                 from src/osd/sdl/sdlsync.c:29:
src/emu/eminline.h: In function ‘compare_exchange_ptr’:
src/emu/eminline.h:349: warning: cast from pointer to integer of different size
src/emu/eminline.h:349: warning: cast from pointer to integer of different size
src/emu/eminline.h:351: warning: cast to pointer from integer of different size
make: *** [obj/sdl/mame/osd/sdl/sdlsync.o] Error 1

I am going to hack on it now and let you guys know how it goes~ :D

abooreal

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: Mame Installation Instructions
« Reply #5 on: May 21, 2008, 11:50:35 am »
It turned out to be the mame's make file was defined to be used for X86. (This is what you get for not reading the readme file first... :-X)

I got MAME installed... Thanx again for the great work and guide... (now i need to find some rom to test it...  ;D ;D ;D)

struggler

  • Regular Poster
  • **
  • Posts: 39
    • View Profile
Re: Mame Installation Instructions
« Reply #6 on: May 21, 2008, 07:19:37 pm »
It turned out to be the mame's make file was defined to be used for X86. (This is what you get for not reading the readme file first... :-X)

I got MAME installed... Thanx again for the great work and guide... (now i need to find some rom to test it...  ;D ;D ;D)

abooreal,
Have you managed to make it work on amd64?

abooreal

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: Mame Installation Instructions
« Reply #7 on: May 22, 2008, 04:30:08 am »
It turned out to be the mame's make file was defined to be used for X86. (This is what you get for not reading the readme file first... :-X)

I got MAME installed... Thanx again for the great work and guide... (now i need to find some rom to test it...  ;D ;D ;D)

abooreal,
Have you managed to make it work on amd64?


From the look of it, yeah, I can see "MAME" on my main screen orbiter.
Now i will put an actual ROM on the system and see if it can find it.
I will keep you updated for my progress~~ ;D

note: Yup, I put my favourite rom in there, start linux MCE then select MAME, it's there...
The tab key menu works, control works...

Once again, thnx for the great guide~~  ;)
« Last Edit: May 22, 2008, 04:41:34 am by abooreal »

tschak909

  • LinuxMCE God
  • ****
  • Posts: 5549
  • DOES work for LinuxMCE.
    • View Profile
Re: Mame Installation Instructions
« Reply #8 on: May 22, 2008, 01:28:41 pm »
the next release will roll in the necessary orbiter UI. It can't be grafted onto the 0710 release because of API changes, sorry...

but, there is a complete orbiter UI on the way, for every single device.

-Thom

itspac

  • Veteran
  • ***
  • Posts: 136
    • View Profile
Re: Mame Installation Instructions
« Reply #9 on: May 22, 2008, 04:06:24 pm »
nevrmind i read the text file that came with the sdlmame download
« Last Edit: May 22, 2008, 04:19:57 pm by itspac »

gazlang

  • Guru
  • ****
  • Posts: 210
    • View Profile
Re: Mame Installation Instructions
« Reply #10 on: May 28, 2008, 02:29:34 pm »
abooreal, what did you change in the make file for x64?
Is the howto the same for x64 (apart from whatever you did to the make file)?
AMD Athlon 5800+ X2
Asus M2N-SLI-Deluxe
2x Corsair XMS6400 DDR2 512mb
Samsung 400GB SATA + 500GB SATA
nVidia GeForce 7300GT
Hauppauge Nova-T 500
Hauppauge PVR-500
Thermaltake low-noise 450w PSU
Thermaltake Bach Case w/ imon vfd
Fiire Remote
UIRT

abooreal

  • Newbie
  • *
  • Posts: 9
    • View Profile
Re: Mame Installation Instructions
« Reply #11 on: May 29, 2008, 05:06:11 am »
abooreal, what did you change in the make file for x64?
Is the howto the same for x64 (apart from whatever you did to the make file)?

Yup, I followed the guide. I only changed the parts I described.  ;)

gazlang

  • Guru
  • ****
  • Posts: 210
    • View Profile
Re: Mame Installation Instructions
« Reply #12 on: May 30, 2008, 06:17:47 pm »
OK, I have got as far as making the Mame_Plugin without any problems. But how and what exactly do I need to change in the mame make file for x64??

Cheers
AMD Athlon 5800+ X2
Asus M2N-SLI-Deluxe
2x Corsair XMS6400 DDR2 512mb
Samsung 400GB SATA + 500GB SATA
nVidia GeForce 7300GT
Hauppauge Nova-T 500
Hauppauge PVR-500
Thermaltake low-noise 450w PSU
Thermaltake Bach Case w/ imon vfd
Fiire Remote
UIRT

itspac

  • Veteran
  • ***
  • Posts: 136
    • View Profile
Re: Mame Installation Instructions
« Reply #13 on: May 31, 2008, 06:30:18 pm »
The instructions are in a txt file within the source download. Either a readme or install file.

gazlang

  • Guru
  • ****
  • Posts: 210
    • View Profile
Re: Mame Installation Instructions
« Reply #14 on: June 05, 2008, 02:08:05 pm »
Thanks,
I added the option indicated in the sdlmame source readme.

I have added some of the roms from here http://mamedev.org/roms/ to my /home/public/data/games directory but their names dont appear in the LMCE games explorer. I have images for the games but the name on the right hand side reads "no matching rom"

Is this normal, or did my spidering not find a rom name list (it must have found the images!)

Apart from that, its all working pretty good on amd64! The games play well!
AMD Athlon 5800+ X2
Asus M2N-SLI-Deluxe
2x Corsair XMS6400 DDR2 512mb
Samsung 400GB SATA + 500GB SATA
nVidia GeForce 7300GT
Hauppauge Nova-T 500
Hauppauge PVR-500
Thermaltake low-noise 450w PSU
Thermaltake Bach Case w/ imon vfd
Fiire Remote
UIRT