7 changed files with 244 additions and 14 deletions
-
24src/akiru/src/akiru.h
-
3src/core/core.vcxproj
-
3src/core/core.vcxproj.filters
-
48src/core/src/core.cpp
-
70src/core/src/core.h
-
52src/core/src/mem_map.cpp
-
58src/core/src/mem_map.h
@ -1,2 +1,46 @@ |
|||
void null() { |
|||
} |
|||
/**
|
|||
* Copyright (C) 2013 Akiru Emulator |
|||
* |
|||
* @file core.cpp |
|||
* @author ShizZy <shizzy247@gmail.com> |
|||
* @date 2013-09-04 |
|||
* @brief Core of emulator |
|||
* |
|||
* @section LICENSE |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License as |
|||
* published by the Free Software Foundation; either version 2 of |
|||
* the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, but |
|||
* WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|||
* General Public License for more details at |
|||
* http://www.gnu.org/copyleft/gpl.html
|
|||
* |
|||
* Official project repository can be found at: |
|||
* http://code.google.com/p/gekko-gc-emu/
|
|||
*/ |
|||
|
|||
#include "core.h"
|
|||
|
|||
namespace Core { |
|||
|
|||
/// Start the core
|
|||
void Start() { |
|||
} |
|||
|
|||
/// Kill the core
|
|||
void Kill() { |
|||
} |
|||
|
|||
/// Stop the core
|
|||
void Stop() { |
|||
} |
|||
|
|||
/// Initialize the core
|
|||
int Init(EmuWindow* emu_window) { |
|||
return 0; |
|||
} |
|||
|
|||
} // namespace
|
|||
@ -0,0 +1,70 @@ |
|||
/** |
|||
* Copyright (C) 2013 Akiru Emulator |
|||
* |
|||
* @file core.h |
|||
* @author ShizZy <shizzy247@gmail.com> |
|||
* @date 2013-09-04 |
|||
* @brief Core of emulator |
|||
* |
|||
* @section LICENSE |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License as |
|||
* published by the Free Software Foundation; either version 2 of |
|||
* the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, but |
|||
* WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|||
* General Public License for more details at |
|||
* http://www.gnu.org/copyleft/gpl.html |
|||
* |
|||
* Official project repository can be found at: |
|||
* http://code.google.com/p/gekko-gc-emu/ |
|||
*/ |
|||
|
|||
#ifndef CORE_CORE_H_ |
|||
#define CORE_CORE_H_ |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
#include "common.h" |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
class EmuWindow; |
|||
|
|||
namespace Core { |
|||
|
|||
// State of the full emulator |
|||
typedef enum { |
|||
SYS_NULL = 0, ///< System is in null state, nothing initialized |
|||
SYS_IDLE, ///< System is in an initialized state, but not running |
|||
SYS_RUNNING, ///< System is running |
|||
SYS_LOADING, ///< System is loading a ROM |
|||
SYS_HALTED, ///< System is halted (error) |
|||
SYS_STALLED, ///< System is stalled (unused) |
|||
SYS_DEBUG, ///< System is in a special debug mode (unused) |
|||
SYS_DIE ///< System is shutting down |
|||
} SystemState; |
|||
|
|||
|
|||
/// Start the core |
|||
void Start(); |
|||
|
|||
/// Kill the core |
|||
void Kill(); |
|||
|
|||
/// Stop the core |
|||
void Stop(); |
|||
|
|||
/// Initialize the core |
|||
int Init(EmuWindow* emu_window); |
|||
|
|||
extern SystemState g_state; ///< State of the emulator |
|||
extern bool g_started; ///< Whether or not the emulator has been started |
|||
|
|||
} // namespace |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
#endif // CORE_CORE_H_ |
|||
@ -0,0 +1,52 @@ |
|||
/**
|
|||
* Copyright (C) 2013 Akiru Emulator |
|||
* |
|||
* @file mem_map.cpp |
|||
* @author ShizZy <shizzy247@gmail.com> |
|||
* @date 2013-09-05 |
|||
* @brief Memory map - handles virtual to physical memory access |
|||
* |
|||
* @section LICENSE |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License as |
|||
* published by the Free Software Foundation; either version 2 of |
|||
* the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, but |
|||
* WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|||
* General Public License for more details at |
|||
* http://www.gnu.org/copyleft/gpl.html
|
|||
* |
|||
* Official project repository can be found at: |
|||
* http://code.google.com/p/gekko-gc-emu/
|
|||
*/ |
|||
|
|||
#include "mem_map.h"
|
|||
|
|||
namespace Memory { |
|||
|
|||
u8 Read8(const u32 addr) { |
|||
return 0xDE; |
|||
} |
|||
|
|||
u16 Read16(const u32 addr) { |
|||
return 0xDEAD; |
|||
} |
|||
|
|||
u32 Read32(const u32 addr) { |
|||
return 0xDEADBEEF; |
|||
} |
|||
|
|||
void Write8(const u32 addr, const u32 data) { |
|||
} |
|||
|
|||
void Write16(const u32 addr, const u32 data) { |
|||
} |
|||
|
|||
void Write32(const u32 addr, const u32 data) { |
|||
} |
|||
|
|||
|
|||
|
|||
} // namespace
|
|||
@ -0,0 +1,58 @@ |
|||
/** |
|||
* Copyright (C) 2013 Akiru Emulator |
|||
* |
|||
* @file mem_map.h |
|||
* @author ShizZy <shizzy247@gmail.com> |
|||
* @date 2013-09-05 |
|||
* @brief Memory map - handles virtual to physical memory access |
|||
* |
|||
* @section LICENSE |
|||
* This program is free software; you can redistribute it and/or |
|||
* modify it under the terms of the GNU General Public License as |
|||
* published by the Free Software Foundation; either version 2 of |
|||
* the License, or (at your option) any later version. |
|||
* |
|||
* This program is distributed in the hope that it will be useful, but |
|||
* WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
|||
* General Public License for more details at |
|||
* http://www.gnu.org/copyleft/gpl.html |
|||
* |
|||
* Official project repository can be found at: |
|||
* http://code.google.com/p/gekko-gc-emu/ |
|||
*/ |
|||
|
|||
#ifndef CORE_MEM_MAP_H_ |
|||
#define CORE_MEM_MAP_H_ |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
#include "common.h" |
|||
#include "common_types.h" |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
namespace Memory { |
|||
|
|||
extern u8* g_ram; |
|||
extern u8* g_vram; |
|||
|
|||
extern u32 g_memory_size; |
|||
extern u32 g_memory_mask; |
|||
|
|||
void Init(); |
|||
void Shutdown(); |
|||
|
|||
u8 Read8(const u32 addr); |
|||
u16 Read16(const u32 addr); |
|||
u32 Read32(const u32 addr); |
|||
|
|||
void Write8(const u32 addr, const u32 data); |
|||
void Write16(const u32 addr, const u32 data); |
|||
void Write32(const u32 addr, const u32 data); |
|||
|
|||
} // namespace |
|||
|
|||
//////////////////////////////////////////////////////////////////////////////////////////////////// |
|||
|
|||
#endif // CORE_MEM_MAP_H_ |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue