home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 6
/
AACD06.ISO
/
AACD
/
Programming
/
DOpus4-GPL
/
Program
/
about.c
next >
Wrap
C/C++ Source or Header
|
2000-01-27
|
5KB
|
167 lines
/*
Directory Opus 4
Original GPL release version 4.12
Copyright 1993-2000 Jonathan Potter
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 program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
All users of Directory Opus 4 (including versions distributed
under the GPL) are entitled to upgrade to the latest version of
Directory Opus version 5 at a reduced price. Please see
http://www.gpsoft.com.au for more information.
The release of Directory Opus 4 under the GPL in NO WAY affects
the existing commercial status of Directory Opus 5.
*/
#include "DOpus.h"
void about()
{
simplerequest(
"Directory Opus 4\n"
"Original GPL release version 4.12\n"
"Copyright 1993-2000 Jonathan Potter\n"
"\n"
"This program is free software; you can redistribute it and/or\n"
"modify it under the terms of the GNU General Public License\n"
"as published by the Free Software Foundation; either version 2\n"
"of the License, or (at your option) any later version.\n"
"\n"
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
"GNU General Public License for more details.\n"
"\n"
"All users of Directory Opus 4 (including versions distributed\n"
"under the GPL) are entitled to upgrade to the latest version of\n"
"Directory Opus version 5 at a reduced price. Please see\n"
"http://www.gpsoft.com.au for more information.",
globstring[STR_CONTINUE],NULL);
}
char *comp_date=__DATE__,*comp_time=__TIME__;
void give_version_info()
{
char buf[700];
char
prog_ver_buf[20],
lib_ver_buf[20],
kick_ver_buf[20],
wb_ver_buf[20],
proc_buf[10],
coproc_buf[10];
UWORD ver,rev;
int proc;
lsprintf(prog_ver_buf,"v%s",str_version_string);
lsprintf(lib_ver_buf,"v%ld.%ld",
DOpusBase->LibNode.lib_Version,DOpusBase->LibNode.lib_Revision);
if (DOSBase->dl_lib.lib_Version<36 ||
(GetVar("Kickstart",&kick_ver_buf[1],19,GVF_GLOBAL_ONLY))<1) {
char *ptr3;
ULONG ptr,*ptr2;
ptr2=(ULONG *)0xffffec;
ptr=0x1000000-(*ptr2);
ptr3=(char *)ptr+12;
ptr2=(ULONG *)ptr3;
ptr=*ptr2;
ver=ptr>>16;
rev=ptr&(((1<<32)-(1<<16))-1);
lsprintf(kick_ver_buf,"v%ld.%ld",ver,rev);
}
else kick_ver_buf[0]='v';
if (DOSBase->dl_lib.lib_Version<36 ||
(GetVar("Workbench",&wb_ver_buf[1],19,GVF_GLOBAL_ONLY))<1) {
struct Library *VersionBase;
if (VersionBase=OpenLibrary("version.library",0)) {
ver=VersionBase->lib_Version;
rev=VersionBase->lib_Revision;
CloseLibrary(VersionBase);
}
else ver=rev=0;
lsprintf(wb_ver_buf,"v%ld.%ld",ver,rev);
}
else wb_ver_buf[0]='v';
if (SysBase->AttnFlags&AFF_68010) {
if (SysBase->AttnFlags&AFF_68020) {
if (SysBase->AttnFlags&AFF_68030) {
if (SysBase->AttnFlags&AFF_68040) {
proc=40;
}
else proc=30;
}
else proc=20;
}
else proc=10;
}
else proc=0;
lsprintf(proc_buf,"680%02ld",proc);
if (SysBase->AttnFlags&AFF_68040 && SysBase->AttnFlags&AFF_FPU40) {
strcpy(coproc_buf,"68040 FPU");
}
else if (SysBase->AttnFlags&AFF_68881) {
if (SysBase->AttnFlags&AFF_68882) {
strcpy(coproc_buf,"68882");
}
else strcpy(coproc_buf,"68881");
}
else strcpy(coproc_buf,"None");
lsprintf(buf,
"%-42s\n\n"
" Directory Opus%24s \n"
" DOpus Library%25s \n\n"
" Compile time%26s \n"
" Compile date%26s \n\n"
" Port/screen name%22s \n\n"
" Kickstart%29s \n"
" Workbench%29s \n\n"
" Processor%29s \n"
" Math co-processor%21s \n"
" Graphics chipset%22s \n"
" Video system%26s ",
"Version information...",
prog_ver_buf,
lib_ver_buf,
comp_time,comp_date,
str_arexx_portname,
kick_ver_buf,
wb_ver_buf,
proc_buf,
coproc_buf,
(GfxBase->ChipRevBits0&GFXF_AA_ALICE)?"AGA":
((GfxBase->ChipRevBits0&GFXF_HR_AGNUS)?"ECS":"OLD"),
(scrdata_is_pal)?"PAL":"NTSC");
simplerequest(buf,globstring[STR_CONTINUE],NULL);
}