• Stars
    star
    102
  • Rank 335,584 (Top 7 %)
  • Language SystemVerilog
  • License
    MIT License
  • Created about 2 years ago
  • Updated over 1 year ago

Reviews

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

Repository Details

Collection of IP and information on how to develop for openFPGA and Analogue Pocket

Collection of Analogue Pocket Utilities

A collection of useful IP and information on how to develop openFPGA cores for the Analogue Pocket.

For tips, tricks, and various learnings from a software dev's perspective, check out the wiki.

IP

When possible, IPs will be provided with test benches.

HDL File Usage
mem/psram.sv Generic PSRAM controller, configured with timing for the Pocket's PSRAM. Supports synchronous access in async mode.
debug_key.v Enables LED/button/UART usage for the debug key included with Analogue Pocket Dev Kits
data_loader.sv Converts APF writes into configurable single or two byte words. TB tests both 8 and 16 bit writes
data_unloader.sv Connects APF reads into memory fetches, with configurable single or two byte words. TB tests both 8 and 16 bit reads
hex_loader.v Converts APF writes representing a hex file into bytes. Can be converted for use outside of APF. Has an involved TB
sound_i2s.sv Provides audio over the i2s bridge. Supports signed and unsigned audio
sync_fifo.sv An easily reusable method for synchronizing multiple bits across clock domains

Debug Key

You must set "cartridge_adapter": 0 in the core.json file, otherwise - the dev key doesn't work, and be careful when you distribute as well, or you will waste power.

This example demonstrates controlling the Debug Key's LED with the button.

wire LED;
wire button;

assign LED = button;

debug_key key (
    .cart_tran_bank0_dir(cart_tran_bank0_dir),
    .cart_tran_bank0(cart_tran_bank0),
    .cart_tran_bank3_dir(cart_tran_bank3_dir),
    .cart_tran_bank3(cart_tran_bank3),
    .LED(LED),
    .button(button)
);

Tools

CHIP32

Image Processing

Updaters

Cores

A sample of open source cores are provided here. This list updates rapidly and is likely incomplete. You can see the complete list at https://joshcampbell191.github.io/openfpga-cores-inventory/analogue-pocket.html

Arcade

Core Author URL
Asteroids ericlewis https://github.com/ericlewis/openfpga-asteroids
Dig Dug boogermann https://github.com/opengateware/arcade-digdug
Dominos ericlewis https://github.com/ericlewis/openfpga-dominos
Galaga boogermann https://github.com/opengateware/arcade-galaga
Green Beret boogermann https://github.com/opengateware/arcade-gberet
Lunar Lander ericlewis https://github.com/ericlewis/openfpga-lunarlander
Pong agg23 https://github.com/agg23/analogue-pong
Space Race ericlewis https://github.com/ericlewis/openfpga-spacerace
Super Breakout ericlewis https://github.com/ericlewis/openfpga-superbreakout
Tecmo nullobject https://github.com/nullobject/openfpga-tecmo
Xevious boogermann https://github.com/opengateware/arcade-xevious

Console/Handheld

Core Author URL
Arduboy agg23 https://github.com/agg23/analogue-arduboy
Genesis ericlewis https://github.com/ericlewis/openFPGA-Genesis
Neo Geo Mazamars312 https://github.com/Mazamars312/Analogue_Pocket_Neogeo
NES agg23 https://github.com/agg23/openfpga-NES
PC Engine agg23 https://github.com/agg23/openfpga-pcengine
PDP-1 spacemen3 https://github.com/spacemen3/PDP-1
PC Engine agg23 https://github.com/agg23/openfpga-pcengine
Pokemon Mini agg23 https://github.com/agg23/openfpga-pokemonmini
SNES agg23 https://github.com/agg23/openfpga-SNES

More Repositories

1

openfpga-SNES

SNES for the Analogue Pocket
VHDL
367
star
2

openfpga-NES

NES for the Analogue Pocket
SystemVerilog
184
star
3

fpga-tamagotchi

Tamagotchi P1 for Analogue Pocket and MiSTer
SystemVerilog
112
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

fpga-gameandwatch

Game and Watch for Analogue Pocket and MiSTer
SystemVerilog
59
star
8

openfpga-arduboy

Arduboy for Analogue Pocket
Verilog
57
star
9

openfpga-wonderswan

WonderSwan Color for the Analogue Pocket
VHDL
38
star
10

openfpga-litex

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

openfpga-pokemonmini

SystemVerilog
35
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

sdram-controller

A HDL SDRAM controller designed for retro hardware and FPGAs
SystemVerilog
4
star
24

pocket-copier

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

tamagotchi-disassembled

A disassembly of the Tamagotchi P1 ROM
Assembly
3
star
26

archivebox-url-forwarder

WebExtension for ArchiveBox
TypeScript
3
star
27

mister-repository

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

millfork-vscode

VSCode support for the Millfork language
TypeScript
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