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