kmc-jp / n64-emu

Low-level Nintendo64 emulator 🌏

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Roadmap

tamaroning opened this issue · comments

とりあえず、mimicontrollertestを実行しながら、必要な部分をミニマルにインクリメンタルに実装する。
実装してない箇所は、TODO:コメント、クリティカルな箇所はabortさせる。
最初はブートプロセス(PIF ROM+ブートコード)なので、以下のリンクで必要な機能を見据えながら進める。

https://www.retroreversing.com/n64bootcode

Boot process

  • 各プロセッサへのリセット信号、レジスタ初期化
  • decode ROM header
  • check ROM NUS-CIC
  • simulate side effects of PIF ROM (PALカートリッジを含む)

CPU

  • simulate CPU cycles
  • non-COP instructions
    • partly done
  • COP0 instructions (主に制御レジスタの操作)
    • partly done
  • COP1 instructions (FPU)
  • interruptions
  • exceptions
  • CPU mode
    • モードによってアドレスのbit幅が変わる

RSP (in RCP)

  • simulate RSP cycles
  • RSP instructions

RDP (in RCP)

TODO

TLB

TODO

Interfaces

  • RI
    • almost done
  • PI
    • almost done
  • AI
    • partly done
  • VI
    • partly done
  • SI
    • partly done

References