nesgo

module
v0.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2022 License: Apache-2.0

README

nesgo - Golang based tooling for the NES

Build status go.dev reference Go Report Card codecov

nesgo offers tooling for the Nintendo Entertainment System (NES), written in Golang.

Available tools

Tool Description
nesgo Golang to NES compiler
nesgodisasm Disassembler for NES ROMs
nesgoemu Emulator for NES ROMs

check the README of each tool for a more detailed description and instructions on how to install and use them.

Project layout

├─ cmd              tools main directories
├─ docs             documentation
├─ example/         NES Program examples in Golang
├─ internal/        internal compiler code
├─ pkg/             libraries used by different packages and tools
├─ pkg/neslib       helper useful for writing NES programs in Golang

Directories

Path Synopsis
cmd
examples
internal
assert
Package assert contains test assertion helpers.
Package assert contains test assertion helpers.
ast
Package ast implements utility functions for generating abstract syntax trees from Go BNF.
Package ast implements utility functions for generating abstract syntax trees from Go BNF.
ast/tests
Package tests contains AST tests.
Package tests contains AST tests.
buildinfo
Package buildinfo formats build information that is embedded into the binaries.
Package buildinfo formats build information that is embedded into the binaries.
compiler
Package compiler provides functionality for parsing Golang code.
Package compiler provides functionality for parsing Golang code.
pkg
addressing
Package addressing provides addressing helpers.
Package addressing provides addressing helpers.
apu
Package apu provides APU (Audio Processing Unit) functionality.
Package apu provides APU (Audio Processing Unit) functionality.
cartridge
Package cartridge provides .nes ROM loading and saving.
Package cartridge provides .nes ROM loading and saving.
controller
Package controller provides hardware controller functionality.
Package controller provides hardware controller functionality.
cpu
Package cpu provides CPU (Central Processing Unit) functionality.
Package cpu provides CPU (Central Processing Unit) functionality.
disasm
Package disasm provides an NES program disassembler.
Package disasm provides an NES program disassembler.
disasm/ca65
Package ca65 provides helpers to create ca65 assembler compatible asm output.
Package ca65 provides helpers to create ca65 assembler compatible asm output.
disasm/disasmoptions
Package disasmoptions implements disassembler options that are passed down to the actual assembly writer.
Package disasmoptions implements disassembler options that are passed down to the actual assembly writer.
disasm/param
Package param contains the parameter to string conversion interface for disassembling.
Package param contains the parameter to string conversion interface for disassembling.
disasm/program
Package program represents an NES program.
Package program represents an NES program.
gui
Package gui implements multiple emulator GUIs.
Package gui implements multiple emulator GUIs.
mapper
Package mapper provides hardware mapper support.
Package mapper provides hardware mapper support.
memory
Package memory provides Memory functionality.
Package memory provides Memory functionality.
nes
Package nes provides helper functions for writing NES programs in Golang.
Package nes provides helper functions for writing NES programs in Golang.
neslib
Package neslib provides helper functions for writing NES programs in Golang.
Package neslib provides helper functions for writing NES programs in Golang.
ppu
Package ppu provides PPU (Picture Processing Unit) functionality.
Package ppu provides PPU (Picture Processing Unit) functionality.
system
Package system provides an initializer for the NES system.
Package system provides an initializer for the NES system.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL