Topic : The ATARI Compendium
Author : Scott Sanders / JAY Software
Version : 1.25 (20/6/2003)
Subject : Documentation
Nodes : 1117
Index Size : 32614
HCP-Version : 6
Compiled on : Atari
@charset : UTF-8
@lang : en
@default :
@help : %About
@options : +g -i -t4 +y +z
@width : 100
View Ref-FileVsetMode()VsetScreen()EsetShift()Setscreen() XBIOSSyntaxVOID Setscreen( log, phys, mode )
VOIDP log, phys;
WORD mode;
Function Setscreen() changes the base addresses and mode of the
current screen.
Opcode 5 (0x05)
Availability All TOSversions.
Parameters log is the address for the new logical screen base. phys is
the new address for the physical screen base. mode defines
the screen mode to switch to (same as Getrez()). If any of
these three parameters is set to SCR_NOCHANGE (-1) then that
value will be left unchanged.
Binding move.w mode,-(sp)
pea phys
pea log
move.w #$5,-(sp)
trap #14
lea 12(sp),sp
Caveats Changing screen modes with this call does not reinitialize
the AES. The VDI and VT52 emulator are, however, correctly
reinitialized. The AES should not be used after changing
screen mode with this call until the old screen mode is
restored.
Comments The Atari ST and Mega ST required that its physical screen
memory be on a 256 byte boundary. All other Atari computers
only require a WORD boundary. To access the unique video
modes of the Falcon030 the call VsetScreen() (which is
actually an alternate binding of this call with the same
opcode) should be used in place of this call.
See Also VsetMode(), VsetScreen(), EsetShift()