ここから本文です

CC65で書いたソースをNESASMに直すとどうなりますか?

tko********さん

2010/9/1304:04:38

CC65で書いたソースをNESASMに直すとどうなりますか?

cc65でファミコンゲームを作ったのはいいんですが、
NESASMのアセンブリソースに直すと下のソースはどうなりますか?

void SetDraw(char x,char y,char number)
{
int adr;
adr = (y-1)*32+x;
*(char*)0x2006 = 0x20+adr/256;
*(char*)0x2006 = adr;

*(char*)0x2007 = number;
}

私はWindowsXPで、開発環境を整えています。NESASMもインストールしてあります。

補足お二方へBorlandC++Compiler5.5のmakeコマンドを使ってメイクしています。
どうすれば、アセンブリソースが見れるのか知りたいです。

この質問は、活躍中のチエリアン・専門家に回答をリクエストしました。

閲覧数:
768
回答数:
2
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

zwi********さん

編集あり2010/9/1517:28:12

cc65の出力は普通にアセンブラのソースコードですよ。
NESASMでアセンブルできるかは確認していませんが。
cc65に付属のca65でアセンブルするのはダメなのですか?

>お二方へBorlandC++Compiler5.5のmakeコマンドを使ってメイクしています。
>どうすれば、アセンブリソースが見れるのか知りたいです。

そちらはmakefileを見せてもらえないと何とも・・・。
コマンドでcc65 ソースファイル名と打てはアセンブラは拡張子.sで出力されますよ。

質問した人からのコメント

2010/9/15 19:56:14

参考になりました。ありがとうございました。

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

qui********さん

編集あり2010/9/1517:41:39

6502はいじったことがないんですが、

普通、Cのコンパイラはコンパイル結果をアセンブラレベルで吐き出すことが出来ます。特に8bit機では最後にアセンブラレベルでチューンするなんていうのはしばしば行われていましたから、出来ないはずはないと思います。

そこで吐き出したアセンブラをそのまま使うなりチューンして使うなり考えてみてはいかがでしょう。

補足について
zwigooさんの情報からすれば、cc65はアセンブラソースを吐く、とすれば、ビルド(make)作業をしているディレクトリにアセンブラファイル(*.s)が残っているんじゃないですか? 消しちゃったらソースを変更しなくても再コンパイルが始まっちゃいますし。

その他にもcc65のオプションを調べれば、Cソースとの対応情報をアセンブラレベルに出力させたりも出来るかも知れません。今後なにかの時のためにも、きちんとオプションを調べて手動でも適切なコンパイルが出来るだけの情報を集めておきましょう。

しかし、makefileの内容も把握しないで「開発環境を整えています」と言い切るのはちょっと。

あわせて知りたい

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる