$NOGEN $SAVE NOLIST %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' EIOS PRIMITIVE CONFIGURATION MACROS %' %' THESE MACROS ARE USED TO BUILD THE ENTRY TABLE USED BY %' THE EIOS ENTRY ROUTINE. %' %' PRIMITIVES NOT CURRENTLY SUPPORTED BY THE iRMX 86 EIOS %' APPEAR IN THE TABLE AS RQNOTSUPPORTED. %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CGROUP GROUP CODE, & JOB_SEG, & SYNCHRONOUS_SEG, & CONFIGURATION_SEG, & GROUPUSER_SEG, & ALLOCATION_SEG CODE SEGMENT WORD PUBLIC 'CODE' ASSUME CS:CGROUP EXTRN NOTSUPPORTED:NEAR EXTRN NOTCONFIGURED:NEAR NUM_JOB_XFACE EQU 4 ; 4 PRIMITIVES INCLUDED NUM_SYNCH_XFACE EQU 28 ; 28 PRIMITIVES INCLUDED NUM_CNFIG_XFACE EQU 4 ; 4 PRIMITIVES INCLUDED NUM_GPUSR_XFACE EQU 7 ; 7 PRIMITIVES INCLUDED NUM_ALLOC_XFACE EQU 5 ; 5 PRIMITIVES INCLUDED ENTRY_VECTOR LABEL WORD PUBLIC ENTRY_VECTOR DW NUM_JOB_XFACE, CGROUP:JOB_INTERFACE DW NUM_SYNCH_XFACE, CGROUP:SYNCHRONOUS_INTERFACE DW NUM_CNFIG_XFACE, CGROUP:CONFIGURATION_INTERFACE DW NUM_GPUSR_XFACE, CGROUP:GROUP_USER_INTERFACE DW NUM_ALLOC_XFACE, CGROUP:ALLOCATION_INTERFACE CODE ENDS $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' GEN_ENTRY MACRO DEFINITION %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %*DEFINE(GEN_ENTRY(NAME,SEG,WHERE))(%' EXTRN %NAME:NEAR %SEG SEGMENT ORG %WHERE DW CGROUP:%NAME %SEG ENDS )%' $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' JOB INTERFACE %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; JOB_SEG SEGMENT WORD PUBLIC 'CODE' JOB_INTERFACE LABEL WORD DW CGROUP:NOTCONFIGURED ; RQCREATEIOJOB DW CGROUP:NOTCONFIGURED ; RQEXITIOJOB DW CGROUP:NOTCONFIGURED ; RQSTARTIOJOB DW CGROUP:NOTCONFIGURED ; RQABORTIOJOB JOB_SEG ENDS %*DEFINE(RQCREATEIOJOB)(%GEN_ENTRY(CREATEIOJOB,JOB_SEG,000H)) %*DEFINE(RQEXITIOJOB)(%GEN_ENTRY(EXITIOJOB,JOB_SEG,002H) %' %' Include RQABORTIOJOB with the selection of RQEXITIOJOB %' %GEN_ENTRY(ABORTIOJOB,JOB_SEG,006H)) %*DEFINE(RQSTARTIOJOB)(%GEN_ENTRY(STARTIOJOB,JOB_SEG,004H)) $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' SYNCHRONOUS INTERFACE %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SYNCHRONOUS_SEG SEGMENT WORD PUBLIC 'CODE' SYNCHRONOUS_INTERFACE LABEL WORD DW CGROUP:NOTSUPPORTED ; RQSGETPATH DW CGROUP:NOTCONFIGURED ; RQSWRITEMOVE DW CGROUP:NOTCONFIGURED ; RQSREADMOVE DW CGROUP:NOTCONFIGURED ; RQSATTACHFILE DW CGROUP:NOTCONFIGURED ; RQSCREATEFILE DW CGROUP:NOTCONFIGURED ; RQSCREATEDIRECTORY DW CGROUP:NOTCONFIGURED ; RQSDELETEFILE DW CGROUP:NOTCONFIGURED ; RQSCHANGEACCESS DW CGROUP:NOTCONFIGURED ; RQSRENAMEFILE DW CGROUP:NOTCONFIGURED ; RQSGETFILESTATUS DW CGROUP:NOTCONFIGURED ; RQSCATALOGCONNECTION DW CGROUP:NOTCONFIGURED ; RQSUNCATALOGCONNECTION DW CGROUP:NOTCONFIGURED ; RQSLOOKUPCONNECTION DW CGROUP:NOTCONFIGURED ; RQSDELETECONNECTION DW CGROUP:NOTCONFIGURED ; RQSGETCONNECTIONSTATUS DW CGROUP:NOTCONFIGURED ; RQSOPEN DW CGROUP:NOTCONFIGURED ; RQSCLOSE DW CGROUP:NOTSUPPORTED ; RQSREADLOCATE DW CGROUP:NOTSUPPORTED ; RQSWRITELOCATE DW CGROUP:NOTSUPPORTED ; RQSWRITEUPDATE DW CGROUP:NOTCONFIGURED ; RQSSEEK DW CGROUP:NOTCONFIGURED ; RQSTRUNCATEFILE DW CGROUP:NOTCONFIGURED ; RQSSPECIAL DW CGROUP:NOTSUPPORTED ; RQSCREATEALIAS DW CGROUP:NOTSUPPORTED ; RQSCREATELOGICALALIAS DW CGROUP:NOTSUPPORTED ; RQSDELETELOGICALNAME DW CGROUP:NOTSUPPORTED ; RQSSETEXTENSIONDATA DW CGROUP:NOTSUPPORTED ; RQSGETEXTENSIONDATA SYNCHRONOUS_SEG ENDS %*DEFINE(RQSWRITEMOVE)(%GEN_ENTRY(SWRITEMOVE,SYNCHRONOUS_SEG,002H)) %*DEFINE(RQSREADMOVE)(%GEN_ENTRY(SREADMOVE,SYNCHRONOUS_SEG,004H)) %*DEFINE(RQSATTACHFILE)(%GEN_ENTRY(SATTACHFILE,SYNCHRONOUS_SEG,006H)) %*DEFINE(RQSCREATEFILE)(%GEN_ENTRY(SCREATEFILE,SYNCHRONOUS_SEG,008H)) %*DEFINE(RQSCREATEDIRECTORY)(%GEN_ENTRY(SCREATEDIRECTORY,SYNCHRONOUS_SEG,00AH)) %*DEFINE(RQSDELETEFILE)(%GEN_ENTRY(SDELETEFILE,SYNCHRONOUS_SEG,00CH)) %*DEFINE(RQSCHANGEACCESS)(%GEN_ENTRY(SCHANGEACCESS,SYNCHRONOUS_SEG,00EH)) %*DEFINE(RQSRENAMEFILE)(%GEN_ENTRY(SRENAMEFILE,SYNCHRONOUS_SEG,010H)) %*DEFINE(RQSGETFILESTATUS)(%GEN_ENTRY(SGETFILESTATUS,SYNCHRONOUS_SEG,012H)) %*DEFINE(RQSCATALOGCONNECTION)(%GEN_ENTRY(SCATALOGCONNECTION,SYNCHRONOUS_SEG,014H)) %*DEFINE(RQSUNCATALOGCONNECTION)(%GEN_ENTRY(SUNCATALOGCONNECTION,SYNCHRONOUS_SEG,016H)) %*DEFINE(RQSLOOKUPCONNECTION)(%GEN_ENTRY(SLOOKUPCONNECTION,SYNCHRONOUS_SEG,018H)) %*DEFINE(RQSDELETECONNECTION)(%GEN_ENTRY(SDELETECONNECTION,SYNCHRONOUS_SEG,01AH)) %*DEFINE(RQSGETCONNECTIONSTATUS)(%GEN_ENTRY(SGETCONNECTIONSTATUS,SYNCHRONOUS_SEG,01CH)) %*DEFINE(RQSOPEN)(%GEN_ENTRY(SOPEN,SYNCHRONOUS_SEG,01EH)) %*DEFINE(RQSCLOSE)(%GEN_ENTRY(SCLOSE,SYNCHRONOUS_SEG,020H)) %*DEFINE(RQSSEEK)(%GEN_ENTRY(SSEEK,SYNCHRONOUS_SEG,028H)) %*DEFINE(RQSTRUNCATEFILE)(%GEN_ENTRY(STRUNCATEFILE,SYNCHRONOUS_SEG,02AH)) %*DEFINE(RQSSPECIAL)(%GEN_ENTRY(SSPECIAL,SYNCHRONOUS_SEG,02CH)) $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' CONFIGURATION INTERFACE %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CONFIGURATION_SEG SEGMENT WORD PUBLIC 'CODE' CONFIGURATION_INTERFACE LABEL WORD DW CGROUP:NOTCONFIGURED ; RQLOGICALATTACHDEVICE DW CGROUP:NOTCONFIGURED ; RQLOGICALDETACHDEVICE DW CGROUP:NOTCONFIGURED ; RQHYBRIDDETACHDEVICE DW CGROUP:NOTCONFIGURED ; RQGETLOGICALDEVICESTATUS CONFIGURATION_SEG ENDS %*DEFINE(RQLOGICALATTACHDEVICE)(%GEN_ENTRY(LOGICALATTACHDEVICE,CONFIGURATION_SEG,000H)) %*DEFINE(RQLOGICALDETACHDEVICE)(%GEN_ENTRY(LOGICALDETACHDEVICE,CONFIGURATION_SEG,002H)) %*DEFINE(RQHYBRIDDETACHDEVICE)(%GEN_ENTRY(HYBRIDDETACHDEVICE,CONFIGURATION_SEG,004H)) %*DEFINE(RQGETLOGICALDEVICESTATUS)(%GEN_ENTRY(GETLOGICALDEVICESTATUS,CONFIGURATION_SEG,006H)) $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' GROUP AND USER INTERFACE %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; GROUPUSER_SEG SEGMENT WORD PUBLIC 'CODE' GROUP_USER_INTERFACE LABEL WORD DW CGROUP:NOTSUPPORTED ; RQCREATEUSERDEFINITION DW CGROUP:NOTSUPPORTED ; RQDELETEUSERDEFINTIION DW CGROUP:NOTSUPPORTED ; RQCREATEGROUPDEFINITION DW CGROUP:NOTSUPPORTED ; RQGETGROUPMEMBERS DW CGROUP:NOTSUPPORTED ; RQADDGROUPMEMBER DW CGROUP:NOTSUPPORTED ; RQDELETEGROUPMEMBER DW CGROUP:NOTSUPPORTED ; RQDELETEGROUPDEFINITION GROUPUSER_SEG ENDS $EJECT %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; %' %' ALLOCATION INTERFACE %' %';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ALLOCATION_SEG SEGMENT WORD PUBLIC 'CODE' ALLOCATION_INTERFACE LABEL WORD DW CGROUP:NOTSUPPORTED ; RQFORECASTDEVICES DW CGROUP:NOTSUPPORTED ; RQALLOCATEDEVICE DW CGROUP:NOTSUPPORTED ; RQDEALLOCATEDEVICE DW CGROUP:NOTSUPPORTED ; RQCREATEHYBRIDUSER DW CGROUP:NOTSUPPORTED ; RQDELETEHYBRIDUSER ALLOCATION_SEG ENDS $RESTORE