Trailing-Edge
-
PDP-10 Archives
-
BB-J939E-BM
-
binary/chkext.b36
There is 1 other file named chkext.b36 in the archive. Click here to see a list.
MODULE CHKEXT(
MAIN=CHECK,
LANGUAGE(BLISS36))=
BEGIN
!+
! FUNCTION:
! See if this system supports extended addressing.
!-
! First make sure that the default environment information is correct.
%IF NOT %SWITCHES(TOPS20)
%THEN
%ERROR('Default monitor switch should be TOPS20 and isn''t.')
! Include something so as not to get a empty module error.
BIND X=0;
%ELSE
LIBRARY 'MONSYM';
LINKAGE
PSOUT_LINKAGE = JSYS(REGISTER = 1; REGISTER = 1) : SKIP(-1),
SMAP_LINKAGE = JSYS(REGISTER = 1, REGISTER = 2, REGISTER = 3) : SKIP(-1);
BIND ROUTINE
PSOUT_JSYS = PSOUT_ : PSOUT_LINKAGE,
SMAP_JSYS = SMAP_ : SMAP_LINKAGE;
MACRO
OUT_STRING(STR) = PSOUT_JSYS(%O'777777'^18
OR UPLIT(%ASCIZ %STRING(STR,%CHAR(%O'15',%O'12')));) %;
ROUTINE CHECK:NOVALUE=
BEGIN
IF SMAP_JSYS(0,$FHSLF^18 OR 1,SM_RD OR SM_WR OR SM_EX OR 1)
THEN
BEGIN
OUT_STRING('[This system supports extended addressing]');
END
ELSE
BEGIN
OUT_STRING('? This system does not support extended addressing');
OUT_STRING('');
OUT_STRING('[This error probably means that your system uses a KS');
OUT_STRING('CPU and isn''t supposed to support extended addressing,');
OUT_STRING('or it is a KL running a copy of Tops-20 older than');
OUT_STRING('release 5, which was the first monitor to fully support');
OUT_STRING('extended addressing]');
END;
END;
%FI
END ELUDOM