I haven't encountered this error so I will just outline what I know since I don't have problems. Mednafen has no GUI, meaning you cannot just run the binary. If you are on Windows, you need to drag and drop the ROM(can be archived aka in a .zip file) on top of the Mednafen.exe and it will open up. Linux users can use the terminal, mednafen romname, ez. You can also use an unofficial GUI like https://sourceforge.net/projects/medguireborn/ which even comes with a Windows compiled server executable for hosting online servers. Most settings are controlled in the mednafen-09x.cfg file found in the emulator folder or ~/.mednafen for Linux, this is where you would for example turn off filters or turn off aspect correction making everything stretched if you want that. To bind controls you would use the hotkey, ingame, alt+shift+1, and press each button twice in succession. 1 can be replaced with 2 or 3 or whatever for whichever controller you want. That said I don't know what the fuck this has to do with programming

Also if it wasn't obvious, Mednafen is more advanced or as I like to call it pointlessly obtuse. I recommend newer users learn to use something like Retroarch unless you specifically want to use the very good online functionality of Mednafen or the primitive but fantastic new support of Sega Saturn (which doesn't have netplay support yet). Oh yeah, RTFM https://mednafen.github.io/documentation/

Okay, I recently switched to Linux... and I'm looking at Qt as an IDE, but I have a bunch of questions:

1) Does anyone have a better suggestion than Qt? I'm not a professional in any sense, I just do this for fun and occasionally for a practical need that I may occasionally have for building my own progs. I've mostly used Basic (several kinds) but I am willing to give other languages a shot from time to time... looking at Python as an alternate lately.

2) What all bits and pieces do I need to make it work? I'm constantly getting surprises when it comes to plugins and other stuff, so I need to have some idea what's involved in simply writing out some code, building a few forms, and the simple task of compiling the damn thing!

3) Can it be used for making games? Frequently, I find it necessary to use a "gaming" language because of the ability to do 3D world rendering, but the only out-of-box lang I've found so far is Blitz3D, which is pretty cool but horribly limited in several other areas. I can add modules, but this seems to be easier in some than others... Irrlicht is my current fave, but if you know of another one that does the same for no cost then I'd love to hear it.

4) Can I compile into Windows-ready *.exe/*.dll files? Linux is great, but Windows is still a thing (sadly), Mac is entirely optional to me as I don't use it.

>>4969Op here... I'm realizing as I look back at my original post that I probably wasn't very clear about a few things, although you did answer most of my questions pretty well. :)

For that the last question (#4), I should've mentioned that most of my progs are simple items that don't tend to use much outside stuff as a general rule, and therefore shouldn't require any retooling if recompiled for a different OS.

#3 is the sticky point though... I simply use a game engine to do live 3D rendering because it's easier than trying to create bullshit charts or anything else. I can just make some code, crunch some data, render it in a 3D world and mess with it that way. (yeah, im weird) I have experimented with game programming before, and I may give that another whirl soon. But what exactly does Qt have built in it for doing 3D world rendering? Irrlicht is optional to me.

I've been learning Unity/C# for a while, and I want to learn a little assembly, mostly since I like to learn how the computer works and feel I could understand other languages better if I got a look under the hood.
I looked up some stuff online, but I have a few questions:

1. I noticed there are different assembly languages for each CPU architecture, with x64 being able to run x86 code in 32bit mode.
however, I found a code sample that had this at the top:
".586 ;Target processor. Use instructions for Pentium class machines"

does this mean that each processor/processor generation has a different assembly language, or is it just an optimization thing?

1. While each x86 processor is backwards compatible with previous processors, they do have instructions that take advantage of new features. For example, before math co-processors were standard on Pentium era CPUs programmers had to manually detect the presence of a math processor and programs had two code paths, one that took advantage of FPU instructions and one that didnt.
2. No. On modern kernel architectures you do not program the GPU directly. The closest you'll get is NVIDIA's CUDA and similar.
3. Not at all. Unless you are engineering Hard Real Time stuff and some forms of embedded, or you are trying to break systems (i.e. creating NOP sleds etc), a modern programmer will never need asm. Thank allah. Additionally, these days it is really unlikely the average programmer can hand craft asm that is faster then what a compiler can do.

Knowing the Assembly for your target architecture can be useful not so much to write code but to debug it. Sometimes you may find that a crash is only triggered when the application it built with optimizations, and when you look at the debugger, it may only show you the disassembly at the point where the program crashed. Knowing Assembly can help you figure out what's causing the crash.

Knowing Assembly also opens up other possibilities, such as studying executables to figure out how they do what they do (i.e. reverse engineering)

ARM Assembly is exactly as useful as other other Assemblies, for any given application domain.
Personally, being used to x86 and some of its predecessors, I find it rather annoying to use.