(* Release 3.10 *) (*-------------------------------------------------------------------------* * * * MEM.DEF - Modula-2 interface to MEM.H * * * * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. * * All Rights Reserved * * * *--------------------------------------------------------------------------*) (*# project("#set tsc='on'") *) (*# call(o_a_size=>off, o_a_copy=>off, c_conv=>on, result_optional=>on) *) (*# module(implementation=>off, init_code=>off) *) (*# name(prefix=>c) *) DEFINITION MODULE mem; PROCEDURE memccpy(_dest,_source: ADDRESS; _c: WORD; _num: CARDINAL): ADDRESS; PROCEDURE memchr(_s: ADDRESS; _c: WORD; _num: CARDINAL): ADDRESS; PROCEDURE memcmp(_s1,_s2: ADDRESS; _num: CARDINAL): INTEGER; PROCEDURE memcpy(_dest,_source: ADDRESS; _num: CARDINAL): ADDRESS; PROCEDURE memicmp(_s1,s2: ADDRESS; _num: CARDINAL): INTEGER; PROCEDURE memmove(_dest,_source: ADDRESS; _num: CARDINAL): ADDRESS; PROCEDURE memset(_s: ADDRESS; _c: WORD; _num: CARDINAL): ADDRESS; PROCEDURE movedata(_sseg,_soff,_dseg,_dofs,_num: CARDINAL); PROCEDURE movmem(_src,_dest: ADDRESS; _length: CARDINAL); PROCEDURE setmem(_dest: ADDRESS; _length: CARDINAL; _value: CHAR); PROCEDURE memwmove(_dest,_source: ADDRESS; _num: CARDINAL): ADDRESS; PROCEDURE memwset(_s: ADDRESS; _c: WORD; _num: CARDINAL): ADDRESS; PROCEDURE memwcpy(_dest,_source: ADDRESS; _num: CARDINAL): ADDRESS; (* **** Huge objects need to be handled. *) PROCEDURE hmemccpy(_dest,_source: FarADDRESS; _c: WORD; _num: CARDINAL): FarADDRESS; PROCEDURE hmemchr(_s: FarADDRESS; _c: WORD; _num: CARDINAL): FarADDRESS; PROCEDURE hmemcmp(_s1,_s2: FarADDRESS; _num: CARDINAL): INTEGER; PROCEDURE hmemcpy(_dest,_source: FarADDRESS; _num: CARDINAL): FarADDRESS; PROCEDURE hmemicmp(_s1,s2: FarADDRESS; _num: CARDINAL): INTEGER; PROCEDURE hmemset(_s: FarADDRESS; _c: WORD; _num: CARDINAL): FarADDRESS; END mem.