plan 9 kernel history: overview | file list | diff list

1994/1111/pc/main.c (diff list | history)

1994/1111/sys/src/9/pc/main.c:313,3241994/1210/sys/src/9/pc/main.c:313,350 (short | long | prev | next)
1994/0814    
		for(n = 0; n < BY2PG/BY2WD; n++) 
			if(lp[n] != ~(seed + (n^((BY2PG/BY2WD)-1)))) 
				return -1; 
1994/0815    
		memset(lp, '!', BY2PG); 
1994/1210    
/*		memset(lp, '!', BY2PG);/**/ 
1994/0814    
	} 
	return 0; 
} 
 
1994/1210    
/* 
 *  look for unused address space in 0xC8000 to 1 meg 
 */ 
1993/0915    
void 
1994/1210    
romscan(void) 
{ 
	uchar *p; 
 
	p = (uchar*)(KZERO+0xC8000); 
	while(p < (uchar*)(KZERO+0xE0000)){ 
		p[0] = 0x55; 
		p[1] = 0xAA; 
		p[2] = 4; 
		if(p[0] != 0x55 || p[1] != 0xAA){ 
			putisa(PADDR(p), 2048); 
			p += 2048; 
			continue; 
		} 
		p += p[2]*512; 
	} 
 
	p = (uchar*)(KZERO+0xE0000); 
	if(p[0] != 0x55 || p[1] != 0xAA) 
		putisa(PADDR(p), 64*1024); 
} 
 
void 
1991/0711    
confinit(void) 
{ 
1994/0814    
	long x, i, j, n; 
1994/1111/sys/src/9/pc/main.c:360,3651994/1210/sys/src/9/pc/main.c:386,392
1993/0416    
		nconf++; 
	} 
1994/0814    
 
1994/1210    
 
1993/0416    
	/* 
1993/0915    
	 *  size memory above 1 meg. Kernel sits at 1 meg.  We 
	 *  only recognize MB size chunks. 
1994/1111/sys/src/9/pc/main.c:436,4411994/1210/sys/src/9/pc/main.c:463,476
1993/0915    
			conf.topofmem = j*MB; 
			break; 
		} 
1994/1210    
 
	/* 
 	 *  add address space holes holes under 16 meg to available 
	 *  isa space. 
	 */ 
	romscan(); 
	if(conf.topofmem < 16*MB) 
		putisa(conf.topofmem, 16*MB - conf.topofmem); 
1993/0915    
 
1991/0711    
	conf.npage = conf.npage0 + conf.npage1; 
1992/1113    
	conf.ldepth = 0; 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)