Welcome, Guest
Necromancy Research
(1 viewing) (1) Guest

TOPIC: Necromancy Research

Necromancy Research 1 month, 1 week ago #4359

My existing emulator ports, though functional on 10.13, are very clearly on borrowed time given that they're reliant on 32-bit Carbon which will probably drop in the not too distant future. With that in mind, I've been contemplating a streamlined modern rewrite of my shell code to keep things alive for the next decade.

This is not an announcement, or indeed a promise of one, and I'd ask for people not to respect that by not reporting this forum post in other places. If and when there's something I'm prepared to spread more widely it'll be posted on my own site.

There are portions of my existing codebase that can be reused, not least the big collection of blitters (which in many cases are unchanged from the code that worked just fine on System 7.6 two decades ago). However anything even remotely connected with the user interface has to be developed from scratch. I don't want to waste my time writing code that will never be used.

Here's what I think is redundant:

- Frame skipping. (I'm running on a ten year old Mac Pro and everything runs full speed with hq4x).
- Changing the colour of the frame rate display. (You can have any colour you like as long as it's green).
- Switching monitor resolution for full screen mode. (Today's video cards can easily handle the stretch in software).
- Speed controls. (Does anyone ever run at anything other than 100%?)
- Interface controls to pause emulation in certain scenarios.
- Sound controls. (There's almost no performance gain from turning off the emulation, and you can mute your speakers.)
- Filter options (Flip, invert, grayscale, colour channel adjustments. Fun to play with, of no practical use).
- Graphical keyboard configuration. (A list is not as pretty but much faster to configure).

Does anyone have any strong objections to the above?
Last Edit: 1 month, 1 week ago by Richard Bannister.

Re: Necromancy Research 1 month, 1 week ago #4360

Regarding the frame rate display, would it be easier to put that in the title bar instead? Yeah, full screen users lose out, but having it stuck on a single color doesn't sound so great (especially if the game is already full of green).

Filter options: so long as you don't remove the useful ones like hq2x and the like, that sounds fine. It's neat to have the options you listed but they are pretty unpractical.

I use the pausing features of your emulators. Mostly when I need to change a setting immediately without anything further happening in the emulation. However, if savestate functionality was solid, I wouldn't mind making a savestate just to restore it after taking care of business.

I'd slightly miss the graphical keyboard configuration. But if you allow the gamepad configuration to accept keyboard input that would be good enough.

Thanks for the many years of support, Richard!

Re: Necromancy Research 1 month, 1 week ago #4361

As for sound controls, I would like the ability to mute. Getting a FaceTime call or watching a youtube video on how to pass a certain section of the game I'm playing are example scenarios where the game music would interfere but I don't want to actually mute my mac.

Re: Necromancy Research 3 weeks, 4 days ago #4363

Richard Bannister wrote:
Here's what I think is redundant:

- Frame skipping. (I'm running on a ten year old Mac Pro and everything runs full speed with hq4x).
- Changing the colour of the frame rate display. (You can have any colour you like as long as it's green).
- Switching monitor resolution for full screen mode. (Today's video cards can easily handle the stretch in software).
- Speed controls. (Does anyone ever run at anything other than 100%?)
- Interface controls to pause emulation in certain scenarios.
- Sound controls. (There's almost no performance gain from turning off the emulation, and you can mute your speakers.)
- Filter options (Flip, invert, grayscale, colour channel adjustments. Fun to play with, of no practical use).
- Graphical keyboard configuration. (A list is not as pretty but much faster to configure).

Does anyone have any strong objections to the above?


Your call really and any update is better than no update so I'm willing to agree on the grounds that it'll make your theoretical job easier.

If I were to have my 10 cents though:
- I like fullscreen mode and don't use a particularly modern computer so if it's gonna improve performance then great. Is it very difficult to include?
- Speed controls... fast forward can be really useful in some RPGs if you really just want to zip through some of the dialogue. That's the only reason I've ever changed the speed of a game while playing (i.e. I've read the dialogue before I'm allowed to move forward and just want to skip it... great for when I'm bug/easter egg searching too, e.g. if I have to wait 1 minute for a platform to move back in place every time I mess up and I'm trying to do something weird/obscure that might not even work)
- Pausing can be useful if I'm gaming and my baby starts crying. Uuuum. That said, most games have an in-game pause option and if for some reason it's disabled, you're probably cheating if you pause. I don't like cheats because I find the internet has made games too easy (i.e. you can youtube the solution in 2 seconds whereas in the past I'd spend all summer down at our Ring of Bright Water-esque beach house trying to figure out a lot of simple puzzles in between surfing, home renovations and swimming out to the islands... the fun of having to work everything out myself without any tips/cheats made games last so much longer!) Nostalgic rant aside, pause is useful, but I say that with caution... in principle I have no objection towards removing features that are mostly gonna be used by cheaters...

Again, I'm happy to see all 3 go if implementing them is gonna be a deal breaker. However, I felt it was worth putting up an argument for their inclusion given the lack of input.
Last Edit: 3 weeks, 4 days ago by jetboy.

Re: Necromancy Research 3 weeks ago #4365

Okay, some brief commentary on the points raised above:

- Blitters (hq2x/Super Eagle/etc) are in the redesign. Filters (changing colour channels/etc) are not.

- Pausing can be achieved at any time by putting the emulator into the background. I don't propose to provide any functionality beyond that.

- I will consider providing the ability to turn sound off.

- Full screen mode is in the redesign. Switching resolution is not.

- Speed controls are not part of the redesign, however the "Turbo" key is (which turns off speed limiting while pressed).

Re: Necromancy Research 2 weeks, 6 days ago #4366

- Switching monitor resolution for full screen mode. (Today's video cards can easily handle the stretch in software).


No problems there. I actually dislike forced resolution switching. See: Diablo 2 for OS X - it forces 800x600 and doesn't even use OpenGL stretching. The result? Super blurry video and black bars on the screen. So long as we at least get to retain the choice between proper aspect ratio and/or stretching to fill the screen entirely, you're right, this isn't an issue anymore. Even Apple's lowly mobile GPU lineup in their machines can handle this. Hell, even Intel's IGPs can handle it. Well, mostly. IGPs still suck for other reasons.

- Speed controls. (Does anyone ever run at anything other than 100%?)


For RPGs, yes, we do. Turbo functionality really saves a ton of grind time in RPGs. But note that I said turbo mode, so if you leave in just the ability to set a turbo speed and a turbo keybind, you can ditch the rest of the speed controls and nobody would ever really notice. I've never actually configured the turbo speed though, so as long as the core turbo function remains, then it would be just as it has been all along for people like me that used turbo but never changed the speed from your presets.

- Interface controls to pause emulation in certain scenarios.


Useful in certain circumstances, but especially so in situations where the user experiences odd behaviour when switching to and from fullscreen mode while in an app (it's a bug in OS X that keeps resurfacing and is currently afflicting quite a few non-emulation games when using CMD-TAB). But it's really your call whether or not you want to work around yet another Apple bug. (Side note: The AMD wake from sleep bug is back in 10.13 so any users using that OS that sleep their machines while using your emulators that report slowdowns are experiencing this one and there is no workaround except for Apple to fix it yet again; it has literally come back every other major (10.X) OS version since Mountain Lion).

- Sound controls. (There's almost no performance gain from turning off the emulation, and you can mute your speakers.)


Useful if you're trying to record a playthrough without sound. Also useful for when you want a game w/o sound while either listening to other audio or a video as mentioned above. Sometimes it's nice to just rock out to a soundtrack other than the game's own when grinding...

- Filter options (Flip, invert, grayscale, colour channel adjustments. Fun to play with, of no practical use).


Outside of using them for filters for youtube videos and whatnot, you're right. But I can't remember the last video I ran into that used any of these, so... *eyeballs dumpster*

- Changing the colour of the frame rate display. (You can have any colour you like as long as it's green).


Don't ask me how I managed to never see that dialogue button, but I didn't and wish I did (neon green is a bit bright and I'd have changed it to a more neutral color). That said, I've lived with neon green this long so...take that for what you will.

- Pausing can be useful if I'm gaming and my baby starts crying. Uuuum. That said, most games have an in-game pause option and if for some reason it's disabled, you're probably cheating if you pause. I don't like cheats because I find the internet has made games too easy (i.e. you can youtube the solution in 2 seconds whereas in the past I'd spend all summer down at our Ring of Bright Water-esque beach house trying to figure out a lot of simple puzzles in between surfing, home renovations and swimming out to the islands... the fun of having to work everything out myself without any tips/cheats made games last so much longer!) Nostalgic rant aside, pause is useful, but I say that with caution... in principle I have no objection towards removing features that are mostly gonna be used by cheaters...


I've had to answer the phone constantly lately. Robocalls + scam calls + family calls and I never know which is which because of rampant caller ID spoofing and/or blocking (my family blocks caller ID and has unlisted numbers so I get to answer the phone all. The. Time. A keybind/controller bind to pause is still appreciated, though I can understand it being removed if it makes life more difficult for you in terms of the rewrite. It's a "love to have it" item, but if push came to shove I'd probably just have to live without it.

Rose Tinted Glasses Moment: I kind of miss the simplicity of the UI for the InputSprocket controls. The current gamepad mapping methodology is slightly less intuitive than one might prefer, but if you haven't gotten any complaints about it from anyone else just consider this one a nitpick.

What I'm more concerned with long term is OpenGL. Your emulators hook into it specifically for the stretching and resizing functionality, yes? Well, OpenGL hasn't been updated at all since Mavericks, and with Apple having switched to Metal development only, they have effectively deprecated OpenGL. I honestly wouldn't be surprised to see it dropped in 10.14. World of Warcraft for example will almost certainly have to drop OpenGL support at that time, and the writing's been on the wall with regard to its demise on OS X for some time now. So just out of curiosity (this is only a question, not a request), how big is the roadblock with regard to switching from OpenGL to Metal with your emulators? I get the feeling that would be more complicated than the UI rewrite itself.

Oh, and it goes without saying that since this is a fairly hefty rewrite you're looking at no matter how you slice it, I have no qualms about having to pay to upgrade EE to modern functionality with the OS either.
Last Edit: 2 weeks, 6 days ago by Squishy Tia.

Time to create page: 0.15 seconds