■■この一週間。暇をみつけては「picodriveA12」せっせと弄ってた。で、UPしたからDLしてね。
一週間前は、「A11」から、色変えて、AUTOFIXウザイから取っただけのジョータイだったから、ちとね。
で、速くなった。どれくらい?かはヨクワカラン。が、結構ハヤクなった。本当にこれ「picodrive?」ってクライ。
で、「AutoFPS」が標準になった。だけどこの「AutoFPS」まだバグっぽい。まあいいや。シロートだし。
■「ぷよぷよ2」がちゃんと動くよーになった。あと「不思議ちゃん2」も対応した。
で、「不思議ちゃん2」は、結局過去にこのブログで書いたとこ弄ったら動くよーになった。えっと、この記事。
「2006-03-08 20:59:30 #3 不思議ちゃん2の謎(Gens編)」
つまり、「vdp_status」を「Gens」の真似しただけ。
で、「ぷよぷよ2」これは224ラスターの処理を前半、後半に分割した。(ちなみに(メガドラでは無いが)PALの場合は240ラスター目)
えっとCRTCの実装だね。
ゲンジョーの「SEGADRIVE A30」もそうなってるんだけど、
メガドラのCRTCの「実装」は、
☆0ラスターから223ラスター。(表示画面)
☆224ラスター。(特殊タイミング)
☆225ラスターから262ラスター。(非表示画面)
の3っつに分割してある。(それが一番効率が良いから。)
で、普通のラスターは、
m68(455クロック)実行。
z80(228クロック)実行。
で、いいんだけど、224ラスターは特殊で、間に「分割位置」がある。
「分割位置」の詳細は(厳密には)マダ良く判らないので、今回の「picodriveA12」では、
「仮に」「Z80時間で128クロック」に調整した。そしたら「ぷよぷよ2」動くよーになった。つまり、224ラスターは
m68(128+128クロック)実行。
z80(128クロック)実行。
「分割位置」
m68(455-128-128クロック)実行。
z80(228-128クロック)実行。
って事。「SEGADRIVEA30」では...、ううういまソース見たらちょっと変な風になってる。
ちなみに128クロックってのは「Gens」の場合。で、「Gens」と「SEGADRIVEやpicodrive」クロックの考えが、
ちと違う。だから、「Gensを信じるならば補正しないと辻褄が合わない」。だが、ワタシは「Gens(完全には)信じてない」。
ちう訳。
(2006-06/03、08:15)
(あまりに説明不足だから補足:Gensは世界一の完成度のメガドラエミュ。だけど100%あってる訳ではない。
ソース公開されてるし(最新版は214になった)良く読むと「マダワカンナイ」って所もあるよって話。
ちなみにGensのソース。C言語の部分は面白い部分が少ない、オモシロイ所はアセンブラの部分。)
■■そうそうZ80も乗せ足した。
元のZ80が「MAMEのZ80」だったから、「MAME106s」から「最新版」持って来た。んで、それを単に入れ替えるんじゃなくってさ。
「古いの」と「新しいの」見比べて、それに「SZ作成で学んだ知識」もあるし、「お互いにカスタマイズ」した。
で、ヨクワカンナイけど「元のよりは速くなった」ちうかこれは「あたりまえ」で、用は「要らんとこ取ったから」。
あとは「SZで学んだ知識」を元にゴニョゴニョ。実は、大した事はしてない。
今度このZ80「SEGADRIVE」にのせよー。そしたらどおなるかな?
(2006-06/03、08:30)
■■カンケーないけど、ここに
http://www.smspower.org/maxim/howtoprogram/
SMSの自作ROMの作り方。詳しく乗ってる。いやメガドラとは全くカンケーナイんだが、でもオモシロソーではある。
SMSの自作ROMは一度も作った事ないし。どうなんでしょ?(SMS≡セガマスターシステム≡セガマークⅢ)
(註:SMSってのは要するに「セガ版ファミコン」。つまりゲームは所詮ファミコンレベル。だが「一部のゲーム」はタノシイ)
(2006-06/04、11:30)