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

📄 mfb.h

📁 spice中支持多层次元件模型仿真的可单独运行的插件源码
💻 H
📖 第 1 页 / 共 2 页
字号:
    /* tty status ints */    MFBSAVESTAT oldstat;#endif    /*     * CHARACTERS     */    char deviceType;            /* TTY=tty, HCOPY=hard copy */    char strBuf[BUFSIZE];       /* storage for format strings */    char ttyBuffer[TTYBUFSIZE];     /* tty output buffer */    };typedef struct mfb MFB;extern MFB *MFBCurrent;         /* global FB structure */extern struct err {    int errnum;    char    *message;        };/* Define Macros for general program usage. */#define TRUE 1#define FALSE 0#define ON 1#define OFF 0/* MFBSetALUMode defines */#define MFBALUJAM   0#define MFBALUOR    1#define MFBALUNOR   2#define MFBALUEOR   3/* ERROR DEFINES */#define MFBOK       1   /* Successful return */#define MFBBADENT   -10 /* Unknown terminal type */#define MFBBADMCF   -20 /* Can't open mfbcap file */#define MFBMCELNG   -30 /* MFBCAP entry too long */#define MFBBADMCE   -40 /* Bad mfbcap entry */#define MFBINFMCE   -50 /* Infinite mfbcap entry */#define MFBBADTTY   -60 /* stdout not in /dev */#define MFBBADLST   -70 /* Illegal line style */#define MFBBADFST   -80 /* Illegal fill style */#define MFBBADCST   -90 /* Illegal color style */#define MFBBADTM1   -100    /* No destructive text */#define MFBBADTM2   -110    /* No overstriking text */#define MFBNODFLP   -120    /* No definable line styles */#define MFBNODFFP   -130    /* No definable fill styles */#define MFBNODFCO   -140    /* No definable colors */#define MFBNOBLNK   -150    /* No blinkers */#define MFBTMBLNK   -160    /* Too many blinkers */#define MFBBADDEV   -180    /* Can't open or close device */#define MFBBADOPT   -190    /* Can't access or set device stat */#define MFBNOMASK   -170    /* No definable read or write mask */#define MFBBADWRT   -200    /* Error in write */#define MFBPNTERR   -210    /* Error in pointing device */#define MFBNOPTFT   -220    /* No format for pointing device */#define MFBNOPNT    -230    /* No pointing device */#define MFBNORBND   -240    /* No Rubberbanding */#define MFBBADALU   -250    /* Cannot set ALU mode *//* *  defines for MFBInfo */#define MAXX            1   /* max x coordinate */#define MAXY            2   /* max y coordinate */#define MAXCOLORS       3   /* max number of colors */#define MAXINTENSITY        4   /* max color intensity */#define MAXFILLPATTERNS     5   /* max number of fill patterns */#define MAXLINESTYLES       6   /* max number of line styles */#define MAXBLINKERS     7   /* max number of blinkers */#define POINTINGDEVICE      8   /* Bool: terminal has pointing device */#define POINTINGBUTTONS     9   /* Bool: pointing device has buttons */#define NUMBUTTONS      10  /* number of pointing device buttons */#define BUTTON1         11  /* button value returned by button 1 */#define BUTTON2         12  /* button value returned by button 2 */#define BUTTON3         13  /* button value returned by button 3 */#define BUTTON4         14  /* button value returned by button 4 */#define BUTTON5         15  /* button value returned by button 5 */#define BUTTON6         16  /* button value returned by button 6 */#define BUTTON7         17  /* button value returned by button 7 */#define BUTTON8         18  /* button value returned by button 8 */#define BUTTON9         19  /* button value returned by button 9 */#define BUTTON10        20  /* button value returned by button 10 */#define BUTTON11        21  /* button value returned by button 11 */#define BUTTON12        22  /* button value returned by button 12 */#define TEXTPOSITIONALBE    30  /* Bool: accurately positionable text */#define TEXTROTATABLE       31  /* Bool: rotateable text */#define FONTHEIGHT      32  /* font height in pixels */#define FONTWIDTH       33  /* font width in pixels */#define FONTXOFFSET     34  /* font x offset in pixels */#define FONTYOFFSET     35  /* font y offset in pixels */#define DESTRUCTIVETEXT     36  /* Bool: text can be destructive */#define OVERSTRIKETEXT      37  /* Bool: text can be overstrike */#define VLT         38  /* Bool: terminal has VLT */#define BLINKERS        39  /* Bool: terminal has blinkers */#define FILLEDPOLYGONS      40  /* Bool: terminal has filled polygons */#define DEFFILLPATTERNS     41  /* Bool: defineable fill patterns */#define DEFCHANNELMASK      42  /* Bool: defineable write mask */#define DEFLINEPATTERN      43  /* Bool: defineable line styles */#define CURFGCOLOR      44  /* current foreground color */#define CURFILLPATTERN      45  /* current fill pattern */#define CURLINESTYLE        46  /* current line style */#define CURCHANNELMASK      47  /* current write mask */#define CURREADMASK     48  /* current read mask */#define NUMBITPLANES        49  /* number of bit planes */#define DEFREADMASK     50  /* Bool: definable read mask */#define RASTERCOPY      51  /* Bool: terminal has raster copy */#define OFFSCREENX      52  /* left value of off screen memory */#define OFFSCREENY      53  /* bottom value of off screen memory */#define OFFSCREENDX     54  /* length of off screen memory */#define OFFSCREENDY     55  /* width of off screen memory */extern int MFBPutchar();extern int MFBPutstr();extern int MFBGetchar();extern int MFBUngetchar();extern int OldGetchar();extern int OldUngetchar();extern int MFBUpdate();extern int MFBFlushInput();extern void MFBAudio();extern void SetCurrentMFB();#ifdef DEBUGextern void MFBZeroCounters();extern void MFBCounters();#endifextern MFB *MFBOpen();extern int MFBInfo();extern int MFBInitialize();extern int MFBInitTTY();extern int MFBClose();extern int MFBHalt();extern int MFBSetLineStyle();extern int MFBSetFillPattern();extern int MFBSetChannelMask();extern int MFBSetReadMask();extern int MFBSetColor();extern int MFBSetTextMode();extern int MFBSetCursorColor();extern int MFBSetBlinker();extern int MFBSetRubberBanding();extern int MFBDefineColor();extern int MFBDefineFillPattern();extern int MFBDefineLineStyle();extern void MFBMoveTo();extern void MFBDrawLineTo();extern void MFBDrawPath();extern void MFBLine();extern void MFBBox();extern void MFBArc();extern void MFBCircle();extern void MFBFlash();extern void MFBPolygon();extern void MFBText();extern void MFBFlood();extern void MFBPixel();extern void MFBRasterCopy();extern MFBPATH *MFBArcPath();extern MFBPOLYGON *MFBEllipse();extern Bool MFBLineClip();extern MFBPATH *MFBClipArc();extern int MFBPoint();extern char *MFBKeyboard();extern char *MFBError();extern void MFBSetViewport();extern void MFBSetWindow();extern void MFB_Y_Intercept();extern void MFB_X_Intercept();extern void MFBPolygonClip();extern void MFBNaiveBoxFill();extern void MFBMore();extern int MFBScaleX();extern int MFBScaleY();extern int MFBDescaleX();extern int MFBDescaleY();/*  All MFBCAP defines must be less than zero so they will not clash *  with the ASCII character set. */#define MFBCAPOK    -10#define MFBCAPNOFORMAT  -20#define MFBCAPSYNTAXERR -30/* mfbcap field evaluation */#define mfbarg( cp, Reg, reg, val ) {					      \    val = (int)(*cp);							      \    ++cp;								      \    if(val == '%'){							      \	switch(*cp){							      \	case 'X':							      \		val = MFBCurrent->X;					      \	    break;							      \	case 'Y':							      \		val = MFBCurrent->Y;					      \	    break;							      \	case 'Z':							      \		val = MFBCurrent->Z;					      \	    break;							      \	case 'T':							      \		val = MFBCurrent->T;					      \	    break;							      \	case 'R':							      \		val = Reg;						      \	    break;							      \	case 'r':							      \		val = reg;						      \	    break;							      \	case 'C':							      \		val = MFBCurrent->fgColorId;				      \	    break;							      \	case 'F':							      \		val = MFBCurrent->fillPattern;				      \	    break;							      \	case 'L':							      \		val = MFBCurrent->lineStyle;				      \	    break;							      \	default:							      \		--cp;							      \	    break;							      \        }								      \        ++cp;								      \    } else if(val == '#'){						      \        int iarg;							      \	val = 0;							      \        while( (iarg = ((int)(*cp) - 060)) >= 0 && (iarg < 10) ) {	      \            cp++; val *= 10; val += iarg;				      \            }								      \    }									      \}#else /* if it is a PCTERM *//* * MFB emulation package for the IBM PC. */#include <stdio.h>typedef struct __foo {	int fileDesc;} MFB;extern MFB *MFBCurrent;extern int MFBdebug;#define TRUE 1#define FALSE 0#define ON 1#define OFF 0/* MFBSetALUMode defines */#define	MFBALUJAM 	0#define MFBALUOR	1#define	MFBALUNOR	2#define	MFBALUEOR	3/* ERROR DEFINES */#define MFBOK 		1	/* Successful return */#define	MFBBADENT	-10	/* Unknown terminal type */#define	MFBBADMCF	-20	/* Can't open mfbcap file */#define	MFBMCELNG	-30	/* MFBCAP entry too long */#define	MFBBADMCE	-40	/* Bad mfbcap entry */#define	MFBINFMCE	-50	/* Infinite mfbcap entry */#define	MFBBADTTY	-60	/* stdout not in /dev */#define	MFBBADLST	-70	/* Illegal line style */#define	MFBBADFST	-80	/* Illegal fill style */#define	MFBBADCST	-90	/* Illegal color style */#define	MFBBADTM1	-100	/* No destructive text */#define	MFBBADTM2	-110	/* No overstriking text */#define	MFBNODFLP	-120	/* No definable line styles */#define	MFBNODFFP	-130	/* No definable fill styles */#define	MFBNODFCO	-140	/* No definable colors */#define	MFBNOBLNK	-150	/* No blinkers */#define	MFBTMBLNK	-160	/* Too many blinkers */#define	MFBBADDEV	-180	/* Can't open or close device */#define	MFBBADOPT	-190	/* Can't access or set device stat */#define	MFBNOMASK	-170	/* No definable read or write mask */#define	MFBBADWRT	-200	/* Error in write */#define	MFBPNTERR	-210	/* Error in pointing device */#define	MFBNOPTFT	-220	/* No format for pointing device */#define	MFBNOPNT	-230	/* No pointing device */#define	MFBNORBND	-240	/* No Rubberbanding */#define	MFBBADALU	-250	/* Cannot set ALU mode */#define MFBNOMEM	-260	/* Out of memory *//* Defines for MFBInfo */#define MAXX			1	/* max x coordinate */#define MAXY			2	/* max y coordinate */#define MAXCOLORS		3	/* max number of colors */#define MAXINTENSITY		4	/* max color intensity */#define MAXFILLPATTERNS		5	/* max number of fill patterns */#define MAXLINESTYLES		6	/* max number of line styles */#define MAXBLINKERS		7	/* max number of blinkers */#define POINTINGDEVICE		8	/* Bool: terminal has pointing device */#define POINTINGBUTTONS		9	/* Bool: pointing device has buttons */#define NUMBUTTONS		10	/* number of pointing device buttons */#define BUTTON1			11	/* button value returned by button 1 */#define BUTTON2			12	/* button value returned by button 2 */#define BUTTON3			13	/* button value returned by button 3 */#define BUTTON4			14	/* button value returned by button 4 */#define BUTTON5			15	/* button value returned by button 5 */#define BUTTON6			16	/* button value returned by button 6 */#define BUTTON7			17	/* button value returned by button 7 */#define BUTTON8			18	/* button value returned by button 8 */#define BUTTON9			19	/* button value returned by button 9 */#define BUTTON10		20	/* button value returned by button 10 */#define BUTTON11		21	/* button value returned by button 11 */#define BUTTON12		22	/* button value returned by button 12 */#define TEXTPOSITIONALBE	30	/* Bool: accurately positionable text */#define TEXTROTATABLE		31	/* Bool: rotateable text */#define FONTHEIGHT		32	/* font height in pixels */#define FONTWIDTH		33	/* font width in pixels */#define FONTXOFFSET		34 	/* font x offset in pixels */#define FONTYOFFSET		35	/* font y offset in pixels */#define DESTRUCTIVETEXT		36	/* Bool: text can be destructive */#define OVERSTRIKETEXT		37	/* Bool: text can be overstrike */#define VLT			38	/* Bool: terminal has VLT */#define BLINKERS		39	/* Bool: terminal has blinkers */#define FILLEDPOLYGONS		40	/* Bool: terminal has filled polygons */#define DEFFILLPATTERNS		41	/* Bool: defineable fill patterns */#define DEFCHANNELMASK		42	/* Bool: defineable write mask */#define DEFLINEPATTERN		43	/* Bool: defineable line styles */#define CURFGCOLOR		44	/* current foreground color */#define CURFILLPATTERN		45	/* current fill pattern */#define CURLINESTYLE		46	/* current line style */#define CURCHANNELMASK		47	/* current write mask */#define CURREADMASK		48	/* current read mask */#define NUMBITPLANES		49	/* number of bit planes */#define DEFREADMASK		50	/* Bool: definable read mask */#define RASTERCOPY		51	/* Bool: terminal has raster copy */#define	OFFSCREENX		52	/* left value of off screen memory */#define	OFFSCREENY		53	/* bottom value of off screen memory */#define OFFSCREENDX		54	/* length of off screen memory */#define OFFSCREENDY		55	/* width of off screen memory */extern MFB *MFBOpen();extern char *MFBError();extern char *MFBKeyboard();extern void MFBArc();#endif

⌨️ 快捷键说明

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