[comp.os.minix] stevie and fsck.c

rtregn@immd3.informatik.uni-erlangen.de (Robert Regn) (10/11/88)

In article <30499@bbn.COM>, grossman@bbn.com (Martin Grossman) writes:
> Can someone email me a copy of Stevie and termcap file?
> 
Do you mean sources or executable ?
The sources are available in  comp.sources.unix (on june posted).
The diffs for minix are in <641@faui44.informatik.uni-erlangen.de>
from 23 Sep 88 13:39:24 GMT. You can generate an executable version with
the minix compiler. (Bug: the variable newfile in fileio.c must be
initialised to 0, not 1)
I don't repeat any posting at this time because I hope to get a improved
version of stevie from Tony Andrews next days. I will then modify this
source for minix and post the whole source or the binary - what do you like ?

Stevie don't need a termcap file - the escapes are hard coded.


> PS when minix boots it mounts both OK.  Does anyone have a version
>    of fsck that can run once minix is up and running?

I have such diffs for the 1.1 version of fsck.c.
Sorry - I'd lost track of diffs around 1.2 - can someone mail me diffs
for fsck beetween 1.1 and 1.3c (or 1.3a) ?

The variable top is renamed in top1 because it is used in malloc.c too.
The insertion of cleanup is now unneccessary.
Possibly these fixes are now in the official version.

-------------------------------------------cut---------------------------
9c9
< #define STANDALONE		/* compile for the boot-diskette */
---
> /*#define STANDALONE		 compile for the boot-diskette */
65c65
<     -error: no system defined.
---
> #include <stdio.h>
171c171
< } *top;
---
> } *top1;
538,544c538,544
< 	if (top->st_next == 0)
< 		printf("/");
< 	else
< 		printrec(top);
< 	switch (mode) {
< 	case 1: printf(" (ino = %u, ", top->st_dir->d_inum);	break;
< 	case 2: printf(" (ino = %u)", top->st_dir->d_inum);	break;
---
> 	if (top1->st_next == 0)
> 		printf("/");
> 	else
> 		printrec(top1);
> 	switch (mode) {
> 	case 1: printf(" (ino = %u, ", top1->st_dir->d_inum);	break;
> 	case 2: printf(" (ino = %u)", top1->st_dir->d_inum);	break;
1405c1405
< 		top->st_presence |= DOT;
---
> 		top1->st_presence |= DOT;
1409,1411c1409,1411
< 		top->st_presence |= DOTDOT;
< 		return(chkdots(ino, pos, dp, ino == ROOT_INODE ? ino :
< 						top->st_next->st_dir->d_inum));
---
> 		top1->st_presence |= DOTDOT;
> 		return(chkdots(ino, pos, dp, ino == ROOT_INODE ? ino :
> 						top1->st_next->st_dir->d_inum));
1620c1620
< 	if (!(top->st_presence & DOT)) {
---
> 	if (!(top1->st_presence & DOT)) {
1625c1625
< 	if (!(top->st_presence & DOTDOT)) {
---
> 	if (!(top1->st_presence & DOTDOT)) {
1706,1707c1706,1707
< 	stk.st_next = top;
< 	top = &stk;
---
> 	stk.st_next = top1;
> 	top1 = &stk;
1727c1727
< 				top = top->st_next;
---
> 				top1 = top1->st_next;
1732c1732
< 	top = top->st_next;
---
> 	top1 = top1->st_next;
1927a1928
> 	_cleanup();
1958a1960
> #ifdef STANDALONE
2018a2021
> #endif
-------------------------------------------cut---------------------------

				Robert Regn							rtregn.faui32.uucp