Home

Awesome

openfpga-varvara

A core for Analogue Pocket that integrates the VHDL output of varvara-fpga (which is still an early work-in-progress PipelineC FPGA implementation of Varvara / Uxn by Hundred Rabbits).

Screenshots

Tet Flappy Bird Donsol Amiga

Running the core on an Analogue Pocket

Unzip the latest core from the Releases section, and copy + merge the Assets, Cores, and Platforms folders to your Analogue Pocket SD Card.

Specs

Known issue on Analogue OS 2.0 (Fixed in 2.1)

If you see a black screen after loading a ROM, the ROM is likely actually still running. Sometimes you need to open Core Settings -> Display Mode, and re-select a display mode, to see video output. This was a bug on Analogue's end. Upgrading to AnalogueOS 2.1 or above fixes this issue.

Known issue on Analogue OS <= 2.1 (Fixed in 2.2)

ROMs may need to be padded with additional empty bytes (0x00) to be an even multiple of 4 bytes. Updating to Analogue OS 2.2 fixes this issue.

Limitations and other Known Issues

Many Varvara device features aren't implemented:

Some Varvara devices are only partially implemented:

ROMs must be 65280 bytes or less.

Test ROMs

I added some test ROMs into the dist/assets folder. Some of these are slightly modified examples from the Uxn Chibicc fork example code:

Building the core yourself

pipelinec varvara-fpga/uxn.c

Clean (example command using a Docker Quartus Image):

docker run --platform linux/amd64 -t --rm -v $(pwd):/build didiermalenfant/quartus:22.1-apple-silicon quartus_sh --clean ap_core.qpf  

Build (example command using a Docker Quartus Image):

docker run --platform linux/amd64 -t --rm -v $(pwd):/build didiermalenfant/quartus:22.1-apple-silicon quartus_sh --flow compile ap_core.qpf

Core Template

This is a template repository for a core which contains all of the core definition JSON files and FPGA starter code.

Legal

Analogue’s Development program was created to further video game hardware preservation with FPGA technology. Analogue Developers have access to Analogue Pocket I/O’s so Developers can utilize cartridge adapters or interface with other pieces of original or bespoke hardware to support legacy media. Analogue does not support or endorse the unauthorized use or distribution of material protected by copyright or other intellectual property rights.