電子辞書Brainをいじる (6) Brainuxでゲームをインストールして遊ぶ (1)

Brainuxでゲームをインストールして遊ぶ

BrainuxはDebian11 ベースのLinuxOSですので、
Debian レポジトリや、Linux用ソフトウェアをインストールすることができます。

ただ、ゲームをインストールできたとしても、
Brainのマシンスペック(CPU性能、メモリ、Disk性能、画面解像度)や、前提ソフトウェアの有無、バージョンなどによってうまく動かないことがあります。

参考としては、スペックは
大体初代ラズパイの半分くらいの性能のメインボードからネットワークを除いたものに
以下のハードウェアをついている感じでしょうか。
・ディスプレイ[854×480](タッチパネル付き)
・キーボード
・バッテリ回り

逆を言えば、普通のPCにDebianを導入すれば、
基本的にはこれらのゲームを遊ぶことが可能です。

 

ゲームの探し方

Linuxゲームの導入は、いろいろ探せます。

例えば、Debian 11 (bullseye) レポジトリのGames サブセクションをのぞいてみたりすると、
大量のソフトウェアパッケージが見つかります。

“bullseye” のサブセクション games に含まれるソフトウェアパッケージ
https://packages.debian.org/ja/bullseye/games/

もちろんすべて動くわけではなく、特に近年の3Dをバリバリに使っているものとか、
最新のライブラリを使っているものとかはかなり厳しいです。
音楽については、USBサウンドデバイスを付けていれば鳴るものもありますが、その分ゲームのパフォーマンスに影響が出るものもあります。
(Brainでは音が長期間流れる状況だと、音の途切れが発生しやすいです。)
(”pulaseaudio –start”でPulasaudioを起動すると、多少でですが安定する場合があります。)

昔のコンソール版ソフトウェアとか、X11,GTK, SDL1.2あたりを使っているソフトであれば、意外といける可能性が高いです。

逆にpython3-pygame、SDl2、OpenGLあたりを使っている場合は、
結構厳しいものが多いかもしれません。

(どのライブラリを使用しているかどうかは、パッケージ一覧からソフトウェアの詳細に関連パッケージが表示されるので、なんのライブラリをインクしているかで推測できます。)

ほかにも、ソースでゲームを公開、紹介していることろもありますので、
いろいろ探してみましょう。

Debian ゲームポータル aptでインストールできる可能性が高いです。

ArchLinuxゲーム一覧  ゲーム名と公式サイトがわかりますので、そこから探します。

newbreedsoftware    Linuxで動きそうなゲームのソースが公開されています。

ゲームいろいろ     ゲーム名がわかりますので、そこから探します。

パッケージリスト(ゲーム) Vine Linux(Redhat系),Knoppix(debian系)でのゲームリスト

Linux Games      ゲーム名がわかりますので、そこから探します。

 

ゲームを動かしてみる

試しにいくつかのゲームカテゴリのソフトウェアを導入してみました。
なお、前提として、以下あたりは実施しておいてください。
・ネットワークに接続してdebian11レポジトリに接続可能
・スワップ領域を設定済

コンソールソフトウェア

〇 nettoe     コンソール用ネットワーク版 Tic Tac Toe (3×3 盤、三目並べ)

https://packages.debian.org/bullseye/nettoe

 実行OK。コンピュータ対戦可能な三目並べです。。

 詳しい説明は、man nettoe で確認してください。 

 インストール:APT経由 ”sudo apt install nettoe”

 

———- 

〇 bsdgames     UNIX の古典的なテキスト版ゲームコレクション

https://packages.debian.org/bullseye/bsdgames

 実行OK。たくさんのゲーム(40個くらい)がインストールされますが、
 メッセージがすべて英語なので、遊び方がよくわからないのが多いです。
 (パッケージ内容の詳細)

 各コマンドの詳細が知りたければ、man <実行コマンド>で説明が読めます。

    adventure, arithmetic, atc, backgammon,
    battlestar, bcd, boggle, caesar, canfield, countmail, cribbage, dab,
    go-fish, gomoku, hack, hangman, hunt, mille, monop, morse, number,
    pig, phantasia, pom, ppt, primes, quiz, random, rain, robots, rot13,
    sail, snake, tetris-bsd, trek, wargames, worm, worms, wump, wtf

   ルールがわかりやすいのはこの辺でしょうか?
    ゲーム:
     arithmetic  対話型の計算ゲーム
     gomoku   コンピュータ対戦可能な五目並べ
     hack    元祖アクションRPG”ローグライクゲーム”の諸派の中でも有名な
           nethack の前身
     hangman  単語当てゲーム
     snake    スネークに捕まらないようにお金を回収するゲーム
     tetris-bsd   テトリス(j:左移動 k:回転 l:右移動 スペース:落下)
     worm    一般的にスネークゲームと呼ばれているゲーム
    環境表示ソフト
     rain    コンソール上に水を張り、そこに雨粒を落としたような
           エフェクトがかかる環境表示コマンド。
           -d 100ぐらいがちょうどいいかも。
     worms   端末に蟲を這わせる感じの環境表示コマンド。
           オプションでいろいろ表示を変えられるらしいです。

 個々の詳しい説明は、”man <起動コマンド> “で確認してください。 

 インストール:APT経由 ”sudo apt install bsdgames”

 

———- 

〇 bastet     テトリスのテキストバージョン

https://packages.debian.org/bullseye/bastet

起動:bastet

 BSD ゲームコレクションにあるものよりも Bastest の方が出来がいいよと言われています。
 実際ブロック(テトロミノ)がカラフルなため、画面映えもこちらのほうがいいです。

 なぜか最初X上のターミナル上では、ゲーム画面の操作するブロック(テトロミノ)が
 表示されませんでした。(lxterminalの仕様か、フォントの問題かもしれません。)

 ただ、X上でない素のコンソールや、fbterm上で起動した場合は正常に表示されて
 ゲームもできましたし、その後Brainuxを再起動したところ、正常に動きました。
 (BrainのX上のターミナルからssh localで自分にログインしたら正常に表示されました。謎)

 詳しい説明は、man bastet で確認してください。 

 Xを起動できるのであれば、
 AI対戦も可能な、LTrisのほうでプレイすることを推奨します
 LTris CPU に優しいテトリスクローン

 インストール:APT経由 ”sudo apt install bastet”

 

———- 

○ ninvaders   古典的なアーケード ゲームのスペース インベーダーのクローン

https://packages.debian.org/bullseye/ninvaders

起動:ninvaders

 古典的なアーケード ゲームのスペース インベーダーのクローンです。

 インストールしてみたところ、どの環境(素のコンソール、X上のターミナル等)でも
 ゲームが始まると、キー入力ができなくなりました。
 ・キー入力できない以外は動いているようです。
 ・ゲームは始める前まではキー入力は反応。

 Souceからバイナリを再構築してみましたが、現象一緒なので、いったん断念します。

 詳しい説明は、man ninvaders で確認してください。 

 
 インストール1:APT経由
 $ sudo apt install ninvaders

 インストール2:Debian 11 リポジトリソースからインストール(0.1.1-4)

インストール手順詳細(クリックで表示)

$ cd
$ mkdir ninvaders
$ cd ninvaders
$ sudo apt install build-essential libncurses5-dev git
$ sudo apt install devscripts build-essential
$ apt source ninvaders
$ cd ninvaders-*
$ sudo dpkg-buildpackage -us -uc
$ cd ..
$ ./ninvaders-*/ninvaders #動作チェック
$ cd ..
$ sudo dpkg -i ninvaders_0.1.1-4_armel.deb

 インストール3:非公式サイトからソースを入手してからインストール(0.1.0)

インストール手順詳細(クリックで表示)

$ cd
$ mkdir ninvaders
$ cd ninvaders
sudo apt install build-essential libncurses5-devs
$ git clone https://github.com/doctorfree/ninvaders.git
$ cd ninvaders
$ ./mkpkg
<エラー>
$ mkdir build2
$ cd build2
$ cmake ..
$ cmake –build .
$ make
$ ./ninvaders #動作チェック
$ cmake –install

(追記)
原因わかりました。

Brainの画面描画の速度が遅すぎて、デフォルトの50FPSだと、自機表示やインベーダなどを動かしているタイマー割込み処理が間に合わず、メインルーチンにあるキー入力処理が呼ばれない状況になっていたのが原因でした。
インストール3のソース(1.0.0)で20FPSあたりまで下げると、X11ではない素のシェル上では動くようになりました。
ただ、このゲームの場合、「FPSが下がる=難易度が下がる」なので、この辺はなかなか難しいところです。

変更箇所
nInvaders.c 33行目付近

#define FPS 50

#define FPS 20

(なお、インストール2のソース(0.1.1)では、15FPSぐらいまで落としたほうがよさそうです。)

ソース見ていたら、普通は 左右のカーソルキーとスペースで操作だけど、
h,lで移動、kでショット、pで音時停止。”W”で次のレベル。”L”で前のレベルになるらしい。(これ隠しコマンドかな?)

 

———- 

〇 moon-buggy  危険なクレーターを飛び越えて月の表面を横切って進んで行くゲーム

https://packages.debian.org/bullseye/moon-buggy

 実行コマンドは「moon-buggy」になります。
 Space or j ジャンプ
 a or l レーザー発射(岩が出てきたら破壊する用)

 危険なクレーターを飛び越えて避けようとしながら月の表面を横切っていくゲームです。
 タイミングが意外とシビアです。

 詳しい説明は、man moon-buggy で確認してください。

 インストール:APT経由 ”sudo apt install moon-buggy”

 

———-

〇 Pacman4console パックマンのターミナル版

https://packages.debian.org/bullseye/pacman4console

起動:pacman4console

 起動には、29x32のキャラクターサイズが入るウィンドウが必要なので、
 X上のターミナルでは起動不可でした。
 素のshell上であれば、起動できます。

 移動はカーソルキーです。
 迷路はレベルごとに変わり、9種類あるそうです。
 (起動時に –level=[1..9]で指定したLEVELから起動できます。)

 また、自分で迷路を作ることも可能だそうです。

 詳しい説明は、man pacman4console で確認してください。

 インストール:APT経由 ”sudo apt install pacman4console”

 

———- 

◎ 2048      4×4のタイル上で番号のブロックを結合して2048を目指すゲーム

https://packages.debian.org/bullseye/2048

起動:2048

 2048は戦略的で非常に中毒性のあるゲームです。
 カーソルキーを押すとその方向にブロックが移動して数字がどんどん加算されていきます。

 目標はスコアを2048にすることです。
 意外とはまるパズルゲームです。

 詳しい説明は、man 2048 で確認してください。

 インストール:APT経由 ”sudo apt install 2048”

 

———-

△ asciijump   小さくかわいいアスキーアートスキージャンプゲーム

https://packages.debian.org/bullseye/asciijump

起動:asciijump

 小さくかわいいアスキーアートスキージャンプゲーム

 これは非常にかわいらしいマルチプレイヤゲームであり、友達やコンピュータと
 対戦できます。ワールドカップモードと訓練モードという二種類のプレイモードが
 あります。 例えばチョモランマやフィンランドといった数種類の山を選択できます。

 aptでインストールしましたが、動きませんでした。
 少し調べたところ、ソースにパッチ当てが必要とのことで、
 レポジトリからソースを取得して、パッチを当てて再構築します。

 すると、ゲームが動くようになりました。

 詳しい説明は、man asciijump で確認してください。

 インストール1:APT経由 ”sudo apt install asciijump”

 インストール2:レポジトリからソースを入手してパッチ適用後にインストール

インストール手順詳細(クリックで表示)

$ cd
$ mkdir asciijump
$ cd asciijump
$ sudo apt install -y devscripts
$ sudo apt build-dep -y asciijump
$ apt source asciijump
$ cd asciijump-1.0.2~beta/
$ wget https://gist.githubusercontent.com/mt08xx/9cdf4bebed3b04509253f8778620372b/raw/cf94da0d0debb80cf8b016636fca325acb3e452e/xfnc.c.patch -O ./debian/patches/xfnc.c.patch
$ echo xfnc.c.patch >> debian/patches/series
$ debuild -us -uc

$ ./asciijump #動作確認

$ sudo apt remove -y asciijump
$ sudo apt install -y ../asciijump_1.0.2~beta-10_armel.deb

$ asciijump

 

———-

〇 nudoku    コンソール版の数独 (sudoku)です。

https://packages.debian.org/bullseye/nudoku

起動:nudoku

 コンソール版の数独 (sudoku)パズルです。
 数字を縦・横・3×3のマス目でそれぞれ独立しているように埋めていくのがルールです。
 カーソルキーで移動し、空いたマス目に数字を埋めていきます。
 すべて埋めたら、”c”キーでチェックです。正解なら「Solved」と表示されます。

 頭の体操にどうぞ。いくつかのお助け機能も搭載されいますよ。

 難易度は、”easy”(デフォルト), “normal”, “hard”があります。
 起動時に”-d <レベル>”オプションで、任意度を変更できるようです。

 詳しい説明は、man nudoku で確認してください。

 インストール:APT経由 ”sudo apt install nudoku”

 

———-

◎ cgames    コンソール版の倉庫番、マインスイーパー、ブロックゲーム (2025/12/08追加)

 コンソール版の倉庫番、マインスイーパー、スライドブロックパズルをプレイできる
 パッケージです(公式サイト)。

csokoban  コンソール版の倉庫番です。
      カーソルキーで移動して、荷物を押して決められた場所に移動するパズル
      x Undo
      z Undo the last move
      Ctrl+r Levelの最初からリトライ

      P 1つ前のレベルに移動
      N 1つ先のレベルに移動 
      ?  オンラインヘルプを表示     

      どうやらLevelは全部で173あるようです。
      詳しくは、man csokobanで確認できます。

cmines   コンソール版のマインスイーパーです。
      カーソルキーで移動して、スペースでそこを調べます。
      爆弾でない場合は、周辺の爆弾の数が表示されます。
      爆弾ならゲームオーバーです。
      記号+”M”(.) その場所で旗を立てる/旗を消します。

      ? オンラインヘルプを表示

      なお、マウスでも操作できます
      (右:調査、左:旗操作、ミドル:数字が表示されているマスの周囲にある
       旗の数が、その数字と一致している場合、旗が立っていない周囲のマスを
       一斉に開くことができます。)

      ゲーム開始時にb(iginner),i(ntermediate),e(xpert) で難易度を選択できます。
      詳しくは、man cminesで確認できます。
      

cblocks   コンソール版のsliding-block puzzlesです。
      gキーを押すと表示される状態にするために、
      ブロックをスライドして移動するゲーム。
      ブロック移動はキーボードでも操作できますが操作が複雑なので、
      画面タッチやマウスでブロックを移動したほうがやりやすいです。
      1面の場合は、赤と緑のブロックの位置をすべて交換するように移動。
      
      P 1つ前のレベルに移動
      N 1つ先のレベルに移動 
      ?  オンラインヘルプを表示     

      どうやらLevelは全部で12あるようです。

      詳しくは、man cblocksで確認できます。
  
 
インストール:ソースを入手してインストール

インストール手順詳細(クリックで表示)

$ cd
$ mkdir cgames
$ cd cgames
$ sudo apt install libgmp-dev libncurses5-dev
$ sudo apt install libgpm-dev
$ wget http://www.muppetlabs.com/~breadbox/pub/software/cgames-2.2b.tar.gz
$ tar zxvf cgames-2.2b.tar.gz
$ cd cgames-2.2b
$ ./configure –with-ncurses
$ make
$ sudo make install

$ csokoban
$ cmines
$ cblocks

———-

◎ JNetHack   ローグライクゲームの日本語版 (2025/12/08追加)

 JNetHack は1987年から続く伝説的ローグライクゲーム日本語版で、
 メニューやメッセージが日本語化されています。
 (Nethack公式サイト)(Github-jnethack

 起動は、”/home/user/nh/install/games/jnethack” です。
 必要に応じて、/user/games/とかにリンクを張りましょう。
 braainuxで使っているユーザが1人だけなら、これが楽です。
  $ cd /usr/games
  $ sudo ln -s /home/user/nh/install/games/jnethack .

 操作はかなり複雑で、h j k l で 左 下 上 右 に移動にです。
 (カーソルキーでは移動できませんので注意してください。
  もしかしたら、本家3.6.7に日本語パッチを当てたものであれば、
  設定次第でカーソルが使えるかもしれません。)

 詳しい操作方法は、こちらが詳しいです。
 コンパイルしやすくなったJNetHack3.6.6で遊ぼう! #Linux – Qiita

 ゲームガイドはこちらです。
 恐怖の迷宮への招待:NetHack ガイドブック

(2025/12/11追記)

JNetHack の移動は、前回書いた通り、「h j k l で 左 下 上 右 に移動」です。
これは、昔の端末にはカーソルキーがなく、vi のキーバインドと同じなのですが、
これが慣れないとやりにくい。

これについては、設定でテンキー操作に変更することができます。
~/.nethackrcに以下の行を追加

vi ~/.nethackrc
OPTIONS=number_pad:1

ただ、Brainにテンキーはありませんが、X11環境でソフトウェアキーボードを利用すれば
タッチパネルで移動ができるようになります。
Brainux のX環境でのソフトウェアキーボードについて

ソフトウェアキーボード(xvkbd)を起動して、
分離した10キーボードを表示させるのが快適に使うコツです。
NumLockを有効にした状態であれば、移動が非常にやりやすくなります。
7 8 9
4   6
1 2 3

  

 インストール1:gitからソースを入手してインストール
  ソールからビルドする場合、ソースの文字コードに注意しないといけないのですが
  今回の場合は、ビルド中に文字コードの変換も含まれているようです。

インストール手順詳細(クリックで表示)

$ cd
$ mkdir jnethack
$ cd jnethack
$ sudo apt install build-essential libncurses-dev bison flex nkf git
$ git clone https://github.com/jnethack/jnethack-release.git
$ cd jnethack-release
$ ./configure      # 時間がかかります。反応がないですが待ちましょう。
$ make         # かなり時間がかかります(Brain実機で1時間以上)。
$ make all       #
$ make install     # sudo make install で実行しないこと

$ /home/user/nh/install/games/jnethack

 

 インストール2:公式ソースに日本語パッチを当ててインストール
  移動がhjklなのが慣れなくて、.nethackrcでキーバインドを変えられないか
  試していたのですが、うまく設定できませんでした。
  MSのAIに相談したら、公式ソースに日本語パッチを当てた環境であれば
  設定できるような回答があったので試しにこちらも試しました。
  結果はダメでした。なんかこのAI変な学習されている気がする。
  いろいろソースを読みましたが、src/cmd.c に移動のキーバインドを設定して
  いたのでここを変えれば何とかなりそうだけどまだ試せてない。
  (hjun:←→↑↓とかがいい気もする。)
   src/cmd.c : static const struct movcmd movtab[] = { あたりかな。

インストール手順詳細(クリックで表示)

$ cd
$ mkdir nethack
$ cd nethack
$ sudo apt install -y build-essential bison flex nkf libncurses5-dev
$ wget https://www.nethack.org/download/3.6.7/nethack-367-src.tgz
$ wget https://ftp.jaist.ac.jp/pub/sourceforge.jp/jnethack/78334/jnethack-3.6.7-0.1.diff.gz
$ tar zxvf nethack-367-src.tgz
$ cd NetHack-3.6.7/
$ zcat ../jnethack-3.6.7-0.1.diff.gz | patch -p1
$ chmod +x configure
$ ./configure
$ make all
$ make install

$ /home/user/nh/install/games/jnethack

 

———-

○ greed DOSフリーウェアゲーム「Greed」のcursesベースのクローン

https://packages.debian.org/source/bullseye/greed

起動:greed

これは、DOSのフリーウェアゲーム「Greed」をcursesでクローンしたゲームです。このゲームの目的は、自分が隅っこに追い詰められる前に、できるだけ多くのボード上のものを食べることです。

●カラフルな数字を食べていくゲーム
DOS版Greedのクローンです。
自分は @です。そこから8方向に移動できます。
【縦横移動】[8]/[↑]:上 [2]/[↓]:下 [4]/[←]:左 [6]/[→]:右
【斜め移動】[1]:左下 [3]:右下 [7]:左上 [9]:右上

最初の数字の数だけ真っすぐ進みます。
ヒントありに切り替えると、どこまで進めるか表示されます。
【基本操作】[p]:ヒント表示の切替 [Ctrl]+[l]:再描画? [q]:終了

コンソールプログラムですので、Brain上でも快適に移動できます。
カーソルキーか、テンキーで移動になりますが、
斜め移動したければテンキー操作が必要なので、
出来ればテンキー付きのUSBキーボードを用意したいところです。

[P]キーの切替で、ヒントとして移動できる道が表示されるようになります。

 

インストール:APT経由 ”sudo apt install greed”

 

———-

○ tint テキストベース端末向けのテトリスクローン

https://packages.debian.org/bullseye/tint

起動:tint

TINTはテトリス(tm)ではありません…少なくとも名前は違います。

タイトルが示す通り、これはアレクセイ・パジトノフ、ドミトリー・パブロフスキー、ヴァディム・ゲラシモフによって書かれたオリジナルのテトリスゲームのクローンです。

このゲームはオリジナルに限りなく近い出来栄えだが、いくつか違いもある。とはいえ、UNIXの世界でオリジナルに最も近いゲームは恐らくこれだろう。

●テトリスゲームのクローン
最初にレベル番号を入力し、エンターキーを押して開始します。
画面の左側にキー操作の説明が表示されています。
【操作】[j]:左へ [k]:回転 [l]:右へ [space]:落とす [p]:一時停止 [q]:終了

 

インストール:APT経由 ”sudo apt install tint”

 

———- 

X11ライブラリを利用したソフトウェア

〇 pacman    迷宮でモンスターを追いかける(パックマン風ゲーム)

https://packages.debian.org/bullseye/pacman

起動:pacman

 実行OK。問題なく遊べるパックマンです。音楽はありません。

 詳しい説明は、man pacman で確認してください。

 インストール:APT経由 ”sudo apt install pacman”
 以下のメッセージが出て実行に失敗する場合

X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  45 (X_OpenFont)
  Serial number of failed request:  27
  Current serial number in output stream:  31

 以下の通り、別途フォントを導入してみてください。

$ sudo apt-get install  xfonts-base xfonts-75dpi  xfonts-100dpi
$ sudo apt-get install  x11-utils  xfonts-encodings xfonts-utils X11-xserver-utils
$ xlsfonts
$ sudo fc-cache -fv
$ xset +fp /usr/share/fonts/X11/misc
$ xset fp rehash

 音楽が欲しければ、X11版のドットイートゲームもいくつかあります。

 

———-

◎ xsok      X11 用汎用倉庫番ゲーム(xsok,sokoban,Cybaerbox)

https://packages.debian.org/bullseye/xsok

起動:xsok

 sokobanの目的は、マウスや矢印キーを使って全ての荷物を各レベルの 得点領域に
 押し込むことです。
 他のレベルのサブセットでは、異なる荷物 があったり、特殊効果を持つモノが
 存在したりします。

 sokoban(全88Level)は、普通の倉庫番パズルです。
 Cybaerbox(全16Level),xsok(全5レベル)は、いろいろルールを付け加えたものですが、
 詳しい説明はないのでトライ&エラーを繰り返す必要があります。

 Cybaerboxは脱出ゲーム的なもののようで、xsokは2つを組み合わせた形です。
 このモードではsokobanの常識は崩さないと、クリアできません。

 操作はカーソルキーで移動ですが、
 以下のショートカットキーを使うと便利です。(その他はHelp -> Keys でも確認できます。)
 
 u Undo(1つ前のステップに戻る)
 r Redo (Undoでもっと際に、1つ先に進む)
 R Retray(Levelの最初に戻る)
 U クリアしていない次のレベルに移動
 P 1つ前のレベルに戻る
 N 1つ先のレベルに進む


 とりあえず、sokoban,Cybaerbox,xsokのそれぞれ1面はクリアできましたが、
 かなりむずいです。
 1面から見た難易度はsokoban < Cyberbox < xsokかな?

 一部レベルでは、Brainoの画面ではすべての迷路が出てこないので、
 画面を最上位にしたり、無理やり移動してXY方向を拡張する必要がある面があります。
 (windowの枠を右クリックするとmoveがあるのでカーソルで強引に移動しつつ拡張)
 
 もしかしたら、画面解像度のせいで、クリアできない面もあるかもしれません。
 その時はスキップしてください。
 もしくは、173とLevel数の多いコンソール版(csokoban)のほうも試してみてください。

 詳しい説明は、man xsok で確認してください。
 

 インストール:APT経由 ”sudo apt install xsok”

 

———-

◎ spacearyarya スペースハリアー風三次元三人称シューティングゲーム (2025/12/13追加)

https://packages.debian.org/bullseye/spacearyarya

起動:spacearyarya

仮想三次元による三人称シューティングゲーム
Space Aryarya は、アフターバーナーや、スターフォックスのような
古典的な アーケードゲームに似た三人称シューティングゲームです。
ゲーム中にて、プレイヤー はジェットパックを背負った戦士を操り、
全ての悪者を破壊しなければなりません。

スペースハリアー的なゲームです。
仮想三次元表現のゲームですが、X11ライブラリのみ利用しているため、
Brain上でも問題なく遊べます。

 詳しい説明は、man spacearyarya で確認してください。


 インストール:APT経由 ”sudo apt install spacearyarya”

 

———-

◎ xbubble    Puzzle Bubble / Bust-A-Move のクローンです。

https://packages.debian.org/bullseye/xbubble

起動:xbubble

 Puzzle Bubble の素敵なクローン
 XBubble は、Puzzle Bubble / Bust-A-Move のクローンです。

 ゲームの目的は、盤上からすべてのバブルを取り除くことです。
 そのためには、 バブルに狙いをつけて撃たなければなりません。
 同一色の 3 個以上のバブルを 揃えることができれば、それらは破裂して消え去ります。
 さらに他と接していな いバブルも、すべて落下して消え去ります。

 xbubble には 1 人用モード、2 人用モード、人間 vs コンピュータ
 (5 段階の 難易度を備えた AI) 対戦モードがあり、
 素敵なグラフィックを備えていますが、 サウンドはありません。

 非常に快適にプレイできます。
 frozen-bubbleと比較して、ネット対戦機能はないですが、
 コンピュータ対戦ができるのが特徴です。

 詳しい説明は、man xbubble で確認してください。

 インストール:APT経由 ”sudo apt install xbubble”

 

——————-

△ xevil X 向けの暴力的な横スクロールゲーム (2025/12/14追加)

https://packages.debian.org/bullseye/xevil

起動:xevil

XEvil は、三人称の、サイドビューの高速アクションの やられる前にやり返せ的ゲームです。 コンピュータ制御の敵又は他のプレイヤーとの対戦が可能です。

人生で罪を犯し、代償を支払わなければなりません。悪魔が地獄での地位のために 互いに戦わせようと最近死んだ人たちを穴に落としています。 プレイヤーの技能により、永遠の運命を得られるかどうか運命が決まります。 この競技は XEvil という名前で知られています。

すべての旗を撮ったり、他のキャラクターを倒して、生き残るゲームのようです。
ルールが把握できていないのですが、わかる方教えてください。。

Brainでのプレイは、速度的には十分(はyすぎるぐらい)ですが、
画面サイズが少し足りず、ゲーム画面の下側がでていません(1024×600ぐらい必要?)。
また、キーバインドも特殊で、デフォルトユーザがテンキー操作っぽいので、
外付けキーボードも必要だと思います。。
(フルスクリーン表示されるのでスクリーンキーボードは使えません。)

 詳しい説明は、man xevil 、 XEvil 2.X 取扱説明書 で確認してください。

 インストール:APT経由 ”sudo apt install xevil”

 

———-

〇 N.A.D.A.R ネットワーク対戦型戦車ゲーム(コンピュータ対戦も可能)

公式サイト:N.A.D.A.R.

N.A.D.A.R. は,ネットワーク対戦型戦車ゲームです.
ミサイルと砲弾を駆使して,相手を撃破してください.

イメージ的には、リモコン戦車操作の対戦タンクバタリアンです。

起動ですが、まずは、サーバプログラムを立ち上げます。
$ nadars -host localhost

 標準では3人対戦ですが、-enemyオプションでコンピュータ・プレイヤーの
 戦車数を変更することができます。
 $ nadars -host localhost -enemy 5

 また、以下のような変更も行えます。((ゲーム性が変わります)
 # ピープホールモード(マップ上の一部分しか見えないモード)
 $ nadars -host localhost -peephole    

 # 戦車が後退できないモード
 $ nadars -host localhost -no-backward

サーバが起動したら、クライアント(ゲーム画面)を起動します。
また、Brainの解像度の関係で-sizeオプションを追加しています。
(プレイヤー名はPlayerを指定してます。)
$ nadar -s localhost -p Player -size 40

 戦車の操作はリモコン戦車のように、
 カーソルキーかもしくは i, j, k, l キーで,右回転,左回転,前進,後進です
 x もしくは左Alt で,砲弾を撃ちます.
 z もしくは左Shift で,ミサイル(誘導弾)を撃ちます.
 s もしくは Escape で,自爆です.
 q でゲームから抜けます.
 砲弾は無制限です.ミサイルは3発までです.
 障害物は,破壊できます.
 戦車が爆風に巻き込まれると破壊されます(直撃でなければ破壊されません).

 かなりシビアなゲームバランスなのでかなり難しいです。
 ですが、コンピュータ戦車が砲弾を華麗に避けるので、
 コンピュータ戦車同士の対戦を見ているだけでも面白いです。

詳細は、README.jpnを参照ください。
(nkf README.jpn | moreで読めます。)

 

インストールは、ソースからのビルトになります。

インストール手順詳細(クリックで表示)

$ cd
$ mkdir nadar
$ cd nadar
$ wget https://kozos.jp/myfreesoft/nadar-2.0.tar.gz
$ cd nadar-2.0
$ make

ここで私の環境ではエラーになったので、ソースを修正します。

Game.c:229:7: error: label at end of compound statement
  229 |       default :
      |       ^~~~~~~
make[1]: *** [Makefile:21: Game.o] Error 1
make[1]: Leaving directory '/home/user/nadar/nadar-2.0/server'
make: *** [Makefile:19: nadar-server] Error 2

変更は、以下の通りです。(229行目付近)
$ vi /home/user/nadar/nadar-2.0/server/Game.c
default :

default :
break;

改めてmake,します
$ make
これで実行ファイルのnadars,nadarsファイルが生成されます。

実行テストができたら、インストールします。
デフォルトでは、インストール先が/usr/X11R6になっているので、
Makefile.mk ファイルを編集して/usr/localに変更してからmake installします。
$ sudo make install

 

———-

〇 xjewel セガコラムズのような落下ブロックゲーム

公式サイト:github-xjewel

コラムズクローンなゲームです。
魔法石も登場します。

ただ、Brainだと画面サイズの問題でゲーム画面の下が隠れてしまうので、
ウィンドウ最前面化+ウィンドウを100ドットほど上に移動してウィンドウを広げることで
ゲーム自体はプレイできます(次ブロックの1一番上が見えませんが)

タイトル画面
 Sでゲームスタートします。
 Pでハイスコアリスト
 Qで終了します。

ゲーム画面
 左右 :左右移動
 上  :ブロック順番変更
 下  :ブロック落下(一番下まで)
 P    :ポーズ/ポーズ解除
 Q    :終了

コラムスタイプのゲームは、他にもblockrageなどもあるので、
こちらも試してみてください。
Block Rage コラムスみたいなゲーム(DOSの古典Xixitのリメイク)
 

インストールは、ソースからのビルドになります。

インストール手順詳細(クリックで表示)

$ cd
$ mkdir xjewel
$ cd xjewel
$ git clone https://github.com/aur-archive/xjewel.git
$ cd xjewel/
$ wget http://www.ibiblio.org/pub/Linux/games/arcade/tetris/xjewel-linux-src.tar.gz
$ tar zxf xjewel-linux-src.tar.gz

$ cd xjewel
$ patch -Np1 -i ../00-xjewel.patch
$ patch -Np1 -i ../01-makefile.patch
$ make

$ sudo mkdir /var/lib/xjewel
$ sudo touch /var/lib/xjewel/xjewel.scores
$ sudo chmod a+w /var/lib/xjewel/xjewel.scores

$ ./xjewel       # テスト実行

$ make install
$ sudo cp xjewel.man /usr/local/man/man6/xjewel.6
$ sudo cp ../xjewel.png /usr/share/pixmaps/
$ sudo cp ../xjewel.desktop /usr/share/applications/

$ xjewel

 

———-

〇 Agendaroids Atari の古典的なアーケード ゲーム「Asteroids」のクローン

公式サイト:http://www.newbreedsoftware.com/agendaroids/

あなたの目的は、小惑星のフィールド内で宇宙船を操縦し、小惑星をどんどん小さな破片に打ち砕き、最終的に完全に破壊することです。

起動:./agendaroids

ワイヤーフレーム描写のアステロイドクローンです。
タイトル画面でスペースで開始です。
操作キーはゲーム画面下中央をクリックすることで切り替えられるようです。

ゲームの目的は周囲に漂っている隕石をすべて破壊することです。

ゲーム画面下中央に”■”の上に◢”が出ている場合(標準)
 ←→で、自機の回転
 ↑ / PageUP(英和辞典):後方に噴射して、前向に加速する
 SPC / PageDown(My辞書):弾を発射

ゲーム画面下中央に”▷”が出ている場合(PDAスタイルキーレイアウト)
 PageUP(英和辞典)/PageDown(My辞書)で、自機の回転(方向逆)
 ←:後方に噴射して、前向に加速する
 →:弾を発射

詳細は、README.txtをご確認ください。


インストール:ソースからのビルド
(用意されているMakefileではうまくビルドできないのでコマンドでコンパイルしてます。)

インストール手順詳細(クリックで表示)

$ cd
$ mkdir Agendaroids
$ cd Agendaroids
$ wget https://tuxpaint.org/ftp/unix/agenda/agendaroids/src/agendaroids-2002.03.07.tar.gz
$ agendaroids-2002.03.07.tar.gz
$ cd agendaroids-2002.03.07

$ gcc -o agendaroids agendaroids.c -DREAL_KEYBOARD -DQUARTER_VGA -DINVERSE -lX11

コンパイルオプションカスタマイズ
-DREAL_KEYBOARD  PCキーレイアウト。消すとPDA用キーレイアウトが標準になります
-DQUARTER_VGA   QVGA用(232×270)。消すと画面サイズが標準(160×240)になります
-DINVERSE       白黒反転。消すと白黒反転がなくなります

ソースが単純なので、解析して画面サイズを変更するなどお好きにカスタマイズできそうです。 

 

———-

〇 aliens インベータ/ギャラガ風シューティングゲーム

http://www.newbreedsoftware.com/aliens/

起動:aliens.host

「エイリアン」は、Agenda VR3 Linux ベースの PDA 用に作成された「下部をスライドする」シューティング ゲームですが、普通のLinuxのX11上でも遊ぶことができます。

ゲーム画面が90度回転した状態でちっちゃく表示されます。
ゲームは2種類あり、optionから変更できます。
・MARCHING: アーケードゲーム「スペースインベーダー」に似ています。
 エイリアンが画面上を前後に行進し、集団でプレイヤーに向かって降下してきます。
・SWOOPING: アーケードゲーム「ギャラクシアン」に似ています。
 エイリアンは画面上部に留まり、時折急降下して攻撃してきます。’(デフォルト)

タイトル画面
 カーソルキー 左右で移動、シフトで選択です
ゲーム中
 カーソルキー 上下で移動します。
 ページアップ(英和辞典)、ページダウン(My辞書)でも移動可能です。
 カーソルキー 左右、 スペースで弾を発射します。
 シフトで一時停止のようです。

そのままではスピードが速いのでこれを機会にソースをいじってみるのもありです。
 

インストール:ソースからのビルド

インストール手順詳細(クリックで表示)

$ cd
$ mkdir aliens
$ cd alians
$ wget https://tuxpaint.org/ftp/unix/agenda/aliens/src/aliens-2001.05.18.tar.gz
$ tar zxf aliens-2001.05.18.tar.gz
$ cd aliens-2001.05.18
$ make

ビルドの終わりにエラーが出ますが、
ソース(aliens.c)を一部変えれば、速度変更も可能なので、試してみてください。
# define DEFAULT_VOLUME 100 -> 500 とか 1000とか

後は、ソース(aliens.c)中のgame関数でキー操作関係のコーディングもされているので、
この辺も簡単にカスタマイズ出来そうです。

キーコードはこの辺が参考になります。
https://github.com/D-Programming-Deimos/libX11/blob/master/c/X11/keysymdef.h

 

———–

◎ XScavenger X向けのロードランナー風プラットフォームゲーム

https://packages.debian.org/bullseye/xscavenger

起動:scavenger

XScavengerはX Window System用のプラットフォームゲームです。

READMEより:
ScavengerはLode Runnerに似ています。敵を避けながらオブジェクトを集めながら走り回らなければなりません。ブロックを掘り下げて、埋まっているオブジェクトを手に入れることができます。すべて集め終わると、はしごが現れることがあります。レベルをクリアするには、画面上部から脱出する必要があります。敵が掘ったブロックに落ちると、しばらくスタン状態になります。ブロックが敵で埋まってしまうと、敵は死亡し、画面上部に再び現れます。

このバージョンには、独自のレベルを設計するためのレベル エディターと、独自のアートワークを描くためのグラフィック エディターが含まれています。

●ロードランナー風のゲーム
QT版のロードランナーであるkgoldrunnerよりも軽い気がします。

最初はデモが表示されるので、スペースキーを押して次に進みます。
操作説明の画面でスペースキーを押すと開始します。
オレンジ色の服の人が自分です。自分が動き始めたらゲームのスタートです。
青いアイテムを全部取るとクリアです。外に出るはしごが現れます。
ブロックにつぶされたり他の人に捕まったりするとゲームオーバーです。
掘れるのは自分のいる場所の左右の床だけです。壁は掘れません。
上に行けるのははしごがある所だけです。下には、はしごを下りるか落ちます。
操作キーの初期設定はテンキーになっています。F10キーで設定を変更できます。
【テンキー】 [4]:左へ [6]:右へ [8]:上へ [5]:下へ [7]:左を掘る [9]:右を掘る
【基本操作】 [Esc]:デモに戻る(再スタート) [Alt]+[x]:終了

しっかりロードランナーです。
braiの画面でも、ウィンドウを最上位表示にすれば、ゲーム画面部分は表示できます。
音はlibasound2と依存関係なので、音が鳴るかと思ったのですが、
pulseaudio起動しても音が出ませんた。何か条件があるのかもしれません。

最初にF10キーで、キーバインドを変更すれば、Brainのキーボードだけでも遊べると思います。私はカーソルキーで移動+Z,Xで左下,右下に穴を掘る設定にしました
この場合ゲームの終了はウィンドウの✕ボタンか、ALT+F4で行けます。
押せないようであれば、ターミナルからkill -9 <プロセス番号>コマンドなら確実です。

 インストール:APT経由 ”sudo apt install xscavengeri”

 

———-

◎ koules 体当たりで敵を押しつぶすアクションゲーム

https://packages.debian.org/bullseye/koules
起動:koules

Koules はアーケードスタイルの高速アクションゲームです。
このバージョンは X11 向けにコンパイルされており、256 色グラフィック、5 プレイヤまでの 同時プレイモード、フルサウンドおよび、もちろん、ネットワークをサポート します。Koules はオリジナルのアイデアに基づきます。最初のバージョンの Koules は、1995 年 7 月に Jan Hubicka により一から開発されました。

マルチプレイヤデスマッチと協調プレイをサポートします。

▲敵をはね返して周囲の壁にぶつければ、破壊出来ます。
逆に、自機が周囲の壁にあたれば破壊されてしまいます。
いろいろな特性を持った敵が現れます。
5人まで同時プレイができるようです。

自機の移動はカーソルキーの移動の他に、
マウス移動(左クリックでマウスの方向に自機が移動)に変更もできます。

PulseAudioを起動していても音が鳴りませんでしたが、
何か条件があるのかもしれません。

 インストール:APT経由 ”sudo apt install koules”

 

———–

◎ X-Bomber  「Atomic Bomberman」と「Bomberman」をベースにしたゲーム

公式サイト:http://www.newbreedsoftware.com/xbomber/
起動: cd <buildフォルダ>; ./xbomber

「X-Bomber」は、プレイヤーが爆弾を集めて投下し、互いに爆破し合うマルチプレイヤー迷路ゲームです。最後まで生き残ったプレイヤーが勝利します!X-Bomberは、InterPlayの「Atomic Bomberman」とHudsonsofの「Bomberman」をベースにしています。スムーズな動きではなく、グリッド上で操作されます。
画面上には4人のプレイヤーが表示可能、最大3人がコンピューターで操作可能
プレイヤーのペアは同じキーボードを共有できます (したがって、4 人の対戦には 2 台の PC のみが必要です)
爆弾には2種類あり、通常の爆弾と遠隔操作爆弾があります。

・ランダムに配置されたボックスにはランダムなパワーアップが入っています。
・時々、爆発性のTNTの箱がランダムに現れる
・100レベルのマップ!
・プレイヤーが時間をかけすぎると現れる厄介な「死」のキャラクターが現れます。
 容赦なく1人のキャラクターを捕らえ、捕らえると…新たな犠牲者を選びます。


カーソルキーで移動、SPCで爆弾を置きます。
リモコン爆弾を置いた場合は、Enterで爆破になります。

brainの画面サイズですと、ゲーム画面の下側が隠れてしまうので、
Windowno最前面化とウィンドウの上への移動(-40程度)するといいです。

対戦相手のコンピュータは、そこまで強くないので、サクサクと連戦できます。


インストール:ソースを入手してインストール
 (ビルド時に最適化オプションを追加しています。)

インストール手順詳細(クリックで表示)

$ cd
$ mkdir X-Bomber
$ cd X-Bomber

$ wget https://tuxpaint.org/ftp/unix/x/xbomber/xbomber.0.8.tar.gz
$ tar zxf xbomber.0.8.tar.gz
$ cd xbomber

$ vi makefile
CFLAGS=-I/usr/X11/include

CFLAGS=-I/usr/X11/include -O3 -match=native

$ make

$ ./xbomber

 

———-

〇 XJump X 用ジャンピングゲーム

https://packages.debian.org/bullseye/xjump

起動:xjump

やみつきになり、無駄なゲームの典型的な例として、xjump は足場からより高い足場へと 次々に飛び乗るシンプルなゲームです。 ジャンプのペースに乗れなかった場合、床が上がってきて、最後には ゲームオーバーになります。

●X用ジャンピングゲーム
より高い足場へと次々に飛び乗るシンプルなゲームです。
足場がどんどん下がっていきます。
落下するか足場がなくなればゲームオーバーです。

スペースキーを押して開始します。
シフトキーを押しながら [q]キーを押すと、いきなり終了します。
【操作】 [←]:左へ [→]:右へ [↑]:ジャンプ [p]:一時停止

ジャンプ挙動が非常に独特なので、非常に難易度が高くなっています。

 インストール:APT経由 ”sudo apt install xjump”

 

———-

◎ XGalaga 有名なギャラガの X 版

https://packages.debian.org/bullseye/xgalaga

起動:xgalaga -winsize 468×468
起動:xgalaga-hyperspace -winsize 468s468

X Window System 向けの古典的ゲームギャラガのクローンです。 Xgalaga は、より面白いゲームとなるように機能を追加した、スペースインベーダ に似たゲームです。

●シューティングゲーム
インベーダーゲームのようにひたすら撃って、敵を全滅させたら次のレベルに進みます。
敵は固まって移動したり、そこから離れて編隊を組んで襲ってきます。
左右の端まで行っても反対側に回り込めません。

キーボードで操作する場合は [k]キーを押して開始します。マウスの場合は [m]です。
ゲームオーバーの後、画面には「q to quit」と表示されますが、 「q」を入力しても終了できません。
カーソルが名前入力欄にあって、 エンターキーを押すまではキー入力が全て名前の文字とみなされます。
【キー操作】 [←]:左へ [→]:右へ [space]:撃つ [p]:一時停止/再開 [q]:終了
【マウス操作】 マウスを左右に動かして横移動、クリックで撃つ


Brainでそのまま起動すると、フルスクリーン&468x596の解像度で起動してしまうため
起動時オプションで指定して、468×468の解像度で、起動してください。
(縦方向の解像度を小さくしすぎると、メッセージなどがかぶります。)

xgalaga -winsize 468×468

Alt Enterで全画面モードとウィンドウモードの切り替えが可能です。
ウィンドウモードの時は、ウィンドウを最上位表示して、少し上に移動すれば遊べます。

時々アイテムが降ってきますので、それを取れば時期がパワーアップします。

Brainux上でも、速度も十分です(音はなりませんでした。)

xgalaga
xgalaga-hyperspace
の両方の実行ファイルがインストールされるのですが、
xgalaga-hyperspaceのほうは、武装などが追加されていたり一部ゲーム性が違うそうです。
ぜひ違いを探してみてください(左右の端まで行っても反対側に回り込む等。)

 インストール:APT経由 ”sudo apt install xgalaga”

 

———-

◎ xgalaga++ xgalaga にインスパイアされた古典的なシングルスクリーン縦スクロールシューティングゲーム

https://packages.debian.org/bullseye/xgalaga++

起動:xgalaga++

XGalaga++ は古典的な縦スクロールシューティングゲームです。X Window 拡張を 必要とせず、ウィンドウは自由にリサイズ可能です。XGalaga にインスパイア されていますが、グラフィクス以外はスクラッチから書き換えられています。

●シューティングゲーム
[s]キーを押して開始します。
インベーダーゲームのようにひたすら撃って、敵を全滅させたら次のレベルに進みます。
敵は固まって移動したり、そこから離れて編隊を組んで襲ってきます。
左右の端まで行っても反対側に回り込めません。
【操作】 [←]:左へ [→]:右へ [space]:撃つ [p]:一時停止/再開 [q]:終了


Brainでそのまま起動すれば、Windowモードで立ち上がります。
速度的には、XGalagaのほうが少し早い気がしますが、こちらもおすすめです。

 インストール:APT経由 ”sudo apt install xgalaga++”

 

———-

◎ xonix モンスターを避けながら画面を切り裂くゲーム(Xonix、クイックスクローン)

https://packages.debian.org/bullseye/xonix

起動:xonix

DOS版Xonixゲームのクローンです。長方形からスタートし、勝利エリアの下まで角を削り落とし、次のレベルへ進みます。ただし、徘徊するエイリアンにはご注意ください!

●モンスターを囲い込むゲーム
緑の領域を区切って、モンスターのいない部分を自分の赤い領域にします。
画面左上の「game_button」をクリックして開始します。
エスケープキーを押すと、いきなり終わります。

自分は左上の隅にいて、↑↓←→キーで移動できます。
緑の領域を横断して無事に反対側に到着すれば2つに分割することができます。
分割後にモンスターのいない領域は自分のものになります。
横断中にモンスターや、横断中の線にぶつかると失敗です。

ゲームオーバーでメッセージが表示されます。
「gameover_goon」をクリックすれば、もう1回できます。
「gameover_iknow」で終了します。

ゲーム的には、クイックスや、背景のないギャルズパニックみたいにな感じです。
Brain上では、ゲームのウィンドウを最上位表示&上に少し移動で保存ゲーム画面が表示されます。

 インストール:APT経由 ”sudo apt install xonix”

 

———–

〇 jester オセロに似たボードゲーム

https://packages.debian.org/bullseye/jester

起動: jester

8×8のグリッドでプレイする、シンプルな2人用ターン制ストラテジーゲームです。相手の駒を自分の駒で囲むことで、自分の色に変えることができます。1画面で対戦することも、1人でコンピューターと対戦することもできます。Jesterなら、本来ならソリティアに費やせる貴重な時間を無駄にせずにプレイできます。

●オセロゲーム
デフォルトでは白が自分で先手です(-ai オプションで変更できます)。
コマを置くマスをクリックします。
自分の色で挟んだら自分の色に変えられるリバーシ的ゲームです。

Brainでは、ウィンドウを全画面表示にすればゲーム画面全部表示できますが。
全画面表示にしなくて、ゲーム的には問題ありません(下がちょっと隠れるくらい)。

他のオセロゲームに比べるとAIが弱め?なので、試しにリバーシを楽しむにはいいかもしれません。


 インストール:APT経由 ”sudo apt install jester”

 

———-

○ geki2 Xenon に似た縦方向シューティングゲーム

https://packages.debian.org/bullseye/geki2

起動:geki2

Geki 2 は縦方向のシューティングゲームで、Xenon、Target Renegade、Gunhed といった古いアーケードゲームに似ています。6 つのレベルと、2 種類の兵器が あります。

●縦方向シューティングゲーム
↑↓キーで「Game Start」を選択します。
スペースキーか、[z]キーを押して開始します。

↑↓←→キーで移動して敵の船を撃ちます。
アイテムを運んでいる樽を破壊すると、パワーアップアイテムが現れます。
【操作】[z]/[space]:撃つ/決定/再開 [s]:一時停止 [Esc]:終了

Brain上だと、少し遅いですがプレイは可能です。
Soundは出ないようです
ただウィンドウは縦長なので、上の分のみを表示することになります。

 

 インストール:APT経由 ”sudo apt install geki2”

 

———-

◎ geki3 R-Type 似の横スクロール型シューティングゲーム

https://packages.debian.org/bullseye/geki3

起動:geki3

Geki 3 は、R-Type や Zero “All Your Base Are Belong To Us” Wing のよ うなクラシックなアーケードゲームに似た、横スクロール型のシューティン グゲームです。4 つのレベルと様々な武器が特徴です。

●横方向シューティングゲーム
↑↓キーで「Game Start」を選択し、[z]キーかスペースキーを押して開始します。
↑↓←→キーで移動して敵の船を撃ちます。
ただ、斜め移動はできません。

青い敵を破壊すると、パワーアップアイテムが現れます。
【操作】[z]/[space]:撃つ/決定/再開 [s]:一時停止 [Esc]:終了

Brain上でもプレイ可能です。
Soundは出ないようです

 

 インストール:APT経由 ”sudo apt install geki3”

 

———-

◎ 3D Pong 1人または2人用の3Dスポーツゲーム

http://www.newbreedsoftware.com/3dpong/download/os.php3?os=Unix+%2F+Linux

起動:3dpong :0 –computer –noclick1

3D Pongは、アタリ社が開発した史上初のアーケードゲーム「Pong」をベースにした、1人または2人用の3Dスポーツゲームです。各プレイヤーはマウスで「パドル」を操作し、ボールを相手プレイヤーのゴール(パドルのすぐ後ろ)にバウンドさせて得点を競います。

3D Pongは、 Unix向けの ベクターグラフィックベースのX Windowゲームです。

  • ゲームプレイ:

・1対コンピュータ(3dpong :0 –computer)
・ハンドボールモードで1人のプレイヤー(3dpong :0 )
・2人プレイ、ネットワーク接続
・ユーザー定義の重力レベル
・偏向ネットの有無にかかわらず

  • 表示モード:

・3Dアナグリフメガネを使用した、真の3Dを実現する赤/青グラス分割モード
 (3キーで切り替え可能)
・6つの視聴位置:
 (Vキーで切り替え可能)

  • パドルの後ろからの一人称視点
  • 試合会場の横から見た「観客席」からの眺め。
  • 上空からの眺め。
  • マウスを使った自由回転モード
  • 目まぐるしい「ボールを追いかける」モード
  • パドルモードに従ってください
  • ゲームプレイ:

右クリックでサーブします。
左クリックを押しながらマウスでパッドを動かします。
ただし、Cキーで自動でパッドが追従するようになります
(起動時オプションの–noclick1で最初期初からそのモードになります)

 

インストール:ソースからインストール
ビルドついでに、ウィンドウサイズをBrainに合わせるなどの修正も行っています。

インストール手順詳細(クリックで表示)

$ cd
$ mkdir 3dpong
$ cd 3dpong
$ wget https://tuxpaint.org/ftp/unix/x/3dpong/src/3dpong-0.5.tar.gz
$ tar zxvf 3dpong-0.5.tar.gz
$ cd 3dpong-0.5

$ vi src/3dpong.c

・・・
#include "text.h"
・・・
#define WIDTH 580
#define HEIGHT 580
↓
・・・
#include "text.h"
#include <unistd.h>
・・・
#define WIDTH 580
#define HEIGHT 480

vi src/randnum.c

#include "randnum.h"
↓
#include "randnum.h"
#include <stdlib.h>

vi src/text.c

#include "text.h"
↓
#include "text.h"
#include <string.h>

$ make
$ sudo make install

$ 3dpong :0 –computer –noclick1

 

———–

◎ ICBM3D 「ミサイルコマンド」の3Dベクターベースのクローン

http://www.newbreedsoftware.com/icbm3d/

起動:icbm3d

ICBM3D(「大陸間弾道ミサイル3D」)は、デイブ・テューラーの古典的なアタリアーケードゲーム「ミサイルコマンド」の3Dベクターベースのクローンです。

あなたは対ICBM兵器を操作し、自国に降り注ぐミサイル(およびその他の有害物)の猛攻を撃退します。

ゲームは、あなたの都市がすべて破壊された時点で終了します。都市を補充するには、各攻撃で一定のスコア基準を達成する必要があります。

  • Game Play:
  • 1人用3Dアクションゲーム。
  • マウス操作によるゲームプレイ。
  • キーボード操作によるゲームプレイ。(キーボード設定は変更可能。)
  • ミサイル:
    • 標準的なミサイル。
    • 螺旋を描いて飛ぶミサイル。
    • ミサイルを分裂させる。
  • レベルが上がると、ミサイルの数も速度も増える。
  • レベル50以上では「風」が導入され、煙が吹き飛ばされてプレイヤーを混乱させます。
  • Viewing Modes:
  • マウスによる表示制御。
    •  あなたの街の真上から真下までのあらゆる地点からの眺め。
    •  あなたの街の両側のどの地点からでも眺めることができます。
  • 飛来するミサイルの視点からの眺め。
  • ゲームの速度とプレイアビリティを向上させるために、フレームレートを下げたモードや「ちらつき」モードが利用可能です。
  • 様々な言語への容易な対応。(英語パッケージで配布)
  • Source Code:
  • ICBM3DはC言語のソースコードとして提供されます。
  • 多く#defineの が使用されているため、コンパイル時にゲームプレイや一部のデフォルト設定を調整できます。

操作は、マウスか、キーボード操作になります。
照準を合わせて砲弾をミサイルにあてて破壊し、基地を守ります。

マウスの場合
 左クリックを押しながら移動:照準を左右・上下に移動
 中クリックを押しながら移動:照準を左右・奥側・手前に移動
 右クリックを押しながら移動:視点移動
 SPACE   :砲弾発射

キーボード操作の場合(keydefs.hにて定義)
 カーソルキー:照準を左右・奥側・手前
 A・Z    :照準を上下に移動
 SPACE   :砲弾発射

 GAMEコントロール   :P,Q,X
 LEVELコントロール   :L,K
 SCREENオプションE変更 :T,E,H,C
 Viewコントロール変更  :M,Tab,B,I,O

正直個人的にはマウス操作よりも、キーボード操作のほうがやりやすかったです。
慣れると砲弾でミサイルを撃墜できるようになります。

 

インストール:ソースからインストール

インストール手順詳細(クリックで表示)

$ cd
$ mkdir icbm3d
$ cd icbm3d
$ wget https://tuxpaint.org/ftp/unix/x/icbm3d/icbm3d.0.4.tar.gz
$ tar zxvf icbm3d.0.4.tar.gz
$ cd icbm3d

$ make icbm3d

#エラーになる場合はソースを修正

$ vi randnum.c

#include <stdio.h>
↓
#include <stdio.h>
#include <stdlib.h>

$ vi text.c

#include <X11/Xlib.h>
↓
#include <X11/Xlib.h>
#include <string.h>

$ vi Makefile

CFLAGS=-I$(PREFIX)/include -O2
↓
CFLAGS=-I$(PREFIX)/include -O3 -march=armv5te -mtune=arm926ej-s -fomit-frame-pointer

$ make clean
$ make icbm3d
$ sudo cp icbm3d /usr/local/games/icbm3d

$ icbm3d

 

———–

◎ xjig  X11 ジグソーパズル

https://packages.debian.org/bullseye/xjig

起動:xjig

xjigは、画面上でジグソーパズルをできる限り忠実に再現しようとするパズルです。GIF、JPEG、PPM形式の画像ファイルを読み込んで、ピースに分割することができます。目標は(他のジグソーパズルと同様に)元の絵を組み立てることです。

タイルはマウスを使って自由に回転させたり、反転させたり(両面パズル用)、デスクトップ上に形状ウィンドウとして表示することもできます(後者には高速なマシン/ビデオカードを推奨します)。サンプル画像は /usr/share/games/xjig にあります。

●ジグソーパズル
マウスの右ボタンでドラッグして移動します。
マウスの左ボタンでドラッグすると回転します。
コントロールキーを押しながらクリックすると上下反転します。
【操作】[PageUp]:拡大 [PageDown]:縮小 [Home]:原寸 [Esc]::終了

※実行時の引数に好きな画像(GIF/JPG/PPM)を指定してジグソーパズルにできます。
 xjig -file sample.gif

ジグソーパズルのピースが回転だけでなく裏返しにもできることから、
簡単にはパズルを組み立てすることができません。
上級者向けになっています。

 

 インストール:APT経由 ”sudo apt install xjig”
 bookworm, Trixieではパッケージが削除済ですが、
 sudo apt -t bullseye isntall xjig でインストール可能です。

 

———–

◎ netmaze 三次元マルチプレイヤー戦闘ゲーム(迷路内での一人称視点対戦シューティングゲーム)

https://packages.debian.org/bullseye/netmaze

起動:netmaze

マルチプレイ時
xnetserv &
netmaze -s localhost -name user &
/usr/lib/games/netmaze/betterbot localhost &
/usr/lib/games/netmaze/follower localhost &
/usr/lib/games/netmaze/dummy localhost &
   

X 用の三次元マルチプレイヤーゲームです。 一人でも、コンピュータ化されたプレイヤー (“ボット”) とでも、 又は TCP/IP ネットワーク経由で他のプレイヤーとも遊べます。

/usr/share/doc/netmaze/README.gz
/usr/share/doc/netmaze/README.Debian.gz
にインストールされる ドキュメントを必ず読んでください。
zcat /usr/share/doc/netmaze/README.Debian.gz のようにすれば表示できます。

●迷路の中で敵を捜して撃つゲーム
ゲームのウインドウの他に、KillsとStatusウインドウが表示されます。

最初の画面で数字の[1]キーを押して開始します。
←キーを押すかマウスの左ボタンを押すと、左に向きを変えます。
→キーを押すかマウスの右ボタンを押すと、右に向きを変えます。
↑キーを押すと前進し、↓キーで後退します。

スペースキーを押して敵を攻撃します。3回当てると敵が消えます。
消えた敵はKillsウインドウに表示されます。Killsに10個表示されると終了です。
途中で終了するにはQ(SHIFT+q)です。ゲームのウインドウを閉じて終了も出来ます。

Networkプレイをする場合には、先にサーバーを起動する必要があります。

$ xnetserv &

このサーバGUIにて、マップをロードしたりすることも出来ます。
この場合、以下のように実行すればサーバに接続できます
$ netmaze -s localhost -name user &

コンピュータ(Bot)と対戦する場合は、以下のようにするとBotをサーバに参加できます。
 (複数起動すればさらに追加できます)

# 賢いボットを1体追加する場合
$ /usr/lib/games/netmaze/betterbot localhost &

# 追いかけてくるボットを追加する場合
$ /usr/lib/games/netmaze/follower localhost &

# 動かない、または単純な動きの練習用標的を追加する場合
$ /usr/lib/games/netmaze/dummy localhost &

マルチプレイのゲーム開始はサーバ側GUIで 「Start Game」をクリックで開始されます。

マルチプレイを解散するには、サーバGUIを終了すれば、接続しているクライアントもすべて自動的に終了します。

 

インストール:APT経由 ”sudo apt install netmaze”

 

———-

◎ ace-of-penguins ペンギンをテーマにしたソリティアゲーム

https://packages.debian.org/bullseye/ace-of-penguins

『エース・オブ・ペンギンズ』は、MS Windows向けに提供されているソリティアゲームに着想を得た、数々の改良を加えたソリティアゲーム集です。

このパッケージには、Canfield、Freecell、Golf、Mastermind、Merlin、Minesweeper、Pegged、Solitaire、Spider、Taipei(レベルエディター付き)、およびThornqというゲームが含まれています。

共通操作キー
F1:Help
F2,R:NewGame

注:F1ヘルプキーに問題が発生する場合は、xfonts-100dpiパッケージがインストールされていることを確認してください。

各アプリ紹介

ace-canfield キャンフィールド

右上の4つの場所に各マークを「Base rank」の数字から順番に積み上げます。
左下の×印をクリックすると新しいカードが左上に出ます。
右下の4カ所には黒と赤のカードを交互に、1つずつ小さくなるように重ねていきます。
全部のカードを右上に積めればクリアです。
【キー操作】 [F2]:リスタート [Esc]:終了

ace-freecell フリーセル

右上の4つの場所に、各マークをAから順番に積み上げます。
下側は黒と赤のカードを交互に、1つずつ小さくなるように重ねていきます。
左上の4つの場所には邪魔になるカードを一時的に置くことができます。
連続したカードは左上の空いている場所を経由してまとめて移動できます。
全部のカードを右上に積めればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-golf ゴルフ

左下のカードと1つ違いのものが上側にあれば、△マークが付きます。
マークの付いたカードのどれかをクリックすると、左下のカードの上に移動します。
左下の×印をクリックすると新しいカードが右側に出ます。
上側のカードが全部なくなればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-mastermind 4つの色を推理するゲーム

マスターマインドです。
カラーブロックをドラッグして、4つのマスに入れます。
空いている所をクリックすると右側に結果が表示されます。
黒の数が位置まで一致した個数です。白の数は位置違いの個数です。
10回以内に4つのカラーブロックを正しく並べればクリアです。
2カ所以上に同じ色が入っていることもあります。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-merlin ライツアウトゲーム

『Merlin』です。9つのタイルがあります。
タイルをクリックすると、そこと上下左右のタイルが反転します。
全部のタイルをペンギンの絵にすればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-minesweeper 地雷探索ゲーム

地雷がなさそうな所をクリックして、表示された数字から地雷の位置を推測します。
数字は周囲8マス(上下左右と斜め)の地雷の数です。数字の入っていないマスは0です。
地雷があると思うマスには右クリックで旗を立てます。
左上の数字は残りの地雷の数です。
全ての地雷に旗を立てたらクリアです。
地雷のあるマスをクリックすると、爆発してゲームオーバーになります。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-pegged イギリス式ペグ

ドラッグしてペグと呼ばれるコマを移動します。
馬跳びのように隣のペグを飛び越して、ホール(空いている所)に移動します。
飛び越されたペグは消えます。
ペグが1つだけになればクリアです。
最後のペグが最初のホールの位置(中央)に置かれる形が理想です。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-solitaire クロンダイク

右上の4つの場所に、各マークをAから順番に積み上げます。
下側は黒と赤のカードを交互に、1つずつ小さくなるように重ねていきます。
下側に空きが出たらキング(K)を置くことができます。
左上の×印をクリックすると隣に新しいカードが出ます。
全部のカードを右上に積めればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-spider スパイダー

下側に、1つずつ小さくなるようにカードを重ねていきます。
カードを置ける所に△マークが付きます。
どこにも置けなくなったら、左上の×印をクリックして全列に1枚ずつカードを配ります。
AからKまで揃ったら自動的に上側に移動します。
全部のカードを上側に移動できればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

ace-taipei 牌を消すゲーム

上海マージャン牌ゲームです。
同じ絵の2つの牌を続けてクリックすると消えます。
遊び方は上海と同じですが、牌の絵が違っています。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

1-9でいろんな配置が切り替えできます。

ace-taipedit Penguin Taipeiのレイアウト作成ツール

右側の緑の枠が段を表します。最初は1段目(一番下)が選択されています。
左側の領域をクリックして牌を置きます。牌の数字は現在の段です。
牌は右クリックで消すことができます。
作成したレイアウトは[s]キーでファイルにセーブし、[l]キーでロードします。
※引数でファイル名を指定すれば、セーブもロードもできるようですが、
Penguin Taipeiでの読み込み方法は不明なので、要確認です。

ace-thornq ユーコンに似ているカードゲーム

ユーコンに似ているゲームです。作者(Martin Thornquist)の名前が付いています。
右上の4つの場所に、各マークをAから順番に積み上げます。
下側は、同じマークで1つだけ小さい数のカードから、前のカードをまとめて重ねます。
そのカードより後ろのカードは元の列に置いたままになります。
全部のカードを右上に積めればクリアです。
【キー操作】 [F1]:ヘルプ表示/非表示 [F2]:リスタート [Esc]:終了

 

インストール:APT経由 ”sudo apt install ace-of-penguins” 

 

———–

◎ fltk1.3 Fast Light Toolkit – サンプルゲーム:チェッカー、数独

https://packages.debian.org/bullseye/fltk1.3-games

このパッケージには、FLTKに付属するサンプルゲームが含まれています。具体的には、以下の2つのプログラムが含まれています。

 - flblocks: 隣接するブロックのグループが画面全体を埋め尽くす前にクリアします。
- flcheckers: チェッカーとしても知られる古典的なボードゲーム。
- flsudoku: 数独パズル(マス目に数字を配置する)。

Fast Light Toolkit (FLTK) は、元々は libForms をベースにした、クロスプラットフォーム対応のグラフィカルユーザーインターフェースツールキットです。

flblocks: 隣接するブロックのグループが画面全体を埋め尽くす前にクリアします。

●f同じ色をまとめて消すゲーム
Fast Light Toolkitのサンプルゲームです。
右側から1列ずつブロックが現れます。
同じ色が2つ以上隣り合うブロックをクリックすると、まとめて消えます。
画面の左端までブロックが埋まればゲームオーバーです。
エスケープキーを押すと終了します。

 

flcheckers: チェッカーとしても知られる古典的なボードゲーム。

●チェッカーゲーム
Fast Light Toolkitのサンプルゲームで、 draughtsとして知られる古典的なボードゲームです。
黒いコマが自分です。
ドラッグしてコマを動かします。右斜め前か左斜め前に1つだけ進めます。
斜め前に相手のコマがあってその先が空いていれば、飛び越えて相手のコマを取ります。
そういう形になったら必ず飛び越える必要があります。他のコマは動かなくなります。
飛び越えた先も同じ状態だったら、連続して飛び越える必要があります。
一番上の行に入るとキングになり、斜め後ろにも進めるようになります。

 

flsudoku: 数独パズル(マス目に数字を配置する)

●数独パズル
Fast Light Toolkitのサンプルゲームです。
空いているマスに数字(1~9)を入れます。
縦1列・横1行・太線内3×3に、1~9の数字が1つずつ入るようにします。
マスをクリックして数字を入力します。↑↓←→キーでも移動できます。

 

インストール:APT経由 ”sudo apt install fltk1.3-games” 

 

————

◎ xdemineur X 用のもう一つのマインスイーパ

https://packages.debian.org/bullseye/xdemineur

起動:xdemineur

このゲームの目標は、地雷源に隠された地雷の場所を見つけて、警告旗をその上に 置くことにより地雷の場所をマーキングすることです。

多くのマインスイーパのクローンが存在しますが、このプログラムはその中でも見 栄えと使用感の点で Windows 版マインスイーパに最も似ています。

●地雷探索ゲーム
数字は周囲8マス(上下左右と斜め)の地雷の数です。数字の入っていないマスは0です。
地雷がなさそうな所をクリックします。
右クリックで、地雷があると思うマスに旗を立てます。
全ての地雷に旗を立てればクリアです。
地雷のあるマスをクリックすると、爆発してゲームオーバーになります。
[q]キーを押して終了します。

 

インストール:APT経由 ”sudo apt install xdemineur”

 

———-

○ xinv3d XInvaders 3D は、X Window System 用の 3D ベクトルベースなスペースイン ベーダクローンです。

https://packages.debian.org/bullseye/xinv3d

起動:xinv3d

●3Dスペースインベーダー
スペースインベーダーの立体版です。
↑↓←→キーで上下左右に移動し、近づいてくるエイリアンを撃ちます。
全て消せばクリアです。次に進みます。
【操作】[space]:撃つ [p]:一時停止 [q]:終了 [Esc]:ウインドウを閉じる

 

インストール:APT経由 ”sudo apt install xinv3d”

 

———-

QTライブラリを利用したソフトウェア

QTライブラリは、バックエンドを”QT_QPA_PLATFORM”で切り替えることが
できるようです。
export QT_QPA_PLATFORM=linuxfb
と設定することで、Xのターミナルではない素のShellでも画面表示をすることが
できましたが、その後操不能になりました
(ネットワークにつながっていれば、sshでログインしてシャットダウンは可能)。

この辺もう少し突き詰めれば、QTライブラリを使ったアプリをもう少し軽く
動かせるのかもしれません(どなたか詳しい方教えてください。)

———- 

◎ ksudoku    数独ゲームおよびソルバーで、2D や 3D といったバリエーションがあります

https://packages.debian.org/bullseye/ksudoku

起動:ksudoku

 KSudoku は数独ゲームおよびソルバーで、2D や 3D といった数独のバリエーション を
 サポートします。数独で遊べるだけでなく、数独パズルの図面を印刷したり、
 任 意の数独パズルの解法を探索できます。

 Brainで動かす場合は、いくつかの3Dタイプのゲーム(Rox 3D sudoku)は動かない
 ようですが、それ以外の2Dタイプであれば問題なく動作するようです。

 ゲームタイプを選んで、6種類の難易度を選択して、「Generate A Puzzle」を
 クリックすれば、盤面を作成してゲームがスタートします。

 入力する数字(文字)は、右側のボタンを左クリックして選択するタイプなので、
 Brainのタッチパネルも活用できます。(キー入力も可能です。)
 入力の取り消しは、「削除」キーや「マウス右クリック」で可能です。

 詳しい説明は、man ksudoku で確認してください。

 インストール:APT経由 ”sudo apt install ksudoku”

 

———-

✕ 2048-qt    QT版の2048(番号のブロックを結合して2048を目指すゲーム)

https://packages.debian.org/bullseye/2048-qt

起動:2048-qt

 実行はできるが、非常に遅いです。(CPU100%になってました。)。
 また、画面解像度が足りなくて、4x4のマスのうち一番下の4マスが表示されません。
 なのでこれで遊ぶのは難しいかと(コンソール版で遊びましょう)
 
 インストール:APT経由 ”sudo apt install 2048-qt”

 

———-

◎ kgoldrunner  ロードランナー風パズルアクション (2025/12/10追加)

https://packages.debian.org/bullseye/kgoldrunner

起動:kgoldrunner

 KGoldrunnerは、プレイヤーが金塊を集め、敵を避けながら迷路を進む、
 テンポの速いプラットフォームゲームです。
 様々なレベルパックに加え、新しいレベルを作成するためのエディターも
 付属しています。

 カーソルキー 移動
 z      左下を掘る
 c      右下を掘る

 h      ヒントを見る
 p      一時停止
 q      自滅

 最初にチューリアルが7面あるので、操作に慣れましょう。
 レベルは全部で・・・・いっぱいあります。
 (7+5+70+32+100+18+20+23+20+37+17+20+20+22+16+15)

 ただデフォルトだと一度カーソルキーを押すとその方向に動き続けるので、
 キー入力のタイミングが難しいです。
 (移動できない方向のキーを押すことで一時停止するしかない?)
 
 なので、Settings -> Hold Key To moveを選べば、キーを押している間だけ移動できます。

 また、Settings ->Configure Language から日本語にすることもできますし、
 画面テーマを変えることもできます(ノスタルジィにするとオリジナルの雰囲気に) 

  詳しい説明は、man kgoldrunnerや、ゲーム内ヘルプで確認してください。

  インストール:APT経由 ”sudo apt install kgoldrunner”

 

———- 

◎ katomic    アトミックスパズルゲーム

https://packages.debian.org/bullseye/katomic

起動:katomic

KAtomic は、プレイヤーがボード上で原子をスライドさせて分子を組み立てるパズル ゲームです。

起動はターミナルで「katomic」です。
Brainでは画面の下が隠れますので、ウインドウの最前面表示や移動をして、
ゲーム画面全体を表示しましょう。

マウスまたはキーボードを使って、原子を動かして、右上の分子の形にするゲームです。
原子は、一度動かすと何かにぶつかるまで止まりませんので、よく考えないと詰まります。

何とか6面まではクリアできましたがかなり頭を使います。
全部で83levelまであるみたいです。

brain単体で、タッチパネルでも遊べますので、お出かけ中のお暇な時間にいいかもしれません。

詳しくは、マニュアルを確認してみてください。
https://docs.kde.org/stable5/en/katomic/katomic/index.html

 インストール:APT経由 ”sudo apt install katomic”

 

———-

〇 picmi 数字ロジックゲーム(ピクロス?)

https://packages.debian.org/bullseye/picmi

起動:picmi

Picmi は、グリッドの横に表示されている数字に応じてグリッド内のセルを色付けしたり空白にしたりして、隠された絵を明らかにする数字ロジック ゲームです。

「Easy」「Medium」「Hard」「Custom」から選べます。
パズルは自動生成のようです。

 インストール:APT経由 ”sudo apt install picmi”

 

———-

◎ blinken Simon電子記憶ゲームのKDEバージョン

https://packages.debian.org/bullseye/blinken

起動:blinken

Blinkenは1978年にリリースされた電子ゲームをベースにしており、プレイヤーは徐々に長くなるシーケンスを記憶していく必要があります。デバイスの表面には4つの異なる色のボタンがあり、それぞれに異なる音が鳴ります。これらのボタンはランダムに点灯し、プレイヤーが記憶しなければならないシーケンスを作り出します。プレイヤーが正しい順序で点灯シーケンスを記憶できた場合、次のステージに進み、そこでは1つステップを追加した同じシーケンスが提示されます。

光った順番を覚えて、その順にボタンを押していきます。

起動までは少し時間がかかりますが、起動してしまえば快適にプレイできます。
PulseAudioを起動していると音も鳴ります(pulseaudio –start推奨)

ゲーム的にはタッチパネルだけでも遊ぶことが可能です。


 インストール:APT経由 ”sudo apt install blinken”

 

———-

〇 kbounce Jezzball アーケードゲーム

https://packages.debian.org/bullseye/kbounce
起動:kbounce

KBounce は、プレーヤーが壁を構築して多くの弾むボールを閉じ込めるゲームです。

●跳ね回るボールを囲い込むゲーム
壁を作ってボールを狭い領域に閉じ込めていくゲームです。
クリックして開始します。
マウスの左ボタンを押すと、そこから上下または左右に壁が伸びます。
右ボタンを押して壁を作る方向を切り替えます。
壁の完成前にボールがぶつかるとライフが減り、その位置で壁の伸びが止まります。
ライフがなくなれば終了です。
壁が完成したらボールのない領域が消えます。75%以上消すとクリアです。
次に進むとボールが増えます。どんどん増えていきます。

壁が伸びている途中で、マウス操作で止めることができるっぽいんですが、
条件がまだわかりません。

時間制限があるので、ゆっくりしていたらすぐにゲームオーバーになります。

オプションでPlay Soundsはチェックを入れるとゲームが止まってしまうみたいなので、
Play Soundsのチェックは入れないほうがいいかもしれません。


 インストール:APT経由 ”sudo apt install kbounce”

 

———-

〇 Kspaceduel SpaceWar! アーケードゲーム

https://packages.debian.org/bullseye/kspaceduel

起動:kspaceduel

KSpaceduel は 1~2 人用の宇宙戦争ゲームで、星の周りに 2 隻の宇宙船を飛ばし て闘争し、最後まで生き残れば勝ちです。

本パッケージは KDE ゲームモジュールの一部です。

●宇宙アーケードゲーム
敵対する衛星を破壊して軌道を支配します。
スペースキーを押して開始します。
【操作1】 [s]:左回転 [f]:右回転 [e]:加速 [d]:撃つ [a]:地雷
【操作2】 [←]:左回転 [→]:右回転 [↑]:加速 [↓]:撃つ [Ins]:地雷
【基本操作】 [p]:一時停止

操作はかなり難しいです。
多分現実の衛星軌道上の戦闘はこんな感じなんだろうという感想。

中央の太陽の引力にさからって、高度を維持しつつ相手の衛星に弾を当てます。
回復アイテムとかも出てきます。

KspaceDuel Configureで設定を変えられます。
衛星はAIによる自動操作も可能です。(Traineeにすれば軌道を維持してくれ。)
1P,2P両方をAIにすることもできます。
また、リフレッシュレートを上げれば、その分速度が上がります。

 

 インストール:APT経由 ”sudo apt install kspaceduel”

 

———-

◎ Kollision  シンプルなボール避けゲーム

https://packages.debian.org/bullseye/kollision

起動:kollision

Kollisionでは、小さな赤いボールが無秩序に動き回る閉ざされた空間で、マウスを使って小さな青いボールを操作します。青いボールで赤いボールに触れないようにすることが目標です。触れた瞬間にゲームオーバーになります。ゲームを続けられる時間が長いほど、スコアが高くなります。

●ボールをよけるシンプルなゲーム
クリックして開始します。
マウスで青いボールを動かして、赤いボールにぶつからないように逃げ回ります。
鬼ごっこのような、あるいはドッジボールのようなゲームです。
一定時間ごとにボールが1つずつ増えます。

Brainだと起動時に少し時間がかかります。

マウスで青いボールを動かして赤いボールを避けていくゲームです。
タッチペンを使ったボールの移動操作も可能です。

時間経過でボールの数が増えてきます。
赤いボールは基本的にまっすぐ進んできますが、赤いボール同士がぶつかると軌道が変わるのでそこも考慮に入れてよける必要がなります。

レベルを上げると、赤いボールのスピードが上がるのでよけるのが大変になります。

また、メッセージを日本語にすることも可能です。
ゲーム終了しないときは、ps axでプロセスス番号を確認して、
kill <プロセスス番号>で強制終了してください。

 インストール:APT経由 ”sudo apt install kollision”

 

———-

◎ kblackbox ブラックボックスパズルゲーム

https://packages.debian.org/bullseye/kblackbox

起動:kblackbox

KBlackBox は、ボックスのグリッド上でプレイされるかくれんぼゲームです。
プレイヤーはグリッドに光線を発射して、隠されたオブジェクトの位置を推測します。

▲隠されたボールの位置を当てます。
ボールは縦と横の線で囲まれたマスの中にあります。
光線の出てきた位置から、ボールの場所を推測します。
チュートリアルで練習できます。

まずは、言語を日本語にしてからチュートリアルをプレイしましょう。
段階的にルールを説明してくれます。

光線を発射すると、以下の3パターンに分かれます。
・光が吸収された(↑)
・光が戻ってきた(↷)
・光が別の場所にたどりついた(数字)

既に発射した光源にマウスを合わせると、置いたボールを元に光跡が表示されます。
(点線が軌跡、実線は反射)
ただしボールが端のマスにある時は、反射の仕方がちょっと違うのでご注意を

これを元にボールの位置を推測します。

ボールがあると思われる場所に、左クリックでボールを置きます。
右クリックで、ボールがないと思われる場所に✕を置けます
(もう一回右クリックでキャンセルです)。
タッチパネルでも操作できます。

配置したボールの配置が正しいと思ったら、「完了!」ボタンを押してください。正解かどうかが表示され、スコアも表示されます。

頭の体操にどうぞ

 

 インストール:APT経由 ”sudo apt install kblackbox”

 

———-

◎ kdiamond three-in-a-row ゲーム

https://packages.debian.org/bullseye/kdiamond

起動:kdiamond

KDiamond は Bejeweled に似た three-in-a-row ゲームです。ランダム生成のゲー ムや、様々なダイヤモンドの色数およびボードのサイズによる 5 つの難易度で無限 の楽しみを提供します。

本パッケージは KDE ゲームモジュールの一部です。

●同じ色をまとめて消すゲーム
縦または横に同じ色を3つ以上揃えると消えます。
消した数がポイントになります。
2つのコマをクリックして入れ替えます。
隣り合ったコマしか入れ替えられません。
メニューの「ゲーム」-「新しいゲーム」で制限時間の有無が選べます。

最初に3つそろえたときに少し待たされますが、それ以降は快適に動作します。
(サウンドファイルを探しているっぽいけど、アクセスしている気配がない)

難易度は、「very Easy」「Easy」「Medium」「Hard」「Very Hard」から選べます。

 

 インストール:APT経由 ”sudo apt install dodgindiamond2”

 

———-

◎ palapeli ジグソーパズルゲーム

https://packages.debian.org/bullseye/palapeli

起動:palapeli

Palapeliはジグソーパズルゲームです。このジャンルの他のゲームとは異なり、想像上のグリッドにピースを並べるだけでなく、自由に動かすことができます。

Palapeli はフィンランド語でジグソーパズルを意味します。

●ジグソーパズル
選択メニューで、好きな絵をダブルクリックして開始します。
ピースをドラッグして並べていきます。
ピースはちゃんとした向きになっています。回転させる必要はありません。
つながったピースはまとめてドラッグできます。
プレビューウインドウでは、マウスの動きで絵の一部を拡大して見られます。
メニューの「View」-「Back to collection」で絵の選択メニューに戻ります。
「Create new puzzle」で、好きな画像をパズルにできます。

Brainの解像度でも、問題なく遊ぶことができます。
試しに1つ77piecesのものを完成までやってみましたが、拡大・縮小を使ってやればいい感じにプレイできました。

また、好きな画像を用意してジグソーパズルにすることも出来るようですので、
長く遊べるゲームになるかもしれません。

 

 インストール:APT経由 ”sudo apt install palapeli”

 

———-

○ bomber アーケード宇宙船ゲーム

https://packages.debian.org/bullseye/bomber

起動:bomber

ボンバーは、宇宙船を操縦して眼下の建物を爆撃するゲームです。宇宙船は通過するたびに高度を下げていきます。進路上の建物を破壊しきれなかった場合、その建物に衝突してしまいます。

●爆弾投下アーケードゲーム
クリックしてゲームを開始します。
クリックするかスペースキーを押して、上空の飛行機から爆弾を落とします。
ビルを全部壊せばクリアです。次のレベルに進みます。
飛行機はだんだん低い位置を飛ぶようになり、ビルにぶつかるとライフが1つ減ります。
ライフがゼロになるとゲームオーバーです。

Windowは小さいですが、Brainでもプレイできます。
1キー操作のタイミングゲーです。
1度に落とせる爆弾は1つで、着弾しないと次の版団が落とせないので、高い建物から壊していかないといけません。

 

 インストール:APT経由 ”sudo apt install bomber”

 

———-

◎ UnoCard PCで実行される簡易な UNO カードゲームです。

https://github.com/shiawasenahikari/UnoCard?tab=readme-ov-file#jpn

起動:cd ~/UnoCard/UnoCard/UnoCard ; ./UnoCard

親は、各プレイヤーに7枚ずつカードを伏せて配ります。親の左隣の人が最初のプレイヤーです。 時計回り(あなた→西→北→東)にカードを捨てていきます。

順番になったら、カードを1枚、引き札の山からカードを1枚捨てます。 それから前の捨てたカードと同じ色、または同じ内容のカードを捨てます。
例えば、前の捨てたカードが緑7の場合は、任意の緑のカード、 または別の色の7カードが捨てられます。 それ以外に、ワイルドとワイルド +4も捨てられます。
マッチするカードがない、または何も捨てたくない時は、引き札の山からカードを1枚引きます。 引いてきたカードがマッチするカードの場合は、そのカードをすぐに捨てることができます。 カードを捨てるか、1枚引くと、次の人に順番が移ります。

手持ちのカードが2枚になってそのうちの1枚を捨てるとき、 その人はみんなに向かって「ウノ」と宣言しなければなりません。 このアプリは自動的に「ウノ」を宣言します。最後の1枚のカードを捨てられた人が勝ちです。

特殊カードとしては、以下のようなものがあります。
+2(ドロー2)
(リバース)カード
(スキップ)カード
(ワイルド)カード
+4(ワイルドドロー4)カード

コンピュータとの対戦で、2vs2, 3P, 4Pがプレイできます。

そのほか、オプションで特殊ルールも設定できるようです。

  • 7-0
    7のカードを出すと、誰か一人とカードを全て入れ替える。 0を出すとゲームと同じ回転向きで手札を入れ替える。
  • スタッキング
    +2 と +4 のカードが重ねられます。 +2 か +4 を重ねられないプレイヤーは全ての罰を受けます。 +4 カードが積み重ね可能に設定している場合は、+4 カードは 他に使える同色のカードを持っている時は、このカードは使えません の制限が解除され、 いつでも使えるようになります。バランスのため、好きな色を宣言します の能力が失います。

 

インストール:ソースからインストール

インストール手順詳細(クリックで表示)

$ cd
$ mkdir UnoCard
$ cd UnoCard

$ sudo apt install qtbase5-dev qt5-qmake qtmultimedia5-dev \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-base gstreamer1.0-plugins-good \
gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly \
gstreamer1.0-libav gstreamer1.0-tools

$ git clone https://github.com/shiawasenahikari/UnoCard.git
$ cd UnoCard/UnoCard

#最適化
$ vi UnoCard.pro

VERSION = 3.8.0.25051
↓
VERSION = 3.8.0.25051

# ===== ARMv5 (armel / Brainux / Debian13) Optimization =====
# 安全で高速な ARMv5 最適化フラグを Release ビルドに適用
QMAKE_CFLAGS_RELEASE += -O2 -pipe -march=armv5te -mtune=arm926ej-s -msoft-float -fomit-frame-pointer -fno-strict-aliasing
QMAKE_CXXFLAGS_RELEASE += -O2 -pipe -march=armv5te -mtune=arm926ej-s -msoft-float -fomit-frame-pointer -fno-strict-aliasing

# リンク最適化(軽量化)
QMAKE_LFLAGS_RELEASE += -Wl,--as-needed -Wl,-O1

# デバッグビルドは安全のため最適化しない
QMAKE_CFLAGS_DEBUG += -O0
QMAKE_CXXFLAGS_DEBUG += -O0

# ===== End ARMv5 Optimization =====

$ qmake
$ make
$ sudo ln -s /home/user/UnoCard/UnoCard/UnoCard /usr/local/bin/UnoCard

$ cd ~/UnoCard/UnoCard/UnoCard
$ ./UnoCard

 

———-

○ cutemaze シングルプレイヤー迷路ゲーム

https://packages.debian.org/bullseye/cutemaze

起動:cutemaze

CuteMazeは、シンプルなトップダウン型のゲームです。迷路は、複数の異なるアルゴリズムの中から選択してランダムに生成されます。プレイヤーはキャラクターを操作して迷路の中を進みながら、ターゲット(デフォルトではチーズ)を探します。すべてのターゲットを集めるとゲームクリアです。

●迷路の中でチーズを探すゲーム
↑↓←→キーでネズミを動かして、迷路の中のチーズを食べます。
出発点は青い足跡です。
灰色の足跡を付けながら迷路の中を移動します。
右下にチーズの数が表示されています。
チーズを全て食べればクリアです。

その他、ペンギンテーマに変更も出来ます。

Brain上でもプレイは問題ありません。
迷路作成のアルゴリズムやサイズなどを指定できます。

 

 インストール:APT経由 ”sudo apt install cutemaze”

 

———–

GTKライブラリを利用したソフトウェア

〇 aisleriot    GNOME ソリティアカードゲーム集

https://packages.debian.org/bullseye/aisleriot

 80以上の様々なソリティアカードゲームのコレクションです。
 有名な spider, freecell, klondike, thirteen (pyramid), yukon, canfield などの変種の他
 にも 数多くのゲームが含まれます。

 最初起動方法がわからなかったのですが、
 起動は「sol」コマンドで、まずは ”Freecell”のゲーム画面が表示されます。
 また、 Game->Select Gameで、いろんなソリティアゲームに一覧が表示されます。

 詳しい説明は、man solで確認してください。

 インストール:APT経由 ”sudo apt install aisleriot”

 

———-

◎ wordwarvi   レトロな横スクロールシューティングゲーム (2025/12/09追加)

https://packages.debian.org/bullseye/wordwarvi

起動:wordwarvi –nomusic –framerate 10

 Word War vi は簡素な横スクロールシューティングの ’80 年代風アーケードゲーム です
 ”vi”per 船をコアメモリの中を飛ばし、行方不明になった .swp ファイルを 救出し、
 OS の防衛をかわし、メモリ食らいの emacs プロセス群を一掃します。

 ワイヤーフレーム風で表現された横スクロールシューティングゲームです。
 多分、映画トロンの世界のスクランブル的なものを意識しているんじゃないと思います
 画面デモとしてもいい感じです。

 音楽もよくて、画面もかっこいいんですが、やはりBrain的にはマシンスペックが
 足りません。
 以下あたりで起動するとちょうどいいかもしれません。
 musicを有効すると、起動に時間がかかります。

  wordwarvi –nomusic –framerate 10

 Q        スタート
 カーソルキー   自機移動 (感性は少し強めです。)
 Z        レーザーを発射する
 C         チャフを投下します(熱追跡ミサイルを混乱させるため)。
 B        爆弾を投下します。
 G        重力爆弾を投下します。最初は 3 個あります。

 M        音楽オンオフ
 S        サウンド効果オンオフ

 詳しい説明は、man wordwarviで確認してください。

 インストール:APT経由 ”sudo apt install wordwarvi”

 

———-

◎ gnome-mahjongg 「上海」麻雀パイを使った1人用パズルゲーム (2025/12/13追加)

https://packages.debian.org/bullseye/gnome-mahjongg

麻雀パイを使った1人用パズルゲームです。
ゲーム内容はいわゆる「上海」になります。

起動は、gnome-mahjonggです。

「上海」のルールは、
積み上げられた麻雀牌の中から同じ絵柄の牌2枚をペアにして消し、
最終的に全ての牌を取り除くことを目指すパズルゲームです。
牌は「自由牌」と呼ばれる、左右どちらかが空いていて、
上に他の牌が乗っていない牌のみ選べます。

ゲーム開始時に盤面を作成しているのか、少し待たされます。
ゲーム中は少し遅いですが、遊べます。
マウスなしでもタッチパネルで操作できるので、その点ではBrain向きかもしれません。

詰まったら、ヒントを出してもらったり、
牌をシャッフルすることもできるので、支援機能も充実しています。

 詳しい説明は、man gnome-mahjonggで確認してください。

 インストール:APT経由 ”sudo apt install gnome-mahjongg”

 

———-

△ grhino     オセロ/リバーシボードゲーム

https://packages.debian.org/bullseye/grhino

起動:grhino

grhino (旧称 rhino) はオセロ/リバーシゲームです。grhino が他のオセロゲーム と一線を画している点は、grhino はオセロ経験者をターゲットとしていることです。 強化版 AI に開発の焦点を当てています。この AI は quarry でも利用できます。

grhinoをインストールすると、quarry(碁、アマゾン、リバーシ (別名オセロ) 用ゲーム盤)もインストールされますので、「quarry」で起動して、コンピュータ側アルゴリズムエンジンとして「GPT grhino」を指定してオセロ対戦できます。

が、難点がありまして、
Brainの解像度的に8×8の盤面でも、最前面化&上のメニュを隠すように移動して、盤面を表示してやっとプレイできるという点と、盤面を表示する際に高確率で「Segmentation fault」エラーを起こして異常終了してしまうことです。

grhinoの思考ルーチンが非常に強いそうなのでぜひ挑戦してほしいのですが、安定稼働するには工夫が必要そうです。
途中「Manage Engine List」をクリックしてから始めると盤面が表示される可能性が高い気もしますが、確実ではないので気のせいかもしれません。

また、quarryは、「gnugo」をaptでインストールすると囲碁でコンピュータ対戦することもできるようですが今のところ途中でエラーになります。

 インストール:APT経由 ”sudo apt install grhino”

 

———-

◎ iagno     GNOME 用オセロゲーム

https://packages.debian.org/bullseye/iagno

起動:iagno

Iagno は、コンピュータ版のリバーシ、あるいはオセロゲームです。碁に似た 二人用戦略ゲームです。盤上にはに片方は黒、もう片方は白に塗られた8×8の マスがあります。Iagno における目的は、相手のマスを自分の色のマスで挟む ことにより、できる限り多く自分の色に裏返すことです。

起動は、ターミナルから「iagno」JWMmメニューから「Reversi」からできます。

grhino と同様のオセロゲームですが、こちらは問題なく起動・プレイできます。
タッチパネルで操作できるゲームですので、Brain単体で動かすにはぴったりです。

コンピュータ対戦難易度もEasy/Medium/Hardから選べますし、2人対戦も可能です。

 詳しい説明は、man iagnoで確認してください。

 インストール:APT経由 ”sudo apt install iagno”

 

———-

◎ sgt-puzzles Simon Tathamのポータブルパズルコレクション – 1人用パズルゲーム集

https://packages.debian.org/bullseye/sgt-puzzles

Simon TathamのPortable Puzzle Collectionには、1人用の人気パズルゲームが多数収録されています。現在、以下のゲームが収録されています。

起動はターミナルで、”sgt-ゲーム名”のコマンドを入力するか、
jwmのプログラムメニューから起動できます(jwmでのメニュー連携している場合)。

brain単体で、タッチパネルでも遊べるものも多いので、
お出かけ中のお暇な時間にいいかもしれません。

詳しくは、以下のを参照してください。
https://www.chiark.greenend.org.uk/~sgtatham/puzzles
(一部収録されていないゲームがあるようです。misaic)

* Black Box, ball-finding puzzle (ボール探しパズル)
 レーザービームを反射させて箱の中に隠されたボールを見つけます
* Bridges, bridge-placing puzzle (ブリッジ配置パズル)
 すべての島を橋のネットワークで接続します
* Cube, rolling cube puzzle (キューブを転がすパズル)
 キューブを転がして青い四角形をすべて拾いましょう
* Dominosa, domino tiling puzzle (ドミノ並べパズル)
 ドミノのフルセットで長方形をタイル状に並べます
* Fifteen, sliding block puzzle (スライディングブロックパズル)
 タイルをスライドさせて順番に並べます
* Filling, polyomino puzzle (ポリオミノパズル)
 各正方形に、それが含まれる領域の面積を記入します(要キー入力)
* Flip, tile inversion puzzle (タイル反転パズル)
 正方形のグループを反転して、すべてを一度に点灯させます
* Flood
 できるだけ少ない塗りつぶしでグリッドを同じ色に変えます
* Galaxies, symmetric polyomino puzzle (対称ポリオミノパズル)
 グリッドを、それぞれが点を中心とした回転対称の領域に分割します
* Guess, combination-guessing puzzle (対称ポリオミノパズル)
 隠された色の組み合わせを推測します
* Inertia, gem-collecting puzzle (宝石収集パズル)
 鉱山にぶつからずに宝石をすべて集めてください
* Keen, arithmetic Latin square puzzle (算術ラテン方陣パズル)
 算術のヒントに従ってラテン方陣を完成させます
* Light Up, light-bulb placing puzzle (電球配置パズル)
 電球を配置してすべての四角を照らします
* Loopy, loop-drawing puzzle (ループ描画パズル)
 隣接するエッジの数に関する手がかりに基づいて、単一の閉じたループを描画します
* Magnets, magnet-placing puzzle (磁石配置パズル)
 手がかりを満たすように磁石を配置し、同じ極が接触しないようにします
* Map, map-colouring puzzle (地図色塗りパズル)
 隣接する地域が同じ色にならないように地図に色を塗ります
* Mines, mine-finding puzzle (地雷探しパズル)
 地雷を踏まずにすべて見つけてください
* Net, network jigsaw puzzle (ネットワークジグソーパズル)
 各タイルを回転させてネットワークを再構築します
* Netslide, toroidal sliding network puzzle (スライディングネットワークパズル)
 一度に 1 行ずつスライドして、ネットワークを再構成します
* palisade
 手がかりに従ってグリッドを均等な大きさの領域に分割します
* Pattern (ピクロスと呼ばれるパズルゲーム)
 黒い正方形の連続の長さだけを指定して、グリッド内のパターンを塗りつぶします
* Pearl, loop-drawing puzzle (ループ描画パズル)
 角と直線の正方形に関するヒントを参考に、1 つの閉じたループを描きます
* Pegs, peg solitaire puzzle (ペグソリティアパズル)
 ペグを互いに飛び越えて、1 つを除いてすべて取り除きます
* Range, visible-distance puzzle (可視距離パズル)
 番号が付けられた各セルからの可視距離を制限するために、黒い四角を配置します
* Rectangles (長方形パズル)
 グリッドを数字に等しい面積の長方形に分割します
* Same Game, block-clearing puzzle (ブロッククリアパズル)
 同じ色の正方形の隣接したグループを削除してグリッドをクリアします。
* Signpost, square-connecting puzzle (正方形接続パズル)
 矢印に沿って四角形をパスにつなげます
* Singles, number-removing puzzle (数字消しパズル)
 重複する数字の右側のセットを黒く塗りつぶします
* Sixteen, toroidal sliding block puzzle (トロイダル スライディング ブロック パズル)
 タイルを順番に並べるために、一度に 1 列ずつスライドします
* Slant, maze-drawing puzzle (迷路描画パズル)
 手がかりに一致する斜めの線の迷路を描きます
* Solo, number placement puzzle (数字配置パズル、数独)
 各行,各列,正方形ブロックにすべての数字が 1 つずつ含まれるようにグリッドを埋める
* Tents, tent-placing puzzle (テント配置パズル)
 それぞれの木の隣にテントを置きます
* Towers, tower-placing Latin square puzzle (タワー配置ラテン方陣パズル)
 ヒントに従って塔のラテン方陣を完成させましょう
* Tracks, Train Tracks
 手がかりに従って線路を埋めてください
* Twiddle, rotational sliding block puzzle (回転スライディング ブロック パズル)
 タイルを回転させて順番に並べます
* Undead, monster-placing puzzle (モンスター配置パズル)
 幽霊、吸血鬼、ゾンビを鏡に映る正しい数だけ配置します
* Unequal, Latin square puzzle (ラテン方陣パズル)
 > 記号に従ってラテン方陣を完成させます。
* Unruly, black and white grid puzzle (白黒グリッド パズル)
 3 つ連続しないように、白黒のグリッドを埋めます
* Untangle, planar graph layout puzzle (平面グラフ レイアウト パズル)
 線が交差しないように点の位置を変更します

 インストール:APT経由 ”sudo apt install sgt-puzzles”

  

———–

〇 LMemory 「メモリー」カードゲームをベースにした子供向けゲーム(神経衰弱)

https://packages.debian.org/bullseye/lmemory

起動:lmemory

Linux Memory Gameは、カードゲーム「Memory」をベースにした、3歳以上の子供向けのX11ゲームです。GTK+ライブラリを使用して開発されています。子供向けゲームですが、5段階のスキルレベルが用意されており、レベルの高いゲームは大人でも十分に楽しめます。64×64ピクセルのピックスマップ画像を追加できる機能も備えています。

●同じ絵を合わせるゲーム
トランプの神経衰弱と同じです。
最初は全てのカードが裏になっています。
クリックするとカードが表になって絵が現れます。
次にクリックしたカードが同じ絵であれば、2枚のカードが消えてポイントになります。

タッチパネルでもプレイできます。
もっと小さい子供向けの絵合わせパズルにもなります。

 

 インストール:APT経由 ”sudo apt install lmemory”

 

———-

○ Five-or-more 五つ以上の同色ビー玉を一列に並べよう

https://packages.debian.org/bullseye/five-or-more

起動:five-or-more

かつて流行った “Color Lines” ゲームの GNOME への移植です。
このゲームの目的は、五つ以上の同色のビー玉をできるだけ多く並べて消すこ とです。

★同じ色のコマを5つ並べて消すゲーム
コマをクリックしてから空いているマスをクリックします。
そのコマは他のコマをよけながら移動一気に移動できます。
他のコマで途中がふさがっている場合は移動できませんので、通路を確保が必要です。

1つのコマを移動させると「次のライン」のコマがバラバラになって盤上に現れます。
同じ色のコマが縦横斜めに5つ以上並ぶと消えます。

その時はもう1回コマを移動できます。「次のライン」のコマは現れません。
盤上が埋め尽くされてコマが移動できなくなったらゲームオーバーです。

サイズは以下が選べます。
Small    7 x 7  難易度高
Medium  9 x 9  難易度中
Large  20 x 15 難易度艇

また、設定でコマの形を変えることも出来ます。

 

 インストール:APT経由 ”sudo apt install five-or-more”

 

———-

○ GtkBalls シンプルなロジックゲーム

https://packages.debian.org/bullseye/gtkballs

起動:gtkballs

本ゲームの目的は、同じ色のボール数個を水平や垂直、あるいは斜め方向に 揃えることにより、できるだけ高得点を稼ぐことです。有名な DOS 用ゲームの “Lines” のクローンです。

●同じ色を揃えて消すゲーム
同じ色のコマを縦横斜めに5つ以上並べて消します。
コマをクリックしてから移動先をクリックすると、コマが移動します。
移動先は空いているマスだけで、別のコマがあるマスには移動できません。
そこまでの道が別のコマでふさがっている場合も移動できません。
1回移動するごとに3つずつ新しいコマが置かれます。
コマを揃えて消した時は置かれません。
盤面が全部埋まったらゲームオーバーです。

Five-or-more 五つ以上の同色ビー玉を一列に並べよう
と同じルールのゲームです。

コマの大きさが大きいため、表示できる全体のカラム数が少ないですが
設定で縦横のカラム数や並べなければいけない数などを変更することが出来ます。
(3つ並べたら消えるなどに変更できます)

テーマによって、コマの大きさが変わります(Default:縦7マス、klines:縦10マス)

 

 インストール:APT経由 ”sudo apt install gtkballs”

 

———-

◎ gtkboard 1 つのプログラム内に多くのボードゲーム

https://packages.debian.org/bullseye/gtkboard

起動:gtkboard

gtkboard の目的は、全ボードゲーム用の共通プラットホームを提供すること です。全ゲームは、共通のインターフェイスを持っています。gtkboard の起 動時にやらねばならない最初のことは、メニューからゲームを選択すること です。現在、18 種類のゲームが実装されています。そのうち Antichess、 Ataxx、Fifteen puzzle、Hiq、Memory、Othello、Pentaline、Plot4、Rgb、 Samegame は、完全に実装されています。Checkers、Infiltrate、Hypermaze、 Mastermind、Maze、Tetris の実装は部分的ですが、プレイ可能です。Chess、 Pacman の実装は部分的で、今のところプレイもできません。1 人用のゲーム と、2 人用のゲームとがあります。

●たくさんのボードゲーム
現在は18種類のゲームが実装されています。1人用と2人用のゲームがあります。
下記のゲームは完全に実装されています。
Antichess・Ataxx・Fifteen puzzle・Hiq・Memory
Othello・Pentaline・Plot4・Rgb・Samegame
下記の実装は部分的ですが、プレイ可能です。
Checkers・Infiltrate・Hypermaze・Mastermind・Maze・Tetris
部分的な実装でまだプレイできないのが、ChessとPacmanです。

Brainでの実行はゲームによっては画面解像度の縦方向が足りないものがあるかもしれません。

 

 インストール:APT経由 ”sudo apt install gtkboard”
 [trixie 以降でパッケージなし。t64のライブラリと依存あり。]
 [trixieベースのBrainuxでは、bookwormのソースからビルドする必要あり?]

 

———-

◎ pegsolitaire Hi-Q に似た教育ゲーム

https://packages.debian.org/bullseye/pegsolitaire

起動:pegsolitaire

Peg Solitaire は一人用ボードゲームです。ペグをボード上の穴に動かして進めま す。ゲームは中央の穴以外の穴がすべてペグで埋まった状態から始まります。目的 は、可能な動きをつづけてボードを一つだけのペグを中心の穴に残して全て空にす ることです。

●Hi-Q に似た教育ゲーム
1人用のボードゲームです。
ペグと呼ばれるコマをドラッグして動かします。
馬跳びのように隣のペグを飛び越えて、ホール(空いている所)に移動します。
飛び越されたペグは消えます。
ペグが1つだけになればクリアです。
最後のペグが最初のホールの位置(中央)に置かれる形が理想です。

ステージは6種類地位されているようです。
・English Board (Beginner, Intermediate, Advanced)
・European Board (Beginner, Intermediate, Advanced)

ペグをつかんで移動したいところにドラックすれば移動できます。

 

 インストール:APT経由 ”sudo apt install pegsolitaire”

 

———–

◎ lightsoff  ライトパズルゲーム

https://packages.debian.org/bullseye/lightsoff

起動:lightsoff

全てのライトを消すパズルです。

●ライツアウトゲーム
『Merlin』です。
タイルをクリックすると、そこと上下左右のタイルが反転します。
タイルが全て黒くなればクリアです。

パズルゲームです。
OpenGLのライブラリを使っているっぽいので、Brainではむずかしいかなとも思ったのですが、問題なくスムーズに動いているようです。

ちょっとずつ難しくなっていくので、段階的に遊べます。

 

 インストール:APT経由 ”sudo apt install lightsoff”

 

———–

◎ gnome breakout 古典的ゲームの Breakout の GNOME 用に書かれたクローン

https://packages.debian.org/bullseye/gnome-breakout

起動:gnome-breakout

古典的なゲーム “Breakout” のクローンです。ゲーム画面の一番下にある ラケットを操り、画面の一番上にある煉瓦の塊にボールをぶつけて煉瓦を壊します。

●ブロック崩し
古典的ゲーム Breakoutのクローンです。
ラケットを操って上にある煉瓦を壊します。

クリックしてボールを打ちます。
はね返ってきたら、マウスでラケットを動かして打ち返します。
初期値はマウスになっていますが、設定を変更すればキー操作もできます。

 

Brainでも快適にプレーできますが、マウスカーソルがWindow外に出るとゲームが一時停止するので、そこは注意です。
タッチパネルでの操作も出来ますので、こちらのほうがいいかもしれません。

 

 インストール:APT経由 ”sudo apt install gnome-breakout”

  

———–

◎ gtans GTK+ を使ったタングラム (パズル) ゲーム

https://packages.debian.org/bullseye/gtans

タングラムは中国のパズルゲームで、指定された形になるようピースを並べな ければなりません。すべてのピースを使わねばならず、2 つを積み重ねてもい けません。ピースは三角形が 5 個と、正方形と平行四辺形が 1 個ずつありま す。gtans には 380 種類もの図柄があります。ピースを操るのにはマウスを 使います。gtans には柔軟な設定が可能なインターフェイスもあります。

●タングラム
ピースは三角形が5つと、正方形と平行四辺形が1つずつあります。
全てのピースを使って右上に表示されている絵になるように並べます。
[輪郭の表示]をクリックすると輪郭が赤い線で表示されます。
[ヒント]をクリックすると絵の一部が灰色になって1つのピースの位置を教えてくれます。
メニューの「設定」-「図形ファイル」で次の絵を選択できます。

ピースはドラッグして移動します。
ピースをクリックすると、選択状態(少し明るい色)になります。
右クリックすると選択状態のピースが裏返しになります。
選択状態のピースの外側でマウスの左ボタンを押すと、ピースと線でつながります。
そのままドラッグするとピースが回転します。

 

 インストール:APT経由 ”sudo apt install gtans”
 (Bullseye版で動作確認)

 Trixieには該当パッケージなし。
 ベースとなっているlibgtk2.0がTrixie版だとt64環境になっていることと、
 libgtk2.0-devの導入も以下のパッケージがTrixieで提供されていないため、ビルドも困難。
 Trixieでは動作困難と想定。

 

———–

◎ groundhog シンプルなお手玉的ロジックゲーム

https://packages.debian.org/bullseye/groundhog

起動:groundhog

本ゲームの目的は、迷路状の管を操作して、ボールを同じ色のポケットに入れ ることです。

●タイルを回転してチューブをつなぐゲーム
左上の拳銃アイコン(Start new game)をクリックします。
サイズを選択し、[OK]をクリックして開始します。
タイルをクリックして回転し、チューブをつなぎ替えます。
[Go]をクリックするとボールが移動します。
全てのボールを同じ色のポケットに入れればクリアです。

全部揃えるのは結構難しいです。
今回偶然揃えられましたが、そろえるのに有効な手順があるのかもしれません。

 

インストール:APT経由 ”sudo apt install groundhog”

 

———-

△ gtkpool GTK+ で書かれたシンプルなプールビリヤードゲーム (Bullseye版のみ)

https://packages.debian.org/bullseye/gtkpool

GtkPool は、 かなりシンプルなゲームインターフェイスを持ち、本当に便利で拡張性の高い 物理システムをサポートします。

●シンプルなビリヤードゲーム
白ボールの上でマウスの左ボタンを押し、そのまま動かすと線が表示されます。
左ボタンを離すと点線の方向に打ちます。赤線はショットの強さです。
マウスのカーソルが黒丸になった時は、クリックした位置に白ボールが現れます。

Brain上だと起動はしますが、800×600の解像度が必要。
プレイ自体はできますが、メッセージなどの確認ができません。
2人プレイ専用のゲームのようです。

 

インストール:APT経由 ”sudo apt install gtkpool”

 Trixieには該当パッケージなし。
 ベースとなっているlibgtk2.0がTrixie版だとt64環境になっていることと、
 libgtk2.0-devの導入も以下のパッケージがTrixieで提供されていないため、ビルドも困難。
 Trixieでは動作困難と想定。

 

———-

○ hexxagon Hexagonal Ataxx の GTK 版クローン (Bullseye版のみ)

https://packages.debian.org/bullseye/hexxagon

本ゲームの目的は、ゲーム盤のできるだけ大きな部分を占領することです。 そのために自分の駒を増やして、相手の駒を取ります。ゲーム盤は 6 角形で、 さらにそれが小さな 6 角形に区切られています。

Hexxagon は、ゲーム盤のデザインが変わった Ataxx にすぎません。 Ataxx のものは 4 角形ですが、Hexxagon は 6 角形です。 Hexxagon は、別のゲーム盤も提供します。

●六角形の盤上で自分のコマを増やすゲーム
自分のコマをクリックすると、動かせる範囲のマスの色が変わります。
薄茶のマスをクリックすると、そこにコマが移動します。
黄色のマスをクリックすると、新しいコマが現れます。
コマを移動または追加したマスに相手のコマが接していれば自分のコマに変わります。
相手のコマより自分のほうが多ければ勝ちです。
盤の形は六角形ですが、いろいろなタイプがあります(8つの盤があるようです)。

コンピュータ対戦が化可能で、難易度も5種類(Very easy->Very hard)

Brainでの稼働は、縦解像度が少し足りませんが、ウィンドウを移動することで盤面を表示してプレイすることは可能です。

 

インストール:APT経由 ”sudo apt install hexxagon”

 Trixieには該当パッケージなし。
 ベースとなっているlibgtk2.0がTrixie版だとt64環境になっていることと、
 libgtk2.0-devの導入も一部のパッケージがTrixieで提供されていないため、ビルドも困難。
 Trixieでは動作困難と想定。

 

———- 

liballegroライブラリを利用したソフトウェア

✕ open-invaders   Space Invaders clone

https://packages.debian.org/bullseye/open-invaders

起動:open-invaders

 コマ落ちあり、画面入りきらないので、自機が表示されず、遊ぶには難しい。
 USBサウンドデバイスを付けると音が鳴りますが、結構な頻度で途切れます。
 が、画面は派手に動くので、画面デモにはいいかもしれません。

 遊ぶなら、コンソール版のninvaders をどうぞ。

 詳しい説明は、man open-invadersで確認してください。

 インストール:APT経由 ”sudo apt install open-invaders”

 

———-

◎ wing      縦方向シューティングゲーム (2025/12/13追加)

https://packages.debian.org/bullseye/wing

起動:wing

ギャラガライクなアーケードゲーム
WING は、ギャラガをやっつけるアーケードゲームです。
あらかじめ描画される 高品質なグラフィック、動的に生成される背景の星々、
コンピュータが操る敵と 戦う 1 人用ゲーム、6 段階のゲームレベル、
デジタル音響効果、デジタルミュー ジックストリーム、ハイスコアリストなどの
機能を備えています。

ギャラガライクとなっていますが、普通に縦方向シューティングゲームです。
決められた敵の数を破壊すると、レベルクリアになります(この辺がギャラガ的)。
ダメージはシールド制です。

OPTIONS
   -w     run wing in windowed mode.

KEYS
   Left, Right, Up, Down
          Move the ship across the screen.
   Ctrl   Fire.

   F1, F2, F3, F4
          Change current weapon. Available weapons  are  laser  (default),
          minigun, plasma and torpedo.

   Esc    Escape  from  the  current  menu. If in the main menu, quits the
          game.

音ありでもそれなりの速度で動きます。(音はとぎれとぎれですが)
また、F1,F2,F3,F4で自機の弾を変えられます。
brain本体のキーボードにはファンクションキーはないので、USBキーボードをつなぐか、
windowモードで起動してソフトウェアキーボードと併用してください。

 詳しい説明は、man wingで確認してください。

 インストール:APT経由 ”sudo apt install wing”

 

———- 

◎ garden-of-coloured-lights 音楽の要素を持つ抽象的な縦スクロールシューティングゲーム

https://packages.debian.org/bullseye/garden-of-coloured-lights

起動は「garden」で実行できます。

 十分遊べる立シューティングゲームです。音ありでもなんとか遊べる速度です。
 画面が若干大きいですが、最上位表示+移動すればなんとかなります。

   ・LayerをAboveに変更
   ・Moveで、ゲーム画面全体が表示されるように、Windowを上に移動する。
    (移動すると、ウィンドウから終了はできないので、
     メニューや「ESC」キーで終了できます。)

   音を鳴らしていると、音がとぎれとぎれになってコマ落ち感はあるけど、
   音がなければ、気にならずに十分遊べそうです。

 カーソルキー:移動
 キーマッピングの設定変更もSet keysから出来ます。

 詳しい説明は、man gardenで確認してください。

 インストール:APT経由 ”sudo apt install garden-of-coloured-lights”

 

———–

◎ kraptor クラシックなシューティングスクロールゲーム

https://packages.debian.org/bullseye/kraptor

起動:kraptor

Kraptorは、多数の敵と戦う定番のシューティングスクロールゲームです。ハイスピードアクション、大規模な破壊、そして楽しさ満載のゲームです。Kraptorは、2Dシューティングスクロールゲーム用の強力なエンジンを搭載しています。

長年の抑圧の後、世界中の奴隷の民が主人に対して蜂起した。傭兵パイロットであるあなたは、民衆の反乱軍から連絡を受け、抑圧の勢力と戦うよう命じられた。朝、コックピットに飛び乗り、エンジンを始動。いよいよ離陸し、攻撃を開始する。主人たちに雇われたクズどもを倒す準備を整えろ。自由のために戦うことこそが唯一の道だ。あなたは使命を帯びている。我々を欺くな…

●古典的な縦スクロールシューティング
左上の「Game」で「New game」を選び、難易度を選択するとオープニングが始まります。
その後、ブラックマーケットで必要な武器を買う[Buy]ことができます。

マウスのクリックで攻撃し、右クリックで武器を切り替えます。
途中でアイテムを拾うと右側のゲージが上がります。これが0になるとゲームオーバーです。

【基本】[F1]:ヘルプ [p]:一時停止 [Esc]:メニュー
【操作】[z]:撃つ [x]:武器切り替え [c]:ボム [↑↓←→]:移動

Brainでも、十分な速度でプレイできます。
ただ、音を出せるようにしていた場合、Musicを有効にしていると曲の途切れが激しくなるので、無効を推奨です(効果音までぐらいなら何とかなります)

 

 インストール:APT経由 ”sudo apt install kraptor”

 

———–

◎ stax Tetris Attack に似たパズルゲーム集

https://packages.debian.org/bullseye/stax

起動:stax -sh 440

Tetris や他のクールなパズルゲームを遊ぶためのもう一つの方法です。 マルチプレイヤ機能やテーマのサポートが含まれます。お楽しみを!

●同じ色をまとめて消すゲーム
上にある磁石でブロックを1つずつ持ち上げ、別の列に落とします。
同じ色を3つ以上、縦または横に揃えれば消えます。
ブロックは下から少しずつ出てきます。
ブロックが上までいっぱいになったらゲームオーバーです。
【操作】 [←]:左へ [→]:右へ [↑]:持ち上げる [↓]:落とす [Esc]:終了

基本的には縦や横に同じ色のブロックを3つ以上そろえると消えます。
下からブロックが補充されてきますがブロックが一番上まで行ってしまうとゲームオーバです。

3種類のゲームが楽しめます。
(Configure -> Game Options)
・Sucker   磁石でブロックを1つずつ持ち上げ別の列に落とします
        [←]:左へ [→]:右へ [↑]:持ち上げる [↓]:落とす
・SpringShot 上から用意されたブロックを落とします。
        [←]:左へ [→]:右へ [↓]:落とす
・Shifty     横に並んだ2つのブロックを交換します(Tetris Attack=パネルでポン風)
        [←]:左へ [→]:右へ [↑]:上へ [↓]:下へ[Ctrl]:交換

なお、2人プレイも可能で、その場合、画面の左右にそれぞれのゲーム画面がならびます。
その場合、ControlsでPlayer2のキーバインドを設定します。

キーボード操作だと、標準のほかにWASD+Spaceが選べます。
Brainの場合は、本体キーボード+USBキーボードを併用すれば2人プレイも可能かもしれません。

Brainでのプレイは少し速度が遅いです。
ただ、標準では、画面解像度が800×600になっているようでゲーム画面が全部表示できません。このため、Configureで640×480に変更するか、起動時オプションで “stax -sh 440″を指定して、縦方向の解像度に制限をしてみてください。

 

 インストール:APT経由 ”sudo apt install stax”

 

———-

◎ Alex the Allegator 全方向スクロールのジャンプアクション探索ゲーム

1人または2人で遊べる、とても短いプラットフォームゲーム。
短いフィールドを飛び回り、夢の女の子ローラを探し出そう。

https://allegator.sourceforge.net
Source code and data

起動:cd alex1l; ./alex1

フィールドを探索して、ローラを探します。
1人プレイまたは2人同時プレイが可能です。
(2人同時プレイは同じ画面内で一緒に移動しないといけないので協調プレイが必要です。)

1Player: 移動:カーソルキー,Jump:Nキー、Action:Mキー[未使用]
2Player: 移動:wasdキー,Jump:Fキー、Action:Gキー[未使用]

Brain上でも、非常にスムーズにプレイできます。
(普通に多重スクロールまで実現してて驚愕)

クリアするにはひらめきが必要です。

デモ扱いですが、これをベースにしたら本格的な探索アクションゲームが作れそうな気がします。

 

インストール:ソースをダウンロードしてビルド
(古いソースプログラムのため、調整が必要です。)

インストール手順詳細(クリックで表示)

$ mkdir alex1
$ cd alex1

$ sudo apt install liballegro4-dev build-essential unzip

ファイルをダウンロードして、Brainに転送
https://sourceforge.net/projects/allegator/files/Alex1/source%20and%20data/
alex1s.zip

$ unzip alex1.zip

#ファイル名がすべて大文字になっているので、小文字に修正する
$ sudo apt install rename
$ rename ‘y/A-Z/a-z/’ *

$ vi Makefile

CC = gcc
CFLAGS = -Wall -O2 `allegro-config –cflags`
LDFLAGS = `allegro-config –libs`

SRC = alex.c
OBJ = $(SRC:.c=.o)
BIN = alex1

all: $(BIN)

$(BIN): $(OBJ)
$(CC) -o $@ $^ $(LDFLAGS)

%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@

clean:
rm -f $(OBJ) $(BIN)

#元がDOS専用のコンソール関数を想定した関数を使っていますが、
# ゲーム本編には特に影響ない部分とのことで、ダミー関数を用意して回避します。
$ vi dosstub.h

#ifndef DOSSTUB_H
#define DOSSTUB_H

static inline void textcolor(int c) {}
static inline void textbackground(int c) {}
static inline void gotoxy(int x, int y) {}
static inline void clreol(void) {}
static inline void clrscr(void) {}
static inline void cprintf(const char *fmt, …) {}
static inline long biostime(int a, long b) { return 0; }

#endif

#元がAllegro 3.xを想定したソースですが、今回はAllegro 4.4を使っているので
# ソースの一部を修正します。
# 併せて、Player1の操作でJunp:R-Ctrl,Action:ALTGRが必要ですが、
# Brainに合わせて、Jump:Nキー、Action:Mキーに変更します。
$ vi alex.c

29: DECLARE_COLOR_DEPTH_LIST(COLOR_DEPTH_8);
  ↓
// DECLARE_COLOR_DEPTH_LIST(COLOR_DEPTH_8);

25: #include “sound.h” // datfile
  ↓
  #include “sound.h” // datfile
  #include “dosstub.h”

559: shutdown();
  ↓
  shutdown();
  END_OF_MAIN();

105: pkey[0].jump = KEY_RCONTROL;
  pkey[0].action = KEY_ALTGR;
  ↓
  pkey[0].jump = KEY_N;
  pkey[0].action = KEY_M;

$ make
$ ./alex1

 

———-

◎ Alex the Allegator 2 スライドできるパネル配置パズルゲーム

https://allegator.sourceforge.net/
Source code and ports.

起動:cd alex2; ../alex2

1人または2人で遊べるパズルボードゲーム。
自分のトークンをボード上に置くか、行または列をスライドさせます。
すべては、自分のトークンをボードから一掃するためです。
ただし、いずれかのプレイヤーのトークンがすべてなくなったら、
相手に勝つには最高得点を獲得する必要があるので注意してください。

2×2の正方形に同じ色のトークンを配置できれば、そのトークンは破壊されます。
トークンを配置する代わりに、指定した行または列を1つずらすことも出来ます。

どちらかのトークンが破壊することが目的ですが、その時に得点が高いほうが勝利者になるのですが、得点が入るのはトークンを「自分のターン」で破壊できたときです。
逆をいうと、相手のターンでトークンが破壊されたときは相手の得点になります。
つまり戦略が必要となります。

操作:
・マス目でマウス左クリック:自分の色のトークンを置きます。
・マス目周囲の▲カーク:その方向に行または列をスライドします。

2人プレイでは、交互に操作してください。

ゲームは以下の3つが選べます。
・HUMAN VS AARON (プレイヤー先攻)
・ALEX VS HUMAN (プレイヤー後攻)
・HUMAN VS HUMAN

コンピュータに勝つのは以外と難しいです。



インストール:ソースをダウンロードしてビルド
(Windowsベースのソースプログラムのため、一部修正が必要です。)

インストール手順詳細(クリックで表示)

mkdir alex2
cd alex2

$ sudo apt install liballegro4-dev build-essential unzip

ファイルをダウンロードして、Brainに転送
https://sourceforge.net/projects/allegator/files/Alex2/source%20and%20data/
alex2s.zip

$ unzip alex2.zip

# 1つだけ、ファイル名が大文字になっているので修正
$ mv data/DATA.H /data/data.h

# GFX_GDIはWindows の GDI 描画モードで、Linux Allegro 4 にはありません。
#このため、Linuxデモ利用可能なAUTODETECT_WINDOWED等に変更します。
$ vi alex2.c

989: if (key[KEY_W]) set_gfx_mode(GFX_GDI, 320, 240, 0, 0);
  ↓
   if (key[KEY_W]) set_gfx_mode(GFX_AUTODETECT_WINDOWED, 320, 240, 0, 0);

# debian 11 の Allegro 4 では fcos / fsin が削除されているためリンクエラーになる
# このため、新しい名前のfixcos(),fixsin()に変更する必要があります。
$ sed -i ‘s/fcos/fixcos/g’ alex2.c
$ sed -i ‘s/fsin/fixsin/g’ alex2.c

 

$ gcc -s -o alex2 alex2.c hisc.c -lalleg
$ ./alex2

 

———-

◎ Alex the Allegator 3 – Radioactive Racers 2Dレーシングゲーム

https://allegator.sourceforge.net/
Source code and data

起動:cd alex3/alex3-rr; ../alex3

アレックスとその友人たちが放射性廃棄物で傷ついた少年たちを治せるものを探して、滑稽な道路でレースをする、やや完成度の高いレース ゲームです。

1人プレイもしくは、2人プレイが可能です。
他にもコンピュータ操作のレーシングカーも出てきます。

コースを5周すれば、ゲーム終了です。

ステアリング操作がかなり敏感なので、絶妙な操作が求められます。
コンピュータ操作のレーシングカーはかなりうまいので、ついていくのも難しいです。

操作

1プレイヤー:
・ハンドル:左,右
・アクセル:Space
・バック(ブレーキ):下

2プレイヤー:
・ハンドル:A,D
・アクセル:←CTRL
・バック(ブレーキ):S

またマップエディタもついています。
タイトル画面で、TAB+Eでエディタモードに入ります。
エディタモードから武家るには、ESCキーです。

・CTRL + L : load map
・CTRL + S : save map
・LMB : put tile
・RMB : get tile
・Z/X : next/prev tile
・B/G/M : block, goal or mud
・LSHIFT + B/G/M : remove block, goal or mud

・S + ARROW : set start position and direction

・P : enter leave path mode
・I/U : set/remove path point (path mode only)

・1-9 : set checkpoint (use all!!)
・0 : remove checkpoint

 

インストール:ソースをダウンロードしてビルド
(Windowsベースのソースプログラムのため、一部修正が必要です。)
(変数定義のやり方の問題で、あちこちのファイルを変更しないとビルドが通りません。)

インストール手順詳細(クリックで表示)

インストール手順詳細(クリックで表示)

$ mkdir alex3
$ cd alex3

$ sudo apt install liballegro4-dev build-essential unzip

ファイルをダウンロードして、Brainに転送

https://sourceforge.net/projects/allegator/files/Alex3/source%20and%20data/
alex3-rr.zip

$ unzip alex3-rr.zip
$ cd alex3-rr
$ cd src

$ vi main.c

38: #include “Player.h”
  ↓
  #include “player.h”

234: if (set_gfx_mode(GFX_DIRECTX_WIN, 640, 480, 0, 0) >= 0) {
  ↓
   if (set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0) >= 0) {

797: set_gfx_mode(GFX_DIRECTX_WIN, 640, 480, 0, 0);
  ↓
   set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);

59: DATAFILE *data;
  ↓
  DATAFILE *data;
  volatile int frame_count = 0;
  volatile int fps = 0;
  volatile int logic_count = 0;
  volatile int lps = 0;
  volatile int cycle_count = 0;

 

vi menu.c

126: int update_menu(BITMAP *bmp, Tmenu *m, Tmenu_params *mp, Tcontrol *ctrl, int x, int y, void **data) {
  ↓
  int alex_update_menu(BITMAP *bmp, Tmenu *m, Tmenu_params *mp, Tcontrol *ctrl, int x, int y, void **data) {

191: menu return = update_menu (bmp, menu, mp, (handle_keys ? ctrl : NULL), x, y, &data);
  ↓
  menu return = alex_update_menu (bmp, menu, mp, (handle_keys ? ctrl : NULL), x, y, &data);

 

vi edit.c

34: BITMAP *buffer;
  DATAFILE *data;

  extern BITMAP *buffer;
  extern DATAFILE *data;

 

vi intro.c

34: DATAFILE *data;

  extern DATAFILE *data;

vi timer.h

24: volatile int frame_count;
  volatile int fps;
  volatile int logic_count;
  volatile int lps;
  volatile int cycle_count;
  ↓
  extern volatile int frame_count;
  extern volatile int fps;
  extern volatile int logic_count;
  extern volatile int lps;
  extern volatile int cycle_count;

 

$ vi map.c

157: if (!strnicmp( …

  if (!ustrnicmp( …


$ gcc -o alex3 *.c -lalleg -lm

$ cd ..
$ ln src/alex3 ./alex3

$ ./alex3

#これで、ゲームはプレイできるようになりましたが、
 Player1の操作がカーソルキー&RCTRLになっているので、Brainでは操作が難しいので、
 必要に応じて、ソースを直接いじってキー割り当てを変更します。
 例えば、RCTRL->SPACEへ変更する場合は以下のようにして、再度ビルドします。

$ cd src
$ vi main.c

507: set_control(&ply[0].ctrl, KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_RCONTROL);
  set_control(&ply[1].ctrl, KEY_W, KEY_S, KEY_A, KEY_D, KEY_LCONTROL);
  ↓
  set_control(&ply[0].ctrl, KEY_UP, KEY_DOWN, KEY_LEFT, KEY_RIGHT, KEY_SPACE);
  set_control(&ply[1].ctrl, KEY_W, KEY_S, KEY_A, KEY_D, KEY_LCONTROL);

$ gcc -o alex3 *.c -lalleg -lm
$ cd ..
$ rm ./alex3
$ ln src/alex3 ./alex3
$ ./alex3

キーの割り当ては、menu.cのvoid key_to_str()関数の中身を見てもらえればわかります。

 

———-

◎ Alex the Allegator 4 – レトロ版プラットフォームゲーム

https://packages.debian.org/bullseye/alex4
https://allegator.sourceforge.net/

起動:alex4

シリーズ最新作では、アレックスが誘拐された恋人を探してジャングルを旅します。4色展開で、定番のプラットフォームアクションが満載!

Guide Alex the Allegator はジャングルを走り回り、靴を脱がそうとする邪悪な人間 たちからガールフレンド Lola を助け出そうとします。4 種類の素晴らしい 色が付いた多くの古典的な足場が保証されています!

このゲームには組み込み版エディタが含まれているので、独自のマップの設計や 共有が可能です。

▲ワニのアレックスをゴールまで導きます。
ガールフレンド救出のためにジャングルを進みます。
敵は、靴を脱がそうとする邪悪な人間たちです。
卵があれば攻撃できます。なければ踏んづけます。

キー操作は、デフォルトだとBrainuxには合わないので、ソースからビルドすると以下のようになります。

タイトル:
 カーソル上下  メニューカーソル移動
 Space or Z or X 選択

 1 Window mode (160×120)
 2 Window mode (320×240)
 3 Window mode (640×480)
 4 Full Screen (640×480)
 

ゲーム中:
 移動:カーソルキー
 攻撃:Z
 ジャンプ:X
 F12キーを押し続けると、ゲームが止まって、曲がきれいに流れます。

MAP Editor:
 詳細は、 man alex4で見れます。

 

公式?サイト(https://allegator.sourceforge.net/)からリンクされている
More maps! から、いくつかのMAPDATAが入手できます。

ダウンロードしたファイルを、フォルダに解凍して、
以下の内容が含まれたファイルを見つける or 作成して
#start#

#end#

alex4 /folder/file.txt のように指定して実行するとプレイできます。

その他こんなサイトもありました。
Alex the Allegator 4 Mods, Tutorials & Community | Alex4 Hub
https://web.archive.org/web/20180129081832/http://alex4.webz.cz/

  

 インストール1:APT経由 ”sudo apt install alex4″

aptパッケージでインストールした場合、
以下のようなキーバインドになっています。
移動:カーソルキー
攻撃:LCONTROL
ジャンプ:ALT

このままだと、移動しながらジャンプしようとしてALTを押しながらカーソルの左右を同時押しすることになり、WindowManager(JWM)が反応して、仮想スクリーンの切り替えが起こってしまいます。

ですので、ソースからビルトすることで以下のように変更してみます。
攻撃:LCONTROL → Z
ジャンプ:ALT    → X

 インストール2:ソースからインストール

インストール手順詳細(クリックで表示)

$ mkdir alex4
$ cd alex4

$ apt-get source alex4
$ sudo apt-get build-dep alex4

$ cd alex4-1.1
$ cd src

$ vi control.c

34: KEY_LCONTROL,
  KEY_ALT);
  ↓
  KEY_Z,
  KEY_X);


#CPU 最適化を実施
$ vi Makefile

3: CFLAGS ?= -g -Wall -Wno-deprecated-declarations -O2
 ↓
 CFLAGS ?= -g -Wall -Wno-deprecated-declarations -O3 -march=native

$ make
$ sudo make install

$ alex4

 

———-

○ liquidwar 真に独創的なマルチプレイヤーウォーゲーム

https://packages.debian.org/bullseye/liquidwar

起動:liquidwar

Liquid Warは、独創的なマルチプレイヤーウォーゲームです。武器は使用せず、2Dの戦場でカーソルを動かすだけです。カーソルの先を進むのは、小さな色付きの四角で表された多数の小さな戦士で構成されるあなたの軍隊です。異なるチームの戦士同士が出会うと、互いに食べ合う、それだけです。

シングルプレイヤーモードも利用可能ですが、ゲームはマルチプレイヤー向けに設計されており、ネットワークをサポートしています。

●敵を食らって大きくなるゲーム
↑↓←→キーで目標マークを動かして、流動体生物の動きを制御します。
流動体生物は目標マークに向かって進み、敵に接触すると浸食しようとします。
接触点において、数の多いほうが相手を吸収して大きくなります。
メニューの「Teams」で、色や参加者を変更できます。
初期設定は1対1の対戦で、赤が人間(Human)、黄色がコンピューター(Cpu)です。
黄色を人間にすればマウスで操作ができます。
【基本操作】[F3]:一時停止 [Esc]:終了

Brainでの実行だと遅いですが、音とかを無効化すれば動かないって程ではないです。
水面を表現するラスタスクロールに負荷がかかっている気がしますので、これを無効にするとかなりましになります。

陣取りゲームで、制限時間経過後に優勢なほうが勝ちといった感じでしょうか?
起動オプションで、ウィンドウモードや、music無効、効果音無効なども指定できます。
(ゲーム中のoptionでも変更できます。)

いくつかマップも用意されているので、それぞれ戦略が必要になります。

 

 インストール:APT経由 ”sudo apt install liquidwar”

 

———–

◎ excellent-bifurcation 両面でプレイできる抽象的な縦型シューティングゲーム

https://packages.debian.org/bullseye/excellent-bifurcation

起動:excellent-bifurcation

Excellent Bifurcationは、2つのサイドでプレイできる縦スクロールシューティングゲームです。グラフィックは、8ビットゲームの色、音、雰囲気を再現しようと試みています。

このゲームでは、画面の両側で同時に2隻の船を操縦します。ゲームプレイは非常にユニークで楽しいものです。いずれにせよ、かなり頭を使うゲームかもしれません。

「Excellent Bifurcation」は、リンリー・ヘンゼルがAutoFire 2007シューターコンペティションに出品した作品で、2位に入賞した。


●2画面同時シューティング
2つの画面を同時に操作するシューティングゲームです。
このゲームは『AutoFire 2007 Shooter Competition』で2位になりました。
キーを操作すると両方の画面で同じ動きをします。
自動連射にすると勝手に撃ち続けます。これは[z]キーを押し続けた状態と同じです。
左右交換は左側の船と右側の船を入れ替えます。
エスケープキーを押すとメニューに戻ります。
【操作】[z]:撃つ [c]:左右交換 [x]:チャージ [a]:自動連射切替 [↑↓←→]:移動

 

Brainでも快適にプレイできます。
両方の画面を見ながら2台の自機を操作することになるので、非常に難しいです。
自機の攻撃方法にも違いがあり(チャージ攻撃がチャージ弾と追尾弾とか)
状況によって自機の入れ替えとかも必要そうです。

最初はEASYでプレイして、なれたらレベルを上げていきましょう。

 

 インストール:APT経由 ”sudo apt install excellent-bifurcation”

 

———–

◎ overgod 双方向スクロールアーケードゲーム

https://packages.debian.org/bullseye/overgod

起動:overgod

Overgod は双方向にスクロールするアーケードゲームで、制限時間内に領域内の すべての敵を破壊する必要があります。このゲームは古典的なアーケードゲーム Asteroids と Thrust を混ぜ合わせたもので、多くの機能を追加しています。

Overgod は競争モードまたは協調モードのいずれかで二人プレイすることもできます。 また、敵が無制限に現れる特別な “タイムアタック” バージョンでもプレイできます。

●双方向スクロールアーケードゲーム
縦横にスクロールする画面で、制限時間内に全ての敵を破壊します。
競争モードまたは協調モードのいずれかで、2人でプレイすることもできます。
敵が無制限に現れるタイムアタックバージョンもあります。

メニューの「START GAME」を選択し、エンターキーを押して次に進みます。
「PLAYER ONE FIRE TO START」が表示された画面で、[a]キーを押します。
続けて↑↓←→キーで船を選び、[a]キーを押して開始します。
2人プレイの場合は、[t]キーを押して同じように船を選びます。
【操作1】[←]:左回転 [→]:右回転 [↑]:前進 [↓]:後退 [a]:撃つ1 [s]:撃つ2 [d]:切替
【操作2】[j]:左回転 [l]:右回転 [i]:前進 [k]:後退 [t]:撃つ1 [y]:撃つ2 [u]:切替

Brainでも現実的な速度で動作可能です。
OPSIONSから、Video Sync – Off にすると少し早くなる気がします。


ただ、自機を回転して前進する形での移動方式ですので、敵の弾を避けるだけでも大変です。難しいです。

 

 インストール:APT経由 ”sudo apt install overgod”

 

———-

◎ rafkill Raptor: Call of the Shadows 類似の縦シューティングゲーム

https://packages.debian.org/bullseye/rafkill

起動:rafkill

Rafkill は、古典的なシューティングゲームである Raptor: Call of the Shadows のクローンです。

画面には、プレイフィールドの鳥瞰図が表示されます。そこは、異星人の支配する 世界です。プレイヤーの任務は、向かって飛んでくる敵に弾丸を打ち込んで破壊 することです。スコアにより、ライフ、シールド、より威力のある武器、又は 新しい宇宙船さえ購入できます。

Rafkill は、三種類の宇宙船、20 種類以上の武器、透過色効果によるカラフルな グラフィック、音楽やサウンドが特徴です。

●縦シューティングゲーム
Raptor:Call of the Shadows のクローンです。
↑↓キーで「Play new」を選び、エンターキーを押して次に進みます。
難易度を選び、エンターキーを押して開始します。
敵の船を撃ってアイテムを拾います。
ある程度の点数を稼いだら、武器やライフを買い足します。
【操作】 [space]:撃つ [Alt]:武器切替 [p]:一時停止 [Esc]:終了

Brain上でも快適にプレイ可能です。
ただ、サウンドデバイスを付けていても、音が途切れてしまうので、
メニューから、Sound,Musicのボリュームを0にすることをお勧めします。

 

インストール:APT経由 ”sudo apt install rafkill”

 

———-

python3-pygame ライブラリを利用したソフトウェア

Brainでは少し重いですが、動作するものが一部ありましたので紹介します。

なお、TrixieベースのBrainuxの場合、python3-pygameの基盤がSDL1.2からSDL2に
切り替わっているため、そのままでは非常に重くなり動作困難になります。

python3-pygameのSDL1.2化に挑戦していますが、現在難航中です。
(動作確認しているアプリが少ないので、影響はないとは思いますが)

———–

△ whichwayisup わずかに回転する要素のある2Dプラットフォームゲーム

https://packages.debian.org/bullseye/whichwayisup

起動:whichwayisup

Which Way Is Up は、伝統的な2Dプラットフォームゲームでありながら、回転要素を少し加えたやりがいのあるゲームです。大きな耳を持つ謎めいたサラリーマン、ガイが危険と下品な会話に満ちた迷宮で鍵を見つけるのを手伝ってください。

●鍵の所まで行くゲーム
訳ありげな耳の大きいサラリーマンのガイを鍵の所まで連れていきます。

↑↓キーで「Play level 1」を選び、スペースキーを押して開始します。
レベル1は話が長いです。何度も[z]キーを押します。
ブロックの上にあるスイッチをオンにすると90度回転します。オフには戻せません。
【基本】[z]:話を進める [p]:一時停止 [Esc]:メニュー
【操作】[←]:左へ [→]:右へ [↑]:ジャンプ [↓]:拾う/スイッチオン

Brainでは起動はしましたが、かなり動作が遅いです。
ギリ動かせるかといったレベルですが、
python3-pygameで動く珍しいゲームということで紹介です。

フルスクリーンモードにするには、520×520の解像度が必要なのでBrainでは不可です。

 インストール:APT経由 ”sudo apt install whichwayisup”

 

———-

◎ pathological 経路とビー玉を用いたパズルゲーム

https://packages.debian.org/bullseye/pathological

起動:pathological

Pathological は Rainbow Arts による “Logical” ゲームの濃縮版クローンです。 ゲームを解くには、色がマッチした 4 個のビー玉で車輪の 4 箇所の空間を 埋める必要があります。 テレポータ、スイッチ、フィルタなどといった各種ボード要素がゲームを 興味深くチャレンジングにしています。新規レベルデータを好みのテキストエディタを 使って作成可能です。

●経路とビー玉を用いたパズルゲーム
車輪の中に同じ色のビー玉を4つ置くと、車輪の色が黒くなります。
制限時間内に全ての車輪を黒くすればクリアです
車輪のところでマウスの右ボタンを押すと回転します。
ビー玉の上でマウスの左ボタンを押すと、隣に車輪かパイプがあれば移動します。
ただし、車輪の空いているくぼみが隣に来てないと移れません。
エスケープキーを押してから、もう一度エスケープキーを押すとメニューに戻ります。
クリックするか、エンターキーを押せばリスタートできます。

Brain上でもプレイ可能ですが、縦方向の解像度がちょっと足りません。
一応、6面まではクリアできることを確認しています。

 

 インストール:APT経由 ”sudo apt install pathological”

 

———-

SDL1.2ライブラリを利用したソフトウェア

別ページへ移動済

〇 hannah     pacman-like game, child oriented (パックマン風のドットイートゲーム)

✕ njam      pacman-like game with multiplayer support(ドットイートゲーム)

〇 Berusky     倉庫番ベースの論理ゲーム

〇 gemdropx    Gem Drop X – X11 用のアクションパズルゲーム(Magical Drop風ゲーム)

〇 amoebax     ぷよぷよ風パズルアクションゲーム

〇 frozen-bubble   同じ色の泡をまとめて撃って弾ける「パズルボブル」クローン

〇 OpenSyobonAction オープン版しょぼんのアクション (2025/12/12追加)

〇 pingus      Lemmings(TM) のフリーなクローン

〇 enigma     マウスでビー玉をコントロールするゲーム

〇 bomberclone 無料のボンバーマンクローン

△ mazeofgalious  Galious の迷宮(MSX版クローン) 

〇 BoboBot ロックマン的なアクションゲーム

〇 Circus Linux! アーケードゲーム「Circus」/Atari2600「Circus Atari」風ゲーム

〇 Abe’s Amazing Adventure ピットフォールII的なアクションゲーム

〇 TowerToppler(別名Nebulous) 障害を避けながら塔を登るアクションゲーム(キョロちゃんランド)

〇 Defendguin アーケードゲーム「Defender」のクローン

〇 vectoroids  古典的なアーケードゲームの “アステロイド” のグラフィック強化版です。

〇 Missile Command 「ミサイル・コマンド」クローンです

〇 PDA Maze 一人称視点(3D)の迷路ゲーム

〇 Super Tux Tux が主人公の古典的な跳んで走る二次元横スクロールゲーム

〇 The Legend of Edgar [edgar] 2Dアクション+謎解きゲーム

〇 madbomber Kaboom! クローン

〇 Holotz-Castle 数多くの神秘があるプラットフォームゲーム

〇? nikwi キャンディーの収集が任務のプラットフォームゲーム(ステージ最初にWait有)

〇 SDL Hana コンピュータ対戦可能な花札(こいこい)です。

〇 tworld Chip’s Challenge Game エンジンをエミュレーション

〇 barrage 戦車やシープ・歩兵を砲撃して進行を止めるアクションゲーム

〇 pixfrogger  カエルが道を渡るのを手伝う(Froggerによく似た競争ゲーム)

〇 amphetamine ユニークなビジュアル効果を使った飛んで走るゲーム

〇 GNU Robbo ATARI XE/XL から移植された論理ゲーム

△ gnujump SDL1.2用ジャンピングゲーム(要OPELGL無効化)

〇 gravitywars Gravity Force クローン

〇 LBreakout2 美しいグラフィックのボールとパドルのゲーム

〇 LMarbles 色とりどりのビー玉で形を作るゲーム (KAtomicの亜種)

〇 Luola マルチプレイヤー洞窟飛行ゲーム

〇 meritous アクションアドベンチャーダンジョン探索ゲーム

〇 moon-lander 古典的な月着陸船に基づくゲーム

〇 ceferino1 Super Pang 似のアクションゲーム

〇 Powermanga  鮮やかな 3D グラフィックを備えた縦方向シューティングゲーム

〇 xbat ゼビウス(ナムコ製ゲーム)風アクションシューティングゲーム

〇 VoR  宇宙で岩を避ける2Dアクションゲーム

〇 X Soldier 「撃たない」ボーナス付きのシューティングゲーム

〇 freedroid Paradroid クローン – 戦略的 shoot-em up 型シューティングゲーム

〇 BugSquish  虫があなたの腕から血を吸おうとしています!ハエたたきでやっつけろ!!

〇 ballerburg 古典的な城の戦闘ゲーム(砲弾当てゲーム)

〇 Block Rage コラムスみたいなゲーム(DOSの古典Xixitのリメイク)

○ penguin-command ミサイルコマンドクローン(グラフィック改良版)

△ tuxmath 子供向けの Tux による数学ゲーム(最初の起動だけ5分ぐらいかかります)

○ tuxtype Tux が主人公の教育的タイピングゲーム

○ fillets  倉庫番スタイルの世界を救うウィットに富んだ魚についてのパズルゲーム

○ CaveStory 洞窟物語 フリーのPCアクションゲーム

○ Kobo Deluxe ボスコニアン風 宇宙戦闘ゲーム

○ icebreaker ペンギンを避けて氷山を崩せ

○ Dodgin’Diamond 2 1 人または 2 人用の軽快なアーケード式シューティングゲーム

○ Ketm 古典的な 2D スクロール式シューティングゲーム

○ Sopwith 1980年代の第一次世界大戦の横スクロールドッグファイティングゲームの移植

○ hex-a-hop 六角形のタイルをベースにしたパズルゲーム

○ blocks-of-the-undead おどろおどろしい雰囲気の Tetris Attack 風パズルゲーム

○ heroes パワーアップアイテムを集めつつ敵の軌跡を避けるゲーム

○ MinicraftC mincraftの要素のある2D版アクションゲーム

○ gtkboard 1 つのプログラム内に多くのボードゲーム

○ Gravitation  躁病、憂鬱、そして創造のプロセスに関するゲーム

○ maelstrom Asteroidsに似たアーケードスタイルのゲーム

○ epiphany Boulder Dash ゲームクローン(アクションパズル)

 

———- 

SDL2ライブラリを利用したソフトウェア

 

———-

Views: 869

カテゴリー: Brain, Brainux, debian, Game, Linux | コメントする

電子辞書Brainをいじる (5) Brainuxでエミュレータをインストールして遊ぶ

Brainuxにエミュレータをインストール

———-

higan  マルチゲームコンソールエミュレータ(動作はするが遅すぎる)

マルチコンソールゲーム機のエミュレータです。
正確な動作を目標に作成されたエミュレータとのことです。

インストールはApt経由で可能です。

sudo apt install higan

インストール自体は成功して、実行してみましたが、
Brainuxで動作はするが、1FPSくらいしか出ないので、実用上は難しいです。

user@brain:~$ sudo apt show higan
Package: higan
Version: 106-2
Priority: optional
Section: otherosfs
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Installed-Size: 5,794 kB
Provides: nes-emulator
Depends: libao4 (>= 1.1.0), libasound2 (>= 1.0.16), libatk1.0-0 (>= 1.12.4), libc6 (>= 2.17), libcairo2 (>= 1.2.4), libfontconfig1 (>= 2.12), libfreetype6 (>= 2.2.1), libgcc1 (>= 1:3.5), libgdk-pixbuf2.0-0 (>= 2.22.0), libgl1, libglib2.0-0 (>= 2.16.0), libgomp1 (>= 4.9), libgtk2.0-0 (>= 2.24.0), libopenal1 (>= 1.14), libpango-1.0-0 (>= 1.14.0), libpangocairo-1.0-0 (>= 1.14.0), libpangoft2-1.0-0 (>= 1.14.0), libpulse0 (>= 0.99.1), libsdl1.2debian (>= 1.2.11), libstdc++6 (>= 5), libudev1 (>= 183), libx11-6, libxext6, libxv1
Homepage: http://byuu.org/emulation/higan/
Tag: uitoolkit::gtk, uitoolkit::sdl
Download-Size: 1,365 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: Accurate multi-system emulator
 higan is an emulator for systems from Nintendo (SNES, NES, Gameboy,
 Gameboy Color, Gameboy Advance), Sega (Master System, Game Gear),
 NEC (PC Engine, SuperGrafx) and Bandai (WonderSwan, WonderSwan Color).
 It was formerly called bsnes and the SNES emulation is especially
 complete and polished.
 .
 higan strives to provide the most faithful hardware emulation possible.
 It focuses on accuracy and clean code, rather than speed and special
 features. It is meant as a reference emulator to document how the underlying
 hardware works. As a result the minimum system requirements are high.



user@brain:~$ sudo apt install higan
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libao-common libao4 libopenal-data libopenal1 libsdl1.2debian libsndio7.0
Suggested packages:
  libaudio2 libsndio6.1 libportaudio2 sndiod
The following NEW packages will be installed:
  higan libao-common libao4 libopenal-data libopenal1 libsdl1.2debian libsndio7.0
0 upgraded, 7 newly installed, 0 to remove and 1 not upgraded.
Need to get 2,252 kB of archives.
After this operation, 7,628 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel libao-common all 1.2.2+20180113-1.1 [11.7 kB]
~
Processing triggers for libc-bin (2.31-13+deb11u11) ...

 

———–

gngb GAME BOY エミュレータ

gngbは、GAMEBOY エミュレータです。

画面は小さいですが、結構まともに動きました。

インストールはApt経由で可能です。

sudo apt install gngb

とりあえず、以下のコマンドでも手持ちのGBカードリッジのデータで実行したところ、以下で普通に動きます(音なし)。

gngb “rom.gb”

デフォルト操作
Start Enter(決定)
Select Right Shift(Brainにキーなし)
移動 カーソルキー
A X
B W
Menu TAB(国語辞典)
終了 ESC(戻る,調べる)

快適に動かすため、以下のように実行パラメータを指定して、動作を確認してみました。
FDcloneに”.gb”の拡張子で、使用するオプション込みで追加すれば、便利ですよ。
(.gb: gngb –autoframeskip –sound –sample_rate=11025 –fps )

パラメータ調整(–fps は、フレームレート表示確認用です。)
・音無しで 43-60fps
gngb –autoframeskip –no-sound –fps “.rom.gb”

・音あり(usbサウンドデバイス必須)で 28-35fips
gngb –autoframeskip –sound –sample_rate=11025 –fps “.rom.gb”

デフォルト設定を変えるには、「/usr/share/doc/gngb/examples/sample_gngbrc」を、「$HOME/.gngb/gngbrc」にコピーして、編集してください。

例えば、Setartを「m」、Selectを「n」に割り当てするには以下のように変更します。
(キーコードはこちらを参照)
#map_key 273,274,276,275,120,119,13,303
map_key 273,274,276,275,120,119,109,110

/usr/share/doc/gngb/にドキュメントが保存されているので、参考にしてください。

user@brain:~$ sudo apt show gngb
[sudo] password for user:
Package: gngb
Version: 20060309-5
Priority: optional
Section: x11
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Installed-Size: 223 kB
Depends: libc6 (>= 2.28), libgl1, libsdl1.2debian (>= 1.2.11), zlib1g (>= 1:1.1.4)
Homepage: http://m.peponas.free.fr/gngb/
Tag: hardware::emulation, hardware::input:joystick, hardware::input:keyboard,
 interface::commandline, interface::graphical, interface::x11,
 role::program, scope::utility, uitoolkit::sdl, use::gameplaying,
 x11::application
Download-Size: 74.1 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: Color Gameboy emulator
 Gngb is an emulator for GameBoy Classic, Color and others.
 .
 It uses the SDL library and OpenGL. This software supports joystick
 and keyboard as input.


user@brain:~$ sudo apt install gngb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  gngb
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 74.1 kB of archives.
After this operation, 223 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel gngb armel 20060309-5 [74.1 kB]
Fetched 74.1 kB in 1s (53.2 kB/s)
Selecting previously unselected package gngb.
(Reading database ... 53441 files and directories currently installed.)
Preparing to unpack .../gngb_20060309-5_armel.deb ...
Unpacking gngb (20060309-5) ...
Setting up gngb (20060309-5) ...
Processing triggers for man-db (2.9.4-2) ...
user@brain:~$




user@brain:~$ gngb
Usage: gngb [OPTION]... FILE
Emulate the GameBoy rom pointed by FILE

  -h, --help                 print this help and exit
  -a, --autoframeskip        turn on autoframeskip
      --sleep_idle           sleep when idle
      --color_filter         turn on the color filter
  -r, --rumble               turn on the rumble simulation
      --filter=X             Set the filter to apply (only for standard mode)
                              0 = none
                              1 = scanline
                              2 = scanline 50%
                              3 = smooth
                              4 = pseudo cell shading
  -R, --res=WxH              set the resolution to WxH (for YUV and GL mode)
  -Y, --yuv                  turn YUV mode on
      --yuv_type             set the type of the YUV overlay
                              0 = YV12
                              1 = YUY2
  -o, --opengl               turn OpenGL mode on (if conpiled in)
  -f, --fullscreen           run gngb in fullscreen
      --fps                  show frame/sec
  -s, --sound                turn on sound
      --sample_rate=RATE     set the sample rate to RATE
  -C, --color_gb             force to color gameboy mode
  -G, --normal_gb            force to normal gameboy mode
  -S, --super_gb             force to super gameboy mode (experimental)
      --auto_gb              turn on automatique detection
  -j, --joy_dev=N            use the Nth joystick
  -g, --gdma_cycle           cpu stop during gdma transfer (experimental)
  -v, --version              printf gngb number version

Most options can be disabled with --no-OPTION (Ex: --no-sound turn sound off)

———-

fceux ファミコンエミュレータ(動作は遅いです。->SDL1.2版では動きます。)

インストールはApt経由で可能です。
sudo apt install fceux

X11環境で、Shellから”fceux”で起動できます。
(libSDL2の再構築が必要です。再構築していないと、Illegal instruction エラーになります)

Optionから設定変更できますが、Video configからDriverをSDLにしたりしたけど、4-5fpsぐらいしか出ませんでした。チューニング次第で、もう少しあげられるのだろうか?
キー入力も何とか反応するレベルでした。

user@brain:~$ sudo apt show fceux
[sudo] password for user:
Package: fceux
Version: 2.3.0+dfsg1-3
Priority: optional
Section: games
Maintainer: Joseph Nahmias <jello@debian.org>
Installed-Size: 3,077 kB
Provides: nes-emulator
Depends: libc6 (>= 2.29), libgcc-s1 (>= 3.5), liblua5.1-0, libminizip1 (>= 1.1), libopengl0, libqt5core5a (>= 5.5.0), libqt5gui5 (>= 5.11.0~rc1) | libqt5gui5-gles (>= 5.11.0~rc1), libqt5widgets5 (>= 5.15.1), libsdl2-2.0-0 (>= 2.0.12), libstdc++6 (>= 5.2), zlib1g (>= 1:1.1.4)
Suggests: efp
Homepage: http://fceux.com/
Tag: uitoolkit::gtk, uitoolkit::sdl
Download-Size: 1,014 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: all-in-one NES/Famicom Emulator
 FCE Ultra X [FCEUX] is an emulator of the original (8-bit) Nintendo
 Entertainment System (NES) released under the GNU General Public License
 (GPL).  It includes the following features (and many more):
 .
       * fully customizable color palette rendering engine
       * complete sound emulation (all five channels)
       * support for up to four joystick controllers
       * zapper emulation for the mouse
       * GameGenie emulation
       * accepts compressed (PKZIP, gzip) ROM images
       * TCP/IP network play
       * Lua scripting


user@brain:~$ sudo apt install fceux
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  liblua5.1-0 libminizip1 libopengl0
Suggested packages:
  efp
The following NEW packages will be installed:
  fceux liblua5.1-0 libminizip1 libopengl0
0 upgraded, 4 newly installed, 0 to remove and 1 not upgraded.
Need to get 1,155 kB of archives.
After this operation, 3,647 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel liblua5.1-0 armel 5.1.5-8.1+b3 [83.5 kB]
~
Processing triggers for libc-bin (2.31-13+deb11u11) ...
user@brain:~$



user@brain:~$ fceux --help
Usage is as follows:
fceux <options> filename

Option         Value   Description
--pal          {0|1}   Use PAL timing.
--newppu       {0|1}   Enable the new PPU core. (WARNING: May break savestates)
--input(1,2)   d       Set which input device to emulate for input 1 or 2.
                         Devices:  gamepad zapper powerpad.0 powerpad.1
                         arkanoid
--input(3,4)   d       Set the famicom expansion device to emulate for
                       input(3, 4)
                          Devices: quizking hypershot mahjong toprider ftrainer
                          familykeyboard oekakids arkanoid shadow bworld
                          4player
--gamegenie    {0|1}   Enable emulated Game Genie.
--frameskip    x       Set # of frames to skip per emulated frame.
--xres         x       Set horizontal resolution for full screen mode.
--yres         x       Set vertical resolution for full screen mode.
--autoscale    {0|1}   Enable autoscaling in fullscreen.
--keepratio    {0|1}   Keep native NES aspect ratio when autoscaling.
--(x/y)scale   x       Multiply width/height by x.
                         (Real numbers >0 with OpenGL, otherwise integers >0).
--(x/y)stretch {0|1}   Stretch to fill surface on x/y axis (OpenGL only).
--fullscreen   {0|1}   Enable full screen mode.
--noframe      {0|1}   Hide title bar and window decorations.
--special      {1-4}   Use special video scaling filters
                         (1 = hq2x; 2 = Scale2x; 3 = NTSC 2x; 4 = hq3x;
                         5 = Scale3x; 6 = Prescale2x; 7 = Prescale3x; 8=Precale4x; 9=PAL)
--palette      f       Load custom global palette from file f.
--sound        {0|1}   Enable sound.
--soundrate    x       Set sound playback rate to x Hz.
--soundq      {0|1|2}  Set sound quality. (0 = Low 1 = High 2 = Very High)
--soundbufsize x       Set sound buffer size to x ms.
--volume      {0-256}  Set volume to x.
--soundrecord  f       Record sound to file f.
--playmov      f       Play back a recorded FCM/FM2/FM3 movie from filename f.
--pauseframe   x       Pause movie playback at frame x.
--fcmconvert   f       Convert fcm movie file f to fm2.
--ripsubs      f       Convert movie's subtitles to srt
--subtitles    {0|1}   Enable subtitle display
--fourscore    {0|1}   Enable fourscore emulation
--no-config    {0|1}   Use default config file and do not save
--net          s       Connect to server 's' for TCP/IP network play.
--port         x       Use TCP/IP port x for network play.
--user         x       Set the nickname to use in network play.
--pass         x       Set password to use for connecting to the server.
--netkey       s       Use string 's' to create a unique session for the
                       game loaded.
--players      x       Set the number of local players in a network play
                       session.
--rp2mic       {0|1}   Replace Port 2 Start with microphone (Famicom).
--4buttonexit {0|1}    exit the emulator when A+B+Select+Start is pressed
--loadstate {0-9|>9}   load from the given state when the game is loaded
--savestate {0-9|>9}   save to the given state when the game is closed
                         to not save/load automatically provide a number
                         greater than 9
--periodicsaves {0|1}  enable automatic periodic saving.  This will save to
                         the state passed to --savestate

--loadlua      f       Loads lua script from filename f.
--style=KEY            Use Qt GUI Style based on supplied key. Available system style keys are:

           Windows              Fusion

 Custom Qt stylesheets (.qss files) may be used by setting an
 environment variable named FCEUX_QT_STYLESHEET equal to the
 full (absolute) path to the qss file.

Compiled with SDL version 2.0.14
Linked with SDL version 2.0.14
Compiled with QT version 5.15.2
git URL: https://github.com/TASVideos/fceux.git
git Rev: 65c5b0d2a1c08db75bb41340bfa5534578926944
user@brain:~$

 

———-

fceux 2.2.3 (SDL1.2版) ファミコンエミュレータ(音無しであれば実用的な速度で動作)

Brainでapt経由でインストールできる fceux2.3.0(SDL2.0版)だと動作速度遅すぎて、4-5fpsしかでない&キー入力も怪しいという状況でした。
で、先日同様に動作が重かったopenMSXをSDL1.2でビルドしてみたところ動作が改善したということで、fceuxもSDL1.2で構築してみました。

結果的に音無しでですが、調子のよいときは最大38 fpsぐらい出るときもあります。
これくらいfpsが出れば、十分遊べる範囲です。
(なんらかの条件で遅かったり早かったりします。条件不明。)
(plusaudio起動している確率があがるような気が・・・)
(10fps or 20fps or 40fps)

インストールは、SDl1.2をサポートする最終バージョンである2.2.3のソースを元にビルドします。

公式サイト
https://fceux.com/web/download.html

$ cd
$ mkdir fcmux
$ cd fcmux
$ wget https://github.com/TASEmulators/fceux/archive/refs/tags/fceux-2.2.3.tar.gz
$ tar zxf fceux-2.2.3.src.tar.gz
$ cd fceux-2.2.3

インストールの仕方の詳細は、README-SDLを確認してください。

まずは、ビルドパラメータを修正します。
いったん、以下のように修正してみました。
$ vi SConstruct

また、最適化も追記設定しておきます(“-O2” -> “-O3 -march=native”)

Fceux 2.2.3 のビルドシステムは sconsを利用します(2.3.0からはcmakeです。)。
が、現行のpython3ではなく、python2版のsconsが必要になります。
ですので、以下のようにpython2環境を作成してsconsを導入、ビルドします。。

$ sudo apt install python2
$ curl -sS https://bootstrap.pypa.io/pip/2.7/get-pip.py | sudo python2
$ sudo python2 -m pip install
$ virtualenvvirtualenv -p python2 ~/fceux-py2env
$ source ~/fceux-py2env/bin/activate
$ pip install ‘scons<3.0’
$ cd ~/fcmux/fceux-2.2.3
$ scons -c && rm -rf .scon*           # ビルド情報をクリア
$ scons                    # ビルド(約3時間程度)
$ deactivate

テスト実行
$ cd bin
$ ./fceux

システムにインストール
$ sudo bash
$ source /home/user/fceux-py2env/bin/activate
$ scons install
$ deactivate

これで、/user/local/bin/に実行ファイルがインストールされ、fceuxできるようになります。
もし、JWMのメニューから起動したければdesktopファイルが以下にインストールされているのでこれをベースにアプリのインストール先などを変更してください(Exec,Icon)。
sudo vi /usr/local/share/application/fceux.desktop
Exec=/usr/local/bin/fceux
Icon=/usr/local/share/pixmaps/fceux.png

 

———-

nestopia ファミコンエミュレータ(動作は遅いです。キー入力反応なし?)

インストールはApt経由で可能です。
sudo apt install nestopia

X11環境で、Shellから”nestopia”で起動できます。
(libSDL2の再構築が必要です。再構築していないと、Illegal instruction エラーになります)

設定変更はEmurator -> Configurationからできます。
FPSは出ていませんし、キー入力も受け付けていないように見えます。

user@brain:~$ sudo apt show nestopia
[sudo] password for user:
Package: nestopia
Version: 1.50-2
Priority: optional
Section: games
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Installed-Size: 3,532 kB
Provides: nes-emulator
Depends: libao4 (>= 1.1.0), libarchive13 (>= 3.0.4), libc6 (>= 2.29), libepoxy0 (>= 1.0), libgcc-s1 (>= 3.5), libgdk-pixbuf-2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.31.8), libgtk-3-0 (>= 3.21.4), libjack-jackd2-0 (>= 1.9.10+20150825) | libjack-0.125, libsdl2-2.0-0 (>= 2.0.12), libstdc++6 (>= 5.2), zlib1g (>= 1:1.1.4)
Homepage: http://0ldsk00l.ca/nestopia/
Tag: uitoolkit::gtk, uitoolkit::sdl
Download-Size: 824 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: Nintendo Entertainment System/Famicom emulator
 Nestopia is a cycle-accurate NES/Famicom emulator. It has a high
 compatibility rate and support for many peripherals and input
 devices.
 .
 Features:
    * Save states
    * Movie recording
    * Game rewinding
    * GUI or command line interface
    * Emulation of NTSC, PAL, and Dendy systems
    * Support for NES Zapper games
    * Support for Famicom Disk System games
 .
 Nestopia requires OpenGL 3.2 or later.



user@brain:~$ sudo apt install nestopia
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libarchive13
Suggested packages:
  lrzip
The following NEW packages will be installed:
  libarchive13 nestopia
0 upgraded, 2 newly installed, 0 to remove and 1 not upgraded.
Need to get 1,124 kB of archives.
After this operation, 4,314 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel libarchive13 armel 3.4.3-2+deb11u1 [300 kB]
Get:2 http://archive.debian.org/debian bullseye/main armel nestopia armel 1.50-2 [824 kB]
Fetched 1,124 kB in 3s (350 kB/s)
Selecting previously unselected package libarchive13:armel.
(Reading database ... 53453 files and directories currently installed.)
Preparing to unpack .../libarchive13_3.4.3-2+deb11u1_armel.deb ...
Unpacking libarchive13:armel (3.4.3-2+deb11u1) ...
Selecting previously unselected package nestopia.
Preparing to unpack .../nestopia_1.50-2_armel.deb ...
Unpacking nestopia (1.50-2) ...
Setting up libarchive13:armel (3.4.3-2+deb11u1) ...
Setting up nestopia (1.50-2) ...
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for libc-bin (2.31-13+deb11u11) ...
user@brain:~$



user@brain:~$ nestopia --help
Usage: nestopia [options] [FILE]

Options:
  -f, --fullscreen        Fullscreen mode
  -w, --window            Window mode

  -l, --filter            Video Filter
                          (0=None, 1=NTSC, 2=xBR, 3=HqX, 4=2xSaI, 5=ScaleX)

  -m, --maskoverscan      Mask overscan areas
  -n, --no-maskoverscan   Disable overscan masking

  -o, --stretchfs         Stretch to native resolution in fullscreen mode
  -p, --preserveaspect    Preserve aspect ratio in fullscreen mode

  -s, --scalefactor       Video scale factor (1-4)

  -t, --tvaspect          TV aspect ratio
  -r, --no-tvaspect       Regular aspect ratio

  -u, --unlimitedsprites  Remove sprite limit
  -q, --spritelimit       Enable sprite limit

  -v, --version           Show version information

More options can be set in the configuration file.
Options are saved, and do not need to be set on future invocations.

user@brain:~$

———-

openmsx  MSXエミュレータ(動作は遅い->SDL1.2版で現実的な速度に。)

インストールはApt経由で可能です。
sudo apt-get install openmsx openmsx-catapult openmsx-data cbios

X11環境で、Shellから”openmsx”で起動できます。
(libSDL2の再構築が必要です。再構築していないと、Illegal instruction エラーになります)

また、専用ランチャである”openmsx-catapult”を起動すると、ROM指定を含めてGUIで操作できます(初回起動時は各種チェック処理が入ります)。

とりあえず、ROM起動しましたレベルまでの確認です。やはり遅いです。

user@brain:~$ sudo apt show openmsx
Package: openmsx
Version: 16.0-1
Priority: optional
Section: otherosfs
Maintainer: Bas Wijnen <wijnen@debian.org>
Installed-Size: 6,851 kB
Provides: msx-emulator
Depends: openmsx-data (= 16.0-1), cbios (>= 0.23), libasound2 (>= 1.0.16), libc6 (>= 2.30), libgcc-s1 (>= 3.5), libgl1, libglew2.1 (>= 1.12.0), libogg0 (>= 1.0rc3), libpng16-16 (>= 1.6.2-1), libsdl2-2.0-0 (>= 2.0.12+dfsg1), libsdl2-ttf-2.0-0 (>= 2.0.14), libstdc++6 (>= 6), libtcl8.6 (>= 8.6.0), libtheora0 (>= 1.0), libvorbis0a (>= 1.1.2), zlib1g (>= 1:1.1.4)
Suggests: openmsx-catapult, openmsx-debugger, dmktools
Replaces: openmsx-data (<< 16.0-1)
Homepage: https://openmsx.org
Tag: hardware::emulation, implemented-in::c++, implemented-in::tcl,
 interface::3d, interface::graphical, interface::x11, role::program,
 uitoolkit::sdl, uitoolkit::tk, use::gameplaying, works-with::audio,
 works-with::video, x11::application
Download-Size: 1,720 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: MSX emulator that aims for perfection
 openMSX is an open source MSX emulator that uses a unique emulation model,
 which tries to achieve the highest level of accuracy possible. It allows
 emulating a large number of different MSX machines. Combined with the
 C-BIOS ROM-files that are available in a separate package, you can run game
 ROM-files without the need for non-free BIOS ROM files.


user@brain:~$
user@brain:~$ sudo apt show openmsx-debubber
N: Unable to locate package openmsx-debubberN: Unable to locate package openmsx-debubber
E: No packages found
user@brain:~$
user@brain:~$
user@brain:~$ sudo apt show openmsx-catapult
Package: openmsx-catapult
Version: 16.0-1
Priority: optional
Section: otherosfs
Maintainer: Bas Wijnen <wijnen@debian.org>
Installed-Size: 1,069 kB
Depends: libc6 (>= 2.4), libgcc-s1 (>= 3.5), libstdc++6 (>= 5.2), libwxbase3.0-0v5 (>= 3.0.5.1+dfsg), libwxgtk3.0-gtk3-0v5 (>= 3.0.5.1+dfsg), libxml2 (>= 2.7.4), openmsx (>= 16.0), openmsx (<< 16.1~)
Homepage: http://openmsx.org
Tag: hardware::emulation, implemented-in::c++, interface::graphical,
 interface::x11, role::program, uitoolkit::wxwidgets, x11::application
Download-Size: 376 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: GUI for openMSX
 OpenMSX catapult is a graphical frontend for starting the openMSX emulator.



user@brain:~$ sudo apt show openmsx-data
Package: openmsx-data
Version: 16.0-1
Priority: optional
Section: otherosfs
Source: openmsx
Maintainer: Bas Wijnen <wijnen@debian.org>
Installed-Size: 5,322 kB
Depends: ttf-bitstream-vera
Recommends: openmsx
Homepage: https://openmsx.org
Tag: hardware::emulation, role::app-data, works-with-format::xml
Download-Size: 1,400 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: datafiles for openMSX, an MSX emulator
 openMSX is an open source MSX emulator that uses a unique emulation model,
 which tries to achieve the highest level of accuracy possible.
 .
 This package provides data that openmsx needs to run.



user@brain:~$ sudo apt show cbios

Package: cbios
Version: 0.28-1.1
Priority: optional
Section: misc
Maintainer: Bas Wijnen <wijnen@debian.org>
Installed-Size: 483 kB
Recommends: openmsx | msx-emulator
Homepage: http://cbios.sf.net
Tag: hardware::emulation, role::app-data
Download-Size: 30.1 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: open source MSX BIOS roms
 C-BIOS is an open source BIOS for MSX computers.
 .
 C-BIOS can be shipped with MSX emulators so they are usable
 out-of-the-box. It comes readily configured for the openMSX
 emulator.



user@brain:~$ sudo apt-get install openmsx openmsx-catapult openmsx-data cbios
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libglew2.1 libnotify4 libsdl2-ttf-2.0-0 libtcl8.6 libwxbase3.0-0v5
  libwxgtk3.0-gtk3-0v5 ttf-bitstream-vera
Suggested packages:
  glew-utils tcl8.6 openmsx-debugger dmktools
Recommended packages:
  notification-daemon
The following NEW packages will be installed:
  cbios libglew2.1 libnotify4 libsdl2-ttf-2.0-0 libtcl8.6 libwxbase3.0-0v5
  libwxgtk3.0-gtk3-0v5 openmsx openmsx-catapult openmsx-data
  ttf-bitstream-vera
0 upgraded, 11 newly installed, 0 to remove and 1 not upgraded.
Need to get 9,423 kB of archives.
After this operation, 35.7 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel cbios all 0.28-1.1 [30.1 kB]
~

Get:2 http://archive.debian.org/debian bullseye/main armel libglew2.1 armel 2.1.0-4+b1 [159 kB]
Get:3 http://archive.debian.org/debian bullseye/main armel libnotify4 armel 0.7.9-3 [21.7 kB]
Get:4 http://archive.debian.org/debian bullseye/main armel libsdl2-ttf-2.0-0 armel 2.0.15+dfsg1-1 [15.4 kB]
Get:5 http://archive.debian.org/debian bullseye/main armel libtcl8.6 armel 8.6.11+dfsg-1 [894 kB]
~
Processing triggers for fontconfig (2.13.1-4.2) ...
user@brain:~$



user@brain:~$ openmsx --help
openMSX 16.0
============

usage: openmsx [arguments]
  an argument is either an option or a filename

  this is the list of supported options:
    --help, -h      Shows this text
    --version, -v   Prints openMSX version and exits
    -cart, -carta,
    -cartb, -cartc,
    -cartd          Insert the ROM file (cartridge) specified in
                    argument
    -cassetteplayer Put cassette image specified in argument in
                    virtual cassetteplayer
    -cda            Use iso image in argument for the CDROM extension
    -command        Run Tcl command at startup (see also -script)
    -control        Enable external control of openMSX process
    -diska, -diskb  Insert the disk image specified in argument
    -ext, -exta,
    -extb, -extc,
    -extd           Insert the extension specified in argument
    -hda            Use hard disk image in argument for the IDE or
                    SCSI extensions
    -ips            Apply the given IPS patch to the ROM or disk
                    image specified in the preceding option
    -laserdisc      Put LaserDisc image specified in argument in
                    virtual LaserDisc player
    -machine        Use machine specified in argument
    -replay         Load replay and start replaying it in view only
                    mode
    -romtype        Specify the rom type for the ROM image specified
                    in the preceding option
    -savestate      Load savestate and start emulation from there
    -script         Run extra startup script
    -setting        Load an alternative settings file
    -testconfig     Test if the specified config works and exit

  this is the list of supported file types:
    cas, wav        Cassette image, raw recording or fMSX CAS image
    di1, di2, dmk,
    dsk, fd1, fd2,
    xsa             Disk image
    mx1, mx2, ri, rom ROM image of a cartridge
    ogv             LaserDisc image, Ogg Vorbis/Theora
    omr             openMSX replay
    oms             openMSX savestate
    tcl             Extra Tcl script to run at startup
user@brain:~$

なお、Illegal instructionエラーを調査する段階で、ソースからのコンパイルも試してみましたが同じエラーになりました。ちなみにBrainux上でのコンパイルには20時間以上かかりました(マジ)。

 

———-

openmsx 0.15 (SDL1.2版) インストール     2025/12/22追記

いろいろアプリケーションをインストールしてみた傾向から、やはりSDL2.0が重いのではないか、ということでSDL2.0移行前のSDL1.2を使っている最後のバージョンである「openMSX0.15」をソールからビルトインストールして上書きインストールしてみます。

$ sudo apt-get install openmsx openmsx-catapult openmsx-data cbios

$ cd
$ mkdir openmsx15
$ cd openmsx15
$ tar zxvf openmsx-0.15.0.tar.gz
$ cd openmsx-0.15.0

$ sudo apt install python-dev   # openmsx 0.15での./configureの実行に必要
$ sudo apt install libasound2-dev
$ sudo apt install libglew-dev
$ sudo apt install libogg-dev
$ sudo apt install libtheora-dev
$ sudo apt install libvorbis-dev
$ sudo apt install libsdl2-dev
$ sudo apt install libsdl2-ttf-dev
$ sudo apt install tcl tcl8.6-dev

$ ./configure  # ビルドに必要なライブラリをチェック。不足している場合は追加

user@brain:~/openmsx15/openmsx-0.15.0$ ./configure
Using Python: python
Probing target system...
Creating derived/arm-linux-opt/config/probed_defs.mk...
Creating derived/arm-linux-opt/config/systemfuncs.hh...

Found libraries:
  ALSA:             version 1.2.4
  GLEW:             version unknown
  libogg:           version unknown
  libpng:           version 1.6.37
  libtheora:        version unknown
  libvorbis:        version unknown
  OpenGL:           version 4.6
  SDL:              version 1.2.15
  SDL_ttf:          version 2.0.11
  Tcl:              version 8.6.11
  zlib:             version 1.2.11

Components overview:
  Emulation core:   yes
  GL renderer:      yes
  Laserdisc:        yes
  ALSA MIDI:        yes

Customisable options:
  Install to        /opt/openMSX
  (you can edit these in build/custom.mk)

All required and optional components can be built.

If the detected libraries differ from what you think is installed on this system, please check the log file: derived/arm-linux-opt/config/probe.log

$ make        #Brainの実機ビルトで約15時間
$ sudo make install

起動は、ターミナル上で、「openmsx &」 か、
一度aptでインストール済であれば、JWMメニューから、「games -> openMSX」で起動です

なお注意点として、インストール先が違うことです。
aptでインストールしたopenmsx(バージョンは16.0)のインストール先:
 /usr/bin/openmsx
自ビルドしたopenmsx(0.15)のインストール先(シンボリックリンク):
 /usr/local/bin/openmsx

Path優先順位は、/usr/local/bin/ -> /usr/bin/なので、自ビルドしたほうが優先順位が高いですが、openmsx-catapultでのopenmsxの場所を変えないと、aptでインストールしたopenmsx16.0が起動してしまう場合があるので、気を付けてください。
(不要であれば、/usr/bin/openmsx を削除でもいいと思います。)

起動押したら、カーソルを左上にもっていくと出てくる menuをクリックすると、
メニューが開いて、romの指定などができます。

おすすめは、
「misc Settings->Minimal Frameskip: 0」
「misc Settings->Maximal Frameskip: 30」
「Sound Settings->Resampler: fast (but low quality)」
あたりを設定しておくと、音ありでもそれなりの速度で動いてくれます。

なお、USBサウンドデバイスを付けてい場合は、別途pulseaudioを起動しておいてください。
なぜか安定して音が鳴ります。
pulseaudio –start
openmsx
pulseaudio -k

標準では、CBIOSで起動しますが、
必要に応じて、MSX実機から取得したのBIOSを
/opt/openMSX/share/systemromsにコピーすればBASICやDiskも使えるようになります。
(ファイルのチェックサムで識別しているようで、ファイル名は任意だそうです。)

コピーしたら、menu -> hardware -> change machine で抜き出した機種名を選んでください。

詳しい説明はこちら
https://openmsx.org/manual


2026/01/05追加
現在、CPU最適化オプションを付けて再ビルド中
結果は15時間後・・・

$ cd
$ cd openmsx15/openmsx-0.15.0
$ cd build
$ vi main.mk

CXXFLAGS:=

CXXFLAGS:=-O3 -match=native

$ make clean
$ make
$ sudo make install

ビルドに16-17時間かかりました。
結果として、心持ち速度が上がった気がします。

 

———-

fMSX MSXエミュレータ(MSX1/2/2+)

OpenMSXではSDL2を使っているせいか、動作が遅かったのですが、
SDL2を使っていないMSXエミュレータを探したところ、fmsxを見つけました。
これならワンチャン!ということで試してみます。

fMSX 6.0

インストールソールからのビルドになります。
必要に応じて、ライブラリの追加が必要がある場合があります。

$ cd
$ mkdir fmsx
$ cd fmsx
$ wget https://fms.komkon.org/fMSX/fMSX60.zip
$ unzip fMSX60.zip
$ cd fmsx
$ cd fMSX/Unix
$ sudo apt install g++ build-essential libpulse-dev
$ make

ただ、このままでは、build最後のリンク時に大量のエラーになります。

/usr/bin/ld: ../../EMULib/Sound.o:(.bss+0x230): multiple definition of ARGV'; ../../EMULib/EMULib.o:(.bss+0x218): first defined here
/usr/bin/ld: ../../EMULib/Sound.o:(.bss+0x234): multiple definition ofARGC'; ../../EMULib/EMULib.o:(.bss+0x21c): first defined here

このエラーは、簡単に言うと、”ARGC”,”ARGV”の変数が複数のソースで定義されており、
最後のリンク時に重複していてビルドできないといった感じの意味なります。

ソールをgrepで調べたところ、ARGC、RGCGは以下のファイルに存在していました。

user@brain:~/fmsx$ grep -r “ARG” *
EMULib/Unix/LibUnix.c: if(ARGC&&ARGV)
EMULib/Unix/LibUnix.c: P=strrchr(ARGV[0],’/’);
EMULib/Unix/LibUnix.c: ClassHint.res_name = P? P+1:ARGV[0];
EMULib/Unix/LibUnix.c: ClassHint.res_class = P? P+1:ARGV[0];
EMULib/Unix/LibUnix.c: XSetCommand(Dsp,Wnd,ARGV,ARGC);
EMULib/Unix/LibUnix.c: if(ARGC&&ARGV)
EMULib/Unix/LibUnix.h:extern int ARGC;
EMULib/Unix/LibUnix.h:extern char *ARGV;
fMSX/fMSX.c:int ARGC; /* argc/argv from main (#ifdef UNIX) */
fMSX/fMSX.c:char **ARGV;
fMSX/fMSX.c: ARGC = argc;
fMSX/fMSX.c: ARGV = argv;

これで定義部分を抽出すると・・・

EMULib/Unix/LibUnix.h:
int ARGC;
char *ARGV; grep: fMSX/Unix/fmsx: binary file matches

fMSX/fMSX.c:
extern int ARGC; /* argc/argv from main (#ifdef UNIX) */
extern char **ARGV;

これを見ると、
各ソースファイルにインクルードされるヘッダファイル(LibUnix.h)で変数を定義
メインとなるfMSX.cでは変数外部参照になっていました。

これでは、ヘッダファイル(LibUnix.h)をインクルードしている各ソースファイルごとに変数が定義されることになるので、以下のように定義と外部参照を逆に変更します。

EMULib/Unix/LibUnix.h:
extern int ARGC;
extern char *ARGV


fMSX/fMSX.c:
int ARGC; /* argc/argv from main (#ifdef UNIX) */
char **ARGV;

これで、再度コンパイルすると、ビルドできました。
$ make clean
$ make

出来た実行ファイルは、。~/fmsx/fMSX/Unix/fmsx です。
~/fmsx/fMSX/Unix/の下に、MSXのBIOSROMを保存します(別フォルダ指定する場合は)。
MSX.ROM MSX2.ROM MSX2EXT.ROM MSX2P.ROM MSX2PEXT.ROM
FMPAC.ROM DISK.ROM

これで、fmsxが起動します(ちょっと遅く感じたので-skip 50オプション追加)。
./fmsx -skip 50 game.rom

ビルド時にPlusaudioをリンクされていますが現状Pulseaudioの設定していないので音は出ないようですが、問題ないレベルの速度は出ているようです。
(PulseAudio有効にしましたが音なりませんでした。fMSX v5.1でPulseAudioに切り替えしているみたいなので、それより前のバージョンなら音が鳴るかもしれません。)

———–

dosbox グラフィックス、サウンド、DOS を備えた x86 エミュレータ(Brainでは厳しい)

公式サイト:https://www.dosbox.com/DOSBoxManual.html

DOSBoxは、Tandy/Hercules/CGA/EGA/VGA/SVGAグラフィック、サウンド、そしてDOSを搭載したx86エミュレータです。DOSをサポートしていないプラットフォームでも古いDOSゲームを実行できるように設計されています。

以下のレガシーサウンドデバイスがエミュレートされます:PCスピーカー、Creative CMS/Gameblaster、Tandy 3 voice、Adlib、Sound Blaster Pro/16、Disney Soundsource、Gravis Ultrasound。MPU-401はホストに転送されます。

Brainuxでx86のDOSをエミュレートします。
ただ、かなり遅いです。
フレームレートスキップ設定して、CPUサイクルを最大にして、音をなくして、
やっとアクションを伴わないパズルゲームなら、何とか動かせるかも・・・
といったレベルです(ソフトにもよりますが)。

なお、一度dosboxを起動すると、~/.dosbox/dosbox-0.74-3.conf が作成されますので、
このファイルを編集することでいろいろ定義できます。

例)
[render]
frameslip=30

[cpu]
cycles=max

[mixer]
nosounf=true

[autoexec]
mount c ~/dos
c:

[autoexec]にて、上記のように記載すると、
DOSBOX起動時にBranix上の~/dos ディレクトリを
Cドライブとしてマウントして、Cドライブへの移動まで実行してくれます。

インストールはApt経由で可能です。
sudo apt install dosbox

快適な実行は、通常のパソコンレベルのCPU性能がないと厳しいですね。
多分もっと軽くする設定があると思うけど今はこれが精いっぱい。

(参考)
https://www.dosgamesarchive.com/download/bob-and-his-amazing-journey-home

 

———–

Neko Project 2 kai PC9801/9821 エミュレータ

公式サイト:https://domisan.sakura.ne.jp/article/np2kai/np2kai.html

Neco Project をRaspberry Piに移植したものを0.86化していろいろ改善したバージョンとのことです。
このバージョンではSDL1.2を利用したX11ポートが利用できるので、こちらをビルドしてみました。

起動は、xnp2kai-sdl1です(PC9801エミュレート、X11ポートのSDL1バージョン)

結果として音無し設定あれば、i286 5-7Mhz前後の速度が出るようです。(Autoframe設定)
(Device->Sound option->Driverから無効にできます。)
(音ありだと速度が安定せずに全体的に遅くなるので無効推奨です。要pulseAudio)

BrainのCE版にもNP2がありますが、そちらのほうがBrainに特化した修正がされているようで動きもいいです。がこちらのX11版ではUSBキーボード、マウスが使えるのがメリットです。バーチャルキーボードもありますが、X11版にはカーソルキーをテンキーにする機能はないのでそこは残念。

インストールはソースからのビルドになります。
必要に応じて、ライブラリの追加が必要がある場合があります。

$ cd
$ mkdir np2
$ cd np2
$ git clone https://github.com/AZO234/NP2kai.git
$ cd NP2kai
$ sudo apt install git cmake ninja-build build-essential libx11-dev libglib2.0-dev libgtk2.0-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libusb-1.0-0-dev libfreetype-dev libfontconfig1-dev libssl-dev
$ mkdir build
$ cd build
$ cmake .. -D BUILD_X=ON -D USE_SDL2=OFF -D BUILD_I286=ON
$ make
$ sudo make install

これで、xnp2kai-sdl1 がビルドされます。
(この方法だと一緒にxnp21kai-sdl1も作成されるようです。)
cmakeのオプションについては、githubのページに詳細が書かれています。
xnp2kai-sdl1   pc9801エミュレータ(CPU i286)
xnp21kai-sdl1  pc9821エミュレータ(CPU i386以上)

Brain実機ビルドには全部で4-5時間かかりますのでご注意を。

xnp2kai-sdl1では、設定ファイルは、以下にあります。
xnp2kai_sdl1 ~/.config/xnp2kai/
xnp21kai_sdl1 ~/.config/xnp21kai/

フォルダがない場合は、一度xnp2kai-sdl1、xnp21kai-sdl1を起動すれば
作成されると思います。
このままだと、画面のフォントが文字化けするのでフォントの用意が必要です。
PC9801から吸い出したFONT.ROMを使ってもいいのですがない場合は、
Brainuxにインストールしたフォントからも生成できます。

cd ~/.config/xnp2kai/
sudo apt install fonts-ipafont
ln -s /usr/share/fonts/opentype/ipafont-gothic/ipag.ttf default.ttf
rm font.tmp

これで、xnp2kai-sdl1を起動すると、最初にNP2用のフォントが生成されます。

なお、設定ファイルは、xnp2kaircになります。

(2026/01/04追記)
試しに、BrainのCPUに最適化したビルドをやってみます。

/home/user/np2/NP2kai/build/CMakeFiles/xnp2kai_sdl1.dir/flags.make

C_FLAGS = -Wno-incompatible-function-pointer-types -Wno-int-conversion -O2 -g -DNDEBUG

C_FLAGS = -Wno-incompatible-function-pointer-types -Wno-int-conversion -O3 -march=native -DNDEBUG

CXX_FLAGS = -Og -g -Wall -DNDEBUG

CXX_FLAGS = -O3 -march=native -Wall -DNDEBUG

この後、一度Build状況を初期化してmakeします(xnp2kai-sdl1だけで2.5時間くらい)
cd ~/np2/np2kai/build
make clean
make xnp2kai_sdl1
./xnp2kai-sdl1

結果として、ちょびっとだけCPUクロックが上がりました(0.1-0.5Mhzくらい?)
不具合が起こる可能性もあるので、もう少し触ってみます。

 

———-

px68k X68000エミュレータ

ソース入手先:GitHub – hissorii/px68k: Portable SHARP X68000 Emulator

起動: ./px68k

X68000エミュレータです。

速度はかなり遅いです。
Human68kを起動して、コマンド操作するくらいならかろうじて可能かなといったレベルです。(マウス操作が実装されていないっぽいので注意)
Human68kの起動+ドライバ組み込み完了までで、リセットから20秒弱といったところです。
あとBrainの画面解像度だと縦の解像度がちょっと足りません。

メモリ設定を2MB以上にすれば、Nemesis改デモの実行や、
TDQ1でのタイトル画面までは表示できました。
(NumlockがPX68Kでは、10キーのCLRに割り当たっているので、10キー付きのUSBキーボードか、スクリーンキーボードを使う必要があるかもしれません。)

メニューは、F12キーで開きます。
ここで、リセットや、FD,HDDの設定、FPS設定や、サウンド設定が可能です。
サウンド設定は無効化推奨です。

なお、標準ではメモリ1MBで稼働しますので、メモリ設定を変更するには、
Human68K3.0.2を起動して、switchコマンドで、MEMORYを1024->4096KBに変更できます。設定変更したら「終了」->Yで設定が保存されます。

上記について詳しくは、readme.txtに記載があります。

 

インストール:ソースを入手してインストール
 (ビルド時に最適化オプションを追加しています。)

$ cd
$ mkdir px68k
$ cd px68k
$ git clone https://github.com/hissorii/px68k.git
$ cd px68k
$ sudo apt install git cmake ninja-build build-essential libx11-dev libglib2.0-dev libgtk2.0-dev libsdl2-dev libsdl2-mixer-dev libsdl2-ttf-dev libsdl1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev

$ vi Makefile
CDEBUGFLAGS = -g -O0 -fno-strict-aliasing

CDEBUGFLAGS = -O3 -march=native -fno-strict-aliasing

ifeq ($(shell uname -m),armv6l)
MOPT=
else
MOPT= -m32
endif

ifeq ($(shell uname -m),armv6l)
MOPT=
else
MOPT=
endif

$ make #実機ビルト約40分程度

起動前にX68000のBIOS ROM、フォントファイルを~/.keropi に 保存します。
・iplrom.dat   - X68000 BIOS
・cgrom.dat   - Font file (cgrom.tmpでも可)

biosROMについては、シャープから公開されたものがこちらから入手可能です。
(今回はX68000 EXPERT用のものをiplrom.datにリネームして使いました)
fontfileについては、実機から入手するか、疑似的に作成する必要があります。
(フォントファイルがない場合は PC 上で WinX68k 高速版を実行すると、
cgrom.tmp が生成されますので、それを使ってくださいとのことです。)

起動
$ ./px68k

  

———-

Views: 397

カテゴリー: Brain, Brainux, debian, Linux, 電子手帳 | コメントする

電子辞書Brainをいじる (4) Brainuxでアプリをインストールして遊ぶ

Brainuxにアプリをインストール

インストール方法のパターン

Brainuxにアプリをインストールには、いくつか方法があります。

  • Debinのレポジトリにあるソフトウェアの場合
    aptコマンドでダウンロードからインストールまで実施できます。

    apt show <パッケージ名>     パッケージの詳細を表示します。
    sudo apt install <パッケージ名>  パッケージをインストールします。
    dpkg -L <パッケージ名>      インストールパッケージのファイルリストを確認

apt search <パッケージ名の一部> パッケージ名やキーワードを検索します。
                (既にインストールされているかも確認できます。)

  • ソースからインストールするパターン
    ソースからインストールする場合は、基本的にドキュメントに書かれている方法でビルド、インストールします。
    ただし、ソース内にビルドを自動化するスクリプトがあれば、自動化したビルドが可能になります。

    「Makefile」がある場合は、make & sudo make install でインストールします。

    「configure」スクリプトが用意されている場合、スクリプトを実行してから、make & sudo make installでインストールします。

    Imakefile」がある場合は、xmkmf -a & make & sudo make install でインストールします。
    (環境に合わせてmakefileを作成してくれます。)

    「CMakeLists.txt」がある場合は、mkdir build & cd build & cmake .. & cmake –build . & cmake –install でインストールします。

    「*.cbpファイル(Code::Blocks IDE project、workspace files)がある」場合は、
    cbp2make -in Bomberman.cbp -out Makefile & make でビルドできます。
    インストールは、make installでできるかもしれませんが、基本的にアプリによります。


    ——————- 

(注意) 2025/12/27追記
なお本ブログでのインストール記事でのパッケージ導入ですが、
アプリインストール時点で不足しているものについて記載しています。
アプリのインストールする順番によっては、
必要なパッケージが記載されていない場合もありますので、
その場合は別途別途導入してください。

インストールするパッケージ名がわからない場合は、googleなどの検索で、
“apt <コマンド名>”や、”apt <ライブラリ名>”などで検索で探せる場合があります。
ソースからのビルドする場合は、”<ライプラリ名>-dev” というパッケージを
導入すればいいことが多いです。

インストール可能な正しいパッケージ名を調べるには、
“apt search <パッケージ名の一部 or キーワード>” で確認することができます。
また、apt search コマンドでは既に導入済かどうかについても確認できます。

——————-

apt等でいろいろアプリをインストールしてみます

実行成功

FDclone        CUI上で利用できるファイル&ディレクトリ管理ツール

xtightvncviewer    X11上で稼働するvncviewer

rdesktop       RDPプロトコルに対応した接続クライアント

xfreerdp2       RDPプロトコルに対応した接続クライアント

gngb         GAME BOY エミュレータ

openmsx       MSXエミュレータ(SDL1.2版で現実的な速度に。)[2025/12/22追加

fmsx        MSXエミュレータ(MSX1/2/2+) [2025/12/20追加]

dosbox       グラフィックス、サウンド、DOS を備えた x86 エミュレータ(Brainでは厳しい)

Neko Project 2 kai  PC9801/9821 エミュレータ

px68k       X68000エミュレータ(かなり遅いです。) 

libSDL2       ハードウェアへの低レベルアクセスを提供する開発ライブラリ

fceux 2.2.3 (SDL1.2版) ファミコンエミュレータ(音無しであれば実用的な速度で動作)

mplayer/smplayer  音楽・動画再生ツール

xpenguins     小さなペンギンがウィンドウ上を動き回るデスクトップマスコットアプリ

xmkmf       Imakefile から Makefile を生成するためのツール

cmake       CMakeLists.txtからMakefileを生成するためのツール

cbp2make     Code::Blocks IDE project (.cbp)からMakefileを生成するためのツール

oneko       X11猫(マウスカーソルを追いかける猫を表示するデスクトップマスコット)

macopix      アクティブウィンドウに座るマスコットプログラム

Emi Clock      美少女コスプレ時計 Emi Clock

xhime        常駐姫ちゃん (デスクトップマスコット的なアニメーションソフト)

xfishtank      X のルートで様々な熱帯魚が泳ぐ壁紙上の水槽が楽しめます。

xfireworks     Xのルートウィンドウ上で花火が打ちあがります

XMascot      Xの画面上で揺れるマスコットを表示する プログラム (2025/12/14追加)

xdesktopwaves   Xのルートウィンドウ上で水の波をシミュレーション

dclock       X Window System 向けの柔軟な表示設定が可能なデジタル時計

mxclock      絵柄が綺麗な時計です.

SunClock       時刻と地理データを表示可能な可愛い時計

Xantfarm     X11用のシンプルなアリ農場

XMangekyou    X11で動く万華鏡です

Xshodow     「書道」のアプリケーションです.

 

動作未確認(動作遅延、動かない等)

remmina       複数の接続に対応した統合クライアント(動作はするが接続できない)

higan        マルチゲームコンソールエミュレータ(動作はするが遅すぎる)

fceux         ファミコンエミュレータ(動作は遅いです。)

nestopia       ファミコンエミュレータ(動作は遅いです。キー入力反応なし?)

java          Java VMの開発実行環境 (非常に遅い)

 

アプリケーション紹介

FDclone CUI上で利用できるファイル&ディレクトリ管理ツール

FDcloneは、古のDOS用のフリーツールであるFD(File&Directory)をUNIX ベースの OSに移植したものです。(FDclone公式ページ)
FDcloneはCUI上で利用できるファイル&ディレクトリ管理ツールということで、
Winowsで言えば、エクスプローラのような感じに使えます。

コマンドやファイル名を直接入力しなくても、ディレクトリの移動やファイルの操作支援ができるので、キー入力に工夫が必要なBrainuxにはピッタリなツールです。

Brainuxでは、apt経由で導入できます。

sudo apt install fdclone

事前にSDカードの文字化け対策をしておけば、/boot以下でも日本語文字も正しく表示できます。
(Brainux起動時にshellで起動した場合は、fbtermを起動してからFDcloneを起動すれば、日本語ファイル名も正しく表示されます。)

シフトを押しながらEで、fdclone自体の設定変更や確認ができます。
キー割り当てや、ランチャ、アーカイバ設定なども可能です。

「内部設定」のおすすめは、以下の通りです。

SORTTYPE: 名前順(昇り順), 直前のソート形式を保持
SORTTREE: 有効
WRITEFS: 使用禁止
LANGUAGE: 英語(English)ではFDcloneのメッセージが英語になります。ここをUTF-8に変更するとメッセージが日本語になりますが日本語表示できない環境では文字化けするので注意。
FNAMEKCODE: UTF-8

その他キー割り当てや、拡張子にあった実行コマンド等いろいろチューニング可能です。
変更したら、保存から「Overwrite」を実行して設定を保存します。

チューニング次第で何でもできるようになるツールですので、おすすめです。

なお、「unzip」や「lhasa」、「nkf」をaptでパッケージをインストールすることで、
zipやlzh内ファイルの解凍なしでの参照(決定[Enter])や解凍(u)、
UTF-8以外の文書ファイルの表示等(ファイル選択してx、先頭に”nkf “と入れて実行)
も可能になります。

sudo apt install unzip lhasa nkf

cabファイルについては、
別途「cabextract」パッケージをaptでインストールすれば
cabextract 展開したいファイル名.cab
で解凍できるようになります(-l オプションでリスト表示)。

cabファイルへの変換もしたいのであれば、「gcab」パッケージをaptでインストールすれば、gcabコマンドで圧縮(-c)、解凍(-x)、リスト表示(-t or -l)ができるようになります。

sudo apt install cabextract

user@brain:~$ sudo apt show fdclone
[sudo] password for user:
Package: fdclone
Version: 3.01j-1
Priority: optional
Section: shells
Maintainer: Elías Alejandro Año Mendoza <ealmdz@gmail.com>
Installed-Size: 1,103 kB
Depends: libc6 (>= 2.28), libtinfo6 (>= 6)
Homepage: http://hp.vector.co.jp/authors/VA012337/soft/fd/
Tag: interface::shell, interface::text-mode, role::program,
 scope::application, uitoolkit::ncurses, use::browsing, use::organizing,
 works-with::file
Download-Size: 504 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: console-base lightweight file manager
 FD (FD represents "File and Directory") is an easy-to-use
 file management tool for Un*x newbies.  As its name shows,
 this is a rewrite from scratch - the original version was written
 by Atsushi Idei for MS-DOS(tm) and once very popular in Japan.
 Messages are available either in English or in Japanese.

user@brain:~$ sudo apt install fdclone
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  fdclone
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 504 kB of archives.
After this operation, 1,103 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel fdclone armel 3.01j-1 [504 kB]
Fetched 504 kB in 2s (287 kB/s)
Selecting previously unselected package fdclone.
(Reading database ... 46263 files and directories currently installed.)
Preparing to unpack .../fdclone_3.01j-1_armel.deb ...
Unpacking fdclone (3.01j-1) ...
Setting up fdclone (3.01j-1) ...
Processing triggers for man-db (2.9.4-2) ...
user@brain:~$

xtightvncviewer X11上で稼働するvncviewer

昔から使われている画面転送プロトコルであるVNCのクライアントです。
X11上で動きます。

VNCは、今思うと昔のうちのホームページでメイン張ってたコンテンツでした。

もう25年も前の記事・・・・当時はかなりのキワモノ扱いのソフトウェアでした。
リナザウとかW-Zero3とかPSPとかでもクライアントを動かして遊んでました。なつかしい。

さっそく、Brainuxで動かせるかを試します。
インストールはApt経由で可能です。

sudo apt install xtightvncviewer

今回は、接続先としてUltraVNCを導入した環境に接続しています。

xtightvnc <接続先IP>:<DISPLAY番号>

例)
xtightvnc 192.168.29.47:1
<パスワード入力>

とりあえず、接続は可能です。
速度は、正直遅いです。

なお、VNCプロトコルには音声リダイレクトの機能はない(はず)なので、
音声リダイレクトをしたい場合は、Plusaudioとかを使うしかないと思います(未確認)。

user@brain:/etc/apt$ sudo apt show xtightvncviewer
Package: xtightvncviewer
Version: 1:1.3.10-3
Priority: optional
Section: x11
Source: tightvnc
Maintainer: Debian Remote Maintainers &lt;debian-remote@lists.debian.org&gt;
Installed-Size: 171 kB
Provides: vnc-viewer, vncviewer
Depends: libc6 (&gt;= 2.28), libjpeg62-turbo (&gt;= 1.3.1), libx11-6, libxaw7, libxext6, libxmu6, libxt6, zlib1g (&gt;= 1:1.1.4)
Recommends: xfonts-base
Suggests: ssh, tightvncserver
Homepage: https://www.tightvnc.com
Tag: interface::graphical, interface::x11, network::client, role::program,
 uitoolkit::athena, use::login, use::viewing, x11::application
Download-Size: 87.2 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: virtual network computing client software for X
 VNC stands for Virtual Network Computing. It is, in essence, a remote
 display system which allows you to view a computing `desktop' environment
 not only on the machine where it is running, but from anywhere on the
 Internet and from a wide variety of machine architectures.
 .
 It is implemented in a client/server model. This package provides a client
 for X, with this you can connect to a vncserver somewhere in the network
 and display its content in a window. There are vncserver available for other
 operating systems.
 .
 The difference between the xtightvncviewer and the normal vncviewer is the
 data encoding, optimized for low bandwidth connections. If the client do not
 support jpeg or zlib encoding it can use the default one. Later versions of
 xvncviewer (&gt; 3.3.3r2) support a new automatic encoding that should be equally
 good as the tightvnc encoding.
 
user@brain:/etc/apt$ sudo apt install xtightvncviewer
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Suggested packages:
  tightvncserver
Recommended packages:
  xfonts-base
The following NEW packages will be installed:
  xtightvncviewer
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 87.2 kB of archives.
After this operation, 171 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel xtightvncviewer armel 1:1.3.10-3 &#91;87.2 kB]
Fetched 87.2 kB in 1s (64.1 kB/s)
Selecting previously unselected package xtightvncviewer.
(Reading database ... 44210 files and directories currently installed.)
Preparing to unpack .../xtightvncviewer_1%3a1.3.10-3_armel.deb ...
Unpacking xtightvncviewer (1:1.3.10-3) ...
Setting up xtightvncviewer (1:1.3.10-3) ...
update-alternatives: using /usr/bin/xtightvncviewer to provide /usr/bin/vncviewer (vncviewer) in auto mode
Processing triggers for man-db (2.9.4-2) ...
 
user@brain:/etc/apt$ apt list | grep xtightvncviewer
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
xtightvncviewer/oldstable,now 1:1.3.10-3 armel &#91;installed]
 
user@brain:~$ xtightvncviewer 192.168.29.47:1
Connected to RFB server, using protocol version 3.3
Performing standard VNC authentication
Password:
Authentication successful
Desktop name "win10-z800 ( 192.168.29.47 )"
VNC server default format:
  32 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 255 green 255 blue 255, shift red 16 green 8 blue 0
Warning: Cannot convert string "-*-helvetica-bold-r-*-*-16-*-*-*-*-*-*-*" to type FontStruct
Using default colormap which is TrueColor.  Pixel format:
  16 bits per pixel.
  Least significant byte first in each pixel.
  True colour: max red 31 green 63 blue 31, shift red 11 green 5 blue 0


user@brain:~$ xtightvncviewer --help
TightVNC Viewer version 1.3.10

Usage: xtightvncviewer [<OPTIONS>] [<HOST>][:<DISPLAY#>]
       xtightvncviewer [<OPTIONS>] [<HOST>][::<PORT#>]
       xtightvncviewer [<OPTIONS>] -listen [<DISPLAY#>]
       xtightvncviewer -help

<OPTIONS> are standard Xt options, or:
        -via <GATEWAY>
        -shared (set by default)
        -noshared
        -viewonly
        -fullscreen
        -noraiseonbeep
        -passwd <PASSWD-FILENAME> (standard VNC authentication)
        -encodings <ENCODING-LIST> (e.g. "tight copyrect")
        -bgr233
        -owncmap
        -truecolour
        -depth <DEPTH>
        -compresslevel <COMPRESS-VALUE> (0..9: 0-fast, 9-best)
        -quality <JPEG-QUALITY-VALUE> (0..9: 0-low, 9-high)
        -nojpeg
        -nocursorshape
        -x11cursor
        -autopass

Option names may be abbreviated, e.g. -bgr instead of -bgr233.
See the manual page for more information.
user@brain:~$

rdesktop RDPプロトコルに対応した接続クライアント

rdesktopは、Windowsで使われているリモートコントロールサービスであるRemoteDesktop(RDP Service)に接続するためのツールです。
接続先でRDPを有効にするにはWindowsはPROエディションが必要です。

インストールはApt経由で可能です。

sudo apt install rdesktop

接続先でRDPを有効になっていれば、
たとえば、以下のコマンドで接続できます。

rdesktop -k en -x lan -a 8 -f <接続先IPアドレス> -u <ログインユーザ名> -p <Password>

例)
rdesktop -k en -x lan -a 8 -f 192.168.29.43 -u user -p userpass

-k :キーボードレイアウト(en)
-x :ネットワークモード(RDP5 experience)を指定します。
-a :色深度(32,24,16,8)
-f :フルスクリーンモード
-u :リモートデスクトップ(Windows)のユーザー名
-p :上記ユーザのWindowsパスワード
パスワード文字列に”!”などがある場合は、パスワード全てをシングルクォーテーションで括ります。

-f でフルスクリーン表示したときのBrainのキーボードでの解除は以下の同時押しです
≫の上向き + 文字切り替え + 決定   (Ctrl + Alt + Enter に相当)
それ以外だと、スタートメニューから電源->切断でもRDP接続を切断できます。

あと、usbサウンドデバイスを付けているのであれば、以下のオプションを追加すると音声のリダイレクションも可能でした。
ただ、画面描画が激しい状態だと音がとぎれてましたので、この辺はマシンパワーとかの取り合いをしている感じでした。なので音楽再生付きでyoutube鑑賞はムリゲーです。
どっちかだけなら何とかなるかもしれません。

-r sound:local:alsa

rdesktopは少し古いいツールなので、
Windows10や11に接続する際にNLA関係でエラーがでて接続できないときがあります。
その時は「RDP NLA」とかで検索して、Windows側で対応してみてください。
もしくは、次に試す「freerdp2」のほうを試してみてください。

user@brain:~$ sudo apt show rdesktop
Package: rdesktop
Version: 1.9.0-2+b1
Priority: optional
Section: x11
Source: rdesktop (1.9.0-2)
Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org>
Installed-Size: 701 kB
Depends: libasound2 (>= 1.0.16), libc6 (>= 2.28), libgmp10, libgnutls30 (>= 3.6.14), libgssapi-krb5-2 (>= 1.17), libhogweed6, libnettle8, libpcsclite1 (>= 1.3.3), libtasn1-6 (>= 4.14), libx11-6, libxcursor1 (>> 1.1.2), libxrandr2
Suggests: pcscd
Homepage: https://www.rdesktop.org/
Tag: interface::graphical, interface::x11, network::client, protocol::ssl,
 role::program, scope::utility, uitoolkit::xlib, use::login,
 x11::application
Download-Size: 212 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: RDP client for Windows NT/2000 Terminal Server and Windows Servers
 rdesktop is an open source client for Windows NT/2000 Terminal Server and
 Windows Server 2003/2008. Capable of natively speaking its Remote Desktop
 Protocol (RDP) in order to present the user's Windows desktop. Unlike Citrix
 ICA, no server extensions are required.



user@brain:~$ sudo apt install rdesktop
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Suggested packages:
  pcscd
The following NEW packages will be installed:
  rdesktop
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 212 kB of archives.
After this operation, 701 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel rdesktop armel 1.9.0-2+b1 [212 kB]
Fetched 212 kB in 1s (244 kB/s)
Selecting previously unselected package rdesktop.
(Reading database ... 44348 files and directories currently installed.)
Preparing to unpack .../rdesktop_1.9.0-2+b1_armel.deb ...
Unpacking rdesktop (1.9.0-2+b1) ...
Setting up rdesktop (1.9.0-2+b1) ...
Processing triggers for man-db (2.9.4-2) ...



user@brain:~$ rdesktop
rdesktop: A Remote Desktop Protocol client.
Version 1.9.0. Copyright (C) 1999-2016 Matthew Chapman et al.
See http://www.rdesktop.org/ for more information.

Usage: rdesktop [options] server[:port]
   -u: user name
   -d: domain
   -s: shell / seamless application to start remotely
   -c: working directory
   -p: password (- to prompt)
   -n: client hostname
   -k: keyboard layout on server (en-us, de, sv, etc.)
   -g: desktop geometry (WxH[@DPI][+X[+Y]])
   -i: enables smartcard authentication, password is used as pin
   -f: full-screen mode
   -b: force bitmap updates
   -L: local codepage
   -A: path to SeamlessRDP shell, this enables SeamlessRDP mode
   -V: tls version (1.0, 1.1, 1.2, defaults to negotiation)
   -B: use BackingStore of X-server (if available)
   -e: disable encryption (French TS)
   -E: disable encryption from client to server
   -m: do not send motion events
   -M: use local mouse cursor
   -C: use private colour map
   -D: hide window manager decorations
   -K: keep window manager key bindings
   -S: caption button size (single application mode)
   -T: window title
   -t: disable use of remote ctrl
   -N: enable numlock synchronization
   -X: embed into another window with a given id.
   -a: connection colour depth
   -z: enable rdp compression
   -x: RDP5 experience (m[odem 28.8], b[roadband], l[an] or hex nr.)
   -P: use persistent bitmap caching
   -r: enable specified device redirection (this flag can be repeated)
         '-r comport:COM1=/dev/ttyS0': enable serial redirection of /dev/ttyS0 to COM1
             or      COM1=/dev/ttyS0,COM2=/dev/ttyS1
         '-r disk:floppy=/mnt/floppy': enable redirection of /mnt/floppy to 'floppy' share
             or   'floppy=/mnt/floppy,cdrom=/mnt/cdrom'
         '-r clientname=<client name>': Set the client name displayed
             for redirected disks
         '-r lptport:LPT1=/dev/lp0': enable parallel redirection of /dev/lp0 to LPT1
             or      LPT1=/dev/lp0,LPT2=/dev/lp1
         '-r printer:mydeskjet': enable printer redirection
             or      mydeskjet="HP LaserJet IIIP" to enter server driver as well
         '-r sound:[local[:driver[:device]]|off|remote]': enable sound redirection
                     remote would leave sound on server
                     available drivers for 'local':
                     alsa:      ALSA output driver, default device: default
         '-r clipboard:[off|PRIMARYCLIPBOARD|CLIPBOARD]': enable clipboard
                      redirection.
                      'PRIMARYCLIPBOARD' looks at both PRIMARY and CLIPBOARD
                      when sending data to server.
                      'CLIPBOARD' looks at only CLIPBOARD.
         '-r scard[:"Scard Name"="Alias Name[;Vendor Name]"[,...]]
          example: -r scard:"eToken PRO 00 00"="AKS ifdh 0"
                   "eToken PRO 00 00" -> Device in GNU/Linux and UNIX environment
                   "AKS ifdh 0"       -> Device shown in Windows environment
          example: -r scard:"eToken PRO 00 00"="AKS ifdh 0;AKS"
                   "eToken PRO 00 00" -> Device in GNU/Linux and UNIX environment
                   "AKS ifdh 0"       -> Device shown in Microsoft Windows environment
                   "AKS"              -> Device vendor name
   -0: attach to console
   -4: use RDP version 4
   -5: use RDP version 5 (default)
   -o: name=value: Adds an additional option to rdesktop.
           sc-csp-name        Specifies the Crypto Service Provider name which
                              is used to authenticate the user by smartcard
           sc-container-name  Specifies the container name, this is usually the username
           sc-reader-name     Smartcard reader name to use
           sc-card-name       Specifies the card name of the smartcard to use
   -v: enable verbose logging

xfreerdp2 RDPプロトコルに対応した接続クライアント

rdesktop と同様のRDP Clientです。
rdesktopよりも比較的新しいソフトですので、NLA認証の問題も解決されているようです。

インストールはApt経由で可能です。

sudo apt install freerdp2-x11

接続先でRDPを有効になっていれば、
たとえば、以下のコマンドで接続できます。

xfreerdp /v:<接続先IPアドレス> /u:<ログインユーザ /p:<接続パスワード /f

例)
xfreerdp /v:192.168.29.43 /u:user /p:userpass /f

rdesktop同様、BrainにUSBサウンドデバイスを挿した状態で以下のコマンドオプションを追加すると音声も転送されます。
(一部ノイズ交じりなのも、画面描画が激しい状態だと音がとぎれるのも一緒)

/sound:sys:alsa

サウンドがうまく再生できないときは、以下のメッセージが今コンソール側に出ているっぽいので、ALSAのバッファがたりていないのかもしれません。
ALSA lib pcm.c:8545:(snd_pcm_recover) underrun occurred

user@brain:~$ sudo apt show freerdp2-x11
Package: freerdp2-x11
Version: 2.3.0+dfsg1-2+deb11u1
Priority: optional
Section: x11
Source: freerdp2
Maintainer: Debian Remote Maintainers <debian-remote@lists.debian.org>
Installed-Size: 553 kB
Provides: freerdp
Depends: libc6 (>= 2.4), libfreerdp-client2-2 (= 2.3.0+dfsg1-2+deb11u1), libfreerdp2-2 (>= 2.3.0+dfsg1), libwinpr2-2 (>= 2.1.0+dfsg1), libx11-6 (>= 2:1.2.99.901), libxcursor1 (>> 1.1.2), libxext6, libxfixes3, libxi6 (>= 2:1.2.99.4), libxinerama1, libxrandr2 (>= 2:1.5.0), libxrender1
Conflicts: freerdp-x11
Replaces: freerdp-x11
Homepage: https://www.freerdp.com/
Download-Size: 97.6 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: RDP client for Windows Terminal Services (X11 client)
 FreeRDP is a libre client/server implementation of the Remote
 Desktop Protocol (RDP).
 .
 Currently, the FreeRDP client supports the following Windows Versions:
 .
  * Windows NT Server
  * Windows 2000 Terminal Server
  * Windows XP
  * Windows 2003 Server
  * Windows Vista
  * Windows 2008/2008r2/2011SBS Server
  * Windows 7
  * Windows 2012/2012r2 Server
  * Windows 8
  * Windows 10
 .
 This package contains the X11 based client.



user@brain:~$ sudo apt install freerdp2-x11
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done

The following additional packages will be installed:
  libaom0 libavcodec58 libavutil56 libcodec2-0.9 libdav1d4 libfreerdp-client2-2 libfreerdp2-2 libgsm1 libopenjp2-7 libshine3 libsnappy1v5 libsoxr0
  libswresample3 libswscale5 libva-drm2 libva-x11-2 libva2 libvdpau1 libwebpmux3 libwinpr2-2 libx264-160 libx265-192 libxvidcore4 libzvbi-common libzvbi0
  ocl-icd-libopencl1
Suggested packages:
  opencl-icd
Recommended packages:
  va-driver-all | va-driver vdpau-driver-all | vdpau-driver
The following NEW packages will be installed:
  freerdp2-x11 libaom0 libavcodec58 libavutil56 libcodec2-0.9 libdav1d4 libfreerdp-client2-2 libfreerdp2-2 libgsm1 libopenjp2-7 libshine3 libsnappy1v5
  libsoxr0 libswresample3 libswscale5 libva-drm2 libva-x11-2 libva2 libvdpau1 libwebpmux3 libwinpr2-2 libx264-160 libx265-192 libxvidcore4 libzvbi-common
  libzvbi0 ocl-icd-libopencl1
0 upgraded, 27 newly installed, 0 to remove and 1 not upgraded.
Need to get 17.4 MB of archives.
After this operation, 45.1 MB of additional disk space will be used.
~
Processing triggers for libc-bin (2.31-13+deb11u11) ...



user@brain:~$ xfreerdp

FreeRDP - A Free Remote Desktop Protocol Implementation
See www.freerdp.com for more information

Usage: xfreerdp [file] [options] [/v:<server>[:port]]

Syntax:
    /flag (enables flag)
    /option:<value> (specifies option with value)
    +toggle -toggle (enables or disables toggle, where '/' is a synonym of '+')

    /a:<addin>[,<options>]            Addin
    /action-script:<file-name>        Action script
    /admin                            Admin (or console) session
    +aero                             Enable desktop composition
    /app:<path> or ||<alias>          Remote application program
    /app-cmd:<parameters>             Remote application command-line parameters
    /app-file:<file-name>             File to open with remote application
    /app-guid:<app-guid>              Remote application GUID
    /app-icon:<icon-path>             Remote application icon for user interface
    /app-name:<app-name>              Remote application name for user interface
    /app-workdir:<workspace path>     Remote application workspace path
    /assistance:<password>            Remote assistance password
    /auto-request-control             Automatically request remote assistance
                                      input control
    +async-channels                   Enable Asynchronous channels
                                      (experimental)
    +async-input                      Enable Asynchronous input
    +async-update                     Enable Asynchronous update
    /audio-mode:<mode>                Audio output mode
    +auth-only                        Enable Authenticate only
    -authentication                   Disable Authentication (experimental)
    +auto-reconnect                   Enable Automatic reconnection
    /auto-reconnect-max-retries:<retries>
                                      Automatic reconnection maximum retries, 0
                                      for unlimited [0,1000]
    +bitmap-cache                     Enable bitmap cache
    /bpp:<depth>                      Session bpp (color depth)
    /buildconfig                      Print the build configuration
    /cert:[deny,ignore,name:<name>,tofu,fingerprint:<hash>:<hash as hex>
          [,fingerprint:<hash>:<another hash>]]
                                      Certificate accept options. Use with care!
                                      * deny         ... Automatically abort
                                      connection if the certificate does not
                                      match, no user interaction.           *
                                      ignore       ... Ignore the certificate
                                      checks altogether (overrules all other
                                      options)                           * name
                                             ... Use the alternate <name>
                                      instead of the certificate subject to
                                      match locally stored certificates * tofu
                                            ... Accept certificate
                                      unconditionally on first connect and deny
                                      on subsequent connections if the
                                      certificate does not match * fingerprints
                                      ... A list of certificate hashes that are
                                      accepted unconditionally for a connection
    /cert-deny                        [deprecated, use /cert:deny] Automatically
                                      abort connection for any certificate that
                                      can not be validated.
    /cert-ignore                      [deprecated, use /cert:ignore] Ignore
                                      certificate
    /cert-name:<name>                 [deprecated, use /cert:name:<name>]
                                      Certificate name
    /cert-tofu                        [deprecated, use /cert:tofu] Automatically
                                      accept certificate on first connect
    /client-build-number:<number>     Client Build Number sent to server
                                      (influences smartcard behaviour, see
                                      [MS-RDPESC])
    /client-hostname:<name>           Client Hostname to send to server
    -clipboard[:[use-selection:<atom>]]
                                      Disable Redirect clipboard.
                                      * use-selection:<atom>  ... (X11) Specify
                                      which X selection to access. Default is
                                      CLIPBOARD. PRIMARY is the X-style
                                      middle-click selection.
    /codec-cache:[rfx|nsc|jpeg]       Bitmap codec cache
    -compression                      Disable compression
    /compression-level:<level>        Compression level (0,1,2)
    +credentials-delegation           Enable credentials delegation
    /d:<domain>                       Domain
    -decorations                      Disable Window decorations
    /disp                             Display control
    /drive:<name>,<path>              Redirect directory <path> as named share
                                      <name>. Hotplug support is enabled with
                                      /drive:hotplug,*. This argument provides
                                      the same function as "Drives that I plug
                                      in later" option in MSTSC.
    +drives                           Enable Redirect all mount points as shares
    /dvc:<channel>[,<options>]        Dynamic virtual channel
    /dynamic-resolution               Send resolution updates when the window is
                                      resized
    /echo                             Echo channel
    -encryption                       Disable Encryption (experimental)
    /encryption-methods:[40,][56,][128,][FIPS]
                                      RDP standard security encryption methods
    /f                                Fullscreen mode (<Ctrl>+<Alt>+<Enter>
                                      toggles fullscreen)
    -fast-path                        Disable fast-path input/output
    +fipsmode                         Enable FIPS mode
    /floatbar[:sticky:[on|off],default:[visible|hidden],show:
               [always|fullscreen||window]]
                                      floatbar is disabled by default (when
                                      enabled defaults to sticky in fullscreen
                                      mode)
    -fonts                            Disable smooth fonts (ClearType)
    /frame-ack:<number>               Number of frame acknowledgement
    /from-stdin[:force]               Read credentials from stdin. With <force>
                                      the prompt is done before connection,
                                      otherwise on server request.
    /g:<gateway>[:<port>]             Gateway Hostname
    /gateway-usage-method:[direct|detect]
                                      Gateway usage method
    /gd:<domain>                      Gateway domain
    /gdi:sw|hw                        GDI rendering
    /geometry                         Geometry tracking channel
    +gestures                         Enable Consume multitouch input locally
    /gfx[:[[RFX|AVC420|AVC444],mask:<value>]]
                                      RDP8 graphics pipeline
    /gfx-h264[:[[AVC420|AVC444],mask:<value>]
               [DEPRECATED] use /gfx:avc420 instead]
                                      RDP8.1 graphics pipeline using H264 codec
    +gfx-progressive                  Enable RDP8 graphics pipeline using progressive
                                      codec
    +gfx-small-cache                  Enable RDP8 graphics pipeline using small cache
                                      mode
    +gfx-thin-client                  Enable RDP8 graphics pipeline using thin client
                                      mode
    +glyph-cache                      Enable Glyph cache (experimental)
    /gp:<password>                    Gateway password
    -grab-keyboard                    Disable Grab keyboard
    /gt:[rpc|http[,no-websockets]|auto[,no-websockets]]
                                      Gateway transport type
    /gu:[[<domain>\]<user>|<user>[@<domain>]]
                                      Gateway username
    /gat:<access token>               Gateway Access Token
    /h:<height>                       Height
    -heartbeat                        Disable Support heartbeat PDUs
    /help                             Print help
    +home-drive                       Enable Redirect user home as share
    /ipv6                             Prefer IPv6 AAA record over IPv4 A record
    /jpeg                             JPEG codec support
    /jpeg-quality:<percentage>        JPEG quality
    /kbd:0x<id> or <name>             Keyboard layout
    /kbd-lang:0x<id>                  Keyboard active language identifier
    /kbd-fn-key:<value>               Function key value
    /kbd-list                         List keyboard layouts
    /kbd-lang-list                    List keyboard languages
    /kbd-remap:List of <key>=<value>,... pairs to remap scancodes
                                      Keyboard scancode remapping
    /kbd-subtype:<id>                 Keyboard subtype
    /kbd-type:<id>                    Keyboard type
    /load-balance-info:<info-string>  Load balance info
    /log-filters:<tag>:<level>[,<tag>:<level>[,...]]
                                      Set logger filters, see wLog(7) for
                                      details
    /log-level:[OFF|FATAL|ERROR|WARN|INFO|DEBUG|TRACE]
                                      Set the default log level, see wLog(7) for
                                      details
    /max-fast-path-size:<size>        Specify maximum fast-path update size
    /max-loop-time:<time>             Specify maximum time in milliseconds spend
                                      treating packets
    +menu-anims                       Enable menu animations
    /microphone[:[sys:<sys>,][dev:<dev>,][format:<format>,][rate:<rate>,]
                 [channel:<channel>]] Audio input (microphone)
    /monitor-list                     List detected monitors
    /monitors:<id>[,<id>[,...]]       Select monitors to use
    -mouse-motion                     Disable Send mouse motion
    /multimon[:force]                 Use multiple monitors
    +multitouch                       Enable Redirect multitouch input
    +multitransport                   Enable Support multitransport protocol
    -nego                             Disable protocol security negotiation
    /network:[modem|broadband|broadband-low|broadband-high|wan|lan|auto]
                                      Network connection type
    /nsc                              NSCodec support
    +offscreen-cache                  Enable offscreen bitmap cache
    /orientation:[0|90|180|270]       Orientation of display in degrees
    +old-license                      Enable Use the old license workflow (no CAL and
                                      hwId set to 0)
    /p:<password>                     Password
    /parallel[:<name>[,<path>]]       Redirect parallel device
    /parent-window:<window-id>        Parent window id
    +password-is-pin                  Enable Use smart card authentication with
                                      password as smart card PIN
    /pcb:<blob>                       Preconnection Blob
    /pcid:<id>                        Preconnection Id
    /pheight:<height>                 Physical height of display (in
                                      millimeters)
    /play-rfx:<pcap-file>             Replay rfx pcap file
    /port:<number>                    Server port
    -suppress-output                  Disable suppress output when minimized
    +print-reconnect-cookie           Enable Print base64 reconnect cookie after
                                      connecting
    /printer[:<name>[,<driver>]]      Redirect printer device
    /proxy:[<proto>://][<user>:<password>@]<host>:<port>
                                      Proxy settings: override env. var (see
                                      also environment variable below). Protocol
                                      "socks5" should be given explicitly where
                                      "http" is default.
    /pth:<password-hash>              Pass the hash (restricted admin mode)
    /pwidth:<width>                   Physical width of display (in millimeters)
    /rdp2tcp:<executable path[:arg...]>
                                      TCP redirection
    /reconnect-cookie:<base64-cookie> Pass base64 reconnect cookie to the
                                      connection
    /redirect-prefer:<FQDN|IP|NETBIOS>,[...]
                                      Override the preferred redirection order
    /relax-order-checks               Do not check if a RDP order was announced
                                      during capability exchange, only use when
                                      connecting to a buggy server
    /restricted-admin                 Restricted admin mode
    /rfx                              RemoteFX
    /rfx-mode:[image|video]           RemoteFX mode
    /scale:[100|140|180]              Scaling factor of the display
    /scale-desktop:<percentage>       Scaling factor for desktop applications
                                      (value between 100 and 500)
    /scale-device:100|140|180         Scaling factor for app store applications
    /sec:[rdp|tls|nla|ext]            Force specific protocol security
    +sec-ext                          Enable NLA extended protocol security
    -sec-nla                          Disable NLA protocol security
    -sec-rdp                          Disable RDP protocol security
    -sec-tls                          Disable TLS protocol security
    /serial[:<name>[,<path>[,<driver>[,permissive]]]]
                                      Redirect serial device
    /shell:<shell>                    Alternate shell
    /shell-dir:<dir>                  Shell working directory
    /size:<width>x<height> or <percent>%[wh]
                                      Screen size
    /smart-sizing[:<width>x<height>]  Scale remote desktop to window size
    /smartcard[:<str>[,<str>...]]     Redirect the smartcard devices containing
                                      any of the <str> in their names.
    /smartcard-logon                  Activates Smartcard Logon authentication.
                                      (EXPERIMENTAL: NLA not supported)
    /sound[:[sys:<sys>,][dev:<dev>,][format:<format>,][rate:<rate>,]
            [channel:<channel>,][latency:<latency>,][quality:<quality>]]
                                      Audio output (sound)
    /span                             Span screen over multiple monitors
    /spn-class:<service-class>        SPN authentication service class
    /ssh-agent                        SSH Agent forwarding channel
    /t:<title>                        Window title
    -themes                           Disable themes
    /timeout:<time in ms>             Advanced setting for high latency links:
                                      Adjust connection timeout, use if you
                                      encounter timeout failures with your
                                      connection
    /tls-ciphers:[netmon|ma|ciphers]  Allowed TLS ciphers
    /tls-seclevel:<level>             TLS security level - defaults to 1
    -toggle-fullscreen                Disable Alt+Ctrl+Enter to toggle
                                      fullscreen
    /tune:<setting:value>,<setting:value>
                                      [experimental] directly manipulate freerdp
                                      settings, use with extreme caution!
    /tune-list                        Print options allowed for /tune
    /u:[[<domain>\]<user>|<user>[@<domain>]]
                                      Username
    +unmap-buttons                    Enable Let server see real physical pointer
                                      button
    /usb:[dbg,][id:<vid>:<pid>#...,][addr:<bus>:<addr>#...,][auto]
                                      Redirect USB device
    /v:<server>[:port]                Server hostname
    /vc:<channel>[,<options>]         Static virtual channel
    /version                          Print version
    /video                            Video optimized remoting channel
    /vmconnect[:<vmid>]               Hyper-V console (use port 2179, disable
                                      negotiation)
    /w:<width>                        Width
    -wallpaper                        Disable wallpaper
    +window-drag                      Enable full window drag
    /window-position:<xpos>x<ypos>    window position
    /wm-class:<class-name>            Set the WM_CLASS hint for the window
                                      instance
    /workarea                         Use available work area

Examples:
    xfreerdp connection.rdp /p:Pwd123! /f
    xfreerdp /u:CONTOSO\JohnDoe /p:Pwd123! /v:rdp.contoso.com
    xfreerdp /u:JohnDoe /p:Pwd123! /w:1366 /h:768 /v:192.168.1.100:4489
    xfreerdp /u:JohnDoe /p:Pwd123! /vmconnect:C824F53E-95D2-46C6-9A18-23A5BB403532 /v:192.168.1.100

Clipboard Redirection: +clipboard

Drive Redirection: /drive:home,/home/user
Smartcard Redirection: /smartcard:<device>
Serial Port Redirection: /serial:<name>,<device>,[SerCx2|SerCx|Serial],[permissive]
Serial Port Redirection: /serial:COM1,/dev/ttyS0
Parallel Port Redirection: /parallel:<name>,<device>
Printer Redirection: /printer:<device>,<driver>
TCP redirection: /rdp2tcp:/usr/bin/rdp2tcp

Audio Output Redirection: /sound:sys:oss,dev:1,format:1
Audio Output Redirection: /sound:sys:alsa
Audio Input Redirection: /microphone:sys:oss,dev:1,format:1
Audio Input Redirection: /microphone:sys:alsa

Multimedia Redirection: /video
USB Device Redirection: /usb:id:054c:0268#4669:6e6b,addr:04:0c

For Gateways, the https_proxy environment variable is respected:
    export https_proxy=http://proxy.contoso.com:3128/
    xfreerdp /g:rdp.contoso.com ...

More documentation is coming, in the meantime consult source files

user@brain:~$

remmina 複数の接続に対応した統合クライアント(動作はするが接続できない)

様々なプロトコルに対応した接続用クライアントです。
ssh,RDP,VNC等
接続前のGUIは立ち上がりますが、実際に接続しようとしてもつながりません。
標準のsshでさえつながらないので、どこかネットワーク的にもうまくいっていないのかもしれません。

インストールはApt経由で可能です。

sudo apt install remmina remmina-plugin-rdp remmina-plugin-vnc

user@brain:~$ sudo apt show remmina
[sudo] password for user:
Package: remmina
Version: 1.4.11+dfsg-3
Priority: optional
Section: x11
Maintainer: Debian Remote Maintainers <debian-remote@lists.debian.org>
Installed-Size: 478 kB
Depends: libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libavahi-ui-gtk3-0 (>= 0.6.30), libayatana-appindicator3-1 (>= 0.4.90), libc6 (>= 2.28), libcairo2 (>= 1.6.0), libgcrypt20 (>= 1.8.0), libglib2.0-0 (>= 2.55.1), libgtk-3-0 (>= 3.21.5), libjson-glib-1.0-0 (>= 1.5.2), libpango-1.0-0 (>= 1.14.0), libsodium23 (>= 1.0.10), libsoup2.4-1 (>= 2.41.90), libssh-4 (>= 0.8.1), libssl1.1 (>= 1.1.0), libvte-2.91-0 (>= 0.51.90), remmina-common (= 1.4.11+dfsg-3), default-dbus-session-bus | dbus-session-bus
Recommends: remmina-plugin-rdp, remmina-plugin-vnc, remmina-plugin-secret
Suggests: remmina-plugin-exec, remmina-plugin-kwallet, remmina-plugin-nx, remmina-plugin-spice, remmina-plugin-www, remmina-plugin-xdmcp
Homepage: https://www.remmina.org/
Tag: interface::graphical, interface::x11, protocol::ssh, role::program,
 uitoolkit::gtk, x11::application
Download-Size: 161 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: GTK+ Remote Desktop Client
 Remmina is a remote desktop client written in GTK+, aiming to be
 useful for system administrators and travellers, who need to work
 with lots of remote computers in front of either large monitors or
 tiny netbooks.
 .
 Remmina supports multiple network protocols in an integrated and
 consistent user interface.
 .
 Currently RDP, VNC, SPICE, WWW, NX, XDMCP, EXEC and SSH are supported.

user@brain:~$
user@brain:~$
user@brain:~$ sudo apt install remmina
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libavahi-glib1 libavahi-ui-gtk3-0 libayatana-appindicator3-1
  libayatana-ido3-0.4-0 libayatana-indicator3-7 libdbusmenu-glib4
  libdbusmenu-gtk3-4 libsodium23 libssh-4 remmina-common
Suggested packages:
  remmina-plugin-exec remmina-plugin-kwallet remmina-plugin-nx
  remmina-plugin-spice remmina-plugin-www remmina-plugin-xdmcp
Recommended packages:
  remmina-plugin-rdp remmina-plugin-vnc remmina-plugin-secret
The following NEW packages will be installed:
  libavahi-glib1 libavahi-ui-gtk3-0 libayatana-appindicator3-1
  libayatana-ido3-0.4-0 libayatana-indicator3-7 libdbusmenu-glib4
  libdbusmenu-gtk3-4 libsodium23 libssh-4 remmina remmina-common
0 upgraded, 11 newly installed, 0 to remove and 1 not upgraded.
Need to get 1,476 kB of archives.
After this operation, 5,820 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel libavahi-glib1 armel 0.8-5+deb11u2 [44.0 kB]
~
Processing triggers for shared-mime-info (2.0-1) ...



user@brain:~$ sudo apt show remmina-plugin-rdp
Package: remmina-plugin-rdp
Version: 1.4.11+dfsg-3
Priority: optional
Section: gnome
Source: remmina
Maintainer: Debian Remote Maintainers <debian-remote@lists.debian.org>
Installed-Size: 132 kB
Depends: libc6 (>= 2.28), libcairo2 (>= 1.6.0), libcups2 (>= 1.6.0), libfreerdp-client2-2 (>= 2.2.0~), libfreerdp2-2 (>= 2.2.0~), libgdk-pixbuf-2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.41.1), libgtk-3-0 (>= 3.19.12), libwinpr2-2 (>= 2.0.0~git20160317.1.75ae3f5+dfsg1), libx11-6, remmina (= 1.4.11+dfsg-3)
Homepage: https://www.remmina.org/
Tag: role::plugin, uitoolkit::gtk
Download-Size: 51.2 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: RDP plugin for Remmina
 Remmina is a remote desktop client written in GTK+, aiming to be
 useful for system administrators and travellers, who need to work
 with lots of remote computers in front of either large monitors or
 tiny netbooks.
 .
 Remmina supports multiple network protocols in an integrated and
 consistent user interface.
 .
 Currently RDP, VNC, SPICE, WWW, NX, XDMCP, EXEC and SSH are supported.
 .
 This package contains the RDP plugin for Remmina.


user@brain:~$ sudo apt install remmina-plugin-rdp
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  remmina-plugin-rdp
0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded.
Need to get 51.2 kB of archives.
After this operation, 132 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel remmina-plugin-rdp armel 1.4.11+dfsg-3 [51.2 kB]
Fetched 51.2 kB in 1s (54.9 kB/s)
Selecting previously unselected package remmina-plugin-rdp:armel.
(Reading database ... 45099 files and directories currently installed.)
Preparing to unpack .../remmina-plugin-rdp_1.4.11+dfsg-3_armel.deb ...
Unpacking remmina-plugin-rdp:armel (1.4.11+dfsg-3) ...
Setting up remmina-plugin-rdp:armel (1.4.11+dfsg-3) ...



user@brain:~$ sudo apt show remmina-plugin-vnc
Package: remmina-plugin-vnc
Version: 1.4.11+dfsg-3
Priority: optional
Section: gnome
Source: remmina
Maintainer: Debian Remote Maintainers <debian-remote@lists.debian.org>
Installed-Size: 68.6 kB
Depends: libc6 (>= 2.28), libcairo2 (>= 1.6.0), libgdk-pixbuf-2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.26.0), libgtk-3-0 (>= 3.9.12), libvncclient1 (>= 0.9.10), remmina (= 1.4.11+dfsg-3)
Homepage: https://www.remmina.org/
Tag: role::plugin, uitoolkit::gtk
Download-Size: 31.1 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: VNC plugin for Remmina
 Remmina is a remote desktop client written in GTK+, aiming to be
 useful for system administrators and travellers, who need to work
 with lots of remote computers in front of either large monitors or
 tiny netbooks.
 .
 Remmina supports multiple network protocols in an integrated and
 consistent user interface.
 .
 Currently RDP, VNC, SPICE, WWW, NX, XDMCP, EXEC and SSH are supported.
 .
 This package contains the VNC plugin for Remmina.


user@brain:~$ sudo apt install remmina-plugin-vnc
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  liblzo2-2 libvncclient1
The following NEW packages will be installed:
  liblzo2-2 libvncclient1 remmina-plugin-vnc
0 upgraded, 3 newly installed, 0 to remove and 1 not upgraded.
Need to get 248 kB of archives.
After this operation, 501 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel liblzo2-2 armel 2.10-2 [48.5 kB]
Get:2 http://archive.debian.org/debian bullseye/main armel libvncclient1 armel 0.9.13+dfsg-2+deb11u1 [168 kB]
Get:3 http://archive.debian.org/debian bullseye/main armel remmina-plugin-vnc armel 1.4.11+dfsg-3 [31.1 kB]
Fetched 248 kB in 3s (89.2 kB/s)
Selecting previously unselected package liblzo2-2:armel.
(Reading database ... 45107 files and directories currently installed.)
Preparing to unpack .../liblzo2-2_2.10-2_armel.deb ...
Unpacking liblzo2-2:armel (2.10-2) ...
Selecting previously unselected package libvncclient1:armel.
Preparing to unpack .../libvncclient1_0.9.13+dfsg-2+deb11u1_armel.deb ...
Unpacking libvncclient1:armel (0.9.13+dfsg-2+deb11u1) ...
Selecting previously unselected package remmina-plugin-vnc:armel.
Preparing to unpack .../remmina-plugin-vnc_1.4.11+dfsg-3_armel.deb ...
Unpacking remmina-plugin-vnc:armel (1.4.11+dfsg-3) ...
Setting up liblzo2-2:armel (2.10-2) ...
Setting up libvncclient1:armel (0.9.13+dfsg-2+deb11u1) ...
Setting up remmina-plugin-vnc:armel (1.4.11+dfsg-3) ...
Processing triggers for libc-bin (2.31-13+deb11u11) ...
user@brain:~$

higan  マルチゲームコンソールエミュレータ(動作はするが遅すぎる)

gngb GAME BOY エミュレータ

libSDL2  ハードウェアへの低レベルアクセスを提供する開発ライブラリ

libSDL2は、オーディオ, キーボード, マウス, ジョイスティック, グラフィックハードウェアへの低レベルアクセスを提供する開発ライブラリです。(SDL – Simple DirectMedia Layer )

実はdebian11レポジトリに、libSDL2としてすでに登録されているのでAPT経由でインストール自体はできます。
$ sudo apt show libsdl2-2.0-0

ただし、APTでインストールしたものだと、Brainux上で動かないようです。
具体的には、libSDL2に依存するパッケージが”Illigal instruction”エラーで異常終了します。
パッケージが、libSDL2に依存しているかについては、以下のコマンドで確認できます。
sudo apt show <パッケージ名>

このため、今回はlibSDL2をBrainuxで動くように再構築する必要があります。

先達の方の記事を参考に、再構築します。

ビルドツール類をインストールします。
$ sudo apt update
$ sudo apt-get install g++ build-essential libsdl2-dev

libSDL2のソースをダウンロードします。
$cd
$sudo apt source libsdl2

そのままでは動かないので、ソースコードを修正します。
$ cd libsdl2-2.0.14+dfsg2/include
$ sudo cp -p SDL_atomic.h SDL_atomic.h.org
$ sudo vi SDL_atomic.h

SDL_atomic.hの184行目を以下の通り修正する。
(“|| defined(__ARM_ARCH_5TE__)”を消すせばいいとのことです。)

#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__) || defined(__ARM_ARCH_5TE__)

↓

#elif defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6T2__) || defined(__ARM_ARCH_6Z__) || defined(__ARM_ARCH_6ZK__)

SDL2の依存関係を解消して、ビルドします。
$ cd ~/libsdl2-2.0.14+dfsg2
$ sudo apt-get build-dep libsdl2
$ sudo dpkg-buildpackage

以下のようにエラーがでたら、修正のコミットが必要となります。

dpkg-source: info: local changes detected, the modified files are:
libsdl2-2.0.14+dfsg2/include/SDL_atomic.h
libsdl2-2.0.14+dfsg2/include/SDL_atomic.h.org
dpkg-source: info: you can integrate the local changes with dpkg-source --commit
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/libsdl2_2.0.14+dfsg2-3+deb11u1.diff.sPjez4
dpkg-buildpackage: error: dpkg-source -b . subprocess returned exit status 2

修正のコミットは以下のコマンドを実行します。
$ dpkg-source –commit

以下のように表示されるので、「Enter the desired patch name」はbrainと入力しています。
エディタが立ち上がったら、ctal-xで終了する

dpkg-source: info: local changes detected, the modified files are:
libsdl2-2.0.14+dfsg2/include/SDL_atomic.h
libsdl2-2.0.14+dfsg2/include/SDL_atomic.h.org
Enter the desired patch name: brain
dpkg-source: info: local changes have been recorded in a new patch: libsdl2-2.0.14+dfsg2/debian/patches/brain

再度、再構築コマンドを実行すると、延々とコンパイルが行われます。
(うちのBraiux環境[PW-SH3]で環境での実行では4.5時間ほどかかりました。Brainへの給電は必須です。)
$ dpkg-buildpackage

再構築が終わったら、1つ上のディレクトリにインストール用パッケージ(.deb)ファイルができているので、これをインストールします。
$ cd ..
$ sudo dpkg -i libsdl2-2.0-0_2.0.14+dfsg2-3+deb11u1_armel.deb
$ sudo dpkg -i libsdl2-dev_2.0.14+dfsg2-3+deb11u1_armel.deb

(以下3つは必要に応じてインストールしてください。)
$ sudo dpkg -i libsdl2-2.0-0-dbgsym_2.0.14+dfsg2-3+deb11u1_armel.deb
$ sudo dpkg -i libsdl2-dev-dbgsym_2.0.14+dfsg2-3+deb11u1_armel.deb
$ sudo dpkg -i libsdl2-doc_2.0.14+dfsg2-3+deb11u1_all.deb

これで、libSDL2に依存しているアプリケーションパッケージでも、”Illigal instruction”エラーが出なくなることを確認しました。(libSDL2に依存しているアプリケーションの再導入は不要です。)

ちなみに、再構築完了後に、以下のフォルダを確認すると、SDL2のテストプログラムが作成されていますので、確認できます。
~/libsdl2-2.0.14+dfsg2/debian/build-tests

試しにX11環境で”testgles2″ を実行してみたところ、2.20 frames per secondでした。

fceux ファミコンエミュレータ(動作は遅いです。->SDL1.2版では動きます。)

 

fceux 2.2.3 (SDL1.2版) ファミコンエミュレータ(音無しであれば実用的な速度で動作)

 

nestopia ファミコンエミュレータ(動作は遅いです。キー入力反応なし?)

openmsx  MSXエミュレータ(動作は遅い->SDL1.2版で現実的な速度に。)

openmsx 0.15 (SDL1.2版) インストール     2025/12/22追記

fMSX MSXエミュレータ(MSX1/2/2+)

java Java VMの開発実行環境 (非常に遅い)

Java VMの開発実行環境です。
開発環境インストール sudo apt install openjdk-11-jdk
実行環境インストール sudo apt install openjdk-11-jre

ただ、バージョン表示するだけでも1分程度かかる状況ですので、実用的ではないと思います。
一応、openjdk-11-demoパッケージの”Font2DTest.jar”を実行してみました。
X11上にFont2DTestのウィンドウ枠が出ることまでは確認しましたが、
あまりに遅くて諦めました。

user@brain:~$ java --version
openjdk 11.0.24 2024-07-16
OpenJDK Runtime Environment (build 11.0.24+8-post-Debian-2deb11u1)
OpenJDK Zero VM (build 11.0.24+8-post-Debian-2deb11u1, interpreted mode)
user@brain:~$



user@brain:~$ java -jar /usr/share/doc/openjdk-11-jre-headless/demo/jfc/Font2DTest/Font2DTest.jar

(2026/01/04追記)
BrainのCPUであるARM926EJ-Sのアーキテクチャはarmv5tejでjavaバイナリ実行支援である”Jazelle DBX命令(BXJ)”をサポートしているんだけど、この機能を利用できるJavaVMは現行のものではないみたい。

user@brain:~$ cat /proc/cpuinfo
Features : swp half thumb fastmult edsp java

過去のいくつかのJavaVMのバージョンで、Jazelle DBX命令を使えるものを探したのですが見つかりませんでした。

 

dosbox グラフィックス、サウンド、DOS を備えた x86 エミュレータ(Brainでは厳しい)

 

px68k X68000エミュレータ

  

xpenguins 小さなペンギンがウィンドウ上を動き回るデスクトップマスコットアプリ

XPenguins home page

ウィンドウの上をかわいい小さなペンギンが歩き回るX11アプリケーションです。
あと表示されているペンギンをクリックすると・・・・

インストールはApt経由で可能です。
sudo apt show xpenguins

X11環境で、Shellから”xpenguins &”で起動できます。

オプションで、いろいろ表示を指定できるのでぜひ試してみてください。
-n <ペンギンの数>でペンギンの数を増やしたり、–allでいろんなペンギン?を表示したりできますが、表示する数を増やすとさすがにちらつきます。ちらつきは、-m 150とかで軽減できるようです。

user@brain:~$ sudo apt show xpenguins
Package: xpenguins
Version: 2.2-11
Priority: optional
Section: games
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Installed-Size: 1,139 kB
Depends: libc6 (>= 2.7), libx11-6, libxext6, libxpm4
Homepage: http://xpenguins.seul.org/
Tag: game::toys, interface::graphical, interface::x11, role::program,
 scope::utility, uitoolkit::xlib, use::entertaining, x11::screensaver
Download-Size: 172 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: little penguins walk on your windows
 Ever wanted cute little penguins walking along the tops of your
 windows? Ever wanted to send an army of cute little penguins to invade
 the screen of someone else on your network? Probably not, but why not
 try this program out anyway, it's cool!



user@brain:~$
user@brain:~$ sudo apt install xpenguins
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  xpenguins
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 172 kB of archives.
After this operation, 1,139 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel xpenguins armel 2.2-11 [172 kB]
Fetched 172 kB in 1s (131 kB/s)
Selecting previously unselected package xpenguins.
(Reading database ... 60135 files and directories currently installed.)
Preparing to unpack .../xpenguins_2.2-11_armel.deb ...
Unpacking xpenguins (2.2-11) ...
Setting up xpenguins (2.2-11) ...
Processing triggers for man-db (2.9.4-2) ...
user@brain:~$



user@brain:~$ xpenguins -h
XPenguins 2.2 (1 October 2001) by Robin Hogan
Usage: xpenguins [options]
Options:
  -d, --display        <display>    Send the penguins to specified display
  -m, --delay          <millisecs>  Set delay between frames
  -n, --penguins       <n>          Create <n> penguins (max 256)
  -q, --quiet                       Suppress all non-fatal messages
  -v, --version                     Show version information
  -h, --help                        Show this message
  -c, --config-dir     <dir>        Look for config files (and themes) in <dir>
  -p, --ignorepopups                Penguins ignore "popup" windows
  -r, --rectwin                     Regard shaped windows as rectangular
  -t, --theme          <theme>      Use named <theme>
  -l, --list-themes                 List available themes
  -i, --theme-info                  Describe a theme and exit (use with -t)
  -b, --no-blood                    Do not show any gory images
  -a, --no-angels                   Do not show any cherubim
  -s, --squish                      kill penguins with mouse
      --all                         Run all available themes simultaneously
      --random-theme                Choose a random theme
      --id             <window id>  Send penguins to window with this ID
      --nice           <ld1> <ld2>  Start killing penguins when load reaches
                                       <ld1>, kill all if load reches <ld2>
("--" can be replaced with "-" in all cases)
System data directory: /usr/share/xpenguins
user@brain:~$

user@brain:~$ xpenguins -l
Big Penguins
Bill
Classic Penguins
Penguins
Turtles

あと、テーマを追加することもできます。
オフィシャルページの右側の真ん中よりちょっと下にある、「XPenguins Themes」のところの
Source tarball:xpenguins_themes-1.0.tar.gz
ダウンロードして、解凍した後、themes以下の各フォルダを
/usr/share/xpenguins/themes/の下にコピーしてみてください。(要root権限)。
追加テーマは、なかなか攻めたラインナップとなっておりますのでぜひ試してみてください。

-l
 インストールされたテーマのリスト
-t “<テーマ名>”
 テーマを使用
–all
 すべてのテーマを利用。数が多い場合は -n 5 とかで数を制限しましょう

 

xmkmf Imakefile から Makefile を生成するためのツール

xmkmfは、X11アプリケーションがソース提供されているときに、コンパイルに必要な”Makefile”を環境に合わせて”Imakefiie”から作成してくれるツールです。

最近開発されたアプリケーションであれば、”configure”コマンドで環境に合わせて”Makefile”を作成してコンパイルすることも多いのですが、昔は”Imakefiie”を用意するアプリケーションも多かったのです。

インストールはApt経由で可能です。
sudo apt install xutils-dev

通常は、アプリケーションのソースディレクトリ(Imakefileがあるフォルダ)で以下のコマンドを実行します。
xmkmf

user@brain:~/xhime/xhime151/xhime1.51$ xmkmf
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
user@brain:~/xhime/xhime151/xhime1.51$

また、xmkmf -a のように -aオプションを付けると、
make Makefiles、make includes、make depend まで自動的に実行します。

user@brain:~/xhime/xhime151/xhime1.51$ xmkmf -a
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
make Makefiles
make: Nothing to be done for 'Makefiles'.
make includes
make: Nothing to be done for 'includes'.
make depend
gccmakedep  --      -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                   -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE  -DAUDIO_DEVICE=\"/dev/audio\"  -DMAILSPOOL_PATH=\"/usr/spool/mail/\" -DXHIMEDAT_PATH=\"/usr/lib/X11/xhime\" -DXSYSV_SIG   -- xhime.c
user@brain:~/xhime/xhime151/xhime1.51$

あとは、通常通り、以下でビルド&インストールです。
make
make install

インストールログ

user@brain:~/xhime/xhime151/xhime1.51$ sudo apt show xutils-dev
Package: xutils-dev
Version: 1:7.7+5+b1
Priority: optional
Section: x11
Source: xutils-dev (1:7.7+5)
Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Installed-Size: 1,489 kB
Depends: libc6 (>= 2.7), cpp
Tag: devel::buildtools, devel::lang:c, devel::library, implemented-in::c,
 interface::commandline, role::devel-lib, role::program, scope::utility,
 works-with::software:source
Download-Size: 239 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: X Window System utility programs for development
 xutils-dev provides a set of utility programs shipped with the X Window System
 that do not require the X libraries; many of these programs are useful
 even on a system that does not have any X clients or X servers installed.
 .
 The programs in this package include:
  - imake, a C preprocessor interface to the make utility;
  - lndir, a tool that creates a shadow directory of symbolic links to
    another directory tree;
  - makedepend, a tool to create dependencies in makefiles;
  - makeg, a tool for making debuggable executables.
 .
 This package also lscontains xorg-macros.m4, a set of macros used in configure
 scripts of X.Org packages.



user@brain:~/xhime/xhime151/xhime1.51$ sudo apt install xutils-dev
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  xutils-dev
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 239 kB of archives.
After this operation, 1,489 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel xutils-dev armel 1:7.7+5+b1 [239 kB]
Fetched 239 kB in 1s (200 kB/s)
Selecting previously unselected package xutils-dev.
(Reading database ... 60570 files and directories currently installed.)
Preparing to unpack .../xutils-dev_1%3a7.7+5+b1_armel.deb ...
Unpacking xutils-dev (1:7.7+5+b1) ...
Setting up xutils-dev (1:7.7+5+b1) ...
Processing triggers for man-db (2.9.4-2) ...
user@brain:~/xhime/xhime151/xhime1.51$



user@brain:~/xhime/xhime151/xhime1.51$ xmkmf --help
usage:  /usr/bin/xmkmf [-a] [top_of_sources_pathname [current_directory]]
user@brain:~/xhime/xhime151/xhime1.51$

 

cmake CMakeLists.txtからMakefileを生成するためのツール

アプリケーションのソースを確認した際に、「CMakeLists.txt」があれば、
ここからビルド環境に合わせたMakefileを生成してビルドできます。

cmake コマンドは、apt経由でインストール可能です。

apt install cmake

ビルドは以下のような流れで実施できます。
mkdir build
cd build
cmake ..
cmake –build .
cmake –install

user@brain:~/oneko-git/oneko/build$ cmake ..
-- The C compiler identification is GNU 10.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/oneko-git/oneko/build

user@brain:~/oneko-git/oneko/build$ cmake --build .
Scanning dependencies of target oneko
[ 50%] Building C object CMakeFiles/oneko.dir/oneko.c.o
[100%] Linking C executable oneko
[100%] Built target oneko

 

インストールログ

user@brain:~$ apt show cmake
Package: cmake
Version: 3.18.4-2+deb11u1
Priority: optional
Section: devel
Maintainer: Debian CMake Team <pkg-cmake-team@lists.alioth.debian.org>
Installed-Size: 19.4 MB
Depends: cmake-data (= 3.18.4-2+deb11u1), procps, libarchive13 (>= 3.3.3), libc6 (>= 2.28), libcurl4 (>= 7.16.2), libexpat1 (>= 2.0.1), libgcc-s1 (>= 3.5), libjsoncpp24 (>= 1.9.4), librhash0 (>= 1.2.6), libstdc++6 (>= 9), libuv1 (>= 1.11.0), zlib1g (>= 1:1.2.3.3)
Recommends: gcc, make
Suggests: cmake-doc, ninja-build
Homepage: https://cmake.org/
Tag: devel::buildtools, implemented-in::c++, interface::commandline,
 interface::text-mode, role::program, scope::utility,
 uitoolkit::ncurses, works-with::software:source
Download-Size: 3,384 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: cross-platform, open-source make system
 CMake is used to control the software compilation process using
 simple platform and compiler independent configuration files. CMake
 generates native makefiles and workspaces that can be used in the
 compiler environment of your choice. CMake is quite sophisticated: it
 is possible to support complex environments requiring system
 configuration, pre-processor generation, code generation, and template
 instantiation.
 .
 CMake was developed by Kitware as part of the NLM Insight
 Segmentation and Registration Toolkit project. The ASCI VIEWS project
 also provided support in the context of their parallel computation
 environment. Other sponsors include the Insight, VTK, and VXL open
 source software communities.


user@brain:~$ apt install cmake
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
user@brain:~$ sudo apt install cmake
[sudo] password for user:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  cmake-data libjsoncpp24 librhash0
Suggested packages:
  cmake-doc ninja-build
The following NEW packages will be installed:
  cmake cmake-data libjsoncpp24 librhash0
0 upgraded, 4 newly installed, 0 to remove and 2 not upgraded.
Need to get 5,317 kB of archives.
After this operation, 29.0 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel cmake-data all 3.18.4-2+deb11u1 [1,725 kB]
Get:2 http://archive.debian.org/debian bullseye/main armel libjsoncpp24 armel 1.9.4-4 [66.9 kB]
Get:3 http://archive.debian.org/debian bullseye/main armel librhash0 armel 1.4.1-2 [141 kB]
Get:4 http://archive.debian.org/debian bullseye/main armel cmake armel 3.18.4-2+deb11u1 [3,384 kB]
Fetched 5,317 kB in 5s (1,066 kB/s)
Selecting previously unselected package cmake-data.
(Reading database ... 60811 files and directories currently installed.)
Preparing to unpack .../cmake-data_3.18.4-2+deb11u1_all.deb ...
Unpacking cmake-data (3.18.4-2+deb11u1) ...
Selecting previously unselected package libjsoncpp24:armel.
Preparing to unpack .../libjsoncpp24_1.9.4-4_armel.deb ...
Unpacking libjsoncpp24:armel (1.9.4-4) ...
Selecting previously unselected package librhash0:armel.
Preparing to unpack .../librhash0_1.4.1-2_armel.deb ...
Unpacking librhash0:armel (1.4.1-2) ...
Selecting previously unselected package cmake.
Preparing to unpack .../cmake_3.18.4-2+deb11u1_armel.deb ...
Unpacking cmake (3.18.4-2+deb11u1) ...
Setting up libjsoncpp24:armel (1.9.4-4) ...
Setting up librhash0:armel (1.4.1-2) ...
Setting up cmake-data (3.18.4-2+deb11u1) ...
Setting up cmake (3.18.4-2+deb11u1) ...
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for libc-bin (2.31-13+deb11u11) ...
user@brain:~$

 

cbp2make Code::Blocks IDE project (.cbp)からMakefileを生成するためのツール(2025/12/13追加)

アプリケーションのソースを確認した際に、
「*.cbp」ファイル(Code::Blocks IDE project 、workspace files)があれば、
ここからMakefileを生成してビルドできます。

cbp2make コマンドは、apt経由でインストール可能です。

apt install cbp2make

 

アプリケーションのビルドは以下のような流れで実施できます。

cbp2make -in Projrct.cbp -out Makefile
make

make時にエラーが出た場合は、エラーに応じて対応してください。

例:allegro5ライブラリを利用していた場合、以下のように修正
LIB = -lallegro -lallegro_dialog -lallegro_image -lallegro_ttf -lallegro_audio -lallegro_acodec -lallegro_color -lallegro_font -lallegro_main -lallegro_memfile -lallegro_primitives

例:allegra4.4ライブラリを利用していた場合、以下のように修正
LIB = -lalleg

インストールは、make installでできるかもしれませんが、基本的にアプリによります。

user@brain:~$ cbp2make --help
Usage syntax:

        Generate makefile:
                cbp2make -in <project_file> [-cfg <configuration>] [-out <makefile>]
                         [-unix] [-windows] [-mac] [--all-os] [-targets "<target1>[,<target2>[, ...]]"]
                         [--flat-objects] [--flat-objpath] [--wrap-objects] [--wrap-options]
                         [--with-deps] [--keep-objdir] [--keep-outdir] [--target-case keep|lower|upper]
                         [--macros-case keep|lower|upper] [--quote-path auto|never|always]
                cbp2make -list -in <project_file_list> [-cfg <configuration>]
                         [-unix] [-windows] [-mac] [--all-os] [-targets "<target1>[,<target2>[, ...]]"]
                         [--flat-objects] [--flat-objpath] [--wrap-objects] [--wrap-options]
                         [--with-deps] [--keep-objdir] [--keep-outdir] [--target-case keep|lower|upper]

                         [--macros-case keep|lower|upper] [--quote-path auto|never|always]
        Manage toolchains:
                cbp2make --config toolchain --add [-unix|-windows|-mac] -chain <toolchain>
                cbp2make --config toolchain --remove [-unix|-windows|-mac] -chain <toolchain>

        Manage build tools:
                cbp2make --config tool --add [-unix|-windows|-mac] -chain <toolchain>
                         -tool <tool> -type <type> <tool options>
                cbp2make --config tool --remove [-unix|-windows|-mac] -chain <toolchain>
                         -tool <tool>

        Tool types:      pp=preprocessor as=assembler cc=compiler rc=resource compiler
                         sl=static linker dl=dynamic linker el=executable linker
                         nl=native linker
        Tool options (common):
                         -desc <description> -program <executable> -command <command_template>
                         -mkv <make_variable> -srcext <source_extensions> -outext <output_extension>
                         -quotepath <yes|no> -fullpath <yes|no> -unixpath <yes|no>
        Tool options (compiler):
                         -incsw <include_switch> -defsw <define_switch> -deps <yes|no>
        Tool options (linker):
                         -ldsw <library_dir_switch> -llsw <link_library_switch> -lpfx <library_prefix>
                         -lext <library_extension> -objext <object_extension> -lflat <yes|no>

        Manage platforms:
                cbp2make --config platform [-unix|-windows|-mac] [-pwd <print_dir_command>]
                         [-cd <change_dir_command>] [-rm <remove_file_command>]
                         [-rmf <remove_file_forced>] [-rmd <remove_dir_command>]
                         [-cp <copy_file_command>] [-mv <move_file_command>]
                         [-md <make_dir_command>] [-mdf <make_dir_forced>]
                         [-make <default_make_tool>]

        Manage global compiler variables:
                cbp2make --config variable --add [-set <set_name>] -name <var_name>
                         [-desc <description>] [-field <field_name>] -value <var_value>
                cbp2make --config variable --remove [-set <set_name>] [-name <var_name>]
                         [-field <field_name>]

        Manage options:
                cbp2make --config options --default-options "<options>"
                cbp2make --config show

        Common options:
                cbp2make --local        // use configuration from current directory
                cbp2make --global       // use configuration from home directory
                cbp2make --verbose      // show project information
                cbp2make --quiet        // hide all messages
                cbp2make --help         // display this message
                cbp2make --version      // display version information

user@brain:~$

インストールログ

user@brain:~$ apt show cbp2make
Package: cbp2make
Version: 147+dfsg-4
Priority: optional
Section: devel
Maintainer: Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
Installed-Size: 400 kB
Depends: libc6 (>= 2.4), libgcc-s1 (>= 3.5), libstdc++6 (>= 5.2), libtinyxml2.6.2v5
Homepage: https://sourceforge.net/projects/cbp2make/
Download-Size: 115 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: Makefile generation tool for the Code::Blocks IDE
 cbp2make is a stand-alone build tool that allows you
 to generate makefile(s) for GNU Make out of Code::Blocks
 IDE project or workspace files.

user@brain:~$ sudo apt install cbp2make
[sudo] password for user:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  cbp2make
0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
Need to get 115 kB of archives.
After this operation, 400 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel cbp2make armel 147+dfsg-4 [115 kB]
Fetched 115 kB in 1s (91.0 kB/s)
Selecting previously unselected package cbp2make.
(Reading database ... 92070 files and directories currently installed.)
Preparing to unpack .../cbp2make_147+dfsg-4_armel.deb ...
Unpacking cbp2make (147+dfsg-4) ...
Setting up cbp2make (147+dfsg-4) ...
Processing triggers for man-db (2.9.4-2) ...

ser@brain:~$ cbp2make -in Bomberman.cbp -out Makefile
Starting cbp2make rev.147...
Using default configuration.
Loading file 'Bomberman.cbp': [DONE]
Generating makefile(s): Makefile: [DONE]
user@brain:~$

 

oneko X11猫(X11上で動作するマウスカーソルを追いかける猫を表示するデスクトップマスコット)

onelo(X11猫)は11上で動作するマウスカーソルを追いかける猫を表示するデスクトップマスコットです。

キャラがマウスカーソルが変化したネズミを追いかけて、追いつくと特定のアクションをしたのちに、眠りにつきます。

標準はマウスを追いかけるネコですが、オプションでいろいろなキャラに変更できます。
(ネコ、トラ、イヌ、BSDデーモン、(ccさくら)さくら、(ccさくら)知世)

上記公式サイトから、以下をダウンロードして、brainux上で解凍してインストールします。
current version for X Window System – [oneko-1.2.sakura.5.tar.gz]

マニュアルにも書いてありますが、Imakefileがありますのでxmkmf にて環境に合わせたMakefaileを生成して、ビルドします。

ビルド&インストール
tar xvf oneko-1.2.sakura.5.tar.gz
cd oneko-1.2.sakura.5
xmkmf -a
make
sudo make install

上記スクリーンショットは、oneko –tomoyo& を起動した後で、oneko –sakura& を起動した場合です。
すると、マウスカーソル(カード)を追いかける桜に知世がカメラを向けるというカオス原作再現な状況にできます。

インストールログ

user@brain:~/oneko$ tar xvf oneko-1.2.sakura.5.tar.gz
user@brain:~/oneko$ cd oneko-1.2.sakura.5


user@brain:~/oneko/oneko-1.2.sakura.5$ xmkmf -a
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
make Makefiles
make: Nothing to be done for 'Makefiles'.
make includes
make: Nothing to be done for 'includes'.
make depend
gccmakedep  --      -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                               -D_POSIX_SOURCE -D_XOPEN_SOURCE        -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                           -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE   -- oneko.c



user@brain:~/oneko/oneko-1.2.sakura.5$ make
gcc -g -O2 -fno-strict-aliasing         -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                           -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                   -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE    -c -o oneko.o oneko.c
In file included from /usr/include/arm-linux-gnueabi/sys/types.h:25,
                 from /usr/include/X11/Xlib.h:38,
                 from oneko.h:11,
                 from oneko.c:9:
/usr/include/features.h:187:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
  187 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
      |   ^~~~~~~
oneko.c:338:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
  338 | GetResources()
      | ^~~~~~~~~~~~
oneko.c:437:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
  437 | MakeMouseCursor()
      | ^~~~~~~~~~~~~~~
oneko.c:466:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
  466 | SetupColors()
      | ^~~~~~~~~~~
oneko.c: In function ‘InitScreen’:
oneko.c:627:8: warning: extra tokens at end of #endif directive [-Wendif-labels]
  627 | #endif SHAPE
      |        ^~~~~
oneko.c: In function ‘Interval’:
oneko.c:745:5: warning: implicit declaration of function ‘pause’ [-Wimplicit-function-declaration]
  745 |     pause();
      |     ^~~~~
oneko.c: In function ‘DrawNeko’:
oneko.c:812:8: warning: extra tokens at end of #endif directive [-Wendif-labels]
  812 | #endif SHAPE
      |        ^~~~~
rm -f oneko
gcc -o oneko -g -O2 -fno-strict-aliasing       oneko.o -lXext -lX11   -lm
rm -f oneko._man
if test -z "true" ; then \
   cd `dirname oneko` && \
   ln -s `basename oneko.man` `basename oneko._man`; \
else \
             cpp -undef -traditional  -D__apploaddir__=/etc/X11/app-defaults -D__filemansuffix__=5x -D__osfilemansuffix__=5 -D__libmansuffix__=3x -D__oslibmansuffix__=3 -D__mansuffix__=1x -D__osmansuffix__=1 -D__syscallmansuffix__=2x -D__ossysmansuffix__=2 -D__gamemansuffix__=6x -D__osgamemansuffix__=6 -D__miscmansuffix__=7x -D__osmiscmansuffix__=7 -D__admmansuffix__=8x -D__osadmmansuffix__=8 -D__miscmansuffix__=7x -D__osmiscmansuffix__=7 -D__drivermansuffix__=4x -D__osdrivermansuffix__=4 -D__adminmansuffix__=8 -D__projectroot__=/usr -D__xconfigfile__=xorg.conf -D__xconfigdir__=/usr/lib/X11 -D__xlogfile__=Xorg -D__xservername__=Xorg -D__appmansuffix__=1x -D__xorgversion__="\"`echo 7 7 0 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`\" \"X Version 11\"" -D__vendorversion__="`echo 7 7 0 | sed -e 's/ /./g' -e 's/^/Version\\\ /'` X.Org"  \
     < oneko.man | sed -e '/^#  *[0-9][0-9]*  *.*$/d'                   -e '/^#line  *[0-9][0-9]*  *.*$/d'                      -e '/^[         ]*XCOMM$/s/XCOMM/#/'                    -e '/^[         ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/#/'       -e '/^[  ]*XHASH/s/XHASH/#/'                     -e '/\@\@$/s/\@\@$/\\/' >oneko._man; \
fi



user@brain:~/oneko/oneko-1.2.sakura.5$ sudo make install
[sudo] password for user:
install -c   oneko /usr/bin/oneko
install in . done
user@brain:~/oneko/oneko-1.2.sakura.5$



user@brain:~$ oneko --help
oneko: Unknown option "--help".
Usage: oneko [<options>]

Options are:
-display <display>      : Neko appears on specified display.
-fg <color>             : Foreground color
-bg <color>             : Background color
-speed <dots>
-time <microseconds>
-idle <dots>
-name <name>            : set window name of neko.
-towindow               : Neko chases selected window.
-toname <name>          : Neko chases specified window.
-tofocus                : Neko runs on top of focus window
-rv                     : Reverse video. (effects monochrome display only)
-position <geometry>   : adjust position relative to mouse pointer.
-debug                 : puts you in synchronous mode.
-patchlevel            : print out your current patchlevel.
-neko Use neko bitmaps
-tora Use tora bitmaps
-dog Use dog bitmaps
-bsd_daemon Use bsd_daemon bitmaps
-sakura Use sakura bitmaps
-tomoyo Use tomoyo bitmaps
user@brain:~$

なお、GittHubにも同じバージョンとも思われるソースが上がっていますので、こちらからもインストールできます(見た感じソースやドキュメントの文字コードが変更されているだけのようです)。
ですが、Imakefileが入っていないので、先ほどの手順ではビルドできません。
README.md ドキュメントの通り、clangツールを使用してコンパイルするか、
Imakefileの代わりにCMakeLists.txtがありますので、cmakeコマンドでインストール可能です。(こちらのソースの場合、システムへのインストールは手動になるようです。)

 

macopix アクティブウィンドウに座るマスコットプログラム

MaCoPiXは、UNIX系OS(要X Window System)、Microsoft Windows(7以降)、macOS(10.9以降)で動作するマスコットプログラムです。

キャラクターは、マスコットデータ(おすわりマスコット)に登録されたメッセージやしぐさでランダムに動きます。
公式ページにあるキャラクターデータは、2003-2007年公開当時の人気キャラクター関係が多数登録されています。
([はやて×ブレード] [マリみて] [秋桜] [みずいろ] [Pia2] [月姫] [とらハ] [こみパ] [Kanon] [ONE])

公式ページ

インストールは、APT経由で可能です。
(データは新規サイトのものであれば、アプリからダウンロード可能)

sudo apt install macopix

以下のコマンドで起動が可能です。マスコットデータは、~/.macopix/に保存されている .mcpx ファイルになります。

macopix <マスコットデータ名> &

今回は公式データの中から、現状おそらく唯一の現役キャラであると思われる「高町なのは」を召喚します。

「高町なのは」は、「とらいあんぐるハート」グループにいますのでこちらのマスコットデータをダウンロードして設定します。
注)「魔法少女リリカルなのは」はもうすぐ新作TVシリーズも始まるTVシリーズ3作、映画4作やスピンオフ作品まで出ている人気作ですが、元もは大人向けゲームのファンディスクでのパロディ企画企画から派生したスピンオフ作品です(現在で元ネタよりも有名な作品となっているものの1つ)。

マスコットを右クリックして、Mascot Launcherで「とらいあんぐるハート1・2・3」から「高町なのは」を選択します。
このままだとコメントが文字化け(□)しますが、そこは設定変更で対応できます。

ただし、コンフィグ画面が大きいので、BrainのX画面では設定変更できないので、
PC等のX11画面上のターミナルから、
ssh -X <BrainuxのIPアドレス>

で、Brainuxにアクセスして、macopix &で起動します。
あとはマスコットを右クリックして、Configから「Resource」->「Font/Color」画面で、
「Default for Clock」と「Default for Balloon」のフォントを日本語文字列対応の「IPAGithic Regular」あたりに変更します。

その他の設定部分も必要に応じて変更してください。
もしこれでダメな場合は、Macotのほうのフォントも変更してみてください。

(かなり細かい調整ができますので、公式ページを参考にしてください。)

設定を変更したら、右下の「OK」をクリックして設定画面を終了させます。
あらためてマスコットを右クリックして、「Save」->「Save all」で保存します。

これで次回起動時に反映されますが、
起動方法のところで書いた通り、起動時のマスコット指定だけは毎回起動時オプションに指定が必要です。

インストールログ

user@brain:~$ apt show macopix
Package: macopix
Version: 3.4.0+dfsg.1-3
Priority: optional
Section: games
Maintainer: Ying-Chun Liu (PaulLiu) <paulliu@debian.org>
Installed-Size: 4,962 kB
Depends: libc6 (>= 2.28), libcairo2 (>= 1.10.0), libgdk-pixbuf-2.0-0 (>= 2.25.2), libglib2.0-0 (>= 2.35.9), libgtk-3-0 (>= 3.21.5), libpango-1.0-0 (>= 1.14.0), libssl1.1 (>= 1.1.0), libx11-6
Breaks: macopix-gtk2 (<< 3.4.0-1)
Replaces: macopix-gtk2 (<< 3.4.0-1)
Homepage: http://rosegray.sakura.ne.jp/macopix/
Tag: uitoolkit::gtk
Download-Size: 381 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: Mascot Constructive Pilot for X
 MaCoPiX (Mascot Constructive Pilot for X) is a desktop mascot application for
 UNIX / X Window system. You can make window sitters, fixed desktop mascots,
 and, furthermore, desktop clock mascots, using MaCoPiX.



user@brain:~$ sudo apt install macopix
[sudo] password for user:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
  macopix
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 381 kB of archives.
After this operation, 4,962 kB of additional disk space will be used.
Get:1 http://archive.debian.org/debian bullseye/main armel macopix armel 3.4.0+dfsg.1-3 [381 kB]
Fetched 381 kB in 1s (377 kB/s)
Selecting previously unselected package macopix.
(Reading database ... 63691 files and directories currently installed.)
Preparing to unpack .../macopix_3.4.0+dfsg.1-3_armel.deb ...
Unpacking macopix (3.4.0+dfsg.1-3) ...
Setting up macopix (3.4.0+dfsg.1-3) ...
Processing triggers for man-db (2.9.4-2) ...
user@brain:~$



(macopix:2313): Gtk-WARNING **: 15:50:50.278: cannot open display:
user@brain:~$ macopix --help
 macopix : Mascot Constructive Pilot for X   Ver3.4.0
  [usage] % macopix [options] (mascot file)
     -h, --help               : Print this message
     -c, --common-dir         : Print COMMON Directory
     -b, --biff               : Turn on the biff function
     -s, --signal             : Turn on the time signal
     -o, --offset offset[%]   : Set offset-value for Focus Following
     -r, --rcfile rc-file     : Set the resource file
     -m, --menu   menu-file   : Set the file for quick menu
     -mg --mag    magnify     : Set magnification percentage of mascot
     -i, --ip-style (0|1|2|3) : Set interpolation style for magnification
## For Installation
     -a, --auto-install       : Set mascot auto install ON
     -na --no-auto-install    : Set mascot auto install OFF
     -O, --over-write         : Permit to overwrite files in user dir
     --install-user-mascot (mascot)  : Mascot Installation to User Dir.
     --install-user-menu (menu)      : Menu Installation to User Dir.
     --install-common-mascot (mascot): Mascot Installation to Common Dir.
     --install-common-menu (menu)    : Menu Installation to Common Dir.
## For Socket Message
     --sockmsg                : Start MaCoPiX as Socket Message Receiver
     --message (text)         : Send Message to Socket Message Receiver
     --message-expire (time)  : Socket Message Expire Time[ms]
     --message-type-lump      : Force to Set Lump Sum Balloon
     --message-type-step      : Force to Set Stepping Balloon
     --message-step (frame)   : Stepping Interval Frame for SockeMsg
     -nc, --no-duet-click     : Duet Animation [Click] OFF
     -nr, --no-duet-random    : Duet Animation [Random] OFF

 ================== Installed Menus ==================
   !!! Common Directory - /usr/share/macopix/ - does not exist.

  !!! User Directory - /home/user/.macopix/ - does not exist.
user@brain:~$

 

Emi Clock  美少女コスプレ時計 Emi Clock

美少女コスプレ時計 Emi Clockは古のジョーク時計アプリです。
種類のかわいい文字盤と、26種類の衣装を選ぶことができるコスプレ時計です

公式サポートページ

X11版のソースコートのダウンロード先が公式ページからリンクされていますので、
こちらからダウンロードできます。

X11版 Emi Clock 2.0.2 
emiclock-2.0.2.tar.gz

インストールは、以下のような流れで行えます。
Imakefileがありますのでxmkmf にて環境に合わせたMakefaileを生成して、ビルドします。

cd
mkdir emiclock
cd emiclock/

wget https://ftp.vector.co.jp/11/78/1347/emiclock-2.0.2.tar.gz
tar zxvf emiclock-2.0.2.tar.gz
cd emiclock-2.0.2

xmkmf -a
make
sudo make install

ただうちの環境では、makeinstallすると、メニューの2段階目以降が表示されなくなりましたので、以下のリソースファイルをリネームして暫定で回避しています。

/etc/X11/app-defaults/EmiClock

/etc/X11/app-defaults/EmiClock.bk

インストールログ

user@brain:~$ mkdir emiclock
user@brain:~$ cd emiclock/

user@brain:~/emiclock$ wget https://ftp.vector.co.jp/11/78/1347/emiclock-2.0.2.tar.gz
--2025-11-30 16:55:04--  https://ftp.vector.co.jp/11/78/1347/emiclock-2.0.2.tar.gz
Resolving ftp.vector.co.jp (ftp.vector.co.jp)... 141.147.176.138
Connecting to ftp.vector.co.jp (ftp.vector.co.jp)|141.147.176.138|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 308682 (301K) [application/gzip]
Saving to: ‘emiclock-2.0.2.tar.gz’
emiclock-2.0.2.tar. 100%[===================>] 301.45K  1.13MB/s    in 0.3s
2025-11-30 16:55:05 (1.13 MB/s) - ‘emiclock-2.0.2.tar.gz’ saved [308682/308682]
user@brain:~/emiclock$


user@brain:~/emiclock$ tar zxvf emiclock-2.0.2.tar.gz
emiclock-2.0.2/
emiclock-2.0.2/00.README
~
emiclock-2.0.2/sys/netaudio/audio.c
user@brain:~/emiclock$


user@brain:~/emiclock$ cd emiclock-2.0.2


user@brain:~/emiclock/emiclock-2.0.2$ xmkmf -a
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
make Makefiles
make: Nothing to be done for 'Makefiles'.
make includes
make: Nothing to be done for 'includes'.
make depend
gccmakedep  --      -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                               -D_POSIX_SOURCE -D_XOPEN_SOURCE        -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                           -DFUNCPROTO=15 -DNARROWPROTO      -- main.c EmiClock.c menu.c gengine.c        gdata_cbase.c gdata_char.c gdata_cmono.c credit.c credit_mono.c        sound.c rcfile.c misc.c CascadeMenu.c version.c
user@brain:~/emiclock/emiclock-2.0.2$


uuser@brain:~/emiclock/emiclock-2.0.2$ make
rm -f main.o
gcc -c -g -O2 -fno-strict-aliasing         -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                                -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                           -DFUNCPROTO=15 -DNARROWPROTO     -DSIGTYPE=void main.c
In file included from /usr/include/arm-linux-gnueabi/sys/types.h:25,
                 from /usr/include/X11/Xlib.h:38,
                 from /usr/include/X11/Intrinsic.h:53,
                 from main.c:44:
~
fi
user@brain:~/emiclock/emiclock-2.0.2$


user@brain:~/emiclock/emiclock-2.0.2$ sudo make install
[sudo] password for user:
install -c   emiclock /usr/bin/emiclock
cp resources/Xaw/EmiClock.ad .
install -c -m 0444 EmiClock.ad /etc/X11/app-defaults/EmiClock
install in . done
user@brain:~/emiclock/emiclock-2.0.2$


user@brain:~/emiclock/emiclock-2.0.2$ ./emiclock --help
./emiclock: Unknown command line option "--help".
Usage: ./emiclock [options]
        -toolkitoption ...
        -nossound
        -nosave
        -noscache
        -noshape
        -perfect
        -grayscale
        -gray4
        -mono
        -help
        -version
user@brain:~/emiclock/emiclock-2.0.2$

xhime 常駐姫ちゃん (X11上で動作するデスクトップマスコット的なアニメーションソフト)

xhimeはX11上で動作するデスクトップマスコット的なアニメーションソフトです。
常駐姫ちゃんとも呼ばれています。(オリジナルはPC98版で、それをX11に移植したものですす。)
(「姫ちゃんのリボン」という昔のアニメのキャラクターをモデルにしたスクトップマスコットです。)

インストールは、aptなどでのインストールはできず、ソースからコンパイルする必要があります。
xhime – 常駐姫ちゃん X Window System 版 – からソース アーカイブを入手し、
解凍したものをBrainxに転送して、コンパイルするのですが、
まずは Imakefileから Makefileを生成します。
xmkmf -a

user@brain:~/xhime/xhime151/xhime1.51$ xmkmf -a
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
make Makefiles
make: Nothing to be done for 'Makefiles'.
make includes
make: Nothing to be done for 'includes'.
make depend
gccmakedep  --      -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                   -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE  -DAUDIO_DEVICE=\"/dev/audio\"  -DMAILSPOOL_PATH=\"/usr/spool/mail/\" -DXHIMEDAT_PATH=\"/usr/lib/X11/xhime\" -DXSYSV_SIG   -- xhime.c

In file included from xhime.c:28:
/usr/lib/gcc/arm-linux-gnueabi/10/include/varargs.h:4:2: error: #error "GCC no longer implements <varargs.h>."
    4 | #error "GCC no longer implements <varargs.h>."
      |  ^~~~~
/usr/lib/gcc/arm-linux-gnueabi/10/include/varargs.h:5:2: error: #error "Revise your code to use <stdarg.h>."
    5 | #error "Revise your code to use <stdarg.h>."
      |  ^~~~~
user@brain:~/xhime/xhime151/xhime1.51$

エラーになりました。
非常に古いソフトウェアなので、ソースの修正が必要なようです。

理由は、現在非推奨になっている”varargs.h”というヘッダファイルを使っていて、
最新の環境ではコンパイルできないためです。

このため以下の部分を修正します。(varargs.hをstdarg.hに変更する関係で、該当するソース部分も変更する必要があります。)

28行目付近

include <varargs.h>

include <stdarg.h>

 
118行付近

void
Error(va_alist)
va_dcl
{
va_list args;
char *fmt;

fprintf(stderr, "%s: ", ProgramName);

va_start(args);
fmt = (char *)va_arg(args, char *);
vfprintf(stderr, fmt, args);
va_end(args);

fprintf(stderr, "\n");
}

void
ErrorExit(va_alist)
va_dcl
{
va_list args;
char *fmt;

fprintf(stderr, "%s: ", ProgramName);

va_start(args);
fmt = (char *)va_arg(args, char *);
vfprintf(stderr, fmt, args);
va_end(args);

fprintf(stderr, "\n");
exit(1);
}

void Error(const char *fmt, …)
{
    va_list args;
    fprintf(stderr, "%s: ", ProgramName);
    va_start(args, fmt);
    vfprintf(stderr, fmt, args);
    va_end(args);
    fprintf(stderr, "\n");
}

void ErrorExit(const char *fmt, …)
{
    va_list args;
    fprintf(stderr, "%s: ", ProgramName);
    va_start(args, fmt);
    vfprintf(stderr, fmt, args);
    va_end(args);
    fprintf(stderr, "\n");
    exit(1);
}

改めて、コンパイルします。
(Makeでワーニングが出てますが、まずはコンパイルを目指します。)
xmkmf -a
make
make install

実行は ”xhime &” でマスコット(姫ちゃん)が表示されます。

マウスの左ボタンで移動ができます。右ボタンで終了します。 中央のボタンを押すと、表示ウィンドウを一番上に(Raise)します。 デフォルトでは Return キーに反応してアニメーションが変化します。

が、Returnキーを押しても、アニメーション(いけいけGoGOジャーンプ)してくれません。
コンパイル時のワーニング部分にキー入力判別のあたりがあるのでこの辺は後日対応したいですね。(warning: ‘XKeycodeToKeysym’ is deprecated [-Wdeprecated-declarations])

xhime -use_vm &  で起動すると、姫ちゃんの周りにウィンドウ枠が表示されますが、
その中であればEnterキーに反応しますので、動作確認にどうぞ。

(2026/1/17追記)
xtermからxhimeを起動したところ、Enterキーに反応しました。
Brainux標準のlxterminal から起動すると反応しないので、
何か条件があるのかもしれません。

 

インストールログ

user@brain:~/xhime/xhime151/xhime1.51$ xmkmf -a
mv -f Makefile Makefile.bak
imake -DUseInstalled -I/usr/lib/X11/config
make Makefiles
make: Nothing to be done for 'Makefiles'.
make includes
make: Nothing to be done for 'includes'.
make depend
gccmakedep  --      -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                   -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE  -DAUDIO_DEVICE=\"/dev/audio\"  -DMAILSPOOL_PATH=\"/usr/spool/mail/\" -DXHIMEDAT_PATH=\"/usr/lib/X11/xhime\" -DXSYSV_SIG   -- xhime.c


user@brain:~/xhime/xhime151/xhime1.51$ make
gcc -g -O2 -fno-strict-aliasing         -Dlinux -D__arm__ -D__arm32__ -U__arm -Uarm -D_POSIX_C_SOURCE=199309L          -D_POSIX_SOURCE -D_XOPEN_SOURCE                          -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                   -DFUNCPROTO=15 -DNARROWPROTO   -DSHAPE  -DAUDIO_DEVICE=\"/dev/audio\"  -DMAILSPOOL_PATH=\"/usr/spool/mail/\" -DXHIMEDAT_PATH=\"/usr/lib/X11/xhime\" -DXSYSV_SIG    -c -o xhime.o xhime.c
In file included from /usr/include/arm-linux-gnueabi/sys/types.h:25,
                 from /usr/include/X11/Xlib.h:38,
                 from xhime.c:13:
/usr/include/features.h:187:3: warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
  187 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
      |   ^~~~~~~
xhime.c: In function ‘CheckEvent’:
xhime.c:944:3: warning: ‘XKeycodeToKeysym’ is deprecated [-Wdeprecated-declarations]
  944 |   XKeycodeToKeysym(MyDisplay, event.xkey.keycode, ix) );
      |   ^~~~~~~~~~~~~~~~
In file included from xhime.c:13:
/usr/include/X11/Xlib.h:1687:15: note: declared here
 1687 | extern KeySym XKeycodeToKeysym(
      |               ^~~~~~~~~~~~~~~~
xhime.c:946:7: warning: ‘XKeycodeToKeysym’ is deprecated [-Wdeprecated-declarations]
  946 |       if (XKeycodeToKeysym(MyDisplay, event.xkey.keycode, ix) == ActionKeysym){
      |       ^~
In file included from xhime.c:13:
/usr/include/X11/Xlib.h:1687:15: note: declared here
 1687 | extern KeySym XKeycodeToKeysym(
      |               ^~~~~~~~~~~~~~~~
xhime.c: In function ‘ResetChild’:
xhime.c:1333:3: warning: implicit declaration of function ‘wait’ [-Wimplicit-function-declaration]
 1333 |   wait(&stat);
      |   ^~~~
xhime.c: In function ‘OpenData’:
xhime.c:411:31: warning: ‘strncat’ specified bound 256 equals destination size [-Wstringop-overflow=]
  411 |    if (STR_TAIL(path) != '/') strncat(path, "/", sizeof(path));
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xhime.c: In function ‘GetMailPath’:
xhime.c:581:36: warning: ‘strncat’ specified bound 256 equals destination size [-Wstringop-overflow=]
  581 |     if (STR_TAIL(MailPath) != '/') strncat(MailPath, "/", sizeof(MailPath));
      |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xhime.c: In function ‘OpenData.part.0’:
xhime.c:412:4: warning: ‘strncat’ specified bound 256 equals destination size [-Wstringop-overflow=]
  412 |    strncat(path, fname, sizeof(path));
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xhime.c:419:4: warning: ‘strncat’ specified bound 256 equals destination size [-Wstringop-overflow=]
  419 |    strncat(path, fname, sizeof(path));
      |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
xhime.c: In function ‘GetMailPath’:
xhime.c:582:5: warning: ‘strncat’ specified bound 256 equals destination size [-Wstringop-overflow=]
  582 |     strncat(MailPath, (char *)getenv("USER"), sizeof(MailPath));
      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
rm -f xhime
gcc -o xhime -g -O2 -fno-strict-aliasing       xhime.o -lXext -lX11   -lm
user@brain:~/xhime/xhime151/xhime1.51$



user@brain:~/xhime/xhime151/xhime1.51$ sudo make install
[sudo] password for user:
install -c   xhime /usr/bin/xhime
+ mkdir -p /usr/lib/X11/xhime
+ install -c -m 0444 rh110.xhm /usr/lib/X11/xhime
install in . done
user@brain:~/xhime/xhime151/xhime1.51$



user@brain:~/xhime/xhime151/xhime1.51$ xhime --help
xhime version 1.51 by `Shochan' Shoichi-NAKAYAMA (C) 1994-1996,1998
  Original: `rhime.exe' by MSP-Iris (C) 1994
usage: xhime [<options>] [<filename.xhm>]
  options are:
    -help              Print usage message and exit
    -display <host:n>  Specify the host and display number
    -geometry <+X+Y>   Specify the geometry
    -key <keyname>     Specify the keysym of the special key
    -nokey             Don't check for the special key
    -noshape           Don't use shape extension
    -bg <color>        Specify the background color
    [-N | -B | -D]     Draw in normal, brighter, or darker colors
    -<statenumber>     Specify the action state
    -use_wm            Use window manager
    -audio <audiofile> Specify audio file
     [-audev <dev>|-aucmd <cmd>]
                        Specify audio device or command
     -showaudio         the same as ``-aucmd showaudio''
    -biff              Enable biff feature
     -file <mailfile>   Specify the mail file
     -update <sec>      Specify the mail polling interval
     -nobell            Don't ring the bell when mails arrive

 

xfishtank X のルートで様々な熱帯魚が泳ぐ壁紙上の水槽が楽しめます。

X のルートを水槽にして、様々な熱帯魚が泳ぐ壁紙上の水槽を楽しめます。

インストールは、APT経由で可能です

sudo apt instsll xfishtank

実行は、” xfishtank & “で起動できます。
デフォルトでは、泡の数:32、魚の数:10です。
必要であれば、オプションで、変更できます。
 

インストールログ

user@brain:~$ apt show xfishtank
Package: xfishtank
Version: 2.5-1+b1
Priority: optional
Section: games
Source: xfishtank (2.5-1)
Maintainer: Marius Gavrilescu <marius@ieval.ro>
Installed-Size: 449 kB
Depends: libc6 (>= 2.10), libimlib2 (>= 1.4.5), libx11-6
Homepage: http://jim.rees.org/computers/xfishtank.html
Tag: game::toys, interface::graphical, interface::x11, role::program,
 scope::utility, uitoolkit::xlib, use::entertaining, x11::screensaver
Download-Size: 77.7 kB
APT-Sources: http://archive.debian.org/debian bullseye/main armel Packages
Description: turns your X root into an aquarium
 Enjoy an animated aquarium background with a variety of tropical fish
 swimming in it on your screen.




user@brain:~$ sudo apt install xfishtank
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libid3tag0 libimlib2
The following NEW packages will be installed:
  libid3tag0 libimlib2 xfishtank
0 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.
Need to get 293 kB of archives.
After this operation, 1,129 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://archive.debian.org/debian bullseye/main armel libid3tag0 armel 0.15.1b-14 [29.9 kB]
Get:2 http://archive.debian.org/debian bullseye/main armel libimlib2 armel 1.7.1-2+deb11u1 [185 kB]
Get:3 http://archive.debian.org/debian bullseye/main armel xfishtank armel 2.5-1+b1 [77.7 kB]
Fetched 293 kB in 2s (125 kB/s)
Selecting previously unselected package libid3tag0:armel.
(Reading database ... 73715 files and directories currently installed.)
Preparing to unpack .../libid3tag0_0.15.1b-14_armel.deb ...
Unpacking libid3tag0:armel (0.15.1b-14) ...
Selecting previously unselected package libimlib2:armel.
Preparing to unpack .../libimlib2_1.7.1-2+deb11u1_armel.deb ...
Unpacking libimlib2:armel (1.7.1-2+deb11u1) ...
Selecting previously unselected package xfishtank.
Preparing to unpack .../xfishtank_2.5-1+b1_armel.deb ...
Unpacking xfishtank (2.5-1+b1) ...
Setting up libid3tag0:armel (0.15.1b-14) ...
Setting up libimlib2:armel (1.7.1-2+deb11u1) ...
Setting up xfishtank (2.5-1+b1) ...
Processing triggers for man-db (2.9.4-2) ...
Processing triggers for libc-bin (2.31-13+deb11u11) ...



user@brain:~$ xfishtank --help
xfishtank: invalid option -- '-'
usage: xfishtank
                [-c color]  background color
                [-b limit]  number of bubbles (default 32)
                [-f limit]  number of fish (default 10)
                [-i mult]   move interval (default 0.2)
                [-r rate]   move frequency (default 0.2)
                [-m num]    median cut to this many colors
                [-C num]    use only this many color cells
                [-d]        clip fish, swim on root window
                [-p file]   fish swim on picture in file
                [host:display]
user@brain:~$

 

xfireworks Xのルートウィンドウ上で花火が打ちあがります

XFireworks は、X のルートウィンドウで花火大会を開催します。
これは、日本語の “花火大会” の模倣です。 日本で夏に行われる上に有名なイベントであり、川辺で行われます。花火の種類も豊富で,とってもきれいです.

起動は、「xfireworks &」です。
「xfireworks -no-direct-draw &」で起動すると花火の動きがスムーズになる気がするけど、
安定しているのは、「xfireworks &」のほうな気もします。

オプションで、打ち上げ頻度や残像の残り方などのパラメータが変更できるようで、
好みにあわせてみてください(詳細は、man xfireworksを参照してください。)

インストールは、APT経由で可能です

sudo apt instsll xfireworks

 

XMascot Xの画面上で揺れるマスコットを表示する プログラム (2025/12/14追加)

XMascot のページ

XMascot は、X Window System の画面上に可愛いマスコットを表示する プログラムです。
重力加速度と鎖の長さから振り子運動を計算して、マスコットを揺らしてくれます。
標準の重力加速度は 0.17G(地球加速度の1/6,月面上と同じ)、減衰係数0.01です。
調整すると、揺れ方が変わります。

詳しくは、公式ページのFAQをご確認ください。

標準では、動物シリーズ(10種類)、星座シリーズ(12種類)のキャラクターが用意されています。

また、このアプリ公開当時はいくつかの外部データが公開されていたのですが、
ページごと消えているところも多く、現時点で探してみると以下の2つが見つかりました。
「同級生2」マスコット
「下級生」マスコットのページ

インストールは、aptなどでのインストールはできず、ソースからコンパイルする必要があります。今回は、追加データも含めてインストールしてみます。
途中、そのままではエラーになるので、文字コードの変換やソースなどの一部変更等を行っています。

$ cd
$ mkdir XMascot
$ cd XMascot
$ wget https://cclub-flying.dsl.gr.jp/products/xmascot/xmascot2.6a.tar.gz
$ wget https://cclub-flying.dsl.gr.jp/products/xmascot/dokyu2/dokyu2mas.tar.gz
$ wget https://cclub-flying.dsl.gr.jp/~sage/bin/kakyumas.tar.gz

$ tar zxvf xmascot2.6a.tar.gz
$ cd xmascot2.6a
$ cd mascots
$ tar zxvf ../../dokyu2mas.tar.gz
$ mv dokyusei2 dokyu2
$ mkdir kakyu
$ cd kakyu
$ tar zxvf ../../../kakyumas.tar.gz
$ cd ../../

$ find ./ -type f -not -name ‘.gif’ -not -name ‘.mag’ -not -name ‘.au’ -not -name ‘.raw’ | xargs -i nkf -w -Lu –overwrite {};

$ vi Imakefile

XMascot.ad:: XMascot.ad.sed
sed ‘s!SOUND_COMMAND_NAME!$(SOUND_COMMAND)!;s!XMASDIR!$(XMASDIR)!’ XMascot.ad.sed > $@
sed ‘s!menu1!menu1!’ mascots/zodiac/zodiac.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu2!’ mascots/dokyu2/dokyu2.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu3!’ mascots/nadesico/nadesico.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu4!’ mascots/kakyu/kakyu.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu5!’ mascots/eva/eva.Xdefaults >> $@

XMascot.ad:: XMascot.ad.sed
sed ‘s!SOUND_COMMAND_NAME!$(SOUND_COMMAND)!;s!XMASDIR!$(XMASDIR)!’ XMascot.ad.sed > $@
sed ‘s!menu1!menu1!’ mascots/zodiac/zodiac.Xdefaults >> $@
sed ‘s!menu1!menu2!’ mascots/dokyu2/dokyu2.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu3!’ mascots/nadesico/nadesico.Xdefaults >> $@
sed ‘s!menu1!menu4!’ mascots/kakyu/kakyu.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu5!’ mascots/eva/eva.Xdefaults >> $@

——————-

japanese/XMascot.ad:: japanese/XMascot.ad.sed
sed ‘s!SOUND_COMMAND_NAME!$(SOUND_COMMAND)!;s!XMASDIR!$(XMASDIR)!’ japanese/XMascot.ad.sed > $@
sed ‘s!menu1!menu1!’ mascots/zodiac/zodiac.Xdefaults.jp >> $@
XCOMM sed ‘s!menu1!menu2!’ mascots/dokyu2/dokyu2.Xdefaults.jp >> $@
XCOMM sed ‘s!menu1!menu3!’ mascots/nadesico/nadesico.Xdefaults.jp >> $@
XCOMM sed ‘s!menu1!menu4!’ mascots/kakyu/kakyu.Xdefaults.jp >> $@
XCOMM sed ‘s!menu1!menu5!’ mascots/eva/eva.Xdefaults.jp >> $@

japanese/XMascot.ad:: japanese/XMascot.ad.sed
sed ‘s!SOUND_COMMAND_NAME!$(SOUND_COMMAND)!;s!XMASDIR!$(XMASDIR)!’ japanese/XMascot.ad.sed > $@
sed ‘s!menu1!menu1!’ mascots/zodiac/zodiac.Xdefaults.jp >> $@
sed ‘s!menu1!menu2!’ mascots/dokyu2/dokyu2.Xdefaults.jp >> $@
XCOMM sed ‘s!menu1!menu3!’ mascots/nadesico/nadesico.Xdefaults.jp >> $@
sed ‘s!menu1!menu4!’ mascots/kakyu/kakyu.Xdefaults >> $@
XCOMM sed ‘s!menu1!menu5!’ mascots/eva/eva.Xdefaults.jp >> $@

$ vi xmascot.h

enum{ NODAT, STRING, ID, SYMBOL, RESERVE } TokenType;

typedef enum{ NODAT, STRING, ID, SYMBOL, RESERVE } TokenType;

$ xmkmf -a
$ make
$ sudo make install

$ sudo cp mascots/dokyu2/.mag /usr/lib/X11/xmascot/
$ sudo cp mascots/kakyu/.mag /usr/lib/X11/xmascot/
$ sudo chmod +r /usr/lib/X11/xmascot/*.*

これで、一通りインストールが完了しました。それぞれ、以下で起動できます。

$ xmascot &
$ xmascot -name dokyu2 &     #同級生2マスコット
$ xmascot -name kakyu &     #下級生マスコット


(参考)
マスコットデータ フォルダ:          
  /usr/lib/X11/xmascot/
Xリソースファイル(Unicode:日本語リソース):  
  /usr/lib/X11/en_US.UTF-8/app-defaults/XMascot
Xリソースファイル(Default:デフォルトリソース):
  /etc/X11/app-defaults/XMascot


もし、xmascot &で起動して全てのキャラクターをメニューから選択したいのであれば、Xリソースファイルを、以下のように置換してみてください。
(viでは、:%s/dokyu2/menu2./g のように操作すると、文字列の一括置換ができます。)

dokyu2* -> menu2. kakyu -> *menu3.

*menu2.popup.label: -> *menu2.title:
*menu3.popup.label: -> *menu3.title:

*menusNum: 2 -> *menusNum: 4

 

xdesktopwaves Xのルートウィンドウ上で水の波をシミュレーション

xdesktopwaves は X ウィンドウシステムを水面下におくセルオートマトンです。 ウィンドウとマウスが海上の船のようになり、各動きが水の波を引き起こします。 雨を触らせたり嵐で水をかきみだしたりすることもできます。

xfishtank、XMascot(下で紹介)と一緒に動かすと、結構いい感じになります。
(XMascotの減衰係数を0にするのがコツで、これにより波が発生しつつけます。)

インストールは、APT経由で可能です

sudo apt instsll xdesktopwaves

 

dclock X Window System 向けの柔軟な表示設定が可能なデジタル時計

Dclock の主要機能は、その描画方法における柔軟性の高さです。
“date” からの出力による “Wednesday, 3rd Jan” のような表示さえ可能です。
Dclock はアラーム設定もサポートしています

表示はいろいろとカスタマイズ可能です(例)。

dclock                   12時間表示(デフォルト)
dclock -m                 24時間表示
dclock -date “%p %Y-%m-%d (%a) “ 下にAM/PM表示 年-月-日(曜日省略形)を表示
dclock -m -date “%Y-%m-%d (%a)” -dateup 24時間&上に年-月-日(曜日省略形)を表示
dclock -m -seconds            24時間&秒を表示する

インストールは、APT経由で可能です

sudo apt instsll dclock

 

mxclock 絵柄が綺麗な時計です.

公式サイト

普通の時計です。サイズ変更は出来ません。
マウスの左右ボタンで文字盤(4種類)を切替えられます。
起動時オプションで秒針も表示できます(-sec)

    <起動時のオプション>
            -sec
                    秒針を表示します。
            -p patternnumber
                    時計の図柄を選択します。-p 1 という感じで使います。
                    使用できるパターンは0〜3の4通りです。
            -display hostname:display[.screen]
                    表示するディスプレイの指定をします。
            -geometry {+-}xoff{+-}yoff
                    表示位置の指定をします。

    <実行中の操作>
            マウスの左右ボタンで文字盤を切替えられます。

インストールは、aptなどでのインストールはできず、ソースからコンパイルする必要があります。

$ cd
$ mkdir mxclock
$ cd mxclock/
$ wget https://ftp.vector.co.jp/05/92/1347/mxclock.taz
$ tar xf mxclock.taz
$ cd mxclock.d
$ xmkmf -a
$ make
$ sudo make install

 

SunClock 時刻と地理データを表示可能な可愛い時計

sunclock は、世界地図を表示し、昼の地域を明るく、夜の地域を暗く描画 することにより、地球に太陽光が照らされた地域を示します。 デフォルトのタイムゾーンに対するローカルタイムを示すだけでなく、 主要な都市の GMT 時間、法定時および太陽時、都市の緯度経度、 地球上の任意の二点間の距離を表示できます。 Sunclock は、経線、緯線、南北回帰線および極圏を表示できます。 時間の進み方を加速し、四季の移り変わりを表示する組み込み機能を 有しています。

メインは世界地図表示ですね。都市の選択とかはやり方がわからなくて、できていませんが
世界地図だけでも環境インテリア的にはいいかと。

(詳細は、man sunclockを参照してください。)

インストールは、APT経由で可能です
sudo apt instsll sunclock

 

Xantfarm X11用のシンプルなアリ農場

公式サイト:xantfarm

Xantfarmはアリ塚をシミュレートし、ルートウィンドウに表示します。
アリの世界には三つの元素があります:空気です。 アリは空気中を移動し、を掘り起こし、それを砂として落とします。 アリには3つの行動があります:さまよい運搬する、パニックです。 プログラムにはいくつかの簡単な確率が組み込まれています これは、放浪運搬の間の切り替えを制御します。 パニックになるのを見るには、カーソルでアリをつついてみてください。

実行例
xsetroot -solid Brown
xantfarm ~/.xantfarm.checkpoint -num 10 -c 150 -air Cyan -sand Coral -ant Black

定期的に状況を保存して、次回起動時に続きから開始できるようにします
(5000サイクル間隔で保存なので標準の15cpsだと5分に1回保存します・)
-num:100 (アリの数 標準は10)
-c :150 (1秒間に実行するサイクル(CPS) 標準は15)
あと、空(-air),砂(-sand),アリ(-ant)の色も変えられます。
地面の色は、X11のルートウィンドウの色になりますので、別で指定します。
xsetroot -solid Brown

色指定は、X11 color names – Wikipediaが参考になります。

終了後に画面が残るので、xsetroot コマンドで初期化してください。
 

インストールは、ソースからのビルドになります。

$ cd
$ mkdir xantfarm
$ cd xantfarm
$ wget https://www.acme.com/software/xantfarm/xantfarm_14Aug2014.tar.gz
$ tar zxf xantfarm_14Aug2014.tar.gz
$ cd xantfarm
$ xmkmf -a
$ make
$ sudo make install

 

———-

XMangekyou X11で動く万華鏡です

公式サイト:XMangekyou

万華鏡です.
変化しながらくるくるまわる映像はとってもきれいですが,トリップしすぎて
まわりに怪しがられないように気をつけてください.
壁紙に張り付けることもできます.
ある条件で,アニメーションがはじまっちゃったりします。

いろいろ表示のカスタマイズができるようです。
詳しくは、”nkf README.euc | more”で確認してください。

アニメーションが始める条件については、どこにも記載がありませんが
ぜひソースファイルを読んで、条件を探してみてください。
場所探すのはそんなに難しくはありません。あとは条件を満たしてみてください。

 

インストールは、ソースからのビルドになります。

$ cd
$ mkdir XMangekyou
$ cd XMangekyou
$ wget https://kozos.jp/myfreesoft/xmangekyou-2.0.1.tar.gz
$ tar zxf xmangekyou-2.0.1.tar.gz
$ cd xmangekyou-2.0.1

・configure.hを変更します。
#define XMANGEKYOU_LIB “/usr/X11R6/lib/X11/XMangekyou/”

#define XMANGEKYOU_LIB “/usr/local/lib/X11/XMangekyou/”

・Makefileを変更します。
XMANGEKYOU_PREFIX = /usr/X11R6

XMANGEKYOU_PREFIX = /usr/local

$ make
$ sudo make install

 

———-

Xshodow「書道」のアプリケーションです.

公式サイト:XShodou

XShodou は,UNIX の X Window System 上で動作する, 「書道」のアプリケーションです. マウスのドラッグを繰り返すことにより,だれでも気がるに「書道」 が楽しめます.

Shodou は FreeBSD 用ですが,Tck/Tk で書いてあるので,
UNIX ならば それほど苦労することなく,移植できるでしょう.
実行には Tck/Tk が必要です.
詳しい使用方法は,インストール後に man xshodou をご覧ください.

起動は、テーミナル上で「xshodou」で起動します。

マウスで筆をシミュレーションして書道をすることができます。
マウスドラッグで筆の移動。
マウスの右クリックを押すと筆を下に下げます(=線が太くなる)、
逆にマウスの左クリックを押すと筆を上にあげます(=線が細くなる)

なので残念ながらタッチパネルだけで操作すると1筆書きになっちゃいます。

インストールは上に書かれているように、Tck/Tk で書かれているので、
環境に合わせてファイルを書き替えてからインストールするだけです
(ビルドは不要)。

$ cd
$ mkdir XShodou
$ cd XShodou
$ wget https://kozos.jp/myfreesoft/xshodou-1.11.tar.gz
$ tar zxf xshodou-1.11.tar.gz
$ cd xshodou-1.11
$ sudo apt install tcl tk

$ vi Makefile
XSHODOU_PREFIX = /usr/X11R6

XSHODOU_PREFIX = /usr/local

$ vi xshodou
#!/usr/local/bin/wish

#!/usr/bin/wish

set title_file /usr/X11R6/lib/X11/XShodou/xshodou-title.xbm

set title_file /usr/local/lib/X11/XShodou/xshodou-title.xbm

$ sudo make install

 

———-

 

Brainで「痛デスクトップ」?

上記のアプリを組み合わせると、こんなbrainで「痛デスクトップ環境」が作れます。

痛デスクトップ レシピ
xeyes &
emiclock &
oneko -tomoyo &
oneko -sakura &
xhime &
macopix trh_nanoha.mcpx &
xpenguins –all -n 10 -m 150 &
Terminai 内アプリ: top

アクアリウム時計 レシピ
xfishtank &
xdesktopwaves &
XMascot &      # 蟹、重力加速度 0.02G、減衰係数 0.00
dclock -m &
xclock &

 

他、試してみてほしいアプリありましたら、コメントで

教えてください

Views: 521

カテゴリー: Brainux | コメントする