/* * Creation Date: <2003/12/19 00:20:11 samuel> * Time-stamp: <2004/01/07 19:19:14 samuel> * * * * * * Copyright (C) 2003, 2004 Samuel Rydh (samuel@ibrium.se) * Stefan Reinauer * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * version 2 * */ #ifndef _H_KERNEL #define _H_KERNEL #include "kernel/stack.h" #include "asm/io.h" /* Interrupt status */ #define FORTH_INTSTAT_CLR 0x0 #define FORTH_INTSTAT_STOP 0x1 #define FORTH_INTSTAT_DBG 0x2 extern volatile int interruptforth; extern int enterforth( xt_t xt ); extern void panic(const char *error) __attribute__ ((noreturn)); extern xt_t findword(const char *s1); extern void modules_init( void ); extern void init_trampoline(ucell *t); extern void forth_init(void); /* arch kernel hooks */ extern void exception(cell no); #ifdef FCOMPILER extern void include_file( const char *str ); extern void encode_file( const char *str ); extern int get_inputbyte( void ); extern void put_outputbyte( int c ); #endif #ifndef BOOTSTRAP #undef putchar #undef getchar extern int putchar( int ch ); extern int getchar( void ); #endif extern int availchar( void ); #endif /* _H_KERNEL */