view include/std.h @ 116:967a56b96d13

first attempt at redoing malloc, seems to work. The program level is not currently functional.
author Jonathan Pevarnek <pevarnj@gmail.com>
date Sun, 12 Jun 2011 10:09:39 -0400
parents d971d4288a5a
children
line wrap: on
line source

#ifndef __STD_H
#define __STD_H

#include <die.h>
#include <memHead.h>

#define assert(x) do { if(!(x)) die(); } while (0)

//min and max function definitions
#define __fxn(TYPE) \
	static inline TYPE Max_##TYPE(TYPE a, TYPE b) { return (a>b) ? a : b; } \
	static inline TYPE Min_##TYPE(TYPE a, TYPE b) { return (a>b) ? b : a; } 
	__fxn(int)
	__fxn(u64)
	__fxn(u32)
#undef __fxn

void init_all(u64 __memsize);

double abs(double num);

char* ftoa(double x, char *a, unsigned int prec);
char* itoa(long long n, char *a, unsigned short base);
s64 atoi(char *a);
double atof(char *a);

void sPrint(char *a);
char* sGet(char *a, unsigned int n);


//MALLOC CODE
typedef Header blockUnit;

void malloc_init(size_t memSize);
void* malloc(size_t size);
void* moreMem(size_t blocks);
void free(void *ptr);

#endif