(self, args)
SCREEN: change the video mode, colourburst, visible or active page.
SCREEN: change the video mode, colourburst, visible or active page.
SCREEN : change the video mode colourburst visible or active page .
def screen_(self, args):
        """SCREEN: change the video mode, colourburst, visible or active page."""
        # in GW, screen 0,0,0,0,0,0 raises error after changing the palette
        # this raises error before
        mode, colorswitch, apagenum, vpagenum = (
            None if arg is None else values.to_int(arg)
            for _, arg in zip(range(4), args)
        )
        # if any parameter not in [0,255], error 5 without doing anything
        # if the parameters are outside narrow ranges
        # (e.g. not implemented screen mode, pagenum beyond max)
        # then the error is only raised after changing the palette.
        error.range_check(0, 255, mode, colorswitch, apagenum, vpagenum)
        if self._adapter == 'tandy':
            error.range_check(0, 1, colorswitch)
        erase = next(args)
        if erase is not None:
            erase = values.to_int(erase)
            error.range_check(0, 2, erase)
        list(args)
        if erase is not None:
            # erase can only be set on pcjr/tandy 5-argument syntax
            if self._adapter not in ('pcjr', 'tandy'):
                raise error.BASICError(error.IFC)
        else:
            erase = 1
        self.screen(mode, colorswitch, apagenum, vpagenum, erase)
def screen_ ( self , args ) : # in GW, screen 0,0,0,0,0,0 raises error after changing the palette # this raises error before mode , colorswitch , apagenum , vpagenum = ( None if arg is None else values . to_int ( arg ) for _ , arg in zip ( range ( 4 ) , args ) ) # if any parameter not in [0,255], error 5 without doing anything # if the parameters are outside narrow ranges # (e.g. not implemented screen mode, pagenum beyond max) # then the error is only raised after changing the palette. error . range_check ( 0 , 255 , mode , colorswitch , apagenum , vpagenum ) if self . _adapter == 'tandy' : error . range_check ( 0 , 1 , colorswitch ) erase = next ( args ) if erase is not None : erase = values . to_int ( erase ) error . range_check ( 0 , 2 , erase ) list ( args ) if erase is not None : # erase can only be set on pcjr/tandy 5-argument syntax if self . _adapter not in ( 'pcjr' , 'tandy' ) : raise error . BASICError ( error . IFC ) else : erase = 1 self . screen ( mode , colorswitch , apagenum , vpagenum , erase )