diff options
| author | bellard <bellard> | 2005-04-14 23:49:21 +0000 |
|---|---|---|
| committer | bellard <bellard> | 2005-04-14 23:49:21 +0000 |
| commit | 4821702fb49c72216c307341dc3dfd5a3984cf83 (patch) | |
| tree | a26b97b558b47f741a1aebdc8a9962dd86b7436b /win32/lib/crt1.c | |
| parent | d733dc752e8d19bdebca46678c70d04d4d1f6f76 (diff) | |
| download | tinycc-4821702fb49c72216c307341dc3dfd5a3984cf83.tar.gz tinycc-4821702fb49c72216c307341dc3dfd5a3984cf83.tar.bz2 | |
win32 merge
Diffstat (limited to 'win32/lib/crt1.c')
| -rw-r--r-- | win32/lib/crt1.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/win32/lib/crt1.c b/win32/lib/crt1.c new file mode 100644 index 0000000..ce79f58 --- /dev/null +++ b/win32/lib/crt1.c @@ -0,0 +1,35 @@ +// =============================================
+// crt1.c
+
+#include <stdlib.h>
+
+#define __UNKNOWN_APP 0
+#define __CONSOLE_APP 1
+#define __GUI_APP 2
+void __set_app_type(int);
+void _controlfp(unsigned a, unsigned b);
+
+typedef struct
+{
+ int newmode;
+} _startupinfo;
+
+void __getmainargs(int *pargc, char ***pargv, char ***penv, int globb, _startupinfo*);
+
+int main(int argc, char **argv, char **env);
+
+int _start(void)
+{
+ int argc; char **argv; char **env; int ret;
+ _startupinfo start_info = {0};
+
+ _controlfp(0x30000, 0x10000);
+ __set_app_type(__CONSOLE_APP);
+ __getmainargs(&argc, &argv, &env, 0, &start_info);
+
+ ret = main(argc, argv, env);
+ exit(ret);
+}
+
+// =============================================
+
|
