pica.cpp 628 B

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright 2015 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #include <cstring>
  5. #include "video_core/pica.h"
  6. #include "video_core/pica_state.h"
  7. #include "video_core/regs_pipeline.h"
  8. namespace Pica {
  9. State g_state;
  10. void Init() {
  11. g_state.Reset();
  12. }
  13. void Shutdown() {
  14. Shader::Shutdown();
  15. }
  16. template <typename T>
  17. void Zero(T& o) {
  18. memset(&o, 0, sizeof(o));
  19. }
  20. void State::Reset() {
  21. Zero(regs);
  22. Zero(vs);
  23. Zero(gs);
  24. Zero(cmd_list);
  25. Zero(immediate);
  26. primitive_assembler.Reconfigure(PipelineRegs::TriangleTopology::List);
  27. }
  28. }