home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 8
/
FreshFishVol8-CD2.bin
/
bbs
/
util
/
mfrinced-1.0.lha
/
MFRinCED
/
src
/
SetDefPubScreen.c
< prev
Wrap
C/C++ Source or Header
|
1993-08-23
|
4KB
|
160 lines
#line 2
/*«««««««««««««««««««« SetDefPubScreen/main »»»»»»»»»»»»»»»»»»»»»»»»»»»»>
« »
« Program: SetDefPubScreen »
« »
« Module: SetDefPubScreen.c »
« »
« Abstract: CLI-prgm to change def PubScreen »
« »
« Author: Benjamin Lear (BL) »
« »
« Date: 17.8.1993 »
« »
« Last modified: 23.8.1993 »
« »
« Version: $VER: SetDefPubScreen 1.0 ( 23.8.1993 ) »
« »
«««««««««««««««««««««««««« ««««« · »»»»» »»»»»»»»»»»»»»»»»»»»»»»»»»»*/
/*««««««««««««««««««««««««««« DESCRIPTION »»»»»»»»»»»»»»»»»»»»»»»»»»»»>
« »
«««««««««««««««««««««««««« ««««« · »»»»» »»»»»»»»»»»»»»»»»»»»»»»»»»»*/
/*««««««««««««««««««««««««««««« HISTORY »»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»>
« »
«««««««««««««««««««««««««« ««««« · »»»»» »»»»»»»»»»»»»»»»»»»»»»»»»»»*/
/* «««««««««« preprocessor definitions »»»»»»»»» */
#define BL_STD 1
#define BL_INTUITION 1
#define BL_PROTOS 1
/* #define BL_DEBUG 1*/
#include <BL_std.h>
/* «««««««««««««««« Declarations »»»»»»»»»»»»»»»»» */
/* globals for messages to user */
extern UBYTE currname[];
/* ««««««««««««««««« Prototypes »»»»»»»»»»»»»»»»»» */
void cleanup( UBYTE *str, int code );
/* ««««««««««««««««« Definitions »»»»»»»»»»»»»»»»» */
struct Library *IntuitionBase = NULL;
struct Library *GfxBase = NULL;
/* «««««««««««««««««« Functions »»»»»»»»»»»»»»»»»» */
/* ««««««««« Internal Functions »»»»»»»»» */
/*-\i«««««««««««««««««« SetDefPubScreen/main »»»»»»»»»»»»»»»»»»»»»»»»»»>
<
< NAME
< main()
< SYNOPSIS
<
< FUNCTION
< Change the Default Publicscreen
< INPUTS
< Name of new Publicscreen ( -> argv[1] )
< RESULT
<
< EXAMPLE
< NOTES
< BUGS
< SEE ALSO
<
<««««««««««««««««««««««««« ««««« · »»»»» »»»»»»»»»»»»»»»»»»»»»»»»»»*/
void
main(int argc, char** argv)
{
struct Library *OpenLibrary();
/*
* Currname is the name of the default public screen.
* It's the null string if it is the Workbench.
*/
UBYTE currname[ MAXPUBSCREENNAME+256] = "";
/* a small check if arg could be correctly */
if ( argc != 2 )
{
exit(0);
}
if (! (IntuitionBase = OpenLibrary("intuition.library", 36L) ) )
cleanup( "no v36 Intuition", 20 );
if ( ! (GfxBase = OpenLibrary("graphics.library", 36L) ) )
cleanup( "no v36 Graphics", 20 );
/* recieve the name of the default public screen */
GetDefaultPubScreen( currname );
/* create a environment variable to store the old value */
strins(currname,"PUBLICSCREEN=" );
putenv( currname );
#ifdef BL_DEBUG
printf( " Pubscreen was: %s\n", currname );
#endif // BL_DEBUG
/* changing the public screen */
SetDefaultPubScreen( (UBYTE *) argv[1] );
#ifdef BL_DEBUG
GetDefaultPubScreen( currname );
printf( " Pubscreen is now: %s\n", currname,0,0 );
#endif // BL_DEBUG
cleanup( "O.K", 0 );
}
/* ----------------------------- · ---------------------------- */
/* Function cleanup() tries to do exactly what its name proposes */
void
cleanup( UBYTE *str, int code )
{
if ( str ) printf( "%s\n", str );
if (GfxBase) CloseLibrary(GfxBase);
if (IntuitionBase) CloseLibrary(IntuitionBase);
exit ( code );
}
/* ««« THE · END »»» */