MoreSystemMgr.c
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "MorePrefix.h"
00018 #include "MoreSystemMgr.h"
00019 #include "MorePrivate.h"
00020
00021 #include <AppLaunchCmd.h>
00022 #include <FeatureMgr.h>
00023 #include <Form.h>
00024
00025 Boolean MSysRomVersionCompatible( UInt32 requiredVersion,
00026 UInt16 launchFlags, UInt16 alertID )
00027 {
00028 UInt16 safeToCallAlertFlags;
00029 UInt32 romVersion;
00030
00031
00032 FtrGet( sysFtrCreator, sysFtrNumROMVersion, &romVersion );
00033 _require( romVersion >= requiredVersion, fail );
00034 return errNone;
00035 fail:
00036 safeToCallAlertFlags =
00037 sysAppLaunchFlagNewGlobals | sysAppLaunchFlagUIApp;
00038 if ( ( launchFlags & ( safeToCallAlertFlags ) )== safeToCallAlertFlags )
00039 {
00040 if ( alertID )
00041 FrmAlert( alertID );
00042
00043
00044 if ( romVersion < sysMakeROMVersion( 2, 0, 0, sysROMStageRelease, 0 ) )
00045 AppLaunchWithCommand( sysFileCDefaultApp,
00046 sysAppLaunchCmdNormalLaunch, NULL );
00047 }
00048 return sysErrRomIncompatible;
00049 }
00050
00051 Err MSysGetMyCreatorID( CreatorID_t* creatorId )
00052 {
00053 InternalCardNum_t card;
00054 LocalID db;
00055 Err err;
00056 err = SysCurAppDatabase( &card, &db );
00057 _reject( err, fail );
00058 err = DmDatabaseInfo( card, db, NULL, NULL, NULL, NULL, NULL, NULL,
00059 NULL, NULL, NULL, NULL, creatorId );
00060
00061 fail:
00062 return err;
00063 }