SSBM Decomp
Loading...
Searching...
No Matches
stdio.h
Go to the documentation of this file.
1#ifndef _STDIO_H_
2#define _STDIO_H_
3
4#include <stdarg.h>
5#include <stddef.h>
6
7#define SEEK_SET 0
8#define SEEK_CUR 1
9#define SEEK_END 2
10
11#define __ungetc_buffer_size 2
12
13typedef unsigned long __file_handle;
14typedef unsigned long fpos_t;
15
16#ifdef __MWERKS__
17typedef unsigned short wchar_t;
18#endif
19
37
43
44typedef struct {
45 unsigned int open_mode : 2;
46 unsigned int io_mode : 3;
47 unsigned int buffer_mode : 2;
48 unsigned int file_kind : 3;
49 unsigned int file_orientation : 2;
50 unsigned int binary_io : 1;
52
59
60typedef struct {
61 unsigned int io_state : 3;
62 unsigned int free_buffer : 1;
63 unsigned char eof;
64 unsigned char error;
66
67typedef void (*__idle_proc)(void);
68typedef int (*__pos_proc)(__file_handle file, fpos_t* position, int mode,
69 __idle_proc idle_proc);
70typedef int (*__io_proc)(__file_handle file, unsigned char* buff,
71 size_t* count, __idle_proc idle_proc);
72typedef int (*__close_proc)(__file_handle file);
73
96
97typedef struct {
98 char* CharStr;
102
103typedef struct {
104 char* NextChar;
107
108#define EOF -1L
109
115
116int __StringRead(void* str, int ch, int behavior);
117
118#define _IONBF 0
119#define _IOLBF 1
120#define _IOFBF 2
121
122extern FILE __files[3];
123
124#define stdin (&__files[0])
125#define stdout (&__files[1])
126#define stderr (&__files[2])
127
128int printf(const char* format, ...);
129int sprintf(char* s, const char* format, ...);
130int vprintf(const char* format, va_list arg);
131int vsprintf(char* s, const char* format, va_list arg);
132
133size_t fwrite(const void*, size_t memb_size, size_t num_memb, FILE*);
134
135#endif // _STDIO
FILE __files[3]
Definition ansi_files.c:4
__va_list va_list
Definition stdarg.h:11
unsigned short wchar_t
Definition stddef.h:4
__io_results
Definition stdio.h:38
@ __io_EOF
Definition stdio.h:41
@ __no_io_error
Definition stdio.h:39
@ __io_error
Definition stdio.h:40
int vprintf(const char *format, va_list arg)
Definition printf.c:1058
__io_modes
Definition stdio.h:20
@ __write
Definition stdio.h:22
@ __read
Definition stdio.h:21
@ __read_write
Definition stdio.h:23
@ __append
Definition stdio.h:24
unsigned long fpos_t
Definition stdio.h:14
int(* __close_proc)(__file_handle file)
Definition stdio.h:72
int vsprintf(char *s, const char *format, va_list arg)
Definition printf.c:1080
int printf(const char *format,...)
Definition printf.c:1041
int sprintf(char *s, const char *format,...)
Definition printf.c:1085
#define __ungetc_buffer_size
Definition stdio.h:11
__ReadProcActions
Definition stdio.h:110
@ __GetAChar
Definition stdio.h:111
@ __UngetAChar
Definition stdio.h:112
@ __TestForError
Definition stdio.h:113
__io_states
Definition stdio.h:53
@ __reading
Definition stdio.h:56
@ __rereading
Definition stdio.h:57
@ __neutral
Definition stdio.h:54
@ __writing
Definition stdio.h:55
size_t fwrite(const void *, size_t memb_size, size_t num_memb, FILE *)
Definition direct_io.c:8
int(* __pos_proc)(__file_handle file, fpos_t *position, int mode, __idle_proc idle_proc)
Definition stdio.h:68
__file_kinds
Definition stdio.h:26
@ __unavailable_file
Definition stdio.h:30
@ __closed_file
Definition stdio.h:27
@ __disk_file
Definition stdio.h:28
@ __console_file
Definition stdio.h:29
void(* __idle_proc)(void)
Definition stdio.h:67
int(* __io_proc)(__file_handle file, unsigned char *buff, size_t *count, __idle_proc idle_proc)
Definition stdio.h:70
unsigned long __file_handle
Definition stdio.h:13
int __StringRead(void *str, int ch, int behavior)
Definition string.c:291
__file_orientation
Definition stdio.h:32
@ __wide_oriented
Definition stdio.h:35
@ __char_oriented
Definition stdio.h:34
@ __unoriented
Definition stdio.h:33
Definition stdio.h:74
unsigned long buffer_size
Definition stdio.h:84
unsigned char char_buffer
Definition stdio.h:78
unsigned char ungetc_buffer[__ungetc_buffer_size]
Definition stdio.h:80
unsigned char * buffer
Definition stdio.h:83
wchar_t ungetwc_buffer[__ungetc_buffer_size]
Definition stdio.h:81
__file_modes mode
Definition stdio.h:76
unsigned long position
Definition stdio.h:82
__close_proc close_proc
Definition stdio.h:93
unsigned long saved_buffer_len
Definition stdio.h:88
unsigned char * buffer_ptr
Definition stdio.h:85
__io_proc write_proc
Definition stdio.h:92
__file_state state
Definition stdio.h:77
unsigned long buffer_alignment
Definition stdio.h:87
__idle_proc idle_proc
Definition stdio.h:94
unsigned long buffer_len
Definition stdio.h:86
__pos_proc position_proc
Definition stdio.h:90
unsigned long buffer_pos
Definition stdio.h:89
__file_handle handle
Definition stdio.h:75
unsigned char char_buffer_overflow
Definition stdio.h:79
__io_proc read_proc
Definition stdio.h:91
Definition stdio.h:103
int NullCharDetected
Definition stdio.h:105
char * NextChar
Definition stdio.h:104
Definition stdio.h:97
size_t CharsWritten
Definition stdio.h:100
char * CharStr
Definition stdio.h:98
size_t MaxCharCount
Definition stdio.h:99
Definition stdio.h:44
unsigned int file_orientation
Definition stdio.h:49
unsigned int io_mode
Definition stdio.h:46
unsigned int file_kind
Definition stdio.h:48
unsigned int open_mode
Definition stdio.h:45
unsigned int binary_io
Definition stdio.h:50
unsigned int buffer_mode
Definition stdio.h:47
Definition stdio.h:60
unsigned char eof
Definition stdio.h:63
unsigned int io_state
Definition stdio.h:61
unsigned char error
Definition stdio.h:64
unsigned int free_buffer
Definition stdio.h:62