Home » Archimedes archive » Acorn User » AU 1998-04 A.adf » PD » Avison/!TaskUsage/!Help
Avison/!TaskUsage/!Help
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 1998-04 A.adf » PD |
Filename: | Avison/!TaskUsage/!Help |
Read OK: | ✔ |
File size: | 478D bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
Help for Task Usage Version 1.15 =================== � Martin Avison Avisoft Purpose ======= The purpose of this little application is to display in figures and graphically: � the recent average processor usage for each Task � the recent average processor usage for each Wimp Reason Code � the number of Wimp Polls being processed The Reason Code and Poll details can be for all Tasks, or for a specific Task. If for a specific task, any Reason Codes masked out by the task are shaded. This is all done with as little overhead as possible. The idea grew from a theory that some tasks seemed to take more processing power than they should, either permanently or intermittently, making the desktop sluggish. The main causes seems to be programmers simple mistakes, or programmers being lazy, and ignoring the exhortation in the Programmer's Reference manual, page 3-116: "You can disable some of the event codes: they are neither checked for nor returned, and need not have any handlers provided. You must do this for as many codes as possible, especially the Null_Reason_Code, if your task is to run efficiently under the Wimp." PLEASE TAKE NOTE! With the help of TaskUsage we all now have NO excuse! How to use TaskUsage ==================== The TaskUsage application is started in the normal way by double-clicking on the !TaskUsage icon in a Filer window. It will install on the Icon Bar a TaskUsage icon consisting of a box containing 'CPU'. However, after a small delay to collect initial statistics, the TaskUsage Icon Bar icon will be updated each second or two with a graphical representation of the total processor usage. The update time will be one second for RISC OS 3.5 and above (ie at least RISC PC), and two seconds for the slower machines to avoid a large display overhead. This default should be reasonable, but the default can be overridden if required (please see the !Run file for details) The Icon will normally show the usage over the last 40 seconds or so. If Select is clicked on the TaskUsage icon bar icon, the Task Processor Usage window will open. This window is in a similar format to the Task Manager's display of Storage usage, showing the current tasks, and in the same order. Against each task is shown the recent average percentage processor usage, as a percentage figure and a coloured bar graph. In addition, the overall Processor usage is given, and the totals for Application and for Module tasks. The display will update every second or two, and will adjust itself whenever tasks are started or stopped. The window can be resized in the usual RISC OS way, but if Select is clicked on the Icon Bar the window will revert to the initial state, showing all Application Tasks, and only the total for the Module Tasks. If Adjust is clicked on the TaskUsage icon bar icon, the Task Reason Code Usage window will open. This shows the recent average number of Wimp Polls being processed per second, and the processor usage for each Wimp Reason code. If a task is clicked on in the Task Processor Usage window, the Task Reason Code Usage window will change to show the figures for that task only. While a specific task is being monitored, any Reason Codes which the task has masked out because it is not interested in them are shaded. To revert to monitoring all tasks, simply click on any totals line in either window. Note that the Reason Code shading cannot be updated until the task does something, however trivial. This is prompted by TaskUsage sending the task a Wimp_HelpRequest message, which is usually sufficient. If all the reasons remain shaded, try opening a menu or a window for the task. Unfortunately, if the Filer is clicked on, you may get an error message from the Filer of 'Message token MH not found'. This will stop happening if a menu is opened over any Filer window! And before you ask, I do not know why! If Menu is clicked on the TaskUsage icon bar icon (or on either TaskUsage window), the usual Info and Quit options are available. In addition there is a Timer option, which just shows details of the Timer being used and the Update frequency, and Task and Reason options which will also open the windows. Note that full Interactive Help is available on all Menus and Windows, if !Help or !BubbleHelp is running. Machine Requirements ==================== Any measurement will distort what is being measured, and Task Usage is no exception. However, the overheads have been pared to a minimum to enable it to be run easily on any RISC OS machine. Note that at least RISC OS 3.00 is required to run TaskUsage. The memory requirements are approximately as follows: � The TaskUsage relocatable module 6,192 � The TaskUsage module workarea 6,272 � The Messages file 1,848 Total Storage 14,312 The total storage required to run Task Usage is therefore only about 14k, all in the Relocatable Module Area, regardless of the machine model and page size. Some 5k or so additional storage will also be obtained by the Wimp in the RMA to hold window definitions etc. for the Task Usage application. Task Usage measures it's own task, which uses on average the following processor power on two machines, with both windows open, even with over 100 tasks running. Note it is even less without the windows open! � RISC PC with StrongArm less than 1% processor � A4000 varies between about 10% and 30% RmKill TaskUsage can be safely used to remove the module from storage. Quitting the TaskUsage application will do this automatically. How the Processor Usage is Calculated ===================================== When TaskUsage initialises, it installs the following timing code in RISC OS: � The internal Timer 1 is used to obtain all elapse times. This requires interrupt code, which is only 6 instructions long, but it is called many times a second, depending on the 'precision' of the timing clock being used. !TaskUsage automatically sets the precision depending on the RISC OS version, and whether StrongArm is fitted. This is so that faster processors can use a higher precision timer, but slower processors are not spending too much time trying to be over accurate! The default settings should be reasonable, but the default can be overridden if required (please see the !Run file for details) Precision Timers/Sec Default used 0 100 1 200 2 400 v3.00, v3.10, v3.11 3 800 4 1,600 v3.50, v3.70 (ie RISC PC) 5 3,200 6 6,400 v3.70 with StrongArm 7 12,800 8 25,600 The higher the precision, the more accurate, but the more overhead!! This internal Timer is used in preference to the RISC OS Monotonic Time, because that is only available in centiseconds. A StrongArm machine can poll at 20,000 times a second, so using a timer which is only capable of measuring to 100 times a second is rather inaccurate! Note however that there can be only one user of Timer 1 - if you have another Application which uses Timer 1, then if they are both running at the same time, the first one started will NOT work properly. If you need to run both applications, then using a precision of M will set TaskUsage to use the Monotonic Time (100 Timers/sec) instead of Timer 1. The precision and the timer being used can be displayed by the menu option Timer. When TaskUsage initialises, it installs the following monitoring code in RISC OS: � The Wimp Post-Filter code, which is about 12 instructions long, and is called every time a program returns from a Wimp Poll. � The Wimp Pre-Filter code, which is about 33 instructions long, and is called every time a program calls Wimp Poll. � The Interrupt code, which is called every second (or two), is about 230 instructions, plus 10 for each of the maximum number of tasks that have run concurrently since the computer has been started or Reset. Using the times gathered by this monitoring code, the following are calculated: � The elapse time is recorded for each Task, from the time when the application is returned to after calling WimpPoll, to the time the application calls WimpPoll again. This is the elapsed time spent in the application Task. It will usually comprise Processor time, but if any input or output is involved, there may be some time spent waiting for the disc or other device. � In addition, each second the interrupt routine first accumulates the time for the Task and Reason Code which it has interrupted. It then calculates the latest average for each Task, and for each Wimp Reason Code. The average is a simple rolling 'average', calculated by taking the last average, adding the latest elapsed processor time, and dividing by two. It is not a true average, but it is simple, quick, and gives a reasonable representation of the usage. Test Programs Supplied ====================== In the !TaskUsage directory there is a directory called TestProgs. This contains four simple programs: � PollAsm an Assembler WimPoll loop on NullPoll � PollBasic a BASIC WimPoll loop on NullPoll � PollIdleBa a BASIC WimPollIdle loop on NullPoll with 1/10 second delay � PollModule an Assembler WimPoll loop on NullPoll in a Relocatable Module Note that all these programs appear to do NOTHING when double clicked on. No icons appear! They simply poll as fast as possible. The only way to stop them is to select Quit from the Task Manager display. Some test results from monitoring the Polling programs, with little else running, on two different machines, are as follows: RISC PC600 StrongArm RISC OS 3.70 ----------------------------------- Precision 5 Timer Used Timer 1 Timers/Second 6,400 Seconds/Update 1 CPU Usage/Task Polls/Second Programs 1 Task 2 Tasks 1 Task 2 Tasks PollModule 22% 10% 18,500 5,700 PollAsm 20% 5% 18,400 800 PollBasic 60% 15% 11,800 590 PollIdleBa 0% 0% 10 10 A4000 RISC OS 3.10 -------------------- Precision 2 Timer Used Timer 1 Timers/Second 400 Seconds/Update 2 CPU Usage/Task Polls/Second Programs 1 Task 2 Tasks 1 Task 2 Tasks PollModule 8% 4% 750 200 PollAsm 8% 4% 750 180 PollBasic 45% 15% 400 130 PollIdleBa 4% 4% 10 10 Observations from using TaskUsage ================================= � If RISC OS is not operating in multi-tasking mode, for example when F12 is used for a command line, or when a program is run which does not call Wimp Poll, then the figures collected will be (very) distorted, but will soon recover when multi-tasking is resumed. � The time spent in applications either before the first call to WimpPoll, or after the return from the last WimpPoll, are not included in the times shown by TaskUsage, as they are not then multi-tasking. � The time spent by RISC OS itself when not actually running tasks is not included in the times shown by TaskUsage. � Any interrupt code is included in the application which happens to be running at the time, but this should be small. � The number of Wimp Polls which are being processed per second tends to grow, then fall, as the system gets busier, as it can service each task less frequently. Note that a large Null Reason Code time is not necessarily bad: it may show that the system has some spare time to do any background tasks required. � On a RISC PC 600, an assembler loop round a Wimp_Poll in an Application Task can manage over 1,600 polls per second, and uses about 10% of the processor, if running on its own. However, if another is started, the total drops to about 500, and each task is getting about half. The total drop must be because of the overheads of running more than one application task, which requires memory to be paged in and out. The system polling capability is then divided by the number of tasks running. Subsequent additional tasks do not reduce the total significantly, but each task only gets it's share of Null Polls. This is why misbehaved tasks which use the Null reason code when not required soak up such large amounts of processor time, making the system less responsive, even though Null codes are processed with the lowest priority. � On a RISC PC 600, an BASIC loop round a Wimp_Poll can manage about 650 polls per second, and uses about 55% of the processor, if running on its own. However, if another is started, the total drops to about 350, and each task is getting about half. The drop of the total is less than with the assembler Poll, but this is probably because the multi-tasking overheads are partly overshadowed by the Basic overheads. Again, each task gets it's share of the Null Polls. � On a StrongArm RISC PC, the assembler Wimp_Poll loop can reach 19,000 polls per second, and the Basic loop can reach 1,550. Some observations on a few specific applications is as follows: � !PCpro, version 2.03, supplier Aleph 1: This uses 90%+ if the PC window is open, and has the input focus. This falls to 60% if it does not have the input focus, and 0% if frozen. If in full screen mode, it is obviously 100%. � !Usage, dated 30/1/92, supplier Acorn: This sometimes uses up to 30%, although it does not report the high usage! � !OmniDesk, version 1.10, supplier Acorn User: Exhibits large amounts of Null Poll processor time. It appears that the author planned to use PollIdle to poll once a second, as all the code it present apart from passing the time to Wimp_PollIdle. This applies to IconFlags, SWIIndex, and WindFlags. � !Larger, version 2.14, supplier Warm Silence Software: seems to use WimpPollIdle with a zero time in some cases (eg when a window had been dragged) until a mouse click is done on the !Larger backdrop. Then the time is set to 25 centiseconds, and the usage drops considerably. � !FireworkzPro, version 1.30/06, supplier Colton Software: uses large amounts of Null Poll processor time, even when just loaded on the Icon Bar. � !EasyFontPro, version 4.13a, supplier Fabis Computing: uses large amounts of Null Poll processor time, even when just loaded on the Icon Bar. These observations may not be typical - or even accurate! No criticism of the software is expessed or implied. Acknowledgements ================ To Ran Mokady, for the initial inspiration for this !TaskUsage application. I obtained his !Usage application, version 1.00, dated 24th May 1990, from The Datafile. However, it tended to lose storage, and it had a relatively high processor overhead. As there was no contact information for Ran, I decided to try and improve on it. To Dominic Symes, for Zap, a wonderful editor. Conditions of Use ================= Please note that all the software and documentation supplied with TaskUsage is copyright, and may only be copied for personal backup purposes. Although TaskUsage is believed to be free of any bugs, Avisoft cannot accept any responsibility for any loss or corruption of data which might result from using TaskUsage. Normal testing and data backup should be performed! Problems and Suggestions ======================== If any bugs or problems are found, or if you have any suggestions for improvements, please send me full details including version information, preferably on eMail, so that I can recreate the problem and try to correct it. History ======= v0.?? 15/ 5/96 All v0 were development versions, never released. It started as a BASIC program with a small Relocatable Module, and was gradually changed to a full Relocatable Module Wimp Task, using BASIC assembler. This was to reduce storage requirements, and to eliminate the memory switching overhead when TaskUsage became active. v1.00 9/03/97 Allowed Monotonic Time from parm v1.01 9/03/97 Added Timer display dialog box v1.02 11/03/97 Fixed time data precisions v1.03 20/04/97 Allowed parm to vary PollIdle and Display time v1.04 09/05/97 Displayed PollTime in Timer dialog box v1.05 25/05/97 Corrected initialisation mask and LastTimer problems v1.06 20/08/97 Reduce Wimp Title to avoid old RISC OS problem v1.07 9/09/97 Made menu persistent if adjust pressed v1.10 14/12/97 First version released v1.11 1/ 2/98 Catered for Nested Window Manager v1.12 7/ 2/98 Tidied up Templates and Template handling v1.13 9/ 2/98 Optimised FNgettime and parameter setup v1.14 10/ 2/98 Reduced stack size v1.15 11/ 2/98 Reduced Reason time list Contact Information =================== eMail: support@avisoft.force9.net SnailMail: Martin Avison, Avisoft, 16 Well Close, Leigh, TONBRIDGE, Kent TN11 8RQ Phone: 01732 833549 ******************************************************* ** If this help has flashed past too fast to read, ** ** then please load !Edit and try again! ** *******************************************************
00000000 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |. | 00000010 20 20 20 20 20 20 20 20 48 65 6c 70 20 66 6f 72 | Help for| 00000020 20 54 61 73 6b 20 55 73 61 67 65 20 20 20 20 20 | Task Usage | 00000030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000040 20 20 20 56 65 72 73 69 6f 6e 20 31 2e 31 35 0a | Version 1.15.| 00000050 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000060 20 20 20 20 20 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d | =========| 00000070 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 20 20 20 20 20 20 |========== | 00000080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000090 20 20 a9 20 4d 61 72 74 69 6e 20 41 76 69 73 6f | . Martin Aviso| 000000a0 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |n. | 000000b0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 000000e0 20 20 20 20 41 76 69 73 6f 66 74 0a 20 20 50 75 | Avisoft. Pu| 000000f0 72 70 6f 73 65 0a 20 20 3d 3d 3d 3d 3d 3d 3d 0a |rpose. =======.| 00000100 0a 20 20 54 68 65 20 70 75 72 70 6f 73 65 20 6f |. The purpose o| 00000110 66 20 74 68 69 73 20 6c 69 74 74 6c 65 20 61 70 |f this little ap| 00000120 70 6c 69 63 61 74 69 6f 6e 20 69 73 20 74 6f 20 |plication is to | 00000130 64 69 73 70 6c 61 79 20 69 6e 20 66 69 67 75 72 |display in figur| 00000140 65 73 20 61 6e 64 20 67 72 61 70 68 69 63 61 6c |es and graphical| 00000150 6c 79 3a 0a 0a 20 20 8f 20 20 20 20 74 68 65 20 |ly:.. . the | 00000160 72 65 63 65 6e 74 20 61 76 65 72 61 67 65 20 70 |recent average p| 00000170 72 6f 63 65 73 73 6f 72 20 75 73 61 67 65 20 66 |rocessor usage f| 00000180 6f 72 20 65 61 63 68 20 54 61 73 6b 0a 20 20 8f |or each Task. .| 00000190 20 20 20 20 74 68 65 20 72 65 63 65 6e 74 20 61 | the recent a| 000001a0 76 65 72 61 67 65 20 70 72 6f 63 65 73 73 6f 72 |verage processor| 000001b0 20 75 73 61 67 65 20 66 6f 72 20 65 61 63 68 20 | usage for each | 000001c0 57 69 6d 70 20 52 65 61 73 6f 6e 20 43 6f 64 65 |Wimp Reason Code| 000001d0 0a 20 20 8f 20 20 20 20 74 68 65 20 6e 75 6d 62 |. . the numb| 000001e0 65 72 20 6f 66 20 57 69 6d 70 20 50 6f 6c 6c 73 |er of Wimp Polls| 000001f0 20 62 65 69 6e 67 20 70 72 6f 63 65 73 73 65 64 | being processed| 00000200 0a 0a 20 20 54 68 65 20 52 65 61 73 6f 6e 20 43 |.. The Reason C| 00000210 6f 64 65 20 61 6e 64 20 50 6f 6c 6c 20 64 65 74 |ode and Poll det| 00000220 61 69 6c 73 20 63 61 6e 20 62 65 20 66 6f 72 20 |ails can be for | 00000230 61 6c 6c 20 54 61 73 6b 73 2c 20 6f 72 20 66 6f |all Tasks, or fo| 00000240 72 20 61 20 73 70 65 63 69 66 69 63 20 54 61 73 |r a specific Tas| 00000250 6b 2e 0a 20 20 49 66 20 66 6f 72 20 61 20 73 70 |k.. If for a sp| 00000260 65 63 69 66 69 63 20 74 61 73 6b 2c 20 61 6e 79 |ecific task, any| 00000270 20 52 65 61 73 6f 6e 20 43 6f 64 65 73 20 6d 61 | Reason Codes ma| 00000280 73 6b 65 64 20 6f 75 74 20 62 79 20 74 68 65 20 |sked out by the | 00000290 74 61 73 6b 20 61 72 65 20 73 68 61 64 65 64 2e |task are shaded.| 000002a0 0a 0a 20 20 54 68 69 73 20 69 73 20 61 6c 6c 20 |.. This is all | 000002b0 64 6f 6e 65 20 77 69 74 68 20 61 73 20 6c 69 74 |done with as lit| 000002c0 74 6c 65 20 6f 76 65 72 68 65 61 64 20 61 73 20 |tle overhead as | 000002d0 70 6f 73 73 69 62 6c 65 2e 0a 0a 20 20 54 68 65 |possible... The| 000002e0 20 69 64 65 61 20 67 72 65 77 20 66 72 6f 6d 20 | idea grew from | 000002f0 61 20 74 68 65 6f 72 79 20 74 68 61 74 20 73 6f |a theory that so| 00000300 6d 65 20 74 61 73 6b 73 20 73 65 65 6d 65 64 20 |me tasks seemed | 00000310 74 6f 20 74 61 6b 65 20 6d 6f 72 65 20 70 72 6f |to take more pro| 00000320 63 65 73 73 69 6e 67 20 70 6f 77 65 72 0a 20 20 |cessing power. | 00000330 74 68 61 6e 20 74 68 65 79 20 73 68 6f 75 6c 64 |than they should| 00000340 2c 20 65 69 74 68 65 72 20 70 65 72 6d 61 6e 65 |, either permane| 00000350 6e 74 6c 79 20 6f 72 20 69 6e 74 65 72 6d 69 74 |ntly or intermit| 00000360 74 65 6e 74 6c 79 2c 20 6d 61 6b 69 6e 67 20 74 |tently, making t| 00000370 68 65 20 64 65 73 6b 74 6f 70 0a 20 20 73 6c 75 |he desktop. slu| 00000380 67 67 69 73 68 2e 20 20 54 68 65 20 6d 61 69 6e |ggish. The main| 00000390 20 63 61 75 73 65 73 20 73 65 65 6d 73 20 74 6f | causes seems to| 000003a0 20 62 65 20 70 72 6f 67 72 61 6d 6d 65 72 73 20 | be programmers | 000003b0 73 69 6d 70 6c 65 20 6d 69 73 74 61 6b 65 73 2c |simple mistakes,| 000003c0 20 6f 72 0a 20 20 70 72 6f 67 72 61 6d 6d 65 72 | or. programmer| 000003d0 73 20 62 65 69 6e 67 20 6c 61 7a 79 2c 20 61 6e |s being lazy, an| 000003e0 64 20 69 67 6e 6f 72 69 6e 67 20 74 68 65 20 65 |d ignoring the e| 000003f0 78 68 6f 72 74 61 74 69 6f 6e 20 69 6e 20 74 68 |xhortation in th| 00000400 65 20 50 72 6f 67 72 61 6d 6d 65 72 27 73 0a 20 |e Programmer's. | 00000410 20 52 65 66 65 72 65 6e 63 65 20 6d 61 6e 75 61 | Reference manua| 00000420 6c 2c 20 70 61 67 65 20 33 2d 31 31 36 3a 0a 0a |l, page 3-116:..| 00000430 20 20 20 20 20 20 20 22 59 6f 75 20 63 61 6e 20 | "You can | 00000440 64 69 73 61 62 6c 65 20 73 6f 6d 65 20 6f 66 20 |disable some of | 00000450 74 68 65 20 65 76 65 6e 74 20 63 6f 64 65 73 3a |the event codes:| 00000460 20 74 68 65 79 20 61 72 65 20 6e 65 69 74 68 65 | they are neithe| 00000470 72 20 63 68 65 63 6b 65 64 20 66 6f 72 0a 20 20 |r checked for. | 00000480 20 20 20 20 20 6e 6f 72 20 72 65 74 75 72 6e 65 | nor returne| 00000490 64 2c 20 61 6e 64 20 6e 65 65 64 20 6e 6f 74 20 |d, and need not | 000004a0 68 61 76 65 20 61 6e 79 20 68 61 6e 64 6c 65 72 |have any handler| 000004b0 73 20 70 72 6f 76 69 64 65 64 2e 20 20 59 6f 75 |s provided. You| 000004c0 20 6d 75 73 74 20 64 6f 20 74 68 69 73 0a 20 20 | must do this. | 000004d0 20 20 20 20 20 66 6f 72 20 61 73 20 6d 61 6e 79 | for as many| 000004e0 20 63 6f 64 65 73 20 61 73 20 70 6f 73 73 69 62 | codes as possib| 000004f0 6c 65 2c 20 65 73 70 65 63 69 61 6c 6c 79 20 74 |le, especially t| 00000500 68 65 20 4e 75 6c 6c 5f 52 65 61 73 6f 6e 5f 43 |he Null_Reason_C| 00000510 6f 64 65 2c 20 69 66 20 79 6f 75 72 0a 20 20 20 |ode, if your. | 00000520 20 20 20 20 74 61 73 6b 20 69 73 20 74 6f 20 72 | task is to r| 00000530 75 6e 20 65 66 66 69 63 69 65 6e 74 6c 79 20 75 |un efficiently u| 00000540 6e 64 65 72 20 74 68 65 20 57 69 6d 70 2e 22 0a |nder the Wimp.".| 00000550 0a 20 20 50 4c 45 41 53 45 20 54 41 4b 45 20 4e |. PLEASE TAKE N| 00000560 4f 54 45 21 20 20 57 69 74 68 20 74 68 65 20 68 |OTE! With the h| 00000570 65 6c 70 20 6f 66 20 54 61 73 6b 55 73 61 67 65 |elp of TaskUsage| 00000580 20 77 65 20 61 6c 6c 20 6e 6f 77 20 68 61 76 65 | we all now have| 00000590 20 4e 4f 20 65 78 63 75 73 65 21 0a 0a 0a 20 20 | NO excuse!... | 000005a0 48 6f 77 20 74 6f 20 75 73 65 20 54 61 73 6b 55 |How to use TaskU| 000005b0 73 61 67 65 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d |sage. =========| 000005c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 54 |===========.. T| 000005d0 68 65 20 54 61 73 6b 55 73 61 67 65 20 61 70 70 |he TaskUsage app| 000005e0 6c 69 63 61 74 69 6f 6e 20 69 73 20 73 74 61 72 |lication is star| 000005f0 74 65 64 20 69 6e 20 74 68 65 20 6e 6f 72 6d 61 |ted in the norma| 00000600 6c 20 77 61 79 20 62 79 20 64 6f 75 62 6c 65 2d |l way by double-| 00000610 63 6c 69 63 6b 69 6e 67 20 6f 6e 0a 20 20 74 68 |clicking on. th| 00000620 65 20 21 54 61 73 6b 55 73 61 67 65 20 69 63 6f |e !TaskUsage ico| 00000630 6e 20 69 6e 20 61 20 46 69 6c 65 72 20 77 69 6e |n in a Filer win| 00000640 64 6f 77 2e 20 20 49 74 20 77 69 6c 6c 20 69 6e |dow. It will in| 00000650 73 74 61 6c 6c 20 6f 6e 20 74 68 65 20 49 63 6f |stall on the Ico| 00000660 6e 20 42 61 72 20 61 0a 20 20 54 61 73 6b 55 73 |n Bar a. TaskUs| 00000670 61 67 65 20 69 63 6f 6e 20 63 6f 6e 73 69 73 74 |age icon consist| 00000680 69 6e 67 20 6f 66 20 61 20 62 6f 78 20 63 6f 6e |ing of a box con| 00000690 74 61 69 6e 69 6e 67 20 27 43 50 55 27 2e 20 20 |taining 'CPU'. | 000006a0 20 48 6f 77 65 76 65 72 2c 20 61 66 74 65 72 20 | However, after | 000006b0 61 20 73 6d 61 6c 6c 0a 20 20 64 65 6c 61 79 20 |a small. delay | 000006c0 74 6f 20 63 6f 6c 6c 65 63 74 20 69 6e 69 74 69 |to collect initi| 000006d0 61 6c 20 73 74 61 74 69 73 74 69 63 73 2c 20 74 |al statistics, t| 000006e0 68 65 20 54 61 73 6b 55 73 61 67 65 20 49 63 6f |he TaskUsage Ico| 000006f0 6e 20 42 61 72 20 69 63 6f 6e 20 77 69 6c 6c 20 |n Bar icon will | 00000700 62 65 20 75 70 64 61 74 65 64 0a 20 20 65 61 63 |be updated. eac| 00000710 68 20 73 65 63 6f 6e 64 20 6f 72 20 74 77 6f 20 |h second or two | 00000720 77 69 74 68 20 61 20 67 72 61 70 68 69 63 61 6c |with a graphical| 00000730 20 72 65 70 72 65 73 65 6e 74 61 74 69 6f 6e 20 | representation | 00000740 6f 66 20 74 68 65 20 74 6f 74 61 6c 20 70 72 6f |of the total pro| 00000750 63 65 73 73 6f 72 20 75 73 61 67 65 2e 0a 0a 20 |cessor usage... | 00000760 20 54 68 65 20 75 70 64 61 74 65 20 74 69 6d 65 | The update time| 00000770 20 77 69 6c 6c 20 62 65 20 6f 6e 65 20 73 65 63 | will be one sec| 00000780 6f 6e 64 20 66 6f 72 20 52 49 53 43 20 4f 53 20 |ond for RISC OS | 00000790 33 2e 35 20 61 6e 64 20 61 62 6f 76 65 20 28 69 |3.5 and above (i| 000007a0 65 20 61 74 20 6c 65 61 73 74 20 52 49 53 43 0a |e at least RISC.| 000007b0 20 20 50 43 29 2c 20 61 6e 64 20 74 77 6f 20 73 | PC), and two s| 000007c0 65 63 6f 6e 64 73 20 66 6f 72 20 74 68 65 20 73 |econds for the s| 000007d0 6c 6f 77 65 72 20 6d 61 63 68 69 6e 65 73 20 74 |lower machines t| 000007e0 6f 20 61 76 6f 69 64 20 61 20 6c 61 72 67 65 20 |o avoid a large | 000007f0 64 69 73 70 6c 61 79 20 6f 76 65 72 68 65 61 64 |display overhead| 00000800 2e 0a 20 20 54 68 69 73 20 64 65 66 61 75 6c 74 |.. This default| 00000810 20 73 68 6f 75 6c 64 20 62 65 20 72 65 61 73 6f | should be reaso| 00000820 6e 61 62 6c 65 2c 20 62 75 74 20 74 68 65 20 64 |nable, but the d| 00000830 65 66 61 75 6c 74 20 63 61 6e 20 62 65 20 6f 76 |efault can be ov| 00000840 65 72 72 69 64 64 65 6e 20 69 66 0a 20 20 72 65 |erridden if. re| 00000850 71 75 69 72 65 64 20 20 28 70 6c 65 61 73 65 20 |quired (please | 00000860 73 65 65 20 74 68 65 20 21 52 75 6e 20 66 69 6c |see the !Run fil| 00000870 65 20 66 6f 72 20 64 65 74 61 69 6c 73 29 0a 0a |e for details)..| 00000880 20 20 54 68 65 20 49 63 6f 6e 20 77 69 6c 6c 20 | The Icon will | 00000890 6e 6f 72 6d 61 6c 6c 79 20 73 68 6f 77 20 74 68 |normally show th| 000008a0 65 20 75 73 61 67 65 20 6f 76 65 72 20 74 68 65 |e usage over the| 000008b0 20 6c 61 73 74 20 34 30 20 73 65 63 6f 6e 64 73 | last 40 seconds| 000008c0 20 6f 72 20 73 6f 2e 0a 0a 20 20 49 66 20 53 65 | or so... If Se| 000008d0 6c 65 63 74 20 69 73 20 63 6c 69 63 6b 65 64 20 |lect is clicked | 000008e0 6f 6e 20 74 68 65 20 54 61 73 6b 55 73 61 67 65 |on the TaskUsage| 000008f0 20 69 63 6f 6e 20 62 61 72 20 69 63 6f 6e 2c 20 | icon bar icon, | 00000900 74 68 65 20 54 61 73 6b 20 50 72 6f 63 65 73 73 |the Task Process| 00000910 6f 72 20 55 73 61 67 65 0a 20 20 77 69 6e 64 6f |or Usage. windo| 00000920 77 20 77 69 6c 6c 20 6f 70 65 6e 2e 20 20 54 68 |w will open. Th| 00000930 69 73 20 77 69 6e 64 6f 77 20 69 73 20 69 6e 20 |is window is in | 00000940 61 20 73 69 6d 69 6c 61 72 20 66 6f 72 6d 61 74 |a similar format| 00000950 20 74 6f 20 74 68 65 20 54 61 73 6b 20 4d 61 6e | to the Task Man| 00000960 61 67 65 72 27 73 0a 20 20 64 69 73 70 6c 61 79 |ager's. display| 00000970 20 6f 66 20 53 74 6f 72 61 67 65 20 75 73 61 67 | of Storage usag| 00000980 65 2c 20 73 68 6f 77 69 6e 67 20 74 68 65 20 63 |e, showing the c| 00000990 75 72 72 65 6e 74 20 74 61 73 6b 73 2c 20 61 6e |urrent tasks, an| 000009a0 64 20 69 6e 20 74 68 65 20 73 61 6d 65 20 6f 72 |d in the same or| 000009b0 64 65 72 2e 0a 20 20 41 67 61 69 6e 73 74 20 65 |der.. Against e| 000009c0 61 63 68 20 74 61 73 6b 20 69 73 20 73 68 6f 77 |ach task is show| 000009d0 6e 20 74 68 65 20 72 65 63 65 6e 74 20 61 76 65 |n the recent ave| 000009e0 72 61 67 65 20 70 65 72 63 65 6e 74 61 67 65 20 |rage percentage | 000009f0 70 72 6f 63 65 73 73 6f 72 20 75 73 61 67 65 2c |processor usage,| 00000a00 20 61 73 20 61 0a 20 20 70 65 72 63 65 6e 74 61 | as a. percenta| 00000a10 67 65 20 66 69 67 75 72 65 20 61 6e 64 20 61 20 |ge figure and a | 00000a20 63 6f 6c 6f 75 72 65 64 20 62 61 72 20 67 72 61 |coloured bar gra| 00000a30 70 68 2e 20 20 49 6e 20 61 64 64 69 74 69 6f 6e |ph. In addition| 00000a40 2c 20 74 68 65 20 6f 76 65 72 61 6c 6c 20 50 72 |, the overall Pr| 00000a50 6f 63 65 73 73 6f 72 0a 20 20 75 73 61 67 65 20 |ocessor. usage | 00000a60 69 73 20 67 69 76 65 6e 2c 20 61 6e 64 20 74 68 |is given, and th| 00000a70 65 20 74 6f 74 61 6c 73 20 66 6f 72 20 41 70 70 |e totals for App| 00000a80 6c 69 63 61 74 69 6f 6e 20 61 6e 64 20 66 6f 72 |lication and for| 00000a90 20 4d 6f 64 75 6c 65 20 74 61 73 6b 73 2e 20 20 | Module tasks. | 00000aa0 54 68 65 0a 20 20 64 69 73 70 6c 61 79 20 77 69 |The. display wi| 00000ab0 6c 6c 20 75 70 64 61 74 65 20 65 76 65 72 79 20 |ll update every | 00000ac0 73 65 63 6f 6e 64 20 6f 72 20 74 77 6f 2c 20 61 |second or two, a| 00000ad0 6e 64 20 77 69 6c 6c 20 61 64 6a 75 73 74 20 69 |nd will adjust i| 00000ae0 74 73 65 6c 66 20 77 68 65 6e 65 76 65 72 20 74 |tself whenever t| 00000af0 61 73 6b 73 20 61 72 65 0a 20 20 73 74 61 72 74 |asks are. start| 00000b00 65 64 20 6f 72 20 73 74 6f 70 70 65 64 2e 20 20 |ed or stopped. | 00000b10 54 68 65 20 77 69 6e 64 6f 77 20 63 61 6e 20 62 |The window can b| 00000b20 65 20 72 65 73 69 7a 65 64 20 69 6e 20 74 68 65 |e resized in the| 00000b30 20 75 73 75 61 6c 20 52 49 53 43 20 4f 53 20 77 | usual RISC OS w| 00000b40 61 79 2c 20 62 75 74 20 69 66 0a 20 20 53 65 6c |ay, but if. Sel| 00000b50 65 63 74 20 69 73 20 63 6c 69 63 6b 65 64 20 6f |ect is clicked o| 00000b60 6e 20 74 68 65 20 49 63 6f 6e 20 42 61 72 20 74 |n the Icon Bar t| 00000b70 68 65 20 77 69 6e 64 6f 77 20 77 69 6c 6c 20 72 |he window will r| 00000b80 65 76 65 72 74 20 74 6f 20 74 68 65 20 69 6e 69 |evert to the ini| 00000b90 74 69 61 6c 20 73 74 61 74 65 2c 0a 20 20 73 68 |tial state,. sh| 00000ba0 6f 77 69 6e 67 20 61 6c 6c 20 41 70 70 6c 69 63 |owing all Applic| 00000bb0 61 74 69 6f 6e 20 54 61 73 6b 73 2c 20 61 6e 64 |ation Tasks, and| 00000bc0 20 6f 6e 6c 79 20 74 68 65 20 74 6f 74 61 6c 20 | only the total | 00000bd0 66 6f 72 20 74 68 65 20 4d 6f 64 75 6c 65 20 54 |for the Module T| 00000be0 61 73 6b 73 2e 0a 0a 20 20 49 66 20 41 64 6a 75 |asks... If Adju| 00000bf0 73 74 20 69 73 20 63 6c 69 63 6b 65 64 20 6f 6e |st is clicked on| 00000c00 20 74 68 65 20 54 61 73 6b 55 73 61 67 65 20 69 | the TaskUsage i| 00000c10 63 6f 6e 20 62 61 72 20 69 63 6f 6e 2c 20 74 68 |con bar icon, th| 00000c20 65 20 54 61 73 6b 20 52 65 61 73 6f 6e 20 43 6f |e Task Reason Co| 00000c30 64 65 0a 20 20 55 73 61 67 65 20 77 69 6e 64 6f |de. Usage windo| 00000c40 77 20 77 69 6c 6c 20 6f 70 65 6e 2e 20 20 54 68 |w will open. Th| 00000c50 69 73 20 73 68 6f 77 73 20 74 68 65 20 72 65 63 |is shows the rec| 00000c60 65 6e 74 20 61 76 65 72 61 67 65 20 6e 75 6d 62 |ent average numb| 00000c70 65 72 20 6f 66 20 57 69 6d 70 20 50 6f 6c 6c 73 |er of Wimp Polls| 00000c80 0a 20 20 62 65 69 6e 67 20 70 72 6f 63 65 73 73 |. being process| 00000c90 65 64 20 70 65 72 20 73 65 63 6f 6e 64 2c 20 61 |ed per second, a| 00000ca0 6e 64 20 74 68 65 20 70 72 6f 63 65 73 73 6f 72 |nd the processor| 00000cb0 20 75 73 61 67 65 20 66 6f 72 20 65 61 63 68 20 | usage for each | 00000cc0 57 69 6d 70 20 52 65 61 73 6f 6e 20 63 6f 64 65 |Wimp Reason code| 00000cd0 2e 0a 20 20 49 66 20 61 20 74 61 73 6b 20 69 73 |.. If a task is| 00000ce0 20 63 6c 69 63 6b 65 64 20 6f 6e 20 69 6e 20 74 | clicked on in t| 00000cf0 68 65 20 54 61 73 6b 20 50 72 6f 63 65 73 73 6f |he Task Processo| 00000d00 72 20 55 73 61 67 65 20 77 69 6e 64 6f 77 2c 20 |r Usage window, | 00000d10 74 68 65 20 54 61 73 6b 20 52 65 61 73 6f 6e 20 |the Task Reason | 00000d20 43 6f 64 65 0a 20 20 55 73 61 67 65 20 77 69 6e |Code. Usage win| 00000d30 64 6f 77 20 77 69 6c 6c 20 63 68 61 6e 67 65 20 |dow will change | 00000d40 74 6f 20 73 68 6f 77 20 74 68 65 20 66 69 67 75 |to show the figu| 00000d50 72 65 73 20 66 6f 72 20 74 68 61 74 20 74 61 73 |res for that tas| 00000d60 6b 20 6f 6e 6c 79 2e 20 20 57 68 69 6c 65 20 61 |k only. While a| 00000d70 0a 20 20 73 70 65 63 69 66 69 63 20 74 61 73 6b |. specific task| 00000d80 20 69 73 20 62 65 69 6e 67 20 6d 6f 6e 69 74 6f | is being monito| 00000d90 72 65 64 2c 20 61 6e 79 20 52 65 61 73 6f 6e 20 |red, any Reason | 00000da0 43 6f 64 65 73 20 77 68 69 63 68 20 74 68 65 20 |Codes which the | 00000db0 74 61 73 6b 20 68 61 73 20 6d 61 73 6b 65 64 20 |task has masked | 00000dc0 6f 75 74 0a 20 20 62 65 63 61 75 73 65 20 69 74 |out. because it| 00000dd0 20 69 73 20 6e 6f 74 20 69 6e 74 65 72 65 73 74 | is not interest| 00000de0 65 64 20 69 6e 20 74 68 65 6d 20 61 72 65 20 73 |ed in them are s| 00000df0 68 61 64 65 64 2e 20 20 54 6f 20 72 65 76 65 72 |haded. To rever| 00000e00 74 20 74 6f 20 6d 6f 6e 69 74 6f 72 69 6e 67 20 |t to monitoring | 00000e10 61 6c 6c 0a 20 20 74 61 73 6b 73 2c 20 73 69 6d |all. tasks, sim| 00000e20 70 6c 79 20 63 6c 69 63 6b 20 6f 6e 20 61 6e 79 |ply click on any| 00000e30 20 74 6f 74 61 6c 73 20 6c 69 6e 65 20 69 6e 20 | totals line in | 00000e40 65 69 74 68 65 72 20 77 69 6e 64 6f 77 2e 20 20 |either window. | 00000e50 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 52 65 |Note that the Re| 00000e60 61 73 6f 6e 0a 20 20 43 6f 64 65 20 73 68 61 64 |ason. Code shad| 00000e70 69 6e 67 20 63 61 6e 6e 6f 74 20 62 65 20 75 70 |ing cannot be up| 00000e80 64 61 74 65 64 20 75 6e 74 69 6c 20 74 68 65 20 |dated until the | 00000e90 74 61 73 6b 20 64 6f 65 73 20 73 6f 6d 65 74 68 |task does someth| 00000ea0 69 6e 67 2c 20 68 6f 77 65 76 65 72 20 74 72 69 |ing, however tri| 00000eb0 76 69 61 6c 2e 0a 20 20 54 68 69 73 20 69 73 20 |vial.. This is | 00000ec0 70 72 6f 6d 70 74 65 64 20 62 79 20 54 61 73 6b |prompted by Task| 00000ed0 55 73 61 67 65 20 73 65 6e 64 69 6e 67 20 74 68 |Usage sending th| 00000ee0 65 20 74 61 73 6b 20 61 20 57 69 6d 70 5f 48 65 |e task a Wimp_He| 00000ef0 6c 70 52 65 71 75 65 73 74 20 6d 65 73 73 61 67 |lpRequest messag| 00000f00 65 2c 20 77 68 69 63 68 0a 20 20 69 73 20 75 73 |e, which. is us| 00000f10 75 61 6c 6c 79 20 73 75 66 66 69 63 69 65 6e 74 |ually sufficient| 00000f20 2e 20 20 49 66 20 61 6c 6c 20 74 68 65 20 72 65 |. If all the re| 00000f30 61 73 6f 6e 73 20 72 65 6d 61 69 6e 20 73 68 61 |asons remain sha| 00000f40 64 65 64 2c 20 74 72 79 20 6f 70 65 6e 69 6e 67 |ded, try opening| 00000f50 20 61 20 6d 65 6e 75 20 6f 72 0a 20 20 61 20 77 | a menu or. a w| 00000f60 69 6e 64 6f 77 20 66 6f 72 20 74 68 65 20 74 61 |indow for the ta| 00000f70 73 6b 2e 20 20 55 6e 66 6f 72 74 75 6e 61 74 65 |sk. Unfortunate| 00000f80 6c 79 2c 20 69 66 20 74 68 65 20 46 69 6c 65 72 |ly, if the Filer| 00000f90 20 69 73 20 63 6c 69 63 6b 65 64 20 6f 6e 2c 20 | is clicked on, | 00000fa0 79 6f 75 20 6d 61 79 20 67 65 74 0a 20 20 61 6e |you may get. an| 00000fb0 20 65 72 72 6f 72 20 6d 65 73 73 61 67 65 20 66 | error message f| 00000fc0 72 6f 6d 20 74 68 65 20 46 69 6c 65 72 20 6f 66 |rom the Filer of| 00000fd0 20 27 4d 65 73 73 61 67 65 20 74 6f 6b 65 6e 20 | 'Message token | 00000fe0 4d 48 20 6e 6f 74 20 66 6f 75 6e 64 27 2e 20 20 |MH not found'. | 00000ff0 54 68 69 73 20 77 69 6c 6c 20 73 74 6f 70 0a 20 |This will stop. | 00001000 20 68 61 70 70 65 6e 69 6e 67 20 69 66 20 61 20 | happening if a | 00001010 6d 65 6e 75 20 69 73 20 6f 70 65 6e 65 64 20 6f |menu is opened o| 00001020 76 65 72 20 61 6e 79 20 46 69 6c 65 72 20 77 69 |ver any Filer wi| 00001030 6e 64 6f 77 21 20 20 41 6e 64 20 62 65 66 6f 72 |ndow! And befor| 00001040 65 20 79 6f 75 20 61 73 6b 2c 20 49 20 64 6f 0a |e you ask, I do.| 00001050 20 20 6e 6f 74 20 6b 6e 6f 77 20 77 68 79 21 0a | not know why!.| 00001060 0a 20 20 49 66 20 4d 65 6e 75 20 69 73 20 63 6c |. If Menu is cl| 00001070 69 63 6b 65 64 20 6f 6e 20 74 68 65 20 54 61 73 |icked on the Tas| 00001080 6b 55 73 61 67 65 20 69 63 6f 6e 20 62 61 72 20 |kUsage icon bar | 00001090 69 63 6f 6e 20 28 6f 72 20 6f 6e 20 65 69 74 68 |icon (or on eith| 000010a0 65 72 20 54 61 73 6b 55 73 61 67 65 0a 20 20 77 |er TaskUsage. w| 000010b0 69 6e 64 6f 77 29 2c 20 74 68 65 20 75 73 75 61 |indow), the usua| 000010c0 6c 20 49 6e 66 6f 20 61 6e 64 20 51 75 69 74 20 |l Info and Quit | 000010d0 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 76 61 69 |options are avai| 000010e0 6c 61 62 6c 65 2e 20 20 49 6e 20 61 64 64 69 74 |lable. In addit| 000010f0 69 6f 6e 20 74 68 65 72 65 20 69 73 0a 20 20 61 |ion there is. a| 00001100 20 54 69 6d 65 72 20 6f 70 74 69 6f 6e 2c 20 77 | Timer option, w| 00001110 68 69 63 68 20 6a 75 73 74 20 73 68 6f 77 73 20 |hich just shows | 00001120 64 65 74 61 69 6c 73 20 6f 66 20 74 68 65 20 54 |details of the T| 00001130 69 6d 65 72 20 62 65 69 6e 67 20 75 73 65 64 20 |imer being used | 00001140 61 6e 64 20 74 68 65 20 55 70 64 61 74 65 0a 20 |and the Update. | 00001150 20 66 72 65 71 75 65 6e 63 79 2c 20 61 6e 64 20 | frequency, and | 00001160 54 61 73 6b 20 61 6e 64 20 52 65 61 73 6f 6e 20 |Task and Reason | 00001170 6f 70 74 69 6f 6e 73 20 77 68 69 63 68 20 77 69 |options which wi| 00001180 6c 6c 20 61 6c 73 6f 20 6f 70 65 6e 20 74 68 65 |ll also open the| 00001190 20 77 69 6e 64 6f 77 73 2e 0a 0a 20 20 4e 6f 74 | windows... Not| 000011a0 65 20 74 68 61 74 20 66 75 6c 6c 20 49 6e 74 65 |e that full Inte| 000011b0 72 61 63 74 69 76 65 20 48 65 6c 70 20 69 73 20 |ractive Help is | 000011c0 61 76 61 69 6c 61 62 6c 65 20 6f 6e 20 61 6c 6c |available on all| 000011d0 20 4d 65 6e 75 73 20 61 6e 64 20 57 69 6e 64 6f | Menus and Windo| 000011e0 77 73 2c 20 69 66 20 21 48 65 6c 70 0a 20 20 6f |ws, if !Help. o| 000011f0 72 20 21 42 75 62 62 6c 65 48 65 6c 70 20 69 73 |r !BubbleHelp is| 00001200 20 72 75 6e 6e 69 6e 67 2e 0a 0a 0a 20 20 4d 61 | running.... Ma| 00001210 63 68 69 6e 65 20 52 65 71 75 69 72 65 6d 65 6e |chine Requiremen| 00001220 74 73 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |ts. ===========| 00001230 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 41 6e 79 |=========.. Any| 00001240 20 6d 65 61 73 75 72 65 6d 65 6e 74 20 77 69 6c | measurement wil| 00001250 6c 20 64 69 73 74 6f 72 74 20 77 68 61 74 20 69 |l distort what i| 00001260 73 20 62 65 69 6e 67 20 6d 65 61 73 75 72 65 64 |s being measured| 00001270 2c 20 61 6e 64 20 54 61 73 6b 20 55 73 61 67 65 |, and Task Usage| 00001280 20 69 73 20 6e 6f 0a 20 20 65 78 63 65 70 74 69 | is no. excepti| 00001290 6f 6e 2e 20 20 48 6f 77 65 76 65 72 2c 20 74 68 |on. However, th| 000012a0 65 20 6f 76 65 72 68 65 61 64 73 20 68 61 76 65 |e overheads have| 000012b0 20 62 65 65 6e 20 70 61 72 65 64 20 74 6f 20 61 | been pared to a| 000012c0 20 6d 69 6e 69 6d 75 6d 20 74 6f 20 65 6e 61 62 | minimum to enab| 000012d0 6c 65 20 69 74 0a 20 20 74 6f 20 62 65 20 72 75 |le it. to be ru| 000012e0 6e 20 65 61 73 69 6c 79 20 6f 6e 20 61 6e 79 20 |n easily on any | 000012f0 52 49 53 43 20 4f 53 20 6d 61 63 68 69 6e 65 2e |RISC OS machine.| 00001300 0a 0a 20 20 4e 6f 74 65 20 74 68 61 74 20 61 74 |.. Note that at| 00001310 20 6c 65 61 73 74 20 52 49 53 43 20 4f 53 20 33 | least RISC OS 3| 00001320 2e 30 30 20 69 73 20 72 65 71 75 69 72 65 64 20 |.00 is required | 00001330 74 6f 20 72 75 6e 20 54 61 73 6b 55 73 61 67 65 |to run TaskUsage| 00001340 2e 0a 0a 20 20 54 68 65 20 6d 65 6d 6f 72 79 20 |... The memory | 00001350 72 65 71 75 69 72 65 6d 65 6e 74 73 20 61 72 65 |requirements are| 00001360 20 61 70 70 72 6f 78 69 6d 61 74 65 6c 79 20 61 | approximately a| 00001370 73 20 66 6f 6c 6c 6f 77 73 3a 0a 0a 20 20 8f 20 |s follows:.. . | 00001380 20 20 20 54 68 65 20 54 61 73 6b 55 73 61 67 65 | The TaskUsage| 00001390 20 72 65 6c 6f 63 61 74 61 62 6c 65 20 6d 6f 64 | relocatable mod| 000013a0 75 6c 65 20 20 20 20 20 20 20 20 20 20 20 36 2c |ule 6,| 000013b0 31 39 32 0a 20 20 8f 20 20 20 20 54 68 65 20 54 |192. . The T| 000013c0 61 73 6b 55 73 61 67 65 20 6d 6f 64 75 6c 65 20 |askUsage module | 000013d0 77 6f 72 6b 61 72 65 61 20 20 20 20 20 20 20 20 |workarea | 000013e0 20 20 20 20 20 20 36 2c 32 37 32 0a 20 20 8f 20 | 6,272. . | 000013f0 20 20 20 54 68 65 20 4d 65 73 73 61 67 65 73 20 | The Messages | 00001400 66 69 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 |file | 00001410 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 2c | 1,| 00001420 38 34 38 0a 0a 20 20 20 20 20 20 20 20 20 20 20 |848.. | 00001430 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 54 | T| 00001440 6f 74 61 6c 20 53 74 6f 72 61 67 65 20 20 20 20 |otal Storage | 00001450 20 20 20 20 20 20 31 34 2c 33 31 32 0a 0a 20 20 | 14,312.. | 00001460 54 68 65 20 74 6f 74 61 6c 20 73 74 6f 72 61 67 |The total storag| 00001470 65 20 72 65 71 75 69 72 65 64 20 74 6f 20 72 75 |e required to ru| 00001480 6e 20 54 61 73 6b 20 55 73 61 67 65 20 69 73 20 |n Task Usage is | 00001490 74 68 65 72 65 66 6f 72 65 20 6f 6e 6c 79 20 61 |therefore only a| 000014a0 62 6f 75 74 20 31 34 6b 2c 20 61 6c 6c 20 69 6e |bout 14k, all in| 000014b0 0a 20 20 74 68 65 20 52 65 6c 6f 63 61 74 61 62 |. the Relocatab| 000014c0 6c 65 20 4d 6f 64 75 6c 65 20 41 72 65 61 2c 20 |le Module Area, | 000014d0 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 74 68 |regardless of th| 000014e0 65 20 6d 61 63 68 69 6e 65 20 6d 6f 64 65 6c 20 |e machine model | 000014f0 61 6e 64 20 70 61 67 65 20 73 69 7a 65 2e 20 0a |and page size. .| 00001500 20 20 53 6f 6d 65 20 35 6b 20 6f 72 20 73 6f 20 | Some 5k or so | 00001510 61 64 64 69 74 69 6f 6e 61 6c 20 73 74 6f 72 61 |additional stora| 00001520 67 65 20 77 69 6c 6c 20 61 6c 73 6f 20 62 65 20 |ge will also be | 00001530 6f 62 74 61 69 6e 65 64 20 62 79 20 74 68 65 20 |obtained by the | 00001540 57 69 6d 70 20 69 6e 20 74 68 65 20 52 4d 41 20 |Wimp in the RMA | 00001550 74 6f 0a 20 20 68 6f 6c 64 20 77 69 6e 64 6f 77 |to. hold window| 00001560 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 65 74 63 | definitions etc| 00001570 2e 20 66 6f 72 20 74 68 65 20 54 61 73 6b 20 55 |. for the Task U| 00001580 73 61 67 65 20 61 70 70 6c 69 63 61 74 69 6f 6e |sage application| 00001590 2e 0a 0a 20 20 54 61 73 6b 20 55 73 61 67 65 20 |... Task Usage | 000015a0 6d 65 61 73 75 72 65 73 20 69 74 27 73 20 6f 77 |measures it's ow| 000015b0 6e 20 74 61 73 6b 2c 20 77 68 69 63 68 20 75 73 |n task, which us| 000015c0 65 73 20 6f 6e 20 61 76 65 72 61 67 65 20 74 68 |es on average th| 000015d0 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 20 20 70 72 |e following. pr| 000015e0 6f 63 65 73 73 6f 72 20 70 6f 77 65 72 20 6f 6e |ocessor power on| 000015f0 20 74 77 6f 20 6d 61 63 68 69 6e 65 73 2c 20 77 | two machines, w| 00001600 69 74 68 20 62 6f 74 68 20 77 69 6e 64 6f 77 73 |ith both windows| 00001610 20 6f 70 65 6e 2c 20 65 76 65 6e 20 77 69 74 68 | open, even with| 00001620 20 6f 76 65 72 0a 20 20 31 30 30 20 74 61 73 6b | over. 100 task| 00001630 73 20 72 75 6e 6e 69 6e 67 2e 20 4e 6f 74 65 20 |s running. Note | 00001640 69 74 20 69 73 20 65 76 65 6e 20 6c 65 73 73 20 |it is even less | 00001650 77 69 74 68 6f 75 74 20 74 68 65 20 77 69 6e 64 |without the wind| 00001660 6f 77 73 20 6f 70 65 6e 21 0a 0a 20 20 8f 20 20 |ows open!.. . | 00001670 20 20 52 49 53 43 20 50 43 20 77 69 74 68 20 53 | RISC PC with S| 00001680 74 72 6f 6e 67 41 72 6d 20 20 20 20 20 20 20 20 |trongArm | 00001690 6c 65 73 73 20 74 68 61 6e 20 31 25 20 70 72 6f |less than 1% pro| 000016a0 63 65 73 73 6f 72 0a 20 20 8f 20 20 20 20 41 34 |cessor. . A4| 000016b0 30 30 30 20 20 20 20 20 20 20 20 20 20 20 20 20 |000 | 000016c0 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 69 | vari| 000016d0 65 73 20 62 65 74 77 65 65 6e 20 61 62 6f 75 74 |es between about| 000016e0 20 31 30 25 20 61 6e 64 20 33 30 25 0a 0a 20 20 | 10% and 30%.. | 000016f0 52 6d 4b 69 6c 6c 20 54 61 73 6b 55 73 61 67 65 |RmKill TaskUsage| 00001700 20 63 61 6e 20 62 65 20 73 61 66 65 6c 79 20 75 | can be safely u| 00001710 73 65 64 20 74 6f 20 72 65 6d 6f 76 65 20 74 68 |sed to remove th| 00001720 65 20 6d 6f 64 75 6c 65 20 66 72 6f 6d 20 73 74 |e module from st| 00001730 6f 72 61 67 65 2e 0a 20 20 51 75 69 74 74 69 6e |orage.. Quittin| 00001740 67 20 74 68 65 20 54 61 73 6b 55 73 61 67 65 20 |g the TaskUsage | 00001750 61 70 70 6c 69 63 61 74 69 6f 6e 20 77 69 6c 6c |application will| 00001760 20 64 6f 20 74 68 69 73 20 61 75 74 6f 6d 61 74 | do this automat| 00001770 69 63 61 6c 6c 79 2e 0a 0a 0a 20 20 48 6f 77 20 |ically.... How | 00001780 74 68 65 20 50 72 6f 63 65 73 73 6f 72 20 55 73 |the Processor Us| 00001790 61 67 65 20 69 73 20 43 61 6c 63 75 6c 61 74 65 |age is Calculate| 000017a0 64 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |d. ============| 000017b0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 000017c0 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 57 68 65 |=========.. Whe| 000017d0 6e 20 54 61 73 6b 55 73 61 67 65 20 69 6e 69 74 |n TaskUsage init| 000017e0 69 61 6c 69 73 65 73 2c 20 69 74 20 69 6e 73 74 |ialises, it inst| 000017f0 61 6c 6c 73 20 74 68 65 20 66 6f 6c 6c 6f 77 69 |alls the followi| 00001800 6e 67 20 74 69 6d 69 6e 67 20 63 6f 64 65 20 69 |ng timing code i| 00001810 6e 20 52 49 53 43 20 4f 53 3a 0a 0a 20 20 8f 20 |n RISC OS:.. . | 00001820 20 20 20 54 68 65 20 69 6e 74 65 72 6e 61 6c 20 | The internal | 00001830 54 69 6d 65 72 20 31 20 69 73 20 75 73 65 64 20 |Timer 1 is used | 00001840 74 6f 20 6f 62 74 61 69 6e 20 61 6c 6c 20 65 6c |to obtain all el| 00001850 61 70 73 65 20 74 69 6d 65 73 2e 20 20 54 68 69 |apse times. Thi| 00001860 73 20 72 65 71 75 69 72 65 73 0a 20 20 69 6e 74 |s requires. int| 00001870 65 72 72 75 70 74 20 63 6f 64 65 2c 20 77 68 69 |errupt code, whi| 00001880 63 68 20 69 73 20 6f 6e 6c 79 20 36 20 69 6e 73 |ch is only 6 ins| 00001890 74 72 75 63 74 69 6f 6e 73 20 6c 6f 6e 67 2c 20 |tructions long, | 000018a0 62 75 74 20 69 74 20 69 73 20 63 61 6c 6c 65 64 |but it is called| 000018b0 20 6d 61 6e 79 20 74 69 6d 65 73 20 61 0a 20 20 | many times a. | 000018c0 73 65 63 6f 6e 64 2c 20 64 65 70 65 6e 64 69 6e |second, dependin| 000018d0 67 20 6f 6e 20 74 68 65 20 27 70 72 65 63 69 73 |g on the 'precis| 000018e0 69 6f 6e 27 20 6f 66 20 74 68 65 20 74 69 6d 69 |ion' of the timi| 000018f0 6e 67 20 63 6c 6f 63 6b 20 62 65 69 6e 67 20 75 |ng clock being u| 00001900 73 65 64 2e 0a 0a 20 20 21 54 61 73 6b 55 73 61 |sed... !TaskUsa| 00001910 67 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 |ge automatically| 00001920 20 73 65 74 73 20 74 68 65 20 70 72 65 63 69 73 | sets the precis| 00001930 69 6f 6e 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e |ion depending on| 00001940 20 74 68 65 20 52 49 53 43 20 4f 53 20 76 65 72 | the RISC OS ver| 00001950 73 69 6f 6e 2c 0a 20 20 61 6e 64 20 77 68 65 74 |sion,. and whet| 00001960 68 65 72 20 53 74 72 6f 6e 67 41 72 6d 20 69 73 |her StrongArm is| 00001970 20 66 69 74 74 65 64 2e 20 20 54 68 69 73 20 69 | fitted. This i| 00001980 73 20 73 6f 20 74 68 61 74 20 66 61 73 74 65 72 |s so that faster| 00001990 20 70 72 6f 63 65 73 73 6f 72 73 20 63 61 6e 20 | processors can | 000019a0 75 73 65 20 61 0a 20 20 68 69 67 68 65 72 20 70 |use a. higher p| 000019b0 72 65 63 69 73 69 6f 6e 20 74 69 6d 65 72 2c 20 |recision timer, | 000019c0 62 75 74 20 73 6c 6f 77 65 72 20 70 72 6f 63 65 |but slower proce| 000019d0 73 73 6f 72 73 20 61 72 65 20 6e 6f 74 20 73 70 |ssors are not sp| 000019e0 65 6e 64 69 6e 67 20 74 6f 6f 20 6d 75 63 68 20 |ending too much | 000019f0 74 69 6d 65 0a 20 20 74 72 79 69 6e 67 20 74 6f |time. trying to| 00001a00 20 62 65 20 6f 76 65 72 20 61 63 63 75 72 61 74 | be over accurat| 00001a10 65 21 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 |e! The default | 00001a20 73 65 74 74 69 6e 67 73 20 73 68 6f 75 6c 64 20 |settings should | 00001a30 62 65 20 72 65 61 73 6f 6e 61 62 6c 65 2c 20 62 |be reasonable, b| 00001a40 75 74 20 74 68 65 0a 20 20 64 65 66 61 75 6c 74 |ut the. default| 00001a50 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 | can be overridd| 00001a60 65 6e 20 69 66 20 72 65 71 75 69 72 65 64 20 28 |en if required (| 00001a70 70 6c 65 61 73 65 20 73 65 65 20 74 68 65 20 21 |please see the !| 00001a80 52 75 6e 20 66 69 6c 65 20 66 6f 72 20 64 65 74 |Run file for det| 00001a90 61 69 6c 73 29 0a 0a 20 20 20 20 20 20 50 72 65 |ails).. Pre| 00001aa0 63 69 73 69 6f 6e 20 20 20 20 20 54 69 6d 65 72 |cision Timer| 00001ab0 73 2f 53 65 63 20 20 20 20 20 20 20 20 20 20 44 |s/Sec D| 00001ac0 65 66 61 75 6c 74 20 75 73 65 64 0a 20 20 20 20 |efault used. | 00001ad0 20 20 20 20 20 20 30 20 20 20 20 20 20 20 20 20 | 0 | 00001ae0 20 20 20 31 30 30 0a 20 20 20 20 20 20 20 20 20 | 100. | 00001af0 20 31 20 20 20 20 20 20 20 20 20 20 20 20 32 30 | 1 20| 00001b00 30 0a 20 20 20 20 20 20 20 20 20 20 32 20 20 20 |0. 2 | 00001b10 20 20 20 20 20 20 20 20 20 34 30 30 20 20 20 20 | 400 | 00001b20 20 20 20 20 20 20 20 20 20 20 76 33 2e 30 30 2c | v3.00,| 00001b30 20 76 33 2e 31 30 2c 20 76 33 2e 31 31 0a 20 20 | v3.10, v3.11. | 00001b40 20 20 20 20 20 20 20 20 33 20 20 20 20 20 20 20 | 3 | 00001b50 20 20 20 20 20 38 30 30 0a 20 20 20 20 20 20 20 | 800. | 00001b60 20 20 20 34 20 20 20 20 20 20 20 20 20 20 31 2c | 4 1,| 00001b70 36 30 30 20 20 20 20 20 20 20 20 20 20 20 20 20 |600 | 00001b80 20 76 33 2e 35 30 2c 20 76 33 2e 37 30 20 28 69 | v3.50, v3.70 (i| 00001b90 65 20 52 49 53 43 20 50 43 29 0a 20 20 20 20 20 |e RISC PC). | 00001ba0 20 20 20 20 20 35 20 20 20 20 20 20 20 20 20 20 | 5 | 00001bb0 33 2c 32 30 30 0a 20 20 20 20 20 20 20 20 20 20 |3,200. | 00001bc0 36 20 20 20 20 20 20 20 20 20 20 36 2c 34 30 30 |6 6,400| 00001bd0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 33 | v3| 00001be0 2e 37 30 20 77 69 74 68 20 53 74 72 6f 6e 67 41 |.70 with StrongA| 00001bf0 72 6d 0a 20 20 20 20 20 20 20 20 20 20 37 20 20 |rm. 7 | 00001c00 20 20 20 20 20 20 20 31 32 2c 38 30 30 0a 20 20 | 12,800. | 00001c10 20 20 20 20 20 20 20 20 38 20 20 20 20 20 20 20 | 8 | 00001c20 20 20 32 35 2c 36 30 30 0a 0a 20 20 54 68 65 20 | 25,600.. The | 00001c30 68 69 67 68 65 72 20 74 68 65 20 70 72 65 63 69 |higher the preci| 00001c40 73 69 6f 6e 2c 20 74 68 65 20 6d 6f 72 65 20 61 |sion, the more a| 00001c50 63 63 75 72 61 74 65 2c 20 62 75 74 20 74 68 65 |ccurate, but the| 00001c60 20 6d 6f 72 65 20 6f 76 65 72 68 65 61 64 21 21 | more overhead!!| 00001c70 0a 0a 20 20 54 68 69 73 20 69 6e 74 65 72 6e 61 |.. This interna| 00001c80 6c 20 54 69 6d 65 72 20 69 73 20 75 73 65 64 20 |l Timer is used | 00001c90 69 6e 20 70 72 65 66 65 72 65 6e 63 65 20 74 6f |in preference to| 00001ca0 20 74 68 65 20 52 49 53 43 20 4f 53 20 4d 6f 6e | the RISC OS Mon| 00001cb0 6f 74 6f 6e 69 63 20 54 69 6d 65 2c 0a 20 20 62 |otonic Time,. b| 00001cc0 65 63 61 75 73 65 20 74 68 61 74 20 69 73 20 6f |ecause that is o| 00001cd0 6e 6c 79 20 61 76 61 69 6c 61 62 6c 65 20 69 6e |nly available in| 00001ce0 20 63 65 6e 74 69 73 65 63 6f 6e 64 73 2e 20 20 | centiseconds. | 00001cf0 41 20 53 74 72 6f 6e 67 41 72 6d 20 6d 61 63 68 |A StrongArm mach| 00001d00 69 6e 65 20 63 61 6e 20 70 6f 6c 6c 0a 20 20 61 |ine can poll. a| 00001d10 74 20 32 30 2c 30 30 30 20 74 69 6d 65 73 20 61 |t 20,000 times a| 00001d20 20 73 65 63 6f 6e 64 2c 20 73 6f 20 75 73 69 6e | second, so usin| 00001d30 67 20 61 20 74 69 6d 65 72 20 77 68 69 63 68 20 |g a timer which | 00001d40 69 73 20 6f 6e 6c 79 20 63 61 70 61 62 6c 65 20 |is only capable | 00001d50 6f 66 20 6d 65 61 73 75 72 69 6e 67 20 74 6f 0a |of measuring to.| 00001d60 20 20 31 30 30 20 74 69 6d 65 73 20 61 20 73 65 | 100 times a se| 00001d70 63 6f 6e 64 20 69 73 20 72 61 74 68 65 72 20 69 |cond is rather i| 00001d80 6e 61 63 63 75 72 61 74 65 21 20 20 20 4e 6f 74 |naccurate! Not| 00001d90 65 20 68 6f 77 65 76 65 72 20 74 68 61 74 20 74 |e however that t| 00001da0 68 65 72 65 20 63 61 6e 20 62 65 20 6f 6e 6c 79 |here can be only| 00001db0 0a 20 20 6f 6e 65 20 75 73 65 72 20 6f 66 20 54 |. one user of T| 00001dc0 69 6d 65 72 20 31 20 2d 20 69 66 20 79 6f 75 20 |imer 1 - if you | 00001dd0 68 61 76 65 20 61 6e 6f 74 68 65 72 20 41 70 70 |have another App| 00001de0 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 68 20 75 |lication which u| 00001df0 73 65 73 20 54 69 6d 65 72 20 31 2c 20 74 68 65 |ses Timer 1, the| 00001e00 6e 0a 20 20 69 66 20 74 68 65 79 20 61 72 65 20 |n. if they are | 00001e10 62 6f 74 68 20 72 75 6e 6e 69 6e 67 20 61 74 20 |both running at | 00001e20 74 68 65 20 73 61 6d 65 20 74 69 6d 65 2c 20 74 |the same time, t| 00001e30 68 65 20 66 69 72 73 74 20 6f 6e 65 20 73 74 61 |he first one sta| 00001e40 72 74 65 64 20 77 69 6c 6c 20 4e 4f 54 20 77 6f |rted will NOT wo| 00001e50 72 6b 0a 20 20 70 72 6f 70 65 72 6c 79 2e 20 20 |rk. properly. | 00001e60 49 66 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 72 |If you need to r| 00001e70 75 6e 20 62 6f 74 68 20 61 70 70 6c 69 63 61 74 |un both applicat| 00001e80 69 6f 6e 73 2c 20 74 68 65 6e 20 75 73 69 6e 67 |ions, then using| 00001e90 20 61 20 70 72 65 63 69 73 69 6f 6e 20 6f 66 20 | a precision of | 00001ea0 4d 20 77 69 6c 6c 0a 20 20 73 65 74 20 54 61 73 |M will. set Tas| 00001eb0 6b 55 73 61 67 65 20 74 6f 20 75 73 65 20 74 68 |kUsage to use th| 00001ec0 65 20 4d 6f 6e 6f 74 6f 6e 69 63 20 54 69 6d 65 |e Monotonic Time| 00001ed0 20 28 31 30 30 20 54 69 6d 65 72 73 2f 73 65 63 | (100 Timers/sec| 00001ee0 29 20 69 6e 73 74 65 61 64 20 6f 66 20 54 69 6d |) instead of Tim| 00001ef0 65 72 20 31 2e 0a 0a 20 20 54 68 65 20 70 72 65 |er 1... The pre| 00001f00 63 69 73 69 6f 6e 20 61 6e 64 20 74 68 65 20 74 |cision and the t| 00001f10 69 6d 65 72 20 62 65 69 6e 67 20 75 73 65 64 20 |imer being used | 00001f20 63 61 6e 20 62 65 20 64 69 73 70 6c 61 79 65 64 |can be displayed| 00001f30 20 62 79 20 74 68 65 20 6d 65 6e 75 20 6f 70 74 | by the menu opt| 00001f40 69 6f 6e 20 54 69 6d 65 72 2e 0a 0a 20 20 57 68 |ion Timer... Wh| 00001f50 65 6e 20 54 61 73 6b 55 73 61 67 65 20 69 6e 69 |en TaskUsage ini| 00001f60 74 69 61 6c 69 73 65 73 2c 20 69 74 20 69 6e 73 |tialises, it ins| 00001f70 74 61 6c 6c 73 20 74 68 65 20 66 6f 6c 6c 6f 77 |talls the follow| 00001f80 69 6e 67 20 6d 6f 6e 69 74 6f 72 69 6e 67 20 63 |ing monitoring c| 00001f90 6f 64 65 20 69 6e 20 52 49 53 43 20 4f 53 3a 0a |ode in RISC OS:.| 00001fa0 0a 20 20 8f 20 20 20 20 54 68 65 20 57 69 6d 70 |. . The Wimp| 00001fb0 20 50 6f 73 74 2d 46 69 6c 74 65 72 20 63 6f 64 | Post-Filter cod| 00001fc0 65 2c 20 77 68 69 63 68 20 69 73 20 61 62 6f 75 |e, which is abou| 00001fd0 74 20 31 32 20 69 6e 73 74 72 75 63 74 69 6f 6e |t 12 instruction| 00001fe0 73 20 6c 6f 6e 67 2c 20 61 6e 64 20 69 73 0a 20 |s long, and is. | 00001ff0 20 63 61 6c 6c 65 64 20 65 76 65 72 79 20 74 69 | called every ti| 00002000 6d 65 20 61 20 70 72 6f 67 72 61 6d 20 72 65 74 |me a program ret| 00002010 75 72 6e 73 20 66 72 6f 6d 20 61 20 57 69 6d 70 |urns from a Wimp| 00002020 20 50 6f 6c 6c 2e 0a 0a 20 20 8f 20 20 20 20 54 | Poll... . T| 00002030 68 65 20 57 69 6d 70 20 50 72 65 2d 46 69 6c 74 |he Wimp Pre-Filt| 00002040 65 72 20 63 6f 64 65 2c 20 77 68 69 63 68 20 69 |er code, which i| 00002050 73 20 61 62 6f 75 74 20 33 33 20 69 6e 73 74 72 |s about 33 instr| 00002060 75 63 74 69 6f 6e 73 20 6c 6f 6e 67 2c 20 61 6e |uctions long, an| 00002070 64 20 69 73 0a 20 20 63 61 6c 6c 65 64 20 65 76 |d is. called ev| 00002080 65 72 79 20 74 69 6d 65 20 61 20 70 72 6f 67 72 |ery time a progr| 00002090 61 6d 20 63 61 6c 6c 73 20 57 69 6d 70 20 50 6f |am calls Wimp Po| 000020a0 6c 6c 2e 0a 0a 20 20 8f 20 20 20 20 54 68 65 20 |ll... . The | 000020b0 49 6e 74 65 72 72 75 70 74 20 63 6f 64 65 2c 20 |Interrupt code, | 000020c0 77 68 69 63 68 20 69 73 20 63 61 6c 6c 65 64 20 |which is called | 000020d0 65 76 65 72 79 20 73 65 63 6f 6e 64 20 28 6f 72 |every second (or| 000020e0 20 74 77 6f 29 2c 20 69 73 20 61 62 6f 75 74 20 | two), is about | 000020f0 32 33 30 0a 20 20 69 6e 73 74 72 75 63 74 69 6f |230. instructio| 00002100 6e 73 2c 20 70 6c 75 73 20 31 30 20 66 6f 72 20 |ns, plus 10 for | 00002110 65 61 63 68 20 6f 66 20 74 68 65 20 6d 61 78 69 |each of the maxi| 00002120 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 74 61 |mum number of ta| 00002130 73 6b 73 20 74 68 61 74 20 68 61 76 65 20 72 75 |sks that have ru| 00002140 6e 0a 20 20 63 6f 6e 63 75 72 72 65 6e 74 6c 79 |n. concurrently| 00002150 20 73 69 6e 63 65 20 74 68 65 20 63 6f 6d 70 75 | since the compu| 00002160 74 65 72 20 68 61 73 20 62 65 65 6e 20 73 74 61 |ter has been sta| 00002170 72 74 65 64 20 6f 72 20 52 65 73 65 74 2e 0a 0a |rted or Reset...| 00002180 20 20 55 73 69 6e 67 20 74 68 65 20 74 69 6d 65 | Using the time| 00002190 73 20 67 61 74 68 65 72 65 64 20 62 79 20 74 68 |s gathered by th| 000021a0 69 73 20 6d 6f 6e 69 74 6f 72 69 6e 67 20 63 6f |is monitoring co| 000021b0 64 65 2c 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e |de, the followin| 000021c0 67 20 61 72 65 20 63 61 6c 63 75 6c 61 74 65 64 |g are calculated| 000021d0 3a 0a 0a 20 20 8f 20 20 20 20 54 68 65 20 65 6c |:.. . The el| 000021e0 61 70 73 65 20 74 69 6d 65 20 69 73 20 72 65 63 |apse time is rec| 000021f0 6f 72 64 65 64 20 66 6f 72 20 65 61 63 68 20 54 |orded for each T| 00002200 61 73 6b 2c 20 66 72 6f 6d 20 74 68 65 20 74 69 |ask, from the ti| 00002210 6d 65 20 77 68 65 6e 20 74 68 65 0a 20 20 61 70 |me when the. ap| 00002220 70 6c 69 63 61 74 69 6f 6e 20 69 73 20 72 65 74 |plication is ret| 00002230 75 72 6e 65 64 20 74 6f 20 61 66 74 65 72 20 63 |urned to after c| 00002240 61 6c 6c 69 6e 67 20 57 69 6d 70 50 6f 6c 6c 2c |alling WimpPoll,| 00002250 20 74 6f 20 74 68 65 20 74 69 6d 65 20 74 68 65 | to the time the| 00002260 20 61 70 70 6c 69 63 61 74 69 6f 6e 0a 20 20 63 | application. c| 00002270 61 6c 6c 73 20 57 69 6d 70 50 6f 6c 6c 20 61 67 |alls WimpPoll ag| 00002280 61 69 6e 2e 20 20 54 68 69 73 20 69 73 20 74 68 |ain. This is th| 00002290 65 20 65 6c 61 70 73 65 64 20 74 69 6d 65 20 73 |e elapsed time s| 000022a0 70 65 6e 74 20 69 6e 20 74 68 65 20 61 70 70 6c |pent in the appl| 000022b0 69 63 61 74 69 6f 6e 20 54 61 73 6b 2e 0a 20 20 |ication Task.. | 000022c0 49 74 20 77 69 6c 6c 20 75 73 75 61 6c 6c 79 20 |It will usually | 000022d0 63 6f 6d 70 72 69 73 65 20 50 72 6f 63 65 73 73 |comprise Process| 000022e0 6f 72 20 74 69 6d 65 2c 20 62 75 74 20 69 66 20 |or time, but if | 000022f0 61 6e 79 20 69 6e 70 75 74 20 6f 72 20 6f 75 74 |any input or out| 00002300 70 75 74 20 69 73 20 69 6e 76 6f 6c 76 65 64 2c |put is involved,| 00002310 0a 20 20 74 68 65 72 65 20 6d 61 79 20 62 65 20 |. there may be | 00002320 73 6f 6d 65 20 74 69 6d 65 20 73 70 65 6e 74 20 |some time spent | 00002330 77 61 69 74 69 6e 67 20 66 6f 72 20 74 68 65 20 |waiting for the | 00002340 64 69 73 63 20 6f 72 20 6f 74 68 65 72 20 64 65 |disc or other de| 00002350 76 69 63 65 2e 0a 0a 20 20 8f 20 20 20 20 49 6e |vice... . In| 00002360 20 61 64 64 69 74 69 6f 6e 2c 20 65 61 63 68 20 | addition, each | 00002370 73 65 63 6f 6e 64 20 74 68 65 20 69 6e 74 65 72 |second the inter| 00002380 72 75 70 74 20 72 6f 75 74 69 6e 65 20 66 69 72 |rupt routine fir| 00002390 73 74 20 61 63 63 75 6d 75 6c 61 74 65 73 20 74 |st accumulates t| 000023a0 68 65 20 74 69 6d 65 0a 20 20 66 6f 72 20 74 68 |he time. for th| 000023b0 65 20 54 61 73 6b 20 61 6e 64 20 52 65 61 73 6f |e Task and Reaso| 000023c0 6e 20 43 6f 64 65 20 77 68 69 63 68 20 69 74 20 |n Code which it | 000023d0 68 61 73 20 69 6e 74 65 72 72 75 70 74 65 64 2e |has interrupted.| 000023e0 20 20 49 74 20 74 68 65 6e 20 63 61 6c 63 75 6c | It then calcul| 000023f0 61 74 65 73 20 74 68 65 0a 20 20 6c 61 74 65 73 |ates the. lates| 00002400 74 20 61 76 65 72 61 67 65 20 66 6f 72 20 65 61 |t average for ea| 00002410 63 68 20 54 61 73 6b 2c 20 61 6e 64 20 66 6f 72 |ch Task, and for| 00002420 20 65 61 63 68 20 57 69 6d 70 20 52 65 61 73 6f | each Wimp Reaso| 00002430 6e 20 43 6f 64 65 2e 20 20 54 68 65 20 61 76 65 |n Code. The ave| 00002440 72 61 67 65 20 69 73 20 61 0a 20 20 73 69 6d 70 |rage is a. simp| 00002450 6c 65 20 72 6f 6c 6c 69 6e 67 20 27 61 76 65 72 |le rolling 'aver| 00002460 61 67 65 27 2c 20 63 61 6c 63 75 6c 61 74 65 64 |age', calculated| 00002470 20 62 79 20 74 61 6b 69 6e 67 20 74 68 65 20 6c | by taking the l| 00002480 61 73 74 20 61 76 65 72 61 67 65 2c 20 61 64 64 |ast average, add| 00002490 69 6e 67 20 74 68 65 0a 20 20 6c 61 74 65 73 74 |ing the. latest| 000024a0 20 65 6c 61 70 73 65 64 20 70 72 6f 63 65 73 73 | elapsed process| 000024b0 6f 72 20 74 69 6d 65 2c 20 61 6e 64 20 64 69 76 |or time, and div| 000024c0 69 64 69 6e 67 20 62 79 20 74 77 6f 2e 20 20 49 |iding by two. I| 000024d0 74 20 69 73 20 6e 6f 74 20 61 20 74 72 75 65 20 |t is not a true | 000024e0 61 76 65 72 61 67 65 2c 0a 20 20 62 75 74 20 69 |average,. but i| 000024f0 74 20 69 73 20 73 69 6d 70 6c 65 2c 20 71 75 69 |t is simple, qui| 00002500 63 6b 2c 20 61 6e 64 20 67 69 76 65 73 20 61 20 |ck, and gives a | 00002510 72 65 61 73 6f 6e 61 62 6c 65 20 72 65 70 72 65 |reasonable repre| 00002520 73 65 6e 74 61 74 69 6f 6e 20 6f 66 20 74 68 65 |sentation of the| 00002530 20 75 73 61 67 65 2e 0a 0a 0a 20 20 54 65 73 74 | usage.... Test| 00002540 20 50 72 6f 67 72 61 6d 73 20 53 75 70 70 6c 69 | Programs Suppli| 00002550 65 64 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |ed. ===========| 00002560 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 49 |===========.. I| 00002570 6e 20 74 68 65 20 21 54 61 73 6b 55 73 61 67 65 |n the !TaskUsage| 00002580 20 64 69 72 65 63 74 6f 72 79 20 74 68 65 72 65 | directory there| 00002590 20 69 73 20 61 20 64 69 72 65 63 74 6f 72 79 20 | is a directory | 000025a0 63 61 6c 6c 65 64 20 54 65 73 74 50 72 6f 67 73 |called TestProgs| 000025b0 2e 0a 20 20 54 68 69 73 20 63 6f 6e 74 61 69 6e |.. This contain| 000025c0 73 20 66 6f 75 72 20 73 69 6d 70 6c 65 20 70 72 |s four simple pr| 000025d0 6f 67 72 61 6d 73 3a 0a 0a 20 20 8f 20 20 20 20 |ograms:.. . | 000025e0 50 6f 6c 6c 41 73 6d 20 20 20 20 20 20 61 6e 20 |PollAsm an | 000025f0 41 73 73 65 6d 62 6c 65 72 20 57 69 6d 50 6f 6c |Assembler WimPol| 00002600 6c 20 6c 6f 6f 70 20 6f 6e 20 4e 75 6c 6c 50 6f |l loop on NullPo| 00002610 6c 6c 0a 20 20 8f 20 20 20 20 50 6f 6c 6c 42 61 |ll. . PollBa| 00002620 73 69 63 20 20 20 20 61 20 42 41 53 49 43 20 57 |sic a BASIC W| 00002630 69 6d 50 6f 6c 6c 20 6c 6f 6f 70 20 6f 6e 20 4e |imPoll loop on N| 00002640 75 6c 6c 50 6f 6c 6c 0a 20 20 8f 20 20 20 20 50 |ullPoll. . P| 00002650 6f 6c 6c 49 64 6c 65 42 61 20 20 20 61 20 42 41 |ollIdleBa a BA| 00002660 53 49 43 20 57 69 6d 50 6f 6c 6c 49 64 6c 65 20 |SIC WimPollIdle | 00002670 6c 6f 6f 70 20 6f 6e 20 4e 75 6c 6c 50 6f 6c 6c |loop on NullPoll| 00002680 20 77 69 74 68 20 31 2f 31 30 20 73 65 63 6f 6e | with 1/10 secon| 00002690 64 20 64 65 6c 61 79 0a 20 20 8f 20 20 20 20 50 |d delay. . P| 000026a0 6f 6c 6c 4d 6f 64 75 6c 65 20 20 20 61 6e 20 41 |ollModule an A| 000026b0 73 73 65 6d 62 6c 65 72 20 57 69 6d 50 6f 6c 6c |ssembler WimPoll| 000026c0 20 6c 6f 6f 70 20 6f 6e 20 4e 75 6c 6c 50 6f 6c | loop on NullPol| 000026d0 6c 20 69 6e 20 61 20 52 65 6c 6f 63 61 74 61 62 |l in a Relocatab| 000026e0 6c 65 20 4d 6f 64 75 6c 65 0a 0a 20 20 4e 6f 74 |le Module.. Not| 000026f0 65 20 74 68 61 74 20 61 6c 6c 20 74 68 65 73 65 |e that all these| 00002700 20 70 72 6f 67 72 61 6d 73 20 61 70 70 65 61 72 | programs appear| 00002710 20 74 6f 20 64 6f 20 4e 4f 54 48 49 4e 47 20 77 | to do NOTHING w| 00002720 68 65 6e 20 64 6f 75 62 6c 65 20 63 6c 69 63 6b |hen double click| 00002730 65 64 20 6f 6e 2e 0a 20 20 4e 6f 20 69 63 6f 6e |ed on.. No icon| 00002740 73 20 61 70 70 65 61 72 21 20 20 54 68 65 79 20 |s appear! They | 00002750 73 69 6d 70 6c 79 20 70 6f 6c 6c 20 61 73 20 66 |simply poll as f| 00002760 61 73 74 20 61 73 20 70 6f 73 73 69 62 6c 65 2e |ast as possible.| 00002770 0a 20 20 54 68 65 20 6f 6e 6c 79 20 77 61 79 20 |. The only way | 00002780 74 6f 20 73 74 6f 70 20 74 68 65 6d 20 69 73 20 |to stop them is | 00002790 74 6f 20 73 65 6c 65 63 74 20 51 75 69 74 20 66 |to select Quit f| 000027a0 72 6f 6d 20 74 68 65 20 54 61 73 6b 20 4d 61 6e |rom the Task Man| 000027b0 61 67 65 72 20 64 69 73 70 6c 61 79 2e 0a 0a 20 |ager display... | 000027c0 20 53 6f 6d 65 20 74 65 73 74 20 72 65 73 75 6c | Some test resul| 000027d0 74 73 20 66 72 6f 6d 20 6d 6f 6e 69 74 6f 72 69 |ts from monitori| 000027e0 6e 67 20 74 68 65 20 50 6f 6c 6c 69 6e 67 20 70 |ng the Polling p| 000027f0 72 6f 67 72 61 6d 73 2c 20 77 69 74 68 20 6c 69 |rograms, with li| 00002800 74 74 6c 65 20 65 6c 73 65 0a 20 20 72 75 6e 6e |ttle else. runn| 00002810 69 6e 67 2c 20 6f 6e 20 74 77 6f 20 64 69 66 66 |ing, on two diff| 00002820 65 72 65 6e 74 20 6d 61 63 68 69 6e 65 73 2c 20 |erent machines, | 00002830 61 72 65 20 61 73 20 66 6f 6c 6c 6f 77 73 3a 0a |are as follows:.| 00002840 0a 20 20 52 49 53 43 20 50 43 36 30 30 20 53 74 |. RISC PC600 St| 00002850 72 6f 6e 67 41 72 6d 20 20 20 52 49 53 43 20 4f |rongArm RISC O| 00002860 53 20 33 2e 37 30 0a 20 20 2d 2d 2d 2d 2d 2d 2d |S 3.70. -------| 00002870 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00002880 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 20 |------------.. | 00002890 50 72 65 63 69 73 69 6f 6e 20 20 20 20 20 20 20 |Precision | 000028a0 20 20 35 0a 20 20 54 69 6d 65 72 20 55 73 65 64 | 5. Timer Used| 000028b0 20 20 20 20 20 20 20 20 54 69 6d 65 72 20 31 0a | Timer 1.| 000028c0 20 20 54 69 6d 65 72 73 2f 53 65 63 6f 6e 64 20 | Timers/Second | 000028d0 20 20 20 20 36 2c 34 30 30 0a 20 20 53 65 63 6f | 6,400. Seco| 000028e0 6e 64 73 2f 55 70 64 61 74 65 20 20 20 20 31 0a |nds/Update 1.| 000028f0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |. | 00002900 20 20 20 20 20 20 43 50 55 20 55 73 61 67 65 2f | CPU Usage/| 00002910 54 61 73 6b 20 20 20 20 20 20 20 20 20 20 20 20 |Task | 00002920 20 20 20 20 50 6f 6c 6c 73 2f 53 65 63 6f 6e 64 | Polls/Second| 00002930 0a 20 20 50 72 6f 67 72 61 6d 73 20 20 20 20 20 |. Programs | 00002940 20 20 20 20 20 31 20 54 61 73 6b 20 20 20 32 20 | 1 Task 2 | 00002950 54 61 73 6b 73 20 20 20 20 20 20 20 20 20 20 20 |Tasks | 00002960 20 20 31 20 54 61 73 6b 20 20 20 32 20 54 61 73 | 1 Task 2 Tas| 00002970 6b 73 0a 0a 20 20 50 6f 6c 6c 4d 6f 64 75 6c 65 |ks.. PollModule| 00002980 20 20 20 20 20 20 20 20 20 20 20 32 32 25 20 20 | 22% | 00002990 20 20 20 20 31 30 25 20 20 20 20 20 20 20 20 20 | 10% | 000029a0 20 20 20 20 20 31 38 2c 35 30 30 20 20 20 20 35 | 18,500 5| 000029b0 2c 37 30 30 0a 20 20 50 6f 6c 6c 41 73 6d 20 20 |,700. PollAsm | 000029c0 20 20 20 20 20 20 20 20 20 20 20 20 32 30 25 20 | 20% | 000029d0 20 20 20 20 20 20 35 25 20 20 20 20 20 20 20 20 | 5% | 000029e0 20 20 20 20 20 20 31 38 2c 34 30 30 20 20 20 20 | 18,400 | 000029f0 20 20 38 30 30 0a 20 20 50 6f 6c 6c 42 61 73 69 | 800. PollBasi| 00002a00 63 20 20 20 20 20 20 20 20 20 20 20 20 36 30 25 |c 60%| 00002a10 20 20 20 20 20 20 31 35 25 20 20 20 20 20 20 20 | 15% | 00002a20 20 20 20 20 20 20 20 31 31 2c 38 30 30 20 20 20 | 11,800 | 00002a30 20 20 20 35 39 30 0a 20 20 50 6f 6c 6c 49 64 6c | 590. PollIdl| 00002a40 65 42 61 20 20 20 20 20 20 20 20 20 20 20 20 30 |eBa 0| 00002a50 25 20 20 20 20 20 20 20 30 25 20 20 20 20 20 20 |% 0% | 00002a60 20 20 20 20 20 20 20 20 20 20 20 20 31 30 20 20 | 10 | 00002a70 20 20 20 20 20 31 30 0a 0a 20 20 41 34 30 30 30 | 10.. A4000| 00002a80 20 20 20 52 49 53 43 20 4f 53 20 33 2e 31 30 0a | RISC OS 3.10.| 00002a90 20 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | --------------| 00002aa0 2d 2d 2d 2d 2d 2d 0a 0a 20 20 50 72 65 63 69 73 |------.. Precis| 00002ab0 69 6f 6e 20 20 20 20 20 20 20 20 20 32 0a 20 20 |ion 2. | 00002ac0 54 69 6d 65 72 20 55 73 65 64 20 20 20 20 20 20 |Timer Used | 00002ad0 20 20 54 69 6d 65 72 20 31 0a 20 20 54 69 6d 65 | Timer 1. Time| 00002ae0 72 73 2f 53 65 63 6f 6e 64 20 20 20 20 20 34 30 |rs/Second 40| 00002af0 30 0a 20 20 53 65 63 6f 6e 64 73 2f 55 70 64 61 |0. Seconds/Upda| 00002b00 74 65 20 20 20 20 32 0a 0a 20 20 20 20 20 20 20 |te 2.. | 00002b10 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 50 | CP| 00002b20 55 20 55 73 61 67 65 2f 54 61 73 6b 20 20 20 20 |U Usage/Task | 00002b30 20 20 20 20 20 20 20 20 20 20 20 20 50 6f 6c 6c | Poll| 00002b40 73 2f 53 65 63 6f 6e 64 0a 20 20 50 72 6f 67 72 |s/Second. Progr| 00002b50 61 6d 73 20 20 20 20 20 20 20 20 20 20 31 20 54 |ams 1 T| 00002b60 61 73 6b 20 20 20 32 20 54 61 73 6b 73 20 20 20 |ask 2 Tasks | 00002b70 20 20 20 20 20 20 20 20 20 20 31 20 54 61 73 6b | 1 Task| 00002b80 20 20 20 32 20 54 61 73 6b 73 0a 0a 20 20 50 6f | 2 Tasks.. Po| 00002b90 6c 6c 4d 6f 64 75 6c 65 20 20 20 20 20 20 20 20 |llModule | 00002ba0 20 20 20 20 38 25 20 20 20 20 20 20 20 34 25 20 | 8% 4% | 00002bb0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002bc0 37 35 30 20 20 20 20 20 20 32 30 30 0a 20 20 50 |750 200. P| 00002bd0 6f 6c 6c 41 73 6d 20 20 20 20 20 20 20 20 20 20 |ollAsm | 00002be0 20 20 20 20 20 38 25 20 20 20 20 20 20 20 34 25 | 8% 4%| 00002bf0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00002c00 20 37 35 30 20 20 20 20 20 20 31 38 30 0a 20 20 | 750 180. | 00002c10 50 6f 6c 6c 42 61 73 69 63 20 20 20 20 20 20 20 |PollBasic | 00002c20 20 20 20 20 20 34 35 25 20 20 20 20 20 20 31 35 | 45% 15| 00002c30 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |% | 00002c40 20 20 34 30 30 20 20 20 20 20 20 31 33 30 0a 20 | 400 130. | 00002c50 20 50 6f 6c 6c 49 64 6c 65 42 61 20 20 20 20 20 | PollIdleBa | 00002c60 20 20 20 20 20 20 20 34 25 20 20 20 20 20 20 20 | 4% | 00002c70 34 25 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |4% | 00002c80 20 20 20 20 31 30 20 20 20 20 20 20 20 31 30 0a | 10 10.| 00002c90 0a 0a 20 20 4f 62 73 65 72 76 61 74 69 6f 6e 73 |.. Observations| 00002ca0 20 66 72 6f 6d 20 75 73 69 6e 67 20 54 61 73 6b | from using Task| 00002cb0 55 73 61 67 65 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d |Usage. ========| 00002cc0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 00002cd0 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 8f 20 20 |=========.. . | 00002ce0 20 20 49 66 20 52 49 53 43 20 4f 53 20 69 73 20 | If RISC OS is | 00002cf0 6e 6f 74 20 6f 70 65 72 61 74 69 6e 67 20 69 6e |not operating in| 00002d00 20 6d 75 6c 74 69 2d 74 61 73 6b 69 6e 67 20 6d | multi-tasking m| 00002d10 6f 64 65 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 |ode, for example| 00002d20 20 77 68 65 6e 20 46 31 32 20 69 73 0a 20 20 75 | when F12 is. u| 00002d30 73 65 64 20 66 6f 72 20 61 20 63 6f 6d 6d 61 6e |sed for a comman| 00002d40 64 20 6c 69 6e 65 2c 20 6f 72 20 77 68 65 6e 20 |d line, or when | 00002d50 61 20 70 72 6f 67 72 61 6d 20 69 73 20 72 75 6e |a program is run| 00002d60 20 77 68 69 63 68 20 64 6f 65 73 20 6e 6f 74 20 | which does not | 00002d70 63 61 6c 6c 20 57 69 6d 70 20 50 6f 6c 6c 2c 0a |call Wimp Poll,.| 00002d80 20 20 74 68 65 6e 20 74 68 65 20 66 69 67 75 72 | then the figur| 00002d90 65 73 20 63 6f 6c 6c 65 63 74 65 64 20 77 69 6c |es collected wil| 00002da0 6c 20 62 65 20 28 76 65 72 79 29 20 64 69 73 74 |l be (very) dist| 00002db0 6f 72 74 65 64 2c 20 62 75 74 20 77 69 6c 6c 20 |orted, but will | 00002dc0 73 6f 6f 6e 20 72 65 63 6f 76 65 72 20 77 68 65 |soon recover whe| 00002dd0 6e 0a 20 20 6d 75 6c 74 69 2d 74 61 73 6b 69 6e |n. multi-taskin| 00002de0 67 20 69 73 20 72 65 73 75 6d 65 64 2e 0a 0a 20 |g is resumed... | 00002df0 20 8f 20 20 20 20 54 68 65 20 74 69 6d 65 20 73 | . The time s| 00002e00 70 65 6e 74 20 69 6e 20 61 70 70 6c 69 63 61 74 |pent in applicat| 00002e10 69 6f 6e 73 20 65 69 74 68 65 72 20 62 65 66 6f |ions either befo| 00002e20 72 65 20 74 68 65 20 66 69 72 73 74 20 63 61 6c |re the first cal| 00002e30 6c 20 74 6f 20 57 69 6d 70 50 6f 6c 6c 2c 0a 20 |l to WimpPoll,. | 00002e40 20 6f 72 20 61 66 74 65 72 20 74 68 65 20 72 65 | or after the re| 00002e50 74 75 72 6e 20 66 72 6f 6d 20 74 68 65 20 6c 61 |turn from the la| 00002e60 73 74 20 57 69 6d 70 50 6f 6c 6c 2c 20 61 72 65 |st WimpPoll, are| 00002e70 20 6e 6f 74 20 69 6e 63 6c 75 64 65 64 20 69 6e | not included in| 00002e80 20 74 68 65 20 74 69 6d 65 73 20 73 68 6f 77 6e | the times shown| 00002e90 0a 20 20 62 79 20 54 61 73 6b 55 73 61 67 65 2c |. by TaskUsage,| 00002ea0 20 61 73 20 74 68 65 79 20 61 72 65 20 6e 6f 74 | as they are not| 00002eb0 20 74 68 65 6e 20 6d 75 6c 74 69 2d 74 61 73 6b | then multi-task| 00002ec0 69 6e 67 2e 0a 0a 20 20 8f 20 20 20 20 54 68 65 |ing... . The| 00002ed0 20 74 69 6d 65 20 73 70 65 6e 74 20 62 79 20 52 | time spent by R| 00002ee0 49 53 43 20 4f 53 20 69 74 73 65 6c 66 20 77 68 |ISC OS itself wh| 00002ef0 65 6e 20 6e 6f 74 20 61 63 74 75 61 6c 6c 79 20 |en not actually | 00002f00 72 75 6e 6e 69 6e 67 20 74 61 73 6b 73 20 69 73 |running tasks is| 00002f10 20 6e 6f 74 0a 20 20 69 6e 63 6c 75 64 65 64 20 | not. included | 00002f20 69 6e 20 74 68 65 20 74 69 6d 65 73 20 73 68 6f |in the times sho| 00002f30 77 6e 20 62 79 20 54 61 73 6b 55 73 61 67 65 2e |wn by TaskUsage.| 00002f40 0a 0a 20 20 8f 20 20 20 20 41 6e 79 20 69 6e 74 |.. . Any int| 00002f50 65 72 72 75 70 74 20 63 6f 64 65 20 69 73 20 69 |errupt code is i| 00002f60 6e 63 6c 75 64 65 64 20 69 6e 20 74 68 65 20 61 |ncluded in the a| 00002f70 70 70 6c 69 63 61 74 69 6f 6e 20 77 68 69 63 68 |pplication which| 00002f80 20 68 61 70 70 65 6e 73 20 74 6f 20 62 65 0a 20 | happens to be. | 00002f90 20 72 75 6e 6e 69 6e 67 20 61 74 20 74 68 65 20 | running at the | 00002fa0 74 69 6d 65 2c 20 62 75 74 20 74 68 69 73 20 73 |time, but this s| 00002fb0 68 6f 75 6c 64 20 62 65 20 73 6d 61 6c 6c 2e 0a |hould be small..| 00002fc0 0a 20 20 8f 20 20 20 20 54 68 65 20 6e 75 6d 62 |. . The numb| 00002fd0 65 72 20 6f 66 20 57 69 6d 70 20 50 6f 6c 6c 73 |er of Wimp Polls| 00002fe0 20 77 68 69 63 68 20 61 72 65 20 62 65 69 6e 67 | which are being| 00002ff0 20 70 72 6f 63 65 73 73 65 64 20 70 65 72 20 73 | processed per s| 00003000 65 63 6f 6e 64 20 74 65 6e 64 73 20 74 6f 0a 20 |econd tends to. | 00003010 20 67 72 6f 77 2c 20 74 68 65 6e 20 66 61 6c 6c | grow, then fall| 00003020 2c 20 61 73 20 74 68 65 20 73 79 73 74 65 6d 20 |, as the system | 00003030 67 65 74 73 20 62 75 73 69 65 72 2c 20 61 73 20 |gets busier, as | 00003040 69 74 20 63 61 6e 20 73 65 72 76 69 63 65 20 65 |it can service e| 00003050 61 63 68 20 74 61 73 6b 20 6c 65 73 73 0a 20 20 |ach task less. | 00003060 66 72 65 71 75 65 6e 74 6c 79 2e 20 20 4e 6f 74 |frequently. Not| 00003070 65 20 74 68 61 74 20 61 20 6c 61 72 67 65 20 4e |e that a large N| 00003080 75 6c 6c 20 52 65 61 73 6f 6e 20 43 6f 64 65 20 |ull Reason Code | 00003090 74 69 6d 65 20 69 73 20 6e 6f 74 20 6e 65 63 65 |time is not nece| 000030a0 73 73 61 72 69 6c 79 20 62 61 64 3a 20 69 74 0a |ssarily bad: it.| 000030b0 20 20 6d 61 79 20 73 68 6f 77 20 74 68 61 74 20 | may show that | 000030c0 74 68 65 20 73 79 73 74 65 6d 20 68 61 73 20 73 |the system has s| 000030d0 6f 6d 65 20 73 70 61 72 65 20 74 69 6d 65 20 74 |ome spare time t| 000030e0 6f 20 64 6f 20 61 6e 79 20 62 61 63 6b 67 72 6f |o do any backgro| 000030f0 75 6e 64 20 74 61 73 6b 73 0a 20 20 72 65 71 75 |und tasks. requ| 00003100 69 72 65 64 2e 0a 0a 20 20 8f 20 20 20 20 4f 6e |ired... . On| 00003110 20 61 20 52 49 53 43 20 50 43 20 36 30 30 2c 20 | a RISC PC 600, | 00003120 61 6e 20 61 73 73 65 6d 62 6c 65 72 20 6c 6f 6f |an assembler loo| 00003130 70 20 72 6f 75 6e 64 20 61 20 57 69 6d 70 5f 50 |p round a Wimp_P| 00003140 6f 6c 6c 20 69 6e 20 61 6e 20 41 70 70 6c 69 63 |oll in an Applic| 00003150 61 74 69 6f 6e 0a 20 20 54 61 73 6b 20 63 61 6e |ation. Task can| 00003160 20 6d 61 6e 61 67 65 20 6f 76 65 72 20 31 2c 36 | manage over 1,6| 00003170 30 30 20 70 6f 6c 6c 73 20 70 65 72 20 73 65 63 |00 polls per sec| 00003180 6f 6e 64 2c 20 61 6e 64 20 75 73 65 73 20 61 62 |ond, and uses ab| 00003190 6f 75 74 20 31 30 25 20 6f 66 20 74 68 65 0a 20 |out 10% of the. | 000031a0 20 70 72 6f 63 65 73 73 6f 72 2c 20 69 66 20 72 | processor, if r| 000031b0 75 6e 6e 69 6e 67 20 6f 6e 20 69 74 73 20 6f 77 |unning on its ow| 000031c0 6e 2e 20 20 48 6f 77 65 76 65 72 2c 20 69 66 20 |n. However, if | 000031d0 61 6e 6f 74 68 65 72 20 69 73 20 73 74 61 72 74 |another is start| 000031e0 65 64 2c 20 74 68 65 20 74 6f 74 61 6c 0a 20 20 |ed, the total. | 000031f0 64 72 6f 70 73 20 74 6f 20 61 62 6f 75 74 20 35 |drops to about 5| 00003200 30 30 2c 20 61 6e 64 20 65 61 63 68 20 74 61 73 |00, and each tas| 00003210 6b 20 69 73 20 67 65 74 74 69 6e 67 20 61 62 6f |k is getting abo| 00003220 75 74 20 68 61 6c 66 2e 20 20 54 68 65 20 74 6f |ut half. The to| 00003230 74 61 6c 20 64 72 6f 70 20 6d 75 73 74 20 62 65 |tal drop must be| 00003240 0a 20 20 62 65 63 61 75 73 65 20 6f 66 20 74 68 |. because of th| 00003250 65 20 6f 76 65 72 68 65 61 64 73 20 6f 66 20 72 |e overheads of r| 00003260 75 6e 6e 69 6e 67 20 6d 6f 72 65 20 74 68 61 6e |unning more than| 00003270 20 6f 6e 65 20 61 70 70 6c 69 63 61 74 69 6f 6e | one application| 00003280 20 74 61 73 6b 2c 20 77 68 69 63 68 0a 20 20 72 | task, which. r| 00003290 65 71 75 69 72 65 73 20 6d 65 6d 6f 72 79 20 74 |equires memory t| 000032a0 6f 20 62 65 20 70 61 67 65 64 20 69 6e 20 61 6e |o be paged in an| 000032b0 64 20 6f 75 74 2e 20 20 54 68 65 20 73 79 73 74 |d out. The syst| 000032c0 65 6d 20 70 6f 6c 6c 69 6e 67 20 63 61 70 61 62 |em polling capab| 000032d0 69 6c 69 74 79 20 69 73 20 74 68 65 6e 0a 20 20 |ility is then. | 000032e0 64 69 76 69 64 65 64 20 62 79 20 74 68 65 20 6e |divided by the n| 000032f0 75 6d 62 65 72 20 6f 66 20 74 61 73 6b 73 20 72 |umber of tasks r| 00003300 75 6e 6e 69 6e 67 2e 20 20 53 75 62 73 65 71 75 |unning. Subsequ| 00003310 65 6e 74 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 |ent additional t| 00003320 61 73 6b 73 20 64 6f 20 6e 6f 74 0a 20 20 72 65 |asks do not. re| 00003330 64 75 63 65 20 74 68 65 20 74 6f 74 61 6c 20 73 |duce the total s| 00003340 69 67 6e 69 66 69 63 61 6e 74 6c 79 2c 20 62 75 |ignificantly, bu| 00003350 74 20 65 61 63 68 20 74 61 73 6b 20 6f 6e 6c 79 |t each task only| 00003360 20 67 65 74 73 20 69 74 27 73 20 73 68 61 72 65 | gets it's share| 00003370 20 6f 66 20 4e 75 6c 6c 0a 20 20 50 6f 6c 6c 73 | of Null. Polls| 00003380 2e 20 20 54 68 69 73 20 69 73 20 77 68 79 20 6d |. This is why m| 00003390 69 73 62 65 68 61 76 65 64 20 74 61 73 6b 73 20 |isbehaved tasks | 000033a0 77 68 69 63 68 20 75 73 65 20 74 68 65 20 4e 75 |which use the Nu| 000033b0 6c 6c 20 72 65 61 73 6f 6e 20 63 6f 64 65 20 77 |ll reason code w| 000033c0 68 65 6e 20 6e 6f 74 0a 20 20 72 65 71 75 69 72 |hen not. requir| 000033d0 65 64 20 73 6f 61 6b 20 75 70 20 73 75 63 68 20 |ed soak up such | 000033e0 6c 61 72 67 65 20 61 6d 6f 75 6e 74 73 20 6f 66 |large amounts of| 000033f0 20 70 72 6f 63 65 73 73 6f 72 20 74 69 6d 65 2c | processor time,| 00003400 20 6d 61 6b 69 6e 67 20 74 68 65 20 73 79 73 74 | making the syst| 00003410 65 6d 20 6c 65 73 73 0a 20 20 72 65 73 70 6f 6e |em less. respon| 00003420 73 69 76 65 2c 20 65 76 65 6e 20 74 68 6f 75 67 |sive, even thoug| 00003430 68 20 4e 75 6c 6c 20 63 6f 64 65 73 20 61 72 65 |h Null codes are| 00003440 20 70 72 6f 63 65 73 73 65 64 20 77 69 74 68 20 | processed with | 00003450 74 68 65 20 6c 6f 77 65 73 74 20 70 72 69 6f 72 |the lowest prior| 00003460 69 74 79 2e 0a 0a 20 20 8f 20 20 20 20 4f 6e 20 |ity... . On | 00003470 61 20 52 49 53 43 20 50 43 20 36 30 30 2c 20 61 |a RISC PC 600, a| 00003480 6e 20 42 41 53 49 43 20 6c 6f 6f 70 20 72 6f 75 |n BASIC loop rou| 00003490 6e 64 20 61 20 57 69 6d 70 5f 50 6f 6c 6c 20 63 |nd a Wimp_Poll c| 000034a0 61 6e 20 6d 61 6e 61 67 65 20 61 62 6f 75 74 20 |an manage about | 000034b0 36 35 30 0a 20 20 70 6f 6c 6c 73 20 70 65 72 20 |650. polls per | 000034c0 73 65 63 6f 6e 64 2c 20 61 6e 64 20 75 73 65 73 |second, and uses| 000034d0 20 61 62 6f 75 74 20 35 35 25 20 6f 66 20 74 68 | about 55% of th| 000034e0 65 20 70 72 6f 63 65 73 73 6f 72 2c 20 69 66 20 |e processor, if | 000034f0 72 75 6e 6e 69 6e 67 20 6f 6e 20 69 74 73 20 6f |running on its o| 00003500 77 6e 2e 0a 20 20 48 6f 77 65 76 65 72 2c 20 69 |wn.. However, i| 00003510 66 20 61 6e 6f 74 68 65 72 20 69 73 20 73 74 61 |f another is sta| 00003520 72 74 65 64 2c 20 74 68 65 20 74 6f 74 61 6c 20 |rted, the total | 00003530 64 72 6f 70 73 20 74 6f 20 61 62 6f 75 74 20 33 |drops to about 3| 00003540 35 30 2c 20 61 6e 64 20 65 61 63 68 20 74 61 73 |50, and each tas| 00003550 6b 20 69 73 0a 20 20 67 65 74 74 69 6e 67 20 61 |k is. getting a| 00003560 62 6f 75 74 20 68 61 6c 66 2e 20 20 54 68 65 20 |bout half. The | 00003570 64 72 6f 70 20 6f 66 20 74 68 65 20 74 6f 74 61 |drop of the tota| 00003580 6c 20 69 73 20 6c 65 73 73 20 74 68 61 6e 20 77 |l is less than w| 00003590 69 74 68 20 74 68 65 20 61 73 73 65 6d 62 6c 65 |ith the assemble| 000035a0 72 20 50 6f 6c 6c 2c 0a 20 20 62 75 74 20 74 68 |r Poll,. but th| 000035b0 69 73 20 69 73 20 70 72 6f 62 61 62 6c 79 20 62 |is is probably b| 000035c0 65 63 61 75 73 65 20 74 68 65 20 6d 75 6c 74 69 |ecause the multi| 000035d0 2d 74 61 73 6b 69 6e 67 20 6f 76 65 72 68 65 61 |-tasking overhea| 000035e0 64 73 20 61 72 65 20 70 61 72 74 6c 79 20 6f 76 |ds are partly ov| 000035f0 65 72 73 68 61 64 6f 77 65 64 0a 20 20 62 79 20 |ershadowed. by | 00003600 74 68 65 20 42 61 73 69 63 20 6f 76 65 72 68 65 |the Basic overhe| 00003610 61 64 73 2e 20 41 67 61 69 6e 2c 20 65 61 63 68 |ads. Again, each| 00003620 20 74 61 73 6b 20 67 65 74 73 20 69 74 27 73 20 | task gets it's | 00003630 73 68 61 72 65 20 6f 66 20 74 68 65 20 4e 75 6c |share of the Nul| 00003640 6c 20 50 6f 6c 6c 73 2e 0a 0a 20 20 8f 20 20 20 |l Polls... . | 00003650 20 4f 6e 20 61 20 53 74 72 6f 6e 67 41 72 6d 20 | On a StrongArm | 00003660 52 49 53 43 20 50 43 2c 20 74 68 65 20 61 73 73 |RISC PC, the ass| 00003670 65 6d 62 6c 65 72 20 57 69 6d 70 5f 50 6f 6c 6c |embler Wimp_Poll| 00003680 20 6c 6f 6f 70 20 63 61 6e 20 72 65 61 63 68 20 | loop can reach | 00003690 31 39 2c 30 30 30 0a 20 20 70 6f 6c 6c 73 20 70 |19,000. polls p| 000036a0 65 72 20 73 65 63 6f 6e 64 2c 20 61 6e 64 20 74 |er second, and t| 000036b0 68 65 20 42 61 73 69 63 20 6c 6f 6f 70 20 63 61 |he Basic loop ca| 000036c0 6e 20 72 65 61 63 68 20 31 2c 35 35 30 2e 0a 0a |n reach 1,550...| 000036d0 20 20 53 6f 6d 65 20 6f 62 73 65 72 76 61 74 69 | Some observati| 000036e0 6f 6e 73 20 6f 6e 20 61 20 66 65 77 20 73 70 65 |ons on a few spe| 000036f0 63 69 66 69 63 20 61 70 70 6c 69 63 61 74 69 6f |cific applicatio| 00003700 6e 73 20 69 73 20 61 73 20 66 6f 6c 6c 6f 77 73 |ns is as follows| 00003710 3a 0a 0a 20 20 8f 20 20 20 20 21 50 43 70 72 6f |:.. . !PCpro| 00003720 2c 20 76 65 72 73 69 6f 6e 20 32 2e 30 33 2c 20 |, version 2.03, | 00003730 73 75 70 70 6c 69 65 72 20 41 6c 65 70 68 20 31 |supplier Aleph 1| 00003740 3a 20 20 54 68 69 73 20 75 73 65 73 20 39 30 25 |: This uses 90%| 00003750 2b 20 69 66 20 74 68 65 20 50 43 20 77 69 6e 64 |+ if the PC wind| 00003760 6f 77 0a 20 20 69 73 20 6f 70 65 6e 2c 20 61 6e |ow. is open, an| 00003770 64 20 68 61 73 20 74 68 65 20 69 6e 70 75 74 20 |d has the input | 00003780 66 6f 63 75 73 2e 20 54 68 69 73 20 66 61 6c 6c |focus. This fall| 00003790 73 20 74 6f 20 36 30 25 20 69 66 20 69 74 20 64 |s to 60% if it d| 000037a0 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 74 68 65 |oes not have the| 000037b0 20 69 6e 70 75 74 0a 20 20 66 6f 63 75 73 2c 20 | input. focus, | 000037c0 61 6e 64 20 30 25 20 69 66 20 66 72 6f 7a 65 6e |and 0% if frozen| 000037d0 2e 20 49 66 20 69 6e 20 66 75 6c 6c 20 73 63 72 |. If in full scr| 000037e0 65 65 6e 20 6d 6f 64 65 2c 20 69 74 20 69 73 20 |een mode, it is | 000037f0 6f 62 76 69 6f 75 73 6c 79 20 31 30 30 25 2e 0a |obviously 100%..| 00003800 0a 20 20 8f 20 20 20 20 21 55 73 61 67 65 2c 20 |. . !Usage, | 00003810 64 61 74 65 64 20 33 30 2f 31 2f 39 32 2c 20 73 |dated 30/1/92, s| 00003820 75 70 70 6c 69 65 72 20 41 63 6f 72 6e 3a 20 20 |upplier Acorn: | 00003830 54 68 69 73 20 73 6f 6d 65 74 69 6d 65 73 20 75 |This sometimes u| 00003840 73 65 73 20 75 70 20 74 6f 20 33 30 25 2c 0a 20 |ses up to 30%,. | 00003850 20 61 6c 74 68 6f 75 67 68 20 69 74 20 64 6f 65 | although it doe| 00003860 73 20 6e 6f 74 20 72 65 70 6f 72 74 20 74 68 65 |s not report the| 00003870 20 68 69 67 68 20 75 73 61 67 65 21 0a 0a 20 20 | high usage!.. | 00003880 8f 20 20 20 20 21 4f 6d 6e 69 44 65 73 6b 2c 20 |. !OmniDesk, | 00003890 76 65 72 73 69 6f 6e 20 31 2e 31 30 2c 20 73 75 |version 1.10, su| 000038a0 70 70 6c 69 65 72 20 41 63 6f 72 6e 20 55 73 65 |pplier Acorn Use| 000038b0 72 3a 20 45 78 68 69 62 69 74 73 20 6c 61 72 67 |r: Exhibits larg| 000038c0 65 20 61 6d 6f 75 6e 74 73 20 6f 66 0a 20 20 4e |e amounts of. N| 000038d0 75 6c 6c 20 50 6f 6c 6c 20 70 72 6f 63 65 73 73 |ull Poll process| 000038e0 6f 72 20 74 69 6d 65 2e 20 20 49 74 20 61 70 70 |or time. It app| 000038f0 65 61 72 73 20 74 68 61 74 20 74 68 65 20 61 75 |ears that the au| 00003900 74 68 6f 72 20 70 6c 61 6e 6e 65 64 20 74 6f 20 |thor planned to | 00003910 75 73 65 20 50 6f 6c 6c 49 64 6c 65 0a 20 20 74 |use PollIdle. t| 00003920 6f 20 70 6f 6c 6c 20 6f 6e 63 65 20 61 20 73 65 |o poll once a se| 00003930 63 6f 6e 64 2c 20 61 73 20 61 6c 6c 20 74 68 65 |cond, as all the| 00003940 20 63 6f 64 65 20 69 74 20 70 72 65 73 65 6e 74 | code it present| 00003950 20 61 70 61 72 74 20 66 72 6f 6d 20 70 61 73 73 | apart from pass| 00003960 69 6e 67 20 74 68 65 20 74 69 6d 65 20 74 6f 0a |ing the time to.| 00003970 20 20 57 69 6d 70 5f 50 6f 6c 6c 49 64 6c 65 2e | Wimp_PollIdle.| 00003980 20 20 54 68 69 73 20 61 70 70 6c 69 65 73 20 74 | This applies t| 00003990 6f 20 49 63 6f 6e 46 6c 61 67 73 2c 20 53 57 49 |o IconFlags, SWI| 000039a0 49 6e 64 65 78 2c 20 61 6e 64 20 57 69 6e 64 46 |Index, and WindF| 000039b0 6c 61 67 73 2e 0a 0a 20 20 8f 20 20 20 20 21 4c |lags... . !L| 000039c0 61 72 67 65 72 2c 20 76 65 72 73 69 6f 6e 20 32 |arger, version 2| 000039d0 2e 31 34 2c 20 73 75 70 70 6c 69 65 72 20 57 61 |.14, supplier Wa| 000039e0 72 6d 20 53 69 6c 65 6e 63 65 20 53 6f 66 74 77 |rm Silence Softw| 000039f0 61 72 65 3a 20 73 65 65 6d 73 20 74 6f 20 75 73 |are: seems to us| 00003a00 65 0a 20 20 57 69 6d 70 50 6f 6c 6c 49 64 6c 65 |e. WimpPollIdle| 00003a10 20 77 69 74 68 20 61 20 7a 65 72 6f 20 74 69 6d | with a zero tim| 00003a20 65 20 69 6e 20 73 6f 6d 65 20 63 61 73 65 73 20 |e in some cases | 00003a30 28 65 67 20 77 68 65 6e 20 61 20 77 69 6e 64 6f |(eg when a windo| 00003a40 77 20 68 61 64 20 62 65 65 6e 20 64 72 61 67 67 |w had been dragg| 00003a50 65 64 29 0a 20 20 75 6e 74 69 6c 20 61 20 6d 6f |ed). until a mo| 00003a60 75 73 65 20 63 6c 69 63 6b 20 69 73 20 64 6f 6e |use click is don| 00003a70 65 20 6f 6e 20 74 68 65 20 21 4c 61 72 67 65 72 |e on the !Larger| 00003a80 20 62 61 63 6b 64 72 6f 70 2e 20 20 54 68 65 6e | backdrop. Then| 00003a90 20 74 68 65 20 74 69 6d 65 20 69 73 20 73 65 74 | the time is set| 00003aa0 20 74 6f 20 32 35 0a 20 20 63 65 6e 74 69 73 65 | to 25. centise| 00003ab0 63 6f 6e 64 73 2c 20 61 6e 64 20 74 68 65 20 75 |conds, and the u| 00003ac0 73 61 67 65 20 64 72 6f 70 73 20 63 6f 6e 73 69 |sage drops consi| 00003ad0 64 65 72 61 62 6c 79 2e 0a 0a 20 20 8f 20 20 20 |derably... . | 00003ae0 20 21 46 69 72 65 77 6f 72 6b 7a 50 72 6f 2c 20 | !FireworkzPro, | 00003af0 76 65 72 73 69 6f 6e 20 31 2e 33 30 2f 30 36 2c |version 1.30/06,| 00003b00 20 73 75 70 70 6c 69 65 72 20 43 6f 6c 74 6f 6e | supplier Colton| 00003b10 20 53 6f 66 74 77 61 72 65 3a 20 75 73 65 73 20 | Software: uses | 00003b20 6c 61 72 67 65 20 61 6d 6f 75 6e 74 73 0a 20 20 |large amounts. | 00003b30 6f 66 20 4e 75 6c 6c 20 50 6f 6c 6c 20 70 72 6f |of Null Poll pro| 00003b40 63 65 73 73 6f 72 20 74 69 6d 65 2c 20 65 76 65 |cessor time, eve| 00003b50 6e 20 77 68 65 6e 20 6a 75 73 74 20 6c 6f 61 64 |n when just load| 00003b60 65 64 20 6f 6e 20 74 68 65 20 49 63 6f 6e 20 42 |ed on the Icon B| 00003b70 61 72 2e 0a 0a 20 20 8f 20 20 20 20 21 45 61 73 |ar... . !Eas| 00003b80 79 46 6f 6e 74 50 72 6f 2c 20 76 65 72 73 69 6f |yFontPro, versio| 00003b90 6e 20 34 2e 31 33 61 2c 20 73 75 70 70 6c 69 65 |n 4.13a, supplie| 00003ba0 72 20 46 61 62 69 73 20 43 6f 6d 70 75 74 69 6e |r Fabis Computin| 00003bb0 67 3a 20 75 73 65 73 20 6c 61 72 67 65 20 61 6d |g: uses large am| 00003bc0 6f 75 6e 74 73 0a 20 20 6f 66 20 4e 75 6c 6c 20 |ounts. of Null | 00003bd0 50 6f 6c 6c 20 70 72 6f 63 65 73 73 6f 72 20 74 |Poll processor t| 00003be0 69 6d 65 2c 20 65 76 65 6e 20 77 68 65 6e 20 6a |ime, even when j| 00003bf0 75 73 74 20 6c 6f 61 64 65 64 20 6f 6e 20 74 68 |ust loaded on th| 00003c00 65 20 49 63 6f 6e 20 42 61 72 2e 0a 0a 20 20 54 |e Icon Bar... T| 00003c10 68 65 73 65 20 6f 62 73 65 72 76 61 74 69 6f 6e |hese observation| 00003c20 73 20 6d 61 79 20 6e 6f 74 20 62 65 20 74 79 70 |s may not be typ| 00003c30 69 63 61 6c 20 2d 20 6f 72 20 65 76 65 6e 20 61 |ical - or even a| 00003c40 63 63 75 72 61 74 65 21 0a 20 20 4e 6f 20 63 72 |ccurate!. No cr| 00003c50 69 74 69 63 69 73 6d 20 6f 66 20 74 68 65 20 73 |iticism of the s| 00003c60 6f 66 74 77 61 72 65 20 69 73 20 65 78 70 65 73 |oftware is expes| 00003c70 73 65 64 20 6f 72 20 69 6d 70 6c 69 65 64 2e 0a |sed or implied..| 00003c80 0a 0a 20 20 41 63 6b 6e 6f 77 6c 65 64 67 65 6d |.. Acknowledgem| 00003c90 65 6e 74 73 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d 3d |ents. =========| 00003ca0 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 54 6f 20 52 61 |=======.. To Ra| 00003cb0 6e 20 4d 6f 6b 61 64 79 2c 20 66 6f 72 20 74 68 |n Mokady, for th| 00003cc0 65 20 69 6e 69 74 69 61 6c 20 69 6e 73 70 69 72 |e initial inspir| 00003cd0 61 74 69 6f 6e 20 66 6f 72 20 74 68 69 73 20 21 |ation for this !| 00003ce0 54 61 73 6b 55 73 61 67 65 20 61 70 70 6c 69 63 |TaskUsage applic| 00003cf0 61 74 69 6f 6e 2e 0a 20 20 49 20 6f 62 74 61 69 |ation.. I obtai| 00003d00 6e 65 64 20 68 69 73 20 21 55 73 61 67 65 20 61 |ned his !Usage a| 00003d10 70 70 6c 69 63 61 74 69 6f 6e 2c 20 76 65 72 73 |pplication, vers| 00003d20 69 6f 6e 20 31 2e 30 30 2c 20 64 61 74 65 64 20 |ion 1.00, dated | 00003d30 32 34 74 68 20 4d 61 79 20 31 39 39 30 2c 20 66 |24th May 1990, f| 00003d40 72 6f 6d 0a 20 20 54 68 65 20 44 61 74 61 66 69 |rom. The Datafi| 00003d50 6c 65 2e 20 20 48 6f 77 65 76 65 72 2c 20 69 74 |le. However, it| 00003d60 20 74 65 6e 64 65 64 20 74 6f 20 6c 6f 73 65 20 | tended to lose | 00003d70 73 74 6f 72 61 67 65 2c 20 61 6e 64 20 69 74 20 |storage, and it | 00003d80 68 61 64 20 61 20 72 65 6c 61 74 69 76 65 6c 79 |had a relatively| 00003d90 20 68 69 67 68 0a 20 20 70 72 6f 63 65 73 73 6f | high. processo| 00003da0 72 20 6f 76 65 72 68 65 61 64 2e 20 20 41 73 20 |r overhead. As | 00003db0 74 68 65 72 65 20 77 61 73 20 6e 6f 20 63 6f 6e |there was no con| 00003dc0 74 61 63 74 20 69 6e 66 6f 72 6d 61 74 69 6f 6e |tact information| 00003dd0 20 66 6f 72 20 52 61 6e 2c 20 49 20 64 65 63 69 | for Ran, I deci| 00003de0 64 65 64 20 74 6f 0a 20 20 74 72 79 20 61 6e 64 |ded to. try and| 00003df0 20 69 6d 70 72 6f 76 65 20 6f 6e 20 69 74 2e 0a | improve on it..| 00003e00 0a 20 20 54 6f 20 44 6f 6d 69 6e 69 63 20 53 79 |. To Dominic Sy| 00003e10 6d 65 73 2c 20 66 6f 72 20 5a 61 70 2c 20 61 20 |mes, for Zap, a | 00003e20 77 6f 6e 64 65 72 66 75 6c 20 65 64 69 74 6f 72 |wonderful editor| 00003e30 2e 0a 0a 0a 0a 20 20 43 6f 6e 64 69 74 69 6f 6e |..... Condition| 00003e40 73 20 6f 66 20 55 73 65 0a 20 20 3d 3d 3d 3d 3d |s of Use. =====| 00003e50 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 |============.. | 00003e60 50 6c 65 61 73 65 20 6e 6f 74 65 20 74 68 61 74 |Please note that| 00003e70 20 61 6c 6c 20 74 68 65 20 73 6f 66 74 77 61 72 | all the softwar| 00003e80 65 20 61 6e 64 20 64 6f 63 75 6d 65 6e 74 61 74 |e and documentat| 00003e90 69 6f 6e 20 73 75 70 70 6c 69 65 64 20 77 69 74 |ion supplied wit| 00003ea0 68 20 54 61 73 6b 55 73 61 67 65 20 69 73 0a 20 |h TaskUsage is. | 00003eb0 20 63 6f 70 79 72 69 67 68 74 2c 20 61 6e 64 20 | copyright, and | 00003ec0 6d 61 79 20 6f 6e 6c 79 20 62 65 20 63 6f 70 69 |may only be copi| 00003ed0 65 64 20 66 6f 72 20 70 65 72 73 6f 6e 61 6c 20 |ed for personal | 00003ee0 62 61 63 6b 75 70 20 70 75 72 70 6f 73 65 73 2e |backup purposes.| 00003ef0 0a 0a 20 20 41 6c 74 68 6f 75 67 68 20 54 61 73 |.. Although Tas| 00003f00 6b 55 73 61 67 65 20 69 73 20 62 65 6c 69 65 76 |kUsage is believ| 00003f10 65 64 20 74 6f 20 62 65 20 66 72 65 65 20 6f 66 |ed to be free of| 00003f20 20 61 6e 79 20 62 75 67 73 2c 20 41 76 69 73 6f | any bugs, Aviso| 00003f30 66 74 20 63 61 6e 6e 6f 74 20 61 63 63 65 70 74 |ft cannot accept| 00003f40 0a 20 20 61 6e 79 20 72 65 73 70 6f 6e 73 69 62 |. any responsib| 00003f50 69 6c 69 74 79 20 66 6f 72 20 61 6e 79 20 6c 6f |ility for any lo| 00003f60 73 73 20 6f 72 20 63 6f 72 72 75 70 74 69 6f 6e |ss or corruption| 00003f70 20 6f 66 20 64 61 74 61 20 77 68 69 63 68 20 6d | of data which m| 00003f80 69 67 68 74 20 72 65 73 75 6c 74 20 66 72 6f 6d |ight result from| 00003f90 0a 20 20 75 73 69 6e 67 20 54 61 73 6b 55 73 61 |. using TaskUsa| 00003fa0 67 65 2e 20 20 4e 6f 72 6d 61 6c 20 74 65 73 74 |ge. Normal test| 00003fb0 69 6e 67 20 61 6e 64 20 64 61 74 61 20 62 61 63 |ing and data bac| 00003fc0 6b 75 70 20 73 68 6f 75 6c 64 20 62 65 20 70 65 |kup should be pe| 00003fd0 72 66 6f 72 6d 65 64 21 0a 0a 0a 20 20 50 72 6f |rformed!... Pro| 00003fe0 62 6c 65 6d 73 20 61 6e 64 20 53 75 67 67 65 73 |blems and Sugges| 00003ff0 74 69 6f 6e 73 0a 20 20 3d 3d 3d 3d 3d 3d 3d 3d |tions. ========| 00004000 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 00004010 0a 0a 20 20 49 66 20 61 6e 79 20 62 75 67 73 20 |.. If any bugs | 00004020 6f 72 20 70 72 6f 62 6c 65 6d 73 20 61 72 65 20 |or problems are | 00004030 66 6f 75 6e 64 2c 20 6f 72 20 69 66 20 79 6f 75 |found, or if you| 00004040 20 68 61 76 65 20 61 6e 79 20 73 75 67 67 65 73 | have any sugges| 00004050 74 69 6f 6e 73 20 66 6f 72 0a 20 20 69 6d 70 72 |tions for. impr| 00004060 6f 76 65 6d 65 6e 74 73 2c 20 70 6c 65 61 73 65 |ovements, please| 00004070 20 73 65 6e 64 20 6d 65 20 66 75 6c 6c 20 64 65 | send me full de| 00004080 74 61 69 6c 73 20 69 6e 63 6c 75 64 69 6e 67 20 |tails including | 00004090 76 65 72 73 69 6f 6e 20 69 6e 66 6f 72 6d 61 74 |version informat| 000040a0 69 6f 6e 2c 0a 20 20 70 72 65 66 65 72 61 62 6c |ion,. preferabl| 000040b0 79 20 6f 6e 20 65 4d 61 69 6c 2c 20 73 6f 20 74 |y on eMail, so t| 000040c0 68 61 74 20 49 20 63 61 6e 20 72 65 63 72 65 61 |hat I can recrea| 000040d0 74 65 20 74 68 65 20 70 72 6f 62 6c 65 6d 20 61 |te the problem a| 000040e0 6e 64 20 74 72 79 20 74 6f 20 63 6f 72 72 65 63 |nd try to correc| 000040f0 74 20 69 74 2e 0a 0a 0a 20 20 48 69 73 74 6f 72 |t it.... Histor| 00004100 79 0a 20 20 3d 3d 3d 3d 3d 3d 3d 0a 0a 20 20 76 |y. =======.. v| 00004110 30 2e 3f 3f 20 20 31 35 2f 20 35 2f 39 36 20 20 |0.?? 15/ 5/96 | 00004120 41 6c 6c 20 76 30 20 77 65 72 65 20 64 65 76 65 |All v0 were deve| 00004130 6c 6f 70 6d 65 6e 74 20 76 65 72 73 69 6f 6e 73 |lopment versions| 00004140 2c 20 6e 65 76 65 72 20 72 65 6c 65 61 73 65 64 |, never released| 00004150 2e 0a 20 20 20 20 20 20 20 20 20 49 74 20 73 74 |.. It st| 00004160 61 72 74 65 64 20 61 73 20 61 20 42 41 53 49 43 |arted as a BASIC| 00004170 20 70 72 6f 67 72 61 6d 20 77 69 74 68 20 61 20 | program with a | 00004180 73 6d 61 6c 6c 20 52 65 6c 6f 63 61 74 61 62 6c |small Relocatabl| 00004190 65 20 4d 6f 64 75 6c 65 2c 20 61 6e 64 20 77 61 |e Module, and wa| 000041a0 73 0a 20 20 20 20 20 20 20 20 20 67 72 61 64 75 |s. gradu| 000041b0 61 6c 6c 79 20 63 68 61 6e 67 65 64 20 74 6f 20 |ally changed to | 000041c0 61 20 66 75 6c 6c 20 52 65 6c 6f 63 61 74 61 62 |a full Relocatab| 000041d0 6c 65 20 4d 6f 64 75 6c 65 20 57 69 6d 70 20 54 |le Module Wimp T| 000041e0 61 73 6b 2c 20 75 73 69 6e 67 0a 20 20 20 20 20 |ask, using. | 000041f0 20 20 20 20 42 41 53 49 43 20 61 73 73 65 6d 62 | BASIC assemb| 00004200 6c 65 72 2e 20 20 54 68 69 73 20 77 61 73 20 74 |ler. This was t| 00004210 6f 20 72 65 64 75 63 65 20 73 74 6f 72 61 67 65 |o reduce storage| 00004220 20 72 65 71 75 69 72 65 6d 65 6e 74 73 2c 20 61 | requirements, a| 00004230 6e 64 20 74 6f 20 65 6c 69 6d 69 6e 61 74 65 0a |nd to eliminate.| 00004240 20 20 20 20 20 20 20 20 20 74 68 65 20 6d 65 6d | the mem| 00004250 6f 72 79 20 73 77 69 74 63 68 69 6e 67 20 6f 76 |ory switching ov| 00004260 65 72 68 65 61 64 20 77 68 65 6e 20 54 61 73 6b |erhead when Task| 00004270 55 73 61 67 65 20 62 65 63 61 6d 65 20 61 63 74 |Usage became act| 00004280 69 76 65 2e 0a 0a 20 20 76 31 2e 30 30 20 20 20 |ive... v1.00 | 00004290 39 2f 30 33 2f 39 37 20 20 41 6c 6c 6f 77 65 64 |9/03/97 Allowed| 000042a0 20 4d 6f 6e 6f 74 6f 6e 69 63 20 54 69 6d 65 20 | Monotonic Time | 000042b0 66 72 6f 6d 20 70 61 72 6d 0a 20 20 76 31 2e 30 |from parm. v1.0| 000042c0 31 20 20 20 39 2f 30 33 2f 39 37 20 20 41 64 64 |1 9/03/97 Add| 000042d0 65 64 20 54 69 6d 65 72 20 64 69 73 70 6c 61 79 |ed Timer display| 000042e0 20 64 69 61 6c 6f 67 20 62 6f 78 0a 20 20 76 31 | dialog box. v1| 000042f0 2e 30 32 20 20 31 31 2f 30 33 2f 39 37 20 20 46 |.02 11/03/97 F| 00004300 69 78 65 64 20 74 69 6d 65 20 64 61 74 61 20 70 |ixed time data p| 00004310 72 65 63 69 73 69 6f 6e 73 0a 20 20 76 31 2e 30 |recisions. v1.0| 00004320 33 20 20 32 30 2f 30 34 2f 39 37 20 20 41 6c 6c |3 20/04/97 All| 00004330 6f 77 65 64 20 70 61 72 6d 20 74 6f 20 76 61 72 |owed parm to var| 00004340 79 20 50 6f 6c 6c 49 64 6c 65 20 61 6e 64 20 44 |y PollIdle and D| 00004350 69 73 70 6c 61 79 20 74 69 6d 65 0a 20 20 76 31 |isplay time. v1| 00004360 2e 30 34 20 20 30 39 2f 30 35 2f 39 37 20 20 44 |.04 09/05/97 D| 00004370 69 73 70 6c 61 79 65 64 20 50 6f 6c 6c 54 69 6d |isplayed PollTim| 00004380 65 20 69 6e 20 54 69 6d 65 72 20 64 69 61 6c 6f |e in Timer dialo| 00004390 67 20 62 6f 78 0a 20 20 76 31 2e 30 35 20 20 32 |g box. v1.05 2| 000043a0 35 2f 30 35 2f 39 37 20 20 43 6f 72 72 65 63 74 |5/05/97 Correct| 000043b0 65 64 20 69 6e 69 74 69 61 6c 69 73 61 74 69 6f |ed initialisatio| 000043c0 6e 20 6d 61 73 6b 20 61 6e 64 20 4c 61 73 74 54 |n mask and LastT| 000043d0 69 6d 65 72 20 70 72 6f 62 6c 65 6d 73 0a 20 20 |imer problems. | 000043e0 76 31 2e 30 36 20 20 32 30 2f 30 38 2f 39 37 20 |v1.06 20/08/97 | 000043f0 20 52 65 64 75 63 65 20 57 69 6d 70 20 54 69 74 | Reduce Wimp Tit| 00004400 6c 65 20 74 6f 20 61 76 6f 69 64 20 6f 6c 64 20 |le to avoid old | 00004410 52 49 53 43 20 4f 53 20 70 72 6f 62 6c 65 6d 0a |RISC OS problem.| 00004420 20 20 76 31 2e 30 37 20 20 20 39 2f 30 39 2f 39 | v1.07 9/09/9| 00004430 37 20 20 4d 61 64 65 20 6d 65 6e 75 20 70 65 72 |7 Made menu per| 00004440 73 69 73 74 65 6e 74 20 69 66 20 61 64 6a 75 73 |sistent if adjus| 00004450 74 20 70 72 65 73 73 65 64 0a 20 20 76 31 2e 31 |t pressed. v1.1| 00004460 30 20 20 31 34 2f 31 32 2f 39 37 20 20 46 69 72 |0 14/12/97 Fir| 00004470 73 74 20 76 65 72 73 69 6f 6e 20 72 65 6c 65 61 |st version relea| 00004480 73 65 64 0a 20 20 76 31 2e 31 31 20 20 20 31 2f |sed. v1.11 1/| 00004490 20 32 2f 39 38 20 20 43 61 74 65 72 65 64 20 66 | 2/98 Catered f| 000044a0 6f 72 20 4e 65 73 74 65 64 20 57 69 6e 64 6f 77 |or Nested Window| 000044b0 20 4d 61 6e 61 67 65 72 0a 20 20 76 31 2e 31 32 | Manager. v1.12| 000044c0 20 20 20 37 2f 20 32 2f 39 38 20 20 54 69 64 69 | 7/ 2/98 Tidi| 000044d0 65 64 20 75 70 20 54 65 6d 70 6c 61 74 65 73 20 |ed up Templates | 000044e0 61 6e 64 20 54 65 6d 70 6c 61 74 65 20 68 61 6e |and Template han| 000044f0 64 6c 69 6e 67 0a 20 20 76 31 2e 31 33 20 20 20 |dling. v1.13 | 00004500 39 2f 20 32 2f 39 38 20 20 4f 70 74 69 6d 69 73 |9/ 2/98 Optimis| 00004510 65 64 20 46 4e 67 65 74 74 69 6d 65 20 61 6e 64 |ed FNgettime and| 00004520 20 70 61 72 61 6d 65 74 65 72 20 73 65 74 75 70 | parameter setup| 00004530 0a 20 20 76 31 2e 31 34 20 20 31 30 2f 20 32 2f |. v1.14 10/ 2/| 00004540 39 38 20 20 52 65 64 75 63 65 64 20 73 74 61 63 |98 Reduced stac| 00004550 6b 20 73 69 7a 65 0a 20 20 76 31 2e 31 35 20 20 |k size. v1.15 | 00004560 31 31 2f 20 32 2f 39 38 20 20 52 65 64 75 63 65 |11/ 2/98 Reduce| 00004570 64 20 52 65 61 73 6f 6e 20 74 69 6d 65 20 6c 69 |d Reason time li| 00004580 73 74 0a 0a 20 20 43 6f 6e 74 61 63 74 20 49 6e |st.. Contact In| 00004590 66 6f 72 6d 61 74 69 6f 6e 0a 20 20 3d 3d 3d 3d |formation. ====| 000045a0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a |===============.| 000045b0 0a 20 20 65 4d 61 69 6c 3a 20 20 20 20 20 20 73 |. eMail: s| 000045c0 75 70 70 6f 72 74 40 61 76 69 73 6f 66 74 2e 66 |upport@avisoft.f| 000045d0 6f 72 63 65 39 2e 6e 65 74 0a 0a 20 20 53 6e 61 |orce9.net.. Sna| 000045e0 69 6c 4d 61 69 6c 3a 20 20 4d 61 72 74 69 6e 20 |ilMail: Martin | 000045f0 41 76 69 73 6f 6e 2c 0a 20 20 20 20 20 20 20 20 |Avison,. | 00004600 20 20 20 20 20 20 41 76 69 73 6f 66 74 2c 0a 20 | Avisoft,. | 00004610 20 20 20 20 20 20 20 20 20 20 20 20 20 31 36 20 | 16 | 00004620 20 57 65 6c 6c 20 43 6c 6f 73 65 2c 0a 20 20 20 | Well Close,. | 00004630 20 20 20 20 20 20 20 20 20 20 20 4c 65 69 67 68 | Leigh| 00004640 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |,. | 00004650 54 4f 4e 42 52 49 44 47 45 2c 0a 20 20 20 20 20 |TONBRIDGE,. | 00004660 20 20 20 20 20 20 20 20 20 4b 65 6e 74 20 20 20 | Kent | 00004670 20 20 20 54 4e 31 31 20 20 38 52 51 0a 0a 20 20 | TN11 8RQ.. | 00004680 50 68 6f 6e 65 3a 20 20 20 20 20 20 30 31 37 33 |Phone: 0173| 00004690 32 20 38 33 33 35 34 39 0a 0a 0a 0a 20 20 20 20 |2 833549.... | 000046a0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 000046d0 2a 2a 2a 2a 2a 2a 2a 0a 20 20 20 20 2a 2a 20 20 |*******. ** | 000046e0 49 66 20 74 68 69 73 20 68 65 6c 70 20 68 61 73 |If this help has| 000046f0 20 66 6c 61 73 68 65 64 20 70 61 73 74 20 74 6f | flashed past to| 00004700 6f 20 66 61 73 74 20 74 6f 20 72 65 61 64 2c 20 |o fast to read, | 00004710 20 2a 2a 0a 20 20 20 20 2a 2a 20 20 74 68 65 6e | **. ** then| 00004720 20 70 6c 65 61 73 65 20 6c 6f 61 64 20 21 45 64 | please load !Ed| 00004730 69 74 20 61 6e 64 20 74 72 79 20 61 67 61 69 6e |it and try again| 00004740 21 20 20 20 20 20 20 20 20 20 20 20 20 2a 2a 0a |! **.| 00004750 20 20 20 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ************| 00004760 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 00004780 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a 0a |***********..| 0000478d