A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
Go to file
2014-06-03 09:03:09 +10:00
android Some input tweaks and UI utility functions 2014-05-19 23:28:11 +02:00
audio Unicode prep 2013-08-26 18:59:08 +02:00
base Buildfix Qt5 mobile platforms such as Android. 2014-06-03 09:03:09 +10:00
data Unicode prep 2013-08-26 18:59:08 +02:00
ext Switch to libpng17 to resolve NEON issue on iOS + other bug fixes. 2014-05-31 04:37:31 +10:00
file Use @unknownbrackets fix 2014-04-24 06:36:34 +08:00
gfx Remove MAY_HAVE_GLES3 2014-06-02 12:08:29 +10:00
gfx_es2 Remove MAY_HAVE_GLES3 2014-06-02 12:08:29 +10:00
i18n Fix bad tab. 2014-02-12 18:48:09 -05:00
image Switch to libpng17 to resolve NEON issue on iOS + other bug fixes. 2014-05-31 04:37:31 +10:00
input make enum identifiers for all pad numbers, add a constant for the max number of pads and add string names for each identifier 2014-06-01 11:38:15 +02:00
json Add drag capturing (useful to resolve conflicts between scrollviews and draggable controls within) 2014-01-31 14:32:06 +01:00
math Introduce arch.h, which provides the MSVC compatible arch defines on other platforms. 2014-04-17 00:05:34 +02:00
midi Unicode prep 2013-08-26 18:59:08 +02:00
net Make it just a bit more drop-in compatible. 2014-02-09 21:56:34 -08:00
profiler Tabs unification 2012-05-08 22:04:24 +02:00
thread Warning fix, delete broken Wait function in prio work queue 2013-12-12 12:07:09 +01:00
tools Update everything to libpng17 (even atlastool). 2014-05-31 05:13:47 +10:00
ui Some input tweaks and UI utility functions 2014-05-19 23:28:11 +02:00
util Add encodeUnits() to utf8/utf16/sjis. 2014-05-03 13:13:23 -07:00
.gitignore define changes for mac from vit6969. 2013-05-06 23:30:34 +02:00
Android.mk Update everything to libpng17 (even atlastool). 2014-05-31 05:13:47 +10:00
LICENSE.TXT Update README and add LICENSE 2012-03-31 10:32:57 +02:00
native.vcxproj Update everything to libpng17 (even atlastool). 2014-05-31 05:13:47 +10:00
native.vcxproj.filters Update everything to libpng17 (even atlastool). 2014-05-31 05:13:47 +10:00
README.md Switch out etcpack with the ZLIB licensed rg_etc1 library 2013-03-29 13:53:04 +01:00

native

This is my library of stuff that I use when writing C++ programs, mostly for Android but it's all written to enable easy portability between Android, Linux, Windows and MacOSX. The code is part ugly, part inconsistent but quite useful.

Features

  • JSON read/write (two libraries that should be made more similar)
  • basic OpenGL utility code, like compressed texture loading
  • 2D texture atlases and drawing code
  • ETC1 texture save/load support
  • basic logging
  • Really simple audio mixer with OGG sample support
  • RIFF file read/write
  • MIDI Input (only on Windows)

Notes

  • The associated tools to create ZIM texture files and atlases do not yet live here but I might move them here eventually.
  • This library is not really meant to be a public library but I see no reason not to set it free.
  • Note that the included VS project is probably not very useful for you and you're likely better off making your own.
  • Don't complain about inconsistent naming etc - this consists of code that has been cobbled together from a variety of my projects through the years. Fashions come and go.

Licenses

This library, for my convenience, incorporates code from a variety of public domain or similarly-licensed code. This is the list:

  • glew (GL extension wrangler), MIT license. TODO: should just use a submodule.
  • rg_etc1. ZLIB license.
  • sha1, public domain implementation by Dominik Reichl
  • vjson in a heavily modified form, originally by Ivan Vashchaev (TODO: break out into its own repo?)
  • libzip with attribution "Copyright (C) 1999-2007 Dieter Baron and Thomas Klausner"
  • stb_vorbis, public domain by Sean Barrett of RAD Tools

If you're not okay with the licenses above, don't use this code.

I hereby release all code here not under the licenses above under the MIT license.

Contact

If you find this useful for your own projects, drop me a line at hrydgard@gmail.com .

Henrik Rydgård