mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 04:06:46 +00:00 
			
		
		
		
	ram dirty flag handling fixes
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1247 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									5416376efe
								
							
						
					
					
						commit
						662f3c86ec
					
				
							
								
								
									
										14
									
								
								hw/tcx.c
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								hw/tcx.c
									
									
									
									
									
								
							| @ -104,11 +104,7 @@ void tcx_update_display(void *opaque) | ||||
| 
 | ||||
|     if (ts->ds->depth == 0) | ||||
| 	return; | ||||
| #ifdef LD_BYPASS_OK | ||||
|     page = ts->vram_offset + YOFF*MAXX; | ||||
| #else | ||||
|     page = ts->addr + YOFF*MAXX; | ||||
| #endif | ||||
|     y_start = -1; | ||||
|     page_min = 0x7fffffff; | ||||
|     page_max = -1; | ||||
| @ -131,7 +127,7 @@ void tcx_update_display(void *opaque) | ||||
|     case 0: | ||||
| 	return; | ||||
|     } | ||||
| 
 | ||||
|      | ||||
|     for(y = 0; y < YSZ; y += 4, page += TARGET_PAGE_SIZE) { | ||||
| 	if (cpu_physical_memory_is_dirty(page)) { | ||||
| 	    if (y_start < 0) | ||||
| @ -180,11 +176,7 @@ void tcx_invalidate_display(void *opaque) | ||||
|     int i; | ||||
| 
 | ||||
|     for (i = 0; i < MAXX*MAXY; i += TARGET_PAGE_SIZE) { | ||||
| #ifdef LD_BYPASS_OK | ||||
| 	cpu_physical_memory_set_dirty(s->vram_offset + i); | ||||
| #else | ||||
| 	cpu_physical_memory_set_dirty(s->addr + i); | ||||
| #endif | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| @ -224,9 +216,7 @@ static void tcx_reset(void *opaque) | ||||
|     memset(s->b, 0, 256); | ||||
|     s->r[255] = s->g[255] = s->b[255] = 255; | ||||
|     memset(s->vram, 0, MAXX*MAXY); | ||||
| #ifdef LD_BYPASS_OK | ||||
|     cpu_physical_memory_reset_dirty(s->vram_offset, s->vram_offset + MAXX*MAXY - 1); | ||||
| #endif | ||||
|     cpu_physical_memory_reset_dirty(s->vram_offset, s->vram_offset + MAXX*MAXY); | ||||
| } | ||||
| 
 | ||||
| void *tcx_init(DisplayState *ds, uint32_t addr, uint8_t *vram_base, | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 bellard
						bellard