nesgo module - github.com/retroenv/nesgo - Go Packages (original) (raw)
v0.10.0 Published: Jun 26, 2022 License: Apache-2.0
README¶
nesgo - Golang based tooling for the NES
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 | |
| nesgo command | |
| nesgodisasm command | |
| nesgoemu command | |
| examples | |
| blue command | |
| debugprint command | |
| 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. |
| gocc/errors | |
| gocc/lexer | |
| gocc/parser | |
| gocc/token | |
| gocc/util | |
| 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. |