Programming guide: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
No edit summary |
(→Books) |
||
Line 55: | Line 55: | ||
=== Useful reference materials === | === Useful reference materials === | ||
==== Books ==== | ==== Books ==== | ||
* Cady, Fredrick M. (1997). ''Microcontrollers and Microcomputers: Principles of Software and Hardware Engineering''. New York: Oxford University Press. ISBN 0-19-511008-0. | |||
* Eyes, David; Lichty, Ron (1986). ''Programming the 65816 including the 6502, 65C02, and 65802''. New York: Brady Books/Prentice Hall Press (Simon & Schuster, Inc). ISBN 0-89303-789-3. | |||
* Leventhal, Lance A. (1986). ''6502 Assembly Language Programming 2nd Edition''. Osborne/McGraw-Hill. ISBN 0-07-881216-X. | * Leventhal, Lance A. (1986). ''6502 Assembly Language Programming 2nd Edition''. Osborne/McGraw-Hill. ISBN 0-07-881216-X. | ||
* Zaks, Rodnay (1983). ''Programming the 6502 (Fourth Edition)''. Sybex, Inc. ISBN 0-89588-135-7. | * Zaks, Rodnay (1983). ''Programming the 6502 (Fourth Edition)''. Sybex, Inc. ISBN 0-89588-135-7. | ||
* Zaks, Rodnay (1980). ''Programming the 6502 (Third Edition)''. Sybex, Inc. ISBN 0-89588-046-6. | * Zaks, Rodnay (1980). ''Programming the 6502 (Third Edition)''. Sybex, Inc. ISBN 0-89588-046-6. | ||
==== Online ==== | ==== Online ==== | ||
* ''Programming the 65816'' by Western Design Center. [http://www.westerndesigncenter.com/wdc/datasheets/Programmanual.pdf PDF version] | * ''Programming the 65816'' by Western Design Center. [http://www.westerndesigncenter.com/wdc/datasheets/Programmanual.pdf PDF version] |
Revision as of 09:44, 27 December 2010
The programming guide is the complement to the nes reference guide. You will find more in dept documentation about specific topics, tutorials to the most common problem encountered, a list of existing tools that will assist you during you development phase and more. If you're new to nes development, you should give a look to the getting started section first.
General reference
- Getting started (not done yet)
- Waiting for the PPU to power on
- CHR-ROM vs CHR-RAM and how to switch an NROM project from the former to the latter
- Emulation Libraries
- Catch-up technique used by emulators
- Buggy PowerPak mappers
- Music: Audio expansion, tools
- Tools
- Graphic tools
- Battery holder (note: must find proper section for this)
Tutorials (stub)
- CPU basics
- APU basics
- Compression
- Programming Mappers
- Programming Techniques
- Limitations
- Emulation Tutorials
- How to organize data (interleaved, column based, screen based compressed etc)
- Sample RAM map
- PPU scrolling
- How to scroll an infinite map
- How to scroll with less artifact
- How to split the screen for a status bar
- How to do parallax scrolling with the scroll register
- How to make raster effects by Bregalad (external link)
- How to keep state
- Frame based algorithm
- The frame and NMIs by Disch
- NMI thread: Make your status bar rock-solid
- Trick of the trade from well known commercial games
- Music, how to make, to play, sound fx
- Do and don't
Libraries and samples
Useful reference materials
Books
- Cady, Fredrick M. (1997). Microcontrollers and Microcomputers: Principles of Software and Hardware Engineering. New York: Oxford University Press. ISBN 0-19-511008-0.
- Eyes, David; Lichty, Ron (1986). Programming the 65816 including the 6502, 65C02, and 65802. New York: Brady Books/Prentice Hall Press (Simon & Schuster, Inc). ISBN 0-89303-789-3.
- Leventhal, Lance A. (1986). 6502 Assembly Language Programming 2nd Edition. Osborne/McGraw-Hill. ISBN 0-07-881216-X.
- Zaks, Rodnay (1983). Programming the 6502 (Fourth Edition). Sybex, Inc. ISBN 0-89588-135-7.
- Zaks, Rodnay (1980). Programming the 6502 (Third Edition). Sybex, Inc. ISBN 0-89588-046-6.
Online
- Programming the 65816 by Western Design Center. PDF version
Links
- The infamous 6502.txt: allegedly complete info on the 6502 instructions
- Machine Language for Beginners: a 1983 introduction to 6502 assembly language