nesdev.com
http://forums.nesdev.com/

GGVm: Port, Package, and Protect NES rom for PC, Mobile
http://forums.nesdev.com/viewtopic.php?f=3&t=15373
Page 2 of 4

Author:  tepples [ Thu Mar 02, 2017 7:01 am ]
Post subject:  Re: GGVm: Port, package, and protect NES rom to PC, Mobile

GradualGames wrote:
tepples wrote:
do you plan to offer a mode that exposes touch coordinates directly to the emulated game, for things like in-game menus and Thwaite?

That's a fun idea. It's certainly possible. I guess games which use a mouse peripheral would benefit from that perhaps (I thought I heard about a game in development which uses a mouse somehow).

Thwaite and Sliding Blaster support the Super NES Mouse. Some eastern games support a Subor Mouse. Oeka Kids has a tablet. But even in games that primarily use a standard controller, touch mode would be ideal for things like menus.

Author:  GradualGames [ Fri Mar 03, 2017 7:50 am ]
Post subject:  Re: GGVm: Port, package, and protect NES rom to PC, Mobile

Here's The Legends of Owlia (demo) packaged up in GGVm for Android. Once I realized running the cpu in a background thread was actually causing worse performance on Android, I tore all that out and now its running even better on an old phone of mine. Premature optimization is the root of all evil.

Download The Legends of Owlia DEMO APK

Author:  GradualGames [ Tue Mar 07, 2017 8:42 pm ]
Post subject:  Re: GGVm: Port, package, and protect NES rom to PC, Mobile

Thanks to the efforts of KHAN Games, we have confirmed GGVm works well on iOS as well. All promised platforms accounted for. Now I just need to get myself an iOS device so I can really iron out the touch controls for mobile.

Author:  GradualGames [ Tue Mar 14, 2017 6:26 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

GGVm is now on github. The project is still under active development and all new commits will go there. You are welcome to contribute to the project. I am still happy to help people adapt their games to GGVm so that they do not need to ramp up on the code, and have been doing this on a volunteer or donation basis.

Author:  YoukaiCountry [ Wed Mar 15, 2017 3:55 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

This is a really cool project. In fact, one of my goals when I originally started development on my emulator was to allow it to be used for homebrew PC adaptations. (I am using gradle / libGDX as well for just that reason!)
I'm still a ways off from mine being nearly user friendly enough though!

Author:  GradualGames [ Wed Mar 15, 2017 5:14 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

YoukaiCountry wrote:
This is a really cool project. In fact, one of my goals when I originally started development on my emulator was to allow it to be used for homebrew PC adaptations. (I am using gradle / libGDX as well for just that reason!)
I'm still a ways off from mine being nearly user friendly enough though!


Thanks! I noticed your project just a few days ago, and that you're also using LibGDX. As you see, GGVm makes absolutely no attempt at being cycle-accurate. The huge shortcuts I took make it fairly limited with respect to how many NES games it can play, but my focus was 100% on the homebrew community anyway whose needs are (in general) small subset of what the NES can do. The neat thing is, this gets me really good performance on the games it can support, even on somewhat oldish Android devices. I have a 3 year old Moto X I'm getting smooth 60fps play on. I'd be really curious to know whether a cycle accurate emulator in java could perform just as well on such devices...if it can, then I think you'd have an opportunity to provide something to the homebrew community which would be admittedly much superior to ggvm as no fiddling with adapters would be required to get a game up and running (I don't even do apu emulation). If not...then I'm hoping maybe somebody will put together a suite of native emulators for all the major platforms, and a shell for packaging up and encrypting a ROM with it, and include one totally permissive license with the whole thing. I'm not sure how feasible each idea is, and I definitely don't want to explore them myself, so until that time GGVm will be there for people I suppose ;)

Author:  YoukaiCountry [ Wed Mar 15, 2017 5:32 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

Quote:
Thanks! I noticed your project just a few days ago, and that you're also using LibGDX. As you see, GGVm makes absolutely no attempt at being cycle-accurate. The huge shortcuts I took make it fairly limited with respect to how many NES games it can play, but my focus was 100% on the homebrew community anyway whose needs are (in general) small subset of what the NES can do. The neat thing is, this gets me really good performance on the games it can support, even on somewhat oldish Android devices. I have a 3 year old Moto X I'm getting smooth 60fps play on. I'd be really curious to know whether a cycle accurate emulator in java could perform just as well on such devices...if it can, then I think you'd have an opportunity to provide something to the homebrew community which would be admittedly much superior to ggvm as no fiddling with adapters would be required to get a game up and running (I don't even do apu emulation). If not...then I'm hoping maybe somebody will put together a suite of native emulators for all the major platforms, and a shell for packaging up and encrypting a ROM with it, and include one totally permissive license with the whole thing. I'm not sure how feasible each idea is, and I definitely don't want to explore them myself, so until that time GGVm will be there for people I suppose ;)


As an aspiring homebrew developer myself, I'd love to be able to turn my emulator into something that can help people out! And I'm definitely watching this project with interest.

The performance in ANy-Yes certainly suffers on lower-end devices, but I actually have a non-cycle-accurate CPU in development, and that one performs much better at the cost of some compatibility. I started on the faster core with android performance in mind, and intend to make a fast PPU as well.

Author:  tokumaru [ Wed Mar 15, 2017 7:44 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

GradualGames wrote:
I have a 3 year old Moto X I'm getting smooth 60fps play on.

You talk of a 3 year old Moto X as if it was a particularly underpowered device... but I used to play NES and Genesis games at full speed on a low end LG phone back back in 2012.

Author:  GradualGames [ Wed Mar 15, 2017 7:54 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

tokumaru wrote:
GradualGames wrote:
I have a 3 year old Moto X I'm getting smooth 60fps play on.

You talk of a 3 year old Moto X as if it was a particularly underpowered device... but I used to play NES and Genesis games at full speed on a low end LG phone back back in 2012.


It's simply the oldest I have tested. For all I know ggvm would run decently on something older due to how little emulation it actually does. I'm well aware native emulators produce the best results; this project was the result of a "what if..." thought on my part and it wound up being useful to me and apparently quite a few others in the scene. I'd love to see something similar be made that is all native.

Funny thing is though people throw out phones so fast it may be a moot point anyway...

Author:  tokumaru [ Wed Mar 15, 2017 7:58 pm ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

GradualGames wrote:
Funny thing is though people throw out phones so fast it may be a moot point anyway...

True. They aren't built to last anyway...

Author:  Bregalad [ Thu Mar 16, 2017 1:16 am ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

Interesting. I am however surprised by the lack of "features", i.e. have to require to game-specific hacks for raster timing and playing OGG files for audio. It sounds quite chep, there's probably some emulators with GNU licences allowing re-use without asking anyone for permission... or isn't there any ?!

Quote:
-Smooth 60fps play on pc systems up to ~8 years old

Quote:
You talk of a 3 year old Moto X as if it was a particularly underpowered device... but I used to play NES and Genesis games at full speed on a low end LG phone back back in 2012.

I used to play NES games full speed with Nesticle running on a 486 PC...

Quote:
-Due to coding audio adapter, you can gut sound-engine. Thus if anyone extracts your ROM, it'll have no audio and they wasted their time.

Unless they're deaf.

Author:  GradualGames [ Thu Mar 16, 2017 6:00 am ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

Bregalad wrote:
Interesting. I am however surprised by the lack of "features", i.e. have to require to game-specific hacks for raster timing and playing OGG files for audio. It sounds quite chep, there's probably some emulators with GNU licences allowing re-use without asking anyone for permission... or isn't there any ?!


I imagine there are probably plenty with appropriate licensing---however, I think the barrier for me and probably many homebrewers who would like to use an emulator to distribute their game is simply how to wrap it up in a standalone executable, rather than distributing the emulator and game separately with some kind of launcher script. The second barrier is doing this for several popular modern platforms. When I began on ggvm, I was not aware of any existing solution which could do this, and I don't think there are any others at the moment. I'll be the first to say I'd love to see this niche filled by a suite of native emulators (one for pc, mac, linux, android, ios) and some kind of tool that makes it easy to package up and encrypt a rom into a standalone. That'd be the ideal solution for what homebrewers need for publishing. Since emulation has already been pretty much perfected, if any emulator authors are looking for a niche, replacing ggvm with native emulators, equally permissive license, and no-hack convenience is definitely an opportunity for them. So far, the only solutions I am aware of involved forking over money or royalties to the emulator author. Not that there's anything wrong with that, but I wanted to set myself and fellow homebrewers free of such obligations ;)

Quote:
Quote:
-Smooth 60fps play on pc systems up to ~8 years old

Quote:
You talk of a 3 year old Moto X as if it was a particularly underpowered device... but I used to play NES and Genesis games at full speed on a low end LG phone back back in 2012.

I used to play NES games full speed with Nesticle running on a 486 PC...


I'm not that young you know :D I also used Nesticle, but on a Pentium 133. ;)

Quote:
Quote:
-Due to coding audio adapter, you can gut sound-engine. Thus if anyone extracts your ROM, it'll have no audio and they wasted their time.

Unless they're deaf.


:lol:

Author:  Bregalad [ Thu Mar 16, 2017 6:10 am ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

GradualGames wrote:
So far, the only solutions I am aware of involved forking over money or royalties to the emulator author.

Once again, I'm surprised to hear that. It might not be the most accurate emu of all time, but I'm pretty sure FCEUx has been modified by many 3rd parties persons, and it's available on linux, so probably it's licence would allow you to do that. If I understand well, it it's licenced with GPL you'd have to release your game using GPL which is restrictive, however if it's LGPL you can re-use work under any licence you like.

Author:  GradualGames [ Thu Mar 16, 2017 6:18 am ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

Bregalad wrote:
GradualGames wrote:
So far, the only solutions I am aware of involved forking over money or royalties to the emulator author.

Once again, I'm surprised to hear that. It might not be the most accurate emu of all time, but I'm pretty sure FCEUx has been modified by many 3rd parties persons, and it's available on linux, so probably it's licence would allow you to do that. If I understand well, it it's licenced with GPL you'd have to release your game using GPL which is restrictive, however if it's LGPL you can re-use work under any licence you like.

A lot of homebrewers, myself included, don't even really like fiddling with native projects, even building them from source. What we need is somebody to take fceux or any emulator with appropriate licensing, for multiple platforms, and create some kind of shell for encrypting a rom with the emulator as a standalone binary.

There's a possibility there's still a barrier of some digital distribution platforms not allowing console emulators. With GGVm, you can tell the truth when you say: "It isn't an emulator."

Author:  Sour [ Thu Mar 16, 2017 6:22 am ]
Post subject:  Re: GGVm: Port, Package, and Protect NES rom for PC, Mobile

GradualGames wrote:
I imagine there are probably plenty with appropriate licensing
A bit offtopic but: Personally, I think pretty much any NES emulator ends up being GPL whether they like it or not. There is so much information, even on the wiki (How many times have you read "FCEUX's code does this", "Nestopia's code does that" while reading the wiki?), that is extracted from the source of current GPL-licensed emulators that it pretty much makes it impossible to not release an emulator as GPL (unless you just ignore the license's restrictions).

I'm not trying to act as the GPL police here, and to be honest, I don't really care what people do.
It is the reason why Mesen is released under GPL though (instead of say MIT) - because I cannot honestly claim that no GPL code has helped its development, and that is enough to force me to license it as GPL.

Page 2 of 4 All times are UTC - 7 hours
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/