Beta Mednafen 0.9.17.1-Wip


pder

Member
Joined
Nov 6, 2007
Messages
148
Hi all,

I recently built a version of mednafen 0.9.17.1-WIP with all of the systems enabled that work perfect or (reasonably) well on the Pandora. This should supersede the PC engine only build (mednafen-pce) I released a while back.

It supports the following systems:
Game Boy Advance
Game Boy (Color)
Sega Game Gear
Atari Lynx
NES
Neo Geo Pocket Color
PC-Engine / Turbografx 16
Sega Master System
Virtual Boy
Wonderswan

From my testing the only systems from the above list that did not run perfectly full speed were Game Boy Advance and Virtual Boy, but suprisingly GBA wasn't as bad as I expected.
I created a launcher script for each system that uses zenity to prompt for a rom and remembers the last used rom directory. Each system should be configured to use integer scaling utilizing as much of the pandora screen as possible. I tried to set up reasonable control mappings for each of the systems.

Important keys:
Esc- exit emulator
Shift-Alt-1 reconfigure controller 1
F5 - save state
F7 - load state
0-9 - select save slot
Shift - F5 record movie
Shift - F7 play movie
Shift - 0-9 select movie slot
+ - Fast forward (4x by default)
- - Slow motion (0.75x by default)
# - Toggle 4:3 scaling for nes, pce, and sms
F10 - reset
F11 - hard reset / power
\ - toggle cheats console
! - enable/disable cheats
n - open net play console

PC engine CD rom games require a bios file named syscard3.pce to be placed in pandora/appdata/mednafen/.mednafen/pce_bios
Atari Lynx games need a boot image named lynxboot.img placed in pandora/appdata/mednafen/.mednafen

Misc notes:
Some NES games need a bit of overclock (approx 700)
PC engine CD games need some overclock especially if audio encoded as ogg
Wonderswan controls use Q, Shift, A, and . for the lower control axis

I'll document everything better soon.

Download:
mednafen_r1.pnd
mednafen_r2.pnd
mednafen_r3.pnd

Source:
git://github.com/pder/mednafen-pandora.git
 
Wow... this is quite an achievement. I'm unsure of how to categorize this on the wiki list, since previously all emulators were for one console or for a group of related consoles. I guess I'll think of something.

