nes-template

所属分类:汇编语言
开发工具:Assembly
文件大小:0KB
下载次数:0
上传日期:2017-09-03 03:50:42
上 传 者sh-1993
说明:  一个任天堂娱乐系统项目的模板,使用ca65汇编程序,目标是UNROM(CHR-RAM+PRG ba...
(A template for a Nintendo Entertainment System project, using the ca65 assembler, targeting a UNROM (CHR-RAM + PRG bankswitching) board. Includes toolchain, and has build infrastructure for Windows and Linux.)

文件列表:
Makefile (723, 2017-09-01)
build.bat (118, 2017-09-01)
ldscripts/ (0, 2017-09-01)
ldscripts/nes.ld (3461, 2017-09-01)
resources/ (0, 2017-09-01)
resources/chr.chr (8192, 2017-09-01)
run.bat (32, 2017-09-01)
src/ (0, 2017-09-01)
src/cool_macros.asm (6553, 2017-09-01)
src/header.asm (420, 2017-09-01)
src/main.asm (5414, 2017-09-01)
src/nes.asm (1141, 2017-09-01)
src/utils.asm (1018, 2017-09-01)
tools/ (0, 2017-09-01)
tools/cc65/ (0, 2017-09-01)
tools/cc65/ar65 (40096, 2017-09-01)
tools/cc65/ar65.exe (131271, 2017-09-01)
tools/cc65/ca65 (208392, 2017-09-01)
tools/cc65/ca65.exe (268149, 2017-09-01)
tools/cc65/cc65 (379784, 2017-09-01)
tools/cc65/cc65.exe (454460, 2017-09-01)
tools/cc65/chrcvt65 (30024, 2017-09-01)
tools/cc65/chrcvt65.exe (115950, 2017-09-01)
tools/cc65/cl65 (53320, 2017-09-01)
tools/cc65/cl65.exe (137051, 2017-09-01)
tools/cc65/co65 (40848, 2017-09-01)
tools/cc65/co65.exe (126290, 2017-09-01)
tools/cc65/da65 (101200, 2017-09-01)
tools/cc65/da65.exe (178176, 2017-09-01)
tools/cc65/grc65 (39072, 2017-09-01)
tools/cc65/grc65.exe (127935, 2017-09-01)
tools/cc65/ld65 (137784, 2017-09-01)
tools/cc65/ld65.exe (217513, 2017-09-01)
tools/cc65/od65 (42088, 2017-09-01)
tools/cc65/od65.exe (128685, 2017-09-01)
tools/cc65/sim65 (66768, 2017-09-01)
tools/cc65/sim65.exe (146071, 2017-09-01)
tools/cc65/sp65 (56656, 2017-09-01)
... ...

NES Project Template ==================== What's the deal? ---------------- This is a Nintendo Entertainment System project template. A short demonstration file is included that simply displays "HELLO NES!" on screen. The demo is strongly commented so as to assist newcomers. Also included is a collection of useful macros, which are also commented. If an aspiring programmer wishes to try out a new architecture or language, there are often simple toolchains that may be installed and used, with ample "getting started" materials. At the very least, providing a simple "Hello World" program is an encouraging start for a soon-to-be developer taking the first step. I have put this template together so I can point people towards it as a starting place for making something for the NES. How do I use it? ---------------- First, clone this repository. + On Windows, just run build.bat and run.bat (preferably from the Command Prompt). Build.bat will assemble the .nes file using the included ca65 assembler (in tools/cc65), while run.bat will invoke the included FCEUX emulator (in tools/fceuxw). + On Linux, fceux should be installed with your package manager, alongside the GNU Make utility. After that, you may build the project by just typing `make` in the terminal. A `run` target is specified, which will invoke FCEUX. A `debug` target is also specified, which will run the included Windows FCEUX, as the Linux SDL port does not include the debugging features. + On Mac, the instructions are the same as on Linux, except that the included ca65 binary is an ELF binary, not the Mach-O binary required. You will have to build ca65 yourself (from the cc65 project). Choosing an emulator is an exercise for the user. What's in the box? ------------------ The project comes with: + Demo source code + Sample graphics data for the demo + Linker configuration for a UxROM project (we have segments!) + Comments on what does what + Makefile and build/run scripts (for Linux and Windows respectively) + ca65 toolchain binaries (to simplify Windows use for new users) Technical stuff --------------- This project targets the UxROM family of cartridges for the NES. This board uses CHR-RAM to store graphical tile data, as opposed to a fixed ROM chip. This allwos for flexibility in storing graphics data, and may be a more relatable schema for developers used to other systems that work this way (like Genesis, SNES, etc). The UxROM series also supports up to 16 banks of PRG data, which allows for programs up to 256KiB in size (including data). For many NES projects, this is more than ample room. The included demo program shows the following: + Initializing the NES + Basic VBlank timing + UxROM bankswitching + Writing data to CHR-RAM + Writing a palette to the PPU + Writing a nametable to the PPU + When to disable the PPU + Very basic use of macros

近期下载者

相关文件


收藏者