NES/FCエミュレーター総合スレ7at SOFTWARE
NES/FCエミュレーター総合スレ7 - 暇つぶし2ch159:名無しさん@お腹いっぱい。
19/04/24 20:18:03.33 q7k07uRI0.net
従来式のシンプルなコードを吐くコーディングと比べると、
予想通りの二度手間だ⇒オペランド内のswitchと、(this->*_opTable[opCode])()すなわちswitchの。
当然この書き方じゃ、1バイトの命令でもこれが呼ばれる。
他、FetchOperand()が呼ばれる前に、
inline展開くさい遅いswitch(if-else化)がばら撒かれてる感じ。
あっ、コアの中でドン引き見つけた。
MemoryManager::Read内
_console->GetCheatManager()->ApplyRamCodes(addr, value);
やっぱネタ作者だな。
宣伝が多いというのはお察しだ。
>>155
全部、高速な従来式に見えるね。
switch一回で、オペコードとオペランドのアドレッシングが解決している。
インラインでもマクロでもない関数を呼ぶなんてバカな真似はしてない。
一見C++風に見えるが記述が名前空間::関数なだけで、static関数なソースのやつがあったと思う。
おそらくコア動作中thisポインタすらレジスタに入ってない。

正直、言い過ぎたかと思ったら、予想よりひどかった。
ソース見なくても起動してすぐにお察しだった。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch