MICROCOMPUTER HARDWARE AND SOFTWARE TECHNIQUES