Massive refactoring of all code + audio skeleton.
This should make it easier to find files and (in the future) split things up into separate libraries. It also changes around emulator initialization to make it a little more difficult to do things out of order and a little more sensible as to when real init work happens. Also adding a skeleton audio system/driver and reworking CPU register access to be more extensible.
This commit is contained in:
40
src/xenia/cpu/ppc/registers.h
Normal file
40
src/xenia/cpu/ppc/registers.h
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
******************************************************************************
|
||||
* Xenia : Xbox 360 Emulator Research Project *
|
||||
******************************************************************************
|
||||
* Copyright 2013 Ben Vanik. All rights reserved. *
|
||||
* Released under the BSD license - see LICENSE in the root for more details. *
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
#ifndef XENIA_CPU_PPC_REGISTERS_H_
|
||||
#define XENIA_CPU_PPC_REGISTERS_H_
|
||||
|
||||
#include <xenia/common.h>
|
||||
|
||||
|
||||
namespace xe {
|
||||
namespace cpu {
|
||||
namespace ppc {
|
||||
|
||||
|
||||
typedef bool (*RegisterHandlesCallback)(void* context, uint32_t addr);
|
||||
typedef uint64_t (*RegisterReadCallback)(void* context, uint32_t addr);
|
||||
typedef void (*RegisterWriteCallback)(void* context, uint32_t addr,
|
||||
uint64_t value);
|
||||
|
||||
|
||||
typedef struct {
|
||||
void* context;
|
||||
RegisterHandlesCallback handles;
|
||||
RegisterReadCallback read;
|
||||
RegisterWriteCallback write;
|
||||
} RegisterAccessCallbacks;
|
||||
|
||||
|
||||
} // namespace ppc
|
||||
} // namespace cpu
|
||||
} // namespace xe
|
||||
|
||||
|
||||
#endif // XENIA_CPU_PPC_REGISTERS_H_
|
||||
@@ -10,6 +10,7 @@
|
||||
'instr.cc',
|
||||
'instr.h',
|
||||
'instr_tables.h',
|
||||
'registers.h',
|
||||
'state.cc',
|
||||
'state.h',
|
||||
],
|
||||
|
||||
@@ -13,12 +13,8 @@
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
namespace xe {
|
||||
namespace cpu {
|
||||
class Processor;
|
||||
class ThreadState;
|
||||
} // namespace cpu
|
||||
} // namespace xe
|
||||
XEDECLARECLASS2(xe, cpu, Processor);
|
||||
XEDECLARECLASS2(xe, cpu, ThreadState);
|
||||
|
||||
|
||||
// namespace FPRF {
|
||||
|
||||
Reference in New Issue
Block a user