mirror of
				https://github.com/N64Recomp/N64ModernRuntime.git
				synced 2025-10-30 08:02:29 +00:00 
			
		
		
		
	Add casts to mem macros
This commit is contained in:
		
							parent
							
								
									ec7e81b45d
								
							
						
					
					
						commit
						680e74191d
					
				
					 2 changed files with 9 additions and 9 deletions
				
			
		|  | @ -18,23 +18,23 @@ typedef uint64_t gpr; | ||||||
|     ((gpr)(int32_t)((a) - (b))) |     ((gpr)(int32_t)((a) - (b))) | ||||||
| 
 | 
 | ||||||
| #define MEM_W(offset, reg) \ | #define MEM_W(offset, reg) \ | ||||||
|     (*(int32_t*)(rdram + ((((reg) + (offset))) - 0xFFFFFFFF80000000))) |     (*(int32_t*)(rdram + ((((gpr)(reg) + (gpr)(offset))) - 0xFFFFFFFF80000000ULL))) | ||||||
| 
 | 
 | ||||||
| #define MEM_H(offset, reg) \ | #define MEM_H(offset, reg) \ | ||||||
|     (*(int16_t*)(rdram + ((((reg) + (offset)) ^ 2) - 0xFFFFFFFF80000000))) |     (*(int16_t*)(rdram + ((((gpr)(reg) + (gpr)(offset)) ^ 2) - 0xFFFFFFFF80000000ULL))) | ||||||
| 
 | 
 | ||||||
| #define MEM_B(offset, reg) \ | #define MEM_B(offset, reg) \ | ||||||
|     (*(int8_t*)(rdram + ((((reg) + (offset)) ^ 3) - 0xFFFFFFFF80000000))) |     (*(int8_t*)(rdram + ((((gpr)(reg) + (gpr)(offset)) ^ 3) - 0xFFFFFFFF80000000ULL))) | ||||||
| 
 | 
 | ||||||
| #define MEM_HU(offset, reg) \ | #define MEM_HU(offset, reg) \ | ||||||
|     (*(uint16_t*)(rdram + ((((reg) + (offset)) ^ 2) - 0xFFFFFFFF80000000))) |     (*(uint16_t*)(rdram + ((((gpr)(reg) + (gpr)(offset)) ^ 2) - 0xFFFFFFFF80000000ULL))) | ||||||
| 
 | 
 | ||||||
| #define MEM_BU(offset, reg) \ | #define MEM_BU(offset, reg) \ | ||||||
|     (*(uint8_t*)(rdram + ((((reg) + (offset)) ^ 3) - 0xFFFFFFFF80000000))) |     (*(uint8_t*)(rdram + ((((gpr)(reg) + (gpr)(offset)) ^ 3) - 0xFFFFFFFF80000000ULL))) | ||||||
| 
 | 
 | ||||||
| #define SD(val, offset, reg) { \ | #define SD(val, offset, reg) { \ | ||||||
|     *(uint32_t*)(rdram + ((((reg) + (offset) + 4)) - 0xFFFFFFFF80000000)) = (uint32_t)((gpr)(val) >> 0); \ |     *(uint32_t*)(rdram + ((((gpr)(reg) + (gpr)(offset) + 4)) - 0xFFFFFFFF80000000ULL)) = (uint32_t)((gpr)(val) >> 0); \ | ||||||
|     *(uint32_t*)(rdram + ((((reg) + (offset) + 0)) - 0xFFFFFFFF80000000)) = (uint32_t)((gpr)(val) >> 32); \ |     *(uint32_t*)(rdram + ((((gpr)(reg) + (gpr)(offset) + 0)) - 0xFFFFFFFF80000000ULL)) = (uint32_t)((gpr)(val) >> 32); \ | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static inline uint64_t load_doubleword(uint8_t* rdram, gpr reg, gpr offset) { | static inline uint64_t load_doubleword(uint8_t* rdram, gpr reg, gpr offset) { | ||||||
|  |  | ||||||
|  | @ -153,14 +153,14 @@ void save_write_ptr(const void* in, uint32_t offset, uint32_t count) { | ||||||
|         std::lock_guard lock { save_context.save_buffer_mutex }; |         std::lock_guard lock { save_context.save_buffer_mutex }; | ||||||
|         memcpy(&save_context.save_buffer[offset], in, count); |         memcpy(&save_context.save_buffer[offset], in, count); | ||||||
|     } |     } | ||||||
|      | 
 | ||||||
|     save_context.write_sempahore.signal(); |     save_context.write_sempahore.signal(); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void save_write(RDRAM_ARG PTR(void) rdram_address, uint32_t offset, uint32_t count) { | void save_write(RDRAM_ARG PTR(void) rdram_address, uint32_t offset, uint32_t count) { | ||||||
|     { |     { | ||||||
|         std::lock_guard lock { save_context.save_buffer_mutex }; |         std::lock_guard lock { save_context.save_buffer_mutex }; | ||||||
|         for (uint32_t i = 0; i < count; i++) { |         for (size_t i = 0; i < count; i++) { | ||||||
|             save_context.save_buffer[offset + i] = MEM_B(i, rdram_address); |             save_context.save_buffer[offset + i] = MEM_B(i, rdram_address); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Angie
						Angie