Implement idle loop skipping. The framerate on SMA4 is NINE times faster this way!
This commit is contained in:
		
							parent
							
								
									7e08f8c67b
								
							
						
					
					
						commit
						3c1474e99d
					
				
					 1 changed files with 4 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -3275,6 +3275,8 @@ skip_instruction:
 | 
			
		|||
 | 
			
		||||
       /* End of Execute ARM instruction */
 | 
			
		||||
       cycles_remaining -= cycles_per_instruction;
 | 
			
		||||
 | 
			
		||||
       if (pc == idle_loop_target_pc && cycles_remaining > 0) cycles_remaining = 0;
 | 
			
		||||
    } while(cycles_remaining > 0);
 | 
			
		||||
 | 
			
		||||
    collapse_flags();
 | 
			
		||||
| 
						 | 
				
			
			@ -4242,6 +4244,8 @@ thumb_loop:
 | 
			
		|||
 | 
			
		||||
       /* End of Execute THUMB instruction */
 | 
			
		||||
       cycles_remaining -= cycles_per_instruction;
 | 
			
		||||
 | 
			
		||||
       if (pc == idle_loop_target_pc && cycles_remaining > 0) cycles_remaining = 0;
 | 
			
		||||
    } while(cycles_remaining > 0);
 | 
			
		||||
 | 
			
		||||
    collapse_flags();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue