*/
#include <stdint.h>
+#ifndef WIN32
+#include <arpa/inet.h>
+#else
+#define ntohl(x) (((x)>>24) | ((x)<<24) | (((x)>>8)&0xff00) | (((x)<<8)&0xff0000))
+#define htonl ntohl
+#endif
extern void *offset;
extern struct cbfs_header *master_header;
static uint32_t virt_to_phys(void *addr)
{
- return (long)(addr - offset) & 0xffffffff;
+ return (unsigned long)(addr - offset) & 0xffffffff;
}
#define ALIGN(val, by) (((val) + (by)-1)&~((by)-1))
+uint32_t getfilesize(const char *filename);
void *loadfile(const char *filename, uint32_t * romsize_p, void *content,
int place);
void *loadrom(const char *filename);
-void writerom(const char *filename, void *start, uint32_t size);
+int writerom(const char *filename, void *start, uint32_t size);
int iself(unsigned char *input);
int add_file_to_cbfs(void *content, uint32_t contentsize, uint32_t location);
void print_cbfs_directory(const char *filename);
+
+uint32_t cbfs_find_location(const char *romfile, uint32_t filesize,
+ const char *filename, uint32_t align);
+
+void print_supported_filetypes(void);
+
+#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))