Home » Personal collection » Acorn hard disk » unzip_tools » sys_ro5 » !System/!Run

!System/!Run

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 » Personal collection » Acorn hard disk » unzip_tools » sys_ro5
Filename: !System/!Run
Read OK:
File size: 07C2 bytes
Load address: 0000
Exec address: 0000
File contents
| !System.!Run
| Version 1.01 (13-Nov-19)
If "<System$Dir>" = "" Then IconSprites <Obey$Dir>.Themes.!Sprites
WimpSlot 20k 20k
Set System$Dir <Obey$Dir>
/<System$Dir>.SysPaths
If (Boot$OSVersion >= 310) AND (Boot$OSVersion < 500) Then RMEnsure CallASWI 0.09 RMLoad System:Modules.CallASWI
If Boot$OSVersion >= 310 Then RMEnsure FPEmulator 4.03 RMLoad System:Modules.FPEmulator
If Boot$OSVersion >= 310 Then RMEnsure SharedCLibrary 5.66 RMLoad System:Modules.CLib
| In place of former UnplugTBox
If Boot$OSVersion >= 310 Then RMEnsure Toolbox 1.41 RMLoad System:Modules.Toolbox.Toolbox
If Boot$OSVersion >= 310 Then RMEnsure ColourDbox 0.17 RMLoad System:Modules.Toolbox.ColourDbox
If Boot$OSVersion >= 310 Then RMEnsure ColourMenu 0.19 RMLoad System:Modules.Toolbox.ColourMenu
If Boot$OSVersion >= 310 Then RMEnsure DCS 1.08 RMLoad System:Modules.Toolbox.DCS_Quit
If Boot$OSVersion >= 310 Then RMEnsure FileInfo 0.16 RMLoad System:Modules.Toolbox.FileInfo  
If Boot$OSVersion >= 310 Then RMEnsure FontDbox 0.16 RMLoad System:Modules.Toolbox.FontDbox  
If Boot$OSVersion >= 310 Then RMEnsure FontMenu 0.21 RMLoad System:Modules.Toolbox.FontMenu  
If Boot$OSVersion >= 310 Then RMEnsure Iconbar 1.18 RMLoad System:Modules.Toolbox.Iconbar   
If Boot$OSVersion >= 310 Then RMEnsure Menu 0.32 RMLoad System:Modules.Toolbox.Menu      
If Boot$OSVersion >= 310 Then RMEnsure PrintDbox 0.14 RMLoad System:Modules.Toolbox.PrintDbox 
If Boot$OSVersion >= 310 Then RMEnsure ProgInfo 0.14 RMLoad System:Modules.Toolbox.ProgInfo  
If Boot$OSVersion >= 310 Then RMEnsure SaveAs 0.15 RMLoad System:Modules.Toolbox.SaveAs    
If Boot$OSVersion >= 310 Then RMEnsure Scale 0.13 RMLoad System:Modules.Toolbox.Scale     
If Boot$OSVersion >= 310 Then RMEnsure Window 1.47 RMLoad System:Modules.Toolbox.Window    
If Boot$OSVersion >= 350 Then RMEnsure TextGadgets 0.22 RMLoad System:Modules.Toolbox.TextGadget
If Boot$OSVersion >= 310 Then RMEnsure ToolAction 0.15 RMLoad System:Modules.Toolbox.ToolAction

