■エミュレータ■
■ このスレッドは過去ログ倉庫に格納されています
0001ピグモン
NGNG資料のありか、作成方法など、有益な情報に期待しつつ・・・・・開始ッ!
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNGエミュを作りたいのですが
http://pc.2ch.net/test/read.cgi/tech/1008334719/
終了!
0006デフォルトの名無しさん
NGNGその口ぶりだと、あなたは初心者ではなさそうですね。
まずあなたの知る資料のありか、作成方法など、
有益な情報をまず提示してみてはどうですか。
それが出来なきゃ、そのスレとこのスレの違いはなんだよ!?
0007デフォルトの名無しさん
NGNG> そのスレとこのスレの違いはなんだよ!?
駄スレか、糞スレか。
0008ピグモン
NGNGようするに、スレッドのスタンスが違うということです。
前者は「まったく何も知らない初心者がエミュレータを作りたい」という
ことから、基本的な質問(ひょっとするとコンパイラの使い方とか)を
されるスレッドだと思うんです。
このスレは、自分のターゲットとするマシンのCPUのオペコードくらいの
資料は既に入手ずみで「さぁどうやって実装しようか?」というような
そういった技術を話し合えれば、と思います。
>有益な情報をまず提示してみてはどうですか
私にとって有益でも、あなたにとって有益でないかもしれませんし。
誰かが欲しい情報を提示できれば良いとは思いますが・・・・・
不特定多数に提示するには掲示板は向いてないと思いますが・・・
0009デフォルトの名無しさん
NGNGあのね…、ネタケテーイかな。
> >有益な情報をまず提示してみてはどうですか
> 私にとって有益でも、あなたにとって有益でないかもしれませんし。
> 誰かが欲しい情報を提示できれば良いとは思いますが・・・・・
> 不特定多数に提示するには掲示板は向いてないと思いますが・・・
じゃあ、てめぇが>>1で書いた
> 資料のありか、作成方法など、有益な情報に期待しつつ・・・・・開始ッ!
は何?
つーか、俺のカキコは1を改変しただけの物なんだがね。
0010ピグモン
NGNGどういう意図で、あなたがこのスレに書いてるのかはわかりませんが、
暇を潰すつもりなのでしたら、他をあたってください。
要するに「聞かれた事に対する答えを提示できたら一番良いが、
自分の持ってるネタを無造作に出しても、それが誰かの聞きたかった
こととは限らない(つまり無意味)」という事です。
0011デフォルトの名無しさん
NGNGつまり、このスレは糞スレだってことだろ?
0012デフォルトの名無しさん
NGNG・別スレ立てる理由と違いは何?
と言いたいだけさ。
1さんとしてはどちらにも理由があるようなので、私は消えます。
一言追加すれば、他人から資料のありか、作成方法の提供を待つばかりでは、
DQNにしか見えない、という意味も含めたんだが。
伝わらないなら結構です。
0013デフォルトの名無しさん
NGNG∴ クソスレ
Q.E.D
0014デフォルトの名無しさん
NGNGま、スキル無い奴らにかまわずマターリやってくれ>1
0015デフォルトの名無しさん
NGNG会場だけ用意してチラシに「美味いレシピの発掘に期待っ。テーブルも椅子も飯も自分の好みのものを持参してね」
と書いたら誰もこなかった。
なにが間違っていたのでしょうか・・
0016デフォルトの名無しさん
NGNG与えるものを持たないレベルの低い奴にチラシを配ったからだろ。
まぁ15はヘタレってことで(w
0017デフォルトの名無しさん
NGNG痛々しさが目に付くスレだな。
0018デフォルトの名無しさん
NGNG0019ピグモン
NGNG0021デフォルトの名無しさん
NGNGhttp://www.google.com/search?num=100&hl=ja&q=%83G%83%7E%83%85%83%8C%81%5B%83%5E%8D%EC%90%AC+%8E%91%97%BF%82%CC%82%A0%82%E8%82%A9+%8D%EC%90%AC%95%FB%96@+%97L%89v%82%C8%8F%EE%95%F1&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
あとはピグモンに任せた
よろしこ
0022デフォルトの名無しさん
NGNGアセンブラのソースだとダメなの?
0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNGこれ定説。
0025デフォルトの名無しさん
NGNG0026ピクミン
NGNGどうすればいいのかわからないよー
せっかくのスレがこのまま煽られて終わったんじゃ
もったいないでしょ?
とりあえず何かひとつでも具体的な情報出してよ
エミュレータ作成に関する資料とか
作成方法などの有益な情報をさあ
それを元にあーでもないこーでもないって話しが進むじゃん?
0027デフォルトの名無しさん
NGNG> 痛々しさが目に付くスレだな。
ポトラックってそんな普及している単語ですか?
まぁこの辺は主観でしょうけど。
しかしポトラックってご近所の料理持ちよりパーティではなかったか?
そんなフランクな集まりを挙げておきながらパーティーの題材がチャーハンである事を嘲う
17の中途半端なひけらかしと痛々しさが目に付くスレということで。
0028デフォルトの名無しさん
NGNGソースコードあるよ。要る?
0029デフォルトの名無しさん
NGNG〜′ ̄ ̄( ゚Д゚)<重複スレじゃなければ、
UU ̄ ̄ U U |俺だってやさしいぞ、ゴルァ!
\_____________
0030デフォルトの名無しさん
NGNG0031ピグモン
NGNGご遠慮ください(基本ですよね・・・?)
26で突っ込みが入ったので、とりあえずのお題としては、
お勧めの開発環境について(フリー、パッケージといません)
ちなみに私はVC++です。
理由はウィンドウズに一番なじんでるからでしょうか?
0032デフォルトの名無しさん
NGNGそのレスは本題と関係あるのか?
そういうどうでもいいことを書くのは止めて
もっと具体的に 「自分はこういうアプローチでエミュレータを作ってる」
などを書かないとスレは回転しないな。
0033デフォルトの名無しさん
NGNG通知表に「人の意見を聞かない」とか書かれたことはありませんか?
0034ピグモン
NGNG>もっと具体的に 「自分はこういうアプローチでエミュレータを作ってる」
>などを書かないとスレは回転しないな。
あなたがそれを知りたいのでしたら話はわかりますが・・・・・・
スレはまだ短いので、ログは読んでくださいね。
0035( ゚д゚)ポカーン
NGNG0036デフォルトの名無しさん
NGNG| |
| |
| |
| |
∧_∧ | | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ´Д`)// < 先生! 何時までたっても有益な情報が出ません!!
/ / \___________
/ /| /
__| | .| | __
\  ̄ ̄ ̄ ̄ ̄ \
||\ \
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
.|| ||
0038デフォルトの名無しさん
NGNGあのスレとは違うという発言にもある通り、端端に見下した印象を与えつつも
言ってることはこれだけ。
ブラボー
0039デフォルトの名無しさん
NGNG0040ピグモン
NGNG------------終了-------------------
0042デフォルトの名無しさん
NGNGそれから、そういう書き込みは1度だけにしろ、そういうのを書くのも他人から見たら荒らしと同じ
基本的に荒らしは無視して スレに添った話題をふるべし
0043デフォルトの名無しさん
NGNGお前も荒らしと同じだろ(w
0044デフォルトの名無しさん
NGNG0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG別にエミュだから荒らしてるわけじゃないような…
0047デフォルトの名無しさん
NGNG作ろうと思って挫折したとかさ。
がんばってる人を邪魔するようなことは止めたほうがいいんじゃねーの?
0048デフォルトの名無しさん
NGNG相手の機械語を自分の機械語に翻訳しながら処理させるとかならメンドクサイかもしれんけど
それやると動かんコード多くなるし
単純に読んで分岐するだけじゃない
ゲーム機とかならハードのエミュレートが大変ってのはわかるけどさ
0049デフォルトの名無しさん
NGNG>がんばってる人を邪魔するようなことは止めたほうがいいんじゃねーの?
がんばっている人はこのスレには居ないようだが(藁
0050デフォルトの名無しさん
NGNGつうかさ、わかったからもう消えな?粘着入ってるぞ。
見ててなんつーか哀れだよな。あんた。
0051GC房
NGNGハードウェア的な部分は問題ないのですが、
BIOSの情報があまりありません。
詳しい情報を教えてください。
0052デフォルトの名無しさん
NGNG0053暇人
NGNG>1は何故、重複スレと半ば自覚しつつスレを立てたのか?
今現在まで>1が提示した情報はいっさい中身が無く、既存のスレで話題を展開した後
盛り上がったところで新スレを立てればよかったのではないか?
問2。
そもそも>1はエミュレータ制作に関する内容のある話題を1つでも提供したか?
言っていることはワナビー厨同然、自身の制作環境も「Windowsに慣れてるからVC」としか伝えてない。
それのどこがエミュレータ制作の話題なのか?
問3。
そもそも>1にやる気が見えないのは何故か?
提示しているのは「情報を出せ」、「話題を出して語れ」のみであり、
自身から能動的に話題を振ることがない。
しかもそれを指摘されると「荒らすな」と見当違いな返事をしている。
問4。
>1がコテハン=糞スレの法則を知っていて敢えて釣っていますか?
0054パチモン
NGNG> >1は何故、重複スレと半ば自覚しつつスレを立てたのか?
> そもそも>1はエミュレータ制作に関する内容のある話題を1つでも提供したか?
> そもそも>1にやる気が見えないのは何故か?
> >1がコテハン=糞スレの法則を知っていて敢えて釣っていますか?
あなたがそれを知りたいのでしたら話はわかりますが(w
スレはまだ短いので、ログは読んでくださいね(w
だいぶ下がっているけど…
http://pc.2ch.net/test/read.cgi/tech/1008334719/l50
∧∧ ミ _ ドスッ
( ,,)┌─┴┴─┐
/ つ 糸冬 了. |
〜′ /´ └─┬┬─┘
∪ ∪ ││ _ε3
0055デフォルトの名無しさん
NGNG. |(・∀・)|
. | ̄ ̄ ̄ ジサクジエン共和国
△
△l |
__△|_.田 |△_____
|__|__門_|__|_____|_____
0056デフォルトの名無しさん
NGNGマチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < 有益な情報、まだ?
\_/⊂ ⊂_ ) \_________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| . ピグモン. |/
0057デフォルトの名無しさん
NGNG0058デフォルトの名無しさん
NGNG中にはすばらしい人もいると思うが、その人に出会うためには
自分がゴミにまみれる覚悟もいる。
自分はそのゴミにまみれる(自分が、他人が)苦労を減らそうと
思ったのだが・・・・・・ま、ゴミはゴミと。
多分君らから見たら、俺もゴミなんだろうけどね(w
0059デフォルトの名無しさん
NGNGマチクタビレタ〜
☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < 有益な情報、まだ?
\_/⊂ ⊂_ ) \_________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| . 58 . |/
0060デフォルトの名無しさん
NGNGGCってGameCubeのことかい?
アレってたしかPowerPCだからBIOSじゃなくて
OpenFirmwareになんのかな?わっかんね。
でもBIOSじゃないことは確か。すまんね。
0061ゴミ
NGNGゴミにまみれる覚悟があるならsageでこそこそ書かずにageろや
と思ったけど、
> 自分はそのゴミにまみれる(自分が、他人が)苦労を減らそうと
> 思ったのだが・・・・・・ま、ゴミはゴミと。
なんだそりゃ。
そんなに“ゴミ”を排除して“有益な情報”だけ集めたかったら
2chでスレなんか立てずに自前でサイトでも立ち上げろよ
と思う今日この頃。
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNGまじで、
0064デフォルトの名無しさん
NGNGSSFとか…マシンパワー結構いるけどね。
0065デフォルトの名無しさん
NGNGPCMとFM音源のエミュレートもないのが痛すぎる。
0066デフォルトの名無しさん
NGNGチャレンジャー求む。
0067デフォルトの名無しさん
NGNGサターンBASICは手にはいらねーし 前途多難なんだけど惹かれるんだよね・・蛍タンの声。
音源だけ作ってどうする? って気もするけど(笑)
ふぅ、お腹減った。。
0068デフォルトの名無しさん
NGNG煽ってる奴は厨房。
まともなプログラムが書ける人は一人もいませんでした。おわり
0069デフォルトの名無しさん
NGNG007070 gET!
NGNGさかさまバージョン。チト苦しい
007170 gET!
NGNG!じゃなくてiだった
0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNG>まえから思ってたんだけど、ROMデータをいっかいコンパイルする方式にしたら
>エミュレートによるCPU負荷が押さえられそう。
これは果たして実現可能?
0074デフォルトの名無しさん
NGNG実際負荷として問題になるのは メモリアクセス周りが多いと思われ。
0075デフォルトの名無しさん
NGNGその場合どうやってCPUの速度制御するのかな。やっぱ一命令ごとに
waitかますんだろうか?
0076デフォルトの名無しさん
NGNG今のエミュレータは大半がそうだよ。
PS、N64、インタプリタで動いてるのは少ない。
>>75
jmpとかcallでプログラムカウンタが飛んだり
biosがコールされたりしたら
エミュレータ本体に処理が戻るようにしとくわけ。
んで、戻ってきたらハードのエミュレートして
時間調整してもっかいコンパイル&実行
FPSEのソースが参考になるよ
0077デフォルトの名無しさん
NGNGふーん。なんか素早く走るところともっさり動くところと
2つに分かれそうだな。問題ないのかな。
0078デフォルトの名無しさん
NGNG今時のゲームはたいていタイマーで動いてるんじゃないの?
0079デフォルトの名無しさん
NGNGWWと実機は持ってない、以上。
0080デフォルトの名無しさん
NGNGおれも作りたくって調べてるけど
CPUはx86系だっつーことはわかった(w
Cygneっつーエミュにデバッガがついててステップ実行とかできる。
これとワンダーウィッチを買えばなんとか調べられるんでは?
0081デフォルトの名無しさん
NGNG>>1を皮肉っただけだろ
0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNGCPUクロックを上げろ。
0085デフォルトの名無しさん
NGNGプロファイラ使え。
あ、マジレスしたらまずかった?
0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG0090デフォルトの名無しさん
NGNGV-Blank-Out(30KHz)では大雑把すぎるのかなぁ。
0091デフォルトの名無しさん
NGNGVSYNCの周波数とCPUの周波数から、1周期中に処理できるクロック数を予め計算
しておいて、そのクロック数だけ処理を進めて画面描画。簡単に言うとそんな感じ。
走査線割り込みなんかも同じような感じで、その走査線までの時間からクロック数
を計算して、そこまで処理して割り込み発生させてる。
だから、割り込みをかけずに走査線単位で画面を弄ってるようなゲームは豆だと
うまく再現できないの。
あと実際には、実機ではバスの衝突なんかでクロック通りの性能がでてなかったり
するから、理論値で処理してる豆は実機よりも少し速かったりする。大抵のゲーム
はVSYNC待ちするから影響無いんだけど、一部のゲームは非同期で動くから問題に
なったり。
0092質問太郎
NGNG11MHzのCPUで60Hzだとすると
11,000,000 / 60 = 183333命令
1000msec / 60 = 16.6msec
となるから
183333命令実行したあとに、16.6msec以下の実行時間であった場合
その差分Sleepするっていう処理にすればいいのかな?
あまりハードのこととか詳しくないのですが、どんなものでも1命令1クロックで
計算することには、ちょっと違和感がありますけど。
0093デフォルトの名無しさん
NGNG1命令のクロック数は命令により異なります。
ジャンプ命令の場合はジャンプ先アドレスによりクロックが増えることがあります(6502の場合)。
0094質問太郎
NGNGふーん最低1クロックっていうイメージでよさそうですね。
ゲーム機のエミュレーションっていう観点で見れば、
VSyncで同期していれば言い訳だし...
ところでエミュレーションのプログラミングについて
体系的に書いているサイトでよいところありますか?
0095デフォルトの名無しさん
NGNG何のゲーム機か分かりませんが、えみゅ作るんなら各命令ごとのクロック数はちゃんと調べましょう。
サイトは
http://game.2ch.net/test/read.cgi/retro/1011118456/
ここの最初の方にあります。
あとはp://www.geocities.co.jp/Playtown/2004/
0097質問太郎
NGNGうーん、やっぱりそうなんですねー
CPUのドキュメント読んでいても、「キャリーってなに?」って感じだし。
「立ち上がりで同期する」とか...
そこら辺の勉強から逝って来ます。
0098デフォルトの名無しさん
NGNGhttp://game.2ch.net/test/read.cgi/retro/998378344/273
0099デフォルトの名無しさん
NGNG0100100
NGNG0101デフォルトの名無しさん
NGNG解説ページキボリ
0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNGあれは読めない人は手を出しちゃ駄目なんだよ。
っていうか、なんで32?GUI周りを参考にしたいのか?
0104デフォルトの名無しさん
NGNG010591
NGNGとっくにDAT落ちしてるもんだと思ってた。
0106デフォルトの名無しさん
NGNG例えば画面への表示はどうやっているんですか?
サウンドはどうやってんですか?
もちろんDirectSoundを使ってるのは分かるんですが、
難しすぎ。
0107デフォルトの名無しさん
NGNG難しすぎとか言ってるようじゃ、まだ手を出せるレベルじゃないかと。
DirectDrawやDirectSoundくらいは知ってる?
0108デフォルトの名無しさん
NGNGどうやって画面やスピーカに出力してるのかが分からないーー
0109デフォルトの名無しさん
NGNGZ80でもなんでもいいけど
アセンブラできないとつらいよ。
0110デフォルトの名無しさん
NGNGその部分を知りたいならMAME32は適切ではない。
CPS2MAMEのDOS版あたりがいいかと。
って、今はオフィシャルに統合されちゃってるんだっけ?
MAMEはマルチプラットフォーム向けになってて冗長な部分が多いから、
FinalBurnとかの方がいいかも。
0111デフォルトの名無しさん
NGNGできればWindows用でGUIインターフェースが凄いので、日本語化対応したやつが。
タダだともっといい。
0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNGネタは放置しよう。
0114デフォルトの名無しさん
NGNGつーことでCPUをカリカリ書いたんだけど(ただし命令の実行とレジスタのみ)、
この次にやるべきことは何?
割り込みの制御?
0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNGそれが出来たらZIPファイル対応してね
あとネット通信
0117デフォルトの名無しさん
NGNG例えば、メモリアクセスを
OnGetMem(adr:Integer,var dt:Integer);
みたいなイベントにしておいて
Execute;みたいなメソッドで1ステック実行出来るようにしとけば 皆が弄ってくれると思うよ
0118114
NGNG一応VC++です。
かなりおかしいので、がんがん指摘されたし。
万理尾が動くぐらいまでは逃げないつもり。
0119114
NGNGロムは無理やり先頭から32kぐらいをCPUちゃんのmemにロードして、
cpuのexecをひたすら実行してやる。
画面は知らん。一応DIBを使うつもりで準備はしてある。
あと糞(コメントアウト)がいっぱいついてるから触るときは気をつけて(藁
0120デフォルトの名無しさん
NGNGメンバに関数ポインタかくラスを付けといてハードウエア
とのインターフェース取れるようにした方がいいよ
たとえば IOクラスとか作って IO_ROM IO_RAM IO_VIDEO てな感じで
追加出来るようにしたら少し面白いかもね
0121デフォルトの名無しさん
NGNG0122デフォルトの名無しさん
NGNG取りあえずTGBのソースでも見て考えようや。
0123114
NGNGアドヴァイスありがとう。
インターフェイスを確保するってのはよく分かるけど、
read()write()を仮想にするってのはなぜ?
gameboy本体のクラスに継承するってこと?
>>121
やめたほうが無難かと(^^;
汚いし遅いし、バグてんこもりだし。
やりたいなら止めないけど。
>>122
うむ。少し見てたりする。
GB仕様もわからんままコーディングはまずい?
0124デフォルトの名無しさん
NGNGまずいというかそれで完成したら神!
あなたCPUのオペコードも目を瞑って感で作ったんですか?
0126デフォルトの名無しさん
NGNG0127114
NGNG丸一日がんばろうとひたすら2ch読みまくってたのに(w
マターリやりますんで気長によろしく。
0128デフォルトの名無しさん
NGNG0129114
NGNGスマソ
マップチップすら表示されなくて鬱なもんで気にしないといて。
元のコードが七行スレの砂嵐なもんでWM_PAINTどうのこうのに残骸が残っとるのよ。
それよりもっと根本的なことがおかしいっぽい。
どうでもいいけど、マリオめ!
L019B: LDH A,[IFF44]
CP 94H
JR NZ,L019B
割り込みがないからここで無限ループするじゃねえか!
何で画面描画の94ライン目の描画をまってんだよ!
0130128
NGNG割り込みを先に実装した方がよいし、
各種デバイスのスケジューリングをすべき。
>>129
に関しては、勘違いハケーン。
94Hは16進数なので10進数に直すと148、
GBの画面サイズは144Lineらしいので(さっき調べた)
たぶん、画面の最下段あたりで割り込みが発生して、
それをトリガーにして、画面更新するんじゃないの?とか
想像で書き込んでみたり。
0131114
NGNG>割り込みを先に実装した方がよいし、
>各種デバイスのスケジューリングをすべき。
んじゃ割り込みまわりを先にぱーぺきにしよう。
こんな調子で本当にできるのか(藁
>>>129
>に関しては、勘違いハケーン。
>94Hは16進数なので10進数に直すと148、
>GBの画面サイズは144Lineらしいので(さっき調べた)
>たぶん、画面の最下段あたりで割り込みが発生して、
>それをトリガーにして、画面更新するんじゃないの?とか
>想像で書き込んでみたり。
確かに94は16進数だった。鬱死
それでも垂直同期割り込みは別にあったはず。
GBのマリオはafo。
0132128=130
NGNGなるほど、I/Oがメモリにマッピングされてるんだ、
Z80モドキのクセにステキ。
資料をみるとFF44Hは“現在描いてるY座標”らしいから、
ビデオコントローラが最下段まで描画するのを待ってから、
V-RAMを書き換えているんじゃないでしょうか。
画面描画中にV-RAMを更新するわけにいかないし。
これを使えばラスタースクロールとかできるなぁ。
ところでLCDの更新期間って何秒なんだろ。
・・・とか、114さんの趣味を横取りしちゃなんだから、
これくらいにしときます。
0133114
NGNGいえどんどん横取りしてください(藁
そのほうがこっちの勉強にもなるし。
えっとLCDは70224クロックに1回更新するらしいので、
70224 / 4.194304MHz ≒ 16.7ms
かな?
最近寝不足で頭が回らん。
ウイルスメールもくるし。
はぁ。寝よう。
0134デフォルトの名無しさん
NGNG>GBのマリオはafo。
それくらいでめげちゃイカン!
エミュ作り出すと�dでもないコードがイパーイ出現して楽しくなるよw
0135デフォルトの名無しさん
NGNG>なるほど、I/Oがメモリにマッピングされてるんだ、
>Z80モドキのクセにステキ。
メモリマップドI/OってZ80でも普通に使われるよ。
っていうか、Z80だとI/Oポートが256個しかないから、ちょっと規模が大きく
なるとメモリマップドI/Oにしないと厳しいよ。
UARTとかSCSIだと1チップで4個とか8個とかポートが必要になるから、Z80には
厳しい。
ROMをバンクメモリにするときは、メモリマップドI/Oが普通かも。
ROMに対してwriteアクセスするとバンクが切り替わる感じ。
0136128
NGNG恩師の教えがアーキテクチャを理解しろ!
Z80はI/OマプドだからI/Oにつなげろ!だったので。
オレは68000から入った派だったからメモリマプドの方が好きなんだけど。
I/Oポートの個数は、OUT(C),r を使えば65535個まで
拡張できるからそっちを使ってた。当時は256個でも充分でしたけど。
0137114
NGNGDr.万理尾
http://www.pureweb.jp/~akimasa/up/img/dat006.png
やったぜ!明らかにチップだ
と思ったが、次の瞬間にはきえてしまう。
さらにほかのやつではまったくでない。
この画面だけ見るといけそうに見えるが…
0138114
NGNG少し割り込みもどきをつけた。
http://www.pureweb.jp/~akimasa/up/img/dat007.lzh
キャプチャ(Dr.マリオしかできない)
http://www.pureweb.jp/~akimasa/up/img/dat008.png
なぜかDr.マリオしかできないんですが。
あとはテトリスとマリオランドを使ってますが、Dr.マリオしかレンダリングできません。
しかしこれすら完璧にできてない。
0139114
NGNGオペコードを修正してたらバグが取れたのに、
マリオのタイトルが出なくなった。
カプセルだけ出てバグって終了。
なぜバグありで近いところまでいってバグ無しで遠のくのかなぁ
(バグ取り疲れた)
0140デフォルトの名無しさん
NGNGガンバレ
動くまで大変かも知れんが,動いたら嬉しいぞ。
0141デフォルトの名無しさん
NGNG0142デフォルトの名無しさん
NGNGPPCのbcのオペレーションって意味不明だよな
だれか解説してくれ。おれ今そこでつまってる。
0143114
NGNGhttp://www.pureweb.jp/~akimasa/up/img/dat011.png
レンダラとか割り込みとか見直した結果。
スプライトとかあればいいのかな?
でもやっぱりDr.マリオしかタイトルが出ない。
0144デフォルトの名無しさん
NGNG0145114
NGNG鬱だ。
0146デフォルトの名無しさん
NGNG0147114
NGNG新天地へ移動した結果、疲れています。
Dr.マリオのタイトルなんですが、本当は背景だけレンダリングすれば、
Dr.MARIOとでかでかと出るはずなんで、まだオペコードにバグでもあるのかなと。
オペコード見直すのは手間なので、かなり時間がかかります。ご容赦を。
漏れに分身をください。
0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNG意味和からねぇ。
本体は買いましょう
0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNGダウソ板へ逝ってください。
ってかそんなのスグ見つかります。
人間初心者板にでも逝くのがいいかもしれません
0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNGダウソ板へ逝ってください。
板違いです。
ってかスレと違う内容でアゲないでください
0154デフォルトの名無しさん
NGNG0155デフォルトの名無しさん
NGNGまじかるバナナではありません
0156デフォルトの名無しさん
NGNG0157デフォルトの名無しさん
NGNGあなたはスレ違い板違い基地外です。
ココにあると思います。
ttp://www.google.com/
0158デフォルトの名無しさん
NGNG俺の睡眠時間を返せよ
0159デフォルトの名無しさん
NGNG音楽がタダでダウンできるとかエミュレータでゲームが遊び放題
なんていうのはインターネットを無理矢理普及させようと目論んでいる
政府が流したデマです。
0160デフォルトの名無しさん
NGNGもしそれがネタじゃないならネットやめろ。
0161デフォルトの名無しさん
NGNGそれにお前が何秒耐えた所で、テレビ使って宣伝するような事あるのか?
0162114
NGNGやっぱり周りをつく欄とだめきゃ。
0163114
NGNG何度オペコードを見直したことか。バグはこれでないと思うこと32回。
しかしフラッシュするから、どこかにバグがあるということだろう。
0164デフォルトの名無しさん
NGNG遠回りに思えるかもしれないけど、ちょっとわき道に
入ってテストツール作ってみたら?
0165デフォルトの名無しさん
NGNGsigned ,unsigned は大丈夫か?
0166114
NGNG選択肢
1.あきらめてしまう。
2.作り直す。
3.後釜を見つける。
さあどれ?
0167デフォルトの名無しさん
NGNG暇があったらみといたる
0168114
NGNGスマソ
とりあえず最新版あげときます。バグが3,4個は取れてるはず。
ソースは見るに耐えないかも知れません。
これをどうこうしても何も文句は言えません。
0169デフォルトの名無しさん
NGNGとりあえずDECとかのHフラグがおかしくないか?
あとcpu::resetの E = 0x08; は E = 0xD8;
って書きたかったんじゃないのか?
風呂入ってから本格的にみるよ
0170167
NGNGわりぃ疲れた、もう寝る
0171114
NGNG乙です。
E=0xD8はそのとおりです。
あとHフラグは
ttp://sz.redbit.ne.jp/~q-_-p/gb_lab/index.html
をみたらそんな感じになってたんですが・・・
すいませんどこだか分かりません。
見てたら教えてほしいです。
(そういえば画面描画を戻すの忘れてた)
0172167
NGNGいいよ、114の面倒見てやるよ
ただ漏れは自分で作ったことないから実績は114の方が上だがな
Hフラグ自体はあってるんだが演算子の優先順位は論理演算の&より==の方が上だろ?
if(REG8 & 0x0F == 0)\ を if((REG8 & 0x0F) == 0)\
にするだけでDECのHフラグは直る
変数を使わないように努力したのは評価するんだが時には変数使った方がいいぞ
例えば
case 0xfe: //CP $xx
CP(A,read(PC));
PC++;
break;
の部分とかだな。何がまずいか分かるよな?
分からんかったら宿題だ
0173167
NGNGその前に実行される0xf0 (LD A,($xx))の結果がおかしいみたいだ
ただこれも間違ってないような気はするんだが、正しい結果がでてない
ちなみに今、Drマリオのトレース中
0175114
NGNGぐはっ。こんな初歩ミスを!
あと一時変数は使ってもいい気がしてきました。
むしろreadの呼び出しで遅くなってると思うし。
(それにしてもカキコ時間帯がすげーずれてるな)
0176167
NGNG先に>>129をなんとかしないといかんようだな
どれどれ‥‥‥‥おい、ちょっと待て!
gb::execだがCPU1命令実行するたびにLY増えてんじゃねぇか
1スキャンラインあたり1命令ってどんなマシンだよ
も少しなんとかならねぇか?
>むしろreadの呼び出しで遅くなってると思うし。
正解
0177114
NGNGgb::execの
if(count%(70224 / 154)){
を
if(!(count%(70224 / 154))){
にしたつもりでした(多分)。
確か昔直したはずだったのに。鬱。
この辺はばっさり書き直したほうがいいかも。
0178167
NGNG1スキャンあたりに実行される命令数が多すぎる
ん? 全ての命令が1クロックで実行!?
こんなのZ80じゃねぇよ、めっちゃ高性能やんけ
これから作るつもりだったのか?
まずは命令の実行にかかったクロックを正しく加算するように
0179デフォルトの名無しさん
NGNG0180デフォルトの名無しさん
NGNG0181デフォルトの名無しさん
NGNG0182デフォルトの名無しさん
NGNG0183デフォルトの名無しさん
NGNG0184デフォルトの名無しさん
NGNGとっくの昔に存在する。
なお、VMのサブセット実装する根性が必要。
0185デフォルトの名無しさん
NGNG0186デフォルトの名無しさん
NGNGJavaで作るとか。
■ このスレッドは過去ログ倉庫に格納されています