home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / misc / taskshell_2 / !task / !Help next >
Text File  |  1996-01-14  |  4KB  |  67 lines

  1. TaskShell Version 1.21, Copyright January 1996, Alun Jones, auj@aber.ac.uk.
  2.  
  3. This software is Freeware. You may distribute it freely with the provisos
  4. that this file accompanies the distribution and that no changes are made to
  5. the contents of the files. You may not charge more than a nominal copying
  6. cost for their distribution and if you place them on a PD library disk I'd
  7. quite like a copy of the disk... These programs may NOT be distributed as
  8. part of a magazine disk without my permission (which I'll almost certainly
  9. give - it's just that I'd like to make sure that such a distribution is the
  10. most recent version).
  11.  
  12. !Task installs a module called TaskShell and aliases ShellCli to TaskShell.
  13. TaskShell is a small module task which acts as a TaskWindow server, handling
  14. I/O. It's special in that it completely subverts the desktop and takes over
  15. the screen completely. You therefore get reasonable speed from it, and most
  16. things will run OK without screen access problems.
  17.  
  18. If you specify a parameter to TaskShell, then it will pass this as a command
  19. to TaskWindow. So, for example, to enter mode 0 on starting TaskShell, use
  20. the command TaskShell "echo <22><0>". (See the !Run file for an example).
  21.  
  22. Oh yes, if you have !Virtual, you can Set Alias$Taskwindow %virtual %*0 and
  23. get a shellcli-like environment with 25Mb spare (assuming you have the disk
  24. space :-)
  25.  
  26. To start taskshell, just press f12. To exit, press f12 again. Pressing
  27. TAB-f12 will give you a normal shellcli instead.
  28.  
  29. A few problems should be noted:
  30.  
  31. * You're limited to one copy of TaskShell at the moment. I hope to add
  32.   multiple "virtual consoles" like Linux has at some point. Of course, you
  33.   can run something in the background using a normal taskwindow, and still
  34.   run a TaskShell, giving you a measure of backgrounding.
  35.  
  36. * When you exit, using f12, the taskwindow QUITS. No warning, nothing. So,
  37.   if you're using an editor when you hit f12, you'll lose your work. Again,
  38.   this will be handled in a future version. I intend to make f12 stop the
  39.   current process and return you to the desktop. From there you will be able
  40.   to quit or resume the process.
  41.  
  42. * To gain exclusive access to the screen, TaskShell opens a big window at
  43.   the front and then disables VDU output. Any WIMP task which decides to
  44.   plot sprites directly to the screen (rather than a window) will subvert
  45.   this. For example, *Screenload doesn't work properly, because the Sprite
  46.   Operation is run by TaskWindow itself, while the mode change has to be
  47.   passed to TaskShell. This means that the plot happens before the mode
  48.   change (!). There is nothing at all that I can do about this class of
  49.   problem.
  50.  
  51. * Keyboard handling is a bit flakey. Version of TaskShell since 1.20 now
  52.   emulate OS_Byte calls 221-228. This means that many more things work
  53.   properly, notably Olly Betts' version of LineEditor and the BASIC editor.
  54.   Undoubtedly other things will fail. The problem is that TaskShell receives
  55.   all key codes as WIMP events. So, to make the keyboard work properly I
  56.   would have to write a full emulation of the keyboard drivers.
  57.  
  58. * When TaskShell gets a Lose Caret WIMP event, it reclaims it, otherwise
  59.   you'd be left without a keyboard. For some reason, TaskShell doesn't
  60.   always receive lose caret events! e.g. Filer_Run TextFile starts !Edit and
  61.   generates the event, but TaskWindow Gos starts !Edit and doesn't generate
  62.   the event.  Either this is a bizarre RISC OS bug, or I'm doing something
  63.   very strangely wrong.
  64.  
  65. Cheers,
  66. Alun, auj@aber.ac.uk
  67.