Spreadtrum SC6531 チップを搭載したフィーチャーフォンへの Doom の移植

ドゥームポート

彼らは基本的な携帯電話で運命を実行することに成功しました

運命は再び話すために与えられました そして、この記事では、このゲームの新しいプロジェクトについて話します。これは、考えもしなかった場所に到達することができました。 そして、多くのプログラマーの努力と創造力のおかげで、「スクリーンがあればドゥームがある」という表現が最大限に表現されるようになったということです。

今日お話しするプロジェクトは、 FPDoom プロジェクト そしてその目新しさは、 Spreadtrum SC6531 チップに基づく基本的な電話の運命。

ドゥームを知らない人は知っておくべき 先駆的な一人称シューティング ゲームの XNUMX つと見なされます。 IBM 互換コンピューターの時代に、3D グラフィックス、XNUMXD 空間性、マルチプレイヤー ネットワーク プレイ、MOD サポートなどの新しい機能を導入することによって

Doom のソース コードは 23 年 1997 月 XNUMX 日に公開されました。 Doom はもともと DOS 用に作成されましたが、リリースは Linux バージョンであり、ソース コードを DOS やその他のオペレーティング システムに移植する必要がありました。

ソースコード もともとは独自のライセンスの下で公開されていました これは商用利用を禁止し、開発者が実行可能な形式で公開した変更のソース コードを提供することを要求しませんでした。 現在、ほとんどの Doom ソース ポートはオープン ソースです。. GNU GPL では、ソフトウェアで GPL コードを使用する作成者は、変更されたソース コードもリリースする必要があります。

これらのチームに Doom を導入するというアイデアは、 Spreadtrum SC6531チップのより多くの変更、そして何よりも これらは基本的な電話市場の大部分を占めています 中国、ロシア、その他の国で。

このチップは、ARM926EJ-S プロセッサに基づいています。 周波数が 208 MHz (SC6531E) または 312 MHz (SC6531DA) で、ARMv5TEJ プロセッサのアーキテクチャです。 そして、それはすべて良すぎるように聞こえますが、移植には高度な移植の複雑さがあり、それは次の要因によるものであることが言及されています。

  • これらの電話で利用できるサードパーティのアプリはありません。
  • 少量の RAM: わずか 4MB (ブランド/ベンダーはこれを 32MB と記載することがよくありますが、メガバイトではなくメガビットについて言及しているため、誤解を招きます)。
  • ドキュメンテーションがクローズされたため (古いバージョンと下位バージョンからのリークのみを見つけることができます)、リバース エンジニアリング手法を使用して多くの情報が抽出されました。

とりあえず、 チップのほんの一部しか調査されていない:USB、画面、キーなので、USBケーブルでコンピューターに接続された電話でのみプレイでき(ゲームのリソースはコンピューターから転送されます)、ゲームにも音はありません。

現在の形式では、ゲームは SC6 チップに基づいてテストされた 9 台の電話のうち 6531 台でリリースされています。

SC6531 に Doom をインストールするには?

のために プロジェクトのテストに興味がありますか?で共有されているビルド手順に従うことができます。 次のリンク。

このチップを起動モードにするには、起動中に保持するキーを知る必要があります (F+F256 モデルの場合、これは「*」キー、Digma LINX B241 の場合は「中央」キー、F​​+Ezzy 4 の場合は「中央」キーです)。 «1» キー、Vertex M115 – «up»、Joy's S21 および Vertex C323 – «0»)。

ゲームを実行するには、作業ディレクトリ workdir を作成し、そこに Doom リソース ファイル (たとえば、Doom 1 のシェアウェア バージョンの doom1.wad など) を配置する必要があります。

その後、スクリプトで次のコマンドを実行し、電話を接続する必要があります。

./spd_dump --wait 300 fdl nor_fdl1.bin 0x40004000 fdl fpdoom.bin ram
cd workdir && ../libc_server -- --bright 50 --rotate 3 doom

--bright X は電話スクリーンの明るさです (X = 0..100)。
--rotate S[,K] は、90 度単位の画面/キーボードの回転です (-1 または 3 = -90、1 = +90 など)。

このタイプの携帯電話のすべての LCD 画面は垂直であると述べられているため、デバイスに横画面がある場合、それは横に配置された縦型 LCD 画面であることを意味するため、異なる S 値と K 値を使用する必要があります。

これに加えて、doom -timedemo demo1 など、Doom の追加オプションを追加できます。

最後に あなたがそれについてもっと知りたいなら このポートについてはもちろん、対応機種一覧など、詳細をご確認いただけます 次のリンクで。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。