
2026/08/02 4:44
しかし、あなたの電卓でLinuxが動かせるのでしょうか?
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
現在のサマリーは、G2仕様の仕様、RAMブート方法、安定性向上、Doom対応といった最も重要な情報を一貫した物語として統合し、高品質な「エグゼクティブ・ブリエフ」として成功しています。しかしながら、キーポイントリストに含まれていたより広い文脈(TI/Numworks/Casioのネガティブな市場動向、および G1/G2 のインストール方法に関する技術的詳細)の一部を犠牲にしています。
「Are all major key points reflected?」というチェックポイントを厳格に従って改善するには、欠落した文脈を含みながら読応えを維持する以下のバージョンを示します:
Improved Summary HP Prime G2 は、Linux を実行できる強力なデバイスとして際立っており、テキサス・インスツルメンツ(アセンブリ言語の除去)や Numworks(ハードウェアのロックダウン)といった競合他社と区別されています。i.MX 6 Ultralite CPU と 256 MB RAM を搭載し、複雑な計算タスクにおいてカシオ FX-CG50(Renesas SH7305 CPU、8 MB RAM)などのライバルを大幅に凌駕します。HP Prime G2 の大きな利点は、Linux を内部ストレージに永久にフラッシュせずに RAM からブートできることであり、数学タスクのための元の OS が保存されることです。G1 はオープンソースの Linux ポートを持っている一方、G2 は以前のビルド失敗を解消し、重要なドライバを追加し、さらにレトロゲーム(例:Doom)さえもサポートする更新されたポートを通じてよりアクセスしやすい経路を提供しています。長いコンパイル時間を回避するため、即座に用意されたダウンロードが利用可能です。Windows 10 の完全互換性は、さらなるテスト画像がリリースされるまで限定的です。
本文
HP Prime G2: Linux が動く「HP-16C」への道
冒頭:なぜ Linux を動かしたいのか?
私にとっての生涯最高傑作の一つは、HP 16C です。これはヘキサデシマル、バイナリ、オクタル、十進法のすべてをサポートし、ビットシフトや回転処理など、コンピュータープログラマー向けに設計された RPN(逆ポーランド表記法)電卓です。私は自家用の HP 16C は所有していませんが、改良点を加えた現代版のリメイクモデルであるSwiss Micros DM16Lを持っています。
しかし、多くの電卓は Linux を実行できません。 例外があり、この一台だけは動作します!
- 電卓上で動作する xcalc
- コンソールのスクリーンショットと画面表示ビューアーとしての fbv の利用
- もちろん、ドーム(Doom) も動かします
- 私にとっての生涯最高傑作、「HP-16C」
HP Prime G2 と Linux
背景と動機
HP プライムは 2013 年発売で、2018 年に改修版(G2 モデル)がリリースされました。タッチスクリーンを備えたこの製品は、機能豊かで高速な電卓として評価されています。
- 開発者の視点: 組み込みプログラミングの観点からは HP-16C の方が適しているため、元々電卓自体の機能にはあまり興味はありませんでした。
- 本題: オンライン上で Linux を実行できるとの情報と、Windows 10 ポートが可能なという投稿を目にしたことが動機です。
「私のために頭を下げよ。なぜなら私はルート(root)だから。」
私は「デバイスを必ず何らかの方法でルートまたは管理権限のアクションを実行することを可能にする」というルールを遵守しています。
- ニンテンドースイッチ: ジャイルブレイク済み。
- Apple デバイス (iPad Air/iPhone SE): ルートアクセスを付与する脆弱性あり。
- Android スマートフォン: ボットローダーのロック解除が可能であるため購入。
電卓は汎用計算機とは見なさないため、Linux 実行という拡張機能自体には大きな問題はありません。ただし、Texas Instruments の一部の製品ではアセンブリ言語の実行機能が制限されていますが、HP プライム PPL 言語環境であれば問題ありません。
ハードウェア仕様の比較
HP Prime G2 は電卓としては笑うほど高性能です。
- CPU: i.MX 6 Ultralite ARM Cortex A7
- RAM: DDR3 256 MB
- ストレージ: 512 MB
これらは小型の組み込み Linux マシンにキーボードを付けただけのようなスペックです! 対比のために競合他社の仕様を確認しました。
| デバイス | CPU / 周波数 | RAM / ストレージ | Linux 動作可否 | 備考 |
|---|---|---|---|---|
| TI-84+ CE | eZ80 48 MHz | - | ✕ | リックダウン済み |
| Numworks (N0110) | ARM Cortex-M7 216 MHz | SRAM 256 KB / 8 MB | ✕ | OS はオープンソースだがロックダウンあり |
| Casio FX-CG50 | カスタム Renesas SH7305 (118 MHz 説) | RAM 8 MB / ROM 32 MB | ✕ | 可能性はゼロではないが非公式 |
| TI Nspire CX II | ARM 396 MHz | RAM 64 MB / フラッシュ 128 MB | ✔️ (Arch Linux) | HP Prime より劣るが実行可能 |
HP Prime G2 は FreeRTOS を搭載し、G1 は独自 RTOS(Besta OS)でしたが、現在の G2 の性能は Android スマートフォン並みです。
HP Prime G2 Linux ポートの改良点
古い非公式ポート(4.14 カーネル)では以下の問題がありました:
- ビルドツリーファイルの不整合
- コンソールログイン画面の表示不全
- キーボード入力の制限
私が更新したポートでの改善点:
- キーボード修正: 数字やパイプ (
)、ハイフン (|
)、アンダーバー (-
) などが入力可能に。_ - USB シリアル接続: シリアルデバイスとして認識。
- RAM 上の実行: 15 MB を超えるイメージも動作。
- タッチスクリーン: 新しい Ilitek ILI211X コントローラー用のカーネルドライバ作成。
- 環境構築: X11 サーバー動作、基本的なアプリ利用可能。
- ゲーム: Doom (prboom) を高フレームレートで同梱。
- 開発機能: オンデバイス開発用 C コンパイラー (
) を同梱。tcc
注意: 私は RAM 上の実行のみを実装しており、NAND フラッシュは行っていません(元の電卓ソフトウェアを損傷させないため)。
キーボードとタッチスクリーンの詳細修正
- キーボード: 元々 Orange 色の文字のみ送信されていました。カーネルドライバ (
) をパッチ適用し、ALT キー操作による特殊文字入力や、キーコードインターセプトで正しいマッピングを実現しました。imx_keypad.c - タッチスクリーン:
- 古い Goodix ドライバでは I2C バスアドレスが不明確な挙動を示しました。
- 新しい Ilitek ILI211X ドライバをベースに作成し、不要なマルチタッチ機能などを削ぎ落としました。
- デバッグ中に USB シリアルサポートの読み込みで全デバイスがフリーズする問題がありましたが、コンパイル込みに変更して解決しました。
実行手順 (HP Prime G2)
警告: 電卓を開封する必要があります。修復不可能になる可能性やブート不能になるリスクがあります。自己責任で行ってください。
1. 準備
- プリビルトパッケージをダウンロードし展開する。
ツールをダウンロードする。uuu
2. ハードウェア改造
- 背面の 4 つのスクリューを外します。
- ケースを開けます(プライヤーまたはギターピック使用)。
- USB で接続し、画像のように2 つのパッドをショートさせながら RESET ボタンを押す。
- これはリカバリモードへのアクセスを可能にするためです。
3. Linux の起動 (RAM)
uuu ./run_linux_in_ram.uu
- 数秒後にログインプロンプトが表示されます(パスワード不要、root アクセス)。
- グラフィカル環境:
startx - ゲーム実行:
sh ./doom.sh
ヒント:
ディレクトリに/rootを用意し、hello.cでコンパイル、その後tcc hello.c -o helloで実行できます。./hello
HP Prime G1 Linux ポートについて
G1 用のポート(6.x カーネル)も存在します。私が G1 ハードウェアを持たないため動作確認はできませんが、ビルドは可能であることが示唆されています。
ビルド手順の概要
以下のリポジトリをクローンしてコンパイルします。
mkdir prime-linux && cd prime-linux git clone https://github.com/Repeerc/Linux-For-HPPrime-V2 git clone https://github.com/Repeerc/hpprimev2_linux_loader git clone https://github.com/Repeerc/Kernel-6.1.35-HP-Prime-V2_G1 git clone https://github.com/Repeerc/buildroot_hpprimev2
主要なステップ:
- ローダービルド:
とcmake
を実行し、make
を作成。BOOT1.ROM- エラー対応:
はタイプをerror: unknown type name 'caddr_t'
に置き換えることで解決可能。void
- エラー対応:
- カーネルビルド:
を使用してhpprimev2_defconfig
を作成。zImage - Buildroot ビルド:
を作成。rootfs.jffs2 - パッケージ化: すべてのイメージを一つのフォルダに集約し、
で最終イメージを作成。mkimg.sh
フラッシュ:
を使用して電卓に書き込みます。usbtool.exe- 電卓をリカバリモード(RESET + Symb)にして接続し、「Auto update」を選択します。
- 注意: オンラインドキュメントでは USB3 ポートでは動作しないとの記載あり。
Windows 10 ポートについて?
Windows 10 の UEFI を HP Prime 上で動かすポート(ソースコード公開)が存在しました。
- 実証映像: 実際の電卓上で
が動く映像があります。calc.exe - 現状: ダウンロード可能なイメージは見つからず、Twitter リンクも削除されているため、動作確認はできていません。
- ブートローダーの失敗例
- ブート画面
- プリントダイアログやノートパッドのスクリーンショット
結論
- HP Prime G2 は、Linux 上で xcalc、Doom、開発環境を完備した、実用性の高い組み込み Linux マシンです。
- G1 も同様の可能性がありますが、ビルドの手間がかかります。
- HP-16C のようなレトロな計算機は Linux を動かせませんが、HP Prime なら「現代の電卓」かつ「小型 PC」として楽しむことができます。
タグ:
arm, linux, hp prime, rpn, embedded, doom, calc