Hi all. I have been working on porting Mednafen to AmigaOS4 and so for I have something working. Mednafen supports the following:
Apple II/II+
Atari Lynx
Neo Geo Pocket (Color)
WonderSwan
GameBoy (Color)
GameBoy Advance <--- rjd324: This is the only module not included in the build
Nintendo Entertainment System
Super Nintendo Entertainment System/Super Famicom
Virtual Boy
PC Engine/TurboGrafx 16 (CD)
SuperGrafx
PC-FX
Sega Game Gear
Sega Genesis/Megadrive
Sega Master System
Sega Saturn (64-bit only)
Sony PlayStation
Why did I do it? Because I am looking for a Playstation emulator actually. FPSE does not quite do what I want it to do, so I set about looking for the easiest thing to port over, and this looked like it.
It is just the beginning here. For instance, due to threading issues - at least when using PSX - I get some DSI errors that I can ignore. But, I cannot enable audio yet. So, that is something to look into.
The port is based on mednafen version 1.29, of course, with various modifications and or hacks to the code base to get it to work with AOS4.
It was compiled with SDK 53.34, adtools gcc 11.3, newlib. All statically linked. There is no altivec support in the version uploaded, but that is possible. OpenGL/SDL, for me, at least, testing with GL4ES on my X5000 Enhancer 2.1. On my X1000 using only the Warp3D nova, I do not get the results I expected and I need to switch to software rendering, rather than opengl. Need to look into that.
I will be uploading what essentially is a: run at your own risk version onto the depot while I look into some of the issues some more since maybe someone can test whether it works with any other module other than PSX. I did try the SNES module and that seemed to work also, but we already have more than capable SNES emulators today! I am only doing this selfishly since I want to be able to play some of my PSX games.
===
You should define an environment variable named HOME. eg:
setenv HOME Workbench:S
If there is a trailing slash at the end, it will not work as intended.
Mednafen has no front end (at least, not that I am aware of). It is a command line tool with a cfg file. But, the command line is quite simple. It is just:
[mednafen <ROM>]
Though, initially, I would suggest just running "mednafen" for it to create a default configuration file or to see whether it trashes your machine.
On initial launch, the a configuration (.mednafen folder) will be created with a lot of default files generated within in the HOME directory. This will include a mednafen.cfg file.
Recommended things to do in the mednafen.cfg file:
1. Change "cd.image_memcache 0" to value 1 - load into memory instead.
2. Change "sound 1" to 0 - as I say, this is just a test binary at this point
3. For any modules that you are using, say Playstation: search for "psx.videoip" and ensure that value is 0, otherwise filtering is turned on, and that slows things down. For snes, consider looking at "snes.videoip" etc.
4. "video.driver" is where you set the main driver. "default" goes to OpenGL. As I said, on my X5000 this is okay, but on my X1000 using Warp3D Nove / minigl etc this does not seems to work right now, instead I set it to "softfb" : this is software rendering.
5. maybe you will consider setting "video.glvsync" to 0.
All of these settings above are just total guesses from my part. I am not an expert. I think the only important ones are disabling the sound and potentially using software rendering. Sound may work for some modules. I am not sure.
If the Grim Reaper appears, do not blame me.
I will upload this totally broken binary at some point this evening and link it here:
http://os4depot.net/?function=showfil ... n/gamesystem/mednafen.lha.
===
See also:
https://mednafen.github.io/
Edited by rjd324 on 2022/7/24 21:03:12