PCSX2 Documentation/Contributing To-Do List: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
Line 28: | Line 28: | ||
==House keeping and general compilation== | ==House keeping and general compilation== | ||
* Clean up warnings | * Clean up warnings | ||
#Same as gcc flags but without the need of complete test. | |||
* Clean up GCG flags | * Clean up GCG flags | ||
#Put default global flags in cmake/BuildParameters.cmake\\ | |||
#Try to use standard flags as much as possible (aka On). Extensive tests must be done to validate a flag update. | |||
* Support clang (dev build/run without crash) => started by urushima | * Support clang (dev build/run without crash) => started by urushima | ||
* Speed comparison clang/GCC | * Speed comparison clang/GCC |
Revision as of 22:55, 8 January 2015
Contributing
- Be patient
- Your contribution will gladly be reviewed but free time is an expensive resource
- Discuss your future contribution with us before coding it
- Let's avoid duplicate work! Besides, the specification could be clarified this way.
QA / Portability
- Port GSThread to std::thread => started by krysto
- Port core thread to std::thread
- C11 aligned_alloc
- C++11 alignof/alignas syntax
- Replace volatile/lock-free queue with real C++ atomic
- [C++11 auto port](http://clang.llvm.org/extra/clang-modernize.html). Initial requirement: drop XP and support clang/llvm
- [Clean header include](https://code.google.com/p/include-what-you-use/). Investigate.
- Address sanitizer (gcc or clang) and others sanitizer.
- Valgrind (not sure it can run PCSX2, maybe limit the scope to plugin)
- Reformat the core/plugin to a constant style with tool like astyle
- Support Windows/OSX in CMake
GUI
- support wx3.0 => linux port is done but windows part is not ready yet.
- check linux chapter ;) Various improvements are actually cross platform!
Linux
You're welcome to the [Linux contribution thread](http://forums.pcsx2.net/Thread-Areas-of-interest-for-new-linux-developers) to have full details. Here is a handy list of features need implementation. Feel free to propose new ones.
House keeping and general compilation
- Clean up warnings
- Same as gcc flags but without the need of complete test.
- Clean up GCG flags
- Put default global flags in cmake/BuildParameters.cmake\\
- Try to use standard flags as much as possible (aka On). Extensive tests must be done to validate a flag update.
- Support clang (dev build/run without crash) => started by urushima
- Speed comparison clang/GCC
- Support avx (gsdx) => Mostly done. Some compilation errors remain.
- Add missing/update copyright header
- LTO support => started by prudho
- PGO support
- Core
- Support XZ compressed ISOs
- GSdx
- Fix OpenGL. I would advice to compare dx trace vs OpenGL trace.
- Implement DX features on OGL (video recording ....)
- Test/Fix GLES3.1 (it often breaks after GL update)
- Add tooltip on gsdx gui
- Finish shader subroutine usage (+find a way to clean shader and avoid duplication)
- Finish buffer storage
- OSD => started by myself in a branch feel free to pick it up
- Gameplay recording
- CDVD
- Port CDVDgiga to linux ?
- zzogl
- Reduce GL requirement to 3.3 + gl4 extension
- Use multibind
- Fix EGL
- Port GLSL to window
- Drop old GLSL backend (and much later Nivida CG)
- Debian package
- Needs a refresh to the latest standard
- Clean debian/copyright => debmake -k
- Very long term features
Those features will require a lot of work, and an organized long-term effort.
- PS2 ROM reimplementation (wrongly named HLE bios)
- x86_64 port (x32 could yield better perf)
- Android X86 port
- Win/Linux ARM port
- OSX support