Hallo Galaxy Ranger
Eventuell ist es bereits zu spät für eine Antwort 😕
Zur Frage zwei kann ich dir jedoch ein paar Infos geben. Du kannst über die GPIO-Pins vom Raspi sogenannte RetroArch-Befehle an den Emulator schicken, so wie du es normal mit den Controllertasten Kombinationen machen würdest.
Ich habe z.B. so den Reset-Taster meines N64 Builds funktionsfähig gemacht:
#!/usr/bin/env python
import RPi.GPIO as GPIO
import time
import socket
# addressing information of target
IPADDR = "127.0.0.1"
PORTNUM = 55355
# enter the data content of the UDP packet
COMMAND = "RESET"
def retroarch(nwcommand):
try:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
except socket.error:
print 'Failed to create socket'
sys.exit()
s.sendto(nwcommand, (IPADDR, PORTNUM))
s.close
GPIO.setmode(GPIO.BCM)
GPIO.setup(3, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def netcmd(channel):
retroarch(COMMAND)
GPIO.add_event_detect(3, GPIO.BOTH, callback=netcmd, bouncetime=500)
while True:
time.sleep(0.2)