• Stars
    star
    283
  • Rank 141,330 (Top 3 %)
  • Language Verilog
  • License
    GNU General Publi...
  • Created 11 months ago
  • Updated 8 months ago

Reviews

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

Repository Details

Mega Drive/Genesis core written in Verilog

Nuked-MD-FPGA

nukedmd_logo

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

Cycle accurate Mega Drive emulator. Verilog version of Nuked MD. 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-FPGA 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

See Progress.md

Audio samples

https://drive.google.com/drive/folders/1RtqB4Rn1jMeVNzONG2wVgWdD4ZHzARxy?usp=sharing

References

Credits

  • nukeykt - RE, verilog implementation
  • org(ogamespec) - FC1004 decap, RE, useful tools, etc.
  • andkorzh - RE
  • HardWareMan - YM2612 decap pics, RE

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-OPN2

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

Nuked-SC55

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

Nuked-OPL3

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

Nuked-MD

Cycle accurate Mega Drive emulator
C
130
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

Genesis-Plus-GX

An enhanced port of Genesis Plus - accurate & portable Sega 8/16 bit emulator
C
15
star
18

pcdoom

dos port
C
13
star
19

Nuked-OPN2-FPGA

YM3438 verilog
Verilog
13
star
20

YMF276-LLE

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

Blood-RE

Blood source code reconstruction
C++
12
star
22

VRC7dump

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

raptor

C++
9
star
24

LPC-Sound-Blaster

FPGA Sound Blaster over LPC bus experiments
Verilog
9
star
25

Nuked-OPNB

YM2610 emulator(WIP)
C
9
star
26

YM7101

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

Redneck-Rampage-RE

Redneck Rampage source code reconstruction
C
6
star
28

mcuemu

sc55mkII emulator (wip)
C++
6
star
29

pcstrife

C
5
star
30

YM2602-Logisim

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

nukeykt

3
star
32

YM2610-logisim

YM2610/YM2612 logisim
3
star
33

HMIPlay

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

Z80

Z80 emulator (WIP)
C++
1
star
35

samapedit

Blood MAPEDIT port using JFBuild
C
1
star