mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-30 21:30:04 +00:00 
			
		
		
		
	TGA dumps work, courtesy of @bunnei
This commit is contained in:
		
							parent
							
								
									bdc3c99904
								
							
						
					
					
						commit
						fb47258af7
					
				
					 3 changed files with 39 additions and 37 deletions
				
			
		|  | @ -24,7 +24,7 @@ int __cdecl main(int argc, char **argv) { | ||||||
| 
 | 
 | ||||||
| 	System::Init(emu_window); | 	System::Init(emu_window); | ||||||
| 
 | 
 | ||||||
|     std::string boot_filename = "homebrew.elf"; |     std::string boot_filename = "/Users/gandrade-air/Downloads/homebrew/yeti3DS-master.elf"; | ||||||
|     std::string error_str; |     std::string error_str; | ||||||
|      |      | ||||||
|     bool res = Loader::LoadFile(boot_filename, &error_str); |     bool res = Loader::LoadFile(boot_filename, &error_str); | ||||||
|  |  | ||||||
|  | @ -6,6 +6,7 @@ | ||||||
| 
 | 
 | ||||||
| #include "video_core/video_core.h" | #include "video_core/video_core.h" | ||||||
| #include "video_core/renderer_opengl/renderer_opengl.h" | #include "video_core/renderer_opengl/renderer_opengl.h" | ||||||
|  | #include "video_core/utils.h" | ||||||
| 
 | 
 | ||||||
| #include "core/mem_map.h" | #include "core/mem_map.h" | ||||||
| 
 | 
 | ||||||
|  | @ -49,6 +50,7 @@ void RendererOpenGL::SwapBuffers() { | ||||||
| 
 | 
 | ||||||
|     // Switch back to EFB and clear
 |     // Switch back to EFB and clear
 | ||||||
|     glBindFramebuffer(GL_DRAW_FRAMEBUFFER, m_fbo[kFramebuffer_EFB]); |     glBindFramebuffer(GL_DRAW_FRAMEBUFFER, m_fbo[kFramebuffer_EFB]); | ||||||
|  | 	VideoCore::DumpTGA("dump.tga", 400, 240, m_xfb_top_flipped); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /**
 | /**
 | ||||||
|  |  | ||||||
|  | @ -32,9 +32,9 @@ void DumpTGA(std::string filename, int width, int height, u8* raw_data) { | ||||||
| 		fwrite(&hdr, sizeof(TGAHeader), 1, fout); | 		fwrite(&hdr, sizeof(TGAHeader), 1, fout); | ||||||
| 		for (int i = 0; i < height; i++) { | 		for (int i = 0; i < height; i++) { | ||||||
| 			for (int j = 0; j < width; j++) { | 			for (int j = 0; j < width; j++) { | ||||||
|             r = raw_data[(4 * (i * width)) + (4 * j) + 0]; | 				b = raw_data[(3 * (i * width)) + (3 * j) + 0]; | ||||||
|             g = raw_data[(4 * (i * width)) + (4 * j) + 1]; | 				g = raw_data[(3 * (i * width)) + (3 * j) + 1]; | ||||||
|             b = raw_data[(4 * (i * width)) + (4 * j) + 2]; | 				r = raw_data[(3 * (i * width)) + (3 * j) + 2]; | ||||||
| 				putc(b, fout); | 				putc(b, fout); | ||||||
| 				putc(g, fout); | 				putc(g, fout); | ||||||
| 				putc(r, fout); | 				putc(r, fout); | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue