Categorygithub.com/BossRighteous/MiSTer_Games_GUI
repository
0.0.0-20241202000540-a65691de4512
Repository: https://github.com/bossrighteous/mister_games_gui.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author

# README

Notice

This is currently under active development. This is Babby's First Go project so feel free to recommend changes. Channel structures are still a bit wonky I think.

MiSTer_Games_GUI

Low-resolution analog friendly MiSTer script GUI for your game library.

Aiming for something like EmulationStation with filesystem browsing paired to Meta data and images.

Will run on MiSTer ARM chip, using Groovy Mister core for headless graphics processing.

Will include utilities for data processing from scrapper API(s)?

WIP local dev direction

  • clone repo
  • cd {repo_path}
  • go run cmd/mistergamesgui/main.go

WIP Install direction (unstable at the moment)

Goals

  • Provide a simple analog friendly graphical interface for browsing your library
  • Installable via DB json ini
  • Go executable build for Cyclone V chip
  • Require no external dependencies
  • Balance usable interface concerns and responsiveness with single threaded low CPU/Memory demand

MiSTer Requirements

The GUI requires the (currently dev) GroovyMiSTer core for meaningful operation. Developing against build Groovy_20240327.rbf

Go Supported Features

  • UDP connection to GroovyMiSTer via localhost loopback
  • INI settings for modeline etc
  • GroovyMister API basic implementation
  • Image/TTF-font embeds and rendering w/ transparency
  • FPS display
  • Basic goroutine/channel support for lazy-loads against blit cycle
  • Loading meta JSON from disk into overlay Images
  • Input support for 2 9 Button digital controllers

Go Roadmap

  • Directory navigation
  • MGL temp writes for Core/Game loading
  • Display meta-data for selected game
  • Display image(s) for selected game
  • Interlace support
  • Alternate or adaptive GUI for 480p vs 240p
  • Scaper to Meta routine
  • Meta dumps offloaded to static hosting to avoid scraping needs