/*
 * runtime.i86  -  Definitions for MGL runtime module
 *
 * Copyright (C) 2003-2007 Gero Kuhlmann   <gero@gkminix.han.de>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 * $Id: runtime.i86,v 1.8 2007/01/06 18:31:38 gkminix Exp $
 */

#ifndef HEADERS_RUNTIME_I86
#define HEADERS_RUNTIME_I86


/*
 * Now include the main header file.
 */
#define GAS_INCLUDE
#include "headers/runtime.h"


/*
 * The runtime module can be loaded by different methods: from a netboot
 * or PXE bootrom, or while running under DOS. The following structure is
 * used to pass all necessary parameters from the loader to the runtime
 * module.
 */
		.struct	0
rtload_flags:	.struct	.+2		/* flags (see below) */
rtload_bsize:	.struct	.+2		/* size of BOOTP record */
rtload_bootp:	.struct	.+4		/* far pointer to BOOTP record */
rtload_pxe:	.struct	.+4		/* far pointer to !PXE structure */

#define RTLOAD_SIZE	12


#define RTFLAG_LOAD	0x0001		/* set if we can accept RTERROR_LOAD */
#define RTFLAG_RUN	0x0002		/* set if we can accept RTERROR_RUN */
#define RTFLAG_BOOTP	0x0004		/* set if we can accept BOOTP changes */
#define RTFLAG_TRAP	0x0008		/* set if we can accept INT3 traps */

#endif

