Article View: comp.sys.apple2.gno
Article #189Re: Bug with GNO and Shadow Register?
From: Jawaid Bazyar
Date: Thu, 12 Nov 1992 10:57
Date: Thu, 12 Nov 1992 10:57
40 lines
2403 bytes
2403 bytes
Dave Huang sez: >It seems that GNO doesn't always restore the state of the shadow >register before a heartbeat task is called, which causes problems with >programs that use a heartbeat task to update the bank $01 SHR screen, >such as MODZap (the VUs meters don't erase properly). Would it be >possible for GNO to restore the shadow register (and other important >softswitches too :-) for heartbeat tasks? No. And I'll tell ya why, too. What happens is if a context switch is going to occur, it's done _before_ calling the heartbeat tasks. I have to way to control this because I can only pre-patch the Interrupt Manager vector. Thus, Ian's interrupt handlers are running under _someone else's_ context. (GNO _does_ context switch the shadow register). Now, it might be considered incorrect to assume that the shadow register is set to what you want. In fact, I would think that an interrupt handler could never be certain of the context. What Ian needs to do is set&restore the Shadow register the way he wants around his little doo-dad update code. To prove my correctness :-), it's conceivable that some piece of the system software (which Ian calls a lot) might modify the shadow register during its operation. If Ian's Heart Beat update routine got called during that, it would exhibit the same problems w/o GNO (on a lesser scale, of course, because the chances of that happening are less). So, unless someone can get Apple to prove me wrong, it stands as-is and Ian fixes his program. :-) (As a matter of fact, the Interrupt firmware is constantly dallying with the shadow register- you can't assume anything). BTW, Ian, change the filename to "daveloses". :-) -- Jawaid Bazyar | Ask me about the GNO Multitasking Environment Procyon, Inc. | for the Apple IIgs! bazyar@cs.uiuc.edu | P.O Box 620334 --Apple II Forever!-- | Littleton, CO 80162-0334 (303) 933-4649
Technical Details
Message-ID:
<BxLns3.1sx@csn.org>Path:
arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!teal.csn.org!bazyarShow Full Headers
Complete Article Headers
Newsgroups: comp.sys.apple2.gno Path: arc1-ca.pugleaf.net!sparky!uunet!usc!zaphod.mps.ohio-state.edu!magnus.acs.ohio-state.edu!csn!teal.csn.org!bazyar From: bazyar@teal.csn.org (Jawaid Bazyar) Subject: Re: Bug with GNO and Shadow Register? Message-ID: <BxLns3.1sx@csn.org> Sender: news@csn.org (news) Nntp-Posting-Host: teal.csn.org Organization: Colorado SuperNet, Inc. Date: Thu, 12 Nov 1992 10:57:38 GMT Lines: 40