Super Mario 64 Source
A Super Mario 64 decompilation, brought to you by a bunch of clever folks.
Data Structures | Macros | Functions | Variables
textconv.c File Reference
#include <ctype.h>
#include <errno.h>
#include <stdarg.h>
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "hashtable.h"
#include "utf8.h"

Data Structures

struct  CharmapEntry
 

Macros

#define ARRAY_COUNT(arr)   (sizeof(arr) / sizeof(arr[0]))
 

Functions

static void fatal_error (const char *msgfmt,...)
 
static void parse_error (const char *filename, int lineNum, const char *msgfmt,...)
 
voidread_text_file (const char *filename)
 
static charskip_whitespace (char *str)
 
static charline_split (char *str)
 
static charparse_number (const char *str, unsigned int *num)
 
static int is_identifier_char (char c)
 
static int get_escape_char (int c)
 
static void read_charmap (const char *filename)
 
static int count_line_num (const char *start, const char *pos)
 
static charconvert_string (char *pos, FILE *fout, const char *inputFileName, char *start)
 
static void convert_file (const char *infilename, const char *outfilename)
 
static unsigned int charmap_hash (const void *value)
 
static int charmap_cmp (const void *a, const void *b)
 
static void usage (const char *execName)
 
int main (int argc, char **argv)
 

Variables

static struct HashTablecharmap
 

Macro Definition Documentation

◆ ARRAY_COUNT

#define ARRAY_COUNT (   arr)    (sizeof(arr) / sizeof(arr[0]))

Function Documentation

◆ charmap_cmp()

static int charmap_cmp ( const void a,
const void b 
)
static

◆ charmap_hash()

static unsigned int charmap_hash ( const void value)
static

◆ convert_file()

static void convert_file ( const char infilename,
const char outfilename 
)
static

◆ convert_string()

static char* convert_string ( char pos,
FILE *  fout,
const char inputFileName,
char start 
)
static

◆ count_line_num()

static int count_line_num ( const char start,
const char pos 
)
static

◆ fatal_error()

static void fatal_error ( const char msgfmt,
  ... 
)
static

◆ get_escape_char()

static int get_escape_char ( int  c)
static

◆ is_identifier_char()

static int is_identifier_char ( char  c)
static

◆ line_split()

static char* line_split ( char str)
static

◆ main()

int main ( int  argc,
char **  argv 
)

◆ parse_error()

static void parse_error ( const char filename,
int  lineNum,
const char msgfmt,
  ... 
)
static

◆ parse_number()

static char* parse_number ( const char str,
unsigned int num 
)
static

◆ read_charmap()

static void read_charmap ( const char filename)
static

◆ read_text_file()

void* read_text_file ( const char filename)

◆ skip_whitespace()

static char* skip_whitespace ( char str)
static

◆ usage()

static void usage ( const char execName)
static

Variable Documentation

◆ charmap

struct HashTable* charmap
static