TODO

  • ファミコンのソフトを携帯に移植する場合に、法的な問題点が無いか調査
  • 特殊な携帯端末への対応について
    • 903i以降で一般的になった高解像度画面
    • NEC端末のニューロポインタ等、特殊な入力デバイス
    • P902i等の音源
    • 液晶を横に回転できる端末
  • 複数の統計情報をマージする方法
  • 色深度を4倍にして移植する方法の検討
  • 赤外線やbluetoothの調査
  • 高精度なsleepの実装(17ms,17ms,16ms,17ms,17ms,16ms...という風にsleepする)
  • key scanの適切なtimingの調査
  • int[] buffer = this.buffer; という具合に、参照回数が多い変数をlocalにcopyする方法は、KVMにて最適化としての効果があるか調査
  • LFSRを使用した高速な乱数生成の実装
  • 乱数を使用して置換するcacheのentryを決定するようにする
  • imageCache、imageCacheIndex、imageCacheCount、bufferCache、bufferCacheIndex、bufferCacheCountの実装
  • sprite priorityの修正
  • BG、sprite間のpriority修正
  • scroll registerの修正
  • h-syncにて、scroll registerの値をbufferingして、1frameごとにrectCopyにてスクロール処理する
  • scroll処理だけ30fpsで、spriteは60fpsで描画、という実装が可能か調査
  • palette変更した場合に、cacheをdirtyにする処理の実装
  • APUの独自実装
  • マナーモードの場合、APU OFFにする
  • JDK1.4.2とJDK5以降で、生成されるbytecodeに差があるか、性能に差があるか調査
  • Jikes等の他のJavaコンパイラの方が、性能が良いbytecodeを出力しないか調査
  • soundは別threadで処理できないか調査
  • auto frame skipの実装
  • speed controlの実装
  • snapshot機能の実装
  • spriteの16pixel modeの実装
  • mapper controllerのemulation実装
  • keylockした場合、flipを閉じた場合に、sleepするようにする(DSみたいに下がり音階の確認音を出したい)
  • background colorの実装
  • PPU registerで未実装の機能が無いか確認
  • sprite zero hitの修正
  • key bindingの変更画面を作る(UI Designを何種類か選べるようにしたい)
  • g.setPixelsとg.drawImageの実機での速度調査
  • server認証方法の調査
  • spriteで上書きされたBGの復元方法について、spriteのrectだけ限定して書き戻すことが可能か調査
  • attribute tableをiterationでaccessするように修正
  • 4charごとに1byteのattributeをfetchするようにする
  • DoJaのOpenGL/ESについて調査