Version User Scope of changes
Aug 6 2008, 12:29 PM EDT (current) anujIDDS 1 word added, 1 word deleted
Aug 6 2008, 12:22 PM EDT anujIDDS 377 words added

Changes

Key:  Additions   Deletions
Software Development Tools for Nintendo

General Resources:
-excellent general resource for developing 8-bit games for the NES/FAMICOM systems. Contains many useful guides and links to development tools
-Course website for class on NES programming at Carnegie Mellon University. The course slides and notes are especially helpful for beginners. Also has all guides for nbasic (which was written by Bob Rost)

Programming
-The assembly language for the 6502 is the most reliable language to use to develop NES games. The FAMICOM system is finicky and requires precise commands given by the low-level language. This however, is the most difficult environment to program in.
-The nbasic language written by Bob Rost for his course is an easy development environment to use with many useful features. It is a better option for people with programming experience that is not assembly.The higher level language may not always translate to the hardware perfectly but can be used to develop many of the features for a game quickly.

Graphics
-most versatile and easy to use editor, as well as one of the most powerful
-has a variety of useful graphical tools which are used widely in development
- Converts string of characters to ASCII values

Music/Sound
-easy to use and powerful music programmer. Has features such as timbre and volume envelopes and other macros as well as easy to use note transcription.
-Sound driver and compiler for the MML language
-Emulators
-most robust emulator available, emulates the hardware restrictions most closely.


Miscellaneous
  • HEX address map for screen in JNES emulator
JNES screen address map

    II. Hardware Development Tools:

    1. Definitions:

    a. ROM (Read Only Memory)

    A generic term used to describe the program file, or the physical chip the program file is stored on. The ROM chips in game cartridges are usually maskROMs, ROMs, the programming for which was stored as a result of the manufacturing process. Mask ROMs cannot be erased or reprogrammed.

    b. PROM (Programmable Read Only Memory)

    A ROM chip that can be programmed to hold data. PROMs are available in many different sizes and configurations.

    c. EPROM (Erasable Programmable Read Only Memory)

    A ROM chip that can be erased with UV light and reprogrammed many times. An EPROM will have a clear window in the center, usually covered with a sticker or label to protect from accidental erasure.

    d. EEPROM (Electronically Erasable, Programmable Read Only Memory)

    A ROM chip that can be erased and programmed electronically. An EEPROM might store high-score data or other data persistent between operational sessions.

    e. PCB (Printed Circuit Board)

    The physical circuit board that chips and electronic components are attached to.

    f. Package

    Describes the size and arrangement of a ROM or other computer chip. The most common package for older chips is dual in-line package (DIP), a large rectangular shape with 2 rows of pins.

    g. Pinout

    Term that describes the configuration and functions of the connecting pins on a chip, cartridge, etc.

    h. Mappers

    Mappers are hardware in cartridges in addition to the ROM/RAMs which enhance the NES' capabilities. By default, the NES only supports games with a maximum of 32K of PRG and 8K of CHR ROM/RAM, 2K of WRAM and 2K of VRAM. However, the NES is a very extendable system, and through mapper hardware, bankswitching, graphical and audio enhancements, and other extensions can be performed. Mappers allow for a virtually unlimited amount of PRG and CHR memory space, increased background tiles, increased background tile attributes, battery backed save games, and so on
    (more information).

    2. Nintendo Entertainment System (Nes)
    a. Technical specifications
    b. List of Nes acessories

    3. Family Computer (Famicom)
    a. Technical specifications
    b. List of Famicom acessories

    4. Family Disk System
    a. Technical specifications

    5. Development
    a. MP3 Sound to NES games
    b. How does a Nes cartridge work (Family MMC)?

    6. TV-Computer Manufacturers:
    a. Mitashi