Fix length mismatch condition, by Wang Cheng Yeh.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2735 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
		
							parent
							
								
									85a6f12925
								
							
						
					
					
						commit
						7faa239ca3
					
				@ -855,6 +855,7 @@ again:
 | 
				
			|||||||
            offset = sxt24(addr);
 | 
					            offset = sxt24(addr);
 | 
				
			||||||
            cpu_physical_memory_read(s->dsa + offset, (uint8_t *)buf, 8);
 | 
					            cpu_physical_memory_read(s->dsa + offset, (uint8_t *)buf, 8);
 | 
				
			||||||
            s->dbc = cpu_to_le32(buf[0]);
 | 
					            s->dbc = cpu_to_le32(buf[0]);
 | 
				
			||||||
 | 
					            s->rbc = s->dbc;
 | 
				
			||||||
            addr = cpu_to_le32(buf[1]);
 | 
					            addr = cpu_to_le32(buf[1]);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        if ((s->sstat1 & PHASE_MASK) != ((insn >> 24) & 7)) {
 | 
					        if ((s->sstat1 & PHASE_MASK) != ((insn >> 24) & 7)) {
 | 
				
			||||||
@ -864,6 +865,8 @@ again:
 | 
				
			|||||||
            break;
 | 
					            break;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        s->dnad = addr;
 | 
					        s->dnad = addr;
 | 
				
			||||||
 | 
					        /* ??? Set ESA.  */
 | 
				
			||||||
 | 
					        s->ia = s->dsp - 8;
 | 
				
			||||||
        switch (s->sstat1 & 0x7) {
 | 
					        switch (s->sstat1 & 0x7) {
 | 
				
			||||||
        case PHASE_DO:
 | 
					        case PHASE_DO:
 | 
				
			||||||
            s->waiting = 2;
 | 
					            s->waiting = 2;
 | 
				
			||||||
@ -898,8 +901,6 @@ again:
 | 
				
			|||||||
        s->sbc = s->dbc;
 | 
					        s->sbc = s->dbc;
 | 
				
			||||||
        s->rbc -= s->dbc;
 | 
					        s->rbc -= s->dbc;
 | 
				
			||||||
        s->ua = addr + s->dbc;
 | 
					        s->ua = addr + s->dbc;
 | 
				
			||||||
        /* ??? Set ESA.  */
 | 
					 | 
				
			||||||
        s->ia = s->dsp - 8;
 | 
					 | 
				
			||||||
        break;
 | 
					        break;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    case 1: /* IO or Read/Write instruction.  */
 | 
					    case 1: /* IO or Read/Write instruction.  */
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user