Mercurial > hg > Members > kono > nitros9-code
diff 3rdparty/packages/cc/sources/mod.a @ 867:0198655f2552
Added sources
author | boisy |
---|---|
date | Thu, 16 Jan 2003 19:54:21 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/3rdparty/packages/cc/sources/mod.a Thu Jan 16 19:54:21 2003 +0000 @@ -0,0 +1,49 @@ +* +* Module access system calls +* + +shiftla macro + rept \1 + lsla + endr + endm + + use ..../defs/os9defs.a + psect mod_a,0,0,1,0,0 + +* modlink(modname,type,language) +modlink: pshs y,u save environment + ldx 6,s get module name pointer + lda 9,s get type + shiftla 4 shift to m.s nibble + ora 11,s and language + + os9 F$LINK call os9 + +* the only value returned is a pointer to the module +* other values can be found in the module itself +modcom + tfr u,d C return value always in d reg. + puls y,u restore environment + lbcs _os9err + rts + +* modload(modname,type,language) +modload: pshs y,u save environment + ldx 6,s get module name pointer + lda 9,s get type + shiftla 4 + ora 11,s and type + + os9 F$LOAD call os9 + + bra modcom common code + +* munlink(mod) +munlink: pshs u save register variable + ldu 4,s get module pointer + + os9 F$UNLINK call os9 + puls u restore register variable + lbra _sysret usual return + endsect