Skip to content

TurboVega/ogege

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

83 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Olimex GateMateA1-EVB Graphics Engine (OGEGE)

This repository contains Verilog code to drive the VGA output of the Olimex GateMateA1-EVB board. The GM1A-EVB board combines an RP2040 microcontroller with a GateMate1 FPGA (a.k.a., the Cologne Chip or "CC"), and other components, such as PSRAM.

As experimental development progresses, the hope is to support such functions as the following:

  • 640x480 and 320x240 pixel resolutions
  • 12-bit color (4 bits each for R, G, & B)
  • Color palette indexing
  • Transparency (multiple levels)
  • Horizontal and vertical scrolling
  • Sprites and collision detection
  • Bit-block transfers (blitting)
  • Communication between RP2040 and GM FPGA

This repository uses some code and/or concepts from these repositories:

https://github.com/goran-mahovlic/GateMate_demos

https://github.com/trabucayre/GateMate_demos

https://github.com/goran-mahovlic/apple-one/tree/master/boards/olimex_gatemate

The board description and other information may be found here:

https://www.olimex.com/Products/FPGA/GateMate/GateMateA1-EVB/open-source-hardware

Information about the FPGA may be found here:

https://www.colognechip.com/programmable-logic/gatemate/

Information about the RP2040 may be found here:

https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf

Memory

The RP2040 contains 264 KB of SRAM (static RAM), divided into banks for faster access by the dual ARM Cortex M0 cores. The GateMate contains 160 KB of BRAM (block RAM), which may be thought of as 64 2.5 KB blocks, or as 32 5 KB blocks.

Please refer to Graphics Engine Memory Map for details about the memory organization within the GateMate BRAM.

About

Olimex GateMateA1-EVB Graphics Engine

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages