Release 951226
[wine/multimedia.git] / library / sup.c
blob421a0974098bb7c12405dc732926a424316e4234
1 #include <stdio.h>
2 #include <unistd.h>
3 #include "windows.h"
4 #include "callback.h"
5 #include "wine.h"
6 #include "arch.h"
7 #include "neexe.h"
9 LRESULT CallWindowProc (WNDPROC func, HWND hwnd, UINT message,
10 WPARAM wParam, LPARAM lParam)
12 return (*func)(hwnd, message, wParam, lParam);
16 * Header loading routines for WineLib.
19 /* LOADSHORT Calls LOAD and swaps the high and the low bytes */
21 #define LOAD(x) read (fd, &TAB->x, sizeof (TAB->x))
22 #define LOADSHORT(x) LOAD(x); TAB->x = CONV_SHORT (TAB->x);
23 #define LOADLONG(x) LOAD(x); TAB->x = CONV_LONG (TAB->x);
25 void load_mz_header (int fd, struct mz_header_s *mz_header)
27 #define TAB mz_header
28 LOAD (mz_magic);
29 LOAD (dont_care);
30 LOADSHORT (ne_offset);
33 void load_ne_header (int fd, struct ne_header_s *ne_header)
35 #undef TAB
36 #define TAB ne_header
37 LOAD (ne_magic);
38 LOADSHORT (linker_version);
39 LOADSHORT (linker_revision);
40 LOADSHORT (entry_tab_offset);
41 LOADSHORT (entry_tab_length);
42 LOAD (reserved1);
43 LOADSHORT (format_flags);
44 LOADSHORT (auto_data_seg);
45 LOADSHORT (local_heap_length);
46 LOADSHORT (stack_length);
47 LOADSHORT (ip);
48 LOADSHORT (cs);
49 LOADSHORT (sp);
50 LOADSHORT (ss);
51 LOADSHORT (n_segment_tab);
52 LOADSHORT (n_mod_ref_tab);
53 LOADSHORT (nrname_tab_length);
54 LOADSHORT (segment_tab_offset);
55 LOADSHORT (resource_tab_offset);
56 LOADSHORT (rname_tab_offset);
57 LOADSHORT (moduleref_tab_offset);
58 LOADSHORT (iname_tab_offset);
59 LOADLONG (nrname_tab_offset);
60 LOADSHORT (n_mov_entry_points);
61 LOADSHORT (align_shift_count);
62 LOADSHORT (n_resource_seg);
63 LOAD (operating_system);
64 LOAD (additional_flags);
65 LOADSHORT (fastload_offset);
66 LOADSHORT (fastload_length);
67 LOADSHORT (reserved2);
68 LOADSHORT (expect_version);
72 * Typeinfo loading routines for non PC-architectures.
75 int load_typeinfo (int fd, struct resource_typeinfo_s *typeinfo)
77 #undef TAB
78 #define TAB typeinfo
79 LOADSHORT (type_id);
80 LOADSHORT (count);
81 LOADLONG (reserved);
82 return 1;
85 int load_nameinfo (int fd, struct resource_nameinfo_s *nameinfo)
87 #undef TAB
88 #define TAB nameinfo
89 LOADSHORT (offset);
90 LOADSHORT (length);
91 LOADSHORT (flags);
92 LOADSHORT (id);
93 LOADSHORT (handle);
94 LOADSHORT (usage);
95 return 0;