Duke Nukem 3D to chyba pierwsza gra w jaką grałem na PC. Pamiętam całą bandą przyłaziliśmy pograć do koleżanki, bo jako jedyna na osiedlu miała jakiegoś lepszego kompa (P1 133Mhz??). I tak to jest, że staruszki lubią sobie powspominać o starych czasach. Takie przemyślenia też pewnie miał twórca projektu Retropie który ma na celu zamienić Raspberry Pi w małą konsolkę na której można pograć w stare gry jak Quake, Doom, Mario, Tanks, Galaga. Generalnie Retropie skupia w sobie emulatory gier Amiga, Atari, PSX1, Game Boy, NES, SNES, PC. Po prostu całkiem niezła gratka dla fanów starych gier.

Mnie też ostatnio wzięło na pogranie w coś i właśnie pomyślałem, żeby uruchomić Retropie na swoim Raspberry Pi. Jak wiecie często

robię zakupy w oszołomie to wybrałem się po pady. Ku mojemu zaskoczeniu kupiłem dwa całkiem fajne pady na USB – 13zł za sztukę. Wgrałem obraz ze strony na kartę i uruchomiłem. Obawiałem się, że będzie jazda z padami, konfiguracja itd. Przy starcie retropie powiadomiło mnie, że wykryło pady i poprosiło o konfiguracje guzików. Wszystko działa od reki a instalowałem wersje testową. Od razu można pykać w Dooma :)

W między czasie dostałem Raspberry Pi2 i TFT LCD od kamami.pl na wieczne testy :) Więc postanowiłem uruchomić retropie tak aby działał z LCD. Miałem zajawkę aby stworzyć gameboya jak adafruit ale co będę po kobietach zgapiał. Trochę mi to zajęło, konfiguracje w device tree, frejmbuferry, moduły. Testy na czystym raspibiane, na retropie, na wersji od adafruit. W końcu doszedłem do najczystszego rozwiązania, które poniżej opisze. Czyli jak uruchomić LCD TFT na Retropie.

LCD TFT

Na początek trzeba pobrać obraz retropie i wgrać go na kartę sd.

dd bs=4M if=retropie-v3.0beta2-rpi2.img | pv | dd of=/dev/mmcblk0

Po pierwszym uruchomieniu trzeba koniecznie poszerzyć partycję uruchamiając raspi-conf

raspi-conf

Następnie trzeba zaktualizować system

sudo apt-get update && apt-get upgrade

Od jakiegoś czasu bftft jest w kernelu więc nie trzeba nic instalować dodatkowego a dodać do /boot/config.txt poniższe linie.

hdmi_force_hotplug=1
hdmi_cvt=320 240 60 1 0 0 0
hdmi_group=2
hdmi_mode=87

dtoverlay=pitft28-resistive,speed=32000000,rotate=270,fps=30

Linie zaczynające się od HDMI wymuszają konfiguracje portu hdmi a linia dtoverlay.. uruchamia TFT LCD z parametrami. Można tu zmienić fps, rotacje. Cały trik będzie polegał na uruchomieniu programy fbcp który kopiuje obraz z hdmi do TFT. Dlatego zmieniłem rozdzielczość hdmi na 320×240. Jeśli wyświetlacz zmienił kolor z białego na czarny po uruchomieniu to znaczy, że wszystko jest ok.

Instalacja fbcp

cd /tmp
 sudo apt-get install -y cmake
 git clone --depth=1 https://github.com/tasanakorn/rpi-fbcp
 mkdir -p rpi-fbcp/build
 cd rpi-fbcp/build
 cmake ..
 make
 sudo install fbcp /usr/local/bin/fbcp
 cd ../..
 rm -r rpi-fbcp

Dodaj w /etc/rc.local przed exit 0 aby fbcp startował automatycznie z systemem.

/usr/local/bin/fbcp &

 Wifi

Ja aby uwolnić się od kabli mam mały modulik wifi TP-Link’a na USB.  Aby skonfigurować sieć WifF jako klienta dodaj w /etc/wpa_supplicant/wpa_supplicant.conf

network={
ssid="twojasiecwifi"
psk="tajnehaslotajnehaslo"
key_mgmt=WPA-PSK
}

a w pliku /etc/network/interfaces zmień

iface wlan0 inet static

na

iface wlan0 inet dhcp

i

wpa-run /etc/wpa_supplicant/wpa_supplicant.conf

na

wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Fotkiii

Powiesiłem Raspberry Pi nad biurkiem, w czasie przerwy nad składaniem quada lub nettempem mogę sobie pyknąć w jakąś gierkę na padzie. Praca z Raspberry Pi2 to naprawdę przyjemność. Jest szybsze i naprawdę przyjemnie się na nim instaluje pakiety ale wrażeniami podzielę się w osobnym wpisie. A zapomniałbym – minus używania TFT przez fbcp to lekkie regularne lagi. Czyli to nie minus po prostu gra się jak kiedyś :D

1_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 2_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 3_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 4_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 5_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 6_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 7_techfreak_retropie_tft_2.8_320x240_raspberryPI2_ 8_techfreak_retropie_tft_2.8_320x240_raspberryPI2_