2
Preface
Abstract
The Nintendo Entertainment System (NES) was the world’s most widely used videogames
console during the 1980s. From its initial release in 1983 until it was discontinued in 1995 the
console brought gaming into more homes than ever before and paved the way for the
videogame industry as it stands today.
Although technology has improved dramatically since the NES, many excellent games were
only released on that format and so are unplayable on more modern systems. However
these games have been able to survive and continue to be played thanks to emulation, which
simulates the workings of one system in order to allow software created for it to be used on a
modern system.
This document describes both the hardware in the NES and some of the devices used with it.
It also briefly discusses emulation and issues relating to this. Much of the contents of this
document appeared earlier in [1].
The document makes use of the hexadecimal and binary numbering systems. The reader is
assumed to have some knowledge of these numbering systems but a brief explanation of
some issues is presented in Appendix A.
Acknowledgements
The information contained within this document is based on the work of the many others
involved in NES emulation. I would like to acknowledge the authors of all the documents
listed in the References section but particularly:
• Andrew John Jacobs for his invaluable information on the 6502 processor [2], [3] and [4].
• Chris Covell for ‘NES Technical / Emulation / Development FAQ’ [5].
• Firebug for ‘Comprehensive NES Mapper Document’ [6].
• Jeremy Chadwick for ‘Nintendo Entertainment System Documentation’ [7].
• Loopy for ‘The Skinny on NES Scrolling’ [8].
• Marat Fayzullin for ‘Nintendo Entertainment System Architecture’ [9].
• Everybody involved with nesdev.parodius.com.