Re: Disabling the F6 interrupt function



On Oct 22, 9:57 am, VAXman- @SendSpamHere.ORG wrote:
In article <e63ff718-1238-44a8-a5fc-c4309ef01...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx>, tadamsmar <tadams...@xxxxxxxxx> writes:





On Oct 22, 8:28=A0am, tadamsmar <tadams...@xxxxxxxxx> wrote:
On Oct 21, 4:58=A0pm, koeh...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (Bob

Koehler) wrote:
In article <6e8b50bf-00b8-4085-aaf6-0c1d382b3...@xxxxxxxxxxxxxxxxxxxxxx=
ps.com>, tadamsmar <tadams...@xxxxxxxxx> writes:

This solution is useful but not 100% reliable. =A0Only one AST is
established and it has to run to re-establish another. =A0If you jam =
the
F6 key down then I find that the F6 key eventually wins the race with
the re-establishment of the AST and causes an interrupt.

=A0 =A0Can't the AST re-establish itself before exiting?

Yep, and mine does.

But the program would need to re-establish the AST before any other
code was executed, like the code that delivers the next F6 key
interrupt.

My theory is that next F6 key interrupt gets processed be for the AST
is re-established. =A0 I guess I am assuming that an AST can be
interrupted by the next F6 Key interrupt. =A0Is that impossible?

Perhaps the AST can be run at some kind of higher level to ensure it
is not interrupted. =A0I have not had to deal with this kind of stuff in
a long time, there are cobwebs on what little I know about it.

Higher mode, not higher level.  Maybe I need to run the AST at a
higher mode than the default mode?

Simple...

        .PSECT  DATA,WRT,NOEXE,5
CTRL_C_AST:
        .LONG   3                               ; 3 arguments
        .ADDRESS your_ctrl_c_ast_routine        ; DCLAST$_ASTADR
        .LONG   0                               ; DCLAST$_ASTPRM
        .LONG   0                               ; DCLAST$_ACMODE

        .PSECT  CODE,NOWRT,EXE,5
        .ENTRY  some_name,0

        $CMEXEC_S       ROUTIN=SYS$DCLAST,-
                        ARGLST=CTRL_C_AST

        RET
        .END    

This will queue the AST for execution in EXECUTIVE mode.  You will
need CMEXEC privilege to test this out.  If this works, you'll need
to implement a user written system service or install your program
with the CMEXEC privilege to allow this to function for the average
non-privileged user.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker      VAXman(at)TMESIS(dot)COM

... pejorative statements of opinion are entitled to constitutional protection
no matter how extreme, vituperous, or vigorously expressed they may be. (NJSC)

Copr. 2008 Brian Schenkenberger.  Publication of _this_ usenet article outside
of usenet _must_ include its contents in its entirety including this copyright
notice, disclaimer and quotations.- Hide quoted text -

- Show quoted text -

Come to think of it, I can run nulirpast once using your code and
then it will run enanulirp. So that will work.
.



Relevant Pages

  • Re: Disabling the F6 interrupt function
    ... the re-establishment of the AST and causes an interrupt. ... But the program would need to re-establish the AST before any other ... Perhaps the AST can be run at some kind of higher level to ensure it ...
    (comp.os.vms)
  • Re: Disabling the F6 interrupt function
    ... established and it has to run to re-establish another. ...  If you jam the ... the re-establishment of the AST and causes an interrupt. ...
    (comp.os.vms)
  • Re: Disabling the F6 interrupt function
    ... established and it has to run to re-establish another. ... the re-establishment of the AST and causes an interrupt. ... This will queue the AST for execution in EXECUTIVE mode. ...
    (comp.os.vms)
  • Re: Release of RosAsm V.2.025a
    ... the execution of the program depends upon factors _EXTERNAL_ to ... (generates an interrupt, runs interrupt code that wouldn't otherwise ... But, yet, the order the icons appear is completely arbitrary...and this ... then you'll find simple "choas theory" screws up all practicalities ...
    (alt.lang.asm)
  • Re: Randomness from Wi-Fi background noise
    ... strengthen Satam's lunch in respect of worrys, it will here interrupt the ... execution. ...
    (sci.crypt)