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

📄 fpclib.h

📁 模拟协处理器功能的 C 语言源码  
💻 H
📖 第 1 页 / 共 2 页
字号:
PVOID FPENTRY MakeFP( UINT seg, UINT ofs );

/*---------------------------------------------------------------------
- DISK routines
---------------------------------------------------------------------*/

VOID  FPENTRY CloseFile( INT2 Handle );
VOID  FPENTRY CreateFile( PCHAR Path, INT2 Attr, PINT2 Handle );

VOID  FPENTRY DosFindFirst( PCHAR  Path,
                            INT2      Attr,
                            TFindRec  FindRec );

VOID  FPENTRY DosFindNext( TFindRec FindRec );
UINT4 FPENTRY FSeek( INT Handle, INT Orgin, INT4 Offset );
INT2  FPENTRY GetDrive( VOID );
VOID  FPENTRY GetDTA( UINT2 Segment, UINT2 Offset );
INT4  FPENTRY GetFileSize( INT Handle );
INT2  FPENTRY GetNDrvs( VOID );
VOID  FPENTRY OpenFile( PCHAR Path, INT2 Attr, PINT2 Handle );

VOID  FPENTRY ReadFile( INT2   Handle,
                        INT2   NBytes,
                        PCHAR  Buffer,
                        PUINT2 RBytes );

VOID  FPENTRY ResetDisk( VOID );
VOID  FPENTRY ResetErrCodes( VOID );
VOID  FPENTRY RestInt24( VOID );
VOID  FPENTRY SetDTA( UINT2 Segment, UINT2 Offset );
VOID  FPENTRY SetInt24( VOID );

VOID  FPENTRY WriteFile( INT2   Handle,
                         INT2   NBytes,
                         PCHAR  Buffer,
                         PUINT2 WBytes );

/*---------------------------------------------------------------------
- BIOS mouse routines
---------------------------------------------------------------------*/

INT2  FPENTRY MButtonPress( INT2  Button,
                            PINT2 ButPress,
                            PINT2 x,
                            PINT2 y  );

INT2  FPENTRY MButtonRel( INT2  Button,
                          PINT2 ButPress,
                          PINT2 x,
                          PINT2 y  );

VOID  FPENTRY MGetPos( PINT2 Button, PINT2 x, PINT2 y );
VOID  FPENTRY MGetSpeed( PINT2 HorCnt, PINT2 VerCnt );

VOID  FPENTRY MGraphCursor( INT2  XHotSpot, INT2  YHotSpot,
                            UINT2 CMaskSeg, UINT2 CMaskOfs );

VOID  FPENTRY MHideCursor( VOID );
VOID  FPENTRY MInitEventHandler( INT2 EventMask );

VOID  FPENTRY MPollQue( PINT2 Event, PINT2 ButStat,
                        PINT2 x,     PINT2 y      );

INT2  FPENTRY MResetMouse( PINT2 NBut );

VOID  FPENTRY MRetQue( PINT2 Event, PINT2 ButStat,
                       PINT2 x,     PINT2 y      );

VOID  FPENTRY MSetEvent( INT2 Event, INT2 ButStat, INT2 x, INT2 y );

VOID  FPENTRY MSetPos( INT2 x, INT2 y );
VOID  FPENTRY MSetSpeed( INT2 HorCnt, INT2 VerCnt );
VOID  FPENTRY MSetXRange( INT2 Min, INT2 Max );
VOID  FPENTRY MSetYRange( INT2 Min, INT2 Max );
VOID  FPENTRY MShowCursor( VOID );
VOID  FPENTRY MTextCursor( INT2 CType, INT2 SMask, INT2 CMask );

/*---------------------------------------------------------------------
- BIOS video routines
---------------------------------------------------------------------*/

VOID  FPENTRY bvSetMode( INT2 Mode, INT2 Clear );
VOID  FPENTRY bvSetCurType( INT2 StScan, INT2 SpScan );
VOID  FPENTRY bvSetCurPos( INT2 pg, INT2 row, INT2 col );
VOID  FPENTRY bvGetCurPos( INT2 pg, PINT2 row, PINT2 col );
VOID  FPENTRY bvGetCurType( INT2 pg, PINT2 stscan, PINT2 spscan );
VOID  FPENTRY bvSetPage( INT2 pg );

VOID  FPENTRY bvScrollDn( INT2 top,    INT2 left,
                          INT2 bottom, INT2 right,
                          INT2 lines,  INT2 attr );

VOID  FPENTRY bvScrollUp( INT2 top,    INT2 left,
                          INT2 bottom, INT2 right,
                          INT2 lines,  INT2 attr );

VOID  FPENTRY bvReadCell( PINT2 ch, PINT2 attr, INT2 pg );

VOID  FPENTRY bvWrtNCell( INT2 ch,    INT2 attr,
                          INT2 count, INT2 pg   );

VOID  FPENTRY bvWrtNChar( INT2 ch, INT2 count, INT2 pg );
VOID  FPENTRY bvSetState0B( INT2 color );
VOID  FPENTRY bvWrtPix( INT2 row, INT2 col, INT2 pixval, INT2 pg );
INT2  FPENTRY bvReadPix( INT2 row, INT2 col, INT2 pg );
VOID  FPENTRY bvWrtTTYChar( INT2 ch, INT2 pg, INT2 color );
VOID  FPENTRY bvGetMode( PINT2 mode, PINT2 cols, PINT2 pg );
VOID  FPENTRY bvSetPalReg( INT2 color, INT2 reg );
VOID  FPENTRY bvSetBorder( INT2 color );
VOID  FPENTRY bvSetPalBorder( CHAR list[17] );
VOID  FPENTRY bvSetBlink( INT2 state );
INT2  FPENTRY bvGetPalReg( INT2 reg );
INT2  FPENTRY bvGetBorder( VOID );
VOID  FPENTRY bvGetPalBorder( CHAR buf[17] );

VOID  FPENTRY bvSetColorReg( UINT2 colorreg, INT2 green,
                             INT2  blue,     INT2 red );

VOID  FPENTRY bvSetColorRegBlk( UINT2 startreg,
                                INT2  regcount,
                                BYTE  colortbl[][3] );

VOID  FPENTRY bvSetColorPgMode( INT2 pgstate );
VOID  FPENTRY bvSetColorRegPg( INT2 pg );

VOID  FPENTRY bvGetColorReg( INT2  colorreg, PINT2 green,
                             PINT2 blue, PINT2 red );

VOID  FPENTRY bvGetColorRegBlk( UINT2 startreg,
                                INT2  regcount,
                                BYTE   colortbl[][3] );

VOID  FPENTRY bvGetColorPgMode( PINT2 colorpg, PINT2 pgmode );
VOID  FPENTRY bvSetGrayScale( UINT2 startreg, INT2  regcount );

VOID  FPENTRY bvLoadUsrFont00( INT2  pts,     INT2  block,
                               UINT2 chcount, UINT2 startch,
                               PVOID fonttbl );

VOID  FPENTRY bvLoadUsrFont10( INT2  pts,     INT2  block,
                               UINT2 chcount, UINT2 startch,
                               PVOID fonttbl );

VOID  FPENTRY bvLoad8x14Font01( INT2  block );
VOID  FPENTRY bvLoad8x14Font11( INT2  block );
VOID  FPENTRY bvLoad8x8Font02( INT2  block );
VOID  FPENTRY bvLoad8x8Font12( INT2  block );
VOID  FPENTRY bvSetBlkSpec( INT2  block );
VOID  FPENTRY bvLoad8x16Font04( INT2  block );
VOID  FPENTRY bvLoad8x16Font14( INT2  block );
VOID  FPENTRY bvSet1FhFontPtr( PVOID  fonttbl );

VOID  FPENTRY bvSet43hUsrFont( INT2 rows,   UINT2 points,
                               INT2 scnrows, PVOID  fonttbl );

VOID  FPENTRY bvSet43h8x14Font( INT2 rows, INT2 scnrows   );
VOID  FPENTRY bvSet43h8x8Font( INT2 rows, INT2 scnrows   );
VOID  FPENTRY bvSet43h8x16Font( INT2 rows, INT2 scnrows   );

VOID  FPENTRY bvGetFontInfo( INT2  fontcode, PUINT2 points,
                             PINT2 scnrows, PVOID   fonttbl );

VOID  FPENTRY bvGetConfigInfo( PINT2 dsptype, PINT2 egamem,
                               PINT2 fbits,   PINT2 swset );

VOID  FPENTRY bvSetAltPrtSc( VOID );
INT2  FPENTRY bvSetScanLines( INT2 scancode );
INT2  FPENTRY bvDefPalLoad( INT2 setting );
INT2  FPENTRY bvVioAccess( INT2 setting );
INT2  FPENTRY bvGrayScaleSum( INT2 setting );
INT2  FPENTRY bvCurEmulation( INT2 setting );
VOID  FPENTRY bvSwDsp( INT2 setting, PCHAR buffer );
INT2  FPENTRY bvScnRefresh( INT2 setting );

VOID  FPENTRY bvWrtTTYStr( INT2 mode, INT2 row, INT2 col,
                           INT2 len,  INT2 pg,  INT2 attr,
                           PCHAR st );

INT2  FPENTRY bvGetDspCode( INT2 *ActiveDspCode, INT2 *InactiveDspCode );

/*---------------------------------------------------------------------
- DOS routines
---------------------------------------------------------------------*/

VOID  FPENTRY dDiskReset( VOID );
INT2  FPENTRY dSelectDisk( INT2 Drive );
INT2  FPENTRY dGetCurrentDisk();
VOID  FPENTRY dSetDta( UINT2 Segment, UINT2 Offset );

INT   FPENTRY dGetDriveData( INT2      Drive,
                             PUINT2 Sectors,
                             PUINT2 MediaSeg,
                             PUINT2 MediaOfs,
                             PUINT2 SectorSize,
                             PUINT2 Clusters  );


VOID  FPENTRY dSetIntVec( UINT2 dIntno, UINT2 dSeg, UINT2 dOfs );

VOID  FPENTRY dCreateNewPsp( UINT2 Segment );
VOID  FPENTRY dGetDate( PINT2 Month,
                        PINT2 Day,
                        PINT2 Year,
                        PINT2 DayOfWk );

INT   FPENTRY dSetDate( INT Month, INT Day, INT Year );

VOID  FPENTRY dGetTime( PINT2 Hour,
                        PINT2 Minute,
                        PINT2 Seconds,
                        PINT2 Hundredths );

VOID  FPENTRY dSetTime( INT2 Hour,    INT2 Minute,
                        INT2 Seconds, INT2 Hundredths );

VOID  FPENTRY dSetVerifyFlag( INT2 VerifyOpt );
VOID  FPENTRY dGetDta( PUINT2 Segment, PUINT2 Offset );
VOID  FPENTRY dGetVersion( PINT2 Major, PINT2 Minor );
INT   FPENTRY dGetBreakStatus( VOID );
VOID  FPENTRY dSetBreakFlag( INT flag );
VOID  FPENTRY dGetBusyFlag( PUINT2 dSeg, PUINT2 dOfs );

VOID  FPENTRY dGetIntVec( UINT2 dIntno, PUINT2 dSeg, PUINT2 dOfs );

//void (_cdecl _interrupt _far * _cdecl _dos_getvect(unsigned))();


INT   FPENTRY dGetDrvAllocInfo( UINT     Drive,
                                PUINT Sectors,
                                PUINT AvailClusters,
                                PUINT BytesInSector,
                                PUINT TotalClusters );

INT   FPENTRY dMkDir( PCHAR Path );
INT   FPENTRY dRmDir( PCHAR Path );
INT   FPENTRY dChDir( PCHAR Path );
INT   FPENTRY dCreateFile( PCHAR Path, INT2 Attr, PINT2 Handle );
INT   FPENTRY dOpenFile( PCHAR Path, INT2 Mode, PINT2 Handle );
INT   FPENTRY dCloseFile( PCHAR Path, INT2 Mode, PINT2 Handle );

INT   FPENTRY dReadFile( INT Handle,       UINT2 NBytes,
                         PVOID Buffer,  PUINT2 BytesRead );

INT   FPENTRY dWriteFile( INT Handle,      UINT NBytes,
                          PVOID Buffer, PUINT BytesWritten );

INT   FPENTRY dDelFile( PCHAR FileSpec );
INT   FPENTRY dSetFilePos( INT2 Handle, INT Method, PINT4 Ofs );
INT   FPENTRY dGetFileAttr( PCHAR FileSpec, PINT2 Attr );
INT   FPENTRY dSetFileAttr( PCHAR FileSpec, INT2 Attr );


#ifdef __cplusplus
}
#endif


#endif

⌨️ 快捷键说明

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