Home » Archimedes archive » Archimedes World » AW-1994-11-Disc1.adf » Disk1Nov94 » !AWNov94/Goodies/HackDemo/!dHacker/!Run

!AWNov94/Goodies/HackDemo/!dHacker/!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 » Archimedes World » AW-1994-11-Disc1.adf » Disk1Nov94
Filename: !AWNov94/Goodies/HackDemo/!dHacker/!Run
Read OK:
File size: 030A bytes
Load address: 0000
Exec address: 0000
File contents
| Desktop Hacker !Run file
| Do not remove the initial % in the final line; it's there for a reason -
| namely, VProtect 1.6+ has a stupid bug in that interferes with args.

Set dHacker$Temp Stop
RMEnsure DesktopHacker 0 Set dHacker$Temp OK
If "<dHacker$Temp>"="Stop" Then Error 0 Desktop Hacker is already loaded.
UnSet dHacker$Temp
WimpSlot -min 128K -max 128K
Run <Obey$Dir>.Announce
Set File$Type_3F7 GamePos
Set File$Type_0D1 AddrList
Set Alias$@RunType_3F7 Run <Obey$Dir>.!Run %%*0
Set Alias$@RunType_0D1 Run <Obey$Dir>.!Run %%*0
Set Alias$@PrintType_3F7 Error Saved game files may not be printed!|M||
Set Alias$@PrintType_0D1 Run <Obey$Dir>.!Run *%%*0
IconSprites <Obey$Dir>.!Sprites
Set dHacker$Path <Obey$Dir>.
WimpSlot -min 64K -max 64K
%RMRun <Obey$Dir>.!RunImage %*0
00000000  7c 20 44 65 73 6b 74 6f  70 20 48 61 63 6b 65 72  || Desktop Hacker|
00000010  20 21 52 75 6e 20 66 69  6c 65 0a 7c 20 44 6f 20  | !Run file.| Do |
00000020  6e 6f 74 20 72 65 6d 6f  76 65 20 74 68 65 20 69  |not remove the i|
00000030  6e 69 74 69 61 6c 20 25  20 69 6e 20 74 68 65 20  |nitial % in the |
00000040  66 69 6e 61 6c 20 6c 69  6e 65 3b 20 69 74 27 73  |final line; it's|
00000050  20 74 68 65 72 65 20 66  6f 72 20 61 20 72 65 61  | there for a rea|
00000060  73 6f 6e 20 2d 0a 7c 20  6e 61 6d 65 6c 79 2c 20  |son -.| namely, |
00000070  56 50 72 6f 74 65 63 74  20 31 2e 36 2b 20 68 61  |VProtect 1.6+ ha|
00000080  73 20 61 20 73 74 75 70  69 64 20 62 75 67 20 69  |s a stupid bug i|
00000090  6e 20 74 68 61 74 20 69  6e 74 65 72 66 65 72 65  |n that interfere|
000000a0  73 20 77 69 74 68 20 61  72 67 73 2e 0a 0a 53 65  |s with args...Se|
000000b0  74 20 64 48 61 63 6b 65  72 24 54 65 6d 70 20 53  |t dHacker$Temp S|
000000c0  74 6f 70 0a 52 4d 45 6e  73 75 72 65 20 44 65 73  |top.RMEnsure Des|
000000d0  6b 74 6f 70 48 61 63 6b  65 72 20 30 20 53 65 74  |ktopHacker 0 Set|
000000e0  20 64 48 61 63 6b 65 72  24 54 65 6d 70 20 4f 4b  | dHacker$Temp OK|
000000f0  0a 49 66 20 22 3c 64 48  61 63 6b 65 72 24 54 65  |.If "<dHacker$Te|
00000100  6d 70 3e 22 3d 22 53 74  6f 70 22 20 54 68 65 6e  |mp>"="Stop" Then|
00000110  20 45 72 72 6f 72 20 30  20 44 65 73 6b 74 6f 70  | Error 0 Desktop|
00000120  20 48 61 63 6b 65 72 20  69 73 20 61 6c 72 65 61  | Hacker is alrea|
00000130  64 79 20 6c 6f 61 64 65  64 2e 0a 55 6e 53 65 74  |dy loaded..UnSet|
00000140  20 64 48 61 63 6b 65 72  24 54 65 6d 70 0a 57 69  | dHacker$Temp.Wi|
00000150  6d 70 53 6c 6f 74 20 2d  6d 69 6e 20 31 32 38 4b  |mpSlot -min 128K|
00000160  20 2d 6d 61 78 20 31 32  38 4b 0a 52 75 6e 20 3c  | -max 128K.Run <|
00000170  4f 62 65 79 24 44 69 72  3e 2e 41 6e 6e 6f 75 6e  |Obey$Dir>.Announ|
00000180  63 65 0a 53 65 74 20 46  69 6c 65 24 54 79 70 65  |ce.Set File$Type|
00000190  5f 33 46 37 20 47 61 6d  65 50 6f 73 0a 53 65 74  |_3F7 GamePos.Set|
000001a0  20 46 69 6c 65 24 54 79  70 65 5f 30 44 31 20 41  | File$Type_0D1 A|
000001b0  64 64 72 4c 69 73 74 0a  53 65 74 20 41 6c 69 61  |ddrList.Set Alia|
000001c0  73 24 40 52 75 6e 54 79  70 65 5f 33 46 37 20 52  |s$@RunType_3F7 R|
000001d0  75 6e 20 3c 4f 62 65 79  24 44 69 72 3e 2e 21 52  |un <Obey$Dir>.!R|
000001e0  75 6e 20 25 25 2a 30 0a  53 65 74 20 41 6c 69 61  |un %%*0.Set Alia|
000001f0  73 24 40 52 75 6e 54 79  70 65 5f 30 44 31 20 52  |s$@RunType_0D1 R|
00000200  75 6e 20 3c 4f 62 65 79  24 44 69 72 3e 2e 21 52  |un <Obey$Dir>.!R|
00000210  75 6e 20 25 25 2a 30 0a  53 65 74 20 41 6c 69 61  |un %%*0.Set Alia|
00000220  73 24 40 50 72 69 6e 74  54 79 70 65 5f 33 46 37  |s$@PrintType_3F7|
00000230  20 45 72 72 6f 72 20 53  61 76 65 64 20 67 61 6d  | Error Saved gam|
00000240  65 20 66 69 6c 65 73 20  6d 61 79 20 6e 6f 74 20  |e files may not |
00000250  62 65 20 70 72 69 6e 74  65 64 21 7c 4d 7c 7c 0a  |be printed!|M||.|
00000260  53 65 74 20 41 6c 69 61  73 24 40 50 72 69 6e 74  |Set Alias$@Print|
00000270  54 79 70 65 5f 30 44 31  20 52 75 6e 20 3c 4f 62  |Type_0D1 Run <Ob|
00000280  65 79 24 44 69 72 3e 2e  21 52 75 6e 20 2a 25 25  |ey$Dir>.!Run *%%|
00000290  2a 30 0a 49 63 6f 6e 53  70 72 69 74 65 73 20 3c  |*0.IconSprites <|
000002a0  4f 62 65 79 24 44 69 72  3e 2e 21 53 70 72 69 74  |Obey$Dir>.!Sprit|
000002b0  65 73 0a 53 65 74 20 64  48 61 63 6b 65 72 24 50  |es.Set dHacker$P|
000002c0  61 74 68 20 3c 4f 62 65  79 24 44 69 72 3e 2e 0a  |ath <Obey$Dir>..|
000002d0  57 69 6d 70 53 6c 6f 74  20 2d 6d 69 6e 20 36 34  |WimpSlot -min 64|
000002e0  4b 20 2d 6d 61 78 20 36  34 4b 0a 25 52 4d 52 75  |K -max 64K.%RMRu|
000002f0  6e 20 3c 4f 62 65 79 24  44 69 72 3e 2e 21 52 75  |n <Obey$Dir>.!Ru|
00000300  6e 49 6d 61 67 65 20 25  2a 30                    |nImage %*0|
0000030a