toupper_.c revision 1.6
11.6Scgd/*	$NetBSD: toupper_.c,v 1.6 1995/02/27 05:54:47 cgd Exp $	*/
21.6Scgd
31.1Sjtc/*
41.1Sjtc * Copyright (c) 1993 Winning Strategies, Inc.
51.1Sjtc * All rights reserved.
61.1Sjtc *
71.1Sjtc * Redistribution and use in source and binary forms, with or without
81.1Sjtc * modification, are permitted provided that the following conditions
91.1Sjtc * are met:
101.1Sjtc * 1. Redistributions of source code must retain the above copyright
111.1Sjtc *    notice, this list of conditions and the following disclaimer.
121.1Sjtc * 2. Redistributions in binary form must reproduce the above copyright
131.1Sjtc *    notice, this list of conditions and the following disclaimer in the
141.1Sjtc *    documentation and/or other materials provided with the distribution.
151.1Sjtc * 3. All advertising materials mentioning features or use of this software
161.1Sjtc *    must display the following acknowledgement:
171.1Sjtc *      This product includes software developed by Winning Strategies, Inc.
181.1Sjtc * 4. The name of the author may not be used to endorse or promote products
191.5Sjtc *    derived from this software without specific prior written permission
201.1Sjtc *
211.1Sjtc * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
221.1Sjtc * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
231.1Sjtc * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
241.1Sjtc * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
251.1Sjtc * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
261.1Sjtc * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
271.1Sjtc * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
281.1Sjtc * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
291.1Sjtc * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
301.1Sjtc * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
311.1Sjtc */
321.1Sjtc
331.1Sjtc#if defined(LIBC_RCS) && !defined(lint)
341.6Scgdstatic char rcsid[] = "$NetBSD: toupper_.c,v 1.6 1995/02/27 05:54:47 cgd Exp $";
351.1Sjtc#endif /* LIBC_RCS and not lint */
361.1Sjtc
371.1Sjtc#include <stdio.h>
381.1Sjtc#include <ctype.h>
391.1Sjtc
401.1Sjtc#if EOF != -1
411.1Sjtc#error "EOF != -1"
421.1Sjtc#endif
431.1Sjtc
441.1Sjtcconst short _C_toupper_[1 + 256] = {
451.1Sjtc	EOF,
461.1Sjtc	0x00,	0x01,	0x02,	0x03,	0x04,	0x05,	0x06,	0x07,
471.1Sjtc	0x08,	0x09,	0x0a,	0x0b,	0x0c,	0x0d,	0x0e,	0x0f,
481.1Sjtc	0x10,	0x11,	0x12,	0x13,	0x14,	0x15,	0x16,	0x17,
491.1Sjtc	0x18,	0x19,	0x1a,	0x1b,	0x1c,	0x1d,	0x1e,	0x1f,
501.1Sjtc	0x20,	0x21,	0x22,	0x23,	0x24,	0x25,	0x26,	0x27,
511.1Sjtc	0x28,	0x29,	0x2a,	0x2b,	0x2c,	0x2d,	0x2e,	0x2f,
521.1Sjtc	0x30,	0x31,	0x32,	0x33,	0x34,	0x35,	0x36,	0x37,
531.1Sjtc	0x38,	0x39,	0x3a,	0x3b,	0x3c,	0x3d,	0x3e,	0x3f,
541.1Sjtc	0x40,	0x41,	0x42,	0x43,	0x44,	0x45,	0x46,	0x47,
551.1Sjtc	0x48,	0x49,	0x4a,	0x4b,	0x4c,	0x4d,	0x4e,	0x4f,
561.1Sjtc	0x50,	0x51,	0x52,	0x53,	0x54,	0x55,	0x56,	0x57,
571.1Sjtc	0x58,	0x59,	0x5a,	0x5b,	0x5c,	0x5d,	0x5e,	0x5f,
581.1Sjtc	0x60,	'A',	'B',	'C',	'D',	'E',	'F',	'G',
591.1Sjtc	'H',	'I',	'J',	'K',	'L',	'M',	'N',	'O',
601.1Sjtc	'P',	'Q',	'R',	'S',	'T',	'U',	'V',	'W',
611.1Sjtc	'X',	'Y',	'Z',	0x7b,	0x7c,	0x7d,	0x7e,	0x7f,
621.1Sjtc	0x80,	0x81,	0x82,	0x83,	0x84,	0x85,	0x86,	0x87,
631.1Sjtc	0x88,	0x89,	0x8a,	0x8b,	0x8c,	0x8d,	0x8e,	0x8f,
641.1Sjtc	0x90,	0x91,	0x92,	0x93,	0x94,	0x95,	0x96,	0x97,
651.1Sjtc	0x98,	0x99,	0x9a,	0x9b,	0x9c,	0x9d,	0x9e,	0x9f,
661.1Sjtc	0xa0,	0xa1,	0xa2,	0xa3,	0xa4,	0xa5,	0xa6,	0xa7,
671.1Sjtc	0xa8,	0xa9,	0xaa,	0xab,	0xac,	0xad,	0xae,	0xaf,
681.1Sjtc	0xb0,	0xb1,	0xb2,	0xb3,	0xb4,	0xb5,	0xb6,	0xb7,
691.1Sjtc	0xb8,	0xb9,	0xba,	0xbb,	0xbc,	0xbd,	0xbe,	0xbf,
701.1Sjtc	0xc0,	0xc1,	0xc2,	0xc3,	0xc4,	0xc5,	0xc6,	0xc7,
711.1Sjtc	0xc8,	0xc9,	0xca,	0xcb,	0xcc,	0xcd,	0xce,	0xcf,
721.1Sjtc	0xd0,	0xd1,	0xd2,	0xd3,	0xd4,	0xd5,	0xd6,	0xd7,
731.1Sjtc	0xd8,	0xd9,	0xda,	0xdb,	0xdc,	0xdd,	0xde,	0xdf,
741.1Sjtc	0xe0,	0xe1,	0xe2,	0xe3,	0xe4,	0xe5,	0xe6,	0xe7,
751.1Sjtc	0xe8,	0xe9,	0xea,	0xeb,	0xec,	0xed,	0xee,	0xef,
761.1Sjtc	0xf0,	0xf1,	0xf2,	0xf3,	0xf4,	0xf5,	0xf6,	0xf7,
771.1Sjtc	0xf8,	0xf9,	0xfa,	0xfb,	0xfc,	0xfd,	0xfe,	0xff
781.1Sjtc};
791.1Sjtc
801.1Sjtcconst short *_toupper_tab_ = _C_toupper_;
811.3Smycroft
821.3Smycroft#undef toupper
831.4Sjtcint
841.3Smycrofttoupper(c)
851.3Smycroft	int c;
861.3Smycroft{
871.3Smycroft	return((_toupper_tab_ + 1)[c]);
881.3Smycroft}
89