I don't have the code with me, so I can't diff, but I'll mention line numbers of the current code via mamedev.org/source/ and what changes I made to make it run on my Raspberry Pi.
R. Belmont: please don't take this as the product of a seasoned developer. I made some of these changes and a C dev who works for my employer made the rest work because I was annoying the crap out of him. So, I can't speak for the quality of this, I can only say that these changes made MAME compile and run emulation for the specific game I want (25pacman.)
http://mamedev.org/source/makefile.html: comment out 499 and 500. The build will die on cast alignment errors, and ... something else, if you don't comment these out. ARM peculiarities.
http://mamedev.org/source/src/emu/emualloc.c.html: comment out 302 and 303. 297: change to: resource_pool_item *entry = resource_pool::find(item.m_ptr);
299: change to: entry = resource_pool::find(reinterpret_cast(item.m_ptrr) - sizeof(size_t));
Build with "make NOASM=1". If you don't restrict the target you'll run out of memory if you compile on the Raspberry Pi itself. I compiled support only for 20pacgal and 25pacman by modifying mame.lst and mame.mak. I don't have those changes on-hand, but I can get them, though that should be pretty easy for someone familiar with that system to replicate.
|