XQSTCK ;Luke/SEA - Stack utilities ;3/11/94 13:50 [ 04/02/2003 8:29 AM ]
Source file <XQSTCK.m>
Name | Comments | DBIA/ICR reference |
---|---|---|
P1 | ||
PM1 | ;Put primary menu in some other stack position
|
|
NOXUTL | ;No ^XUTL("XQO","P"_XQPM) on this system
|
|
GET | ;Get the Primary Menu Option and set XQY0,XQDIC,XQPSM
|
|
POP | ;Pop one level on the stack
|
|
FAIL | ;Absolute and utter failure
|
|
NODUZ | ;There is no user connected with this process
|
|
NOPM | ;This user has no primary menu
|
|
PUSH(XQY,XQPSM,XQY0) | ;Add an option to the stack
|
|
XACT | ;Execute Exit Actions and Headers: input X=option number, no output.
|
|
OUT | ;Exit point for all subroutines
|
|
PM | ;Put primary menu in stack position 1
|
Name | Line Occurrences (* Changed, ! Killed) |
---|---|
^DIC(19 - [#19] | PUSH+4, PUSH+6, POP+1, P1+4, XACT+1, XACT+2, XACT+3 |
^VA(200 - [#200] | GET+2 |
^XTMP("XQO" | NOXUTL+1 |
^XUTL("XQ" | PUSH+1, PUSH+3*, P1, P1+3, P1+5*, PM+3*, PM+5*, PM1+4, PM1+5*, PM1+8 , PM1+9*, PM1+10*, FAIL+3* |
^XUTL("XQO" | GET+5, GET+6, NOXUTL+1* |
Name | Line Occurrences |
---|---|
FAIL | GET+8 |
GET | PM+1, PM1+2 |
NODUZ | GET+1 |
NOPM | GET+2 |
NOXUTL | GET+6 |
OUT | PM+1, PM+7, PM1+2, PM1+6, PM1+11 |
P1 | PUSH+5 |
Name | Field # of Occurrence |
---|---|
^("T" | PUSH+3* |
^(15 | POP+1, XACT+2 |
^(20 | PUSH+4 |
^(26 | PUSH+6, P1+4, XACT+3 |
>> | Not killed explicitly |
* | Changed |
! | Killed |
~ | Newed |
Name | Field # of Occurrence |
---|---|
% | P1+3*, OUT+1! |
%Y | FAIL+3, OUT+1! |
DUZ | GET+1, GET+2 |
>> MESS | PUSH+5* |
>> TITLE | PUSH+5* |
U | PUSH+3, PUSH+4, PUSH+5, PUSH+6, POP+1, P1+4, PM+3, PM1+8, PM1+9, GET+5 |
>> XQDIC | PM+4*, GET+3* |
XQER | NOPM+1*, NODUZ+1*, FAIL+1*, FAIL+3, OUT+1! |
>> XQEX | XACT+1, XACT+2, XACT+3 |
>> XQFAIL | PM+1, PM1+2, GET+1*, GET+2*, GET+8* |
XQI | PM1+5*, PM1+6, PM1+8, OUT+1! |
>> XQMP | NOXUTL+1 |
>> XQNO | FAIL+3 |
XQPM | PM+3, PM+4, PM1+5, PM1+9, GET+2*, GET+3, GET+5, GET+6, GET+7, NOXUTL+1 , OUT+1! |
XQPSM | PUSH~, PUSH+3, P1+3, PM+3, PM+4*, PM1+9, GET+3* |
>> XQSTPT | PUSH+1*, PUSH+2*, PUSH+3, P1*, P1+1*, P1+2*, P1+3, P1+5 |
XQTT | PM1+4*, PM1+5, PM1+8*, PM1+9, PM1+10, OUT+1! |
XQUIT | PUSH+5!, P1+4 |
XQY | PUSH~, PUSH+3, PUSH+4, PUSH+6, POP+1, P1+3*, P1+4, PM+4*, GET+3*, GET+7* , GET+8 |
XQY0 | PUSH~, PUSH+3, PUSH+4, PUSH+5, PUSH+6, POP+1, P1+3*, P1+4, PM+3, PM1+9 , GET+5*, GET+6, GET+7 |
>> XQYO | GET+6* |