Portál AbcLinuxu, 27. dubna 2024 15:40

Trocha hrania sa s olinuxinom

15.10.2014 19:00 | Přečteno: 4870× | Hardware | Výběrový blog | poslední úprava: 15.10.2014 19:13

Dnešný blog bude o skompilovaní Qt5 a transformáciu Olinuxino A20 micro na retro hraciu konzolu. Textu okrem pár príkazov moc nebude, o to viacej som tu napchal fotiek a videí ;-)

Kompilácia základného systému

Na vývoj pre takéto zariadenie budeme najskôr potrebovať SDK (cross kompilátor, knižnice ...). Takže šup:

git clone git://github.com/mireq/a20-olinuxino-micro-autobuild.git
cd a20-olinuxino-micro-autobuild
make

Po istej chvíli (a 10-15GB zožratého priestoru na disku) by mal príkaz skončiť niečim takýmto:

To create sd image type command:

sudo board/a20_olinuxino/make-sdimg.sh .../output/images/rootfs.tar 60 .../output/images

Po spustení príkazu sa vytvorí obraz, ktorý je možné skopírovať na SD kartu príkazom:

dd if=output/images/a20_olinuxino.sdimg of=/dev/sdX bs=4k

Samotné Qt5 sa defaultne nekompiluje, musí sa zapnúť cez menuconfig v adresári buildroot-a20-olinuxino - Target packages / Graphic libraries and applications / Qt5. To isté platí pre ovládače grafiky (mali).

olinuxino menuconfig

Nový systém je pomerne minimalistický. Defaultne je konzola nastavená na /dev/ttyS0. Grafický výstup sa dá zapnúť spustením modprobe lcd. Pre OpenGL musí byť načítaný modul mali (modprobe mali).

olinuxino a20 micro htop

Emulátor segy genesis

sonic - sega genesis

Ako emulátor používam svoj fork emultáora generator. Build systém je cmake, takže na kompiláciu je potrebný toolchain arm.cmake:

SET(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE_ARCH "arm")
SET(CMAKE_SYSTEM_VERSION 1)


SET(CMAKE_SYSROOT /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot)
SET(CMAKE_PREFIX_PATH /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot)
SET(CMAKE_LIBRARY_PATH /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib)
SET(CMAKE_INCLUDE_PATH /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include)
SET(CMAKE_C_COMPILER   arm-cortex_a7-linux-gnueabi-gcc)
SET(CMAKE_CXX_COMPILER arm-cortex_a7-linux-gnueabi-g++)
SET(CMAKE_FIND_ROOT_PATH /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot)


SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

SET(OPENGL_INCLUDE_DIR /toolchain/buildroot-a20-olinuxino/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include

Pre out of source build je príkaz na vygenerovanie Makefile:

cmake -DCMAKE_TOOLCHAIN_FILE=../arm.cmake -DUSE_QT_GUI=off -DUSE_QML_GUI=on -DUSE_SDL_AUDIO=off -DIMPORT_EXECUTABLES=../sega-generator-build/ImportExecutables.cmake ../sega-generator

Po spustení príkazu make by sa mal vygenerovať program generator-qml, ktorý stačí s príslušnými qml súbormi skopírovať na kartu a spustiť ;-)

V starších verziách som skúšal rôzne metódy škálovania, ale nakoniec som len surovo zväčšil obraz dvojnásobne (keď už retro tak poriadne).

Interpolácia

Nakoniec výsledok bez interpolácie vyzerá takto (nie je to rozobraný notebook, len obal na tablet s klávesnicou).

Olinuxino Qt5 Olinuxino as sega genesis emulator

Trochu hrania sa so shadermi - cool retro term

Poslednou hračkou dnes je emulátor terminálu, ktorý sa snaží tváriť fakt retro. Rozbehať ho síce nie je až tak jednoduché pretože niektoré shadery neboli napísané tak, aby fungovali pod OpenGL ES 2 (väčšinou stačili pridať precision). Takže zopár screenshotov (nízku kvalitu obrazu a šum spôsobuje samotný emultáro terminálu).

Htop wm3con

Olinuxino as sega genesis emulator

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

28.10.2014 17:46 David Indra | skóre: 15 | Prostějov
Rozbalit Rozbalit vše Re: Trocha hrania sa s olinuxinom
Odpovědět | Sbalit | Link | Blokovat | Admin
Oo, máš stejnou USB klávesnici! :D Já ji mám klasicky jako pouzdro tabletu. Kolik stála? W|A
mirec avatar 29.10.2014 06:39 mirec | skóre: 32 | blog: mirecove_dristy | Poprad
Rozbalit Rozbalit vše Re: Trocha hrania sa s olinuxinom

7.50€ v miestnom obecnom obchode ;-)

LinuxOS.sk | USE="-fotak -zbytocnosti -farebne_lcd +vydrz +odolnost +java" emerge telefon

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.