BeesNES icon indicating copy to clipboard operation
BeesNES copied to clipboard

Cross-platform port?

Open MetalMaxMX opened this issue 1 year ago • 13 comments

Just wanting to know if this will have a cross-platform version for OSes like macOS or GNU/Linux

Cheers! MetalMxMX.

MetalMaxMX avatar Jan 21 '24 23:01 MetalMaxMX

It will! I am using a UI library that is not portable, but I am carefully sectioning off that code so that creating UI’s for other platforms isn’t as much hell as it first seems!

L-Spiro avatar Jan 22 '24 04:01 L-Spiro

Oh awesome! Would love to try this first as a libretro port and then maybe with its own UI later, that would be quite cool to see and experiment!

I'll leave the issue open for any updates to the codebase relevant to that!

MetalMaxMX avatar Jan 22 '24 16:01 MetalMaxMX

It will! I am using a UI library that is not portable, but I am carefully sectioning off that code so that creating UI’s for other platforms isn’t as much hell as it first seems!

Might I suggest Tk?

Very minimal UI toolkit written in C that's cross-platform.

0CCULTIST avatar May 01 '24 16:05 0CCULTIST

Thank you for the suggestion but that’s okay! I need to develop my UI library for another project, where it is non-negotiable (MHS X). Doing 3 UI’s isn’t such a hassle, and I know for-sure I will have no problems integrating Vulkan, Direct3D 12, and Direct3D 9 all at once, plus the iOS UI will have be completely redesigned anyway.

L-Spiro avatar May 02 '24 03:05 L-Spiro

a android port ?

TheBoxGame avatar Jun 03 '24 05:06 TheBoxGame

Well, I don’t personally do Android development, and have devices for testing etc. But no doubt someone will make one!

L-Spiro avatar Jun 03 '24 05:06 L-Spiro

@L-Spiro the question is whether an hdmi filter for fceux would be suitable

TheBoxGame avatar Jun 03 '24 07:06 TheBoxGame

Well, if people want to port some of my filters to FCEUX, they are always allowed, but BeesNES is planned to support the full set of TAS features (plus extra ones I can imagine), so in the end you should just be able to use either one, unless of course we are talking about a platform that BeesNES does not support (and maybe we are!)

In that case, if you just want the look of BeesNES but in an FCEUX core, again, people are allowed to work on it, but there might be a lot of deep rewriting if you want to get the exact look. I’m an R&D graphics programmer so I’ve added a lot of my own custom algorithms to make BeesNES look distinct and more authentic, and some of these routines are as fundamental as the up-scalers. When I resize the internal image to the display size, I use my own custom routine that bakes a scanline effect into the up-scaling. So you’d have to replace a routine that FCEUX uses fairly routinely and is low-level if you want to replicate that look. It would be worth it and improve the appearances of all of their output, but it’s just an example of how low-level you would have to renovate in order to get the proper look. I also handle the CRT’s pow-based gamma so that it comes out correctly on PC monitors, which currently no other emulator does.

With a little effort, you could get an approximate BeesNES look in FCEUX, but a proper look might require some overhauling. Both of these customizations apply even when simply drawing a paletted output, which is what I am calling “HDMI Mod” in some screenshots. The “HDMI” screenshot is Blargg’s filter with my customizations.

On Mon, Jun 3, 2024 at 5:00 PM TheBoxGamePL @.***> wrote:

@L-Spiro https://github.com/L-Spiro the question is whether an hdmi filter for fceux would be suitable

— Reply to this email directly, view it on GitHub https://github.com/L-Spiro/BeesNES/issues/2#issuecomment-2144525403, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABYFQ2TS4NQ7JIFEJT3GGTLZFQPATAVCNFSM6AAAAABCELCRFOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBUGUZDKNBQGM . You are receiving this because you were mentioned.Message ID: @.***>

L-Spiro avatar Jun 03 '24 08:06 L-Spiro

@L-Spiro let me tell you, there is someone who programs emulators in C++ and he made a NES.Emu emulator based on fceux but there is no hdmi and pixel perfect filter because I have my famicom and I connect it to the hdmi cable on the new TV and it looks nice and such a filter in fceux would be useful

https://github.com/Rakashazi/emu-ex-plus-alpha

TheBoxGame avatar Jun 03 '24 08:06 TheBoxGame

Screenshot_2024-06-03-10-47-01-922_com explusalpha NesEmu Screenshot_2024-06-03-10-47-06-588_com explusalpha NesEmu Screenshot_2024-06-03-10-47-21-453_com explusalpha NesEmu Screenshot_2024-06-03-10-47-33-127_com explusalpha NesEmu Screenshot_2024-06-03-10-47-37-409_com explusalpha NesEmu

TheBoxGame avatar Jun 03 '24 08:06 TheBoxGame

So you are requesting I add something to FCEUX?

L-Spiro avatar Jun 03 '24 09:06 L-Spiro

@L-Spiro yes of course, if it was possible to add this if fceux can handle such a filter

TheBoxGame avatar Jun 03 '24 09:06 TheBoxGame

I’m sure it can but I’m not interested in working on someone else’s emulator! My hands are full just working on mine, and there is no way I could pause the exciting new features I am adding right now to learn an entire new codebase and etc.!

But my code is here if anyone wants to do it! If anyone has questions about my custom features or filters I am happy to answer them!

L-Spiro avatar Jun 03 '24 10:06 L-Spiro