MSX VIEWer開発裏話(05)


連載目次

記述内容はすべて当時のものです。

いよいよ、MSX BASICのプログラムを表示する、という機能を実装していくわけですが、MSX VIEWerの開発を考え始めたときからリッチエディットコントロール(RTF(リッチテキストフォーマット)ファイルを表示するためのソフトウェア部品、Delphiに付いてくる)を使うことは決めていましたので、考えるべきはいかにして中間コードからRTFに起こすか、ということでした。当初は、

中間コード(バイナリ)をデコードしてテキストにする

それをRTFファイルに出力する

そのRTFファイルをウィンドウに表示する

という手順を考えていました。

MSX BASICではプログラムを中間コード形式だけでなく、テキストファイルとして保存すること(アスキーセーブという)もできます。これに相当する機能、つまりRTFとして画面に表示した内容をテキストファイルとしても出力する機能も付けることにしました。

この機能(アスキーセーブ相当機能)は、はじめはメニュー等からその機能が呼び出されるたびに、画面(リッチエディットコントロール)から内容を1文字ずつ読み出してファイルに出力するようにしていました。

このときはまだ、リッチエディットコントロール内の編集を可能にしていましたので、編集した後の内容をアスキーセーブすることで、BASICプログラムエディタのような機能もあわせ持っていたことになります。

しかし、ここで大きな問題が発生しました。

つづく。

(05/31/2004 01:03:56 AM)