view src/dmresw.c @ 2208:90ec1ec89c56

Revamp the palette handling in lib64gfx somewhat, add helper functions to lib64util for handling external palette file options and add support for specifying one of the "internal" palettes or external (.act) palette file to gfxconv and 64vw.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 14 Jun 2019 05:01:12 +0300
parents 73545a442ffe
children 9807ae37ad69
line wrap: on
line source

/*
 * DMLib
 * -- Resource management
 * Programmed and designed by Matti 'ccr' Hamalainen
 * (C) Copyright 2011-2015 Tecnic Software productions (TNSP)
 */
#include "dmres.h"


BOOL dmf_write_str(DMResource *fh, const void *data, const size_t len)
{
    return dmfwrite(data, len, 1, fh) == 1;
}


BOOL dmf_write_byte(DMResource *fh, const Uint8 val)
{
    return dmfputc(val, fh) == val;
}


#define DM_DEFINE_FFUNC(xname, xtype, xmacro)            \
BOOL dmf_write_ ## xname (DMResource *f, const xtype v) {     \
    xtype result = DM_NATIVE_TO_ ## xmacro (v);         \
    if (dmfwrite(&result, sizeof( xtype ), 1, f) != 1)  \
        return FALSE;                                   \
    return TRUE;                                        \
}

#include "dmfiletmpl.h"

#undef DM_DEFINE_FFUNC