• Stars
    star
    130
  • Rank 268,912 (Top 6 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created over 1 year ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Cycle accurate Mega Drive emulator

Nuked MD

nukedmd_logo

by @nukeykt, @ogamespec and @andkorzh, special thanks to @HardWrMan

Cycle accurate Mega Drive core. The goal of this project is to emulate Sega Mega Drive chipset accurately as possible using decapped chips photos.

Mega Drive chipset

Sega Mega Drive chipset consist of 6 integrated circuits + RAM chips:

  • Motorola 68000 (Main CPU)
  • Zilog Z80 (Sound CPU)
  • Yamaha YM7101 (VDP)
  • Yamaha YM2612/YM3438 (FM)
  • Yamaha YM6045 (Arbiter)
  • Yamaha YM6046 (IO)
  • TMSS (later revisions)

There are number of variations of chipsets across mega drive revisions. For example early revisions use NMOS 68k and Z80 chips, while later models switched to CMOS versions. Yamaha later integrated their chips into one big chip named FC1004.

Nuked MD currently targets NMOS 68k, NMOS Z80 and FC1004. No real mega drive used such combination, but Model 1 VA7 would be closest (CMOS 68k, NMOS Z80 and FC1004). Other variants possibly will be emulated in the future.

image

Progress

image

Videos

See Progress.md

References

Credits

  • nukeykt - reverse engineering, C implementation
  • org(ogamespec) - FC1004 decap, RE help, useful tools, etc.
  • andkorzh - RE help
  • HardWareMan - YM2612 decap pics, RE help
  • ctr001 - code contributions

More Repositories

1

NBlood

Reverse-engineered ports of Build games using EDuke32 engine technology and development principles (NBlood/Rednukem/PCExhumed)
C++
567
star
2

Nuked-MD-FPGA

Mega Drive/Genesis core written in Verilog
Verilog
283
star
3

Nuked-OPN2

Cycle-accurate Yamaha YM3438(YM2612) emulator
C
210
star
4

Nuked-SC55

Roland SC-55 series emulation
C++
203
star
5

Nuked-OPL3

Highly accurate Yamaha OPL3 (YMF262, CT1747) emulator
C
144
star
6

Nuked-OPM

Cycle accurate Yamaha YM2151 emulator
C
68
star
7

Nuked-OPLL

Cycle accurate Yamaha YM2413 and VRC7 emulator
C
67
star
8

NRedneck

Redneck Rampage & Duke Nukem 3D port based on EDuke32
C++
44
star
9

Nuked-SMS-FPGA

Sega Master System emulator written in Verilog
Verilog
44
star
10

PCDoom-v2

Doom port for DOS
C
42
star
11

Nuked-SMS

Sega Master System emulator (WIP)
C
29
star
12

Nuked-PSG

Yamaha YM7101 PSG emulator
C
26
star
13

YM2608-LLE

very low-level YM2608B/YM2610/YM2612 emulator
C
23
star
14

WinOPL3Driver

C++
23
star
15

YMF262-LLE

very low-level YMF262 (OPL3) emulator
C
19
star
16

YM3812-LLE

very low-level YM3812(OPL2) emulator
C
15
star
17

pcdoom

dos port
C
13
star
18

Nuked-OPN2-FPGA

YM3438 verilog
Verilog
13
star
19

YMF276-LLE

very low-level YMF276/YM3438 (OPN2) emulator
C
13
star
20

Blood-RE

Blood source code reconstruction
C++
12
star
21

VRC7dump

Konami/Yamaha VRC7 internal patch ROM dump
C++
10
star
22

raptor

C++
9
star
23

LPC-Sound-Blaster

FPGA Sound Blaster over LPC bus experiments
Verilog
9
star
24

Nuked-OPNB

YM2610 emulator(WIP)
C
9
star
25

YM7101

YM7101 VDP (Mega Drive) research
C++
8
star
26

Redneck-Rampage-RE

Redneck Rampage source code reconstruction
C
6
star
27

mcuemu

sc55mkII emulator (wip)
C++
6
star
28

pcstrife

C
5
star
29

YM2602-Logisim

Yamaha YM2602B (SMS VDP) in logisim-evo (WIP)
4
star
30

nukeykt

3
star
31

YM2610-logisim

YM2610/YM2612 logisim
3
star
32

HMIPlay

HMI music playback code reverse-engineering for ETekWar/EWitchaven
C
1
star
33

Z80

Z80 emulator (WIP)
C++
1
star
34

samapedit

Blood MAPEDIT port using JFBuild
C
1
star