@@ -38,15 +38,15 @@ void SMELT_IMPL::smRelease()

bool SMELT_IMPL::smInit()
{
smLog("%s:"SLINE": Initalizing SMELT...\n",SYS_SDL_SRCFN);
smLog("%s:"SLINE": SMELT api version %d\n",SYS_SDL_SRCFN,SMELT_APILEVEL);
smLog("%s:" SLINE ": Initalizing SMELT...\n",SYS_SDL_SRCFN);
smLog("%s:" SLINE ": SMELT api version %d\n",SYS_SDL_SRCFN,SMELT_APILEVEL);
time_t t=time(NULL);
smLog("%s:"SLINE": Date %s",SYS_SDL_SRCFN,asctime(localtime(&t)));
smLog("%s:" SLINE ": Date %s",SYS_SDL_SRCFN,asctime(localtime(&t)));
#ifdef WIN32
OSVERSIONINFO os_ver; MEMORYSTATUS mem_st;
os_ver.dwOSVersionInfoSize=sizeof(os_ver);
GetVersionEx(&os_ver);
smLog("%s:"SLINE": OS: Windows %ld.%ld.%ld\n", SYS_SDL_SRCFN,os_ver.dwMajorVersion,os_ver.dwMinorVersion,os_ver.dwBuildNumber);
smLog("%s:" SLINE ": OS: Windows %ld.%ld.%ld\n", SYS_SDL_SRCFN,os_ver.dwMajorVersion,os_ver.dwMinorVersion,os_ver.dwBuildNumber);

int CPUInfo[4]={-1};
__cpuid(CPUInfo,0x80000000);
@@ -63,50 +63,50 @@ bool SMELT_IMPL::smInit()
memcpy(cpuName+32, CPUInfo, sizeof(CPUInfo));
}
while(*cpuName=' ')++cpuName;
smLog("%s:"SLINE": CPU: %s\n", SYS_SDL_SRCFN,cpuName);
smLog("%s:" SLINE ": CPU: %s\n", SYS_SDL_SRCFN,cpuName);
free(loced);

GlobalMemoryStatus(&mem_st);
smLog("%s:"SLINE": Memory: %ldK total, %ldK free\n", SYS_SDL_SRCFN,mem_st.dwTotalPhys/1024L,mem_st.dwAvailPhys/1024L);
smLog("%s:" SLINE ": Memory: %ldK total, %ldK free\n", SYS_SDL_SRCFN,mem_st.dwTotalPhys/1024L,mem_st.dwAvailPhys/1024L);
#else
system("uname -svm > os.out");
char osv[100];FILE* a=fopen("os.out","r");fgets(osv,100,a);fclose(a);
osv[strlen(osv)-1]='\0';
smLog("%s:"SLINE": OS: %s\n",SYS_SDL_SRCFN,osv);
smLog("%s:" SLINE ": OS: %s\n",SYS_SDL_SRCFN,osv);
system("rm os.out");

system("cat /proc/cpuinfo | grep name -m 1 > cpu.out");
a=fopen("cpu.out","r");fgets(osv,100,a);fclose(a);
osv[strlen(osv)-1]='\0';char *ptr=osv;while(*ptr!=':')++ptr;ptr+=2;
smLog("%s:"SLINE": CPU: %s\n",SYS_SDL_SRCFN,osv);
smLog("%s:" SLINE ": CPU: %s\n",SYS_SDL_SRCFN,osv);
system("rm cpu.out");

a=fopen("/proc/meminfo","r");
unsigned totalm,freem;
fscanf(a,"MemTotal: %u kB\n",&totalm);
fscanf(a,"MemFree: %u kB\n",&freem);
smLog("%s:"SLINE": RAM: %ukB installed, %ukB free\n",SYS_SDL_SRCFN,totalm,freem);
smLog("%s:" SLINE ": RAM: %ukB installed, %ukB free\n",SYS_SDL_SRCFN,totalm,freem);
fclose(a);
#endif
if(SDL_Init(SDL_INIT_VIDEO)==-1)
{
smLog("%s:"SLINE": SDL_Init() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
smLog("%s:" SLINE ": SDL_Init() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
return false;
}
if(SDL_GL_LoadLibrary(NULL)==-1)
{
smLog("%s:"SLINE": SDL_GL_LoadLibrary() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
smLog("%s:" SLINE ": SDL_GL_LoadLibrary() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
return false;
}
SDL_DisplayMode vidinfo;
if(SDL_GetDesktopDisplayMode(0,&vidinfo))
{
smLog("%s:"SLINE": SDL_GetDesktopDisplayMode() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
smLog("%s:" SLINE ": SDL_GetDesktopDisplayMode() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
SDL_Quit();
return false;
}
dispw=vidinfo.w;disph=vidinfo.h;
smLog("%s:"SLINE": Screen: %d x %d\n",SYS_SDL_SRCFN,dispw,disph);
smLog("%s:" SLINE ": Screen: %d x %d\n",SYS_SDL_SRCFN,dispw,disph);
Uint32 flags=SDL_WINDOW_OPENGL;
if(!windowed)flags|=SDL_WINDOW_FULLSCREEN;
SDL_Window *screen=SDL_CreateWindow(winTitle,SDL_WINDOWPOS_UNDEFINED,SDL_WINDOWPOS_UNDEFINED,scrw,scrh,flags);
@@ -122,7 +122,7 @@ bool SMELT_IMPL::smInit()
SDL_GL_SetSwapInterval(vsync?1:0);
if(!hwnd)
{
smLog("%s:"SLINE": SDL_CreateWindow() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
smLog("%s:" SLINE ": SDL_CreateWindow() failed with error %s\n",SYS_SDL_SRCFN,SDL_GetError());
SDL_Quit();
return false;
}
@@ -142,15 +142,15 @@ bool SMELT_IMPL::smInit()

void SMELT_IMPL::smFinale()
{
smLog("%s:"SLINE": Cleaning up...\n",SYS_SDL_SRCFN);
smLog("%s:" SLINE ": Cleaning up...\n",SYS_SDL_SRCFN);
clearQueue();finiOAL();finiOGL();
SDL_Quit();hwnd=0;
}

void SMELT_IMPL::smMainLoop()
{
if(!hwnd)return smLog("%s:"SLINE": Error: SMELT is not initialized.\n",SYS_SDL_SRCFN);
if(!pUpdateFunc) return smLog("%s:"SLINE": UpdateFunc is not defined.\n",SYS_SDL_SRCFN);
if(!hwnd)return smLog("%s:" SLINE ": Error: SMELT is not initialized.\n",SYS_SDL_SRCFN);
if(!pUpdateFunc) return smLog("%s:" SLINE ": UpdateFunc is not defined.\n",SYS_SDL_SRCFN);
Active=true;
for(;;)
{
@@ -0,0 +1,10 @@
CC= g++
CXXFLAGS= -Wall
LINK= -lz -lsmeltext
LINK_FOLDER= -L../../extensions/

all: anmutil dtputil
anmutil:
$(CC) anmutil.cpp -o anmutil $(CXXFLAGS) $(LINK_FOLDER) $(LINK)
dtputil:
$(CC) dtputil.cpp -o dtputil $(CXXFLAGS) $(LINK_FOLDER) $(LINK)