« 記憶にございません第3話 | トップページ | 記憶にございません第5話 »

2009年1月15日 (木)

記憶にございません第4話

皆の者、大儀である。なんだ?あきらめたんじゃないかと言う、そこの武将よ。ふふふ、今年の信長はひと味違うのじゃ。例のmikroCの吐き出すアセンブルリストのアセンブラコード化だが、少しこつがあり候。ググってみても、それらしい記事はなく、あえて報告することでもないのか、誰もやらないかのどちらかだろうw。PICのアセンブラがわかる武将はもちろん、わからない武将でもできるかと思うのでここで報告致そう。実行ファイルを書き込んでテストしたところとりあえず問題なく動作しておるようだ。これでまだやる気がうせることはなさそうじゃ。残りの2byte変換データも追加して期待どうりLCDに出すことができ、誠に大儀である。
1.mikroC tools optionsのoutputでinclude C source lines in output fileのチェックボックスを外す
  ※optionのAddressとopcodeは外してもなぜかファイルに反映されないようだ
2.buildする

 lstファイルを参照
3.変数マッピング情報を拾う
 ファイルの最後に変数マッピング情報があるが、"+1"などの表現があるものは無視する
4.Address順にプログラムコードを並び替え(なぜもともとソートされてないのか不思議)
5.Ediotor等でADDRESSとOPCODE部分を削除
 正規表現で置換
 例) $0000 $2804   GOTO _main  ⇒  GOTO _main
 例) $ _Delay_1us: ⇒ _Delay_1us:
6.#や@#を変換
 # ⇒ table Addressのlow側を意味する
  #@ ⇒ table Addressのhigh側を意味する
7.CLRF命令のオペランドを削除
 例)CLRF ANSEL, 1 ⇒ CLRF ANSEL

Ca390275

« 記憶にございません第3話 | トップページ | 記憶にございません第5話 »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 記憶にございません第4話:

« 記憶にございません第3話 | トップページ | 記憶にございません第5話 »