Hello N64 fans. Now that v1.2 is out, and the major contribution that I wanted to make is done (64-bit dynamic recompiler), I wanted to start a thread here to discuss the future of this emulator project a little bit.
First, the potential new features. Günther has done some great work in porting the Glide64-wonder-plus video plugin to amd64. This is very valuable in adding a 3rd video output option (and a very good one) to the project, so I'll integrate this. I played with it a bit today and it shouldn't take too much work.
Another thing is OSX/PPC integration. I looked over the ported code in lamer0's repository, and I while I didn't check it out in depth, it looked like sort of a mess at first glance. Since I don't actually own a Mac, there's no way I can make this work by myself. If a developer (preferred) or tester who has a PPC mac and/or an x86 mac would step forward, then we could tackle this as well.
A couple of the other developers who have recently submitted code have also expressed a desire for their own new features, so there may be other changes and additions as well.
Finally, I would like to solicit ideas for a new project name. There are 2 main reasons for this. For one thing, a lot of people read the name "Mupen64-amd64" and don't realize that the project is backwards-compatible and still runs on 32-bit machines as well. Secondly, the project is growing to encompass more than just Mupen64: it also includes Rice Video and soon the Glide64 plugins. So it would be nice to have a new inclusive name for the project. Some possible things to consider:
* The project is multi-platform, but it's really geared towards Unix. I tried not to do anything to break Win32 compatibility, but since no-one is testing and building on this platform, it's probably becoming less compatible.
* The thing that really sets this project apart from all other N64 emulators is native support for 64-bit (AMD64/EMT64) processors. But it builds and runs under 32-bit as well.
* The name can be anything - it doesn't have to include "Mupen64" or "Rice Video" or anything like that. When I make releases I'll pay proper tribute to these projects, but it's really a collection and extension of these other projects.
So, I'd like to hear ideas from you. Anybody got a good idea for a cool name for a unix N64 emulator compilation?
Here's my 2 cents. I'm pretty new to this project, so hopefully I don't mention something that's already there:
RiceVideo doesn't work at all on my Unichrome graphics chipset, so obviously, my top priority is getting it to work. :-)
Add fast-forward function similar to zsnes.
Modify blight input plugin so special functions such as exit, fastforward, etc can be mapped to controller buttons/keyboard keys. FYI, I use mythtv and I have my other emu's setup so one of my controller buttons is mapped to exit.
Modify blight input plugin to fake analog stick for controllers that don't have analog control sticks. For example, in mario64, you could have it so the controller defaults to run (like it does currently), but you could assign it so holding down another button while using the controller will make mario walk instead of run.
Network play, including in-game voice chat. Mario Kart 64 battlemode anyone?
Either get one set of plugins (video, audio, rsp, input) to work as well as possible with all games and make that the default, or (more likely), make it so the emulator will automatically "know" which plugins to load depending on the ROM. Not sure if mupen already has something like this, but I'm sure it could be improved. I'm thinking of making it more automagic so newbies don't have to mess w/ the plugins if at all possible.
Minor UI issue: Currently, if no rom is loaded, I highlight a rom from the browser and then press the play button, it tells me no rom is loaded. It should load the highlighted rom and start playing it.
I'll post if I think of more. Feel free to comment.
Quote:
Originally Posted by Richard42
Finally, I would like to solicit ideas for a new project name. There are 2 main reasons for this. For one thing, a lot of people read the name "Mupen64-amd64" and don't realize that the project is backwards-compatible and still runs on 32-bit machines as well. Secondly, the project is growing to encompass more than just Mupen64: it also includes Rice Video and soon the Glide64 plugins. So it would be nice to have a new inclusive name for the project.
Agreed. Here are random thoughts:
nix64 or 64nix
LiN64 (kind of linux-centric, but I like the "N64" in the name...hopefully that's not a trademark violation)
munix64
muN64
em64 (playing with "emu" and the "N" sound of "N64")
Of those suggestions, LiN64 kinda jumped out at me. Anyone know if "N64" is trademarked and, if so, if that would cause problems with it being part of a name? (Even if that name isn't chosen it would still be good to know.)
Of those suggestions, LiN64 kinda jumped out at me. Anyone know if "N64" is trademarked and, if so, if that would cause problems with it being part of a name? (Even if that name isn't chosen it would still be good to know.)
From USPTO, the word mark "N64" is trademarked:
Word Mark N64
Goods and Services IC 028. US 022 023 038 050. G & S: electronic game equipment for playing video games [ and tutorials; electronic game programs; video game programs; and educational video game programs ]. FIRST USE: 19970619. FIRST USE IN COMMERCE: 19970619
Mark Drawing Code (1) TYPED DRAWING
Serial Number 75077622
Filing Date March 25, 1996
Current Filing Basis 1A
Original Filing Basis 1B
Published for Opposition November 19, 1996
Registration Number 2107868
Registration Date October 21, 1997
Owner (REGISTRANT) Nintendo of America Inc. CORPORATION WASHINGTON 4820 150th Avenue N.E. Redmond WASHINGTON 98052
Attorney of Record Jerald E. Nagae
Type of Mark TRADEMARK
Register PRINCIPAL
Affidavit Text SECT 15. SECT 8 (6-YR).
Live/Dead Indicator LIVE
I have no idea if this would prevent us from using "LiN64" though. OTOH, if we do get OSX compatibility then this name would be excluding Mac owners.
I have always considered your work as something that i will include in next mupen64 release. (Ok, i know, i'm a bit slow at developping right now... but i hope to improve that in a few months).
I wouldn't mind if you named it like it is the "experimental" or "unstable" or "developement" branch of mupen64. I don't like these words because your work seems fairly stable but you get the idea. If you want to have another name for your branch it's ok too.
Basically, when i'll merge your work with mine, i'll only check that you have not broken portability or that it's not interfering with something i'm planning to do in the future. Other than that i see no reason to reject anything you have done.
Anyway, i have a request.... if someone work on the OSX port. PLEASE add control configuration option. It'd prevent me answering 5 emails each day that ask how to use a controller on OSX :-p
I would suggest support for rumble and deadzone configuration. Currently blights input plugin configuration screen eats up 100% cpu time just by opening it (Mupen64-amd64 v1.2).
I would suggest support for rumble and deadzone configuration. Currently blights input plugin configuration screen eats up 100% cpu time just by opening it (Mupen64-amd64 v1.2).
People have made some good feature suggestions here; I'll add them to the TODO file. Regarding rumble, unfortunately SDL does not yet support that (though I think they plan to). Only after SDL has support for rumble can it be added to the Blight input plugin.
Quote:
Originally Posted by Hacktarux
I wouldn't mind if you named it like it is the "experimental" or "unstable" or "developement" branch of mupen64. I don't like these words because your work seems fairly stable but you get the idea. If you want to have another name for your branch it's ok too.
I'm thinking more along the lines of a name for the downstream project, of which I post the releases here. It's not just Mupen64, but also includes RiceVideoLinux and soon will include Glide64. I'll probably still call the Mupen64 component of this (my branch of Mupen64) "Mupen64-amd64" to differentiate this from your branch. I just would like to have a catchy name for the collection which doesn't suggest to people that it's only intended for 64-bit machines.
I second the desire to bind save state, exit, and the like to joystick in the input plugin.
I'd also like to see reasonable multi user support. We have a *nix app that can't be installed out of a users home folder. I imagine if we could make that work, then distros would be able to supply Mupen64, and I could just apt-get it.
I'd like to see some stability improvements, mostly in the UI, not in the emulation itself. Of course, that might require me reporting the bugs ;-).
And of course I want better compatibility, but I think that goes without saying, and is a constant thing. I'd like to see the Rice Video plugin support some of the render modes available in the Glide plugin, since Rice generally performs better on my box, but doesn't actually play all games. Still, that's pie in the sky.