RustでSGI Indyエミュレータを作った(AIと一緒に)

· ai coding devtools · Source ↗

まとめ

  • SGI Indy(MIPS R4400)向けRustエミュレータ。IRIX 6.5および5.3をネットワーク・X11/Newportグラフィックス対応で起動可能。オプションでCranelift JITも利用でき、主にClaudeとGeminiを活用して開発された。

注目ポイント

  • Cranelift JITは3段階構成で、MIPSの基本ブロックをALU演算のみ→ロード対応→フル対応へと昇格させる。ホットブロックのプロファイルはセッション間で保存され、次回起動時の即時ウォームアップを実現。
  • REX3グラフィックスのJITは、ユニークな (DrawMode0, DrawMode1) ペアごとにネイティブシェーダーをコンパイルし、座標ステッピング・クリッピング・シェードDDA・パターンアドバンスをインライン展開する。
  • コピーオンライトのディスクオーバーレイにより、ベースの .raw イメージは読み取り専用のまま維持され、書き込みはスパースオーバーレイへ。開発・テスト中のファイルシステム破損を防ぐ。
  • rules/ ディレクトリには、JITディスパッチとIRIXデバッグで得た知見が明示的に記録されており、人間のコントリビューターとAIアシスタントの両方を対象としている。
  • IRIXターミナル入力の安定性を確保するには、マウスがキャプチャされるウィンドウよりもポートフォワーディング+telnet 127.0.0.1:2323 が推奨される。

Hacker Newsコメント動向

  • まだ実質的な議論は少なく、初期反応は短くポジティブなものが中心。エミュレーション精度・JITの正確性・AIによるコード品質についての技術的な議論は見られない。

注目コメント

  • @eb0la: エミュレータ内で hinv を実行し、古いSGI IRIXのCDを復元して実機との出力を比較したいとのこと。

原文 | HNで議論する


英語版: Show HN: My friend and his AI homies wrote SGI Indy emulator in Rust · Original source