1 名前:名前は開発中のものです。 mailto:sage [04/10/30 15:50:05 ID:XmInH8YR] GBAで何やら作ってみようという人の為のスレ。ライセンス不要。 初心者歓迎。質問歓迎。英語苦手な人歓迎。冷やかし歓迎。ネカマ歓迎。 資料、リンク等 www.devrs.com/gba/ www.gbadev.org/ www.vsync.org/agb/ nocash.emubase.de/gbatek.htm www.bomber.co.jp/chaola/docs/ARM/ 開発環境 DevkitAdvance devkitadv.sourceforge.net/index.html DevkitARM www.devkit.tk/ VisualHAM visualham.console-dev.de/ DragonBasic jm-basic.com/dragon/index.php GBA Wiki cgi.f26.aaacafe.ne.jp/~gbawiki/pukiwiki/pukiwiki.php 【GBA】Linuxから目覚めるぼくらのゲームボーイ! pc5.2ch.net/test/read.cgi/linux/1070983168/ ゲームボーイアドバンス(GBA)開発@ゲ製板(避難所) bbs.gamdev.org/test/read.cgi/gamedev/1055111303/ 前スレ pc5.2ch.net/test/read.cgi/gamedev/1013750899/
421 名前:名前は開発中のものです。 mailto:sage [2006/02/14(火) 00:34:47 ID:WgJRobF9] >>420 sprintfで文字列を作って その文字列を表示する関数を作るんだ printfは最初から無いものとして諦めろ
422 名前:名前は開発中のものです。 [2006/02/14(火) 00:40:40 ID:945ce4fT] 研究所のやつじゃなくてもいいので 使い勝手のいいマップエディタしりませんか? ドラクエ風のワールドマップを作りたいのですが。。。。
423 名前:名前は開発中のものです。 mailto:sage [2006/02/14(火) 00:51:24 ID:kJMSUOot] ttp://user.chem.tue.nl/jakvijn/downloads.htm この辺とかは?
424 名前:名前は開発中のものです。 mailto:age [2006/02/14(火) 00:51:46 ID:DPfKwksc] sprintfって使えたっけ?devkitadv 自作snprintfで対応しちゃった #あと文字が書いてあるbitmap背景の2本立て
425 名前:384 mailto:sage [2006/02/14(火) 00:59:46 ID:tYPhpHwC] 俺もprintf関数もどき作りました。 全角の文字列を引数として受け取って、 その先頭のアドレスから、内容を4ビット(16進一桁、要するに文字コードの中の一桁) ずつチェックしていき、最終的に文字コードとBGタイル番号をつき合わせて BG一面に出力するようにしました BGを一つ占領しちゃうんであまりよいやり方では無さそうですが
426 名前:名前は開発中のものです。 mailto:sage [2006/02/14(火) 01:49:16 ID:WgJRobF9] >>424-425 自作するよりそっちの方が簡単だろうと思ってな printf関数の仕組みが分からないとも書いてるし もちろんsprintfはstring.hをincludeすれば使えるぞ
427 名前:名前は開発中のものです。 [2006/02/14(火) 18:19:17 ID:KtOq4mfG] スプライトの表示数についてなんですが 最大128個でモード0〜2のVRAMのスプライトキャラクター領域は 32kバイトですよね? 32*32dotで16色のスプライトを扱う場合 下記の計算だと最大64個だと思うんですが それ以上の表示が可能です。複数のエミュで確認したんですが どれも表示できました。 私の計算方法がいけないんでしょうか? それとも実機とは挙動が違うんでしょうか? 32*32dotのスプライトのデータサイズ 4bit(16色)*32dot*32dot=4096bit/8(byte換算)=512byte VRAMのスプライトキャラクター領域 32kbyte=32768byte 16*32dotのスプライトの場合 32768byte(VRAM)/512byte(Sprite)=64個表示可能
428 名前:名前は開発中のものです。 mailto:sage [2006/02/14(火) 18:55:03 ID:WgJRobF9] 画像データ領域(VRAM)とキャラクター領域(OAM)は分離して考えろ >>427 の例で言うと OAMには128個登録できても VRAMには64種類の画像しか収まらない 逆に言うと64種類の画像を128個表示できるということ
429 名前:429 [2006/02/14(火) 19:29:47 ID:KtOq4mfG] なるほど、つまりVRAMにおさまりさえすれば 64*64の画像を128個表示することができると いうことなんですね。
430 名前:424 mailto:age [2006/02/14(火) 21:44:12 ID:oQP7vhex] 自作snpritnf(snprintf_mini)です。良かったらどうぞ 49uper.com:8080/html/img-s/111753.lzh
431 名前:420 mailto:sage [2006/02/15(水) 23:02:19 ID:UMaLkZ5l] ありがとうございます! 正直、よく分からないですが、参考にするか もしくはそのまま使わせて頂きます!
432 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 00:00:45 ID:htR/zHvl] コンパイル出来たけど何も表示しまへん。 コンパイル用バッチファイル SET PATH=c:\devkitadv;c:\devkitadv\bin;c:\devkitadv\tools:$PATH; gcc -o main.elf main.c utils.c -mthumb-interwork objcopy -O binary main.elf main.gba どこがいかんのでしょう みたとこ画像データが無いようですが。
433 名前:424 mailto:age [2006/02/16(木) 09:40:13 ID:IJObToHy] うん、文字画像データは入ってないよ あくまでもおいらが作ったsnprintfの実装(snprintf_mini)だから文字列を作るだけです。 main.cはちゃんと作れているかどうか確認している単体テスト用のプログラム なのでdevkitadvのgcc(arm-agb-elf-gcc)じゃなくて普通(?)のgccを使って snprintf実装例を確認してね。 GUIなデバッガがあればどんな感じで処理してるか追っかけられるでしょ #VCだとsnprintfが使えないかも。そのときはsprintfで代用して確認してね 作った文字列をVisualBoyAdvanceで表示するには文字列表示用の処理と文字データを 自分の環境用につくらないと出来ないです。 まず、putcみたいな1文字表示用の関数を作ってみてはどうでしょうか?
434 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 09:44:32 ID:zo8+sFWC] ◆◆,,,,_ /⌒; /*' 3 `*ヽーっ /<ワンワン,ツウツウ,スリィスリィ,フォウフォウ ⊂二 。 ゚ ⌒_つ/ ガンガン ズンズン グイグイ 上昇 `、 ⌒_つ / `'ー-‐'''''" / /_/ /// . _____ . `ヽ ,」_ァ'"´ . f'て}. ̄ rY ト、 __ . | r个 √`>‐.k } f゙)ヾ> }l r ''"`ァ'゙ ,ノ、ム'^'ァ'゙ 人.ヒ,ィ゙ ァ弌__,,>'´゙ヽ い, `'<, ,r'^ ,ノ . }⌒'‐\ ,、 ゙'くョr.''"´ い弌-、 \ }. ゝ-、 . `'ー' ゙'ー‐--‐'⌒''''''゙
435 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 18:36:32 ID:kz0iIF7u] >>433 これだけヒントを貰ってるのに文字表示すら自分で作れない香具師に 何をアドバイスしてやっても無駄だって。
436 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 20:06:45 ID:M6PXBfNk] >>433 親切すぎる。 漏れは呆れてレスする気がしなかったぐらいだってのに。
437 名前:424 mailto:age [2006/02/16(木) 21:32:19 ID:IJObToHy] 確認用に作った文字表示用プログラムです ttp://49uper.com:8080/html/img-s/112125.lzh VCとVisualBoyAdvanceの両方で動作確認できるようにちょっと細工してます このフォントデータは多分ライセンス違反になると思います。 #外見はラスタフォント6x13そのままです。 #文字を表示した状態のスクリーンショットBMPからデータを作りました・・・
438 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 22:19:46 ID:M6PXBfNk] 拙作 ttp://gamdev.org/up/img/4680.png
439 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 22:21:45 ID:kxrgDS8c] >>438 俺が流用してるフォントと同じのを使ってる・・・気がする 俺は8x8でやってるけど
440 名前:名前は開発中のものです。 mailto:sage [2006/02/16(木) 22:53:00 ID:Jk3f3/1N] >>438 liarsoftさん?
441 名前:424 mailto:age [2006/02/16(木) 23:55:24 ID:IJObToHy] へー、かっこいい フリーのフォントって知らなかったけど調べてみたらいろいろあるんだな とりあえず、FONTX形式にすればいいのだろうか?
442 名前:432 mailto:sage [2006/02/17(金) 16:40:32 ID:x9jBkP1z] サンプルありがとうございます。 私は420=431さんとは別人です、横入りすみません。 フリーのフォント、元GBA研究所のサンプルにあったものを 流用しようと・・問題有りますでしょうか 完全フリーなものが欲しいのですけどそうなるとなかなか ありませんよね。フリーソフトのみとかメールでの通知義務とか。
443 名前:名前は開発中のものです。 mailto:sage [2006/02/17(金) 18:32:26 ID:iAZtWxeh] ttp://khdd.net/kanou/fonts/x11bdfs.html
444 名前:424 mailto:age [2006/02/18(土) 01:08:37 ID:uRwRaCgY] おお、サンクス でもbdfフォーマットの仕様書はadobeの有料開発メンバじゃないと読めないのね・・・ で、探した結果、良さそうなページを発見 ttp://hp.vector.co.jp/authors/VA013241/font/bdf.html あとは日本語文字コードか、やれやれ。
445 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 02:27:52 ID:QKtp7HhO] DIRECTSOUNDをDMAで鳴らそうと belogic.com/gba/directsound.shtml を参考にしてるんですが、演奏を止めるための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 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 03:41:17 ID:4ZdB2i2h] データサイズで合ってる cascade from time 0になっているということは timer 0が桁あふれしたときにtimer 1が1つ進むということ timer 0が桁あふれしたとき同時に何が起こっているのか考えてみればそのうち分かる 頑張れ
447 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 16:03:02 ID:1rrcgcm5] >>446 すみません、もう少し教えてください データサイズが0xffffを超える場合はどう設定すればいいのでしょうか?
448 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 17:05:13 ID:ZbScaNGm] フリーの日本語ビットマップフォント一覧 ttp://kappa.allnet.ne.jp/kanou/fonts/x11bdfs.html
449 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 18:51:03 ID:iQRmZRdR] 5つほど上に既に貼ってあるジャマイカ
450 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 21:15:59 ID:yUcx3isO] 研究所が未だに復活しない件。 猫でもみたいなTips集的な使い方をしていたので、他所を探すのが以外に大変。
451 名前:名前は開発中のものです。 mailto:sage [2006/02/18(土) 22:05:41 ID:q2PjLLP+] 儂はウェブアーカイブで拾ってきたよ。zipファイルは保存してないからサンプルは取れないけど。 ヘッダとソースは見られる。makefileが無いのが難点。
452 名前:名前は開発中のものです。 mailto:sage [2006/02/19(日) 01:10:26 ID:prU8DMPB] >>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; REG_TM1CNT_H=0xC4; //enable timer2 + irq and cascade from timer 1 REG_IE=0x20; //enable irq for timer 2 REG_IME=1; //master enable interrupts
453 名前:452 mailto:sage [2006/02/19(日) 01:11:38 ID:prU8DMPB] 間違ったスマソ // (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 REG_IME=1; //master enable interrupts
454 名前:名前は開発中のものです。 mailto:sage [2006/02/19(日) 02:00:16 ID:m3SmeD2S] >>452 了解しました。トライしてみます。 あと、timerを使わずに止める方法があるのならご教授プリーズ。
455 名前:名前は開発中のものです。 mailto:sage [2006/02/19(日) 04:25:56 ID:iq15VETn] チョット違うことしてるのかな?一応 つdirecsoundサンプル gamdev.org/up/img/4705.zip
456 名前:名前は開発中のものです。 mailto:sage [2006/02/19(日) 10:19:03 ID:QSXlPkGt] >>455 BeLogicのサンプルみたく別タイマーで止めないとダメだとばかり思い込んでました。 このスレよく読み直したら過去にヒントが出てたんですね。。。orz
457 名前:名前は開発中のものです。 mailto:sage [2006/02/19(日) 21:44:01 ID:oTR8sHnf] DarkFaderのMylibとかNylibとか入れてみようと思ってやってみたがダメだ…。 やり方が悪いのかサンプルmakeできなかった。 ライブラリ自体はすごそうだ。使ってる人いる?
458 名前:名前は開発中のものです。 mailto:sage [2006/02/20(月) 03:17:45 ID:B+Dm9jGk] NyLibは任天堂の純正ライブラリそのものだから使わないほうがいいぞ MyLibはゴミ
459 名前:名前は開発中のものです。 mailto:sage [2006/02/20(月) 21:23:56 ID:bbMb17ur] 1Dモードでスプライトの属性を指定します。 attr2(ゼロが最初)のキャラクタ番号(0-9ビットまで)に指定の番号をセットすると正しく表示されません。 2倍の値をセットすると正しく指定できました。 これってあってる? ゼロビット目がキャラクタ番号じゃないんじゃ、とか思います。 1Dのスプライトについて書かれているページとかありませんか?
460 名前:名前は開発中のものです。 mailto:sage [2006/02/20(月) 21:39:23 ID:LHhnamaS] マジですか。コンパイルもようできんからgcc自分で持ってきてarm-elfで作ったりしたんだがなぁ。 最低限eloistのgba.hとgbatekとかのドキュメント、あとは自分でがんばるかね。
461 名前:名前は開発中のものです。 mailto:sage [2006/02/20(月) 22:06:12 ID:LHhnamaS] >>459 スプライトが256色設定の場合は2倍で指定するらしいからそのせいではないかな?
462 名前:名前は開発中のものです。 mailto:sage [2006/02/21(火) 00:33:12 ID:zwimk+yf] >>459 気になるならVBAのTile Viewerでタイル番号とアドレスを確認すれ
463 名前:名前は開発中のものです。 [2006/02/21(火) 05:42:06 ID:uuzcpC5q] ボタンを押した瞬間を取得したいんですが 下記のソースがうまく動作しません。 何がいけないかわかりますか? //ボタンに関する列挙型 typedef enum{UP,DOWN,RIGHT,LEFT,A,B,L,R,START,SELECT} KEY; //スタティックグローバル変数 static u32 sgKey; /* キーセンス */ static u32 sgKeyhit; /* キー押した瞬間 */ //メインループの頭でボタンの状態を一括取得 void UpdateKeySense(void) { static u32 keyold = 0; sgKey = (u32)(*KEYS); sgKeyhit = sgKey & (~keyold); keyold = sgKey; } //特定のキーが今押されたかを調べる u8 KeyHit(KEY key){ switch(key){ case A: if(!(sgKeyhit & KEY_A)) return 1; else return 0; case B: if(!(sgKeyhit & KEY_B)) return 1; else return 0; } return 0; }
464 名前:名前は開発中のものです。 mailto:sage [2006/02/21(火) 07:28:21 ID:GiHvck/8] 書き込みできるかテスト
465 名前:名前は開発中のものです。 mailto:sage [2006/02/21(火) 08:22:43 ID:BSGVJJY5] >>463 それぞれの変数の値を出力してみろ
466 名前:名前は開発中のものです。 [2006/02/25(土) 15:23:38 ID:LRNrnoNa] ある構造体に汎用的な配列を用意し、状況によって汎用配列部分に 別の構造体をキャストすることでいろいろ使い分けられるように したいんですが下記(分けて書き込みます)のようなソースがうまく動きません。 「w->cnt = 5;」等の部分で値を代入しているのに正しい値がはいりません。 VC++では正しく代入できるようです。なぜだかわかりますか? 仕様なんでしょうか?
467 名前:名前は開発中のものです。 [2006/02/25(土) 15:24:22 ID:LRNrnoNa] typedef struct{ u8use;/* 動作フラグ */ u16no;/* 自分自身のタスク番号 */ u8 phase;/* 動作フェーズ */ u8wrk[48];/* 汎用ワークエリア */ void*entryfunc;/* 実行関数 */ }TSKWRK; TSKWRKts[10];/* 実体 */ /* 構造体 */ typedef struct{ u16 cnt; u8 x; u8 y; u32 tmp; }TEST; //メイン処理 int main(void) { TSKWRK *tp = &ts[0]; TEST *w = (TEST*)&tp->wrk[0]; w->cnt = 5; w->x = 4; w->y = 9; w->tmp = 1; }
468 名前:名前は開発中のものです。 [2006/02/25(土) 15:25:34 ID:LRNrnoNa] 変数の型と変数名がつながっているのは書き込み時に つながってしまったもので実際には正しく記述しています。
469 名前:名前は開発中のものです。 mailto:sage [2006/02/25(土) 16:32:04 ID:ChwfFfDn] >>466-467 アライメントの勉強をしてみよう。 www.google.co.jp/search?q=%E3%83%A1%E3%83%A2%E3%83%AA+%E3%82%A2%E3%83%A9%E3%82%A4%E3%83%A1%E3%83%B3%E3%83%88 この場合は u8 のアライメントしか持っていない wrk に u16 としてアクセスしていることが原因。 GBA の CPU である ARM ではアライメント違反した書き込みはできない。 VC++ で正しく動作するように見えるのは CPU が違うから。 x86 系ではアライメント違反した書き込みはパフォーマンスが落ちるだけ。
470 名前:424 mailto:age [2006/02/25(土) 17:25:32 ID:T5T+YA0I] こういう使い方をしたいときはunionを使うんだっけ? 使ったことないけど
471 名前:名前は開発中のものです。 mailto:sage [2006/02/25(土) 17:28:03 ID:JLoubNl/] >>466 >>469 を踏まえてこれでもう一度テストしれ typedef struct{ u8 use;/* 動作フラグ */ u16 no;/* 自分自身のタスク番号 */ u8 phase;/* 動作フェーズ */ u8 wrk[48];/* 汎用ワークエリア */ void *entryfunc;/* 実行関数 */ } __attribute__ ((packed)) TSKWRK; typedef struct{ u16 cnt; u8 x; u8 y; u32 tmp; } __attribute__ ((packed)) TEST;
472 名前:名前は開発中のものです。 mailto:sage [2006/02/25(土) 17:30:14 ID:JLoubNl/] >>470 この場合unionは全く関係ないし的外れ
473 名前:名前は開発中のものです。 mailto:sage [2006/02/25(土) 17:32:36 ID:+k+s2zkt] メモリをダンプしてみろ それからだ。
474 名前:名前は開発中のものです。 mailto:sage [2006/02/25(土) 17:38:12 ID:ChwfFfDn] >>470 ,472 union 使ってアライメント確保する方法がある。 Cだとコレぐらいでいいんじゃないかな? union { u8 size_holder[48]; void* pointer_align; long long integer_align; long double floating_point_align; } wrk; C++ だとメンバ変数・関数ポインタを追加。 >>471 packed はパフォーマンス落としたりバイナリ互換に問題が発生したりするんで 気をつけて使う必要がある。非標準になるしね。 その例だと TSKWRK に packed は必要ない。
475 名前:名前は開発中のものです。 [2006/02/25(土) 18:20:18 ID:LRNrnoNa] みなさん、アドバイスありがとうございます。 アライメント自体の概念はわかりました。 実用についてはまだよくわからんのですこし調べてみます。 >>474 unionのサンプルの意味は u8でサイズを決めつつ、何のデータを扱ってもいいように void型のポインタと最大サイズの整数と浮動少数で 共用体を定義しているということでよろしいでしょうか? あと、私が書き込んだソースを下記のように修正したら問題なく 動くようになったんですがこのまま使い続けるのは 問題あるでしょうか? u8 wrk[48] → u32 wrk[12]
476 名前:474 mailto:sage [2006/02/25(土) 18:33:56 ID:ChwfFfDn] >>475 サンプルの意味はそういうこと。 union 自体のアライメント要求がメンバの中で最大の物になることを利用したもの。 GBA のハードウェアで4バイト以上のアライメントを要求するものは 無かったと思うので、 GBA に限った動作だけを考えれば u32 での置き換えで問題ないと言える。
477 名前:名前は開発中のものです。 [2006/02/26(日) 00:08:14 ID:WfB5cmW7] 関係ないけど GBAって電源切ったとき画面の色が黒でなく白なのはなんでだろう?
478 名前:名前は開発中のものです。 mailto:sage [2006/02/26(日) 00:10:13 ID:vz2qCRmn] 白黒液晶ってのは黒色の文字を表示するものだから背景が黒かったらどうしようもないと ここまで書いてGBAが白黒ではないという事実を思い出した
479 名前:名前は開発中のものです。 mailto:sage [2006/02/26(日) 07:47:46 ID:e+6sQVje] >>381 ノベル制作ツール「のべ〜る」で VisualBoyAdvanceでプログラムスタート直後に音割れする現象の対策 *TOP: #play_wav 1 music0.bin #page ■セロ弾きのゴーシュ; ゴーシュは町の活動写真館でセロを弾く係りでした。#w ; けれどもあんまり上手でないと評判でした。#w ; …… スクリプト開始のしょっぱなに何より先に#play_wavし、 直後に#pageします。これでなぜか音割れ現象が発生しなくなります。 なぜこれでうまくいくのかはよく分かりません。 ちなみに実機やその他のエミュでは試していません。 もしかしたら割り込み内でサウンドの処理より画像の処理を 先にやってるのかなとか思ったり・・見当ハズレなら作者さまスマソ。 これで使える。ヤター!
480 名前:479 mailto:sage [2006/02/26(日) 07:53:54 ID:e+6sQVje] のべ〜るは>>380 でした。失礼。
481 名前:466 [2006/02/26(日) 15:39:57 ID:UpVKMws2] 構造体のキャストで質問したものです。 とりあえず、みなさんのおかげで スプライト制御が一段落したんで 経過をご報告します。 ttp://2ch-library.com/uploader/src/up_2121.zip
482 名前:名前は開発中のものです。 mailto:sage [2006/02/27(月) 22:06:09 ID:KqQE3G30] くだ質で大変申し訳ないのですが、 C++でGBAのプログラミングはできないのでしょうか? 様々なサイトをググってみたのですが、すべてCでの開発で C++を扱っているサイトを全く見かけません。 よろしければご教授をお願いします。
483 名前:名前は開発中のものです。 mailto:sage [2006/02/27(月) 22:45:37 ID:NtZAdaLq] >>482 gcc なんだから、できるよ。
484 名前:名前は開発中のものです。 mailto:sage [2006/02/27(月) 23:07:51 ID:yy1S2zAQ] >>482 つ Tennodai Bunko
485 名前:482 mailto:sage [2006/02/28(火) 00:35:45 ID:jBhKnEbd] >>484 氏に紹介いただいたサイトを見る限り、DevkitAdvanceで普通にできそうですね。 早速試してみようと思います。 どうもありがとうございました。
486 名前:名前は開発中のものです。 mailto:sage [2006/02/28(火) 09:22:37 ID:1wwrrnAa] GBAプログラミング研究所のBMP2RGB.exeで256色の出力のとき、 255番のパレットを指定したドットが0x00になり、 255番のパレット自体も0x0000になって出力されるんだけど 何か意味があるのでしょうか。
487 名前:名前は開発中のものです。 mailto:sage [2006/02/28(火) 13:47:49 ID:ykuetkSe] 確証は無いけど透明色じゃないの?
488 名前:名前は開発中のものです。 [2006/03/01(水) 17:29:46 ID:CwoNSWML] ソースレベルデバッグをしたいんですが MAPPY VMとVHAM&DevkitAdvanceの組み合わせの場合 どのようにすればよいのでしょうか? また、NO$GBAとMAPPY VMだとどの程度違いますか?
489 名前:名前は開発中のものです。 mailto:sage [2006/03/02(木) 21:30:54 ID:yUNPC8aZ] Insight + VBA(devel版) で*.elf読ませる方が楽っぽくね?
490 名前:名前は開発中のものです。 mailto:sage [2006/03/02(木) 22:48:33 ID:LnIoHKvJ] arm-agb-elf-insightつかってデバッグするときにVisualBoyAdvanceの画面の状態を 確認しながらデバッグするにはどうしたらいいのですか? File-TargetSettingからConnection-TargetをSimulatar選んでからOptionをVBAの GDB接続待ちPortの数字にあわせればいいのですか? InsightデバッガからRun-ConnectTargetはSucessfully connectedってでるから 成功したのかな? でも、VBA側の接続待ち状態ダイアログが消えないから違うんだろうなぁ
491 名前:名前は開発中のものです。 mailto:sage [2006/03/02(木) 23:52:12 ID:fFp03F4Q] >>490 漏れの環境ではVBA-SDLでしかInsightと接続できないorz
492 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 11:46:20 ID:m5qLcxRB] ところでGBAゲームでセーブデータってどうやって作るんですが? 研究所にはあったみたいだけど落ちてて見れない・・・
493 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 13:52:52 ID:x3hAFwv9] >>492 VBAでGBAファイル起動
494 名前:名前は開発中のものです。 [2006/03/04(土) 14:06:07 ID:KUpila9P] >>455 このサンプルでDirectSoundの再生方法を試しているんですが サウンド再生関数を1回目に実行した際には音がならず 2回目の実行で音がなります。 これ以外のDirectSoundのサンプルでも同様の現象が起きます。 455のサンプルに関してはソースをまんまでコンパイルしても 同様の現象になります。 付属のロムデータでは正しく動作しているようですが 何がいけないかわかりますか?
495 名前:名前は開発中のものです。 [2006/03/04(土) 17:16:26 ID:KUpila9P] やっとこさゲームらしくなってきたんですけど サウンドがなるとめっさ重いんですよね。 GBAってこんなもんなんでしょうか? それともプログラムがヘボイだけ? ttp://2ch-library.com/uploader/src/up_2173.zip
496 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 17:18:01 ID:vi0lIxtr] AGBがまともにサウンドを鳴らせないほど非力なのは仕様です
497 名前:名前は開発中のものです。 [2006/03/04(土) 17:34:40 ID:KUpila9P] まじですか!? じゃあ、GB互換音源を使うしかないんですね。 研究所が消滅してコンバーターの入手も難しいし こまったもんだ…。
498 名前:492 mailto:sage [2006/03/04(土) 21:18:52 ID:m5qLcxRB] >>493 いや、そういう意味じゃなくて、 自作したゲームにセーブデータを作らせようと思ったらどうすればいいんですか?
499 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 21:53:58 ID:Msh9zdwX] >494 キーを入力しないと鳴らないんです。 main.cをコレで鳴るんじゃない? mu_wok = 0;// 再生の直前に++のため、0からの値になります。 se_wok = 0; PlayMusic(mu_wok,PLAY_LOOP_ON); //※追加 while(1) { >497 4つもの機能のちがう音源を制御するのが重そう。 ゲーム部分を軽くすることは出来ないでしょうか…
500 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 22:08:24 ID:Msh9zdwX] GBAプログラミング研究所って結局どうなりました? どこかへ移転したとか… 日本のGBA開発に欠かせないサイトだったし、あれほどみんなが 利用していたのに突如閉鎖というのは有り得ない。
501 名前:名前は開発中のものです。 mailto:sage [2006/03/04(土) 22:30:48 ID:ega3649d] >>498 SRAM(0x0E000000〜)に数値書き込めばいい
502 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 10:53:06 ID:bBYTbtx/] >>500 管理人が捕まったとか
503 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 11:16:39 ID:JLfn0Pan] >>502 iswebからアマゾンの広告かなんかに警告出されたとかいうこと書いてなかったっけ? それ放置してたら消されたとか?
504 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 16:30:00 ID:vg84cSdA] >>503 怒られたので消しました、って更新履歴にあったような気が? 今となっては確認が難しいが。
505 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 22:27:41 ID:aIloybH9] ”捕まった”とか言うとデマに発展しそうな気がしてイヤンな感じ 広告掲載の方法についてサーバーの提供元から警告が来たので広告を消した、 というような更新が最後だった希ガス 確かにGBAの方は更新がほぼ止ってたような気がしないでもないが DS用のページも作ってたみたいだし(DSの方はやってないのでよく知らないが) 更新意欲がなくなってそのままフェードアウトした感じではないのだが・・・
506 名前:名前は開発中のものです。 mailto:sage [2006/03/05(日) 22:32:48 ID:ZGr9k1wh] DSの方の掲示板は業者スパムだらけだったな
507 名前:名前は開発中のものです。 [2006/03/07(火) 00:19:36 ID:2maRPTXR] ソニックザヘッジホッグやロックマンとかの横スクロールアクションで 地形、足場の当たり判定をどのように持つかについて質問なんですが 素人考えだと @タイルごとに当たり判定の属性を持つ。 A当たり判定のある背景だけを一つのBGに分けて 背景色以外の部分に当たり判定を持つ。 だと思うのですが @だとタイル単位でしか扱えないため斜めの坂などの複雑な地形を作れません。 Aだと坂とかも表現できるとおもいます。 でも、ロックマンゼロとかのマップデータをVBAで確認してみると 当たり判定がある部分と無い部分の背景が一枚のBGに描かれています。 この場合、どのように当たり判定を持っているのでしょうか? 作成するゲームによって当たり判定の持ち方は変わってくると思いますが 上記のようなゲームを作る場合はどのように当たり判定を持つのが一般的でしょうか? 参考になるサイトとかあれば教えてもらえないでしょうか?
508 名前:名前は開発中のものです。 mailto:sage [2006/03/07(火) 01:50:52 ID:TN1OAFRk] >>480 つ ttp://gamdev.org/up/img/4889.zip
509 名前:名前は開発中のものです。 mailto:sage [2006/03/07(火) 07:32:50 ID:P11agiDo] >>507 当たり判定だけのマップを作る そのマップが視覚的に見えてる必要は無い
510 名前:名前は開発中のものです。 mailto:sage [2006/03/07(火) 07:35:16 ID:jNiGJUSI] >>507 BGにとらわれずに、マップのパラメータを配列の変数として持てばいいんじゃね? 床と傾斜の違いも同じく。
511 名前:名前は開発中のものです。 mailto:sage [2006/03/07(火) 22:33:51 ID:GCKxwI5B] >>507 のAは草の上を歩く場合、困ったことに…葉っぱ一枚の上にも乗っかってしまう。 >>509 510のやり方をになると想像。チップごとに当たり判定がある@の方法。 チップごとに次のような判定をする。 0…当たり判定無し □□□□ □□□□ □□□□ □□□□ @…当たり判定あり。 ■■■■ ■■■■ ■■■■ ■■■■ A…当たり判定ありで次のような判定をする ■□□□ ■■□□ ■■■□ ■■■■ B…当たり判定ありで次のような判定をする。 □□□■ □□■■ □■■■ ■■■■ 白い□の部分は当たり判定が無い。背景チップ番号を取得して0〜Bの場合に 分けて当たり判定。当たり判定の種類をもっと増やすこともできる。 これでマリオ風の坂道をなだらかに歩いて降りる表現もできるようになる。 チップ内の当たり判定だけど、上は4x4マスにしたけど、8x8ドットで 判定するなら8x8マスでの当たった/当たらない判定になる。 やったことないので想像です、スマソ。
512 名前:名前は開発中のものです。 mailto:sage [2006/03/07(火) 22:38:25 ID:GCKxwI5B] >508 乙です。ありがたく使わせていただきます。
513 名前:名前は開発中のものです。 mailto:sage [2006/03/10(金) 16:21:11 ID:/vUYzsUw] インターネットアーカイブがzipとかも保存してればなぁ・・・
514 名前:名前は開発中のものです。 mailto:sage [2006/03/10(金) 17:28:14 ID:2iPTfRgc] つ ttp://www.liarsoft.org/diary/
515 名前:名前は開発中のものです。 mailto:sage [2006/03/11(土) 03:21:32 ID:wvglnkMZ] 使用に堪えるデバッガ付きエミュってどれでしょう? CowBiteとMappy Virtual Machineは中々いいんですが 前者は使いづらく、後者はエミュとして弱い
516 名前:名前は開発中のものです。 [2006/03/12(日) 22:58:52 ID:oHXV1jml] タイルモードで512*512のBGを扱う際、 メモリ上の配列が256*256単位で左上→右上→左下→右下となっているのは 仕様ですか?
517 名前:名前は開発中のものです。 mailto:sage [2006/03/12(日) 23:37:14 ID:Yfw9wRAT] 仕様です
518 名前:516 [2006/03/13(月) 01:03:53 ID:OoJGMs+j] >>517 レスどうもです。 なぜそんなことを聞いたかというと 市販ソフトのBGを見ると512*512でやっているのが多いんですが なぜなのかなと思ったんですよ。 512*512にしろ256*256にしろスクロール部分を書き換えなきゃ いけないのは一緒だし、だったら256*256でやったほうが メモリ配列のことなんか考えなくていいし VRAMの使用量もすくないじゃないですか。 なんでなんでしょう?
519 名前:名前は開発中のものです。 mailto:sage [2006/03/13(月) 06:13:07 ID:CqXZ+TIn] >>516 タイルの配列は、2Kごとに区切られているような扱いをしてる模様。 Webでのサンプルは256x256はかりなので以外に気付かない罠。 >>518 256だと横幅が16ピクセルしか余裕がないからそれ以上のスクロール量が発生した時の案パイだと思われ。
520 名前:任天堂本社より警告 [2006/03/21(火) 20:45:17 ID:5b78pgIg] 任天堂本社情報通達部から本スレッドをご利用の皆様に警告します。 いかなる場合においても、ゲーム機本体および周辺機器、ソフトの内容を 改変する事は違法であり、個人使用もその限りではありません。 日本条例により罰せられますので早急におやめ下さい。 今回は警告という事で免除しますが、後日2ちゃんねる管理人に許諾を得て なんらかの処分を決定させていただきますのでご了承ください。 法的手段に踏み切る事も視野に入れて検討中です。 アクセス解析等によりご自宅にお邪魔させていただく場合があります。 会社・学校・友人・親・親戚への連絡を行う場合があります。
521 名前:名前は開発中のものです。 mailto:sage [2006/03/21(火) 22:14:46 ID:QjFV0BDn] >>520 なんだこれ? 気になって取説とパッケージ見直してみたけど、そんなこと書いてないね。 悪質ないたずらだな。