loading...
All Genesis articles | Back to top

SEGA Genesis Development

Contents:

SEGA Genesis

The SEGA Genesis (US) / Mega Drive (everywhere else) was a 1988 game console, known for great arcade ports, FM sound, and impressive 2D graphics. It had a Motorola 68000 CPU, 64 KB main RAM, and 64 KB Video RAM. One of the most well-known games for the system is Sonic the Hedgehog, developed by SEGA and released in 1991. This page contains a series of articles about this hardware, including how to program for it, starting from the very basics.

Some of these articles have accompanying example code, available on GitHub.

Development References

MC68000/Genesis References:

Tutorials:

Tools:

Emulators:

Hardware:

In-depth Articles

📗 Article: SEGA Genesis: Building a ROM

Genesis hardware

Getting started with SEGA Genesis development, and building a ROM that will run on an emulator and on a real Genesis.

Originally posted on 2017-06-11.

▶ Read the full article...

📗 Article: SEGA Genesis: Motorola 68000

MC68000 Manual

Cheat sheet of MC68000 instructions and addressing modes.

Originally posted on 2015-11-11.

▶ Read the full article...

📗 Article: SEGA Genesis: Debugging

CRASH!

Debugging your SEGA Genesis ROMs, including a new way of adding symbols in the MAME debugger using VASM.

Originally posted on 2022-07-29.

▶ Read the full article...

📗 Article: SEGA Genesis: Characters and Playfields

Zombies Ate My Neighbors

A description of the basic building blocks of Genesis graphics, and how they are put together to form screen images. 8x8 16-color tiles are mapped to form playfields. A couple of games are analyzed, including some more advanced techniques, usable for rendering polygons.

Originally posted on 2017-08-06.

▶ Read the full article...

📗 Article: SEGA Genesis: Video Display Processor

Contra: Hard Corps

A SEGA Genesis graphics tutorial, that explains how to access the 'Video Display Processor' (VDP) graphics processor.

Originally posted on 2017-08-01.

▶ Read the full article...

📗 Article: SEGA Genesis: Printing Text

Hello World

Building on the previous entry, it is explained how the VDP can be used to output text to the screen. This includes creating a font, loading it to graphics memory, writing character indices to playfields, and wrapping it into a useful subroutine.

Originally posted on 2017-09-10.

▶ Read the full article...

📗 Article: SEGA Genesis: Scrolling

Thunder Force IV

The different scroll modes of the Genesis are covered, as well as code for simple full screen smooth scrolling.

Originally posted on 2017-07-27.

▶ Read the full article...

📗 Article: SEGA Genesis: Code Structure

Menu

A few examples of assembly code structure is explored, including variables, arrays and structures, function calling conventions, and how to implement the State Pattern.

Originally posted on 2018-07-16.

▶ Read the full article...

📗 Article: SEGA Genesis: Initialization

Menu

A detailed look at a complete initialization.

Originally posted on 2018-07-01.

▶ Read the full article...

📗 Article: SEGA Genesis: Framebuffer Rendering

Menu

Is framebuffer rendering possible on the Genesis?

Originally posted on 2022-07-31.

▶ Read the full article...

📗 Article: SEGA Genesis: Mandelbrot

Menu

How to render the Mandelbrot set fractal on the Genesis.

Originally posted on 2022-07-29.

▶ Read the full article...