2020年04月29日

Fedora 32でOpenMSXをコンパイル

世界中で新型コロナが猛威を振るう中、Fedora 32が出たのでクリーンインストールする空気読めないおっさんの物語。

これ書いてる時点でのOpenMSXの最新バージョンは0.15.0。
OpenMSX 0.15.0をコンパイルするとPython 2インストールしろと怒られた。
Python 2サポート終了だもんな、うん。

$ sudo dnf install python2

で、インストール可能。
その後コンパイルすると、

/usr/bin/ld: derived/x86_64-linux-opt/obj/sound/YM2151.o: in function `openmsx::YM2151::initTables()':
YM2151.cc:(.text+0xa30): undefined reference to `__exp2f_finite'
/usr/bin/ld: YM2151.cc:(.text+0xbd7): undefined reference to `__logf_finite'
/usr/bin/ld: YM2151.cc:(.text+0xc39): undefined reference to `__logf_finite'
/usr/bin/ld: YM2151.cc:(.text+0xcad): undefined reference to `__logf_finite'
collect2: エラー: ld はステータス 1 で終了しました
make: *** [build/main.mk:555: derived/x86_64-linux-opt/bin/openmsx] エラー 1

とか言われて怒られた、そんなこと言われても。。。
仕方がないので、ソースを展開したディレクトリのsrc/sound内にあるYM2151.ccを適当にテキストエディタで開く。
最初の方にある、

#include

の下辺りにでも、

#include

の1行を追加して保存。
後は普通にコンパイルすれば通ります。
タグ:Linux fedora OpenMSX
posted by えとかみ at 15:58| Comment(0) | TrackBack(0) | パソコン

2019年12月23日

Raspberry Pi 4のケース

AmazonにあるGeekwormのアーマー金属ケースにあるカスタマーレビューに、

> この製品の紹介にある Raspberry Pi 4基板と 国内技適済 Paspberry Pi 4基板では、ICチップの配置が異なる。
> USBコントローラICと イーサネットコントローラICの 配置が入れ替わっており、アルミニウムケース内面のヒートシンクの出っ張り部と 各ICが 正確に接合しない。
> そのため ヒートシンクとしての効果が期待できない構造になっている。
(※Amazonカスタマーレビューからの引用)

と、いうのがあったので、同じところが製造しているであろうPimoroni版で確認してみた。


真ん中付近の出っ張りとUSBコントローラチップの位置があっていないことが分かる。

しかし分からないのは、この配置が入れ替わっている、という部分で、手元の技適版と海外の技適未対応品の画像と見比べてみても入れ替わっているように見えない。
というか、イーサーコネクタとUSBコネクタに対してちぐはぐにチップを入れ替えるメリットが感じられない。

ケースの出っ張りの大きさや付属テープの大きさからイーサー側のチップ用に見えるのだが、本来冷却したいのはあっちっちなUSBコントローラだと思うので……
このことから考えるに、このケースの設計自体に問題があるんじゃないか、というのが私的な結論。

うーん、買ってしまった以上はどうにもな感じで、こういう書き方はよろしくないのかもしれないが……
まあ、中華クオリティ、ということで納得するしかないのではなかろうか。
いや、ケースのコンセプトは間違ってないんだけど、ね。。。

半分くらいはUSBコントローラに接触するので、全く冷却効果が得られないわけでもないと思う。
この辺納得して買うのはあり、かもしれないけど、まあお勧めはしない。
posted by えとかみ at 11:38| Comment(0) | TrackBack(0) | Raspberry Pi

2019年12月09日

Raspbian Busterでxnp2をコンパイルしたらエラー出た件

Raspbian Busterでxnp2をコンパイルしようとしたら色々問題出たので書いてみる。
ていうか、こいついっつもxnp2コンパイルしてんな、とか思われそう。


*MIN MAXマクロがどうたらこうたらエラー

http://etokami.sblo.jp/article/183744301.html?1575887577

昔書いた記事参照、パッチもあるYO!


*configure中にACX_PTHREAD command not foundと出る

そのままコンパイルするとエラーで止まる。
原因さっぱり分からないが、対処法ならなんとかなる。
CFLAGSとCXXFLAGSに-pthreadを入れるか、LDFLAGS="-lpthread"で対処可能。


*SDL2.0だと音が出ない

公式発表だと2.0.2にバグがある、しかしインストールされているのは2.0.4。
2.0.2のバグは既に修正されているらしのだが。。。
Fedora 31でも試したがやはり音が出ない。
前に自分で作ったSDL Mixer2.0使ったゴミソフトは音が出てるので、xnp2側の問題。
対処できないかと思ったけれど、エラーすら吐かないのでお手上げ状態。
暫定的な対処法としてSDL1.2を強制する。

./configure --disable-sdl2

な感じでオプション入れるとSDL1.2を使うようになるので音が出る。


*Pulseaudio運用時音が出ない、音が遅れる、音が割れる、全体が処理落ちする

xnp2だけでなく色んなところに影響でる。
対処法は、Pulseaudioを使わないか、/etc/pulse/default.paを編集して、

load-module module-udev-detect

上記項目を探して、

load-module module-udev-detect tsched=0

と、変更して保存して再起動。


念の為、xnp2は必ず-O2オプションで最適化すること。
つけないと大幅にパフォーマンスが落ちる。


せっかくなので、コンパイル時間を計測してみた。
ちょっとしたベンチマーク代わり。
下記オプションを付与してコンパイル。
--enable-build-all --disable-sdl2 (※以下適当な最適化オプション)
全て-jオプションはなし。

Raspberry Pi 4 + Raspbian Buster
real:4m55.199s
user:3m53.159s
sys :0m57.241s

Core i5 750 + Fedora 31
real:1m49.604s
user:1m32.390s
sys :0m15.499s

Atom N270 + Ubuntu14.04
real:8m34.423s
user:7m40.824s
sys :0m45.724s

腐ってもCore i5というか、我がPCの圧勝ではないか。
後10年は戦える(戦うとまでは言ってない)。
そして、さすがにAtom N270に対して倍の速度を出している。
Cortex-A72はできる子だな!
-j2で温度がこの時期ですら70度に到達する点を見なければ、だけど。


■おまけ(※ここからはお暇な人だけどうぞ)

Raspberry Pi 4

うん、買っちゃったんだ、Raspberry Pi 4。
USB周りが修正されているOkDOのやつです。
輸入したい衝動にかられてたけど、ズルズル時間が経過して気がついたら日本でも発売されてしまった。


Transcend TS32GUSD300S


使用しているSDカードはこれ、トランセンドのTS32GUSD300Sというやつ。
問題なく使えています。
Raspberry Pi 4では現状Ubuntu MATEが厳しいようなので、暫定的にRaspbian Buster入れてます。


PIMORONI Heatsink Case


PIMORONIの金属ケース、Heliodr Gold。
しかし現状はむき身で使っているため、このケースはまだ使ってません。


Raspberry Pi 4


KSYのACアダプタ。
Raspberry Pi 4に使えそうなACアダプタの選択肢なんてない。
ぁゃιぃ中国製か怪しくない中国製のどちらか。
Raspberry Pi 4を買うなら必ずACアダプタも一緒に買うこと。
KSYなりRS公式なりで買えば怪しくないほうを買うことができるでしょう。

さて、以前のパーツがほとんど使いまわせないため買い直し。
この結果予算がオーバーしてしまった。
しかしRaspberry Pi 4はMicro HDMIなので普通のHDMIケーブルが使えない。
さてどうしよう。。。


Raspberry Pi 4


DAIS○でこんなの買った。
かつては携帯電話の変換ケーブルで左右逆に音が出る不具合品を堂々と販売していた百均ショップ。
しかし残念なことにこの変換アダプタは普通に使えている。
やるじゃん……いや、これが普通なのか。


当たり前が幸せ、だから良かった探しの旅に出ます、現実逃避と言うのかも知れません。
タグ:xnp2 PC-9801
posted by えとかみ at 20:22| Comment(0) | TrackBack(0) | Raspberry Pi

2019年11月01日

Linuxで遊ぶRemasteredでないBioshock

恐縮だが、そろそろXBOX360版のDLCを出してもらえないか。
VITA-CHAMBER縛りで難易度ハードのラスボス直前セーブデータ残してあるんですけど(´・ω・`)
そんなBioshockのPC版をSteamのハロウィンセールの時に買ってみた。

動作させるPCはいつもの産廃自作PC。
CPU: Core i5 750
MEM: DDR3-12800 4GBx2
GPU: Radeon HD 6770
OS : Fedora 31+Proton 4.2

Remasteredで試せよ、とか言うな、こんなゴミPCで動くと思うか。
ProtonDBを見る限りRemasteredも動くはず、しかしPCがこのザマでは試しようがない。
Protonは4.2を使用、4.11は現状鬼門でProtonDBでもあまりいい報告はない。
実際4.11ではCall of Duty: Modern Warfareが起動不能だった。

Bioshock
Linux上で動作しているBioshock

事前にソフトの起動オプションに、

PROTON_NO_D3D11=1 PROTON_NO_ESYNC=1 %command%

と、指定。
%command% -nointroと追加すると、起動時の諸々をすっ飛ばしてタイトル画面になります。

グラフィック設定はウィンドウモード、1024x768に変更した以外は初期状態のままである。
設定はHighが並ぶ重そうな状態なのだが、面白いことにGallium Nine不使用でも十分な性能が出ている。
ほとんどのところで60fps安定、落ちる時にはfpsは落ちるが30fpsを割ることは今のところ見受けられなかった。
Bioshockは意外と軽量なのかもしれない。
パフォーマンス的には非常に安定しているため、現状Gallium Nineは使用していない。
Gallium Nineも性能と引き換えのデメリットがあるので、使わないに越したことはない。

また日本語modも普通に動作する、上記のスクリーンショットは日本語modを入れた状態のもの。
横着してFlashMoviesディレクトリを上書きせずそのままコピーしたらファイル足らなくて起動しなくなったわな。
ちゃんと日本語mod内のFlashMoviesディレクトリをゲーム内の同ディレクトリに上書きしましょう。
しかし、有志翻訳のものと比べると、スパイク訳の「恐縮」は本当にうまい翻訳の仕方だったな、と。
サポートは超絶うんこだけどな。

しかし困ったこともあり、なにこれマウスが超ハイセンシ。
1センチくらいマウス動かしたら視界が1周する、まともに操作できないんだけど。
そこで設定ファイルいじってみる。
設定ファイルのありかは、

(Steamのインストール先)/steamapps/compatdata/7670/pfx/drive_c/users/steamuser/Application Data/Bioshock

上記ディレクトリの中にあるUser.ini。
とりあえず[Default]内のMouseX、MouseY末尾にある2500.0を500程度に落としてみたのだが、正直微妙。
しかもいまいち不安定。
もう少し頑張って色々設定変えてみようか。。。
posted by えとかみ at 22:23| Comment(0) | TrackBack(0) | Linux de ゲーム

Linuxで遊ぶMyst Masterpiece EditionとRiven The Sequel to Myst

(※2019年12月9日追記)
その後Myst Masterpiece Editionも買ってみた。
ほぼRivenと同じ結果なので、下記のRivenをMystに置き換えて参照。

しかしSteamのレビューだとWindowsで動かない、アニメーションが動作しない、とか色々書かれてるのがね。
Cryo InteractiveのAtlantis日本語版もだけど、Windowsで動作せずにLinuxで普通に動くってのも妙な話。。。

ちなみにAtlantisはパッチを当てると近年のWindowsでも動きます、しかし海外版に早変わり。


(※以下旧記事)

Steamのハロウィンセールの時に買ってみた。

Riven The Sequel to Myst
Linux上で動作しているRiven

ProtonDBにてGOLD判定なので、普通に動くと考えてはいたが。。。

起動させるとフルスクリーンで壮大に拡大した状態で起動する。
ALT+ENTERでウィンドウ表示できたりするが、Proton(恐らくWineも)下だとパネルの間に拡大表示されるだけでウィンドウ表示にならない。

そこでProton(というかWine)の仮想デスクトップを使って無理矢理ウィンドウ下してみる。

*Myst Masterpiece Editionの場合
$ WINEPREFIX=(Steamのインストールディレクトリ)/steamapps/compatdata/63660/pfx winecfg

*Riven The Sequel to Mystの場合
$ WINEPREFIX=(Steamのインストールディレクトリ)/steamapps/compatdata/63610/pfx winecfg

Rivenのwinecfgを出して画面タブをクリックし、

フルスクリーン ウィンドウでマウスを自動的に補足する → オン
ウィンドウ マネージャがウィンドウを装飾するのを許可する → オフ
ウィンドウ マネージャがウィンドウを制御するのを許可する → オフ
仮想デスクトップをエミュレートする → 800x600

こんな設定で起動すると、確かにウィンドウ表示されるのだが、今度はこのウィンドウの表示位置を左上から動かすと仮想デスクトップのマウスの位置がズレてしまいまともに操作できなかった。
また純粋に画面の左上にウィンドウがないとズレるため、MATEのように上部にパネルがあるとこれが邪魔になるおまけ付き。
なお、高さ24ピクセルのパネル直下にウィンドウがあれば、ギリギリクリアできることは確認済み。

ちなみにプランBとして、仮想デスクトップを大きく設定し起動後ALT+ENTERでウィンドウ化して、この中でウィンドウの位置を変える手段もある。
が、いまいち不便なのが欠点である。
この問題さえ見なければ、恐ろしく快適にプレイできる。
プレステ版は持っているが、比較にならないくらい快適にクリアできた。
タグ:Steam RIVEN Proton
posted by えとかみ at 21:46| Comment(0) | TrackBack(0) | Linux de ゲーム

2019年10月05日

QUASI88とディスクイメージ

PC-8801エミュレータで使われるD88ディスクイメージ用のツールを作っているときに気がついた。
QUASI88 0.6.4でトラックをWrite IDするとディスクイメージが破損する。
なんでだろう、と調べたら、どうもQUASI88は使用未使用に関わらず1トラック5,632バイト必ずあることを前提に動いているようで……
M88や他の抽出ツールなどで作られた一般的なD88イメージは、存在するデータ量だけが保存される仕様であることから起こるようである。

M88等で256バイトセクタ×16の1トラック4,096を作って、QUASI88で同じトラックを例として1,024バイトセクタ×5の計5,120バイトセクタでフォーマットすると後続のトラックをオーバーライトする。
このD88イメージをダンプしてみたら、ヘッダ内にあるトラックテーブルも一切変更されていない。
本来トラックの大きさに合わせて変動しないといけないのだが。。。

フォーマットしなければよい、という話かもしれないが、しかしそうもいかないのがみんな大好きμPD765A。
このFDC、最終的なセクタサイズはWrite ID(フォーマット)のときではなく、Write Data(データ書き込み)のときに決まってしまうという特徴がありまして。。。
IDを調整した256バイトセクタ×16を作り1024バイトセクタ×5でWrite Dataすると5,120バイトトラックになったりします。
レアケースではあるが、データ書き込みでもトラックサイズが変動します。

このため、QUASI88以外で作られたディスクイメージをQUASI88で使うと最悪ディスクイメージが破損します。
前述の自作ツールでもこの仕様に頭を抱えている状態です。

ちなみに自作ツールは、N88-DISK BASICフォーマットされたディスクイメージに直接データを入出力できる、現状CUI(CLI)で動作する完全Linux専用のいわゆる自分さえ使えればいい俺様ソフトです。
PC-8801エミュレータとLinux間のクロス開発を少しでも楽にするつもりで作ったもの。
概ね出来上がっていて動作テスト中、公開するかもだけど時期は未定。
こんなニッチ産業使いたい人もいないと思うけど、興味あるならコメントで書いてくれればα版を前倒しして公開します。
タグ:QUASI88
posted by えとかみ at 13:37| Comment(0) | TrackBack(0) | モバイル

2019年10月01日

今年の広島東洋カープ

(※2019年11月1日追記)
最後のほうで巨人からの人的補償とか書いたが……まさか誰もFA宣言しないなんて!
来年広島にアクシズでも降ってくるんじゃなかろうか。
いやはや、残留表明した各選手には感謝、としか。
特に早々と表明した日本で一番名前の密度が高い人とか。
そして菊池はメジャーで頑張れ、としか。


