[comp.sys.atari.st] Res Changing

neil@cs.hw.ac.uk (Neil Forsyth) (12/21/89)

The other day Dave Baggett asked about legal resolution changes without the
use of system calls like XBIOS #5. Derek Mui (Atari) said basically
'Naw can't be done'. I know GEM can't cope with rez changes.

Let us say that I write an application that if run in medium rez changes to
low and set's the negative Line-A variables appropriatly (as does Neochrome).
Just before exiting I restore things the way they were.
(Note: I don't use GEM while in the new rez)
BUT if my applictaion bombs out before normal termination we get dumped
back to the desktop in low rez. Real bummer!
So we put in a terminate handler at vector 0x102 that restores the original
resolution and Line-A variables. The question is: Can we call the XBIOS
safely from here? If not then we will have to access the hardware ourselves
and set all the variables normally affected by Setscreen. So where are these
variables? Are they, as I suspect, more negative Line-A variables documented
in S.A.L.A.D (Still Another Line A Document)?

Would someone at Atari like to let the cat out of the bag about negative
Line-A variables? Please. It is Christmas.

BTW: Atari UK have yet to send me S.A.L.A.D (Bash, bash, bash ...:-)

+-----------------------------------------------------------------------------+
! DISCLAIMER: Unless otherwise stated, the above comments are entirely my own !
!                                                                             !
! Neil Forsyth                       JANET:  neil@uk.ac.hw.cs                 !
! Dept. of Computer Science          ARPA:   neil@cs.hw.ac.uk                 !
! Heriot-Watt University             UUCP:   ..!ukc!cs.hw.ac.uk!neil          !
! Edinburgh, Scotland, UK            "spam spaM spAM sPAM SPAM, lovely SPAM"  !
+-----------------------------------------------------------------------------+

apratt@atari.UUCP (Allan Pratt) (12/22/89)

neil@cs.hw.ac.uk (Neil Forsyth) writes:
> [Bulk of question deleted.]
>So we put in a terminate handler at vector 0x102 [...]
>Can we call the XBIOS safely from here?

Yes.  I wrote an off-the-cuff article "all about terminate handlers" 
on GEnie, then asked John Townsend to post it here.  I don't know if he
has, but among other things, it says you can make BIOS and XBIOS calls
but not GEMDOS calls.

============================================
Opinions expressed above do not necessarily	-- Allan Pratt, Atari Corp.
reflect those of Atari Corp. or anyone else.	  ...ames!atari!apratt

kbad@atari.UUCP (Ken Badertscher) (12/23/89)

Neil asks if there are magic negative-offset line A variables which can be
stuffed with appropriate values to fool GEM if an application changes res.

The answer is: No.

The line A variables are essentially the BSS of the VDI.  The AES, on
the other hand, has no published variables.  Never had 'em, never will.
So you can diddle with line A variables all day long, but the AES will
still be working in the original resolution when it's time to show a
menu, or draw a window, or put up an alert box.

Derek Mui is very wise in the ways of the AES, and when he says there
is no way, legal or illegal... believe him!

-- 
   |||   Ken Badertscher  (ames!atari!kbad)
   |||   Atari R&D System Software Engine
  / | \  #include <disclaimer>

ignac@electro.UUCP (Ignac Kolenko) (12/23/89)

In article <1912@atari.UUCP> apratt@atari.UUCP (Allan Pratt) writes:
>neil@cs.hw.ac.uk (Neil Forsyth) writes:
>> [Bulk of question deleted.]
>>So we put in a terminate handler at vector 0x102 [...]
>>Can we call the XBIOS safely from here?
>
>Yes.  I wrote an off-the-cuff article "all about terminate handlers" 
>on GEnie, then asked John Townsend to post it here.  I don't know if he
    ^^^^^
>has, but among other things, it says you can make BIOS and XBIOS calls
>but not GEMDOS calls.




could you perchance repost that article here. it would be nice to know a bit
more about the terminate handlers in the atari st, and i haven't yet seen
it here.

thanx, and merry xmas!

(hoping santa brings me a stacy) (the portable or a female version!)


-- 
=====Ignac A. Kolenko (The Ig)           watmath!watcgl!electro!ignac=====
     co-author of QuickST, and the entire line of Quick Shareware!!!!
       "I don't care if I don't win, 'cause I don't care if I fail"
             from 'Youth Of Today' by SUBURBAN DISTORTION