[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]


    NAME
        MakeScreen -- Do an Intuition-integrated makevport() of a screen.

    SYNOPSIS
        failure = MakeScreen( screen )
        D0 (V39)              A0

        long makescreen( struct screen * );
        /* Returns long in v39 and greater */

    FUNCTION
        This procedure allows you to do a makevport() for the viewport of your
        custom screen in an Intuition-integrated way.  This way you can
        do your own screen manipulations without worrying about interference
        with Intuition's usage of the same viewport.

        The operation of this function is as follows:
            - Block until the Intuition view structure is not in being changed.
            - Set the view modes correctly to reflect if there is a (visible)
              interlaced screen.
            - call makevport(), passing the intuition view and your screen's
              viewport.
            - Unlocks the Intuition view.

        After calling this routine, you should call rethinkdisplay() to
        incorporate the new viewport of your custom screen into the
        Intuition display.

        NOTE: Intuition may determine that because of a change in global
        interlace needs that all viewports need to be remade, so
        it may effectively call remakedisplay().

    INPUTS
        screen = address of the custom screen structure

    RESULT
        Starting with V39, returns zero for success, non-zero for failure.
        Probable cause of failure is failure of graphics.library/makevport().
        Prior to V39, the return code is invalid.  Do not interpret it when
        running on pre-V39 systems!

    BUGS

    SEE ALSO
        rethinkdisplay(), remakedisplay(), graphics.library/makevport()