• Print

higan 109


higan is a multi-system emulator that began development on October 14th, 2004. The purpose of higan is to serve as hardware documentation in source code form: it is meant to be as accurate and complete as possible, with code that is easy to read and understand.


higan currently emulates the following systems:

  • Famicom + Famicom Disk System
  • Super Famicom + Super Game Boy
  • Game Boy + Game Boy Color
  • Game Boy Advance + Game Boy Player
  • SG-1000 + SC-3000
  • Master System + Game Gear
  • Mega Drive + Mega CD
  • PC Engine + SuperGrafx
  • MSX + MSX2
  • ColecoVision
  • Neo Geo Pocket + Neo Geo Pocket Color
  • WonderSwan + WonderSwan Color + SwanCrystal + Pocket Challenge V2


I've posted new versions of byuu and higan today.



  • Famicom: emulated the X24C01 EEPROM for Bandai-FGC boards (no X24C02 support yet)
  • Mega CD: CDC PCM DMA can only write to current bank [EkeEke]
  • Mega CD: CDC DMA address setting now clears d0-d2 for proper transfer alignment [EkeEke]
  • Mega CD: improve power-cycle handling (not perfect; best to restart the emulator between each Mega CD game still ...)
  • PC Engine: trigger VDC coincidence IRQs at start of scanline (fixes Bomberman '94, Air Zonk start screen rendering issues)
  • PC Engine: improved RCR interrupt emulation (fixes Air Zonk in-game)
  • PC Engine: fix VDC DCR writes (fixes Gaia no Monshou, Magical Chase, etc)
  • PC Engine: reduced VDC access delays (fixes Wonder Momo, but may not be hardware accurate)
  • PC Engine: improved instruction timing
  • PC Engine: added Avenue Pad 6 emulation (higan only for now)
  • WonderSwan: window emulation improvements
  • byuu: BIOS firmware settings window improvements
  • byuu: can now load firmware from inside ZIP archives
  • byuu: added trace logging tool
  • byuu: added manifest viewer tool
  • byuu: add path overrides for saves, BPS patches, and DSP firmware files
  • higan: fixed a serious issue with the "Create New System" option from the launch screen
  • nall: fixed a subtle yet important issue with Natural/Integer::bit() that allowed out-of-range bits to be set






blog comments powered by Disqus