検索結果 70 件

by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

スプライトのジョイパッドによる移動までやるつもりですが、途中経過です。
任意の位置にきわめて限定的ですが、任意のスプライトを描画できました。

ただ、パレットの指定が出来ていないのが残念です。

ソースは、添付しておきます。というか、win7でもa816.exeが動くのが不思議です。
nesasmは古いバージョンだと動かないみたいなので。。。

追記
readme.txtを添付し忘れていました。すみません。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

目的は恐らく同じではないでしょうか。作る為には、知識が必要なので。 ところで、このサイトは初めて知りました。 かなり詳しい所まで書いてあり、勉強になります。図も描いてあるし、分かりやすいです。 65816アセンブラを勉強するにはもってこいですね。 a816のサンプルプログラムを改造して作っていたのですが、表記の仕方といちいち、lda.b @$2100と @とピリオドとb w lを使い分けなければいけないのもあって、慣れません。 また、サンプルプログラムで変数に@をつけている場合とつけていない場合があり、どちらが正解なのか 分かりづらい部分もあります。 NESASMのような、$(アドレス)や#(...
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

ある程度期待が持てるようなプログラムなのですが(スプライト表示のための)
X座標とY座標を指定する方法がイマイチ分かりません(アドレッシングモードやアセンブラの指定の
仕方など)

ファミコンのゲームを作っていた頃は、比較的小規模で開発できましたし、8ビットの壁みたいのが
ありましたが、
スーパーファミコンは、16ビットのファミコンよりも規模の大きいゲーム作りになりそうな予感がします。

あと、a816にはサンプルプログラムが付いていたので、それを改造したソースにしています。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

今までファミコンとPCエンジンのプログラムをアセンブリ言語で(NESASM,MAGICKIT)
作った事がありますが、スーパーファミコンは、かなり難しい印象を持ちました。

でも、多分c言語の場合は、
cでレジスタを書いてるのを理解していないからcでしか作れないんだと自分で思います。
あとは、65816のアセンブリ言語を理解する事から始めないといけないみたいです。

ファミコンやPCエンジンのCPUである6502が分かるので、少しはマシですが。。。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

ああ、なるほど。それも考えていたのですが、やはり解析が必要みたいですね。
考古学みたいな感じでしょうか。。。

ソースコードを添付しました。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

ちなみにc言語ではある程度目星が付いてます。
BG書き込みや、スプライト表示、移動、ジョイパッドなどが使えますが、
まだまだ分からない事だらけです。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

Re: スーパーファミコンでの1つのスプライトの表示方法について

softya(ソフト屋)さんへ
//この掲示板にSFC経験者いないんじゃなかなぁと思いますが(私はGBは経験あり)、
//解析なら手伝いますがソースコードを要求されるのは無理かなと思います。

返信ありがとうございます。
分かりました。
どうやら開発経験者が居ないみたいなので、
c言語の(snes sdk)開発環境で作ろうと思います。
by KEYONN_
5年前
フォーラム: C言語何でも質問掲示板
トピック: スーパーファミコンでの1つのスプライトの表示方法について
返信数: 14
閲覧数: 2546

スーパーファミコンでの1つのスプライトの表示方法について

久しぶりです。KEYONN_です。 どうしても分からない事がありまして、ここに質問させてもらいます。 過去のコンシューマープログラミングにおけるスーファミの開発は行われていたようですが、 最近は外国にしか詳しい情報が無くて困っています。 http://www.inetmie.or.jp/~koh/inside/koh-sfc.htm http://hp.vector.co.jp/authors/VA042397/snes/ http://www.geocities.co.jp/Playtown/2004/816_2.txt http://www.geocities.co.jp/Playtown...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

まだまだやれると思っていて、不十分な理解状態であると感じているならこの「WINAPI)Midiシーケンサの製作(基本機能のみ)」について言えば不十分な理解、やるべきことを後回しにしてなぜか完成を目標にしている(今やるべきことは挑戦や難しい所の取り組みであって後回しにすることではないはずです)、一般性よりオリジナリティにこだわることが問題だと思います。あと、難しいことは全て後回しているように見受けられます。この状況は、理解や一般性(可読性・デバッグ性)を後回しにしていたツケが溜まっている状態だと思ってください。特にプログラマーの募集に提出する物としては問題点が山積みだと思います。 なぜなら、C...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

【少し補正】 どちらかと言うとみなさんの意見を伺ったほうが良い話題だと思いますが、プログラマー・SEにも色々あるので客先の打ち合わせや対外交渉を専門とする仕事もありますが少なくともチーム内の打ち合わせは必要です。 WEB、ゲーム、業務システム、銀行などの業務オンライン、組み込みマイコン、制御、研究などさまざまな仕事がありますので取り組み方も様々で個人で黙々とやるようなものも少数派ですが無くはありません。ただ、それなりに高い技術力が要求されます。 明日また書き込みますが雑談トピックでいろんな意見を聞いてみたほうが良いと思います。 アドバイスありがとうございます。 【追記】 「向いていないんじゃ...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

それから、未だに自分の事が見えません。というのは、自分の事に関してですが例えば 「これがこうだから、こうなるんです」と言えません。頭の中が整理されていないのも ありますが、小さい時からそうでした。知らない相手ならなおさらです。 緊張して頭の中が真っ白になるタイプですか? 頭の中であれこれ考えてしまって次の手に悩んでしまうタイプですか? コミュニケーションはプログラムに例えると同期処理です。 同期処理が苦手だと構造化や大規模開発にも支障が出ます。 上の質問、前者なら人前に慣れるしか無いのですけど、後者ならいつも考えていることを言葉に出すようにすると良いと思います。 頭の中だけで考えるより時間が...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

実は、2年前、ソフトウェア会社の面接で、ソースコード(お絵かきソフト[WIN32API]DibSectionを利用 したもの)を見せたのですが、「C言語をもう一度勉強し直してきなさい」といわれました。 それは、今思えば、汚いソースで、ポインタもろくに分かっていないものでした。 そして面接に落ちたのですが、それ以外にも、理由として、コミュニケーション能力とか、 うまく受け答えできないというのがあったと思います。 僕はプログラマに向いていないんじゃないか?とさえ思えてくるんですが、 実際の所、どうなのでしょうか? 僕は文字でやり取りするのはそんなに不得意じゃないのですが、相手の顔を見ながら、 言葉...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

描画上手く行っているなら問題ないです。2008とのダイアログのサイズの単位違いの問題かな? 構造体配列を使わなかったのは、MOUSE構造体に、配列を使う利点が思いつかなかったからです。あと、構造体というのは、MOUSE構造体で合ってますか? 構造体はクラスの一種ですが、クラスのNOTEクラスの事を指しているとしたら、 それは、クラスの配列は、コンパイル時に警告が出るからです。(VisualC++6.0の場合) VisualC++2008では警告は出ませんでした。 私の説明が分かり辛ったですね。class Note内のデータを私のように構造体化しないのかって話です。 私の目論見では時間軸でソー...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

>>うまく行っているのなら良いですが、 >>スクロールバーを左にスライドさせた場合Pic2の右側に >>ゴミが出る問題は直ったのでしょか? 直りました。 [追記] これにもお答えいただけますか? それと、私のリファクタリングよりも共通化や関数化が少ない気がしますがご本人にとって分かりやすくなったのでしょうか? あとなぜC++の参照とかを使わなかったり、構造体配列を使わなかったり、POINT構造体があるのに使わなかったりするのでしょうか? 分かりやすくなったといえば、なりましたが、ソフト屋さんのソースよりか は分かりにくいです。 あと、C++の参照を使わなかったのと、POINT構造体を使わなかっ...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

別にMFCは逃げではないと思いますが同じぐらい苦労すると思います。MFCの実体はWin32APIですからね。作っていると色々とAPIの姿が見え隠れします。 ちなみにVB6よりも今時のVB.NETの方が速度的には早くなっています。 どっちしろ、長いプログラムを組むためにはリファクタリングやらマメな関数化とかやらなければいけないことは沢山あります。 MFCの方が難しいのですね。 新しいのを見ましたが、結局画像の描画領域の問題は触ってないんですね。実際ちゃんとするにはクリッピングとか考えないと行けません。 GDIのクリッピングを使うのも一つ手ですけどね。 「指定範囲のクリッピング」 http://...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

このソースだと、再生するアルゴリズムはいくつかやり方はあると思いますが、
とりあえず、vPosを加算して、StartY<0かつ、EndY>0なら再生にしたいと思います

もしくは、エディットボックスか、リストボックスにデータを書き込み、その文字列を読んで、
再生するのも考えられます。
(この場合、同時とか、少しずれて再生される場合、時間の管理が肝となる気がします)

どちらが、お勧めでしょうか?
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

//2012/2/18 #define STRICT #include <windows.h> #include <windowsx.h> #include <string.h> //memset, strcat, strcpy #include <stdio.h> //sprintf #include <math.h> //atof #include <stdlib.h> //atof #include "resource.h" #include<mmsystem.h> #define MAX_NOTE 512 #define MIDIMSG(status,channel,data1,da...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

厳しく書きますが、独創的なのは良いのですが名前や値の扱いなど分かりづらいのが原因でミスを連発しては本末転倒です。書きやすさ・読みさすさは自分のためでも有ります。 根本的な所ではクラスや関数や構造体などの使い所がちゃんと出来ていないのは独創的なのと別の問題です。 あと他の人に見てもらう以上は、読みやすさは配慮として必要ではないでしょうか? ハッカーの中には読みやすさは不要と独自の哲学を持つ人もいますが、彼らは自分で何とかしてしまうので全然構わないです。 本気で作りたいのなら、まず元となるソースコードの意味を理解した上で、ちゃんと設計して作られることを考えるべきだと思います。 このシーケンサーソ...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

VisualBasic版の画像(スクリーンショット)と実行ファイルです。
よければどうぞ
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

xpスタイルと2000などのウィンドウスタイルの違いかも知れません。 とりあえず、急ぐならVC++6.0で合わせれば良いと思います。 本気で取り組みたいなら、締め切り時間を無視してどちらでも動くものを作るべきです。 見間違えてました。M.RegisterTable()ではなくN.RegisterTable()ですね。MはmouseでNはnoteですか。 ただ、Mouseは本質名でないような?マウス座標ではなく、ノートの一要素の値を保持しているような気がするのですが。 ソフト屋さんへ どちらにせよ、私は、このシーケンサーソフトを本気で作りたいです。 ソースは見づらくても、動くものが出来れば良い...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

もしかしたら、画面解像度によってずれるのかもしれないです。
他の環境だと、もっと違くなるのかもしれないです。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

softya(ソフト屋) さんが書きました:そうですね動詞であるregisterの方が良いです。ちなみにregistと言う英単語は存在しないです。

[追記] M.RegisterTable()と言うMも意味不明なので、もっと明確な名前を与えるべきではあります。
MOUSE.RegisterTableみたいな感じでしょうか?
あと、
VisualC++6.0だと、M.StartXの値はずれていなかったのですが、
VisualC++2008だと、ずれて表示されました。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

softya(ソフト屋) さんが書きました:これは何らかの課題とか提出用のものでしょうか?
もし、そうならソースコードの書き方として問題点がすごくありますが指定したほうが良いのでしょうか?
とりあえず動けば良いなら、このまま続けても良いと思いますが。
とりあえず動けば良いので、このまま続けて欲しいです。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

softya(ソフト屋) さんが書きました:ごめんなさい変数が多すぎると共通化されていない部分が多く他人の私では追いきれません。 [追記] 関数化・クラス化・構造体などまとめられるべきところが放置されています。tbl3とか2ヶ所も出てくる意味が無いと思いますが。
とりあえず、デバッグ手法を教えますので数値変化を追いかけてみて下さい。

「簡単RPG講座 番外編。 デバッグ入門 • C言語交流フォーラム ~ mixC++ ~」
http://dixq.net/forum/blog.php?u=114&b=982&c=2
ソフト屋さんの方法で試してみます。
あと、ソースをちょっとだけまとめてみたので、見てください。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

Re: (WINAPI)Midiシーケンサの製作(基本機能のみ)

//コメント少なくて真にすみませんでした。(// とか /* */が
//今すぐ、コメントを多くしたソースだけアップする用意をするので、待っててください。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: (WINAPI)Midiシーケンサの製作(基本機能のみ)
返信数: 43
閲覧数: 3706

(WINAPI)Midiシーケンサの製作(基本機能のみ)

こんばんは。KEYONNです。 このウェブサイト内のアンドロイドの館にはお世話になっています。 (javaを覚えるのに、3日くらいかかりましたが、最近やってないせいか、忘れ気味…) さて、あと、2日で、とあるプログラムを仕上げなくてはいけないのです。 このプログラムを 件名に書いたとおり、MIDIシーケンサを基本機能 レベル0.音が出る、 レベル1.マウスを使う レベル2.スクロールさせる レベル3.ノートを配置できる レベル4.ノートをスクロールバーで移動できる レベル5.音を再生ボタンで再生できる この6つの機能を備えたプログラムを書いています。 しかし、レベル4で躓いてしまいました。 ス...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: ビットフィールドと7bitPCM
返信数: 16
閲覧数: 1019

Re: ビットフィールドと7bitPCM

教えてほしいのですが、 fseek(fp,0x28,SEEK_SET); fseek(fp,0x28,SEEK_END); *size=ftell(fp); これで、*sizeにはいくらがはいるのですか? 7bitPCMってのを知らないもので・・・ Wavファイルを読み込んで、先頭0x28バイト(ヘッダ)を消して、7ビットにすれば いいと思うのですが、b.bit7から&bにかえて、fwriteしたら、 それの10倍くらいの1Mバイトくらいになってしまいました。 本来なら、元のwavファイルの7/8サイズになるはずなのですが…。 fseek(fp,0x28,SEEK_END);なんて書き方、保...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: ビットフィールドと7bitPCM
返信数: 16
閲覧数: 1019

Re: ビットフィールドと7bitPCM

ビット積演算は、任意の桁を0にする演算 ビット和演算は、任意の桁を1にする演算 それはそれぞれの演算子の一側面でしかありませんね。 変数同士を演算する場合は別の役割が出てきますよ。 それとビットを扱うときに%d では無く%08xを使いましょう。 アドバイスありがとうございます。ソフト屋さん 1010 0101 ビット積変数b1 0100 1111 & ビット積変数b2 -------------- 0000 0101 ビット積変数b3 つまり、ビット積変数b2が0なら全て0,1なら値を取り出す事が出来るという事ですね。 1010 0101 ビット和変数b1 0000 1111 | ビット和変...
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: MAPスクロールについて(主人公はずっと中心)
返信数: 7
閲覧数: 498

Re: MAPスクロールについて(主人公はずっと中心)

スクロールX値=主人公のX座標-(画面の横幅÷2);
スクロールY値=主人公のY座標-(画面の高さ÷2);
で行けるかと。
by KEYONN_
7年前
フォーラム: C言語何でも質問掲示板
トピック: ビットフィールドと7bitPCM
返信数: 16
閲覧数: 1019

Re: ビットフィールドと7bitPCM

ビットフィールドなどという難しい機能に挑戦するよりも先に,勉強すべきことがいっぱいあるみたいですね. 最低限,以下の質問に答えられる必要があるかと思います 128を2進数表現するとどうなるか ビット積演算とはなにか ビット和演算とはなにか 配列mに具体的に数値を当てはめてみて,手計算してみるのも効果的です. #include<stdio.h> int main() { unsigned char number=128; int i; int tmp[8]={0}; for(i=0;i<8;i++) { tmp[7-i]=number%2; number/=2; } for(i=0;i<8;i...

詳細検索ページへ移動する