ogu 환경설정

odroid go ultra 환경 설정

기본 위키 정보

https://wiki.odroid.com/odroid_go_ultra/odroid_go_ultra

ubuntu 20.04 기본 이미지는 아래 경로에서 받을 수 있습니다. emmc에 기본 탑재 되어 있을 거라 이후 버젼 나오는지만 지켜보면 될 것 같습니다. 현재 v1.1 - gou-es-220926.img.xz 버젼이 배포되어 있습니다.

https://wiki.odroid.com/odroid_go_ultra/getting_started/installing_os_image

uboot/kernel 소스 빌드 가이드는 아래와 같습니다. https://wiki.odroid.com/odroid_go_ultra/software/building_u-boot https://wiki.odroid.com/odroid_go_ultra/software/building_kernel

기본 포럼 정보

포럼은 아직 본격적으로 활성화 되어 있지는 않습니다. 다양한 이슈를 확인 할 수 있고 필요한 경우 이슈를 등록해서 개발에 참여하면 됩니다.

https://forum.odroid.com/viewforum.php?f=220&sid=d46aa6cf2485e1e9f9e23e6d82f68778

한글 포럼 위치

https://forum.odroid.com/viewforum.php?f=197&sid=cd47b7cae640ba679d9008edefbd5bb3

제일 처음 sd card 폴더 구성 방법을 설명하고 있음 exfat 으로 포맷한 sd card 루트 경로에 roms.7z 압축을 풀고 해당 폴더에 롬을 복사합니다.

https://forum.odroid.com/viewtopic.php?f=220&t=45209&sid=d06556d38faaa753b34e4b80704e0e09

ogu에서 docker 를 설치하기 위해서는 아래 가이드를 따른다

https://wiki.odroid.com/odroid-n2/software/using_docker https://docs.docker.com/engine/install/ubuntu/

키 값

evtest 결과는

odroid@gou:~$ evtest
No device specified, trying to scan all of /dev/input/event*
Not running as root, no devices may be available.
Available devices:
/dev/input/event0:      gou-gpio-keys
/dev/input/event1:      rk8xx_pwrkey
/dev/input/event2:      AML-AUGESOUND Headphones
/dev/input/event3:      odroidgo_joypad
Select the device event number [0-3]:

DPAD up/down/left/right
Event: time 1665173571.807667, -------------- SYN_REPORT ------------
Event: time 1665173581.479641, type 1 (EV_KEY), code 544 (BTN_DPAD_UP), value 1

Event: time 1665173581.623648, -------------- SYN_REPORT ------------
Event: time 1665173582.215664, type 1 (EV_KEY), code 545 (BTN_DPAD_DOWN), value 1

Event: time 1665173582.407656, -------------- SYN_REPORT ------------
Event: time 1665173582.919635, type 1 (EV_KEY), code 546 (BTN_DPAD_LEFT), value 1

Event: time 1665173583.079648, -------------- SYN_REPORT ------------
Event: time 1665173583.403654, type 1 (EV_KEY), code 547 (BTN_DPAD_RIGHT), value 1

B : BTN_SOUTH A : BTN_EAST

Select : BTN_TRIGGER_HAPPY1 Start : BTN_TRIGGER_HAPPY6

readelf 설치

sudo apt-get install binutils

$ readelf -d retrorun

Dynamic section at offset 0xe878 contains 37 entries:
  Tag        Type                         Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libgs0.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgs0-input.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgs0-audio.so]
 0x0000000000000001 (NEEDED)             Shared library: [libgs0-graphics2d.so]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so.2]
 0x0000000000000001 (NEEDED)             Shared library: [libEGL.so]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [ld-linux-aarch64.so.1]
 0x000000000000001d (RUNPATH)            Library runpath: [.]

$ ls -l libSDL*
lrwxrwxrwx 1 root root      21 Apr 13  2020 libSDL2-2.0.so.0 -> libSDL2-2.0.so.0.10.0
-rw-r--r-- 1 root root 1261592 Apr 13  2020 libSDL2-2.0.so.0.10.0

sd card mount

설치할 필요는 없음:sudo apt-get install fuse-exfat

sudo fdisk -l
Device         Boot Start       End   Sectors  Size Id Type
/dev/mmcblk1p1      32768 124735487 124702720 59.5G  7 HPFS/NTFS/exFAT

sudo mkdir -p /mnt/sdcard
$ sudo mount -t exfat /dev/mmcblk1p1 /mnt/sdcard -o rw,users,umask=000
sudo mount -t exfat -o defaults,uid=1000,gid=1000,umask=000 /dev/mmcblk1p1 /mnt/sdcard

마운트 위치
/volumes/sdcard.1/

/dev/mmcblk1p1  62334976 6586624  55748352  11% /volumes/sdcard.1

runcommand 에서 animation

ffplay 를 사용하기 위해서는
sudo apt install ffmpeg

runcommand.sh 실행시 아래 오류 메세지 존재함 ffplay: no process found

pad 기본 겂

$ cat /sys/class/input/js0/device/name
odroidgo_joypad
$ cat /sys/class/input/js0/device/id/vendor
484b
$ cat /sys/class/input/js0/device/id/product
1000
$ cat /sys/class/input/js0/device/id/version
0100

사운드 출력이 되지 않을 때에는

sudo apt-get -y install alsa-base
sudo alsa force-reload

mixer 제어가 안될 때

sudo apt-get install libasound2-plugins

프로세스 종료 방법

ps -C attract | awk 'NR>1 {print $1}'
ps -C retroarch | awk 'NR>1 {print $1}'
kill -9 <proc-id>

2023

rgb30 빌드 환경

1 분 소요

rgb30 기기를 위한 이미지는 크게 jelos와 arkos가 존재합니다. 각각 다른 빌드 환경에서 에뮬레이터/프론트엔드/코어를 빌드 합니다.

8bitdo m30 for linux

최대 1 분 소요

Press and hold for 5 sec. If LED blinks, the mode has changed. There are three modes that can be set, and they are as follows.

rgnano build sm64

최대 1 분 소요

빌드를 하기 위해서는 docker 환경 내에서 작업 합니다.

rgnano ffmpeg build

1 분 소요

ffmpeg, ffplay 를 구동하기 위한 빌드환경을 설명합니다.

rgnano build 환경

1 분 소요

rgnano 용 이미지는 2종 (anbernic 생산 버젼, funkey DrUm78 custom 버젼) 존재합니다. 빌드 환경이 서로 다르기 때문에 각각 빌드된 프로그램은 실행되지 않음

rgnano simplemenu 구동

1 분 소요

rgnano는 240x240 해상도를 갖고 있다. 하지만 simplemenu는 320x240, 640x480 테마만 가지고 있다. rgnano에서 simplemenu 프론트엔드를 적용하기 위해서 기존 테마를 가공한 필요가 있었다.

miyoo mini + advmenu ip 및 배터리 값 표시

최대 1 분 소요

휴대용 기기를 위한 ip 주소 값과 배터리 상태 값을 표시한다. advmenu.rc 상에서 값 읽는 스크립트를 자유롭게 바꿀 수 있게 설계 한다. 메뉴 일부분을 한글로 구현 한다. core와 에뮬레이터를 advmenu 메뉴를 통해 변경할 수 있다.

miyoo mini + docker

최대 1 분 소요

mm+ 용 에뮬레이터를 빌드하기 위해서는 아래 toolchain을 사용해야 합니다. build 확인된 commit 시점으로 이동합니다.

miyoo mini + key value

최대 1 분 소요

miyoo mini + generates keyboard value when press each button. button value is below.

ogu linapple 구동

1 분 소요

linapple은 sdl1.2 기반으로 구현되어 있습니다. ogu에서 구동하기 위해서는 sdl2.0으로 변경 필요합니다.

ogu bluealsa 설치

1 분 소요

