forth.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // interface to forth
  2. //
  3. // Copyright (c) 2009 Openmoko Inc.
  4. //
  5. // Authors Christopher Hall <hsw@openmoko.com>
  6. //
  7. // Redistribution and use in source and binary forms, with or without
  8. // modification, are permitted provided that the following conditions are
  9. // met:
  10. //
  11. // 1. Redistributions of source code must retain the above copyright
  12. // notice, this list of conditions and the following disclaimer.
  13. //
  14. // 2. Redistributions in binary form must reproduce the above copyright
  15. // notice, this list of conditions and the following disclaimer in
  16. // the documentation and/or other materials provided with the
  17. // distribution.
  18. //
  19. // THIS SOFTWARE IS PROVIDED BY THE CONTRIBUTORS ``AS IS'' AND ANY
  20. // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  21. // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
  22. // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE
  23. // FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  24. // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  25. // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
  26. // BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  27. // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
  28. // OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
  29. // IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  30. #if !defined(_FORTH_H_)
  31. #define _FORTH_H_ 1
  32. // the 32 bit forth cell
  33. typedef unsigned long Forth_CellType;
  34. // must be 32 bits like Forth_CellType
  35. typedef void *Forth_PointerType;
  36. // this allows a return of two cells to the interpreter
  37. typedef struct {
  38. Forth_CellType result;
  39. Forth_CellType rc;
  40. } Forth_ReturnType;
  41. #endif