mirror of
https://github.com/open-goal/jak-project
synced 2026-07-02 12:36:42 -04:00
8cc63ff35c
* update VS launch target params * remove redundant VS launch option * Add a debug PS2 VM to the runtime, currently only for the DMAC * Formatting * remove broken assert * Avoid weird buffer overflow bug * Test on `VIF0_DMA_BANK`! * Add a docstring * patch pointers for the other dma channels * patch DMAC pointer * remove dead leftover code * Change default return value for `get_vm_ptr`
38 lines
570 B
C++
38 lines
570 B
C++
#pragma once
|
|
|
|
/*!
|
|
* @file vm.h
|
|
* Base "PS2 virtual machine" code.
|
|
* Simulates the existence of select PS2 components, for inspection & debugging.
|
|
* Not an emulator!
|
|
*/
|
|
|
|
#ifndef VM_H
|
|
#define VM_H
|
|
|
|
#include "common/common_types.h"
|
|
|
|
namespace VM {
|
|
|
|
extern bool use;
|
|
|
|
enum class Status { Disabled, Uninited, Inited, Kill, Dead };
|
|
|
|
void wait_vm_init();
|
|
void wait_vm_dead();
|
|
|
|
bool vm_want_exit();
|
|
|
|
void vm_prepare();
|
|
void vm_init();
|
|
void vm_kill();
|
|
|
|
void subscribe_component();
|
|
void unsubscribe_component();
|
|
|
|
u64 get_vm_ptr(u32 ptr);
|
|
|
|
} // namespace VM
|
|
|
|
#endif // VM_H
|