mirror of
				https://github.com/hedge-dev/UnleashedRecomp.git
				synced 2025-10-30 07:11:05 +00:00 
			
		
		
		
	Add TOML files for PowerRecomp.
This commit is contained in:
		
							parent
							
								
									baf24bb36a
								
							
						
					
					
						commit
						6fe61971a3
					
				
					 8 changed files with 13735 additions and 20 deletions
				
			
		
							
								
								
									
										3
									
								
								.gitmodules
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
										
									
									
										vendored
									
									
								
							|  | @ -5,3 +5,6 @@ | ||||||
| 	path = thirdparty/SDL | 	path = thirdparty/SDL | ||||||
| 	url = https://github.com/libsdl-org/SDL.git | 	url = https://github.com/libsdl-org/SDL.git | ||||||
| 	branch = SDL2 | 	branch = SDL2 | ||||||
|  | [submodule "thirdparty/unordered_dense"] | ||||||
|  | 	path = thirdparty/unordered_dense | ||||||
|  | 	url = https://github.com/martinus/unordered_dense.git | ||||||
|  |  | ||||||
|  | @ -13,7 +13,7 @@ add_compile_options( | ||||||
|     "/fp:strict" |     "/fp:strict" | ||||||
|     "/GS-" |     "/GS-" | ||||||
|     "/EHa-" |     "/EHa-" | ||||||
|     "-march=haswell" |     "-march=sandybridge" | ||||||
|     "-fno-strict-aliasing") |     "-fno-strict-aliasing") | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | @ -77,3 +77,5 @@ target_link_libraries(UnleashedRecomp PUBLIC | ||||||
| ) | ) | ||||||
| target_include_directories(UnleashedRecomp PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) | target_include_directories(UnleashedRecomp PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) | ||||||
| target_precompile_headers(UnleashedRecomp PUBLIC ${SWA_PRECOMPILED_HEADERS}) | target_precompile_headers(UnleashedRecomp PUBLIC ${SWA_PRECOMPILED_HEADERS}) | ||||||
|  | 
 | ||||||
|  | target_compile_definitions(PowerRecomp PRIVATE CONFIG_FILE_PATH=\"${CMAKE_CURRENT_SOURCE_DIR}/ppc/config/SWA.toml\") | ||||||
|  |  | ||||||
|  | @ -524,7 +524,7 @@ uint32_t ObReferenceObjectByHandle(uint32_t handle, uint32_t objectType, XLPDWOR | ||||||
| { | { | ||||||
|     //printf("Invoking method ObReferenceObjectByHandle\n");
 |     //printf("Invoking method ObReferenceObjectByHandle\n");
 | ||||||
|     *object = handle; |     *object = handle; | ||||||
|     return GetPPCContext()->lr == 0x82BD588C ? 0xFFFFFFFF : 0; |     return 0; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void KeQueryBasePriorityThread() | void KeQueryBasePriorityThread() | ||||||
|  |  | ||||||
							
								
								
									
										80
									
								
								UnleashedRecomp/ppc/config/SWA.toml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										80
									
								
								UnleashedRecomp/ppc/config/SWA.toml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,80 @@ | ||||||
|  | [main] | ||||||
|  | file_path = "../private/default.xex" | ||||||
|  | out_directory_path = ".." | ||||||
|  | switch_table_file_path = "SWA_switch_tables.toml" | ||||||
|  | 
 | ||||||
|  | skip_lr = true | ||||||
|  | skip_msr = true | ||||||
|  | ctr_as_local = true | ||||||
|  | xer_as_local = true | ||||||
|  | reserved_as_local = true | ||||||
|  | cr_as_local = true | ||||||
|  | non_argument_as_local = true | ||||||
|  | non_volatile_as_local = true | ||||||
|  | 
 | ||||||
|  | restgprlr_14_address = 0x831B0B40 | ||||||
|  | savegprlr_14_address = 0x831B0AF0 | ||||||
|  | restfpr_14_address = 0x831B144C | ||||||
|  | savefpr_14_address = 0x831B1400 | ||||||
|  | restvmx_14_address = 0x831B36E8 | ||||||
|  | savevmx_14_address = 0x831B3450 | ||||||
|  | restvmx_64_address = 0x831B377C | ||||||
|  | savevmx_64_address = 0x831B34E4 | ||||||
|  | 
 | ||||||
|  | longjmp_address = 0x831B6790 | ||||||
|  | setjmp_address = 0x831B6AB0 | ||||||
|  | 
 | ||||||
|  | # These functions do not exist in .pdata and  | ||||||
|  | # not analyze properly due to having jump tables | ||||||
|  | functions = [ | ||||||
|  |     { address = 0x824E7EF0, size = 0x98 }, | ||||||
|  |     { address = 0x824E7F28, size = 0x60 }, | ||||||
|  |     { address = 0x82C980E8, size = 0x110 }, | ||||||
|  |     { address = 0x82CF7080, size = 0x80 }, | ||||||
|  |     { address = 0x82D9AC08, size = 0x78 }, | ||||||
|  |     { address = 0x82E86770, size = 0x98 }, | ||||||
|  |     { address = 0x82E97E50, size = 0x84 }, | ||||||
|  |     { address = 0x82EE2D08, size = 0x154 }, | ||||||
|  |     { address = 0x82EF5C38, size = 0x64 }, | ||||||
|  |     { address = 0x82EF5D78, size = 0x3F8 }, | ||||||
|  |     { address = 0x82F08730, size = 0x2B0 }, | ||||||
|  |     { address = 0x82F098C0, size = 0x19C }, | ||||||
|  |     { address = 0x82F13980, size = 0xF4 }, | ||||||
|  |     { address = 0x82F1D668, size = 0x1E8 }, | ||||||
|  |     { address = 0x82F22908, size = 0x20C }, | ||||||
|  |     { address = 0x82F25FD8, size = 0x240 }, | ||||||
|  |     { address = 0x82F852A0, size = 0xCC }, | ||||||
|  |     { address = 0x830DADA0, size = 0x150 }, | ||||||
|  |     { address = 0x831487D0, size = 0xD4 }, | ||||||
|  |     { address = 0x831530C8, size = 0x258 }, | ||||||
|  |     { address = 0x831539E0, size = 0xD0 }, | ||||||
|  |     { address = 0x83168940, size = 0x100 }, | ||||||
|  |     { address = 0x83168A48, size = 0x11C }, | ||||||
|  |     { address = 0x83168B70, size = 0x128 }, | ||||||
|  |     { address = 0x83168F18, size = 0x254 }, | ||||||
|  |     { address = 0x8316C678, size = 0x78 }, | ||||||
|  |     { address = 0x8317CD30, size = 0x50 }, | ||||||
|  |     { address = 0x83180700, size = 0x74 }, | ||||||
|  |     { address = 0x8319ED58, size = 0x98 }, | ||||||
|  |     { address = 0x82455E70, size = 0x84 }, | ||||||
|  |     { address = 0x82456DC8, size = 0xD4 }, | ||||||
|  |     { address = 0x826ABB70, size = 0x70 }, | ||||||
|  |     { address = 0x82893088, size = 0x45C }, | ||||||
|  |     { address = 0x82C49540, size = 0x114 }, | ||||||
|  |     { address = 0x82DE35D8, size = 0x68 }, | ||||||
|  |     { address = 0x82DE3640, size = 0x64 }, | ||||||
|  |     { address = 0x82DE36A8, size = 0x5C }, | ||||||
|  |     { address = 0x82DE3708, size = 0x198 }, | ||||||
|  |     { address = 0x82DE38A0, size = 0x16C }, | ||||||
|  |     { address = 0x830B7DD0, size = 0x74 }, | ||||||
|  |     { address = 0x831B0BA0, size = 0xA0 }, | ||||||
|  |     { address = 0x8305D168, size = 0x278 } | ||||||
|  | ] | ||||||
|  | 
 | ||||||
|  | invalid_instructions = [ | ||||||
|  |     { data = 0x00000000, size = 4 }, # Padding | ||||||
|  |     { data = 0x831B1C90, size = 8 }, # C++ Frame Handler | ||||||
|  |     { data = 0x8324B3BC, size = 8 }, # C Specific Frame Handler | ||||||
|  |     { data = 0x831C8B50, size = 8 }, | ||||||
|  |     { data = 0x00485645, size = 44 } # End of .text | ||||||
|  | ] | ||||||
							
								
								
									
										13644
									
								
								UnleashedRecomp/ppc/config/SWA_switch_tables.toml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13644
									
								
								UnleashedRecomp/ppc/config/SWA_switch_tables.toml
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										19
									
								
								thirdparty/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								thirdparty/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -1,19 +1,4 @@ | ||||||
| include(FetchContent) | add_subdirectory(${SWA_THIRDPARTY_ROOT}/unordered_dense) | ||||||
| 
 |  | ||||||
| FetchContent_Declare( |  | ||||||
|     unordered_dense |  | ||||||
|     GIT_REPOSITORY https://github.com/martinus/unordered_dense.git |  | ||||||
|     GIT_TAG        main |  | ||||||
| ) |  | ||||||
| FetchContent_Declare( |  | ||||||
|     xxHash |  | ||||||
|     GIT_REPOSITORY https://github.com/Cyan4973/xxHash.git |  | ||||||
|     GIT_TAG        v0.8.2 |  | ||||||
|     SOURCE_SUBDIR "cmake_unofficial" |  | ||||||
| ) |  | ||||||
| FetchContent_MakeAvailable(unordered_dense) |  | ||||||
| FetchContent_MakeAvailable(xxHash) |  | ||||||
| 
 |  | ||||||
| add_subdirectory(${SWA_THIRDPARTY_ROOT}/PowerRecomp) | add_subdirectory(${SWA_THIRDPARTY_ROOT}/PowerRecomp) | ||||||
| add_subdirectory(${SWA_THIRDPARTY_ROOT}/o1heap) | add_subdirectory(${SWA_THIRDPARTY_ROOT}/o1heap) | ||||||
| add_subdirectory(${SWA_THIRDPARTY_ROOT}/SDL) | add_subdirectory(${SWA_THIRDPARTY_ROOT}/SDL) | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								thirdparty/PowerRecomp
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								thirdparty/PowerRecomp
									
										
									
									
										vendored
									
									
								
							|  | @ -1 +1 @@ | ||||||
| Subproject commit 54cb41c4db6aee0c347835490405bd19f97f6c20 | Subproject commit 183027d563779fd437496521b55dbbd09169e00a | ||||||
							
								
								
									
										1
									
								
								thirdparty/unordered_dense
									
										
									
									
										vendored
									
									
										Submodule
									
								
							
							
						
						
									
										1
									
								
								thirdparty/unordered_dense
									
										
									
									
										vendored
									
									
										Submodule
									
								
							|  | @ -0,0 +1 @@ | ||||||
|  | Subproject commit d911053e390816ecc5dedd5a9d6b4bb5ed92b4c9 | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Skyth
						Skyth