/* Reads/writes 16/32 bit values using little endian */
/* Nice for reading MID files for example */
#include <stdio.h>
#include <stdlib.h>
int to16bit(int c1, int c2);
long to32bit(int c1, int c2, int c3, int c4);
int read16bit(FILE *f);
long read32bit(FILE *f);
void write16bit(FILE *f, int data);
void write32bit(FILE *f, unsigned long data);
long to32bit(int c1, int c2, int c3, int c4)
{
long value = 0L;
value = (c1 & 0xff);
value = (value<<8) + (c2 & 0xff);
value = (value<<8) + (c3 & 0xff);
value = (value<<8) + (c4 & 0xff);
return (value);
}
int to16bit(int c1, int c2)
{
return ((c1 & 0xff ) << 8) + (c2 & 0xff);
}