Home » Archimedes archive » Acorn User » AU 1997-10 A.adf » Extras » Apple][e/!Virtu/!Run

Apple][e/!Virtu/!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 » Archimedes archive » Acorn User » AU 1997-10 A.adf » Extras
Filename: Apple][e/!Virtu/!Run
Read OK:
File size: 031C bytes
Load address: 0000
Exec address: 0000
File contents
| ** Virtu !Run **

If "<Virtu$Lock>" = "True" Then Error Virtu is already running

Set Virtu$Dir <Obey$Dir>

IconSprites <Obey$Dir>.!Sprites

If "<System$Path>" = "" Then Error System resources not found

RMEnsure SharedCLibrary 0.00 RMLoad System:Modules.CLib
RMEnsure SharedCLibrary 3.76 Error Requires SharedCLibrary v3.76+
RMEnsure VSound 0.00 RMLoad <Virtu$Dir>.Modules.VSound
RMEnsure VSound 0.00 Error Requires VSound Module

|Include the following to use Leading Edge Joystick Interface
|RMEnsure Joystick 3.00 RMLoad <Virtu$Dir>.Modules.VTwistJS
|Include the following when no joystick interface is available
RMEnsure Joystick 0.00 RMLoad <Virtu$Dir>.Modules.RJoystick
RMEnsure Joystick 0.00 Error Requires Joystick Module

WimpSlot 432K 432K
Run <Virtu$Dir>.!RunImage

Unset Virtu$Dir
00000000  7c 20 2a 2a 20 56 69 72  74 75 20 21 52 75 6e 20  || ** Virtu !Run |
00000010  2a 2a 0a 0a 49 66 20 22  3c 56 69 72 74 75 24 4c  |**..If "<Virtu$L|
00000020  6f 63 6b 3e 22 20 3d 20  22 54 72 75 65 22 20 54  |ock>" = "True" T|
00000030  68 65 6e 20 45 72 72 6f  72 20 56 69 72 74 75 20  |hen Error Virtu |
00000040  69 73 20 61 6c 72 65 61  64 79 20 72 75 6e 6e 69  |is already runni|
00000050  6e 67 0a 0a 53 65 74 20  56 69 72 74 75 24 44 69  |ng..Set Virtu$Di|
00000060  72 20 3c 4f 62 65 79 24  44 69 72 3e 0a 0a 49 63  |r <Obey$Dir>..Ic|
00000070  6f 6e 53 70 72 69 74 65  73 20 3c 4f 62 65 79 24  |onSprites <Obey$|
00000080  44 69 72 3e 2e 21 53 70  72 69 74 65 73 0a 0a 49  |Dir>.!Sprites..I|
00000090  66 20 22 3c 53 79 73 74  65 6d 24 50 61 74 68 3e  |f "<System$Path>|
000000a0  22 20 3d 20 22 22 20 54  68 65 6e 20 45 72 72 6f  |" = "" Then Erro|
000000b0  72 20 53 79 73 74 65 6d  20 72 65 73 6f 75 72 63  |r System resourc|
000000c0  65 73 20 6e 6f 74 20 66  6f 75 6e 64 0a 0a 52 4d  |es not found..RM|
000000d0  45 6e 73 75 72 65 20 53  68 61 72 65 64 43 4c 69  |Ensure SharedCLi|
000000e0  62 72 61 72 79 20 30 2e  30 30 20 52 4d 4c 6f 61  |brary 0.00 RMLoa|
000000f0  64 20 53 79 73 74 65 6d  3a 4d 6f 64 75 6c 65 73  |d System:Modules|
00000100  2e 43 4c 69 62 0a 52 4d  45 6e 73 75 72 65 20 53  |.CLib.RMEnsure S|
00000110  68 61 72 65 64 43 4c 69  62 72 61 72 79 20 33 2e  |haredCLibrary 3.|
00000120  37 36 20 45 72 72 6f 72  20 52 65 71 75 69 72 65  |76 Error Require|
00000130  73 20 53 68 61 72 65 64  43 4c 69 62 72 61 72 79  |s SharedCLibrary|
00000140  20 76 33 2e 37 36 2b 0a  52 4d 45 6e 73 75 72 65  | v3.76+.RMEnsure|
00000150  20 56 53 6f 75 6e 64 20  30 2e 30 30 20 52 4d 4c  | VSound 0.00 RML|
00000160  6f 61 64 20 3c 56 69 72  74 75 24 44 69 72 3e 2e  |oad <Virtu$Dir>.|
00000170  4d 6f 64 75 6c 65 73 2e  56 53 6f 75 6e 64 0a 52  |Modules.VSound.R|
00000180  4d 45 6e 73 75 72 65 20  56 53 6f 75 6e 64 20 30  |MEnsure VSound 0|
00000190  2e 30 30 20 45 72 72 6f  72 20 52 65 71 75 69 72  |.00 Error Requir|
000001a0  65 73 20 56 53 6f 75 6e  64 20 4d 6f 64 75 6c 65  |es VSound Module|
000001b0  0a 0a 7c 49 6e 63 6c 75  64 65 20 74 68 65 20 66  |..|Include the f|
000001c0  6f 6c 6c 6f 77 69 6e 67  20 74 6f 20 75 73 65 20  |ollowing to use |
000001d0  4c 65 61 64 69 6e 67 20  45 64 67 65 20 4a 6f 79  |Leading Edge Joy|
000001e0  73 74 69 63 6b 20 49 6e  74 65 72 66 61 63 65 0a  |stick Interface.|
000001f0  7c 52 4d 45 6e 73 75 72  65 20 4a 6f 79 73 74 69  ||RMEnsure Joysti|
00000200  63 6b 20 33 2e 30 30 20  52 4d 4c 6f 61 64 20 3c  |ck 3.00 RMLoad <|
00000210  56 69 72 74 75 24 44 69  72 3e 2e 4d 6f 64 75 6c  |Virtu$Dir>.Modul|
00000220  65 73 2e 56 54 77 69 73  74 4a 53 0a 7c 49 6e 63  |es.VTwistJS.|Inc|
00000230  6c 75 64 65 20 74 68 65  20 66 6f 6c 6c 6f 77 69  |lude the followi|
00000240  6e 67 20 77 68 65 6e 20  6e 6f 20 6a 6f 79 73 74  |ng when no joyst|
00000250  69 63 6b 20 69 6e 74 65  72 66 61 63 65 20 69 73  |ick interface is|
00000260  20 61 76 61 69 6c 61 62  6c 65 0a 52 4d 45 6e 73  | available.RMEns|
00000270  75 72 65 20 4a 6f 79 73  74 69 63 6b 20 30 2e 30  |ure Joystick 0.0|
00000280  30 20 52 4d 4c 6f 61 64  20 3c 56 69 72 74 75 24  |0 RMLoad <Virtu$|
00000290  44 69 72 3e 2e 4d 6f 64  75 6c 65 73 2e 52 4a 6f  |Dir>.Modules.RJo|
000002a0  79 73 74 69 63 6b 0a 52  4d 45 6e 73 75 72 65 20  |ystick.RMEnsure |
000002b0  4a 6f 79 73 74 69 63 6b  20 30 2e 30 30 20 45 72  |Joystick 0.00 Er|
000002c0  72 6f 72 20 52 65 71 75  69 72 65 73 20 4a 6f 79  |ror Requires Joy|
000002d0  73 74 69 63 6b 20 4d 6f  64 75 6c 65 0a 0a 57 69  |stick Module..Wi|
000002e0  6d 70 53 6c 6f 74 20 34  33 32 4b 20 34 33 32 4b  |mpSlot 432K 432K|
000002f0  0a 52 75 6e 20 3c 56 69  72 74 75 24 44 69 72 3e  |.Run <Virtu$Dir>|
00000300  2e 21 52 75 6e 49 6d 61  67 65 0a 0a 55 6e 73 65  |.!RunImage..Unse|
00000310  74 20 56 69 72 74 75 24  44 69 72 0a              |t Virtu$Dir.|
0000031c