libretro / gambatte-libretro

Hard fork of Gambatte to the libretro API.
http://sourceforge.net/projects/gambatte/
GNU General Public License v2.0
104 stars 78 forks source link

Broken portability #95

Closed hi-ban closed 6 years ago

hi-ban commented 6 years ago

When trying to build core without__LIBRETRO__ flag, we get the following errors:

src/gambatte-memory.h:61:2: error: 'class gambatte::Cartridge' has no member named 'loadSavedata' void loadSavedata() { cart.loadSavedata(); } src/gambatte-memory.h:62:2: error: 'class gambatte::Cartridge' has no member named 'saveSavedata' void loadSavedata() { cart.loadSavedata(); }

Seems that at some point portability was broken. No idea how many more functions are missing, as the build process just stops there.

andres-asm commented 6 years ago

Why would you build our fork without LIBRETRO?

hi-ban commented 6 years ago

There are other projects (non-libretro) which use the gambatte core, and i'd like to use an updated gambatte core instead of an old one from 2009. (if possible)

The reasons behind choosing to use an updated one instead of the old one from 2009 are possible new fixes and bootloader support.

meepingsnesroms commented 6 years ago

What are you trying to do with it, could you compile it with libretro and just make a small libretro wrapper?

Libretro just remaps basic functions in a standardized way so if staticly linked the libretro bindings would just be optimized out.

hi-ban commented 6 years ago

My intention was to port it to a linux handheld console (GCW Zero), but using a custom menu and features optimized for that handheld. Most (if not all) of the cool libretro stuff (like the shaders) wouldn't work properly on this handheld anyway.

Anyway, i ended up taking the original gambatte core from Sinamas and porting cherry-picked features from the libretro core into the original one.

inactive123 commented 6 years ago

This fork's only purpose is to serve as a libretro core. That is the only target it's supporting. We want to promote and encourage the use of libretro frontends, of which RetroArch is but one example.