[過去ログ] ゲームボーイアドバンス(GBA)非公式開発 Part2 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
443: 2006/02/17(金)18:32 ID:iAZtWxeh(1) AAS
外部リンク[html]:khdd.net
444: 424 [age] 2006/02/18(土)01:08 ID:uRwRaCgY(1) AAS
おお、サンクス
でもbdfフォーマットの仕様書はadobeの有料開発メンバじゃないと読めないのね・・・
で、探した結果、良さそうなページを発見
外部リンク[html]:hp.vector.co.jp
あとは日本語文字コードか、やれやれ。
445: 2006/02/18(土)02:27 ID:QKtp7HhO(1) AAS
DIRECTSOUNDをDMAで鳴らそうと
外部リンク:belogic.com
を参考にしてるんですが、演奏を止めるためのTM1設定
REG_TM1CNT_L=0x7098; //0xffff-the number of samples to play
REG_TM1CNT_H=0xC4; //enable timer1 + irq and cascade from timer 0
のthe number of samples to playの算出式がよくわかりません。
単純にデータサイズというわけではなさそうですが。。。
446(1): 2006/02/18(土)03:41 ID:4ZdB2i2h(1) AAS
データサイズで合ってる
cascade from time 0になっているということは
timer 0が桁あふれしたときにtimer 1が1つ進むということ
timer 0が桁あふれしたとき同時に何が起こっているのか考えてみればそのうち分かる
頑張れ
447(1): 2006/02/18(土)16:03 ID:1rrcgcm5(1) AAS
>>446
すみません、もう少し教えてください
データサイズが0xffffを超える場合はどう設定すればいいのでしょうか?
448: 2006/02/18(土)17:05 ID:ZbScaNGm(1) AAS
フリーの日本語ビットマップフォント一覧
外部リンク[html]:kappa.allnet.ne.jp
449: 2006/02/18(土)18:51 ID:iQRmZRdR(1) AAS
5つほど上に既に貼ってあるジャマイカ
450: 2006/02/18(土)21:15 ID:yUcx3isO(1) AAS
研究所が未だに復活しない件。
猫でもみたいなTips集的な使い方をしていたので、他所を探すのが以外に大変。
451: 2006/02/18(土)22:05 ID:q2PjLLP+(1) AAS
儂はウェブアーカイブで拾ってきたよ。zipファイルは保存してないからサンプルは取れないけど。
ヘッダとソースは見られる。makefileが無いのが難点。
452(2): 2006/02/19(日)01:10 ID:prU8DMPB(1/2) AAS
>>447
どうしてもtimerを使って止めたいならtimer 2を使えばいい
お勧めしないが。。。
// (0xXXXX * 0xYYYY = datasize)
REG_TM1CNT_L=0x10000 - 0xXXXX;
REG_TM1CNT_H=0x84; //enable timer1 + cascade from timer 0
REG_TM1CNT_L=0x10000 - 0xYYYY;
省3
453: 452 2006/02/19(日)01:11 ID:prU8DMPB(2/2) AAS
間違ったスマソ
// (0xXXXX * 0xYYYY = datasize)
REG_TM1CNT_L=0x10000 - 0xXXXX;
REG_TM1CNT_H=0x84; //enable timer1 + cascade from timer 0
REG_TM2CNT_L=0x10000 - 0xYYYY;
REG_TM2CNT_H=0xC4; //enable timer2 + irq and cascade from timer 1
REG_IE=0x20; //enable irq for timer 2
省1
454: 2006/02/19(日)02:00 ID:m3SmeD2S(1) AAS
>>452
了解しました。トライしてみます。
あと、timerを使わずに止める方法があるのならご教授プリーズ。
455(2): 2006/02/19(日)04:25 ID:iq15VETn(1) AAS
チョット違うことしてるのかな?一応
つdirecsoundサンプル
外部リンク[zip]:gamdev.org
456: 2006/02/19(日)10:19 ID:QSXlPkGt(1) AAS
>>455
BeLogicのサンプルみたく別タイマーで止めないとダメだとばかり思い込んでました。
このスレよく読み直したら過去にヒントが出てたんですね。。。orz
457: 2006/02/19(日)21:44 ID:oTR8sHnf(1) AAS
DarkFaderのMylibとかNylibとか入れてみようと思ってやってみたがダメだ…。
やり方が悪いのかサンプルmakeできなかった。
ライブラリ自体はすごそうだ。使ってる人いる?
458: 2006/02/20(月)03:17 ID:B+Dm9jGk(1) AAS
NyLibは任天堂の純正ライブラリそのものだから使わないほうがいいぞ
MyLibはゴミ
459(2): 2006/02/20(月)21:23 ID:bbMb17ur(1) AAS
1Dモードでスプライトの属性を指定します。
attr2(ゼロが最初)のキャラクタ番号(0-9ビットまで)に指定の番号をセットすると正しく表示されません。
2倍の値をセットすると正しく指定できました。
これってあってる? ゼロビット目がキャラクタ番号じゃないんじゃ、とか思います。
1Dのスプライトについて書かれているページとかありませんか?
460: 2006/02/20(月)21:39 ID:LHhnamaS(1/2) AAS
マジですか。コンパイルもようできんからgcc自分で持ってきてarm-elfで作ったりしたんだがなぁ。
最低限eloistのgba.hとgbatekとかのドキュメント、あとは自分でがんばるかね。
461: 2006/02/20(月)22:06 ID:LHhnamaS(2/2) AAS
>>459
スプライトが256色設定の場合は2倍で指定するらしいからそのせいではないかな?
462: 2006/02/21(火)00:33 ID:zwimk+yf(1) AAS
>>459
気になるならVBAのTile Viewerでタイル番号とアドレスを確認すれ
463(1): 2006/02/21(火)05:42 ID:uuzcpC5q(1) AAS
ボタンを押した瞬間を取得したいんですが
下記のソースがうまく動作しません。
何がいけないかわかりますか?
//ボタンに関する列挙型
typedef enum{UP,DOWN,RIGHT,LEFT,A,B,L,R,START,SELECT} KEY;
//スタティックグローバル変数
static u32 sgKey; /* キーセンス */
省21
464: 2006/02/21(火)07:28 ID:GiHvck/8(1) AAS
書き込みできるかテスト
465: 2006/02/21(火)08:22 ID:BSGVJJY5(1) AAS
>>463
それぞれの変数の値を出力してみろ
466(3): 2006/02/25(土)15:23 ID:LRNrnoNa(1/4) AAS
ある構造体に汎用的な配列を用意し、状況によって汎用配列部分に
別の構造体をキャストすることでいろいろ使い分けられるように
したいんですが下記(分けて書き込みます)のようなソースがうまく動きません。
「w->cnt = 5;」等の部分で値を代入しているのに正しい値がはいりません。
VC++では正しく代入できるようです。なぜだかわかりますか?
仕様なんでしょうか?
467(1): 2006/02/25(土)15:24 ID:LRNrnoNa(2/4) AAS
typedef struct{
u8use;/* 動作フラグ */
u16no;/* 自分自身のタスク番号 */
u8 phase;/* 動作フェーズ */
u8wrk[48];/* 汎用ワークエリア */
void*entryfunc;/* 実行関数 */
}TSKWRK;
省18
468: 2006/02/25(土)15:25 ID:LRNrnoNa(3/4) AAS
変数の型と変数名がつながっているのは書き込み時に
つながってしまったもので実際には正しく記述しています。
469(1): 2006/02/25(土)16:32 ID:ChwfFfDn(1/3) AAS
>>466-467
アライメントの勉強をしてみよう。
外部リンク:www.google.co.jp
この場合は u8 のアライメントしか持っていない wrk に
u16 としてアクセスしていることが原因。
GBA の CPU である ARM ではアライメント違反した書き込みはできない。
VC++ で正しく動作するように見えるのは CPU が違うから。
省1
470(2): 424 [age] 2006/02/25(土)17:25 ID:T5T+YA0I(1) AAS
こういう使い方をしたいときはunionを使うんだっけ?
使ったことないけど
471(1): 2006/02/25(土)17:28 ID:JLoubNl/(1/2) AAS
>>466
>>469を踏まえてこれでもう一度テストしれ
typedef struct{
u8 use;/* 動作フラグ */
u16 no;/* 自分自身のタスク番号 */
u8 phase;/* 動作フェーズ */
u8 wrk[48];/* 汎用ワークエリア */
省8
472(1): 2006/02/25(土)17:30 ID:JLoubNl/(2/2) AAS
>>470
この場合unionは全く関係ないし的外れ
473: 2006/02/25(土)17:32 ID:+k+s2zkt(1) AAS
メモリをダンプしてみろ
それからだ。
474(2): 2006/02/25(土)17:38 ID:ChwfFfDn(2/3) AAS
>>470,472
union 使ってアライメント確保する方法がある。
Cだとコレぐらいでいいんじゃないかな?
union
{
u8 size_holder[48];
void* pointer_align;
省8
475(1): 2006/02/25(土)18:20 ID:LRNrnoNa(4/4) AAS
みなさん、アドバイスありがとうございます。
アライメント自体の概念はわかりました。
実用についてはまだよくわからんのですこし調べてみます。
>>474
unionのサンプルの意味は
u8でサイズを決めつつ、何のデータを扱ってもいいように
void型のポインタと最大サイズの整数と浮動少数で
省5
476: 474 2006/02/25(土)18:33 ID:ChwfFfDn(3/3) AAS
>>475
サンプルの意味はそういうこと。
union 自体のアライメント要求がメンバの中で最大の物になることを利用したもの。
GBA のハードウェアで4バイト以上のアライメントを要求するものは
無かったと思うので、 GBA に限った動作だけを考えれば
u32 での置き換えで問題ないと言える。
477: 2006/02/26(日)00:08 ID:WfB5cmW7(1) AAS
関係ないけど
GBAって電源切ったとき画面の色が黒でなく白なのはなんでだろう?
478: 2006/02/26(日)00:10 ID:vz2qCRmn(1) AAS
白黒液晶ってのは黒色の文字を表示するものだから背景が黒かったらどうしようもないと
ここまで書いてGBAが白黒ではないという事実を思い出した
479(1): 2006/02/26(日)07:47 ID:e+6sQVje(1/2) AAS
>>381 ノベル制作ツール「のべ〜る」で
VisualBoyAdvanceでプログラムスタート直後に音割れする現象の対策
*TOP:
#play_wav 1 music0.bin
#page
■セロ弾きのゴーシュ;
ゴーシュは町の活動写真館でセロを弾く係りでした。#w ;
省9
480(1): 479 2006/02/26(日)07:53 ID:e+6sQVje(2/2) AAS
のべ〜るは>>380
でした。失礼。
481: 466 2006/02/26(日)15:39 ID:UpVKMws2(1) AAS
構造体のキャストで質問したものです。
とりあえず、みなさんのおかげで
スプライト制御が一段落したんで
経過をご報告します。
外部リンク[zip]:2ch-library.com
482(3): 2006/02/27(月)22:06 ID:KqQE3G30(1) AAS
くだ質で大変申し訳ないのですが、
C++でGBAのプログラミングはできないのでしょうか?
様々なサイトをググってみたのですが、すべてCでの開発で
C++を扱っているサイトを全く見かけません。
よろしければご教授をお願いします。
483: 2006/02/27(月)22:45 ID:NtZAdaLq(1) AAS
>>482 gcc なんだから、できるよ。
484(1): 2006/02/27(月)23:07 ID:yy1S2zAQ(1) AAS
>>482
つ Tennodai Bunko
485: 482 2006/02/28(火)00:35 ID:jBhKnEbd(1) AAS
>>484氏に紹介いただいたサイトを見る限り、DevkitAdvanceで普通にできそうですね。
早速試してみようと思います。
どうもありがとうございました。
486: 2006/02/28(火)09:22 ID:1wwrrnAa(1) AAS
GBAプログラミング研究所のBMP2RGB.exeで256色の出力のとき、
255番のパレットを指定したドットが0x00になり、
255番のパレット自体も0x0000になって出力されるんだけど
何か意味があるのでしょうか。
487: 2006/02/28(火)13:47 ID:ykuetkSe(1) AAS
確証は無いけど透明色じゃないの?
488: 2006/03/01(水)17:29 ID:CwoNSWML(1) AAS
ソースレベルデバッグをしたいんですが
MAPPY VMとVHAM&DevkitAdvanceの組み合わせの場合
どのようにすればよいのでしょうか?
また、NO$GBAとMAPPY VMだとどの程度違いますか?
489: 2006/03/02(木)21:30 ID:yUNPC8aZ(1) AAS
Insight + VBA(devel版) で*.elf読ませる方が楽っぽくね?
490(1): 2006/03/02(木)22:48 ID:LnIoHKvJ(1) AAS
arm-agb-elf-insightつかってデバッグするときにVisualBoyAdvanceの画面の状態を
確認しながらデバッグするにはどうしたらいいのですか?
File-TargetSettingからConnection-TargetをSimulatar選んでからOptionをVBAの
GDB接続待ちPortの数字にあわせればいいのですか?
InsightデバッガからRun-ConnectTargetはSucessfully connectedってでるから
成功したのかな?
でも、VBA側の接続待ち状態ダイアログが消えないから違うんだろうなぁ
491: 2006/03/02(木)23:52 ID:fFp03F4Q(1) AAS
>>490
漏れの環境ではVBA-SDLでしかInsightと接続できないorz
492(2): 2006/03/04(土)11:46 ID:m5qLcxRB(1/2) AAS
ところでGBAゲームでセーブデータってどうやって作るんですが?
研究所にはあったみたいだけど落ちてて見れない・・・
493(1): 2006/03/04(土)13:52 ID:x3hAFwv9(1) AAS
>>492
VBAでGBAファイル起動
494(1): 2006/03/04(土)14:06 ID:KUpila9P(1/3) AAS
>>455
このサンプルでDirectSoundの再生方法を試しているんですが
サウンド再生関数を1回目に実行した際には音がならず
2回目の実行で音がなります。
これ以外のDirectSoundのサンプルでも同様の現象が起きます。
455のサンプルに関してはソースをまんまでコンパイルしても
同様の現象になります。
省2
495: 2006/03/04(土)17:16 ID:KUpila9P(2/3) AAS
やっとこさゲームらしくなってきたんですけど
サウンドがなるとめっさ重いんですよね。
GBAってこんなもんなんでしょうか?
それともプログラムがヘボイだけ?
外部リンク[zip]:2ch-library.com
496: 2006/03/04(土)17:18 ID:vi0lIxtr(1) AAS
AGBがまともにサウンドを鳴らせないほど非力なのは仕様です
497(1): 2006/03/04(土)17:34 ID:KUpila9P(3/3) AAS
まじですか!?
じゃあ、GB互換音源を使うしかないんですね。
研究所が消滅してコンバーターの入手も難しいし
こまったもんだ…。
498(1): 492 2006/03/04(土)21:18 ID:m5qLcxRB(2/2) AAS
>>493
いや、そういう意味じゃなくて、
自作したゲームにセーブデータを作らせようと思ったらどうすればいいんですか?
499: 2006/03/04(土)21:53 ID:Msh9zdwX(1/2) AAS
>494
キーを入力しないと鳴らないんです。
main.cをコレで鳴るんじゃない?
mu_wok = 0;// 再生の直前に++のため、0からの値になります。
se_wok = 0;
PlayMusic(mu_wok,PLAY_LOOP_ON); //※追加
while(1)
省4
500(1): 2006/03/04(土)22:08 ID:Msh9zdwX(2/2) AAS
GBAプログラミング研究所って結局どうなりました?
どこかへ移転したとか…
日本のGBA開発に欠かせないサイトだったし、あれほどみんなが
利用していたのに突如閉鎖というのは有り得ない。
501: 2006/03/04(土)22:30 ID:ega3649d(1) AAS
>>498
SRAM(0x0E000000〜)に数値書き込めばいい
502(1): 2006/03/05(日)10:53 ID:bBYTbtx/(1) AAS
>>500
管理人が捕まったとか
503(1): 2006/03/05(日)11:16 ID:JLfn0Pan(1) AAS
>>502
iswebからアマゾンの広告かなんかに警告出されたとかいうこと書いてなかったっけ?
それ放置してたら消されたとか?
504: 2006/03/05(日)16:30 ID:vg84cSdA(1) AAS
>>503
怒られたので消しました、って更新履歴にあったような気が?
今となっては確認が難しいが。
505: 2006/03/05(日)22:27 ID:aIloybH9(1) AAS
”捕まった”とか言うとデマに発展しそうな気がしてイヤンな感じ
広告掲載の方法についてサーバーの提供元から警告が来たので広告を消した、
というような更新が最後だった希ガス
確かにGBAの方は更新がほぼ止ってたような気がしないでもないが
DS用のページも作ってたみたいだし(DSの方はやってないのでよく知らないが)
更新意欲がなくなってそのままフェードアウトした感じではないのだが・・・
506: 2006/03/05(日)22:32 ID:ZGr9k1wh(1) AAS
DSの方の掲示板は業者スパムだらけだったな
507(3): 2006/03/07(火)00:19 ID:2maRPTXR(1) AAS
ソニックザヘッジホッグやロックマンとかの横スクロールアクションで
地形、足場の当たり判定をどのように持つかについて質問なんですが
素人考えだと
?タイルごとに当たり判定の属性を持つ。
?当たり判定のある背景だけを一つのBGに分けて
背景色以外の部分に当たり判定を持つ。
だと思うのですが
省8
508(1): 2006/03/07(火)01:50 ID:TN1OAFRk(1) AAS
>>480
つ 外部リンク[zip]:gamdev.org
509(1): 2006/03/07(火)07:32 ID:P11agiDo(1) AAS
>>507
当たり判定だけのマップを作る
そのマップが視覚的に見えてる必要は無い
510: 2006/03/07(火)07:35 ID:jNiGJUSI(1) AAS
>>507
BGにとらわれずに、マップのパラメータを配列の変数として持てばいいんじゃね?
床と傾斜の違いも同じく。
511: 2006/03/07(火)22:33 ID:GCKxwI5B(1/2) AAS
>>507の?は草の上を歩く場合、困ったことに…葉っぱ一枚の上にも乗っかってしまう。
>>509 510のやり方をになると想像。チップごとに当たり判定がある?の方法。
チップごとに次のような判定をする。
0…当たり判定無し
□□□□
□□□□
□□□□
省22
512: 2006/03/07(火)22:38 ID:GCKxwI5B(2/2) AAS
>508
乙です。ありがたく使わせていただきます。
513: 2006/03/10(金)16:21 ID:/vUYzsUw(1) AAS
インターネットアーカイブがzipとかも保存してればなぁ・・・
514: 2006/03/10(金)17:28 ID:2iPTfRgc(1) AAS
つ 外部リンク:www.liarsoft.org
515: 2006/03/11(土)03:21 ID:wvglnkMZ(1) AAS
使用に堪えるデバッガ付きエミュってどれでしょう?
CowBiteとMappy Virtual Machineは中々いいんですが
前者は使いづらく、後者はエミュとして弱い
516(2): 2006/03/12(日)22:58 ID:oHXV1jml(1) AAS
タイルモードで512*512のBGを扱う際、
メモリ上の配列が256*256単位で左上→右上→左下→右下となっているのは
仕様ですか?
517(1): 2006/03/12(日)23:37 ID:Yfw9wRAT(1) AAS
仕様です
518(1): 516 2006/03/13(月)01:03 ID:OoJGMs+j(1) AAS
>>517
レスどうもです。
なぜそんなことを聞いたかというと
市販ソフトのBGを見ると512*512でやっているのが多いんですが
なぜなのかなと思ったんですよ。
512*512にしろ256*256にしろスクロール部分を書き換えなきゃ
いけないのは一緒だし、だったら256*256でやったほうが
省3
519: 2006/03/13(月)06:13 ID:CqXZ+TIn(1) AAS
>>516
タイルの配列は、2Kごとに区切られているような扱いをしてる模様。
Webでのサンプルは256x256はかりなので以外に気付かない罠。
>>518
256だと横幅が16ピクセルしか余裕がないからそれ以上のスクロール量が発生した時の案パイだと思われ。
520(2): 任天堂本社より警告 2006/03/21(火)20:45 ID:5b78pgIg(1) AAS
任天堂本社情報通達部から本スレッドをご利用の皆様に警告します。
いかなる場合においても、ゲーム機本体および周辺機器、ソフトの内容を
改変する事は違法であり、個人使用もその限りではありません。
日本条例により罰せられますので早急におやめ下さい。
今回は警告という事で免除しますが、後日2ちゃんねる管理人に許諾を得て
なんらかの処分を決定させていただきますのでご了承ください。
法的手段に踏み切る事も視野に入れて検討中です。
省2
521: 2006/03/21(火)22:14 ID:QjFV0BDn(1) AAS
>>520
なんだこれ?
気になって取説とパッケージ見直してみたけど、そんなこと書いてないね。
悪質ないたずらだな。
522: 2006/03/22(水)08:47 ID:a/VO7x3i(1) AAS
どうせ警告だすならマジコンスレでやってくれよ頼むから(w
523: 2006/03/22(水)08:58 ID:YwZnSigd(1) AAS
>>520
ダウト
情報通達部なんて部署ないぞ
やるとしても法務部だろ
上下前次1-新書関写板覧索設栞歴
あと 479 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.025s