Article View: comp.sys.atari.st
Article #34584Re: Interrupts, Interrupts, Interrupts.
From: Michael B. Vederman
Date: Tue, 18 Oct 1988 23:44
Date: Tue, 18 Oct 1988 23:44
30 lines
1473 bytes
1473 bytes
First of all, you must do something like this:
move.w sr,-(a7)
ori.w #700,sr
(your code)
move.w (a7)+,sr
In actuality, you should probably do something like:
move.w sr,-(a7)
ori.w #700,sr
movem.l d0-d7/a0-a5,-(a7)
(your code)
movem.l (a7)+,d0-d7/a0-a5
move.w (a7)+,sr
To protect any possible register changes. I would also be sure you are not
screwing up the stack pointer which almost sounds possible. You should not
mess with the status register except by oring it to mask out interrupts, but
mostly you must restore its previous value. You might also need to check
whether you are in super or user mode when you enter your code, so you know
which stack to use...
- mike vederman
--
for (;;) : Use ATARINET, send an interactive
do_it(c_programmers); : message such as:
: Tell UH-INFO at UHUPVM1 ATARINET HELP
University Atari Computer Enthusiasts : University of Houston UACE
Technical Details
Message-ID:
<688@uhnix2.uh.edu>Path:
arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!rutgers!tut.cis.ohio-state.edu!osu-cis!killer!texbell!tness1!uhnix1!uhnix2!uace0References:
<8810181052.AA28587@ucbvax.Berkeley.EDU>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!rutgers!tut.cis.ohio-state.edu!osu-cis!killer!texbell!tness1!uhnix1!uhnix2!uace0 From: uace0@uhnix2.uh.edu (Michael B. Vederman) Newsgroups: comp.sys.atari.st Subject: Re: Interrupts, Interrupts, Interrupts. Summary: Save, Save, Save Message-ID: <688@uhnix2.uh.edu> Date: 18 Oct 88 23:44:55 GMT References: <8810181052.AA28587@ucbvax.Berkeley.EDU> Reply-To: uace0@uhnix2.UUCP Organization: University of Houston Lines: 30