[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hydra::amiga_v1

Title:AMIGA NOTES
Notice:Join us in the *NEW* conference - HYDRA::AMIGA_V2
Moderator:HYDRA::MOORE
Created:Sat Apr 26 1986
Last Modified:Wed Feb 05 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:5378
Total number of notes:38326

1797.0. "XOPER system monitor is here!" by ROMULN::MYEE (Boycott Styrofoam cups, save the ozone.) Thu Oct 20 1988 14:11

    
    Fresh off the USENET, XOPER a system monitor utility for our favorite
    computer.  Below is the posting on the USENET and the documentation
    for Xoper.
    
--------------------------- P o s t i n g ------------------------------------
    
Newsgroups: comp.binaries.amiga,comp.sources.amiga
Path: decwrl!labrea!rutgers!iuvax!pur-ee!j.cc.purdue.edu!ain
Subject: Xoper (docs)
Posted: 16 Oct 88 12:10:13 GMT
Organization: PUCC Land, USA
Approved: akl@j.cc.purdue.edu	(Rob Tillotson)
Xref: decwrl comp.binaries.amiga:301 comp.sources.amiga:205
 
Submitted by:	Guenther Werner <G35@DHDURZ1.BITNET>
Summary:	A system monitor utility
Poster Boy:	Rob Tillotson	(akl@j.cc.purdue.edu)
Archive Name:	sources/amiga/volume5/xoper.d.Z binaries/amiga/volume8/xoper.d.Z
Tested
 
NOTES:
     This is a very good system monitor utility, written completely in
assembly language.  It allows you to inspect the status of just about every
possible bit of the system, and also allows you to do such things as
signaling tasks, opening and closing libraries, freeing task resources,
and other dangerous but useful things.
     The source was originally one 77k assembly file; it has been split
into two parts.  Simply concatenate them together to produce the original
source.
    
------------------------- T h e   D o c u m e n t a t i o n -------------------

                                 Xoper V1.1
 
                    Copyright (c) Werner Gunther 1988
 
Xoper is a freeware program to display and to control system activity. If
you find this program useful, feel free to send a donation to the address
below.
 
Starting Xoper from CLI:
 
Xoper [T] [S] [L] [D] [R] [E] [M] [P] [I]
 
These parameters are decribed below. For all those who like long
Startup-Sequences, overcrowded memory and hot-keys enter
 
Xoper -b
 
This will install Xoper in background waiting for LeftAmiga-RightAmiga-X
to pop up. In both cases you don't have to RUN or RUNBACK Xoper, it will
always create its own process.
 
Xoper Commands:
---------------
 
 Commands can be entered after the prompt '->', these are divided into two
groups:
 
Display commands: These are always single character entries and may be
specified in any order, upper or lower case, with or w/o enbedded blanks,
after the prompt or from CLI as parameters:
 
T = Tasks (Default if Xoper is called without parameters)
Task node (HEX), Display type, status, priority (decimal) ,processnumber
for Dos-Processes (decimal), taskname.
 
S = Task Signals
Task node (HEX), Allocated Signals (HEX), Signals the Task is waiting for
(HEX), Signals received (HEX), Address of the next instruction to be
executed (HEX).
 
L = Libraries
Base address (HEX), open count (decimal), version (decimal), revision
(decimal), flags (binary), libraryname.
 
D = Devices
Base address (HEX), open count (decimal), version (decimal), revision
(decimal), flags (binary), devicename.
 
R = Resident
Base address (HEX), priority (decimal), flags (binary), version
(decimal), type, name.
 
E = Resources (sorry)
Base address (HEX), open count (decimal), version (decimal), revision
(decimal), flags (binary), resource name.
 
M = Memory
Lower and upper bounds (HEX), bytes free (HEX), attributes, priority
(decimal), hunk name.
 
P = Ports
Node address (HEX), portname, flags, signal bits (binary),queue length
[number of messages] (decimal), taskname.
 
I = Interrupts
Node address (HEX), pointer to interrupt data (HEX), pointer to interrupt
code (HEX), priority (decimal),type [interupt queue the interrupt belongs
to], interrupt name.
 
H = Help ( or ?)
Show a list of commands.
 
Q = Quit
Same as QUIT (see below).
 
Example: Entering TPM would display Tasks, Ports and Memory. The display
would be updated after a few seconds (5 by default, may be changed
anytime, see below.)
 
Other commands that do not display lists:
These commands may be entered upper or lower case. Parameters enclosed
in '<>' must be, enclosed in '[]' may be specified. Names are usualy
entered as ascii-strings, it can however happen that two or more nodes of
the same name exist. On tasks you may specify the DOS-Processnumber to
sort them out. If everything fails, you can enter the Node-Address with a
leading '$'. This Address will be checked first before the command is being
executed. If the check fails, you'll get an error message or a warning or
a prompt, depending on what went wrong. Names are always the last parameter
to enter. This may seem strange, but it is the simplest way to get rid of
enbedded blanks.
 
Time <seconds>
Set time between updates. Minimum is 1 second, maximum is 255, default is 5
seconds.
Example: Time 1
 
Taskpri <priority> [processnumber] <taskname>
Change the priority of a task. Values may range from -127 to 127, better
use values between -5 and 5.
Example: Taskpri 5 Xoper V1.0
 
Mypri <priority>
Shortcut for "Taskpri Xoper <priority>"
Example: Mypri 6
 
Pri <priority> <nodename>
Change the priority of any other node. This commad does not work for Tasks.
If the specified node has been found, the entire list the node belongs to
will be resorted.
Example: Pri 1 Chip Memory        (try to allocate memory in CHIP first)
 
Break [processnumber] <taskname>
Set break signals. Useful for tasks running in background or from Workbench.
Example: Break 3 New CLI
 
Signal <mask> [processnumber] <taskname>
Set any other signal. Mask is a hexadecimal value with or w/o leading '$'.
See task's SIGWAIT field for sensible values. Tasks normaly do not wait
for signals only, but for messages, that's why this command may not have
the desired effect, but it is quite useful for tasks hanging around and
waiting for events that may never happen.
Warning: Using Signal without any knowledge about what you are going to
signal may cause a system-crash!
Example: Signal 10000000 PopCLI III
 
Hunks [processnumber] <processname>
Show location, BCPL-Pointers and length of memory blocks the process uses.
Example: Hunks RAM
 
Files
List lock, access, size and name of open files.
 
Locks
List any lock.
BUG: Trying to lock the Volume "RAM Disk" crashes the machine sometimes. If
a Volume "RAM Disk" is found it will be replaced by the devicename "RAM:"
(this has been fixed on WB 1.3). Make sure you don't have a disk labeled
"RAM Disk" or you'll never see its locks:-)
 
Currentdir
List current directory settings of all processes.
 
Devices
List name,heads,sectors,tracks,startup-buffers and handler-process of every
DOS-device.
 
Lockdrive <DF0 | DF1 | DF2 | DF3>
Prevent DOS, Workbench and Disk-Validator from cluttering on the disk. This
command isn't very useful, I just needed it myself.
 
Freedrive <DF0 | DF1 | DF2 | DF3>
Re-enable a drive.
 
Windows
List address and title of all windows.
 
Screens
List address and title of screens.
 
Fonts
List address,height,width,type,fist character and last character of all
loaded fonts.
 
Windowfonts
List Windows and associated fonts.
 
Freeze [processnumber] <taskname>
Halt a Task. The task should be READY or WAITING. Frozen tasks are queued in
a new list called FREEZED. When you leave Xoper, halted Task will be
released.
Example: Freeze Killer Graphics Task
 
Warm [processnum] <taskname>
Restart a halted Task. Task must be FREEZED.
Example: Warm Killer Graphics Task
 
Info <librarynode | devicenode>
Show additional information stored in the lib_IdString field.
Example: Info arp.library
 
Openlib <libraryname>
Open a library. This is useful if you don't want a specified library being
'flushed' out.
Example: Openlibrary arp.library
 
Clear [longword]
Fill unused memory chunks with pattern, default is 0. Handy for debuggers.
Example: Clear $66726565
 
Flush
Clean up memory, flush unused libraries, devices and fonts.
 
Lastalert
Show last Guru Meditation code or rubbish.
 
Taskports
Disable / enable a listing of taskports if ports are displayed.
 
More
Stop displaying "<MORE>" and "<RETURN>" if output exceeds window.
 
Quit or just Q
Exit Xoper. If Xoper was started with '-b' or if 'Hold' was specified it
will stay in background waiting for LeftAmiga-RightAmiga-X.
 
Hold
Exit Xoper but install a key-handler and stay in background. Window
settings and display commands are saved.
 
Exit
Clean up and quit.
 
!!!! WARNING: The next few commands are dangerous and 'dirty' !!!!!
!!!!!!!!!!!! don't use them if not strictly necessary !!!!!!!!!!!!!
 
Cancel [processnumber] <taskname>
Cancel a task or a process. If the task has been called from CLI, the Task
itself and the CLI will be killed. Hunks and the teminal-window will be
freed. Simple tasks are just RemTask()'ed. If the process has been started
from Workbench or fired up by another Process using CreateProc(), a promt
will be displayed, asking you if you want to Unload() this process. On
Workbench applications or processes using segment-splitting the answer
shoud be YES, otherwise NO. This command is very useful if the task is in
"Software Error-Task held" state.
 
Closewindow <title>
Closes a Window. Please, use it only if the corresponding Task has been
'Cancel'ed. Use the Window-Structure address if the window has no name.
 
Closescreen <title>
same as above, but for screens.
 
Unlock <lock (BPTR)>
Unlock a file.
 
Closelib <libraryname>
This is exactly the same as CloseLibrary().
 
CD [processnumber] <processname>
Change the current directory of a process. You are prompted if the old
directory lock should be unlocked.
 
 
----------------------------------------------------------------------------
 
Please send flames, bug reports and especially a list of features you would
like to have included in the next version to
 
 Werner Gunther
 Wingertspfad 12
 D 6900 Heidelberg
 (Germany)
 
or to my EMAIL address for a fast response:
 
 G35@DHDURZ1.BITNET
 
 

T.RTitleUserPersonal
Name
DateLines