Main Page | Data Structures | File List | Data Fields | Globals

stack.h

Go to the documentation of this file.
00001 #ifndef _TOKE_STACK_H
00002 #define _TOKE_STACK_H
00003 
00004 /*
00005  *                     OpenBIOS - free your system! 
00006  *                         ( FCode tokenizer )
00007  *                          
00008  *  stack.h - prototypes and defines for handling the stacks.  
00009  *  
00010  *  This program is part of a free implementation of the IEEE 1275-1994 
00011  *  Standard for Boot (Initialization Configuration) Firmware.
00012  *
00013  *  Copyright (C) 2001-2005 Stefan Reinauer, <stepan@openbios.org>
00014  *
00015  *  This program is free software; you can redistribute it and/or modify
00016  *  it under the terms of the GNU General Public License as published by
00017  *  the Free Software Foundation; version 2 of the License.
00018  *
00019  *  This program is distributed in the hope that it will be useful,
00020  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00021  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00022  *  GNU General Public License for more details.
00023  *
00024  *  You should have received a copy of the GNU General Public License
00025  *  along with this program; if not, write to the Free Software
00026  *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA, 02110-1301 USA
00027  *
00028  */
00029 
00030 /* **************************************************************************
00031  *         Modifications made in 2005 by IBM Corporation
00032  *      (C) Copyright 2005 IBM Corporation.  All Rights Reserved.
00033  *      Modifications Author:  David L. Paktor    dlpaktor@us.ibm.com
00034  **************************************************************************** */
00035 
00036 #include "types.h"
00037 
00038 /* ************************************************************************** *
00039  *
00040  *      Macros:
00041  *          MAX_ELEMENTS          Size of stack area, in "elements"
00042  *
00043  **************************************************************************** */
00044 
00045 #define MAX_ELEMENTS 1024
00046 
00047 /* ************************************************************************** *
00048  *
00049  *      Global Variables Exported
00050  *
00051  **************************************************************************** */
00052 
00053 extern long *dstack;
00054 
00055 /* ************************************************************************** *
00056  *
00057  *      Function Prototypes / Functions Exported:
00058  *
00059  **************************************************************************** */
00060 
00061 void dpush(long data);
00062 long dpop(void);
00063 long dget(void);
00064 
00065 void clear_stack(void);
00066 void init_stack(void);
00067 
00068 bool min_stack_depth(int mindep);   /*  TRUE if no error  */
00069 long stackdepth(void);
00070 void swap(void);
00071 void two_swap(void);
00072 
00073 #endif   /*  _TOKE_STACK_H    */

Generated on Fri Aug 18 14:03:39 2006 for Toke1.0 by  doxygen 1.4.4