•  Back 
  •  XBIOS Function Reference 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  %About 
  •  Show info about hypertext 
  •  View a new file 
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-FileSetscreen()
VsetMode()
VsetScreen()                                                          XBIOS

Syntax

VOID VsetScreen( log, phys, mode, modecode )
VOIDP log, phys;
WORD mode, modecode;

Function      VsetScreen() changes the base addresses and mode of the
              current screen.

Opcode        5 (0x05)

Availability  All TOS versions. The ability of this call to utilize the
              modecode parameter and the memory allocation feature is
              limited to systems having a '_VDO' cookie with a value of
              0x00030000 or greater.

Parameters    log is the address for the new logical screen base. phys is
              the new address for the physical screen base. If either log
              or phys is NULL, the XBIOS will allocate a new block of
              memory large enough for the current screen and reset the
              parameter accordingly. mode defines the screen mode to
              switch to (same as Getrez()). Setting mode to SCR_MODECODE
              (3) will cause modecode to be used to set the graphic mode
              (see VsetMode() for valid values for this parameter),
              otherwise modecode is ignored. If any of these three
              parameters is set to SCR_NOCHANGE (1) then that value will
              be left unchanged.

Binding       move.w   modecode,-(sp)
              move.w   mode,-(sp)
              pea      phys
              pea      log
              move.w   #$05,-(sp)
              trap     #14
              lea      14(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      TOS 1.00 and 1.02 required that its physical screen memory
              be on a 256 byte boundary. All other Atari computers only
              require a WORD boundary. This call is actually a revised
              binding of Setscreen() developed to allow access to the
              newly available modecode parameter.

See Also      Setscreen(), VsetMode()