home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* J.PAS *)
- (* (c) 1989 Christoph Steindorff & TOOLBOX *)
- (* ------------------------------------------------------ *)
- PROGRAM Jump;
-
- {$D-,A-,I-,L-,N+,E-,O-,R-,S-}
- (* wenig CODE und hohe Geschwindigkeit *)
- USES Dos;
-
- VAR
- Directory : STRING[80];
- Found : BOOLEAN;
- y : INTEGER;
- Regs : Registers;
- d : CHAR;
-
- PROCEDURE FindDir(Path : STRING);
- VAR
- SDir: SearchRec;
- BEGIN
- FindFirst(Path + '/*.*', $10, SDir);
- WHILE (DosError <> 18) AND (found = FALSE) DO BEGIN
- IF (SDir.Attr = $10) AND
- (SDir.Name[1] <> '.') THEN BEGIN
- IF SDir.Name = Directory THEN BEGIN
- ChDir(d + ':\');
- ChDir(Path + '/' + SDir.Name);
- Found := TRUE;
- END;
- FindDir(Path + '/' + SDir.Name);
- END;
- FindNext(SDir);
- END;
- END;
-
- BEGIN
- Regs.ah := $19;
- MsDos(Regs);
- d := Chr(Regs.al + 65);
- found := TRUE;
- Directory := ParamStr(1);
- IF Directory = '' THEN
- ChDir(d + ':\')
- ELSE BEGIN
- found := FALSE;
- FOR y := 1 TO 8 DO Directory[y] := UpCase(Directory[y]);
- FindDir(d + ':');
- END;
- IF NOT found THEN
- WriteLn('Verzeichnis nicht vorhanden...')
- ELSE BEGIN
- GetDir(0, Directory);
- WriteLn('Verzeichnis ', Directory);
- END;
- END.
- (* ------------------------------------------------------ *)
- (* Ende von J.PAS *)