1994年製のAppleのノートPC「PowerBook Duo 280c」に保存された音声ファイルを、現代のPCにコピーする方法をソフトウェアエンジニアのルークさんが解説しています。

How to Copy a File From a 30-year-old Laptop - Unterminated

https://www.unterminated.com/random-fun/how-to-copy-a-file-from-a-30-year-old-laptop



ルークさんはPowerBook Duo 280cに保存された音声ファイルを現代のPCで聴けるようにしてほしいと家族から依頼されたそうです。PowerBook Duo 280cは起動し、内蔵スピーカーも正常に動作するものの、PowerBook Duo 280c本体にはオーディオジャックがないため音声ファイルの良質なアナログコピーを作成することはできなかった模様。

また、PowerBook Duo 280cの内蔵ハードドライブは珍しいコネクタを備えたSCSIを採用しており、ファイルシステムにはHFSを採用していたそうです。外付けフロッピードライブも付属していたものの、これは故障しており動作しなかった模様。なお、外付けフロッピードライブの故障の原因は特定できなかったそうです。

この他、PowerBook Duo 280cにはAppleTalkポートと電話ジャックがあったものの、ネットワークソフトウェアはインストールされていなかったためインターネットに接続することはできませんでした。そもそも、PowerBook Duo 280cはインターネットが主流になる前の時代の端末で、現代のインターネットの基盤となっているプロトコルであるHTTPが完成する前の端末です。



しかし、PowerBook Duo 280cにはFAXソフトウェアがインストールされていたそうです。そこで、ルークさんは音声ファイルをFAX可能な形式に変換することに挑戦します。PowerBook Duo 280cにはResEditというリソースエディタがインストールされており、ResEditには16進エディタも含まれていたため、データファイルを16進形式で表示することができたそうです。



ResEditは印刷機能をサポートしていなかったため、印刷機能をサポートしている別のアプリケーションにテキストをコピーすることにしたルークさん。コピーしたい音声ファイルのサイズは3万7928バイトで、16進数表記だと各バイトが2つの文字で表されることとなるため、単純計算でその2倍ほどになります。しかし、PowerBook Duo 280cではコピー可能な文字数が最大3万2000文字であるため、複数回にわけてテキストをコピーする必要があったとのこと。



PowerBook Duo 280cにはMicrosoft Officeがインストールされており、印刷機能もサポートしていたため、コピーした16進数表記の音声ファイルをワードに貼り付けます。



なお、PowerBook Duo 280cに保存されている音声ファイルはすべてサイズが100KB未満だったため、ワードにコピーするのにそれほど時間はかからなかった模様。なお、ResEditで表記を16進数に変換し、クリップボード経由でワードに手動でコピーする際のデータ転送速度はおおよそ316バイト/秒だったそうです。

ルークさんはダイヤルアップモデムを搭載したノートPCのThinkPad T60を所有していたため、これを使ってPowerBook Duo 280cから音声ファイルを抽出することに決めます。なお、ThinkPad T60はWindows XPで動作しており、着信したFAXを複数ページにわたるTIFF形式の画像として保存できるFAXアプリケーションもインストールしていたそうです。しかし、PowerBook Duo 280cとThinkPad T60を電話ケーブルでつなぐだけではデータのやり取りを行うことはできなかった模様。



調べたところ、モデムが適切に機能するには実際の固定電話回線から供給される電圧が重要であることがわかったそうです。そこで、電話回線シミュレーター回路と一般的な電子部品を用い、適した電圧を供給するための装置を自作。



すると、PowerBook Duo 280cとThinkPad T60が電話ケーブルを介して接続されました。



これでようやくPowerBook Duo 280cからThinkPad T60へ、FAXアプリケーション経由で16進数に変換した音声ファイルを送信する準備が整いました。FAXページのラスタライズには時間がかかるものの問題なくクリア。FAXの送信には24分かかると表示されたそうです。



フォントサイズを小さくしたところ、送信予想時間を7分まで短縮することに成功。ファイルの転送も問題なく成功しました。



ここで問題になってくるのが、FAXアプリケーション経由で送信したTIFF画像をバイナリファイルに戻す方法です。ルークさんはTIFF画像をPDF形式に変換し、光学文字認識(OCR)技術を使ってテキストデータに変換。そして16進数エディターを用いてファイルを元の音声ファイルに復元します。



その結果、音声形式が符号なしの8ビットPCMで、サンプリング周波数は22050Hzのモノラル音声であることが判明。実際に再生することも可能で、1994年製のノートPC内蔵マイクで録音された音声ファイルであることを考えると「なおさら良い音声に聴こえた」とルークさんは記しています。



ただし、録音音声にはパチパチという音やノイズが発生しており、これはOCRのミスによるエラーの影響だそうです。実際、OCRは数字の「0」とアルファベットの「C」、数字の「9」と「4」、数字の「0」とアルファベットの「D」などを混合することがよくある模様。

エラーなしで正確に文字を認識するのはOCRでは不可能ということで、ルークさんはTIFF画像を構成する各文字をひとつずつ分析するためのツールを作成。



この手法で復元した音声ファイルはノイズやパチパチ音がない完璧な音声ファイルだったそうです。