• Stars
    star
    184
  • Rank 207,945 (Top 5 %)
  • Language SystemVerilog
  • License
    GNU General Publi...
  • Created almost 2 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

NES for the Analogue Pocket

NES for Analogue Pocket

Ported from the core originally developed by Ludvig Strigeus and heavily developed by @sorgelig, @greyrogue, @Kitrinx, @paulb-nl, and many more. Core icon by spiritualized1997. Latest upstream available at https://github.com/MiSTer-devel/NES_MiSTer

Please report any issues encountered to this repo. Most likely any problems are a result of my port, not the original core. Issues will be upstreamed as necessary.

Installation

Easy mode

I highly recommend the updater tools by @mattpannella and @RetroDriven. If you're running Windows, use the RetroDriven GUI, or if you prefer the CLI, use the mattpannella tool. Either of these will allow you to automatically download and install openFPGA cores onto your Analogue Pocket. Go donate to them if you can

Manual mode

To install the core, copy the Assets, Cores, and Platform folders over to the root of your SD card. Please note that Finder on macOS automatically replaces folders, rather than merging them like Windows does, so you have to manually merge the folders.

Usage

ROMs should be placed in /Assets/nes/common

PAL ROMs should boot, but there may be timing and sound issues as the core currently doesn't properly support PAL (proper support coming soon). I highly recommend you do not play PAL games, and instead use NTSC games (if they exist) at this time.

Features

Dock Support

Core supports four players/controllers via the Analogue Dock. To enable four player mode, turn on Use Multitap setting.

Mappers

This core has pairity with the MiSTer core's mapper support. See the full breakdown here. Please note that the VRC7 expansion audio chip is not supported in this core (but is in MiSTer) due to space constraints.

Save States/Sleep + Wake

Known as "Memories" on the Pocket, this core supports the creation and loading of save states for most mappers. See the full list in the Mappers section. By extension, the core supports Sleep + Wake functionality on the Pocket. In games with supported mappers, tapping the power button while playing will suspend the game, ready to be resumed when powering the Pocket back on.

Saves

Supports saves for most games and mappers. Saving on the NES is rather complicated due to the different scenarios for different mappers, so it's possible some less common mappers do not save correctly on this core. Please report all such issues to this repo.

Expansion Audio

Expansion audio should be supported for every mapper except those that use VRC7. If you encounter a game that is not playing the expanded audio outside of VRC7, please report it.

Palette Options

The core has 5 palette options built in, changable in Core Settings/Palette. The palettes are known as:

  • Kitrinx 34 by Kitrinx
  • Smooth by FirebrandX (Default)
  • Wavebeam by NakedArthur
  • Sony CXA by FirebrandX
  • PC-10 Better by Kitrinx

You can load external palettes as well. This palette is stored at Assets/nes/agg23.NES/custom.pal, and can be selected by the sixth option (Custom).

For testing, or to temporarily load a new palette, you can choose the Load Custom Palette option (make sure to choose Core Settings/Palette/Custom). This palette selection is temporary, and will be reset when quitting and reopening the core.

Video Options

There are several options provided for tweaking the displayed video:

  • Hide Overscan - Hides the top and bottom 8 pixels of the video, which would normally be masked by the CRT. Adjusts the aspect ratio to correspond with this modification
  • Edge Masking - Masks the sides of the screen in black, depending on the chosen option. The auto setting automatically masks the left side when certain conditions are met.
  • Extra Sprites - Allows an extra 8 sprites to be displayed per line (up to 16 from the original 8). Will decrease flickering in some games

Lightguns

Core supports virtual lightguns by enabling the "Use Zapper" setting. The crosshair can be controlled with the D-Pad or left joystick, using the A button to fire. D-Pad aim sensitivity can be adjusted with the "D-Pad Aim Speed" setting.

NOTE: Joystick support for aiming only appears to work when a controller is paired over Bluetooth and not connected to the Analogue Dock directly by USB.

More Repositories

1

openfpga-SNES

SNES for the Analogue Pocket
VHDL
367
star
2

fpga-tamagotchi

Tamagotchi P1 for Analogue Pocket and MiSTer
SystemVerilog
104
star
3

analogue-pocket-utils

Collection of IP and information on how to develop for openFPGA and Analogue Pocket
SystemVerilog
102
star
4

SwiftNES

A Simple NES Emulator Written in Swift
Swift
86
star
5

openfpga-pcengine

PC Engine for the Analogue Pocket
VHDL
70
star
6

openfpga-pong

FPGA Pong implementation, specifically for the Analogue Pocket
Verilog
62
star
7

openfpga-arduboy

Arduboy for Analogue Pocket
Verilog
55
star
8

fpga-gameandwatch

Game and Watch for Analogue Pocket and MiSTer
SystemVerilog
55
star
9

openfpga-wonderswan

WonderSwan Color for the Analogue Pocket
VHDL
37
star
10

openfpga-litex

A RISC-V software platform, exposing Analogue Pocket capabilities in a simple way
Verilog
34
star
11

openfpga-pokemonmini

SystemVerilog
33
star
12

Analogue-Pocket-Image-Process

Prepares and extract bitmaps for Analogue Pocket platform images
JavaScript
23
star
13

fpga-compositevideo

Verilog
13
star
14

SiriHIDRemote

Connect your Apple TV's Siri Remote to your Mac
Objective-C
13
star
15

openfpga-chip32-sim

Simulator for Analogue's CHIP32 VM on Analogue Pocket
Rust
10
star
16

Mopidy-AppleMusic

Apple Music extension for Mopidy
Python
8
star
17

FINes

An aquarium simulator for NES
Assembly
7
star
18

BrickseekLegoDeals

Python
6
star
19

mister-config

Tool for visualizing MiSTer config strings
TypeScript
6
star
20

RAWExif

Tool for EXIF operations on Apple Photos
Swift
5
star
21

openfpga-template

Verilog
5
star
22

kroger

Node module for the Kroger API
TypeScript
4
star
23

pocket-copier

A simple tool to make it easier to copy files to Analogue Pocket during development
TypeScript
3
star
24

tamagotchi-disassembled

A disassembly of the Tamagotchi P1 ROM
Assembly
3
star
25

millfork-vscode

VSCode support for the Millfork language
TypeScript
3
star
26

archivebox-url-forwarder

WebExtension for ArchiveBox
TypeScript
3
star
27

sdram-controller

A HDL SDRAM controller designed for retro hardware and FPGAs
SystemVerilog
3
star
28

mister-repository

agg23's cores available for the MiSTer Downloader
2
star
29

DeepMetaLearningTSP

Learning to choose the best TSP heuristic using deep learning and LSTMs
Jupyter Notebook
2
star
30

bing-dalle3

A DALL-E 3 assistance browser extension for Bing's image generator
TypeScript
1
star
31

8-bit-fonts

Fonts ready to use in 8 bit sizes
1
star
32

macintosh-garden-scraper

Website Scraper for Macintosh Garden and Associated Metadata Tools
Python
1
star
33

RecipeTool

Recipe tool with access to the Kroger API and inventory system
TypeScript
1
star
34

AgarIOHelper

A set of helper scripts for playing Agar.io
JavaScript
1
star
35

verilator-rust-square-wave

Rust
1
star
36

DestinyPCLoadoutManager

Loadout Manager for Destiny 2 for PC
C#
1
star
37

DukeEnergyScraper

Scrapes electricity usage information from Duke Energy's online portal
Python
1
star
38

react-native-macos-template

A basic new "test" react-native-macos project based off of Microsoft's react-native macOS fork
Objective-C
1
star
39

apple-py-music

Apple Music Python Client 🍎πŸ₯§πŸŽΆ
Python
1
star
40

BonjourBroadcaster

Duplicating and rebroadcasting mDNS Bonjour advertisements on OS X
Objective-C
1
star