(※以下以前の書き込み)
全てはあの最終戦かな、と。
最終戦でCSまで日があるから全戦力を投入でき、逆に中日は試合も残っていて、ついでにズムスタ。
超短期決戦型の試合でこれだけ有利で勝てないほうがおかしい条件だけど負け。
死闘の末負ける、のならいいけど、いつもの投手の状態を見極められず点を入れられる相変わらずの進歩ゼロな監督の采配負け。
正直CS行けなくて正解、こんなので短期決戦の鬼神であるラミレス監督に勝てるわけない。
CS行っても勝てる可能性はゼロでベイスターズに虐殺される晒し者プレイになるだけだった。
これが緒方前監督の本当の実力で、4年前の再現という身の丈にあった終わり方だと思う。

しかし緒方だけならいつものことで終わるのだが、佐々岡まで同じクソ采配をやってるのはどういうことだ。
これはどう考えてもおかしい、そこで考えた。
この世代以降は優勝から遠ざかった日シリや(当時はまだないがCS)をろくに経験していない世代であることを考えると……どうも未経験故に短期決戦のやり方を根本的に知らないのではなかろうか。
だから短期決戦の場であってもワンパターンにリーグ戦と同じ戦い方をしてしまう。
サッカーの天皇杯みたいなのが野球にもあれば少しは違ったかもしれないが……
そう考えると、このカープという狭い野球しか知らないカープOBの誰が監督をやっても結果は変わらなさそう。
外から監督を呼ぶのが確実なのだが、約束手形と好き嫌いでしか選ばないあのオーナーではまともな人選を期待するのも無理。
なのだが、一人だけ、状況を打破できそうな人がいる、黒田だ。
理由は広島以外の野球を知っていて元オーナーも悪印象を持っていない、彼以上に適任な人物はいないだろう、本人がやりたがるかは別として。

さて、こうなった以上目下の関心は今年の巨人からの人的補償が誰になるか、なんだけど、しかも場合によっては2人も。
さすがに同じことはやらないとは思うけど、去年と同じ若手中心のプロテクトだと……小林辺りが危険域かねえ。
生え抜き中堅ベテランですらプロテクト枠から漏れる可能性があるってのも、豪傑で凄い話なんですけど。
posted by えとかみ at 06:19| Comment(0) | TrackBack(0) | 日記

2019年08月15日

Android StudioでGradle Project sync failedに苦しめられる

自分の使いたいアプリを自作しようとFedora 30にAndroid Studioを入れてみた。
入れてみたのだが、プロジェクトを新規に作るとGradle Project sync failedと出てしまう。
ググって出た方法を片っ端から試すも成果なし……と、いうのが数日間。
やっとこさ原因と解決策が見つかったので書いておく。
書いてはおくが、かなりのニッチな原因なのでほとんどの人には役に立たないと思われる。


*原因
プロジェクトをシンボリックリンク以下に作った

*解決策
シンボリックリンクは使わずプロジェクトを絶対パスで指定して作成


いやはや、原因はこんだけだった(´・ω・`)
既にプロジェクトが作られている場合、

.idea/modules.xmlを編集してfileurlとfilepathを絶対パスで指定
「.idea/modules.xmlを消して同期」を成功するまで繰り返す

でも対処可能でした。


なお、kotlinなんて知らない、過去にJavaは1ミクロンくらいしか囓ったことがない、
こんな感じなので1から学習、アプリができるかは未知数な模様。
C言語で作っていいならなんとかなるかも。。。
posted by えとかみ at 16:27| Comment(0) | TrackBack(0) | モバイル

2019年07月09日

Linuxで遊ぶRemasteredでないCall of Duty 4: Modern Warfare

現状はProtonのValveサポート対象ソフトには含まれていません。
動かなかったから返金申請(はできるがこの場合非常識)、などどいう軽い気持ちでは絶対に試さないようにお願いします。
試す場合は損する覚悟の自己責任でお願いします。


天空の城ラピュタを観て思ったの。
親方、空からRadeon RX5700XTが!
なんて素敵なことがないかしら。

と、いうわけでSteamサマーセールの時に勢いで買ってみたRemasteredでないCall of Duty 4: Modern Warfare(長いので以下CoD4MW)を今更Linuxでプレイしてみた。
もっとも、ProtonDBではPlatinumなので動く確信があって買ったのだが。


動作環境は……

CPU: Core i5 750
MEM: DDR3-12800 4GBx2
GPU: Sapphaire Radeon HD6770 Flex Edition
OS: Fedora 30
Driver: Mesa 19.0.8

こんな産業廃棄物(´・ω・`)
今やこのサブPCは、この手の実験場と化しています。
空からRyzen7 3700xも一緒に降ってこないかな、カナッ?

Call of Duty 4: Modern Warfare
Linux上で動作しているCoD4MW


使用するProtonはこの時点で最新の4.2-9、当然先にインストール。
Steam→設定からSteam Playを選択、他のタイトルに使用するツールにお好みのProtonを選択。
対象ソフトを起動する時にProtonも自動インストールされるが、ライブラリ→ツールを選び、一覧からインストールさせることも可能。

CoD4MWを起動すると使用許諾が出て、その後Punk Buster→DirectX9をインストール。
Punk Busterインストール時Downloading a global config file failed(略)と出る。
その後は普通に起動、終了後再度起動すると、またも使用許諾が出た後に何事もなくPunk Busterが起動する。
問題ないのか、な?オンラインだと問題出るのかも?
おいらはオフ専でオンラインのプレイ予定はないのでこの件は判断しかねます。

起動した後のデフォルト設定でテストプレイ。

Video Mode: 1024x768
Anti-Aliasing: 4x
Shadows: Yes
Specular Map: Yes
Glow: Yes
Number of Dynamic Lights: Normal
Soften Smoke Edges: Yes
Ragdoll: Yes
Bullet Impacts: Yes
Model Detail: Normal
Water Detail: Normal
Number of Corpses: Medium

事前にコンソールからr_fullscreen 0→vid_restartでウィンドウ表示に切り替え。
この状態でプレイした結果だが……
Charlie Don't Surf冒頭でヘリ旋回時に20fpsを下回る。
The Bog冒頭で放置してみたら、20〜30fpsを行ったり来たり。。。

o...rz

Windows環境だとフル設定で40〜70fps出るとのことなので、これは悲しすぎる。
mesa_glthread=trueでも変わらず。
これがRadeon用オープンソースドライバの現実である。
おいらは選択肢がないから使ってるだけだが、こんなもんを好んで使うオープンソース原理主義者がいるのもまた事実。
皮肉な話だよね、自由なソフトウェアで不自由にハードウェアを使うんだから。

設定をかなり落とせば60fps前後は出るものの……悲しいなあ。
あーあ、やっぱビデオカード買わんといかんなあ。

……………………
………………
…………
……

まだだ!まだ物語は終わらない。

OpenGLを経由せずにDirectXから直接ドライバに渡すGallium Nineというものがあります。
で、これを試してみた。
しかし、なんだか苦労は買ってでもしろ、を体現してる気がするな、うん。

事前にd3dadapterをインストールしておかないと起動時にコケる。
必要なのは32bitライブラリだがついでに64bitのもいれる。

Redhat系
$ sudo dnf install mesa-libd3d mesa-libd3d.i686

Debian系(試してない)
$ sudo apt-get install libd3dadapter9 libd3dadapter9:i386

続いてProtonにGallium Nine Standaloneをインストール。
protontricksというのがあるが、おいらの環境で使うとエラーで落ちたりするので使用を断念。
winetricksで直接インストールした。

$ WINEPREFIX=(※Steamライブラリのディレクトリ)/steamapps/compatdata/(※SteamID)/pfx winetricks

CoD4MWのSteamIDは7940です。
起動後はSelect the default wineprefix→Install a Windows DLL or Componentを選び、
一覧から「galliumnine Gallium Nine Standalone(latest)」を選択してOKを選ぶとインストール。

インストール後起動すると、環境変わった?的なダイアログが出るので適当に選択。

Gallium Nine適応後に上記と同じ設定でプレイしてみると……
Charlie Don't Surf冒頭は落ちるところも30fpsはキープ。
The Bog冒頭で放置すると50〜70fpsを行ったり来たり。

((((;゚Д゚))))

なにこれすごい。
つーか、これパフォーマンス出過ぎだろ。
まさかオープンソースドライバでここまで性能出せるとは。。。
どうもこれそれなりにGPUを使ってくれるようで、CPU負荷が減りました。


*現状判明している問題点
ステージ終了時にDirectXがエラーを吐いて落ちることがある。
Gallium Nineが原因かは不明。

プレイから30分程度経過すると極度の処理落ちが発生するようになりました。
操作すると処理落ちが起こる、動かなければフレームドロップは発生しない。
CoD4MW自体を再起動することで元には戻る。
原因がソフト側なのかProtonなのかGallium Nineなのかは不明。

更にGallium Nine適応後はSteamオーバーレイが使えなくなります。
これが原因かは不明だけど、ゲーム上の機能でスクリーンショットが取れません。
上記スクリーンショットはMATEのスクリーンショットを使って無理矢理撮ったもの。


公式ProtonがGallium Nineを取り込んでくれればいいんだけどね。
Vulkan対応から見捨てられたRadeon環境に残された希望であることは間違いないです。

なお、他シリーズを試す予定はありません。
ProtonDBを見ても動作は厳しい上にソフトの価格も決して安くないので気楽には試せません。
とどめにModern Warfare 2がおま国でね、どこかのファイナルなんたらとか、かんたらクエストとかいうゲーム出してる会社のせいでしたっけ。
(※これ書いてた時点でCrysisがセール中だったので試そうかと思ったけどクソDRMに萎えて断念した模様。
GoG辺りで売られてるDRMフリーのやつをセールの時にでも買ってみようか、な?)


*おまけの日本語化

こちらを参照。

http://mod4life.gg-blog.com/%E6%97%A5%E6%9C%AC%E8%AA%9E%E5%8C%96mod/call%20of%20duty%204-%20modern%20war

めんどくさかったのでゲーム用のみ適応。
Proton下で動かしていても、問題なく日本語化できています。
posted by えとかみ at 21:14| Comment(0) | TrackBack(0) | Linux de ゲーム

2019年04月30日

OblivionエフェクトバグをLinuxで無理矢理対処

Oblivion
おい、あのカジート、後光が差してるぜ!
o...rz

エフェクトバグです、ありがとうございます。
225時間以上で、と書いてあるから余裕ぶっこいてたら100時間超えた辺りでこんなことに。
変なエフェクトが短時間出っぱなし、とか忘れたころにいきなりエフェクト発生とか珍現象が起こり始め、最終的にこんなことに。
これ、フレームレートで変わるんじゃないかね、高フレームレートだと早く発生するのかもしれない。
Steam+Proton+RadeonSIの破滅的なプレイ環境なので設定落としているため、出るときは140fpsくらい、平均60〜70fpsな状態で100時間程度プレイすると発症しました。

で、どうしよう。
Windows環境ならWrye Bashで解決する話もLinuxだとそうはいかない。
wine+winPython+Wrye Bashで動くらしいのだが、もっとお手軽に解決したい。
そうだ!ないなら自分で作ればいいんだお!
と、思わなければよかったな、と思いつつ……

Oblivion ABOMB Defuser for Linux
oblivion_abomb_defuser-v0.1alpha.7z

こんなのできた。
使ってみたい自分から地雷を踏みに行きたい人はどうぞ。
ただし現状人柱なアルファ版。
上の状況なセーブデータで修正できるのは確認済み。
もっともこんな特殊環境用ソフトを使いたがる人がいるとは……思えんわなあ。


*Oblivion Wiki JP(避難所)の情報が間違っているので、色々ここで補足してみる。

> セーブデータの末尾4バイトにFloat数が加算されるが、
セーブデータの末尾は間違い。
セーブデータのGlobal内にあるTesClassデータ部の末尾4バイトにgameModeSecondsという数値があり、これがABOMBの正体みたい。
上記のツールはこれを初期値に書き換えます。

> Play時間225時間前後で8.0となると突然発生する。
プレイ時間より環境で発症時間がどうも変わる。
8.0は初期値、524288.0程度で発症。
しかし上記セーブデータはこの半分程度(0x48000000辺り)で発症してしまった。
タグ:Steam Oblivion
posted by えとかみ at 19:38| Comment(0) | TrackBack(0) | パソコン