Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!caen!Firewall!uunet!mcsun!unido!mcshh!abqhh!drdhh!bjoern From: bjoern@drdhh.hanse.de (Bjoern Kriews) Newsgroups: comp.sys.atari.st.tech Subject: Re: Vertical Blank routines Message-ID: <3386.06.91@drdhh.hanse.de> Date: 11 Jun 91 18:51:30 GMT References: <79358@eerie.acsu.Buffalo.EDU> Reply-To: bjoern@drdhh.hanse.de Organization: Digital Island Lines: 26 chu@acsu.buffalo.edu (john c chu) writes: >Can someone mail me the dos and don'ts of using routines that run >every vertical blank? If the Abacus ST Internals is accurate in this >case, I think I know how to install a routine. However, I'd like to >know if it is ok to call an XBIOS routine during that time, what the >maximum length a routine should be and so on... Before calling BIOS or XBIOS routines from interrupts, you should use BIOS_ON, afterwards BIOS_OFF, which are macros used to manipulate the bios register stack. #define SAVPTR (*(char **)0x4a2) #define BIOS_ON (SAVPTR += 46) #define BIOS_OFF (SAVPTR -= 46) >(also, is it correct to add your routine to the VBL queue by altering >the system variables? Their locations do not (and will not) change >between versions of TOS?) Yes, it's ok. --- bjoern@drdhh.hanse.de = Bjoern Kriews / Stormsweg 6 / 2000 Hamburg 76 / FRG "gaaga mahwe Bjoern urgl ufzae Turbo-C bnub" (J. Willamowius)