Table of contents
|Chapter 01 : Warming up||In this chapter, we get to know Mega Drive’s beating heart – the 68K. We write our first miniature programs in 68K assembly, convert those to a ROM using a custom tool and run them in an emulator.|
|Chapter 02 : The Blue Screen of Birth||In this chapter, we build the shortest imaginable program that actually does something on the Mega Drive: change the background color. We achieve that by writing very specific stuff to very specific memory locations.|
|Chapter 03 : Taking out the trash||This chapter walks us through the ugly business of initializing hardware.
We manage however to ameliorate the ugliness with some preparatory work. We find a decent assembler that allows us to include files, and we write subroutines and macros that automate stuff for us and make the code more structured and presentable.
|Chapter 04: Room for one texture||This time we are going to display some graphics!
We will learn how the VRAM is organized and display a single image loaded from a BMP file. After that we’ll take care of the ROM header which we’ve been postponing for too long. Finally, we’re going to test our code on some more emulators.
|Chapter 05: Scrolling||In this chapter we’re going to create our main loop, in an update-render-repeat fashion, and we handle the timing-related issues. After that we are left with empty update and render routines, which we fill with an infinite scroller demo.|
|Chapter 06: RIVERS OF BLOOD||This is a first taste of what systems programming looks like.
Without an operating system to rely on, we create a static memory allocator and then we go on and implement our first algorithm which generates random numbers in 68K assembly.
Credits go to the following people, in no particular order: