Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore type-safety in low-level programming through the lens of modern C++ in game console emulators. Delve into the challenges of balancing code optimization for stable frame rates with complex hardware emulation logic. Learn how to leverage compile-time programming techniques to revitalize the type system when working with untyped data, focusing on the Nintendo 3DS kernel interface. Discover the power of declarative interfaces in documenting hardware expressively while ensuring consistent implementation without compromising maintainability or performance. Examine concrete examples including the system call interface, inter-process communication, and data serialization. Gain insights into process communication, client-server architecture, and file reading implementations. Investigate active processes, recursion techniques, code generation, and constant expressions. Analyze decoding and encoding methods, collaborative interfaces, and template structures. Understand the importance of decoupling in emulator development and how modern C++ can address the unique challenges of console emulation.
Syllabus
Introduction
Who am I
What is this about
Emulation
Examples
Example
Nintendo 3DS
Process communication
Clientserver architecture
Read file example
Read file implementation
Active processes
Advantages
Implementation
Recursion
Generating the code
Constant exper
Decode
Demo
Encoding
Oneliner
Collaborative interface
Template structure
Generator structure
What is this for
Decouple
Taught by
NDC Conferences