A shame that GBA doesn't work that well, as the Pandora is really missing a fullspeed GBA emulator that scales 3x to the Pandora's full resolution (gpSP is fullspeed but doesn't scale properly, while VBA scales properly but is slow).

Anyway, I'm definitely going to try this out... although I'll probably wait until you post more documentation.

P.S. For VirtualBoy, is it possible to show the two screens side by side, so that you can view the game by either staring past the screen or crossing your eyes? (like here)
 
Thanks much for this. I have been using Mednafen-pce quite a bit in the couple of weeks since I got a working Pandora (had a non-working one the first time). It will be great to have emulation for all these systems available in one place (a couple of which are new, and more versions of emulators for the same system mean more chance of success for whatever game you might want to play).

I have a question: Can the controls for the various systems be tweaked by the user in the configuration file if he so desires? (I noticed the configuration file is there in Mednafen-pce, but I hadn't gotten around to saving a copy and experimenting with changing it.)
 
skeezix said:
How is the PCE emulation?

Exo never had time to get Temper out...

jeff

Well, I'd still love to see Temper come out, because the version Exophase was working on included SuperGrafx support, and Mednafen doesn't (I don't think it does, anyway; I haven't tried any SuperGrafx games). However, Mednafen seems to work great for PC Engine/TurboGrafx 16 games as well as PC Engine CD/Super CD/TurboDuo games (while the other emulators don't have CD game support).

Edit: Scratch that. I was just looking at the Mednafen homepage, and apparently it does have SuperGrax support. I'll have to try that out.
 
Last edited by a moderator:
CFWhitman said:
skeezix said:
How is the PCE emulation?

Exo never had time to get Temper out...

jeff

Well, I'd still love to see Temper come out, because the version Exophase was working on included SuperGrafx support, and Mednafen doesn't (I don't think it does, anyway; I haven't tried any SuperGrafx games). However, Mednafen seems to work great for PC Engine/TurboGrafx 16 games as well as PC Engine CD/Super CD/TurboDuo games (while the other emulators don't have CD game support).

I haven't tried any SuperGrafx games but they should be supported according to the documentation. If someone tries some, please let us if they work and how they perform.

Regarding the performance of the mednafen PC engine emulation in general, it appears to be flawless running at 600Mhz using approximately 60-70% cpu utilization for hucard games, while CD games encoded with ogg require a bit of overclock to 700Mhz to run perfectly smooth. I haven't been able to find any games that don't work, but I've only tested a handful of CD games. If you launch a game and get a black screen, you most likely have a bad rom dump. Search for the mednafen-pce thread for a utility that Exophase created that fixes these bad dumps.
 
Last edited by a moderator:
CFWhitman said:
I have a question: Can the controls for the various systems be tweaked by the user in the configuration file if he so desires? (I noticed the configuration file is there in Mednafen-pce, but I hadn't gotten around to saving a copy and experimenting with changing it.)

Yes you can edit the config file, but actually the easiest way is to start the emulator and press Shift-Alt-1 and it will prompt you to configure the controls. You have to press each button or pad direction twice- once to set and a second time to confirm.

I'll edit my original post above.
 
Last edited by a moderator:
Ok, I tried a few parts of this. I like how the file selection is set up. In particular how you can choose another game after you've finished one (unlike Mupen64, for example), and how it remembers your download directory after you navigate to it once.

I tried GBA first, Advance Wars and Motocross Racing. It's unplayably slow at 850Mhz, worse than VBA. It might have been bearable if there was automatic frameskip. As it is, it often goes from fullspeed to 3x slower.

Next I tried PCEngine. This seems to run fullspeed. (I only tried Klax... I don't have many PCE games on hand)

Would it be possible to map "save" and "load" to the keyboard letters S and L as well? It just seems a bit easier to remember and more reachable (you don't need to press two keys as you do for F5/7).

EDIT: Tried Atari Lynx. I can't figure out what the controls are. ABXY don't seem to do anything. Enter pauses the game.
 
pder said:
CFWhitman said:
I have a question: Can the controls for the various systems be tweaked by the user in the configuration file if he so desires? (I noticed the configuration file is there in Mednafen-pce, but I hadn't gotten around to saving a copy and experimenting with changing it.)

Yes you can edit the config file, but actually the easiest way is to start the emulator and press Shift-Alt-1 and it will prompt you to configure the controls. You have to press each button or pad direction twice- once to set and a second time to confirm.

I'll edit my original post above.

Yes, I just found that in the documentation at the Mednafen homepage too. :) Thanks very much for the reply, though.

Incidentally, I think the second button press is actually so you can set an alternate button for the function as well. I prefer not to do this, though, so I do just press each button I want to use twice.
 
Last edited by a moderator:
Esn said:
Ok, I tried a few parts of this. I like how the file selection is set up. In particular how you can choose another game after you've finished one (unlike Mupen64, for example), and how it remembers your download directory after you navigate to it once.

I tried GBA first, Advance Wars and Motocross Racing. It's unplayably slow at 850Mhz, worse than VBA. It might have been bearable if there was automatic frameskip. As it is, it often goes from fullspeed to 3x slower.

Next I tried PCEngine. This seems to run fullspeed. (I only tried Klax... I don't have many PCE games on hand)

Would it be possible to map "save" and "load" to the keyboard letters S and L as well? It just seems a bit easier to remember and more reachable (you don't need to press two keys as you do for F5/7).

EDIT: Tried Atari Lynx. I can't figure out what the controls are. ABXY don't seem to do anything. Enter pauses the game.

As pder mentioned in his post above in reply to my original question, you should be able to fix the controls for the Lynx (or the first controller on any system) by loading a game for that system and pressing ALT/START+Shift+1 (additional controllers for systems that support them can be configured by pressing 2, 3, etc. instead of one)

I don't have my Lynx ROMs with me at the moment, so I won't by trying that out with the Lynx until I get home.

Edit: You should be able to set different (or perhaps additional) keys for save and load in the configuration file with the "command.save_state" and "command.load_state" properties. I'm not certain offhand what keyboard values would represent "S" and "L" though.
 
Last edited by a moderator:
skeezix said:
I didn't look yet (at work) .. did you include any text documentation in the pnd? (ie: <info ...)?

jeff

I included the main mednafen html documentation with:

<info name="Mednafen Documentation" type="text/html" src="mednafen.html"/>

The main additional thing I think I should document in the pnd are the default controls. Any feedback on what the default controls should be particularly with lynx and wonderswan would be helpful.
 
Last edited by a moderator:
You should upload this to the Repo.

EDIT: NES games? Overclocking? Shame on you!

EDIT II: Any chance of improving sound and speed for Virtual Boy? Do so and I'll sell my collection!
 
I couldn't get this to work no matter what system I tried.

As soon as I select a ROM it just dumps out to minimenu. What is the trick? Does it need to be in a special place or something?
 
DaveC said:
I couldn't get this to work no matter what system I tried.

As soon as I select a ROM it just dumps out to minimenu. What is the trick? Does it need to be in a special place or something?

Not sure without more information. It works fine for me using minimenu or xfce. Could you post the contents of the file /tmp/pndrun_mednafen.out?
 
Last edited by a moderator:
It's worked for me with each system I've tried (PC Engine, Lynx, Neo Geo Pocket Color, Gameboy, NES). If you are on Hotfix 5, and assuming you opened a supported ROM in a supported format, then maybe you got a bad download? I don't know.

It only needs BIOS files for PC Engine CDs and Lynx files as far as I've seen.
 
You've got a great thing going here. Is optimization a possibility? Or a better interface?
 
pder said:
The main additional thing I think I should document in the pnd are the default controls. Any feedback on what the default controls should be particularly with lynx and wonderswan would be helpful.

Well, there are several button layouts for the Lynx that make a certain amount of sense, but because different Lynx software makers had a propensity for switching around the button configuration for jump and shoot on platform games, and that is really annoying, this is my preferred layout to compensate for that.

START/ALT = Pause (SELECT = Pause would also work).
A = B
B = B
X = A
Y = A
L = Option 2
R = Option 1 (possibly the option buttons could be reversed)

Some may call this crazy, I don't know. :)
 
Last edited by a moderator:
Back
Top