Skip to content
/ BES Public

BES (Beef Entertainment System) is a NES emulator made in BeefLang. It was previously just a 6502 emulator, but it's being worked towards a full NES emulator

License

Notifications You must be signed in to change notification settings

migouche/BES

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BES

An attempt to code a NES emulator in BeefLang. Making each component of the NES independently.

Components

1. CPU (Central Processing Unit)

status 6502-based CPU with no decimal mode (still programmed in to pass tests but disabled)

2. Memory Mapper

status Memory mapper to handle memory mapping for different cartridges. Just implemented a basic memory mapper interface and created a 64kb memory array that implements it.

3. PPU (Picture Processing Unit)

status NES' PPU, responsible for rendering graphics. Just started.

4. APU (Audio Processing Unit)

status NES' APU, responsible for generating audio.

5. Input Handling

status I guess this goes with the memory mapper. Will work on it

6. Cartridge Handling

status Cartridge handling to load NES ROMs. Also think it's linked to the memory mapper.

7. Debugging Tools

status Debugging tools to help with development.

Progress Overview

Component Status Notes
CPU Finished Independently tested with functional tests
Memory Mapper Work in Progress (WIP) Basic memory mapping implemented
PPU Work In Progress (WIP) Just started
APU TODO
Input Handling TODO
Cartridge Handling TODO
Debugging Tools TODO

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

BES (Beef Entertainment System) is a NES emulator made in BeefLang. It was previously just a 6502 emulator, but it's being worked towards a full NES emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages