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
2012-11-26 20:27:35 +10:00
android Some UI code cleanup. Another variant of ease curve function. RebindTexture. 2012-11-22 18:41:04 +01:00
audio Reindent (->tabs) 2012-10-30 13:20:55 +01:00
base Use new defines: USING_GLES2, ARM and add iOS support. 2012-11-26 20:27:35 +10:00
data Listable, json tweaks 2012-06-03 17:24:33 +02:00
ext Project cleanup 2012-11-22 18:55:39 +01:00
file MacOSX build fix 2012-11-25 12:24:26 +01:00
gfx Use new defines: USING_GLES2, ARM and add iOS support. 2012-11-26 20:27:35 +10:00
gfx_es2 Use new defines: USING_GLES2, ARM and add iOS support. 2012-11-26 20:27:35 +10:00
image Add missing include 2012-11-20 18:27:24 +00:00
input Various 2012-10-31 20:42:43 +01:00
json Reindent (->tabs) 2012-10-30 13:20:55 +01:00
math Use new defines: USING_GLES2, ARM and add iOS support. 2012-11-26 20:27:35 +10:00
midi warnin fixin 2012-07-09 01:11:18 +02:00
net Fixes for compatibility with FreeBSD 2012-11-18 21:41:44 -03:00
profiler Tabs unification 2012-05-08 22:04:24 +02:00
tools Fix vcxproj files so things build again. 2012-11-24 09:16:46 -08:00
ui Add OpenGL state cache to save some redundant state change. 2012-11-24 15:19:08 +01:00
util GM RNG can now generate FP numbers 2012-10-31 13:57:35 +01:00
.gitignore Add ant build 2012-11-18 23:58:16 +01:00
Android.mk Add -DARM and -DUSING_GLES2 to standalone makefiles. 2012-11-26 09:06:07 +01:00
LICENSE.TXT Update README and add LICENSE 2012-03-31 10:32:57 +02:00
native.vcxproj Add OpenGL state cache to save some redundant state change. 2012-11-24 15:19:08 +01:00
native.vcxproj.filters Fix vcxproj files so things build again. 2012-11-24 09:16:46 -08:00
README.md Add MIDI Input support (Windows only). 2012-04-12 12:52:55 +02: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 loading 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.
  • etcpack by Ericsson, in a cleaned up form. Has strange license but not very limiting - you can only use the code for making textures for hardware supporting ETC1, or something like that. Don't think it affects the rest of the code in any way.
  • 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<64>rd