}
void reader_input2(struct reader_t*r, void*target)
{
- memcpy(target,&r->data[r->datapos],2);
+ *(u16*)target = SWAP16(*(u16*)&r->data[r->datapos]);
r->datapos += 2;
}
void reader_input4(struct reader_t*r, void*target)
{
- memcpy(target,&r->data[r->datapos],4);
+ *(u32*)target = SWAP32(*(u32*)&r->data[r->datapos]);
r->datapos += 4;
}
uchar*reader_getinputpos(struct reader_t*r)
{
x|=(0xffffffff<<num);
}
- *(s32*)val=x;
+ *val=x;
}
u32 reader_getbits(struct reader_t*r, int num)
void writer_writeu16(struct writer_t*w, u16 value)
{
+ u16 value2 = SWAP16(value);
writer_resetbits(w);
- writer_write(w, &value, 2);
+ writer_write(w, &value2, 2);
}
void writer_writeu32(struct writer_t*w, u32 value)
{
+ u16 value2 = SWAP32(value);
writer_resetbits(w);
- writer_write(w, &value, 4);
+ writer_write(w, &value2, 4);
}
void* writer_getpos(struct writer_t*w)