Home » Archimedes archive » Acorn User » AU 1995-10.adf » !Direct » Director/!Director/Menus/System/Tasks

Director/!Director/Menus/System/Tasks

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 1995-10.adf » !Direct
Filename: Director/!Director/Menus/System/Tasks
Read OK:
File size: 0256 bytes
Load address: 0000
Exec address: 0000
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
    1REM >Director:Menus.System.Tasks
    2
    3*Set Director$Menu Tasks
    4
    5size=256
    6DIM buffer size
    7task=0
    8SYS "Director_Menu","Tasks -temp"
    9enum=FNswi_number("TaskManager_EnumerateTasks")
   10option=FNswi_number("Director_Option")
   11REPEAT
   12 SYS "TaskManager_EnumerateTasks",task,buffer,size TO task,end
   13 ptr=buffer
   14 WHILE ptr<end
   15  t$=FN0(ptr!4)
   16  SYS option,""""+t$+""""
   17  ptr+=16
   18 ENDWHILE
   19UNTIL task<0
   20SYS "Director_EndMenu"
   21END
   22
   23DEF FNswi_number(swi$)
   24SYS "OS_SWINumberFromString",,swi$ TO swi%
   25=swi%
   26
   27DEF FN0(a)
   28a$=""
   29WHILE ?a>=32
   30 a$+=CHR$?a
   31 a+=1
   32ENDWHILE
   33=a$
   34
"� >Director:Menus.System.Tasks

*Set Director$Menu Tasks

size=256
� buffer size

task=0
$ș "Director_Menu","Tasks -temp"
	2enum=�swi_number("TaskManager_EnumerateTasks")

)option=�swi_number("Director_Option")
�
@ ș "TaskManager_EnumerateTasks",task,buffer,size � task,end

 ptr=buffer
 ȕ ptr<end
  t$=�0(ptr!4)
  ș option,""""+t$+""""

  ptr+=16
 �
� task<0
ș "Director_EndMenu"
�

� �swi_number(swi$)
,ș "OS_SWINumberFromString",,swi$ � swi%
	=swi%

� �0(a)
	a$=""

ȕ ?a>=32
 a$+=�?a
	 a+=1
 �
!=a$
"
�
00000000  0d 00 01 22 f4 20 3e 44  69 72 65 63 74 6f 72 3a  |...". >Director:|
00000010  4d 65 6e 75 73 2e 53 79  73 74 65 6d 2e 54 61 73  |Menus.System.Tas|
00000020  6b 73 0d 00 02 04 0d 00  03 1c 2a 53 65 74 20 44  |ks........*Set D|
00000030  69 72 65 63 74 6f 72 24  4d 65 6e 75 20 54 61 73  |irector$Menu Tas|
00000040  6b 73 0d 00 04 04 0d 00  05 0c 73 69 7a 65 3d 32  |ks........size=2|
00000050  35 36 0d 00 06 11 de 20  62 75 66 66 65 72 20 73  |56..... buffer s|
00000060  69 7a 65 0d 00 07 0a 74  61 73 6b 3d 30 0d 00 08  |ize....task=0...|
00000070  24 c8 99 20 22 44 69 72  65 63 74 6f 72 5f 4d 65  |$.. "Director_Me|
00000080  6e 75 22 2c 22 54 61 73  6b 73 20 2d 74 65 6d 70  |nu","Tasks -temp|
00000090  22 0d 00 09 32 65 6e 75  6d 3d a4 73 77 69 5f 6e  |"...2enum=.swi_n|
000000a0  75 6d 62 65 72 28 22 54  61 73 6b 4d 61 6e 61 67  |umber("TaskManag|
000000b0  65 72 5f 45 6e 75 6d 65  72 61 74 65 54 61 73 6b  |er_EnumerateTask|
000000c0  73 22 29 0d 00 0a 29 6f  70 74 69 6f 6e 3d a4 73  |s")...)option=.s|
000000d0  77 69 5f 6e 75 6d 62 65  72 28 22 44 69 72 65 63  |wi_number("Direc|
000000e0  74 6f 72 5f 4f 70 74 69  6f 6e 22 29 0d 00 0b 05  |tor_Option")....|
000000f0  f5 0d 00 0c 40 20 c8 99  20 22 54 61 73 6b 4d 61  |....@ .. "TaskMa|
00000100  6e 61 67 65 72 5f 45 6e  75 6d 65 72 61 74 65 54  |nager_EnumerateT|
00000110  61 73 6b 73 22 2c 74 61  73 6b 2c 62 75 66 66 65  |asks",task,buffe|
00000120  72 2c 73 69 7a 65 20 b8  20 74 61 73 6b 2c 65 6e  |r,size . task,en|
00000130  64 0d 00 0d 0f 20 70 74  72 3d 62 75 66 66 65 72  |d.... ptr=buffer|
00000140  0d 00 0e 0f 20 c8 95 20  70 74 72 3c 65 6e 64 0d  |.... .. ptr<end.|
00000150  00 0f 12 20 20 74 24 3d  a4 30 28 70 74 72 21 34  |...  t$=.0(ptr!4|
00000160  29 0d 00 10 1c 20 20 c8  99 20 6f 70 74 69 6f 6e  |)....  .. option|
00000170  2c 22 22 22 22 2b 74 24  2b 22 22 22 22 0d 00 11  |,""""+t$+""""...|
00000180  0d 20 20 70 74 72 2b 3d  31 36 0d 00 12 06 20 ce  |.  ptr+=16.... .|
00000190  0d 00 13 0c fd 20 74 61  73 6b 3c 30 0d 00 14 19  |..... task<0....|
000001a0  c8 99 20 22 44 69 72 65  63 74 6f 72 5f 45 6e 64  |.. "Director_End|
000001b0  4d 65 6e 75 22 0d 00 15  05 e0 0d 00 16 04 0d 00  |Menu"...........|
000001c0  17 17 dd 20 a4 73 77 69  5f 6e 75 6d 62 65 72 28  |... .swi_number(|
000001d0  73 77 69 24 29 0d 00 18  2c c8 99 20 22 4f 53 5f  |swi$)...,.. "OS_|
000001e0  53 57 49 4e 75 6d 62 65  72 46 72 6f 6d 53 74 72  |SWINumberFromStr|
000001f0  69 6e 67 22 2c 2c 73 77  69 24 20 b8 20 73 77 69  |ing",,swi$ . swi|
00000200  25 0d 00 19 09 3d 73 77  69 25 0d 00 1a 04 0d 00  |%....=swi%......|
00000210  1b 0b dd 20 a4 30 28 61  29 0d 00 1c 09 61 24 3d  |... .0(a)....a$=|
00000220  22 22 0d 00 1d 0d c8 95  20 3f 61 3e 3d 33 32 0d  |""...... ?a>=32.|
00000230  00 1e 0c 20 61 24 2b 3d  bd 3f 61 0d 00 1f 09 20  |... a$+=.?a.... |
00000240  61 2b 3d 31 0d 00 20 05  ce 0d 00 21 07 3d 61 24  |a+=1.. ....!.=a$|
00000250  0d 00 22 04 0d ff                                 |.."...|
00000256