51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
		
		
			
		
	
	
			51 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
| 
								 | 
							
								#include <ctype.h>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef wcslen
							 | 
						||
| 
								 | 
							
								  /* for cygwin */
							 | 
						||
| 
								 | 
							
								  #include <wchar.h>
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								typedef wchar_t F_CHAR;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define from_native_string from_u16_string
							 | 
						||
| 
								 | 
							
								#define unbox_native_string unbox_u16_string
							 | 
						||
| 
								 | 
							
								#define string_to_native_alien(string) string_to_u16_alien(string,true)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define STR_FORMAT(string) L##string
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define MAX_UNICODE_PATH 32768
							 | 
						||
| 
								 | 
							
								#define DLLEXPORT __declspec(dllexport)
							 | 
						||
| 
								 | 
							
								#define SSCANF swscanf
							 | 
						||
| 
								 | 
							
								#define STRCMP wcscmp
							 | 
						||
| 
								 | 
							
								#define STRNCMP wcsncmp
							 | 
						||
| 
								 | 
							
								#define STRDUP _wcsdup
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#define OPEN_READ(path) _wfopen(path,L"rb")
							 | 
						||
| 
								 | 
							
								#define OPEN_WRITE(path) _wfopen(path,L"wb")
							 | 
						||
| 
								 | 
							
								#define FPRINTF(stream,format,arg) fwprintf(stream,L##format,arg)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/* Difference between Jan 1 00:00:00 1601 and Jan 1 00:00:00 1970 */
							 | 
						||
| 
								 | 
							
								#define EPOCH_OFFSET 0x019db1ded53e8000LL
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								F_STRING *get_error_message(void);
							 | 
						||
| 
								 | 
							
								DLLEXPORT F_CHAR *error_message(DWORD id);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								void init_ffi(void);
							 | 
						||
| 
								 | 
							
								void ffi_dlopen(F_DLL *dll, bool error);
							 | 
						||
| 
								 | 
							
								void *ffi_dlsym(F_DLL *dll, F_SYMBOL *symbol);
							 | 
						||
| 
								 | 
							
								void ffi_dlclose(F_DLL *dll);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								void sleep_millis(DWORD msec);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								INLINE void init_signals(void) {}
							 | 
						||
| 
								 | 
							
								INLINE void early_init(void) {}
							 | 
						||
| 
								 | 
							
								const F_CHAR *vm_executable_path(void);
							 | 
						||
| 
								 | 
							
								const F_CHAR *default_image_path(void);
							 | 
						||
| 
								 | 
							
								long getpagesize (void);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								s64 current_millis(void);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								INLINE void reset_stdio(void) {}
							 | 
						||
| 
								 | 
							
								
							 |