bsnes-mcfly: The v073 and bsnes-classic killer

Discussion of hardware and software development for Super NES and Super Famicom. See the SNESdev wiki for more information.

Moderator: Moderators

Forum rules
  • For making cartridges of your Super NES games, see Reproduction.
Black Zero
Posts: 41
Joined: Sat Jul 20, 2013 10:14 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by Black Zero »

Thanks for this wonderful emulator!

Would it be possible to implement/add this:

Color emulation
Simulates the way a console’s display device differs from modern computer monitor’s colour reproduction. In particular, it simulates the slightly-different gamma correction used by the Super Famicom.

Blur emulation
Simulates the limited horizontal resolution of standard-definition TVs by blurring together horizontally-adjacent pixels. Games like Jurassic Park for the Super Famicom depend on this to emulate a transparency effect.

I have checked but could not find these options in the emulator, I know standalone higan and the RetroArch higan core got these options.

Would be really cool to have these options in the future.

Thanks in advance!
Black Zero
Posts: 41
Joined: Sat Jul 20, 2013 10:14 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by Black Zero »

@hex_usr

This is to demonstrate what I mean by Color emulation and Blur emulation:

Default output (like we see it roughly in bsnes/higan)
Image

Color emulation ON with Blur emulation OFF
Image

Color emulation ON with Blur emulation ON
Image

Those rocks looks so much better with Blur emulation ON.
hex_usr
Posts: 92
Joined: Sat May 09, 2015 7:21 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by hex_usr »

The whole point of bsnes-mcfly is to recreate the Qt GUI from bsnes v073 as accurately as possible while making it work with the most recent higan/bsnes versions. As such, Color Emulation won't be found in the drop-down menus like in higan.

The Color Emulation option is called “Simulate NTSC TV gamma ramp” in bsnes-mcfly because that's what bsnes v073 called it. It's in the Configuration Settings dialog box, Video tab.

And because I'm trying to recreate the Qt GUI, I didn't expose a way to configure Blur Emulation, instead setting it to Off automatically.

I just replaced my computer last week and am still setting up a non-Windows OS (my new computer has Windows 10, which I am loath to use for longer than absolutely necessary), so while I can make a change to add the Blur Emulation option, it's going to be difficult for me to provide precompiled Windows builds in the future.
bsnes-mcfly: the bsnes v073 and bsnes-classic killer (GitLab repository)
Black Zero
Posts: 41
Joined: Sat Jul 20, 2013 10:14 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by Black Zero »

Thank you very much @hex_usr

I appreciate that the Blurring could be implemented at least, I wish you good luck with your new PC.
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by tepples »

hex_usr wrote:When you have that, follow the instructions in bsnes-mcfly's included README.txt file to compile Qt (also available in this post).
From README.txt:
How to compile bsnes-mcfly on Windows:
Is this still intended to be buildable on and for X11/Linux? On a PC running Xubuntu 18.04, I enabled source code repositories, did sudo apt build-dep higan, and then tried to adapt the instructions in cc.bat:

Code: Select all

$ cd bsnes
$ make
rcc target-qt/resource/resource.qrc -o obj/resource.rcc
rcc: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/rcc': No such file or directory
target-qt/GNUmakefile:58: recipe for target 'obj/resource.rcc' failed
make: *** [obj/resource.rcc] Error 1
hex_usr
Posts: 92
Joined: Sat May 09, 2015 7:21 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by hex_usr »

Your error log mentions Qt4. bsnes-mcfly is meant to be compiled with Qt5.

I moved to Qt5 at King Of Chaos's request. When I did, I just about migrated the entire GUI source from Qt-style event handlers to C++11's lambdas, which are only supported by Qt5. At this time, only 1 source file still requires moc (Qt's meta object compiler) to compile, and it would be nice if I could eliminate moc as a dependency entirely.

rcc is Qt's resource compiler. I use it to embed higan's Super Famicom games database, among other things. It would be trivial to convert those to sourcery, byuu's cross-platform resource compiler, but 2 of the resources are Qt-specific images used to style form controls, and I'm not sure how I could get those to work while using sourcery.

...I think it would be a shame to have to revert all those lambdas to Qt-style handlers, especially considering that the underlying higan code requires C++14 and will soon require C++17.
Last edited by hex_usr on Mon Nov 19, 2018 8:04 am, edited 1 time in total.
bsnes-mcfly: the bsnes v073 and bsnes-classic killer (GitLab repository)
tepples
Posts: 22708
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by tepples »

I thought sudo apt build-dep higan would have added everything needed to build it. How would I go about finding which libqt5*-dev packages are needed to build this? Or do I need to set up building Qt 4 applications and building Qt 5 applications in separate chroots so that Make can find the appropriate version of rcc?
hex_usr
Posts: 92
Joined: Sat May 09, 2015 7:21 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by hex_usr »

I don't use Xubuntu. This laptop I'm using has Funtoo Linux installed on it (its package manager is “emerge”), and I'm trying to get FreeBSD set up on my main computer so that I don't have to use a systemd-based distro. Sorry, but I think you'll have to look elsewhere for Xubuntu help.

higan's GUI toolkit is hiro, which is a cross-platform wrapper around Windows, GTK, Qt4 (with Qt5 support coming soon), and Cocoa (macOS).
bsnes-mcfly: the bsnes v073 and bsnes-classic killer (GitLab repository)
uVSthem
Posts: 40
Joined: Thu Feb 26, 2015 2:37 am

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by uVSthem »

Is bsnes-mcfly still getting updates?
hex_usr
Posts: 92
Joined: Sat May 09, 2015 7:21 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by hex_usr »

I posted this on byuu's message board, but in case you didn't see it;
hex_usr wrote:In general, each update to bsnes-mcfly comes shortly after an update to higan, so as long as higan is on hiatus, so too is bsnes-mcfly.

It's not like I don't want to work on bsnes-mcfly. I want to add a debugger so that it could compete with bsnes-plus in addition to bsnes-classic, but I promised myself that I wouldn't do so until higan/bsnes v107 was released.
bsnes-mcfly: the bsnes v073 and bsnes-classic killer (GitLab repository)
uVSthem
Posts: 40
Joined: Thu Feb 26, 2015 2:37 am

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by uVSthem »

Okies, that thanks for the reply.
User avatar
olddb
Posts: 188
Joined: Thu Oct 26, 2017 12:29 pm
Contact:

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by olddb »

What's up with byuu? He moved to Japan, stopped twitting and now is closing the forums?
...
User avatar
koitsu
Posts: 4201
Joined: Sun Sep 19, 2004 9:28 pm
Location: A world gone mad

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by koitsu »

...and? Some people just want peace and quiet in their lives. :-)
User avatar
Banshaku
Posts: 2417
Joined: Tue Jun 24, 2008 8:38 pm
Location: Japan
Contact:

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by Banshaku »

Yeah, moving to Japan is the best place to be isolated! (why am I even saying that :lol:)

He's tweetting about his rig these days though? Freebsd setting he's trying to figure out for his threadripper or something.
hex_usr
Posts: 92
Joined: Sat May 09, 2015 7:21 pm

Re: bsnes-mcfly: The v073 and bsnes-classic killer

Post by hex_usr »

byuu is suffering from FreeBSD lag spikes on his new custom-built computer, which are severe enough to stop higan development if they aren't fixed (“I am dead in the water here until this is fixed”). He is offering a $250+ bounty to anyone who sends him a working fix. Full details on byuu's mesage board.
bsnes-mcfly: the bsnes v073 and bsnes-classic killer (GitLab repository)
Post Reply