107 lines
4.6 KiB
Plaintext
107 lines
4.6 KiB
Plaintext
% Definition of EM procedural interface: hand-written definitions
|
|
|
|
% C_open | char *:filename | <hand-written>
|
|
% C_busy | | <hand-written>
|
|
% C_close | | <hand-written>
|
|
% C_magic | | <hand-written>
|
|
|
|
C_df_dlb | label:l | DFDLB(l); NL()
|
|
C_df_dnam | char *:s | DFDNAM(s); NL()
|
|
C_df_ilb | label:l | DFILB(l); NL()
|
|
|
|
C_pro | char *:s arith:l |
|
|
PS(ps_pro); PNAM(s); COMMA(); CST(l); NL()
|
|
C_pro_narg | char *:s |
|
|
PS(ps_pro); PNAM(s); COMMA(); CCEND(); NL()
|
|
C_end | arith:l | PS(ps_end); CST(l); NL()
|
|
C_end_narg | | PS(ps_end); CCEND(); NL()
|
|
|
|
C_exa_dnam | char *:s | PS(ps_exa); DNAM(s); NL()
|
|
C_exa_dlb | label:l | PS(ps_exa); DLB(l); NL()
|
|
C_exp | char *:s | PS(ps_exp); PNAM(s); NL()
|
|
C_ina_dnam | char *:s | PS(ps_ina); DNAM(s); NL()
|
|
C_ina_dlb | label:l | PS(ps_ina); DLB(l); NL()
|
|
C_inp | char *:s | PS(ps_inp); PNAM(s); NL()
|
|
|
|
C_bss_cst | arith:n arith:w int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); CST(w); COMMA(); CST((arith) i); NL()
|
|
C_bss_icon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); WCON(sp_icon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_bss_ucon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); WCON(sp_ucon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_bss_fcon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); WCON(sp_fcon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_bss_dnam | arith:n char *:s arith:offs int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); NOFF(s, offs); COMMA(); CST((arith) i); NL()
|
|
C_bss_dlb | arith:n label:l arith:offs int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); DOFF(l, offs); COMMA(); CST((arith) i); NL()
|
|
C_bss_ilb | arith:n label:l int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); ILB(l); COMMA(); CST((arith) i); NL()
|
|
C_bss_pnam | arith:n char *:s int:i |
|
|
PS(ps_bss); DCST(n); COMMA(); PNAM(s); COMMA(); CST((arith) i); NL()
|
|
|
|
C_hol_cst | arith:n arith:w int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); CST(w); COMMA(); CST((arith) i); NL()
|
|
C_hol_icon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); WCON(sp_icon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_hol_ucon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); WCON(sp_ucon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_hol_fcon | arith:n char *:s arith:sz int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); WCON(sp_fcon, s, sz); COMMA(); CST((arith) i); NL()
|
|
C_hol_dnam | arith:n char *:s arith:offs int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); NOFF(s, offs); COMMA(); CST((arith) i); NL()
|
|
C_hol_dlb | arith:n label:l arith:offs int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); DOFF(l, offs); COMMA(); CST((arith) i); NL()
|
|
C_hol_ilb | arith:n label:l int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); ILB(l); COMMA(); CST((arith) i); NL()
|
|
C_hol_pnam | arith:n char *:s int:i |
|
|
PS(ps_hol); DCST(n); COMMA(); PNAM(s); COMMA(); CST((arith) i); NL()
|
|
|
|
C_con_cst | arith:l | PS(ps_con); CST(l); CEND(); NL()
|
|
C_con_icon | char *:val arith:siz |
|
|
PS(ps_con); WCON(sp_icon, val, siz); CEND(); NL()
|
|
C_con_ucon | char *:val arith:siz |
|
|
PS(ps_con); WCON(sp_ucon, val, siz); CEND(); NL()
|
|
C_con_fcon | char *:val arith:siz |
|
|
PS(ps_con); WCON(sp_fcon, val, siz); CEND(); NL()
|
|
C_con_scon | char *:str arith:siz |
|
|
PS(ps_con); SCON(str, siz); CEND(); NL()
|
|
C_con_dnam | char *:str arith:val |
|
|
PS(ps_con); NOFF(str, val); CEND(); NL()
|
|
C_con_dlb | label:l arith:val |
|
|
PS(ps_con); DOFF(l, val); CEND(); NL()
|
|
C_con_ilb | label:l | PS(ps_con); ILB(l); CEND(); NL()
|
|
C_con_pnam | char *:str | PS(ps_con); PNAM(str); CEND(); NL()
|
|
|
|
C_rom_cst | arith:l | PS(ps_rom); CST(l); CEND(); NL()
|
|
C_rom_icon | char *:val arith:siz |
|
|
PS(ps_rom); WCON(sp_icon, val, siz); CEND(); NL()
|
|
C_rom_ucon | char *:val arith:siz |
|
|
PS(ps_rom); WCON(sp_ucon, val, siz); CEND(); NL()
|
|
C_rom_fcon | char *:val arith:siz |
|
|
PS(ps_rom); WCON(sp_fcon, val, siz); CEND(); NL()
|
|
C_rom_scon | char *:str arith:siz |
|
|
PS(ps_rom); SCON(str, siz); CEND(); NL()
|
|
C_rom_dnam | char *:str arith:val |
|
|
PS(ps_rom); NOFF(str, val); CEND(); NL()
|
|
C_rom_dlb | label:l arith:val |
|
|
PS(ps_rom); DOFF(l, val); CEND(); NL()
|
|
C_rom_ilb | label:l | PS(ps_rom); ILB(l); CEND(); NL()
|
|
C_rom_pnam | char *:str | PS(ps_rom); PNAM(str); CEND(); NL()
|
|
|
|
C_cst | arith:l | COMMA(); CST(l)
|
|
C_icon | char *:val arith:siz | COMMA(); WCON(sp_icon, val, siz)
|
|
C_ucon | char *:val arith:siz | COMMA(); WCON(sp_ucon, val, siz)
|
|
C_fcon | char *:val arith:siz | COMMA(); WCON(sp_fcon, val, siz)
|
|
C_scon | char *:str arith:siz | COMMA(); SCON(str, siz)
|
|
C_dnam | char *:str arith:val | COMMA(); NOFF(str, val)
|
|
C_dlb | label:l arith:val | COMMA(); DOFF(l, val)
|
|
C_ilb | label:l | COMMA(); ILB(l)
|
|
C_pnam | char *:str | COMMA(); PNAM(str)
|
|
|
|
C_mes_begin | int:ms | PS(ps_mes); CST((arith)ms)
|
|
C_mes_end | | CEND(); NL()
|
|
|
|
% Yes, there really is a C_exc routine...
|
|
C_exc | arith:c1 arith:c2 | PS(ps_exc); CST(c1); COMMA(); CST(c2); NL()
|