hi. new here.
it was a lot of docs to read.
why? because im more confortable with debian than with arch, and i already have a debian box serving files via nfs.
first get the kernel sources and the 15khz patches :
cd /usr/src
wget [url]https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.2.tar.gz[/url]
tar xvf linux-4.2.tar.gz
get the patches:
wget [url]https://github.com/philenotfound/linux-stable-15khz/commit/36c95067a5248e0609a568f5d0f414daaa46c6c2.patch[/url] -O linux-4.2.diff
wget [url]https://github.com/philenotfound/linux-stable-15khz/commit/80bc22d36821ae8c230b4acb2b353b82227afb25.patch[/url] -O ati9200_pllfix-3.19.diff
wget [url]https://github.com/philenotfound/linux-stable-15khz/commit/d1f0f9de24f0ce522ebecada214a9bd2675bc7e6.patch[/url] -O avga3000-3.19.diff
patch the sources:
cd linux-4.2 linux/
patch -p1 < ../ati9200_pllfix-3.19.diff
patch -p1 < ../avga3000-3.19.diff
patch -p1 < ../linux-4.2.diff
also i patch the usb hid because my joystick (mamepanel) appear like only one joystick device insted of two:
http://vusb.wikidot.com/project:mamepaneldiff -Naur a/linux-4.2/drivers/hid/hid-ids.h b/linux-4.2/drivers/hid/hid-ids.h
--- a/linux-4.2/drivers/hid/hid-ids.h 2015-08-30 13:34:09.000000000 -0500
+++ b/linux-4.2/drivers/hid/hid-ids.h 2016-04-23 18:14:53.727452169 -0500
@@ -1033,4 +1033,7 @@
#define USB_DEVICE_ID_RAPHNET_2NES2SNES 0x0002
#define USB_DEVICE_ID_RAPHNET_4NES4SNES 0x0003
+#define USB_VENDOR_ID_MULTIPLE_16C0 0x16c0
+#define USB_DEVICE_ID_MAME_PANEL 0x05df
+
#endif
diff -Naur a/linux-4.2/drivers/hid/usbhid/hid-quirks.c b/linux-4.2/drivers/hid/usbhid/hid-quirks.c
--- a/linux-4.2/drivers/hid/usbhid/hid-quirks.c 2015-08-30 13:34:09.000000000 -0500
+++ b/linux-4.2/drivers/hid/usbhid/hid-quirks.c 2016-04-23 18:14:53.730785501 -0500
@@ -148,6 +148,7 @@
{ USB_VENDOR_ID_MULTIPLE_1781, USB_DEVICE_ID_RAPHNET_4NES4SNES_OLD, HID_QUIRK_MULTI_INPUT },
{ USB_VENDOR_ID_DRACAL_RAPHNET, USB_DEVICE_ID_RAPHNET_2NES2SNES, HID_QUIRK_MULTI_INPUT },
{ USB_VENDOR_ID_DRACAL_RAPHNET, USB_DEVICE_ID_RAPHNET_4NES4SNES, HID_QUIRK_MULTI_INPUT },
+ { USB_VENDOR_ID_MULTIPLE_16C0, USB_DEVICE_ID_MAME_PANEL, HID_QUIRK_MULTI_INPUT },
{ 0, 0 }
};
install the dependencies:
apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc kernel-package
copy the .config from the Groovyarcade livecd to the sources and create the package:
fakeroot make-kpkg --initrd --revision=1.0-15khz kernel_image kernel_headers
dpkg -i linux-image-4.2.015khz_1.0-15khz_amd64.deb
reboot with the new kernel, now build groovymame:
wget [url]https://github.com/mamedev/mame/releases/download/mame0171/mame0171s.zip[/url]
get the groovymame patches:
wget [url]https://54c0ab1f0b10beedc11517491db5e9770a1c66c6.googledrive.com/host/0B5iMjDor3P__aEFpcVNkVW5jbEE/v0.171_015m/0171_groovymame_015m.diff[/url]
wget [url]https://54c0ab1f0b10beedc11517491db5e9770a1c66c6.googledrive.com/host/0B5iMjDor3P__aEFpcVNkVW5jbEE/v0.171_015m/hi_0171.diff[/url]
convert the patches to unix filetypes:
dos2unix 0171_groovymame_015m.diff hi_0171.diff
and patch the mame sources:
patch -p0 < ../hi_0171.diff
patch -p0 < ../0171_groovymame_015m.diff
install mame dependencies:
apt-get build-dep mame
apt-get install qt5-default qtbase5-dev qtbase5-dev-tools
uncoment and change QT_HOME in the makefile to
QT_HOME = /usr/lib/x86_64-linux-gnu/qt5/
now build groovymame
make
at this point you end with a groovymame binary, in my case mame64, now is time to test if it change the resolution and the frecuency to 15khz, exec ./mame64 and connect your 15khz screen and test.
in my case im using a ati hd4350 patched using atom15:
http://geedorah.com/eiusdemmodi/forum/viewtopic.php?id=64now to to boot the desktop to 15khz directly we need switchres:
http://switchres.groovyarcade.googlecode.com/git-history/4792d82514fd846bb8d3bcf657ea27d0080ffae4/SwitchResLinux-1.52/?r=4792d82514fd846bb8d3bcf657ea27d0080ffae4 http://forum.arcadecontrols.com/index.php?action=dlattach;topic=106405.0;attach=308813build and install to /usr/local/bin
now build an edid suitable for your screen:
switchres64 640 480 60 --monitor arcade_15 --edid
copy the generated edid file to /lib/firmware/edid/ directory
cp edid.bin /lib/firmware/edid/edid-15khz.bin -v
create the file /etc/modprobe.d/drm-kms-helper.conf with this content:
options drm_kms_helper edid_firmware=edid/edid-15khz.bin
conect again your 15khz screen and reboot, you get a nice 15khz desktop:
now is time to do what yo want, maybe install a mame frontend. in my case i need to adjust the overscan on the and a comet tail problem on my pvm.