00000000  7c 20 21 53 79 73 74 65  6d 2e 21 52 75 6e 0a 7c  || !System.!Run.||
00000010  20 56 65 72 73 69 6f 6e  20 31 2e 30 31 20 28 31  | Version 1.01 (1|
00000020  33 2d 4e 6f 76 2d 31 39  29 0a 49 66 20 22 3c 53  |3-Nov-19).If "<S|
00000030  79 73 74 65 6d 24 44 69  72 3e 22 20 3d 20 22 22  |ystem$Dir>" = ""|
00000040  20 54 68 65 6e 20 49 63  6f 6e 53 70 72 69 74 65  | Then IconSprite|
00000050  73 20 3c 4f 62 65 79 24  44 69 72 3e 2e 54 68 65  |s <Obey$Dir>.The|
00000060  6d 65 73 2e 21 53 70 72  69 74 65 73 0a 57 69 6d  |mes.!Sprites.Wim|
00000070  70 53 6c 6f 74 20 32 30  6b 20 32 30 6b 0a 53 65  |pSlot 20k 20k.Se|
00000080  74 20 53 79 73 74 65 6d  24 44 69 72 20 3c 4f 62  |t System$Dir <Ob|
00000090  65 79 24 44 69 72 3e 0a  2f 3c 53 79 73 74 65 6d  |ey$Dir>./<System|
000000a0  24 44 69 72 3e 2e 53 79  73 50 61 74 68 73 0a 49  |$Dir>.SysPaths.I|
000000b0  66 20 28 42 6f 6f 74 24  4f 53 56 65 72 73 69 6f  |f (Boot$OSVersio|
000000c0  6e 20 3e 3d 20 33 31 30  29 20 41 4e 44 20 28 42  |n >= 310) AND (B|
000000d0  6f 6f 74 24 4f 53 56 65  72 73 69 6f 6e 20 3c 20  |oot$OSVersion < |
000000e0  35 30 30 29 20 54 68 65  6e 20 52 4d 45 6e 73 75  |500) Then RMEnsu|
000000f0  72 65 20 43 61 6c 6c 41  53 57 49 20 30 2e 30 39  |re CallASWI 0.09|
00000100  20 52 4d 4c 6f 61 64 20  53 79 73 74 65 6d 3a 4d  | RMLoad System:M|
00000110  6f 64 75 6c 65 73 2e 43  61 6c 6c 41 53 57 49 0a  |odules.CallASWI.|
00000120  49 66 20 42 6f 6f 74 24  4f 53 56 65 72 73 69 6f  |If Boot$OSVersio|
00000130  6e 20 3e 3d 20 33 31 30  20 54 68 65 6e 20 52 4d  |n >= 310 Then RM|
00000140  45 6e 73 75 72 65 20 46  50 45 6d 75 6c 61 74 6f  |Ensure FPEmulato|
00000150  72 20 34 2e 30 33 20 52  4d 4c 6f 61 64 20 53 79  |r 4.03 RMLoad Sy|
00000160  73 74 65 6d 3a 4d 6f 64  75 6c 65 73 2e 46 50 45  |stem:Modules.FPE|
00000170  6d 75 6c 61 74 6f 72 0a  49 66 20 42 6f 6f 74 24  |mulator.If Boot$|
00000180  4f 53 56 65 72 73 69 6f  6e 20 3e 3d 20 33 31 30  |OSVersion >= 310|
00000190  20 54 68 65 6e 20 52 4d  45 6e 73 75 72 65 20 53  | Then RMEnsure S|
000001a0  68 61 72 65 64 43 4c 69  62 72 61 72 79 20 35 2e  |haredCLibrary 5.|
000001b0  36 36 20 52 4d 4c 6f 61  64 20 53 79 73 74 65 6d  |66 RMLoad System|
000001c0  3a 4d 6f 64 75 6c 65 73  2e 43 4c 69 62 0a 7c 20  |:Modules.CLib.| |
000001d0  49 6e 20 70 6c 61 63 65  20 6f 66 20 66 6f 72 6d  |In place of form|
000001e0  65 72 20 55 6e 70 6c 75  67 54 42 6f 78 0a 49 66  |er UnplugTBox.If|
000001f0  20 42 6f 6f 74 24 4f 53  56 65 72 73 69 6f 6e 20  | Boot$OSVersion |
00000200  3e 3d 20 33 31 30 20 54  68 65 6e 20 52 4d 45 6e  |>= 310 Then RMEn|
00000210  73 75 72 65 20 54 6f 6f  6c 62 6f 78 20 31 2e 34  |sure Toolbox 1.4|
00000220  31 20 52 4d 4c 6f 61 64  20 53 79 73 74 65 6d 3a  |1 RMLoad System:|
00000230  4d 6f 64 75 6c 65 73 2e  54 6f 6f 6c 62 6f 78 2e  |Modules.Toolbox.|
00000240  54 6f 6f 6c 62 6f 78 0a  49 66 20 42 6f 6f 74 24  |Toolbox.If Boot$|
00000250  4f 53 56 65 72 73 69 6f  6e 20 3e 3d 20 33 31 30  |OSVersion >= 310|
00000260  20 54 68 65 6e 20 52 4d  45 6e 73 75 72 65 20 43  | Then RMEnsure C|
00000270  6f 6c 6f 75 72 44 62 6f  78 20 30 2e 31 37 20 52  |olourDbox 0.17 R|
00000280  4d 4c 6f 61 64 20 53 79  73 74 65 6d 3a 4d 6f 64  |MLoad System:Mod|
00000290  75 6c 65 73 2e 54 6f 6f  6c 62 6f 78 2e 43 6f 6c  |ules.Toolbox.Col|
000002a0  6f 75 72 44 62 6f 78 0a  49 66 20 42 6f 6f 74 24  |ourDbox.If Boot$|
000002b0  4f 53 56 65 72 73 69 6f  6e 20 3e 3d 20 33 31 30  |OSVersion >= 310|
000002c0  20 54 68 65 6e 20 52 4d  45 6e 73 75 72 65 20 43  | Then RMEnsure C|
000002d0  6f 6c 6f 75 72 4d 65 6e  75 20 30 2e 31 39 20 52  |olourMenu 0.19 R|
000002e0  4d 4c 6f 61 64 20 53 79  73 74 65 6d 3a 4d 6f 64  |MLoad System:Mod|
000002f0  75 6c 65 73 2e 54 6f 6f  6c 62 6f 78 2e 43 6f 6c  |ules.Toolbox.Col|
00000300  6f 75 72 4d 65 6e 75 0a  49 66 20 42 6f 6f 74 24  |ourMenu.If Boot$|
00000310  4f 53 56 65 72 73 69 6f  6e 20 3e 3d 20 33 31 30  |OSVersion >= 310|
00000320  20 54 68 65 6e 20 52 4d  45 6e 73 75 72 65 20 44  | Then RMEnsure D|
00000330  43 53 20 31 2e 30 38 20  52 4d 4c 6f 61 64 20 53  |CS 1.08 RMLoad S|
00000340  79 73 74 65 6d 3a 4d 6f  64 75 6c 65 73 2e 54 6f  |ystem:Modules.To|
00000350  6f 6c 62 6f 78 2e 44 43  53 5f 51 75 69 74 0a 49  |olbox.DCS_Quit.I|
00000360  66 20 42 6f 6f 74 24 4f  53 56 65 72 73 69 6f 6e  |f Boot$OSVersion|
00000370  20 3e 3d 20 33 31 30 20  54 68 65 6e 20 52 4d 45  | >= 310 Then RME|
00000380  6e 73 75 72 65 20 46 69  6c 65 49 6e 66 6f 20 30  |nsure FileInfo 0|
00000390  2e 31 36 20 52 4d 4c 6f  61 64 20 53 79 73 74 65  |.16 RMLoad Syste|
000003a0  6d 3a 4d 6f 64 75 6c 65  73 2e 54 6f 6f 6c 62 6f  |m:Modules.Toolbo|
000003b0  78 2e 46 69 6c 65 49 6e  66 6f 20 20 0a 49 66 20  |x.FileInfo  .If |
000003c0  42 6f 6f 74 24 4f 53 56  65 72 73 69 6f 6e 20 3e  |Boot$OSVersion >|
000003d0  3d 20 33 31 30 20 54 68  65 6e 20 52 4d 45 6e 73  |= 310 Then RMEns|
000003e0  75 72 65 20 46 6f 6e 74  44 62 6f 78 20 30 2e 31  |ure FontDbox 0.1|
000003f0  36 20 52 4d 4c 6f 61 64  20 53 79 73 74 65 6d 3a  |6 RMLoad System:|
00000400  4d 6f 64 75 6c 65 73 2e  54 6f 6f 6c 62 6f 78 2e  |Modules.Toolbox.|
00000410  46 6f 6e 74 44 62 6f 78  20 20 0a 49 66 20 42 6f  |FontDbox  .If Bo|
00000420  6f 74 24 4f 53 56 65 72  73 69 6f 6e 20 3e 3d 20  |ot$OSVersion >= |
00000430  33 31 30 20 54 68 65 6e  20 52 4d 45 6e 73 75 72  |310 Then RMEnsur|
00000440  65 20 46 6f 6e 74 4d 65  6e 75 20 30 2e 32 31 20  |e FontMenu 0.21 |
00000450  52 4d 4c 6f 61 64 20 53  79 73 74 65 6d 3a 4d 6f  |RMLoad System:Mo|
00000460  64 75 6c 65 73 2e 54 6f  6f 6c 62 6f 78 2e 46 6f  |dules.Toolbox.Fo|
00000470  6e 74 4d 65 6e 75 20 20  0a 49 66 20 42 6f 6f 74  |ntMenu  .If Boot|
00000480  24 4f 53 56 65 72 73 69  6f 6e 20 3e 3d 20 33 31  |$OSVersion >= 31|
00000490  30 20 54 68 65 6e 20 52  4d 45 6e 73 75 72 65 20  |0 Then RMEnsure |
000004a0  49 63 6f 6e 62 61 72 20  31 2e 31 38 20 52 4d 4c  |Iconbar 1.18 RML|
000004b0  6f 61 64 20 53 79 73 74  65 6d 3a 4d 6f 64 75 6c  |oad System:Modul|
000004c0  65 73 2e 54 6f 6f 6c 62  6f 78 2e 49 63 6f 6e 62  |es.Toolbox.Iconb|
000004d0  61 72 20 20 20 0a 49 66  20 42 6f 6f 74 24 4f 53  |ar   .If Boot$OS|
000004e0  56 65 72 73 69 6f 6e 20  3e 3d 20 33 31 30 20 54  |Version >= 310 T|
000004f0  68 65 6e 20 52 4d 45 6e  73 75 72 65 20 4d 65 6e  |hen RMEnsure Men|
00000500  75 20 30 2e 33 32 20 52  4d 4c 6f 61 64 20 53 79  |u 0.32 RMLoad Sy|
00000510  73 74 65 6d 3a 4d 6f 64  75 6c 65 73 2e 54 6f 6f  |stem:Modules.Too|
00000520  6c 62 6f 78 2e 4d 65 6e  75 20 20 20 20 20 20 0a  |lbox.Menu      .|
00000530  49 66 20 42 6f 6f 74 24  4f 53 56 65 72 73 69 6f  |If Boot$OSVersio|
00000540  6e 20 3e 3d 20 33 31 30  20 54 68 65 6e 20 52 4d  |n >= 310 Then RM|
00000550  45 6e 73 75 72 65 20 50  72 69 6e 74 44 62 6f 78  |Ensure PrintDbox|
00000560  20 30 2e 31 34 20 52 4d  4c 6f 61 64 20 53 79 73  | 0.14 RMLoad Sys|
00000570  74 65 6d 3a 4d 6f 64 75  6c 65 73 2e 54 6f 6f 6c  |tem:Modules.Tool|
00000580  62 6f 78 2e 50 72 69 6e  74 44 62 6f 78 20 0a 49  |box.PrintDbox .I|
00000590  66 20 42 6f 6f 74 24 4f  53 56 65 72 73 69 6f 6e  |f Boot$OSVersion|
000005a0  20 3e 3d 20 33 31 30 20  54 68 65 6e 20 52 4d 45  | >= 310 Then RME|
000005b0  6e 73 75 72 65 20 50 72  6f 67 49 6e 66 6f 20 30  |nsure ProgInfo 0|
000005c0  2e 31 34 20 52 4d 4c 6f  61 64 20 53 79 73 74 65  |.14 RMLoad Syste|
000005d0  6d 3a 4d 6f 64 75 6c 65  73 2e 54 6f 6f 6c 62 6f  |m:Modules.Toolbo|
000005e0  78 2e 50 72 6f 67 49 6e  66 6f 20 20 0a 49 66 20  |x.ProgInfo  .If |
000005f0  42 6f 6f 74 24 4f 53 56  65 72 73 69 6f 6e 20 3e  |Boot$OSVersion >|
00000600  3d 20 33 31 30 20 54 68  65 6e 20 52 4d 45 6e 73  |= 310 Then RMEns|
00000610  75 72 65 20 53 61 76 65  41 73 20 30 2e 31 35 20  |ure SaveAs 0.15 |
00000620  52 4d 4c 6f 61 64 20 53  79 73 74 65 6d 3a 4d 6f  |RMLoad System:Mo|
00000630  64 75 6c 65 73 2e 54 6f  6f 6c 62 6f 78 2e 53 61  |dules.Toolbox.Sa|
00000640  76 65 41 73 20 20 20 20  0a 49 66 20 42 6f 6f 74  |veAs    .If Boot|
00000650  24 4f 53 56 65 72 73 69  6f 6e 20 3e 3d 20 33 31  |$OSVersion >= 31|
00000660  30 20 54 68 65 6e 20 52  4d 45 6e 73 75 72 65 20  |0 Then RMEnsure |
00000670  53 63 61 6c 65 20 30 2e  31 33 20 52 4d 4c 6f 61  |Scale 0.13 RMLoa|
00000680  64 20 53 79 73 74 65 6d  3a 4d 6f 64 75 6c 65 73  |d System:Modules|
00000690  2e 54 6f 6f 6c 62 6f 78  2e 53 63 61 6c 65 20 20  |.Toolbox.Scale  |
000006a0  20 20 20 0a 49 66 20 42  6f 6f 74 24 4f 53 56 65  |   .If Boot$OSVe|
000006b0  72 73 69 6f 6e 20 3e 3d  20 33 31 30 20 54 68 65  |rsion >= 310 The|
000006c0  6e 20 52 4d 45 6e 73 75  72 65 20 57 69 6e 64 6f  |n RMEnsure Windo|
000006d0  77 20 31 2e 34 37 20 52  4d 4c 6f 61 64 20 53 79  |w 1.47 RMLoad Sy|
000006e0  73 74 65 6d 3a 4d 6f 64  75 6c 65 73 2e 54 6f 6f  |stem:Modules.Too|
000006f0  6c 62 6f 78 2e 57 69 6e  64 6f 77 20 20 20 20 0a  |lbox.Window    .|
00000700  49 66 20 42 6f 6f 74 24  4f 53 56 65 72 73 69 6f  |If Boot$OSVersio|
00000710  6e 20 3e 3d 20 33 35 30  20 54 68 65 6e 20 52 4d  |n >= 350 Then RM|
00000720  45 6e 73 75 72 65 20 54  65 78 74 47 61 64 67 65  |Ensure TextGadge|
00000730  74 73 20 30 2e 32 32 20  52 4d 4c 6f 61 64 20 53  |ts 0.22 RMLoad S|
00000740  79 73 74 65 6d 3a 4d 6f  64 75 6c 65 73 2e 54 6f  |ystem:Modules.To|
00000750  6f 6c 62 6f 78 2e 54 65  78 74 47 61 64 67 65 74  |olbox.TextGadget|
00000760  0a 49 66 20 42 6f 6f 74  24 4f 53 56 65 72 73 69  |.If Boot$OSVersi|
00000770  6f 6e 20 3e 3d 20 33 31  30 20 54 68 65 6e 20 52  |on >= 310 Then R|
00000780  4d 45 6e 73 75 72 65 20  54 6f 6f 6c 41 63 74 69  |MEnsure ToolActi|
00000790  6f 6e 20 30 2e 31 35 20  52 4d 4c 6f 61 64 20 53  |on 0.15 RMLoad S|
000007a0  79 73 74 65 6d 3a 4d 6f  64 75 6c 65 73 2e 54 6f  |ystem:Modules.To|
000007b0  6f 6c 62 6f 78 2e 54 6f  6f 6c 41 63 74 69 6f 6e  |olbox.ToolAction|
000007c0  0a 0a                                             |..|
000007c2