Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions MarathonRecomp/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ set(MARATHON_RECOMP_UI_CXX_SOURCES
"ui/options_menu.cpp"
"ui/options_menu_thumbnails.cpp"
"ui/tv_static.cpp"
"ui/devtitle_menu.cpp"
)

set(MARATHON_RECOMP_INSTALL_CXX_SOURCES
Expand Down
10 changes: 10 additions & 0 deletions MarathonRecomp/api/Marathon.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,10 @@
#include "Sonicteam/CsdManager.h"
#include "Sonicteam/CsdObject.h"
#include "Sonicteam/CsdResource.h"
#include "Sonicteam/DevTitleMode.h"
#include "Sonicteam/DocMarathonImp.h"
#include "Sonicteam/DocMarathonState.h"
#include "Sonicteam/DocState.h"
#include "Sonicteam/Enemy/EnemyShot.h"
#include "Sonicteam/Enemy/EnemyShotNormal.h"
#include "Sonicteam/Enemy/EnemyShotPoint.h"
Expand Down Expand Up @@ -65,10 +67,14 @@
#include "Sonicteam/MyTexture.h"
#include "Sonicteam/MyTransforms.h"
#include "Sonicteam/NamedActor.h"
#include "Sonicteam/StageSelectMode.h"
#include "Sonicteam/StageMap.h"
#include "Sonicteam/NamedTask.h"
#include "Sonicteam/NoSyncThread.h"
#include "Sonicteam/ObjectVehicle.h"
#include "Sonicteam/ObjectVehicleBike.h"
#include "Sonicteam/PicBase.h"
#include "Sonicteam/PictureTitle.h"
#include "Sonicteam/Player/IDynamicLink.h"
#include "Sonicteam/Player/IExportExternalFlag.h"
#include "Sonicteam/Player/IExportPostureRequestFlag.h"
Expand Down Expand Up @@ -123,12 +129,14 @@
#include "Sonicteam/SoX/IResource.h"
#include "Sonicteam/SoX/IResource2.h"
#include "Sonicteam/SoX/IResourceMgr.h"
#include "Sonicteam/SoX/Input/Listener.h"
#include "Sonicteam/SoX/Input/Manager.h"
#include "Sonicteam/SoX/LinkNode.h"
#include "Sonicteam/SoX/Math/Matrix.h"
#include "Sonicteam/SoX/Math/Quaternion.h"
#include "Sonicteam/SoX/Math/Vector.h"
#include "Sonicteam/SoX/Message.h"
#include "Sonicteam/SoX/Input/Listener.h"
#include "Sonicteam/SoX/MessageReceiver.h"
#include "Sonicteam/SoX/Object.h"
#include "Sonicteam/SoX/Physics/Entity.h"
Expand All @@ -147,6 +155,8 @@
#include "Sonicteam/SoX/Scenery/CameraImp.h"
#include "Sonicteam/SoX/Scenery/Drawable.h"
#include "Sonicteam/SoX/Thread.h"
#include "Sonicteam/StageMap.h"
#include "Sonicteam/StageSelectMode.h"
#include "Sonicteam/StdImageFilters/BurnoutBlurFilter.h"
#include "Sonicteam/StdImageFilters/SingleTechniqueFilter.h"
#include "Sonicteam/System/CreateStatic.h"
Expand Down
33 changes: 33 additions & 0 deletions MarathonRecomp/api/Sonicteam/DevTitleMode.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#pragma once

#include <Marathon.inl>
#include <Sonicteam/SoX/Engine/DocMode.h>
#include <Sonicteam/PictureTitle.h>
#include <Sonicteam/DocState.h>

//anonymous namespace
namespace
{
class StateDevTitle : public Sonicteam::DocState
{
public:
xpointer<Sonicteam::PictureTitle> m_PictureTitle;
};
}

namespace Sonicteam
{
class DevTitleMode : public SoX::Engine::DocMode
{
struct Mode
{
xpointer<const char> m_Name;
MARATHON_INSERT_PADDING(4);
};

public:
be<uint32_t> m_Selected;
MARATHON_INSERT_PADDING(4);
MARATHON_INSERT_PADDING(10); //stdx::vector<Mode> m_Mode;
};
}
12 changes: 12 additions & 0 deletions MarathonRecomp/api/Sonicteam/DocState.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#pragma once

#include <Marathon.inl>

namespace Sonicteam
{
class DocState
{
public:
xpointer<void> m_pVftable;
};
}
16 changes: 16 additions & 0 deletions MarathonRecomp/api/Sonicteam/PicBase.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#pragma once

#include <Marathon.inl>


namespace Sonicteam
{
class PicBase
{
public:
xpointer<void> m_pVftable;
be<uint32_t> m_State1;
be<uint32_t> m_State2;
be<uint32_t> m_State3;
};
}
18 changes: 18 additions & 0 deletions MarathonRecomp/api/Sonicteam/PictureTitle.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#pragma once

#include <Marathon.inl>
#include <Sonicteam/PicBase.h>
#include <Sonicteam/SoX/Input/Listener.h>
#include <Sonicteam/SoX/Engine/Doc.h>
#include <Sonicteam/DocMarathonState.h>

namespace Sonicteam
{
class PictureTitle:public PicBase, public SoX::Input::Listener
{
public:
MARATHON_INSERT_PADDING(4);
xpointer<Sonicteam::DocMarathonState> m_Doc;
MARATHON_INSERT_PADDING(0x18);
};
}
2 changes: 1 addition & 1 deletion MarathonRecomp/api/Sonicteam/SoX/Engine/DocMode.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ namespace Sonicteam::SoX::Engine
class DocMode : public Task
{
public:
MARATHON_INSERT_PADDING(4);
be<uint32_t> m_type;
};
}
13 changes: 13 additions & 0 deletions MarathonRecomp/api/Sonicteam/SoX/Input/Listener.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#pragma once

#include <Marathon.inl>
#include <Sonicteam/SoX/Object.h>

namespace Sonicteam::SoX::Input
{
class Listener:SoX::Object
{
public:
MARATHON_INSERT_PADDING(0x14); //LinkSoxNode<void> LinkInput, flags
};
}
20 changes: 20 additions & 0 deletions MarathonRecomp/api/Sonicteam/StageMap.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#pragma once

#include <Marathon.inl>
#include <Sonicteam/SoX/Component.h>
#include <stdx/string.h>
#include <stdx/vector.h>

namespace Sonicteam
{

class StageMap : public SoX::Component
{
public:

stdx::string m_Name;
stdx::string m_Text;
stdx::vector<xpointer<StageMap>> m_vpStageMap;

};
}
23 changes: 23 additions & 0 deletions MarathonRecomp/api/Sonicteam/StageSelectMode.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
#pragma once

#include <Marathon.inl>
#include <Sonicteam/SoX/Engine/DocMode.h>
#include <Sonicteam/StageMap.h>

namespace Sonicteam
{
class StageSelectMode : public SoX::Engine::DocMode
{
public:
xpointer<Sonicteam::StageMap> m_StageMap;
xpointer<Sonicteam::StageMap> m_CurrentStageMap;
MARATHON_INSERT_PADDING(4);
be<uint32_t> m_CurrentStageMapIndex;
be<uint32_t> m_Deep;
MARATHON_INSERT_PADDING(0x1C);
xpointer<xpointer<const char>> m_StageMapInfo;
xpointer<uint32_t> m_StageMapType;
xpointer<const char> m_StageMapName;
MARATHON_INSERT_PADDING(0x14);
};
}
1 change: 1 addition & 0 deletions MarathonRecomp/gpu/imgui/imgui_snapshot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <kernel/xdbf.h>
#include <app.h>


template<typename T1, typename T2>
void ImFontAtlasSnapshot::SnapPointer(size_t offset, const T1& value, const T2& ptr, size_t count)
{
Expand Down
3 changes: 3 additions & 0 deletions MarathonRecomp/gpu/video.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
#include <ui/options_menu.h>
#include <ui/game_window.h>
#include <ui/black_bar.h>
#include <ui/devtitle_menu.h>
#include <patches/aspect_ratio_patches.h>
#include <user/config.h>
#include <sdl_listener.h>
Expand Down Expand Up @@ -1590,6 +1591,7 @@ static void CreateImGuiBackend()
MessageWindow::Init();
OptionsMenu::Init();
InstallerWizard::Init();
DevTitleMenu::Init();

ImGui_ImplSDL2_InitForOther(GameWindow::s_pWindow);

Expand Down Expand Up @@ -2853,6 +2855,7 @@ static void DrawImGui()
ImGui::End();
#endif

DevTitleMenu::Draw();
AchievementMenu::Draw();
// OptionsMenu::Draw();
AchievementOverlay::Draw();
Expand Down
2 changes: 2 additions & 0 deletions MarathonRecomp/patches/misc_patches.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
#include <ui/black_bar.h>
#include <user/config.h>
#include <user/achievement_manager.h>
#include <gpu/imgui/imgui_snapshot.h>

// TODO (Hyper): implement achievements menu.
void AchievementManagerUnlockMidAsmHook(PPCRegister& id)
Expand Down Expand Up @@ -103,6 +104,7 @@ void PedestrianAnimationLOD(PPCRegister& val)
val.u32 = 0;
}


bool DisableHints()
{
return !Config::Hints;
Expand Down
Loading
Loading