忍者ブログ
ホムペもみてね。 かにかにクラブ http://kani.no.coocan.jp/
上段メニュー開閉(JAVAスクリプト有効時のみ)
カレンダー
06 2017/07 08
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
最新記事
最新コメント
タイトル横の画像は管理人から返信ありマークです
無題  [10/29 AWJ]
無題  [10/29 AWJ]
無題  [10/28 AWJ]
無題  [10/28 AWJ]
無題  [10/27 AWJ]
無題  [10/25 yasu]
無題  [07/15 まい''ん]
無題  [04/17 まい'ん]
無題  [03/13 km]
無題  [03/13 km]
アーカイブ
[238] [237] [236] [235] [234] [233] [232] [231] [230] [229] [228]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

一個だけタイトーが混ざってるけどな。

http://kani.blog.shinobi.jp/Entry/234/
(ソースはこちらの11月2日の記事で更新しました)

改造したファイル
src\mame\video\baraduke.c
src\mame\video\digdug.c
src\mame\video\galaga.c
src\mame\video\gaplus.c
src\mame\video\mappy.c
src\mame\video\pacland.c
src\mame\video\retofinv.c
src\mame\video\skykid.c
src\mame\video\toypop.c

0.143u7 の toypop.c で改造したのとそっくりな構造をしたスプライト描画ルーチンを同じように改造した。

0.143u7の説明で書いたこと
--------ここから
描画ルーチン内のforループのカウンタのメモリ確保を効率化。
「C++」コンパイラになってからできるようになった
for (int i=0; i<max; i++)
という書き方を利用する。

ブーリアン型(0か1にしかならない)としてしか使っていない変数 sizex,sizey,flipx,flipy を使って
(sizex * flipx)
(sizey * flipy)
という掛け算をしている箇所を、ビット積算に変更した。
計算結果は同一。
一般的に機械語レベルでの掛け算割り算はビット演算に比べて遅い。
--------ここまで
(ビット積算・ビット演算の部分は、間違えて論理積算・論理演算て書いてた)

mappy.c の中の phozon もそっくりだけど、
それは sizex,sizey が 0,1,2,3 の値になるので
真似して同じ改造をしてはいけません。

●●●●●●●●●●●●●●●●●●●●
動作確認したところ、ほとんどのゲームの反転表示がおかしくなっていました。
でも
baraduke, pacland, skykid
は大丈夫そうに見えましたが、少ししか触ってないので完全に大丈夫かはわかりません。

自分の改造が失敗したのかと思ってあせったけど、どうやら以前からあったバグみたい。
toypop は 0.125までは正常 0.126からおかしい
mappy は 0.113は正常 途中はまだ調べてない 0.124はおかしい

そのうちなんとかしたいね。

http://kani.blog.shinobi.jp/Entry/234/
(こちらの11月2日の記事でトイポップとリブルラブルだけ修正しました)
PR
この記事へのコメント
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
この記事へのトラックバック:
リンク
最新トラックバック
RSS
QRコード
プロフィール
HN:
かに凹・_・凹かに
下段メニュー開閉(JAVAスクリプト有効時のみ)
忍者ブログ [PR]