Skip to content

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

DMG-J

A Game Boy emulator written in Java. Supports loading ROMs, executing CPU instructions, handling memory management, GPU scanline rendering, sprite rendering (broken at the moment), and (partially) interactive debugging.

Features

Partial 8-bit Z80 CPU emulation (Z80.java)

Instruction decoding (CBOpcodeInfo.java, OpcodeInfo.java)

ROM loading and memory mapping (ROMLoader.java, MMU.java)

GPU with scanline and sprite rendering (sprite rendering currently broken) (GPU.java, Sprite.java)

Joypad input handling (Broken) (Joypad.java)

Debugger with UI (DebuggerUI.java, DebuggerController.java)

Getting Started

Requirements

  • Java 8 or newer
  • A valid Game Boy ROM file (.gb)
  • NOTE Only supports MBC1

In Progress

  • Load games without use of BIOS
  • Input Handling
  • Implement all opcodes
  • Sprite Rendering (Broken)
  • Interrupt Handling (Broken)

TODO

  • Memory Viewer/Debugger (Crude)
  • Functional UI
  • Audio emulation
  • Save states
  • BIOS support
  • Link cable emulation

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages