/*
 * res.h
 *
 * [Generated from res, 25 September 1996]
 */

#if !defined(__CC_NORCROFT) || !defined(__arm)
  #error You must use the Norcroft ARM Compiler for Sapphire programs
#endif

#pragma include_only_once
#pragma force_top_level

#ifndef __res_h
#define __res_h

#ifndef __sapphire_h
  #include "sapphire.h"
#endif

/*----- Overview ----------------------------------------------------------*
 *
 * Functions provided:
 *
 *  res_exists
 *  res_country
 *  res_find
 *  res_init
 */

/* --- res_exists --- *
 *
 * On entry:	R0 == pointer to pathname
 *
 * On exit:	CS if the file exists, CC otherwise
 *
 * Use:		Tries to find the named file.  The file is deemed to exist
 *		if OS_File can return a valid object type for it (i.e. not
 *		`non-existant object' or actually raising errors).
 */

extern routine res_exists;

/* --- res_country --- *
 *
 * On entry:	R0 == pointer to a buffer to use
 *
 * On exit:	R0 == pointer to country name (may not be in the buffer)
 *
 * Use:		Reads the name of the current country.  If no name can be
 *		found, it returns a pointer to the string `UK' which should
 *		do as a suitable default
 */

extern routine res_country;

/* --- res_find --- *
 *
 * On entry:	R0 == pointer to resource filename
 *		R1 == pointer to buffer to build filename in
 *
 * On exit:	R0 == pointer to start of full pathname (R1 on entry)
 *		R1 == pointer to terminating null character
 *		CS if the file could actually be found, CC otherwise
 *
 * Use:		Locates a resource file.  It searches, in order:
 *
 *		* resPrefix.Resources.leaf[suffix]
 *		* resPrefix.Resources.country.leaf[suffix]
 *		* resPrefix.leaf[suffix]
 *
 *		returning the last if none of them could be found.  Note
 *		that `country' here is the currently configured country
 *		setting, and `suffix' is the WIMP mode aspect ratio suffix
 *		for the current mode (RISC OS 3 only).
 */

extern routine res_find;

/* --- res_init --- *
 *
 * On entry:	R0 == pointer to application name
 *
 * On exit:	--
 *
 * Use:		Initialises the resource prefix to <appname$Dir>
 */

extern routine res_init;

/*----- That's all, folks -------------------------------------------------*/

#endif
