Home » Archimedes archive » Acorn User » AU 1997-02 A.adf » !Voyager/Stack/ShutSLIP

!Voyager/Stack/ShutSLIP

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » AU 1997-02 A.adf
Filename: !Voyager/Stack/ShutSLIP
Read OK:
File size: 03C1 bytes
Load address: FFFFEB47
Exec address: 21B8BF35
File contents
| Find out if the SLIPDriver's still present

| If it's there, remove the routings, and close down

If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="0" Then ifconfig sl0 inet <VTiIP$Address> down
If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="0" Then route -e delete net default <VTiIP$Router>

If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="1" Then route delete net default <VTiIP$Address>

If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="2" Then Set Alias$VTiRemRoute route -e delete default
If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="2" Then VTiRemRoute
If "<VTi$LoggedOn>"="0" AND "<VTi$LoadVStack>"="2" Then Unset Alias$VTiRemRoute

If "<VTi$LoggedOn>"="0" AND "<VTi$HasINetDB>"="0" Then RMKill INetDB
If "<VTi$LoggedOn>"="0" Then RMKill SLIPDriver

| If we've loaded VStack, then kill the VStack module

WimpSlot -min 32k -max 32k

If "<InetDBase$OldPath>"<>"" Then Set InetDBase$Path <InetDBase$OldPath>
Unset InetDBase$OldPath

