feat: Finalize memory protection logic, add GUI/CLI options, and fix README typos

- Added the original source code that generates the memory protection stub as a comment in the stub.
- Added a memory protection flag to the CLI and an option to the GUI.
- Improved CLI help text to be more detailed and explanatory.
- Updated README.md.
This commit is contained in:
keowu
2025-07-25 20:30:20 -03:00
parent b8a571871d
commit 487f061d6c
5 changed files with 158 additions and 2 deletions

View File

@@ -206,6 +206,13 @@ bool RyujinApp::OnInit() {
);
m_isMemoryProtection = DrawnStyledCheckbox(
panel,
"Memory Protection"
);
optionsSizer->Add(
m_virtualize
@@ -250,6 +257,11 @@ bool RyujinApp::OnInit() {
m_isAntiDump
);
optionsSizer->Add(
m_isMemoryProtection
);
optionsBox->Add(
@@ -697,6 +709,7 @@ auto RyujinApp::BindRunEvent(wxFrame* frame) -> void {
core.m_isRandomSection = m_randomSection->IsChecked();
core.m_isVirtualized = m_virtualize->IsChecked();
core.m_isAntiDump = m_isAntiDump->IsChecked();
core.m_isMemoryProtection = m_isMemoryProtection->IsChecked();
if (m_isAntiDebugWithTroll->IsChecked()) {

View File

@@ -23,6 +23,7 @@ private:
wxCheckBox* m_isAntiDebugWithTroll = nullptr;
wxCheckBox* m_isAntiDebugNormal = nullptr;
wxCheckBox* m_isAntiDump = nullptr;
wxCheckBox* m_isMemoryProtection = nullptr;
wxListBox* m_procList = nullptr;
wxGauge* m_progress = nullptr;