「アセンブラがディスクを破壊する!?」トラ技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を同梱しています。
コマンドプロンプトで実行を。
| 固定リンク
「トラブル遭遇」カテゴリの記事
- 歯医者の残物:ヘッドランプ(2025.12.29)
- 24クリックのロータリーエンコーダ、調子が悪くなり交換(2025.11.20)
- MADE IN USAでも信じるな!(ミノムシクリップの話)(2025.11.11)
- 8文字×2行のI2C液晶表示器に注意(2025.10.21)
- ATtiny1614につないだ32kHz水晶発振子、隣のピンの影響を受けるみたい(2025.10.06)



コメント