|
|
@ -129,11 +129,11 @@ public:
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
bool IsPoweredOn() const;
|
|
|
|
bool IsPoweredOn() const;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/// Gets a reference to the telemetry session for this emulation session.
|
|
|
|
* Returns a reference to the telemetry session for this emulation session.
|
|
|
|
Core::TelemetrySession& TelemetrySession();
|
|
|
|
* @returns Reference to the telemetry session.
|
|
|
|
|
|
|
|
*/
|
|
|
|
/// Gets a reference to the telemetry session for this emulation session.
|
|
|
|
Core::TelemetrySession& TelemetrySession() const;
|
|
|
|
const Core::TelemetrySession& TelemetrySession() const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Prepare the core emulation for a reschedule
|
|
|
|
/// Prepare the core emulation for a reschedule
|
|
|
|
void PrepareReschedule();
|
|
|
|
void PrepareReschedule();
|
|
|
@ -144,24 +144,36 @@ public:
|
|
|
|
/// Gets an ARM interface to the CPU core that is currently running
|
|
|
|
/// Gets an ARM interface to the CPU core that is currently running
|
|
|
|
ARM_Interface& CurrentArmInterface();
|
|
|
|
ARM_Interface& CurrentArmInterface();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets an ARM interface to the CPU core that is currently running
|
|
|
|
|
|
|
|
const ARM_Interface& CurrentArmInterface() const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets the index of the currently running CPU core
|
|
|
|
/// Gets the index of the currently running CPU core
|
|
|
|
std::size_t CurrentCoreIndex();
|
|
|
|
std::size_t CurrentCoreIndex() const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets the scheduler for the CPU core that is currently running
|
|
|
|
/// Gets the scheduler for the CPU core that is currently running
|
|
|
|
Kernel::Scheduler& CurrentScheduler();
|
|
|
|
Kernel::Scheduler& CurrentScheduler();
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets an ARM interface to the CPU core with the specified index
|
|
|
|
/// Gets the scheduler for the CPU core that is currently running
|
|
|
|
|
|
|
|
const Kernel::Scheduler& CurrentScheduler() const;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a reference to an ARM interface for the CPU core with the specified index
|
|
|
|
ARM_Interface& ArmInterface(std::size_t core_index);
|
|
|
|
ARM_Interface& ArmInterface(std::size_t core_index);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a const reference to an ARM interface from the CPU core with the specified index
|
|
|
|
|
|
|
|
const ARM_Interface& ArmInterface(std::size_t core_index) const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a CPU interface to the CPU core with the specified index
|
|
|
|
/// Gets a CPU interface to the CPU core with the specified index
|
|
|
|
Cpu& CpuCore(std::size_t core_index);
|
|
|
|
Cpu& CpuCore(std::size_t core_index);
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a CPU interface to the CPU core with the specified index
|
|
|
|
/// Gets a CPU interface to the CPU core with the specified index
|
|
|
|
const Cpu& CpuCore(std::size_t core_index) const;
|
|
|
|
const Cpu& CpuCore(std::size_t core_index) const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets the exclusive monitor
|
|
|
|
/// Gets a reference to the exclusive monitor
|
|
|
|
ExclusiveMonitor& Monitor();
|
|
|
|
ExclusiveMonitor& Monitor();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a constant reference to the exclusive monitor
|
|
|
|
|
|
|
|
const ExclusiveMonitor& Monitor() const;
|
|
|
|
|
|
|
|
|
|
|
|
/// Gets a mutable reference to the GPU interface
|
|
|
|
/// Gets a mutable reference to the GPU interface
|
|
|
|
Tegra::GPU& GPU();
|
|
|
|
Tegra::GPU& GPU();
|
|
|
|
|
|
|
|
|
|
|
@ -230,6 +242,9 @@ private:
|
|
|
|
/// Returns the currently running CPU core
|
|
|
|
/// Returns the currently running CPU core
|
|
|
|
Cpu& CurrentCpuCore();
|
|
|
|
Cpu& CurrentCpuCore();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/// Returns the currently running CPU core
|
|
|
|
|
|
|
|
const Cpu& CurrentCpuCore() const;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Initialize the emulated system.
|
|
|
|
* Initialize the emulated system.
|
|
|
|
* @param emu_window Reference to the host-system window used for video output and keyboard
|
|
|
|
* @param emu_window Reference to the host-system window used for video output and keyboard
|
|
|
|