GBAで何やら作ってみようという人の為のスレ。ライセンス不要。
初心者歓迎。質問歓迎。英語苦手な人歓迎。冷やかし歓迎。ネカマ歓迎。
資料、リンク等
http://www.devrs.com/gba/
http://www.gbadev.org/
http://www.vsync.org/agb/
http://nocash.emubase.de/gbatek.htm
http://www.bomber.co.jp/chaola/docs/ARM/
開発環境
DevkitAdvance http://devkitadv.sourceforge.net/index.html
DevkitARM http://www.devkit.tk/
VisualHAM http://visualham.console-dev.de/
DragonBasic http://jm-basic.com/dragon/index.php
GBA Wiki
http://cgi.f26.aaacafe.ne.jp/~gbawiki/pukiwiki/pukiwiki.php
【GBA】Linuxから目覚めるぼくらのゲームボーイ!
http://pc5.2ch.net/test/read.cgi/linux/1070983168/
ゲームボーイアドバンス(GBA)開発@ゲ製板(避難所)
http://bbs.gamdev.org/test/read.cgi/gamedev/1055111303/
前スレ
http://pc5.2ch.net/test/read.cgi/gamedev/1013750899/
探検
ゲームボーイアドバンス(GBA)非公式開発 Part2
■ このスレッドは過去ログ倉庫に格納されています
04/10/30 15:50:05ID:XmInH8YR
689名前は開発中のものです。
2007/11/15(木) 20:19:19ID:LZz2LXH5 携帯電話の液晶を再利用したボードPC「DVIEW」
ttp://slashdot.jp/hardware/article.pl?sid=07/11/15/0122209
スプライトは使えないけど、オイラ的には実機でも動かしてみたいからこれ買うつもり
性能的にはこんなもん
CPU: ARM7TDMI Core (81MHz)
メモリ: On-Chip 40Kb SRAM (外部SD, FlashROMが利用可能)
ディスプレイ: 320x240、32K(RGB555)色
サウンド: 2ch,16bit audio-DAC for stereo/mono output (MP3, MIDI, ADPCM対応)
周辺機器: CMOS sensor input, VideoOut, SD Host I/F, UART, SPI, JTAG (拡張ボード利用で USB, LAN)
会社のページに繋がらないのは何故だ?
ttp://slashdot.jp/hardware/article.pl?sid=07/11/15/0122209
スプライトは使えないけど、オイラ的には実機でも動かしてみたいからこれ買うつもり
性能的にはこんなもん
CPU: ARM7TDMI Core (81MHz)
メモリ: On-Chip 40Kb SRAM (外部SD, FlashROMが利用可能)
ディスプレイ: 320x240、32K(RGB555)色
サウンド: 2ch,16bit audio-DAC for stereo/mono output (MP3, MIDI, ADPCM対応)
周辺機器: CMOS sensor input, VideoOut, SD Host I/F, UART, SPI, JTAG (拡張ボード利用で USB, LAN)
会社のページに繋がらないのは何故だ?
690名前は開発中のものです。
2007/11/16(金) 05:22:54ID:FnKxVSr6 メモリ 40Kbで、一体なにができるんだw
691名前は開発中のものです。
2007/11/16(金) 06:49:53ID:oFaiRmep 40KBの間違いだろ
692名前は開発中のものです。
2007/11/16(金) 07:05:03ID:FnKxVSr6 40KBでも同じこと
693名前は開発中のものです。
2007/11/16(金) 12:22:54ID:oFaiRmep694名前は開発中のものです。
2007/12/05(水) 01:08:25ID:q7aGDUhk 全くの初心者なんですが質問させてください
既存のゲームをベースにポケモンやメダロットやFFなんかを、
テキストやら音楽やら絵やらパーツやらモンスターやらを追加したり差し替えたりして作りたいと思っているのですが
おおまかな手順と必要な知識を教えてください
既存のゲームをベースにポケモンやメダロットやFFなんかを、
テキストやら音楽やら絵やらパーツやらモンスターやらを追加したり差し替えたりして作りたいと思っているのですが
おおまかな手順と必要な知識を教えてください
695名前は開発中のものです。
2007/12/05(水) 02:10:37ID:FhM2zJFq 簡単に言うと板違い。
gameurawazaに行って下さい。
難しく言うと
差し替え→コンスタント領域から該当箇所を見つけてリプレース
追加→コード領域からコンスタント領域参照部分を見つけて分岐もしくはテーブル書き換え
必要な知識→各種データフォーマット・LZ77圧縮法・ARM7インストラクション
gameurawazaに行って下さい。
難しく言うと
差し替え→コンスタント領域から該当箇所を見つけてリプレース
追加→コード領域からコンスタント領域参照部分を見つけて分岐もしくはテーブル書き換え
必要な知識→各種データフォーマット・LZ77圧縮法・ARM7インストラクション
696名前は開発中のものです。
2007/12/05(水) 17:45:25ID:qkiwd5QC 算数知らないのに数学の教えを乞うようなモン
質問でもなんでもない
と書こうとしたら695が親切すぎて泣いた
質問でもなんでもない
と書こうとしたら695が親切すぎて泣いた
697名前は開発中のものです。
2007/12/06(木) 19:07:23ID:+3Rk8p3E698名前は開発中のものです。
2007/12/07(金) 00:00:25ID:zCCzBOkw super card上でデータを保存するにはどうすればいいんでしょうか
sramに書いたあと、自分でメニュー呼んでSDに保存できればいいのですが、どうパッチをあててもできず。
自作ソフトには付けられないんですかね、パッチ。
また、同じくsuper cardで新しめのファームウェアだと起動すらしないのですが、アプリ側でできる対処法などご存知の方いませんか
sramに書いたあと、自分でメニュー呼んでSDに保存できればいいのですが、どうパッチをあててもできず。
自作ソフトには付けられないんですかね、パッチ。
また、同じくsuper cardで新しめのファームウェアだと起動すらしないのですが、アプリ側でできる対処法などご存知の方いませんか
699名前は開発中のものです。
2008/02/02(土) 06:07:02ID:9JCHDRiH 誰かwww.agbdev.netで配布してたデモ(Nok_Keysupd.zip、sprite.zipとか)
持ってる人いる?どんな中身か知りたいんだけどサイトが潰れちゃってさ。
持ってる人いる?どんな中身か知りたいんだけどサイトが潰れちゃってさ。
700名前は開発中のものです。
2008/03/04(火) 04:09:00ID:ajlkIhCi すいません。この本「Linuxから目覚めるぼくらのゲームボーイ!」
を読みながら、第2章のbox_tile.cまで進んだんですが、
サンプルプログラムをそのまま使用して、
コンパイルまでできたのですが、VBAで実行させると画面が真っ暗なままで
何も起こりません。これは実機でないと動作しないのでしょうか?
を読みながら、第2章のbox_tile.cまで進んだんですが、
サンプルプログラムをそのまま使用して、
コンパイルまでできたのですが、VBAで実行させると画面が真っ暗なままで
何も起こりません。これは実機でないと動作しないのでしょうか?
701名前は開発中のものです。
2008/03/04(火) 12:37:05ID:23nZbsqP 半分あたり
その本はメモリからブートすることを前提にしているので
ROMからブートすることを前提にしているエミュだとそのままでは動作しない
VBAで動かすにはbox_tile.mb.binに名前を変えてあげな
その本はメモリからブートすることを前提にしているので
ROMからブートすることを前提にしているエミュだとそのままでは動作しない
VBAで動かすにはbox_tile.mb.binに名前を変えてあげな
702名前は開発中のものです。
2008/03/04(火) 21:25:47ID:ajlkIhCi >>701
レスありがとうございます。
ファイル名を変えてやってみましたがうまくいきませんでした。。
代わりにリンカスクリプトでプログラムの開始アドレスを0x08000000に変えたら動きました!
おかげで挫折する期間が延びましたwありがとうございました。
しかしbox_tile.cより前に出てくるプログラムは何で内部メモリブートでもうまくいったのかなあ
レスありがとうございます。
ファイル名を変えてやってみましたがうまくいきませんでした。。
代わりにリンカスクリプトでプログラムの開始アドレスを0x08000000に変えたら動きました!
おかげで挫折する期間が延びましたwありがとうございました。
しかしbox_tile.cより前に出てくるプログラムは何で内部メモリブートでもうまくいったのかなあ
703名前は開発中のものです。
2008/03/08(土) 22:06:12ID:IYGGmug3 すいません。「Linuxから目覚めるぼくらのゲームボーイ!」
を第3章まで読み進めたのですが、clock.cがうまく動作しません。
割り込みハンドラの中でvolatile修飾したグローバル変数の値を書き換えているのに
全く値が変わりません。なにか考えられる原因はありますか?
ちなみに割り込みハンドラ自体が実行されていることは自作のprintf文の実行結果から
画面に文字が出力されるので間違いありません。
を第3章まで読み進めたのですが、clock.cがうまく動作しません。
割り込みハンドラの中でvolatile修飾したグローバル変数の値を書き換えているのに
全く値が変わりません。なにか考えられる原因はありますか?
ちなみに割り込みハンドラ自体が実行されていることは自作のprintf文の実行結果から
画面に文字が出力されるので間違いありません。
704名前は開発中のものです。
2008/03/09(日) 00:32:24ID:9hgngbOa >ちなみに割り込みハンドラ自体が実行されていることは自作のprintf文の実行結果から
>画面に文字が出力されるので間違いありません。
釈然としない
どう出力されたからそう思ったの?
ちょっと貼ってみてよ
>画面に文字が出力されるので間違いありません。
釈然としない
どう出力されたからそう思ったの?
ちょっと貼ってみてよ
705名前は開発中のものです。
2008/03/09(日) 01:09:00ID:gfwS1uas 該当部分のソースを張ります。
これでタイマー0がオーバーフローしたときに下記関数が実行されて、
VBAver1.7.2だとなぜか0110100100111010が常に表示されます。
volatile int tmr0_cnt = 0x0000;
void int_handler(void){
int flag;
int i;
register(INT_IME) = INT_IME_OFF;
flag = register(INT_IF);
if(flag & INT_TMR0){
tmr0_cnt++;
draw_str("タイマーわりこみ", 0, 13, BG_1);
for(i=0; i<16; i++){
if(((tmr0_cnt >> i) & 0x0001) == 1){
draw_str("1", 16-i, 1, BG_1);
}
else{
draw_str("0", 16-i, 1, BG_1);
}
}
}
register(INT_IF) = flag;
register(INT_IME) = INT_IME_ON;
}
これでタイマー0がオーバーフローしたときに下記関数が実行されて、
VBAver1.7.2だとなぜか0110100100111010が常に表示されます。
volatile int tmr0_cnt = 0x0000;
void int_handler(void){
int flag;
int i;
register(INT_IME) = INT_IME_OFF;
flag = register(INT_IF);
if(flag & INT_TMR0){
tmr0_cnt++;
draw_str("タイマーわりこみ", 0, 13, BG_1);
for(i=0; i<16; i++){
if(((tmr0_cnt >> i) & 0x0001) == 1){
draw_str("1", 16-i, 1, BG_1);
}
else{
draw_str("0", 16-i, 1, BG_1);
}
}
}
register(INT_IF) = flag;
register(INT_IME) = INT_IME_ON;
}
706名前は開発中のものです。
2008/03/09(日) 01:10:28ID:gfwS1uas ちなみにメイン関数の方では下記処理を行っており、
タイマ0のカウンタは正常にカウントアップしていることが画面表示から確認できました。
何か分かりますでしょうか。よろしくお願い致します。
while(1){
sec = register(TMR_COUNT0);
for(i=0; i<16; i++){
if(((sec >> i) & 0x0001) == 1){
draw_str("1", 16-i, 0, BG_1);
}
else{
draw_str("0", 16-i, 0, BG_1);
}
}
}
タイマ0のカウンタは正常にカウントアップしていることが画面表示から確認できました。
何か分かりますでしょうか。よろしくお願い致します。
while(1){
sec = register(TMR_COUNT0);
for(i=0; i<16; i++){
if(((sec >> i) & 0x0001) == 1){
draw_str("1", 16-i, 0, BG_1);
}
else{
draw_str("0", 16-i, 0, BG_1);
}
}
}
707名前は開発中のものです。
2008/03/09(日) 01:16:20ID:gfwS1uas あと、リンカスクリプトを書き換えて、テキストセクションの開始アドレスを
0x80000000にしているのですが、このことが何か関係があるのでしょうか。。
0x80000000にしているのですが、このことが何か関係があるのでしょうか。。
708名前は開発中のものです。
2008/03/09(日) 05:29:51ID:9hgngbOa ひょっとして全て理解した上でからかってる?
>>707はたしかに関係ある
テキストセクションを0x08000000に置いたあと以降の
連続した領域にBSSセクションとデータセクションを置いているので
グローバル変数に書き込みたくてもROMだから書きこめない
今までよく動いてたな。。。
>>707はたしかに関係ある
テキストセクションを0x08000000に置いたあと以降の
連続した領域にBSSセクションとデータセクションを置いているので
グローバル変数に書き込みたくてもROMだから書きこめない
今までよく動いてたな。。。
709名前は開発中のものです。
2008/03/09(日) 09:31:57ID:gfwS1uas リンカスクリプトについての理解が不十分でした。
下記ホームページを参考にリンカスクリプトを書き換えたら、
見事1秒ごとにtmr0_cntが0からカウントアップされるようになりました。
おかげで挫折する期間が延びました。ありがとうございました。
http://www.nextappli.com/index.php?GBA%2FROM%B2%BD#content_1_0
下記ホームページを参考にリンカスクリプトを書き換えたら、
見事1秒ごとにtmr0_cntが0からカウントアップされるようになりました。
おかげで挫折する期間が延びました。ありがとうございました。
http://www.nextappli.com/index.php?GBA%2FROM%B2%BD#content_1_0
710名前は開発中のものです。
2008/03/09(日) 19:34:43ID:I/rPhsey 例えば
mov r1, #128
strh r1, [r3, #0]
ldrh r3, [r2, #0]
を実行するのに、何クロック掛かるか・・という事を説明してくれる
本やサイトご存知内ですか?
mov r1, #128
strh r1, [r3, #0]
ldrh r3, [r2, #0]
を実行するのに、何クロック掛かるか・・という事を説明してくれる
本やサイトご存知内ですか?
711名前は開発中のものです。
2008/03/11(火) 00:29:05ID:IfG+az6x 音の多重再生をするにはどうしたらいいのですか
712名前は開発中のものです。
2008/03/11(火) 00:36:17ID:IfG+az6x 数十曲の音楽データをROMに格納したいのですが容量が足りません。
何か工夫が必要なのでしょうか。
マザー3なんかは100曲ものBGMが入ってましたがあれはどうやって実現しているのでしょうか。
何か工夫が必要なのでしょうか。
マザー3なんかは100曲ものBGMが入ってましたがあれはどうやって実現しているのでしょうか。
713名前は開発中のものです。
2008/03/11(火) 00:38:46ID:IfG+az6x すいません。100曲でなく250曲の間違いでした。
714名前は開発中のものです。
2008/03/11(火) 01:46:18ID:UWuqXy/S 譜面データと、音源データを分けて持っているから、かな?
MIDI見たいな感じで。
それに、要所要所でPCMをかぶせれば
大抵の曲は再現できそう。
あとは、圧縮をかけるだね。
(譜面データにたいして、また、ADPCMとは言わないが適当な圧縮形式で。)
MIDI見たいな感じで。
それに、要所要所でPCMをかぶせれば
大抵の曲は再現できそう。
あとは、圧縮をかけるだね。
(譜面データにたいして、また、ADPCMとは言わないが適当な圧縮形式で。)
715名前は開発中のものです。
2008/03/11(火) 09:34:19ID:IfG+az6x そんなのは俺の手に負えねえ。ここで挫折しまするわ。
716名前は開発中のものです。
2008/03/12(水) 17:36:52ID:Us8flhJs ここでGBの事聞いても大丈夫かな?
バンク切り替えの事について調べてるんですけど
MBC2のバンク切り替えについてすずめさんところのウェブアーカイブと
お受験に出るゲームボーイのページを調べてみたんですけどMBC2に関する情報が載っていなくて…
恐らく0x2000番地への書き込みだと思うんですけどどこか正確な情報がある場所ってないでしょうか?
それと現在自分がどのバンクを操作しているのか判別する方法があるかないかご存知の方いらっしゃいますか?
もしかしてバンクの位置情報はどこにも展開されず完全に自分で管理する必要があるんでしょうか?
デバッグの際にバンク情報がないと調べるのが大変で…
バンク切り替えの事について調べてるんですけど
MBC2のバンク切り替えについてすずめさんところのウェブアーカイブと
お受験に出るゲームボーイのページを調べてみたんですけどMBC2に関する情報が載っていなくて…
恐らく0x2000番地への書き込みだと思うんですけどどこか正確な情報がある場所ってないでしょうか?
それと現在自分がどのバンクを操作しているのか判別する方法があるかないかご存知の方いらっしゃいますか?
もしかしてバンクの位置情報はどこにも展開されず完全に自分で管理する必要があるんでしょうか?
デバッグの際にバンク情報がないと調べるのが大変で…
717名前は開発中のものです。
2008/03/12(水) 17:53:19ID:Jo1vXsg5 スレ違い
ttp://www.geocities.co.jp/Playtown/2004/gmbspecj.txt
ttp://fms.komkon.org/GameBoy/Tech/Software.html
エミュレータのソースも併せて読むといい
ttp://www.geocities.co.jp/Playtown/2004/gmbspecj.txt
ttp://fms.komkon.org/GameBoy/Tech/Software.html
エミュレータのソースも併せて読むといい
718名前は開発中のものです。
2008/03/12(水) 18:12:53ID:Us8flhJs すみません該当するようなスレが無かった物で。
挙げて頂いた上記サイト等も参考にしてみます。
エミュのソースをみれば確かに内部動作はカンペキに把握できますね。
GBのエミュも大分こなれてる様なのでその辺も参考にしてみます。
ご親切にどうもありがとうございました。スレ汚し失礼しました。
挙げて頂いた上記サイト等も参考にしてみます。
エミュのソースをみれば確かに内部動作はカンペキに把握できますね。
GBのエミュも大分こなれてる様なのでその辺も参考にしてみます。
ご親切にどうもありがとうございました。スレ汚し失礼しました。
719名前は開発中のものです。
2008/03/13(木) 15:11:16ID:d99ZfhW7720名前は開発中のものです。
2008/03/16(日) 06:19:18ID:RXPkoV7l devkitProを使ってGBAでゲームを作っているのですが、
const int hoge1 = 1 ;
const int hoge2 = hoge1 ;
のようにすると、「initializer element is not constant」と出てしまいます。
VC++だと普通にコンパイルが成功しました。
Cではこういう事は出来ないのでしょうか?
const int hoge1 = 1 ;
const int hoge2 = hoge1 ;
のようにすると、「initializer element is not constant」と出てしまいます。
VC++だと普通にコンパイルが成功しました。
Cではこういう事は出来ないのでしょうか?
721名前は開発中のものです。
2008/03/16(日) 12:05:58ID:0SBCpDyI >>720
スレ違いだが回答。
C言語とC++のconst修飾子の動作の違いのために起きる問題。
const int hoge1 = 1 ;
がC言語では変数として定義されるのに対し、C++では定数として定義される。
このため、
const int hoge2 = hoge1 ;
がエラーとなる(初期値つき変数に定数以外を指定したから)。
結論:C++でなくC言語で書くなら、定数はマクロやenumで定義しましょう。
余談だが、const修飾子には他にも違いがあり、グローバル変数をconst修飾した場合に、
C言語ではデフォルトで外部リンケージ(要するにextern)になるのに対し、
C++では内部リンケージ(要するにstatic)となる。
スレ違いだが回答。
C言語とC++のconst修飾子の動作の違いのために起きる問題。
const int hoge1 = 1 ;
がC言語では変数として定義されるのに対し、C++では定数として定義される。
このため、
const int hoge2 = hoge1 ;
がエラーとなる(初期値つき変数に定数以外を指定したから)。
結論:C++でなくC言語で書くなら、定数はマクロやenumで定義しましょう。
余談だが、const修飾子には他にも違いがあり、グローバル変数をconst修飾した場合に、
C言語ではデフォルトで外部リンケージ(要するにextern)になるのに対し、
C++では内部リンケージ(要するにstatic)となる。
722名前は開発中のものです。
2008/03/16(日) 12:18:17ID:0SBCpDyI >>721
スレ違うというか板違いでしたね。
あと、一応補足。
当たり前だけどC++でグローバルな
const int hoge0 = 1;
static const int hoge1 = 1;
extern const int hoge2 = 1;
を定義すると、hoge0とhoge1は定数、hoge2は変数となる。
スレ違うというか板違いでしたね。
あと、一応補足。
当たり前だけどC++でグローバルな
const int hoge0 = 1;
static const int hoge1 = 1;
extern const int hoge2 = 1;
を定義すると、hoge0とhoge1は定数、hoge2は変数となる。
723名前は開発中のものです。
2008/03/16(日) 15:31:08ID:3fassPpA724名前は開発中のものです。
2008/03/17(月) 02:10:37ID:xMktvNUH725720
2008/03/17(月) 03:34:16ID:C1jKoyjP なるほど、そもそもCとC++じゃconstの仕様が違うのですね。
良く分かりました。
板違いの質問に答えて頂き、ありがとうございました。
良く分かりました。
板違いの質問に答えて頂き、ありがとうございました。
726名前は開発中のものです。
2008/03/17(月) 10:01:08ID:7F2zgz+N >>724
やっぱり変数と定数の意味に無理があるだろ。どこで
そんなネタ仕込まれたんだ?
722 の3つは全部 const int 型変数の定義。
const int 型変数が定数式で初期化されていれば、
それもまた定数式となる。
リンケージはそれぞれ決まっているし、外部リンケージ
じゃなければ初期化が必須だったりするけど、それらは
定数式として使えるかどうかとは別の話。
やっぱり変数と定数の意味に無理があるだろ。どこで
そんなネタ仕込まれたんだ?
722 の3つは全部 const int 型変数の定義。
const int 型変数が定数式で初期化されていれば、
それもまた定数式となる。
リンケージはそれぞれ決まっているし、外部リンケージ
じゃなければ初期化が必須だったりするけど、それらは
定数式として使えるかどうかとは別の話。
727名前は開発中のものです。
2008/03/24(月) 05:51:58ID:UCF17QKn GB音源(例えばチャンネル1)でエンベロープをハードウェアでは無く自力でやりたい場合、
SOUND1CNT_Hのbit12-15をいじって、
SOUND1CNT_Xのbit15を立てて初期化するしかないのでしょうか?
これだと発音中の波形の状態も最初に戻ってしまうらしく、
音が自然にならないので困っています。
何か良い方法をご存知の方はいらっしゃらないでしょうか?
SOUND1CNT_Hのbit12-15をいじって、
SOUND1CNT_Xのbit15を立てて初期化するしかないのでしょうか?
これだと発音中の波形の状態も最初に戻ってしまうらしく、
音が自然にならないので困っています。
何か良い方法をご存知の方はいらっしゃらないでしょうか?
728名前は開発中のものです。
2008/03/24(月) 08:16:50ID:bI8PsKud その方法しか無いがチャンネル1と2は必ず発音がリセットされるので実質使えない
チャンネル3はリセットされないからソフト制御可能
チャンネル3はリセットされないからソフト制御可能
729名前は開発中のものです。
2008/03/24(月) 13:22:21ID:o6pWhQxB GBAのスペックに
サウンド:アナログ(パルス波2ch+波形メモリ1ch+ノイズ1chの音源、従来機と同様)+デジタル(PCM)2ch
ってあるけどこれと同時発音数は別の話だよね
もっと沢山鳴らしてるようなメガデモはあるし、実際は何音までなんでしょ
サウンド:アナログ(パルス波2ch+波形メモリ1ch+ノイズ1chの音源、従来機と同様)+デジタル(PCM)2ch
ってあるけどこれと同時発音数は別の話だよね
もっと沢山鳴らしてるようなメガデモはあるし、実際は何音までなんでしょ
730名前は開発中のものです。
2008/03/24(月) 16:23:44ID:bI8PsKud それで全部だけど?
731名前は開発中のものです。
2008/03/24(月) 18:13:20ID:o6pWhQxB では同じトラック三つコピペして全部違うPCMにしても
音切れがないのはどういう仕組み?
音切れがないのはどういう仕組み?
732名前は開発中のものです。
2008/03/24(月) 18:22:44ID:+9oLoWUN733名前は開発中のものです。
2008/03/24(月) 18:22:59ID:bI8PsKud 自分でPCMと書いてるじゃん・・・
734名前は開発中のものです。
2008/03/24(月) 18:32:15ID:o6pWhQxB デジタル(PCM)2chって書いてあるけど
合成すればいいってんなら何音まで?
合成すればいいってんなら何音まで?
735名前は開発中のものです。
2008/03/24(月) 21:01:23ID:+9oLoWUN736727
2008/03/25(火) 03:27:18ID:XMS5LhkT >728
うへぇそうなんですかorz レスありがとうございます。
こんなキッツイ制限があるのにGBのゲームには一杯名曲があるというのが信じられません。
というかFCよりもキツイですねこれは。
FCミニとか、エミュレーターとかも結構苦労して再現してそうですね。
うへぇそうなんですかorz レスありがとうございます。
こんなキッツイ制限があるのにGBのゲームには一杯名曲があるというのが信じられません。
というかFCよりもキツイですねこれは。
FCミニとか、エミュレーターとかも結構苦労して再現してそうですね。
737名前は開発中のものです。
2008/03/25(火) 21:01:25ID:cUljzw0d Raylight Studios - Resident Evil GBA + Bonus
http://jp.youtube.com/watch?v=DBHNtTNPzV0
やっぱ出なかったのは容量の問題かな
http://jp.youtube.com/watch?v=DBHNtTNPzV0
やっぱ出なかったのは容量の問題かな
738名前は開発中のものです。
2008/03/25(火) 22:32:13ID:DSvlIXZK すげえな
739名前は開発中のものです。
2008/04/04(金) 05:56:12ID:hXz7vhFd GBAよりスーファミの方が開発意欲がそそられる
740名前は開発中のものです。
2008/04/27(日) 02:28:18ID:BegmYBqI devkitProを使ってみようかと思ってるのですが、
コレを使ってGBAソフトを作ってネットで配布する場合、
ソースも配布可能にしなきゃいけないのでしょうか?
コレを使ってGBAソフトを作ってネットで配布する場合、
ソースも配布可能にしなきゃいけないのでしょうか?
741名前は開発中のものです。
2008/04/27(日) 09:09:17ID:gOa+IOAb ライブラリを改変しなければ配布しなくてもよかったと思います。
742名前は開発中のものです。
2008/04/27(日) 14:36:38ID:gA0/oGVB743740
2008/04/28(月) 03:52:19ID:fpXnuQEH744名前は開発中のものです。
2008/06/22(日) 12:06:27ID:/JClv6am >>50
サイト消えてる・・・
サイト消えてる・・・
745名前は開発中のものです。
2008/07/22(火) 08:08:44ID:UkA+4UPJ 海外ソフトの和訳ハックとか作れますか?
もし可能性が少しでもあるなら頑張ってみようかなと・・・
予備知識ゼロだけど・・・orz
もし可能性が少しでもあるなら頑張ってみようかなと・・・
予備知識ゼロだけど・・・orz
746名前は開発中のものです。
2008/10/15(水) 19:46:04ID:BTWkaFv3 GB伊次郎ってどっかで手に入らないものだろうか…
747名前は開発中のものです。
2008/10/20(月) 09:28:59ID:udn3EoyF >>746
GBXchangerと任天堂パワーのGB用カートリッジがあれば、似たようなことができると思う
GBXchangerと任天堂パワーのGB用カートリッジがあれば、似たようなことができると思う
748名前は開発中のものです。
2008/10/21(火) 00:04:47ID:Izk3rpBS それが手に入れば苦労はしないっての…
749名前は開発中のものです。
2008/10/21(火) 09:46:42ID:weSdSC9r この手のものは時期逃すと手に入りにくいからなあ・・・
数年前なら、数少ないが売っている店はあった
あとは今あるとしたらオークション
数年前なら、数少ないが売っている店はあった
あとは今あるとしたらオークション
750名前は開発中のものです。
2008/10/22(水) 12:38:33ID:nJuXMnla ヤフオクで1点だけ見かけた
751名前は開発中のものです。
2008/11/01(土) 00:24:39ID:Tvk5Kt8k GBのマジコンって今でも需要あるんだね
KOMAKUYAはもうスターターキット出さないのかな
KOMAKUYAはもうスターターキット出さないのかな
752名前は開発中のものです。
2008/11/16(日) 05:12:20ID:yRHdgsS9 void line(hword Xa, hword Ya, hword Xb, hword Yb, hword color) {
hword x, y;
int j = Ya;
int e = 0;
for(x = Xa; x < Xb; x++) {
draw_point(x, j, color);
e = e + (Yb-Ya);
if((Xb-Xa)< e) {
e = e - (Xb - Xa);
j = j + 1;
}
}
}
このメソッドがどのように動いて斜線を引いているか分かり易く教えていただけないでしょうか?
draw_pointメソッドは指定された(x,j)座標にcolorで指定した色のドットを表示するメソッドです。
斜線の範囲は(Xa, Ya)から(Xb, Yb)です。
hword x, y;
int j = Ya;
int e = 0;
for(x = Xa; x < Xb; x++) {
draw_point(x, j, color);
e = e + (Yb-Ya);
if((Xb-Xa)< e) {
e = e - (Xb - Xa);
j = j + 1;
}
}
}
このメソッドがどのように動いて斜線を引いているか分かり易く教えていただけないでしょうか?
draw_pointメソッドは指定された(x,j)座標にcolorで指定した色のドットを表示するメソッドです。
斜線の範囲は(Xa, Ya)から(Xb, Yb)です。
753名前は開発中のものです。
2008/11/16(日) 12:27:42ID:yRHdgsS9 void line(hword Xa, hword Ya, hword Xb, hword Yb, hword color) {
hword x, y;
int j = Ya;
int e = 0;
for(x = Xa; x < Xb; x++) {
draw_point(x, j, color);
e = e + (Yb-Ya);
if((Xb-Xa)< e) {
e = e - (Xb - Xa);
j = j + 1;
}
}
}
このメソッドがどのように動いて斜線を引いているか分かり易く教えていただけないでしょうか?
draw_pointメソッドは指定された(x,j)座標にcolorで指定した色のドットを表示するメソッドです。
斜線の範囲は(Xa, Ya)から(Xb, Yb)です。
hword x, y;
int j = Ya;
int e = 0;
for(x = Xa; x < Xb; x++) {
draw_point(x, j, color);
e = e + (Yb-Ya);
if((Xb-Xa)< e) {
e = e - (Xb - Xa);
j = j + 1;
}
}
}
このメソッドがどのように動いて斜線を引いているか分かり易く教えていただけないでしょうか?
draw_pointメソッドは指定された(x,j)座標にcolorで指定した色のドットを表示するメソッドです。
斜線の範囲は(Xa, Ya)から(Xb, Yb)です。
754名前は開発中のものです。
2008/11/16(日) 18:17:08ID:9y44eiNe ブレゼンハムでググれ
こんなところで聞くよりいい解説がどこかにある
こんなところで聞くよりいい解説がどこかにある
755名前は開発中のものです。
2008/11/17(月) 12:01:38ID:M2eDLwwk デジタル微分解析(DDA)でググ・・・ったら余計わからんくて俺が吹いた
756名前は開発中のものです。
2008/11/17(月) 22:21:48ID:0FeRBUS+ 厳密に考えるとやっかいなところは多々あるが
2Dで直線や多角形描くぐらいならただの差分方程式だろ
2Dで直線や多角形描くぐらいならただの差分方程式だろ
757名前は開発中のものです。
2008/11/18(火) 22:54:21ID:35X+8Y/i GBAで1〜10までのランダム値を取ろうと思ったらどうすればよいのでしょうか?
rand()は使えませんよね
rand()は使えませんよね
758名前は開発中のものです。
2008/11/19(水) 03:13:42ID:iECaJTAb759名前は開発中のものです。
2008/12/03(水) 21:17:08ID:ZUsaZJd3 Homebrew BOF
ゲーム機など開発環境が公開されていないハード、及びマイナーハード開発者の集いを企画しています。
日時:コミケ(12/28-30)前後 当日なら17-19時くらい + 宴会
場所:東京都区内
費用:会場実費(0-数百円?)
たぶん日本全体で100人もいないんじゃないかと思いますが、
コミケで上京する人もいるでしょうからその時期を予定しています。
http://www27.atwiki.jp/homebrew/
マルチすまん
ゲーム機など開発環境が公開されていないハード、及びマイナーハード開発者の集いを企画しています。
日時:コミケ(12/28-30)前後 当日なら17-19時くらい + 宴会
場所:東京都区内
費用:会場実費(0-数百円?)
たぶん日本全体で100人もいないんじゃないかと思いますが、
コミケで上京する人もいるでしょうからその時期を予定しています。
http://www27.atwiki.jp/homebrew/
マルチすまん
760名前は開発中のものです。
2009/01/09(金) 21:44:01ID:JmGx4bkn age
761名前は開発中のものです。
2009/01/09(金) 21:54:46ID:JmGx4bkn おtingting
762名前は開発中のものです。
2009/01/09(金) 22:02:00ID:JmGx4bkn マジキチ動画(ββ)
763名前は開発中のものです。
2009/01/17(土) 21:22:00ID:/uotE80P GBAでMP3を再生する方法を教えてください
764名前は開発中のものです。
2009/01/18(日) 02:54:34ID:eSDINTKa 市販プレーヤー買った方が手間取らない
765名前は開発中のものです。
2009/01/18(日) 05:28:35ID:vCC7QsmR プレイやん
766名前は開発中のものです。
2009/01/18(日) 13:23:24ID:F84aYW6Z サウンドプレイヤーを自作したいと思っています。20曲程入れたいんですが何らかの形で圧縮して組み込みことが必要だと思うのですがどうしたらいいですか。
767名前は開発中のものです。
2009/01/18(日) 14:23:20ID:+OkZIPbY PCでそのプログラムは作ってみた?
768名前は開発中のものです。
2009/01/18(日) 14:26:28ID:F84aYW6Z PCではDXライブラリを使えばMP3の再生ができるので作れることが分かっています。
769名前は開発中のものです。
2009/01/19(月) 01:08:21ID:4HQkQlpM じゃ、DXライブラリ使わずにmp3再生できるように頑張れ
770名前は開発中のものです。
2009/02/06(金) 17:43:16ID:6cgXmSA9 じゃあ脳内再生しかないな
771名前は開発中のものです。
2009/02/06(金) 19:56:14ID:BaBBx5bc GBAの性能じゃmp3プレイヤーは厳しくないか?
772名前は開発中のものです。
2009/02/15(日) 02:31:54ID:boVc3Mdt DMA1&2とTIMER0&1を使って、ダイレクトサウンドA&Bで同時に音を鳴らしたいのですが
片方しか音が鳴りません。
VBAのIOViewerでFIFOが変化しているのは確認したのですが
何も音がしない理由としては、どんな事が考えられますか?
SGCNT0_H(0x4000082)
SGCNT1(0x4000084)
の音量他もちゃんと値が入ってます。
片方しか音が鳴りません。
VBAのIOViewerでFIFOが変化しているのは確認したのですが
何も音がしない理由としては、どんな事が考えられますか?
SGCNT0_H(0x4000082)
SGCNT1(0x4000084)
の音量他もちゃんと値が入ってます。
773名前は開発中のものです。
2009/02/15(日) 05:26:13ID:PZvLdBG/ 本当に値が正しいなら
あとはVBA側でDirect Sound A,Bのどちらかがオフになってる位しか無いな
あとはVBA側でDirect Sound A,Bのどちらかがオフになってる位しか無いな
774772
2009/02/15(日) 06:41:13ID:boVc3Mdt レスありがとうございます。
VBAの設定も間違いなかったみたいです。
あれから色々試してました。
実は多重再生の為に、FIFOにコピーするバッファはサウンドデータと別にしていて、
TIMERのハンドラ内で手動でDMAを使ってFIFOにコピーをしてました。
鳴らないのはダイレクトサウンドAの方(BGM用)で、
ダイレクトサウンドB(効果音用)が鳴った時に何故かAも鳴ったので
調べてみると、効果音用のTIMER1が動くと鳴ると解りました。
とりあえず、AとBのFIFOコピーにどちらもTIMER1を使用することで一応解決しました。
タイマーを分けると鳴らなくなる理由がわからないままですが。
もしやDSOUNDCTRL(0x4000082)以外にも、
TIMERとダイレクトサウンドを関連付けるレジスタがあるのでしょうか?
VBAの設定も間違いなかったみたいです。
あれから色々試してました。
実は多重再生の為に、FIFOにコピーするバッファはサウンドデータと別にしていて、
TIMERのハンドラ内で手動でDMAを使ってFIFOにコピーをしてました。
鳴らないのはダイレクトサウンドAの方(BGM用)で、
ダイレクトサウンドB(効果音用)が鳴った時に何故かAも鳴ったので
調べてみると、効果音用のTIMER1が動くと鳴ると解りました。
とりあえず、AとBのFIFOコピーにどちらもTIMER1を使用することで一応解決しました。
タイマーを分けると鳴らなくなる理由がわからないままですが。
もしやDSOUNDCTRL(0x4000082)以外にも、
TIMERとダイレクトサウンドを関連付けるレジスタがあるのでしょうか?
775772
2009/02/15(日) 08:59:40ID:boVc3Mdt 原因が解りました…。
DSOUNDCTRLの初期化にor演算子しか使っていなかったこと
(タイマーを指定するのに、DSOUNDCTRL |= DSOUNDCTRL_ATIMER(0)としかやってませんでした)
自分の使っているgba_sound.hのDSOUNDCTRL_ARESETが
0x0400と定義されていた事(実際は0x0800。0x0400はタイマーの指定に使用)
が原因でした…。
お騒がせしてしまってすみませんでした。
DSOUNDCTRLの初期化にor演算子しか使っていなかったこと
(タイマーを指定するのに、DSOUNDCTRL |= DSOUNDCTRL_ATIMER(0)としかやってませんでした)
自分の使っているgba_sound.hのDSOUNDCTRL_ARESETが
0x0400と定義されていた事(実際は0x0800。0x0400はタイマーの指定に使用)
が原因でした…。
お騒がせしてしまってすみませんでした。
776名前は開発中のものです。
2009/02/20(金) 20:47:15ID:Oxql6lkt GBAとかファミコンは開発環境が強力じゃないから
そういう所でハマっちゃうと、抜けるの大変だよね
そういう所でハマっちゃうと、抜けるの大変だよね
777名前は開発中のものです。
2009/03/10(火) 20:46:38ID:yBs8MUSr GBAではないですが、GBCの板が見当たらなかったので試しに書いてみます。
ttp://nagasaki.cool.ne.jp/xor-a/
ユーザーアプリがロッピーとかで配信出来たらなぁと思うのは愚痴ですが。
ttp://nagasaki.cool.ne.jp/xor-a/
ユーザーアプリがロッピーとかで配信出来たらなぁと思うのは愚痴ですが。
778名前は開発中のものです。
2009/03/20(金) 18:11:44ID:RqzCAhzX GBCの板は昔あったんだが、過疎すぎて落ちちゃった
VCとかに配信できたら面白そうだけどね>自作ゲーム
VCとかに配信できたら面白そうだけどね>自作ゲーム
779名前は開発中のものです。
2009/03/31(火) 03:30:28ID:LhzYAQbh 今まではメインループの始めにV-Blankを待って、それから各処理を行っていたのですが、
開発が進むにつれてV-Blank中だけじゃ処理が間に合わなくなってしまいました。
そこでゲーム処理と描画関係の処理にわけて
while( V_COUNT != 0 ){}
GameProc() ; // ゲーム処理
while( V_COUNT < 160) {}
GraphicProc() ; // 描画関係の処理
と、二つに分けてやる事にしました。
表面上はうまく動いているように見えるのですが、
こういう事をやってしまっても大丈夫なのでしょうか?
開発が進むにつれてV-Blank中だけじゃ処理が間に合わなくなってしまいました。
そこでゲーム処理と描画関係の処理にわけて
while( V_COUNT != 0 ){}
GameProc() ; // ゲーム処理
while( V_COUNT < 160) {}
GraphicProc() ; // 描画関係の処理
と、二つに分けてやる事にしました。
表面上はうまく動いているように見えるのですが、
こういう事をやってしまっても大丈夫なのでしょうか?
780名前は開発中のものです。
2009/03/31(火) 12:58:22ID:WlDU8zsj 分けること自体は問題ないけど
ゲーム処理でV_COUNT != 0を待つ意味は無いよ
描画が終わったらすぐに処理を始めていい
while( V_COUNT < 160) ;
GraphicProc();
GameProc();
ゲーム処理でV_COUNT != 0を待つ意味は無いよ
描画が終わったらすぐに処理を始めていい
while( V_COUNT < 160) ;
GraphicProc();
GameProc();
781779
2009/04/01(水) 03:36:13ID:2baejuDU >780
おおなるほど。
確かにそうした方が処理時間をより多くさけますね。
レスありがとうございます。
おおなるほど。
確かにそうした方が処理時間をより多くさけますね。
レスありがとうございます。
782名前は開発中のものです。
2009/04/23(木) 20:20:06ID:jG2DENZH ここってまだ人いますかね……
自分で作ったプログラムをPogoShellから起動する場合,「終了してPogoShellに戻る」
という機能をつけると便利だと思うんですが,やりかたがさっぱりわかりません.
どこで調べればいいのかご存知のかた,教えてくださいませ.
自分で作ったプログラムをPogoShellから起動する場合,「終了してPogoShellに戻る」
という機能をつけると便利だと思うんですが,やりかたがさっぱりわかりません.
どこで調べればいいのかご存知のかた,教えてくださいませ.
783名前は開発中のものです。
2009/04/23(木) 23:16:10ID:GrL4nFHE Pogoshell resetでググってみた。
ttp://boards.pocketheaven.com/viewtopic.php?p=52627&sid=a2b1ee533e1a9b52029d305b2c611034
になんか書いてあるような気がする。
あとは自分でガンバレ
ttp://boards.pocketheaven.com/viewtopic.php?p=52627&sid=a2b1ee533e1a9b52029d305b2c611034
になんか書いてあるような気がする。
あとは自分でガンバレ
784名前は開発中のものです。
2009/04/24(金) 08:02:45ID:7kCUCgG4 カートリッジのバンクセレクタを元に戻してswi 1, swi 0の順でリセットかければおk
Visoly系(F2A)とEZ/XG-Flashはlibpogoのrestart.Sを使えばいいよ
Visoly系(F2A)とEZ/XG-Flashはlibpogoのrestart.Sを使えばいいよ
785名前は開発中のものです。
2009/04/24(金) 08:52:53ID:oh9KlDGe おお,回答ありがとうございます.
リブート自体はbiosコールでできるのかなとは思ってたんですが,
バンクセレクタ云々というのが俺がよくわかってない点のようですね.
F2Aを使ってるので,とりあえずrestart.sを見てみます.
実はC言語しか知らないので時間がかかりそうですが.
リブート自体はbiosコールでできるのかなとは思ってたんですが,
バンクセレクタ云々というのが俺がよくわかってない点のようですね.
F2Aを使ってるので,とりあえずrestart.sを見てみます.
実はC言語しか知らないので時間がかかりそうですが.
786名前は開発中のものです。
2009/08/16(日) 22:24:12ID:DZlUccKL 圧縮した音楽ファイルはどうやって再生すればいいのでしょうか。wavじゃサイズ大きすぎる。
787名前は開発中のものです。
2009/08/17(月) 12:45:32ID:SfTpCTHN 何で圧縮した音楽ファイル?まずはそこからだけど。
mp3は再生できないよ。
mp3は再生できないよ。
788名前は開発中のものです。
2009/08/17(月) 17:31:39ID:SHxtq19H そもそも、サンプリングされた音の再生がGBAじゃ無理だと思うんだが
スペックが足りない
スペックが足りない
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- れいわ議員「母親はね、子どもを戦争に行かせるために産んだんじゃないんだよ」 高市総理に“10秒回答”迫り、残り5分は“独壇場”★3 [♪♪♪★]
- 中国国防省が再反論 SNSで公開した音声とは“別の通報”で日本に訓練の時間や海域を通報したと主張★3 [夜のけいちゃん★]
- BreakingDown選手がくも膜下出血、瓜田純士、平手打ちを行った江口響は「もう格闘技も辞めます。責任取りたいです』とまで言ってきてる」 [muffin★]
- 資さんうどんが「PayPay」の取り扱いを停止 他のキャッシュレス決済は引き続き利用可能 [少考さん★]
- フィンランド、ミスや国会議員つり目投稿 くり返されるアジア人差別 ★4 [蚤の市★]
- こども家庭庁、2026年から“独身税”を開始、年収200万なら年4200円、年収400万なら年7800円 ★7 [お断り★]
- 天パってキモいよね
- 俺ちいかわのキャラだとちいちゃんっぽいんだが
- 【速報】高市早苗、文春砲wwwwwwwwwwwwwwwwwwwwwwwwwwwww [339035499]
- ニュータッチのカップ麺でおいしいやつおしえて
- 一兆℃の火の玉が現れたら太陽系消滅するらしい🙂
- 点滴打ちたいんだけどどうやったら打てる?
