Array Manipulation Functions for C02 This library contains functions for handling non-string arrays. It is maintained separately from string.h so that it can be included only when needed, in order to reduce program size. Arrays may be declared with up to 256 elements, but only lengths of up to 255 characters may be passed to the array handling functions. Usage: at the beginning of the program use the directives #include The following functions are defined: memdst(&d); Sets array d as the destination array for subsequent memchr(). memcmp(), strcpy(), and memset() calls. This function is not part of the standard C and C++ string libraries. It is needed because of the parameter passing limitations of C02. Note: Aliased to the setdst() routine which sets variables dstlo and dsthi as a pointer to the array. memset(c, n); Fills first n bytes of the destination array set by a a prior memdst() call with character c. Note: dstlo and dsthi are left pointing to the destination array. memclr(n, &s); Memory Clear: Fills first n bytes of array s with the byte $00. Note: Calls memdst(&d) and memset(n,$00), leaving dstlo and dsthi pointing to s. p = memchr(c, n); Searches for character c in the first n bytes of the destination array set by a a prior memdst() call. Returns position of first occurance of character in array, or 255 if character was not found or a length of 0 was specified. Note: dstlo and dsthi are left pointing to the destination array. c = memcmp(n, &s); Compares up to n bytes of source array s against the destination array set by a prior memdst() call. Returns 255 if destination < source, 0 if destination = source, and 1 if destination > source. These results can be evaluated using the C02 unary comparator ! or the test-operators :+ or :-. Note: dstlo and dsthi are left pointing to the destination array. memcpy(n, &s); Copies n bytes of source array s into destination array set by prior memdst() call. Data in the destination array starting at position n is left undisturbed. Note: dstlo and dsthi are left pointing to the destination array. memswp(n, &s); Swaps n bytes of source array s with destination array set by prior memdst() call. Data in both arrays starting at position n is left undisturbed. Note: dstlo and dsthi are left pointing to the destination array. Note: This library expects the following functions to be defined setdst(&s); Set destination string pointer setsrc(&s); Set source string pointer and initialize index along with the zero page pairs strlo, strhi Source String Pointer dstlo, dsthi Destination String Pointer and the memory locations temp0, temp1 Temporary storage