LAKKA/Why Lakka

Last-modified: 2016-07-24 (日) 12:13:33

Lakka takes its inspiration from projects like RetroPie and PiMAME that demonstrate the potential of combining a dedicated Linux environment with game emulation frontend software running on a small, low-power development board. However, those projects only support Raspberry Pi hardware.

Lakkaは、専用のLinux環境を組み合わせたRetroPieやPiMAMEのようなプロジェクトからのインスピレーションを受けています。このゲームのエミュレーションフロントエンドソフトウェアは、小型、低消費電力開発ボード上で動作していて、これらのプロジェクトはラズベリーパイのハードウェアもサポートしています。

Lakka’s OpenELEC architecture and fast cross-compilation makes it possible to create optimized builds for a variety of hardware. Lakka supports many systems, including a variety of development boards, embedded/mobile systems, and tiny PCs. Examples include the Cubieboard, the Hummingboard, and Odroid along with builds for 32-bit and 64-bit PC systems. Learn more in “Hardware Support”.

LakkaのOpenELECアーキテクチャと高速クロスコンパイルは、ハードウェアに応じたさまざまな最適化されたビルドを作成することを可能にします。 Lakkaは組み込み/モバイルシステム、および小型のPCなど、様々なシステムで動作します。32ビットおよび64ビットのPCシステム用のビルドに沿う例としてはCubieboard 、 Hummingboard 、およびOdroidが含まれます。 「ハードウェアサポート」で詳細をご覧ください。

Integration with RetroArch
RetroArchとの統合

RetroPie uses EmulationStation as frontend, while Lakka integrates directly with RetroArch. This choice does slow down Lakka core performance on the lowest-powered development boards, but also offers the following advantages:

RetroPieは、Ubuntuで動くLinux上でフロントエンドとしてEmulationStationを使用しています。
LakkaはRetroArchと直接統合しながら動いています。この選択は、最低環境でLakkaコアのパフォーマンスを遅くしますが、次のような利点があります。

   No manual joypad configuration, we use RetroArch autoconfig feature and it works for all consoles
   Better integration with the frontend: you can pause your game to use savestates, take screenshots, or switch PlayStation CDs and then go back to your game
   Less code, and no effort on duplication

手動によるジョイパッドの設定を必要とせず、RetroArchのオート設定機能を使用して、すべてのコンシューマー機で機能します。

  • フロントエンドとの統合:
    ゲームを一時停止してsavestatesを使用する、スクリーンショットを取る、またはプレイステーションのCDを切り替えることができます。その後、ゲームに戻って一時停止を解除することができる。
  • 少ないコードで、複製に努力しなくていい(←?)

Learn more about the systems that Lakka supports.
LAKKAのサポートするシステムをもう少し知ってみる

Built on OpenELEC

OpenELEC上で動いている

Lakka is based on OpenELEC, which provides a number of advantages:
LAKKAはOpenELEC上で動いていて、多くの利点を提供する

  • A 100mb read-only filesystem you cannot break even with root access
    100メガバイトは、読み取り専用なファイルシステムで構成されrootアクセスでも壊すことができない

A rock solid update system not based on packages, the whole filesystem and kernel are downloaded and replace the actual system
Cross-compilation. Compiling the whole project including the Linux kernel takes about 2 hours on a good computer
No useless extra packages, we strictly include the dependancy tree of RetroArch

  • パッケージシステムに基づいていない硬いアップデートシステムは、ファイルシステム全体とカーネルがダウンロードされ、実際のシステムを置き換えています
  • ※DLLの差し替えや差分アップデートで旧来のシステムをいじくり回したアップデートではなく、常に綺麗なシステムをまるごと提供するので不安定になりにくく、バージョンがごっちゃにならない
  • クロスコンパイル。
    Linuxカーネルを含むプロジェクト全体のコンパイルには良いコンピュータでも約2時間かかります。

無駄な追加パッケージは、厳密に精査してRetroArchのツリー構造に含まない

We can version the entire distro under a single git repository, containing all our package recipes, patchsets, kernel configs, etc

我々のディストリビューションは、単一のgitリポジトリのもとにすべてのパッケージのレシピ、パッチ、カーネル設定など全てを1つのバージョンで管理されている(DLLごとにバージョン管理されていないのでみんなが同じバージョンを使える)

The build system will bootstrap itself on a project basis, we compile our specific version of the cross compilers for each project

ビルドシステムは、プロジェクト単位で起動時に自分自身をクロスコンパイルします。

  • ビルドのアップデートファイルを置いておけば起動時にそれを展開してコンパイルしてビルドされシステムがまるごと更新されますよ