source: git/src/useful.c

walls-data
Last change on this file was c606770, checked in by Olly Betts <olly@…>, 4 days ago

Try to eliminate osdepend.{c,h} again

  • Property mode set to 100644
File size: 1.5 KB
Line 
1/* useful.c
2 * Copyright (C) 1993-2021 Olly Betts
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17 */
18
19#include <config.h>
20
21#include "useful.h"
22
23#ifdef WORDS_BIGENDIAN
24
25extern void
26useful_put16(int16_t word, FILE *fh)
27{
28   uint16_t w = (uint16_t)word;
29   PUTC((char)(w), fh);
30   PUTC((char)(w >> 8l), fh);
31}
32
33extern void
34useful_put32(int32_t word, FILE *fh)
35{
36   uint32_t w = (uint32_t)word;
37   PUTC((char)(w), fh);
38   PUTC((char)(w >> 8l), fh);
39   PUTC((char)(w >> 16l), fh);
40   PUTC((char)(w >> 24l), fh);
41}
42
43extern int16_t
44useful_get16(FILE *fh)
45{
46   uint16_t w;
47   w = GETC(fh);
48   w |= (uint16_t)(GETC(fh) << 8l);
49   return (int16_t)w;
50}
51
52extern int32_t
53useful_get32(FILE *fh)
54{
55   uint32_t w;
56   w = GETC(fh);
57   w |= (uint32_t)(GETC(fh) << 8l);
58   w |= (uint32_t)(GETC(fh) << 16l);
59   w |= (uint32_t)(GETC(fh) << 24l);
60   return (int32_t)w;
61}
62
63#endif
Note: See TracBrowser for help on using the repository browser.