「アセンブラがディスクを破壊する!?」トラ技2002年6月号
ちょっと昔話を。
ラジオペンチさんところの
・おもちゃ病院用のDC安定化電源の製作
へのコメント、「アセンブラで書いた」に関し、
こんなことがあったと思い出しました。
トラ技にレポートしています。
↓
トランジスタ技術2002年6月号 p166
「アセンブラがディスクを破壊する!?」
表紙↓
発端はトラ技2000年7月号付属のCD-ROM。
この中に入っていたAVRマイコンのアセンブラ。
AVRASM EXE 106,578 99-01-27 1:30
AVRASM: AVR macro assembler version 1.30
(Jan 27 1999 01:30:00)
Copyright (C) 1995-1999 ATMEL Corporation
このアセンブラを使って
『エラーのあるソースをアセンブルすると
ディスクが壊れる』
というバグが出現するのです。
エラーの無いソース(アセンブルエラーなし)では
このバグは出てきません。
EEPROMに初期データを入れない時も大丈夫。
chkdskした痕跡から、こんなことを推測。
・アセンブラでエラーが生じたときは
作りかけたEEPROMデータファイル
は不要。
・他のファイルと一緒にファイルを消去
という流れの中、このファイルだけ
「ファイルのクローズ前にファイルを消去」
をしているのかも。
このファイルを消去しているINT21をスキップするように
パッチを当てて解決しました。
そのため、本来なら消えてしまう一時ファイルも
残ったままに。
EXEファイルへのパッチ当て、MS-DOS環境ではあたりまえの
スキルでしたが、今はさてどうでしょう。
もう行うこともないでしょね。
というか、アセンブラを単独では使わない世界になって
しまいました。
※参考
おもちゃ病院用CVCC電源 ←このソースファイルです。
ダウンロード - volt1.zip
パッチを当てたAVRASMを同梱しています。
コマンドプロンプトで実行を。
| 固定リンク
「トラブル遭遇」カテゴリの記事
- 今日の失敗:パーツクリーナーで「ポリスチレン」にダメージ(2023.11.10)
- 今日の修理:チャートレコーダ(2023.11.09)
- 愛用のハンダゴテ・・・コテ先が取れないゾ!(2023.10.27)
- 電磁石の接触面の状態で保持力が変わるの?(2023.09.28)
- 懐中電灯・液漏れだぁ。(2023.04.05)
コメント