Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create higan-sdl frontend. #130

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

jchv
Copy link
Contributor

@jchv jchv commented Nov 2, 2020

This is a simple frontend written using SDL2 mostly as an example. It is still a prototype mostly and should not be merged yet (maybe not ever?) but is submitted for review/general interest for now.

@Screwtapello
Copy link
Contributor

Bike-shedding: "higan-sdl" is specific and descriptive, but I wonder if a better name might be "higan-skel" since it's, like, a minimum viable UI.

higan-sdl/GNUmakefile Outdated Show resolved Hide resolved
higan-sdl/GNUmakefile Outdated Show resolved Hide resolved
higan-sdl/GNUmakefile Outdated Show resolved Hide resolved
@Screwtapello
Copy link
Contributor

Ah, right, I see what's going on, this is an SDL-based version of byuu-ui. That's cool, and I can imagine it would be useful and interesting for some people, but for #28 I really want an SDL-based version of higan-ui, without the icarus integration and all that stuff - just take a path to a system folder, deserialise it into a Node tree and start it up (I assume that's how it'd work, one of my motivations is to find out whether it would work like that).

I'm not demanding this must be that, but that's where I'd like to head in the long-term.

@jchv
Copy link
Contributor Author

jchv commented Nov 3, 2020

Ah, right, I see what's going on, this is an SDL-based version of byuu-ui. That's cool, and I can imagine it would be useful and interesting for some people, but for #28 I really want an SDL-based version of higan-ui, without the icarus integration and all that stuff - just take a path to a system folder, deserialise it into a Node tree and start it up (I assume that's how it'd work, one of my motivations is to find out whether it would work like that).

I'm not demanding this must be that, but that's where I'd like to head in the long-term.

Done. It now loads system folders instead of ROMs. For now, I've simplified the codebase down to a single file, removing most of the unnecessary bits entirely. (It might still be worth breaking into multiple files, I just wanted a look at how radically simple this could get.)

This may not be surprising but the byuu-ui-like bits were almost entirely in addition to the parts that we need for higan-ui-like behavior. The only thing that got noticeably uglier is the hardcoded input stuff.

Bike-shedding: "higan-sdl" is specific and descriptive, but I wonder if a better name might be "higan-skel" since it's, like, a minimum viable UI.

Part of why I emphasize the SDL portion here is because it's not just a bare bones frontend, it's a bare bones SDL2 frontend. A bare bones frontend that uses Ruby would be technically superior, but at that point you could just remove all of the configuration bits on higan-ui and come to basically the same code. The choice of SDL feels to be more about familiarity than practicality.

I am utterly ambivalent though and can rename it to whatever, that's just my two cents.

@jchv jchv force-pushed the higan-sdl branch 2 times, most recently from 4d96aaf to d9e7fe9 Compare November 4, 2020 05:32
This is a simple frontend written using SDL2, mostly to serve as an
example. It uses machine folders just like Higan UI, but uses hardcoded
keyboard mappings (at least for now) for input.
@jchv jchv marked this pull request as ready for review November 5, 2020 16:07
@jchv jchv requested a review from Screwtapello November 5, 2020 16:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants