⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pdl_pdli.c

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻 C
字号:
#ifndef lintstatic char SccsId[] = "  @(#)pdl_pdli.c	4.1   LPS_ULT_TRN   7/2/90";#endif/* file: pdl_pdli.c * *	COPYRIGHT  (c)  DIGITAL  EQUIPMENT CORPORATION 1987, *	1988 ALL RIGHTS RESERVED. * *	THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE *	USED AND COPIED ONLY IN ACCORDANCE  WITH THE TERMS OF *	SUCH  LICENSE  AND  WITH  THE  INCLUSION OF THE ABOVE *	COPYRIGHT  NOTICE.  THIS SOFTWARE OR ANY OTHER COPIES *	THEREOF   MAY  NOT  BE  PROVIDED  OR  OTHERWISE  MADE *	AVAILABLE  TO  ANY  OTHER  PERSON.  NO  TITLE  TO AND *	OWNERSHIP  OF  THE  SOFTWARE  IS  HEREBY TRANSFERRED. * *	THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE *	WITHOUT  NOTICE  AND SHOULD  NOT BE  CONSTRUED  AS A *	COMMITMENT  BY  DIGITAL EQUIPMENT CORPORATION. * *	DIGITAL  ASSUMES  NO RESPONSIBILITY  FOR THE  USE  OR *	RELIABILITY  OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT *	SUPPLIED BY DIGITAL. * *//* *----------------------------------------------------------- * *   begin edit_history * *  15-FEB-1988 15:08	mhw *      Initial version * *  19-FEB-1988 16:56	mhw *      add initialization of jfy_buf_index  * *  15-MAY-1988 11:58	araj *	add initialization of constants here for the time being * *  23-NOV-1988 12:59 mhw *	Temporary fix for computing tabs added to pdl_init *	This will be removed when NVM is done correctly * *   end edit_history * *----------------------------------------------------------- *//* *----------------------------------------------------------- * *   begin description * *   Filename:  pdl_pdli.c * *   This file contains: * *    pdl_init() *    pdli_flag_nvm_store() *    pdli_flag_nvm_recall() *    pdli_flag_font_dict_change() *  *   end description * *----------------------------------------------------------- *//*  begin include_file    */#include    "portab.h"		/* portability file for global def's */#include    "cpsys.hc"		/* Common Parser variables */#include    "cpglobal.hc"	/* Globals for cpxxx files */#include    "camac.lib_hc"	/* Macros for caxxx files */#include    "caglobal.hc"	/* Globals for caxxx files */#include    "cpast.hc"		/* Allows override of current state *//*  end   include_file    *//* * pdl_init() * * This routine initialises the parser to a state that allows it to * communicate effectively and correctly through the PDL Interface. * This routine is called on powerup. */VOID pdl_init(init_vals)PTR_CPINIT_STATE init_vals;   {    /* Initialise the local copy of the PDL Interface values */    pdli_init_st = *init_vals;    /*     * Initialise the Common Parser variables.     * For now, set cp_host from the interface     * initialiser structure, until it is decided     * whether pdli_init_st.host_ptr is a global      * variable to be referenced by the parser      * routines.     */    cp_host = pdli_init_st.host_ptr;    cp_init();    /* Set the flags for configuration change */    pdli_flag_font_dict_change();    pdli_flag_nvm_recall();    /* Initialise the xl_st variables */    ca_state_init();    /* Initialise the local copy of NVM (nvm_st)     * so that NVM Recall can be emulated using     * the initial values of xl_st when there is     * no NVM in the machine or when NVM fails.     */    nvm_gather();/****************************************************************************** ***************************   TEMPORARY FIX ********************************* * * This is a tempory fix until NVM is done correctly * * The horizontal and vertical tab count will be set to -1 such that in  * ca_set_given_state the init routines will be called to calculate where * the tabs should be.  If NVM were correct, this would be passed to us by * the Translator.  This problem was seen when we tried to print Sue * Gleeson's file that contained tabs, in landscape mode. * */    nvm_st.svst_htabct = -1;    nvm_st.svst_vtabct = -1;/*********************************************************************/   }/* * pdli_flag_nvm_store */VOID pdli_flag_nvm_store()   {    /*     * If we have been asked to do an NVM Recall, and have not yet     * completed it, then ignore this NVM Store request for now so      * that we don't get a mixed state.  Otherwise, the printer is     * assumed to have guaranteed that the parser is not processing     * an action routine that could be trashing xl_st values during     * the NVM Store.     */    if (!nvm_recall_flag)       {	ca_nvm_store();       }   }/* * pdli_flag_nvm_recall */VOID pdli_flag_nvm_recall()   {    /*     * Set the NVM Recall flag for the cp_parse loop,     * so that an NVM Recall doesn't trash xl_st while     * it is being modified by an action routine.     */    nvm_recall_flag = TRUE;    nvm_cp_ctptr = cp_ctptr ;    cp_ctptr = &ast_nvm ;   }/*  * pdli_flag_font_dict_change; */VOID pdli_flag_font_dict_change()   {    font_dict_change_flag = TRUE;   }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -