7f28c94eda
The interpreter more or less passes all the tests in the z-machine test suite. It should build for every target except Archos (for which it is disabled). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24267 a1c6a512-1295-4272-9138-f99709370657
56 lines
1.9 KiB
C
56 lines
1.9 KiB
C
/***************************************************************************
|
|
* __________ __ ___.
|
|
* Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
* Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
* Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
* Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
* \/ \/ \/ \/ \/
|
|
* $Id$
|
|
*
|
|
* Copyright (C) 2009 Torne Wuff
|
|
*
|
|
* 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 (at your option) any later version.
|
|
*
|
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
* KIND, either express or implied.
|
|
*
|
|
****************************************************************************/
|
|
#ifndef _FROTZPLUGIN_H_
|
|
#define _FROTZPLUGIN_H_
|
|
|
|
#include "plugin.h"
|
|
|
|
/*
|
|
* pretend stdio.h is implemented. references to FILE * still have to be
|
|
* changed to int, and references to NULL into -1, but there are less of those
|
|
*/
|
|
#define fread(ptr, size, nmemb, stream) rb->read(stream, ptr, size*nmemb)
|
|
#define fwrite(ptr, size, nmemb, stream) rb->write(stream, ptr, size*nmemb)
|
|
#define fclose(stream) rb->close(stream)
|
|
#define fseek(stream, offset, whence) rb->lseek(stream, offset, whence)
|
|
#define ftell(stream) rb->lseek(stream, 0, SEEK_CUR)
|
|
#define ferror(stream) 0
|
|
|
|
/*
|
|
* we need functions for character io
|
|
*/
|
|
extern int ungetc(int c, int f);
|
|
extern int fgetc(int f);
|
|
extern int fputc(int c, int f);
|
|
|
|
/*
|
|
* this is used instead of os_read_key for more prompts and the like
|
|
* since the menu can't be used there.
|
|
*/
|
|
extern void wait_for_key(void);
|
|
|
|
/*
|
|
* wrappers
|
|
*/
|
|
#define strchr(s, c) rb->strchr(s, c)
|
|
#define strcpy(dest, src) rb->strcpy(dest, src)
|
|
|
|
#endif /* _FROTZPLUGIN_H_ */
|