syscall.h 790 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // Copyright 2014 Citra Emulator Project
  2. // Licensed under GPLv2
  3. // Refer to the license.txt file included.
  4. #pragma once
  5. #include "common/common_types.h"
  6. ////////////////////////////////////////////////////////////////////////////////////////////////////
  7. // SVC structures
  8. struct MemoryInfo {
  9. u32 base_address;
  10. u32 size;
  11. u32 permission;
  12. u32 state;
  13. };
  14. struct PageInfo {
  15. u32 flags;
  16. };
  17. struct ThreadContext {
  18. u32 cpu_registers[13];
  19. u32 sp;
  20. u32 lr;
  21. u32 pc;
  22. u32 cpsr;
  23. u32 fpu_registers[32];
  24. u32 fpscr;
  25. u32 fpexc;
  26. };
  27. ////////////////////////////////////////////////////////////////////////////////////////////////////
  28. // Namespace Syscall
  29. namespace Syscall {
  30. typedef u32 Handle;
  31. typedef s32 Result;
  32. void Register();
  33. } // namespace