Unset VTi$LoggedOn
00000000  7c 20 46 69 6e 64 20 6f  75 74 20 69 66 20 74 68  || Find out if th|
00000010  65 20 53 4c 49 50 44 72  69 76 65 72 27 73 20 73  |e SLIPDriver's s|
00000020  74 69 6c 6c 20 70 72 65  73 65 6e 74 0a 0a 7c 20  |till present..| |
00000030  49 66 20 69 74 27 73 20  74 68 65 72 65 2c 20 72  |If it's there, r|
00000040  65 6d 6f 76 65 20 74 68  65 20 72 6f 75 74 69 6e  |emove the routin|
00000050  67 73 2c 20 61 6e 64 20  63 6c 6f 73 65 20 64 6f  |gs, and close do|
00000060  77 6e 0a 0a 49 66 20 22  3c 56 54 69 24 4c 6f 67  |wn..If "<VTi$Log|
00000070  67 65 64 4f 6e 3e 22 3d  22 30 22 20 41 4e 44 20  |gedOn>"="0" AND |
00000080  22 3c 56 54 69 24 4c 6f  61 64 56 53 74 61 63 6b  |"<VTi$LoadVStack|
00000090  3e 22 3d 22 30 22 20 54  68 65 6e 20 69 66 63 6f  |>"="0" Then ifco|
000000a0  6e 66 69 67 20 73 6c 30  20 69 6e 65 74 20 3c 56  |nfig sl0 inet <V|
000000b0  54 69 49 50 24 41 64 64  72 65 73 73 3e 20 64 6f  |TiIP$Address> do|
000000c0  77 6e 0a 49 66 20 22 3c  56 54 69 24 4c 6f 67 67  |wn.If "<VTi$Logg|
000000d0  65 64 4f 6e 3e 22 3d 22  30 22 20 41 4e 44 20 22  |edOn>"="0" AND "|
000000e0  3c 56 54 69 24 4c 6f 61  64 56 53 74 61 63 6b 3e  |<VTi$LoadVStack>|
000000f0  22 3d 22 30 22 20 54 68  65 6e 20 72 6f 75 74 65  |"="0" Then route|
00000100  20 2d 65 20 64 65 6c 65  74 65 20 6e 65 74 20 64  | -e delete net d|
00000110  65 66 61 75 6c 74 20 3c  56 54 69 49 50 24 52 6f  |efault <VTiIP$Ro|
00000120  75 74 65 72 3e 0a 0a 49  66 20 22 3c 56 54 69 24  |uter>..If "<VTi$|
00000130  4c 6f 67 67 65 64 4f 6e  3e 22 3d 22 30 22 20 41  |LoggedOn>"="0" A|
00000140  4e 44 20 22 3c 56 54 69  24 4c 6f 61 64 56 53 74  |ND "<VTi$LoadVSt|
00000150  61 63 6b 3e 22 3d 22 31  22 20 54 68 65 6e 20 72  |ack>"="1" Then r|
00000160  6f 75 74 65 20 64 65 6c  65 74 65 20 6e 65 74 20  |oute delete net |
00000170  64 65 66 61 75 6c 74 20  3c 56 54 69 49 50 24 41  |default <VTiIP$A|
00000180  64 64 72 65 73 73 3e 0a  0a 49 66 20 22 3c 56 54  |ddress>..If "<VT|
00000190  69 24 4c 6f 67 67 65 64  4f 6e 3e 22 3d 22 30 22  |i$LoggedOn>"="0"|
000001a0  20 41 4e 44 20 22 3c 56  54 69 24 4c 6f 61 64 56  | AND "<VTi$LoadV|
000001b0  53 74 61 63 6b 3e 22 3d  22 32 22 20 54 68 65 6e  |Stack>"="2" Then|
000001c0  20 53 65 74 20 41 6c 69  61 73 24 56 54 69 52 65  | Set Alias$VTiRe|
000001d0  6d 52 6f 75 74 65 20 72  6f 75 74 65 20 2d 65 20  |mRoute route -e |
000001e0  64 65 6c 65 74 65 20 64  65 66 61 75 6c 74 0a 49  |delete default.I|
000001f0  66 20 22 3c 56 54 69 24  4c 6f 67 67 65 64 4f 6e  |f "<VTi$LoggedOn|
00000200  3e 22 3d 22 30 22 20 41  4e 44 20 22 3c 56 54 69  |>"="0" AND "<VTi|
00000210  24 4c 6f 61 64 56 53 74  61 63 6b 3e 22 3d 22 32  |$LoadVStack>"="2|
00000220  22 20 54 68 65 6e 20 56  54 69 52 65 6d 52 6f 75  |" Then VTiRemRou|
00000230  74 65 0a 49 66 20 22 3c  56 54 69 24 4c 6f 67 67  |te.If "<VTi$Logg|
00000240  65 64 4f 6e 3e 22 3d 22  30 22 20 41 4e 44 20 22  |edOn>"="0" AND "|
00000250  3c 56 54 69 24 4c 6f 61  64 56 53 74 61 63 6b 3e  |<VTi$LoadVStack>|
00000260  22 3d 22 32 22 20 54 68  65 6e 20 55 6e 73 65 74  |"="2" Then Unset|
00000270  20 41 6c 69 61 73 24 56  54 69 52 65 6d 52 6f 75  | Alias$VTiRemRou|
00000280  74 65 0a 0a 49 66 20 22  3c 56 54 69 24 4c 6f 67  |te..If "<VTi$Log|
00000290  67 65 64 4f 6e 3e 22 3d  22 30 22 20 41 4e 44 20  |gedOn>"="0" AND |
000002a0  22 3c 56 54 69 24 48 61  73 49 4e 65 74 44 42 3e  |"<VTi$HasINetDB>|
000002b0  22 3d 22 30 22 20 54 68  65 6e 20 52 4d 4b 69 6c  |"="0" Then RMKil|
000002c0  6c 20 49 4e 65 74 44 42  0a 49 66 20 22 3c 56 54  |l INetDB.If "<VT|
000002d0  69 24 4c 6f 67 67 65 64  4f 6e 3e 22 3d 22 30 22  |i$LoggedOn>"="0"|
000002e0  20 54 68 65 6e 20 52 4d  4b 69 6c 6c 20 53 4c 49  | Then RMKill SLI|
000002f0  50 44 72 69 76 65 72 0a  0a 7c 20 49 66 20 77 65  |PDriver..| If we|
00000300  27 76 65 20 6c 6f 61 64  65 64 20 56 53 74 61 63  |'ve loaded VStac|
00000310  6b 2c 20 74 68 65 6e 20  6b 69 6c 6c 20 74 68 65  |k, then kill the|
00000320  20 56 53 74 61 63 6b 20  6d 6f 64 75 6c 65 0a 0a  | VStack module..|
00000330  57 69 6d 70 53 6c 6f 74  20 2d 6d 69 6e 20 33 32  |WimpSlot -min 32|
00000340  6b 20 2d 6d 61 78 20 33  32 6b 0a 0a 49 66 20 22  |k -max 32k..If "|
00000350  3c 49 6e 65 74 44 42 61  73 65 24 4f 6c 64 50 61  |<InetDBase$OldPa|
00000360  74 68 3e 22 3c 3e 22 22  20 54 68 65 6e 20 53 65  |th>"<>"" Then Se|
00000370  74 20 49 6e 65 74 44 42  61 73 65 24 50 61 74 68  |t InetDBase$Path|
00000380  20 3c 49 6e 65 74 44 42  61 73 65 24 4f 6c 64 50  | <InetDBase$OldP|
00000390  61 74 68 3e 0a 55 6e 73  65 74 20 49 6e 65 74 44  |ath>.Unset InetD|
000003a0  42 61 73 65 24 4f 6c 64  50 61 74 68 0a 0a 55 6e  |Base$OldPath..Un|
000003b0  73 65 74 20 56 54 69 24  4c 6f 67 67 65 64 4f 6e  |set VTi$LoggedOn|
000003c0  0a                                                |.|
000003c1