C++Now 2018 has ended
Back To Schedule
Tuesday, May 8 • 4:30pm - 6:00pm
Generative Programming in Action: Emulating the 3DS

Log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Console emulation needs to stem the difficult balance between optimizing code for stable frame rates and maintaining the complex logic required to emulate the given hardware - any subtle bug in this system easily manifests in a user-visible glitch. How can modern C++ help?

Using the toolbox of generative programming, we take a look at the interprocess communication subsystem of the 3DS and see how far variadic templates, function reflection, and some metaprogramming will get us in terms of bridging the gap between performance, maintainability, and correctness.

Based on this example I will introduce the general idea of generators and declarative interfaces, and how we can use them in serialization-like problems to provide reusable and customizable functionality with a uniform API that minimizes boilerplate code.

avatar for Tony Wasserka

Tony Wasserka

Low-level anything: Tony is a consultant and long-term C++ enthusiast who has worked on the console emulator projects Dolphin (GameCube/Wii), PPSSPP (PSP), and Mikage (3DS) since 2010. More recently, he has worked on Vulkan graphics drivers for PowerVR graphics processors. His main... Read More →

Tuesday May 8, 2018 4:30pm - 6:00pm MDT
Hudson Commons