« TJS2 ドキュメントジェネレータ その4 | メイン | BOM 付き UTF-8 に対応 »

2014年07月29日

1時間コーディング/吉里吉里Z 開発:: 吉里吉里Z 64bit版試作

    

今日のお題は吉里吉里Z 64bit版。
2時間くらいかかって、ビルド通ってある程度動くところまで。

tvpwin64.zip

とりあえず制限として
・JPEG の読み込みは無効化しています。
・Phase Vocoder は動きません。
・WAVE で 16bit float 変換がある部分は動きません。
・グラフィックで SIMD 系が使用されないので、その辺りの合成は遅いです。
・FPU の精度設定か何か周りが何もしてません。
・例外発生時のCPUダンプ周りが怪しいかもしれません。

追加機能として
・CPU の機能は、AVX2 まで取得できるようになっているので、ログにいろいろ出ます。

後、Variant 型からポインタ変換している辺りや Win32 API 周りで問題があるかもしれません。


JPEG は SIMD libjpeg が 32bit なので、まだ対応してない。
libjpeg-turbo は、64bit 対応しているはずなので、そちらに差し替えれば対応できる。

Phase Vocoder や Wave は、アセンブリからイントリンシックに書き換えないとダメ。
グラフィック周りも、アセンブリからイントリンシックに書き換えるか、アセンブリを 64bit 対応させないとダメ。呼び出し規約周り合わせればいけるかも。

FPU は、_control87 で落ちるので無効化しといた。
64bit だと何か違うんだと思うけど、調べてない。



投稿者 Takenori : 2014年07月29日 02:15




comments powered by Disqus
Total : Today : Yesterday : なかのひと