Commit Graph

6388 Commits

Author SHA1 Message Date
RadWolfie 7bfd1c795b move GetLastErrorString and FreeLastErrorString to loader source file 2020-04-14 20:24:18 -05:00
RadWolfie 04840af6d3 remove old todo comment 2020-04-14 20:24:18 -05:00
RadWolfie 9e1077fe9f declare ARRAY_SIZE once and use C++11 feature 2020-04-14 20:24:18 -05:00
RadWolfie af3858c0d8 add todo comments 2020-04-14 20:24:18 -05:00
RadWolfie fbe4987569 add verbose debug; won't work with loader project 2020-04-14 20:24:18 -05:00
RadWolfie fb7398d7c9 Get maximum reserve memory ranges from host.
Plus more fixup to manage reliable memory design on loader launch and emulator.
2020-04-14 20:24:18 -05:00
RadWolfie 37b230fbfe scrap win32 draft gui 2020-04-14 20:24:18 -05:00
RadWolfie 8a33562dc8 fix standalone persisted memory support 2020-04-14 20:24:18 -05:00
RadWolfie b20a970b1d fix shared memory reboot loss 2020-04-14 20:24:18 -05:00
RadWolfie 7fca148bc6 implement toggle loader project in GUI 2020-04-14 20:24:18 -05:00
RadWolfie 380d93c03e yet another re-fix... 2020-04-14 20:24:18 -05:00
RadWolfie 0f38209e4b use std map pairs instead of string for cli usage
Plus enable individual memory shared settings and lock data file path hash whenever in used.
2020-04-14 20:24:18 -05:00
ergo720 11c046e0aa Suppress warning 4200 (alternative method) 2020-04-14 20:24:18 -05:00
ergo720 446b7efc29 Fix memory manager crashing upon second reboot 2020-04-14 20:24:18 -05:00
ergo720 f1255cb89b Allow the memory manager to work again with the non-loader approach 2020-04-14 20:24:18 -05:00
PatrickvL 79a3a8d9a6 Extracted functions for MapPersistedMemory and UnmapPersistedMemory 2020-04-14 20:24:18 -05:00
RadWolfie 1485d9c82b Add note about memory range option at launch should not occur at all. 2020-04-14 20:24:18 -05:00
RadWolfie 95d2406937 fix compile build to able call CxbxKrnlMain in cxbx.exe
Plus some fixes to able launch from cxbx.exe's emulation to verify the work is good or not.
2020-04-14 20:24:18 -05:00
ergo720 52f0d6f03b Updated memory functions to work with the loader 2020-04-14 20:24:18 -05:00
patrickvl a8e8f0c071 Loader : Update build script to include new binaries in artifact 2020-04-14 20:24:17 -05:00
PatrickvL c4f9821c6a Loader : Fix typos and avoid Microsoft compiler specific types 2020-04-14 20:24:17 -05:00
PatrickvL affc999d70 Loader : Use CxbxMessageBox (a wrapper for Windows' MessageBox API) wherever possible, to avoid repeating the TEXT("Cxbx-Reloaded") caption everywhere, and a different argument-order allowing default argument values and thus more compact code. 2020-04-14 20:24:17 -05:00
patrickvl f283dff3b6 Loader : Deduplicate code via new CreateSettings() 2020-04-14 20:24:17 -05:00
PatrickvL 254e666bfe Loader : Shared implementation for termining guiProcessID (and "2nd GUI" mode?!) 2020-04-14 20:24:17 -05:00
patrickvl 170b971a8e Loader : Deduplicate code via new CreateSettings() 2020-04-14 20:24:17 -05:00
patrickvl 890a5ffd2f Loader : Merge LaunchEmulation() into CxbxKrnlMain() 2020-04-14 20:24:17 -05:00
patrickvl 37f5a751a1 Loader : Moved HandleFirstLaunch() and LaunchEmulation() towards shared source file (CxbxKrnl.cpp), and call it from our DLL's Emulate() function. 2020-04-14 20:24:17 -05:00
PatrickvL daffa99825 Refactorings preparing actual emulation start for DLL (just need to move two functions to a shared file) 2020-04-14 20:24:17 -05:00
PatrickvL cd62ac9cc1 Shared implementation of VerifyBaseAddr() 2020-04-14 20:24:17 -05:00
PatrickvL 3be54d4569 Rely on CxbxKrnl.h for CXBX_BASE_ADDR (avoiding a duplicate declaration) 2020-04-14 20:24:17 -05:00
PatrickvL c537539c6e Extracted VerifyWow64() function, so that the Cxbx and CxbxLoader projects share the same implementation.
For this, renamed LoaderTooling.cpp to AddressRanges.cpp, which better aligns with AddressRanges.h anyway.
2020-04-14 20:24:17 -05:00
PatrickvL bf115fe7ab Complete Emulation DLL project by adding all Cxbx source files (except GUI-related stuff). Entire solution builds again with this.
Next steps :
- Actually getting the emulation DLL to work
- Complete CxbxGUI project by adding all Cxbx GUI-related source files
2020-04-14 20:24:17 -05:00
PatrickvL c42aff2307 Loader : Collect actually reserved ranges during range-verification (in the emulation DLL, not during reservation in the loader) 2020-04-14 20:24:17 -05:00
patrickvl 39a9bd451f Log initialization failure in the loader 2020-04-14 20:24:17 -05:00
patrickvl 747ec875aa Use EXIT_SUCCESS for forced termination, EXIT_FAILURE for all other exit-reasons. 2020-04-14 20:24:17 -05:00
patrickvl 41c2de8e5d Pass along the selected system configuration flag to the emulation DLL and use it to verify the address ranges.
Note, that even though verification passes, a few blocks in optional ranges do fail. It's probably wise to build up a list of those, so that the memory managers can keep this into account.
2020-04-14 20:24:17 -05:00
PatrickvL 93c8514700 Loader : Initial drop of a separate *empty* GUI project (probably won't compile either) 2020-04-14 20:24:17 -05:00
PatrickvL b2b0813db4 Loader : Added emulation DLL, working towards this stub compiling, moved loader project to subfolder 2020-04-14 20:24:17 -05:00
PatrickvL 9f19b26161 Loader : Log errors to console output. Also added a few comments 2020-04-14 20:24:16 -05:00
PatrickvL 4e1062905d Loader : Correct the PageTable range to fit all possible entries 2020-04-14 20:24:16 -05:00
PatrickvL e333152bd1 Loader : We won't emulate Alpha kits, and all other hardware revisions lack the physical hardware lines for USB1 ports, so this can go. 2020-04-14 20:24:16 -05:00
PatrickvL 032eee144f Reduce clutter in Loader by splitting up functionality in task-specific source files 2020-04-14 20:24:16 -05:00
patrickvl 420d689d82 Cleaned up of the loader project, added environment checks and documented it somewhat. 2020-04-14 20:24:16 -05:00
patrickvl 2295a10e77 Configurable system configuration by matching command line flags against memory-range flags - a quite flexible solution if I may say ;) 2020-04-14 20:24:16 -05:00
patrickvl 0532fa7c58 Loader coding style 2020-04-14 20:24:16 -05:00
patrickvl da10d3602f Extended reserved memory ranges with DevKitMemory and SystemMemory (both partially fail) 2020-04-14 20:24:16 -05:00
patrickvl 34072e9fd9 Random stuff, taken from my old Loader branch 2020-04-14 20:24:16 -05:00
patrickvl 208ce0e35c Added minimal CxbxLoader project 2020-04-14 20:24:16 -05:00
PatrickvL ca6423b484 Reviving my more-than-a-year-old Loader branch, by copying over various things (nothing functional yet) 2020-04-14 20:24:16 -05:00
PatrickvL 2a23634c77
Merge pull request #1870 from Cxbx-Reloaded/develop
Move develop Branch into master Branch
2020-04-14 12:23:31 +02:00