V25 with 64-bit support
[pforth] / csrc / pf_cglue.h
CommitLineData
bb6b2dcd 1/* @(#) pf_cglue.h 96/12/18 1.7 */\r
2#ifndef _pf_c_glue_h\r
3#define _pf_c_glue_h\r
4\r
5/***************************************************************\r
6** Include file for PForth 'C' Glue support\r
7**\r
8** Author: Phil Burk\r
9** Copyright 1994 3DO, Phil Burk, Larry Polansky, David Rosenboom\r
10**\r
11** The pForth software code is dedicated to the public domain,\r
12** and any third party may reproduce, distribute and modify\r
13** the pForth software code or any derivative works thereof\r
14** without any compensation or license. The pForth software\r
15** code is provided on an "as is" basis without any warranty\r
16** of any kind, including, without limitation, the implied\r
17** warranties of merchantability and fitness for a particular\r
18** purpose and their equivalents under the laws of any jurisdiction.\r
19**\r
20***************************************************************/\r
21\r
1cb310e6 22typedef cell_t (*CFunc0)( void );\r
23typedef cell_t (*CFunc1)( cell_t P1 );\r
24typedef cell_t (*CFunc2)( cell_t P1, cell_t P2 );\r
25typedef cell_t (*CFunc3)( cell_t P1, cell_t P2, cell_t P3 );\r
26typedef cell_t (*CFunc4)( cell_t P1, cell_t P2, cell_t P3, cell_t P4 );\r
27typedef cell_t (*CFunc5)( cell_t P1, cell_t P2, cell_t P3, cell_t P4, cell_t P5 );\r
bb6b2dcd 28\r
29#ifdef __cplusplus\r
30extern "C" {\r
31#endif\r
32\r
1cb310e6 33Err CreateGlueToC( const char *CName, ucell_t Index, cell_t ReturnMode, int32_t NumParams );\r
bb6b2dcd 34Err CompileCustomFunctions( void );\r
35Err LoadCustomFunctionTable( void );\r
1cb310e6 36cell_t CallUserFunction( cell_t Index, int32_t ReturnMode, int32_t NumParams );\r
bb6b2dcd 37\r
38#ifdef __cplusplus\r
39} \r
40#endif\r
41\r
42#define C_RETURNS_VOID (0)\r
43#define C_RETURNS_VALUE (1)\r
44\r
45#endif /* _pf_c_glue_h */\r