bt a2dp sink 출력을 하기 위해서는 pulseaudio를 설치해야 합니다만, bt 오디오 출력이 없어도 일정 수준으로 cpu를 사용하고 있기 때문에 다른 대안 중에 하나가 bluealsa 입니다.

ogu xpadneo 구동

3 분 소요

BT gamepad에서 진동 기능을 사용하려면 xpadneo를 설치해야 합니다. 기기 내에 linuxheader 를 설치 하고

ogu dosbox pure 로 windows95/98 설치

1 분 소요

ogu 에서 windows 95/98 용 프로그램을 실행하기 위해서는 dosbox pure를 사용하여 windows 95/98을 설치해야 합니다. 설치하기 위한 hdd.img 를 만들고, window 95/98 cd를 설치한 후, 원하는 게임롬과 함께 windows 95/98 os...

ogu flycast

1 분 소요

libretro core github에 있는 flycast 동작이 이상합니다. 개선을 위해 보다 최신 github 소스를 사용해 봅니다

맨 위로 이동 ↑

2022

ogu devilutionX 구동

최대 1 분 소요

diablo 이미지를 구동하기 위한 엔진입니다. 아래 방법으로 빌드 할 수 있습니다. docker 환경에서 빌드 가능합니다.

ogu gl4es

최대 1 분 소요

64bit / 32bit 모두 빌드 가능합니다.

ogu box86,box64

최대 1 분 소요

pc linux 용 x86/x64 를 arm 기기에서 실행하기 위해서는 box86,box64 가 필요합니다.

ogu sdcard 인식문제 해결 방법

2 분 소요

v1.1 (2022/09/26) ubuntu 20.04 기본 이미지에서는 reboot 시 sdcard 인식되지 않는 문제를 해결하기 위해서는 uboot와 kernel을 수정해야 합니다.

ogu mame current

최대 1 분 소요

mame는 빌드시 memory를 많이 필요로 하기 때문에 빌드 중간에 멈추는 현상을 방지하려면 사전에 swap 메모리 확보가 필요합니다.

ogu backup image

최대 1 분 소요

recovery mode 진입 : l2 + r2 + power 키로 전원을 키면 recovery mode로 진입한다.

ogu log

최대 1 분 소요

불필요한 log 가 쌓이는 것을 막기 위해서는 사이즈 제한을 해야 합니다.

ogu openbor

최대 1 분 소요

sudo apt install libvpx-dev libvorbisidec-dev git clone https://github.com/DCurrent/openbor

ogu easyrpg

최대 1 분 소요

easyrpg standalone 사용방법

ogu toolchain

1 분 소요

pc 환경에서 ogu 소스를 빌드하기 위해서는 toolchain을 설치해야 합니다. pc에서 빌드해야 하는 소스는 linux kernel과 uboot 이 있습니다.

ogu core build

최대 1 분 소요

retroarch core build 관련해서 정리해 봅니다.

ogu attractmode

최대 1 분 소요

ogu 장치에 맞게 attracmode 구동을 위한 sfml 라이브러리를 변경합니다.

ogu libgo2 코드 libgou로 수정

최대 1 분 소요

libgo2 로 작성된 코드를 libgou로 대체하기. retrorun go2와 gou 코드를 비교하여 기존에 작성된 코드를 수정한다.

ogu 자동실행 구문 수정

1 분 소요

ubuntu 에서 부팅시 자동으로 emulationstation을 실행해 주고 있으나, killall 로 죽여도 살아나기 때문에 개발에는 적합하지 않아 수정해 줍니다.

miyoo-mini rumble motor 제어 방법

2 분 소요

기술 관련 전문 (motor 테스트 앱에 포함되어 있는 pdf 에 적혀 있는 내용을 내마음 대로 번역해 보았습니다.)

하루전날 테스트

최대 1 분 소요

Welcome 포스팅이 되지 않아 하루전날 파일 생성해서 테스트 해봅니다.

맨 위로 이동 ↑