#include "register-manager.h" #include "register.h" #include #include using namespace std; RegisterManager::RegisterManager() { accumulator = std::make_shared>(Register("A")); x_index = make_shared>(Register("X")); y_index = make_shared>(Register("Y")); stack_pointer = make_shared>(Register("SP")); status_register = make_shared(StatusRegister()); program_counter = make_shared>(Register("PC")); } shared_ptr> RegisterManager::get_accumulator() { return accumulator; } shared_ptr> RegisterManager::get_x_index() { return x_index; } shared_ptr> RegisterManager::get_y_index() { return y_index; } shared_ptr> RegisterManager::get_stack_pointer() { return stack_pointer; } shared_ptr RegisterManager::get_status_register() { return status_register; } shared_ptr> RegisterManager::get_program_counter() { return program_counter; }