mirror of
https://github.com/reactos/wine.git
synced 2024-11-26 21:20:25 +00:00
490a27e012
Tue Jun 7 08:41:27 1994 Bob Amstadt (bob@pooh) * loader/selector.c (FixupFunctionPrologs): New function to fixup loaded DLL function prologs. It replaces the do nothing code with code that loads DS with the appropriate data segment for the DLL. * misc/cursor.c (LoadCursor): Disabled cursor loading from .EXE or .DLL. The code needs to handle the possibility of multiple cursors in a single directory. Also, it should check to see if the cursor is the right size. * objects/font.c (EnumFonts): Checked for lpLogFontList[i] == NULL * objects/gdiobj.c (SetObjectOwner): Removed stub. Replaced with simple return in gdi.spec. This function is not defined for the retail version of Windows. * memory/heap.c (WIN16_LocalHandleDelta): New function. This is really a dummy that imitates the proper return values. * loader/library.c (GetProcAddress): Fixed definition of IS_BUILTIN_DLL() macro. Mon Jun 6 18:15:40 1994 Bob Amstadt (bob@pooh) * miscemu/int21.c (SeekFile): Needed to return current position in DX:AX. * windows/utility.c (windows_wsprintf): Added support for '#' in format, and fixed bug with "ptr" being incremented too many times. * miscemu/int21.c (OpenExistingFile): Add code to handle opening files read-only and write-only. * loader/wine.c: Segment fixups now done in LoadImage instead of _WinMain. This is necessary to support LoadLibrary(). Sun Jun 5 17:34:24 1994 Erik Bos (erik@hacktic.nl) * [loader/*] - fixed: GetModuleHandle() sometimes returned a wrong handle. - don't init dlls when cs == 0 (lzexpand, doesn't seem to have a init function) - LoadLibrary & LoadImage now return error instead of stopping wine. - moved most of NE-functions into one file. - LoadLibrary() uses w_files list instead of its own list. - NE exectables are now fixed-up and initialised when loaded instead of only once before calling InitTask. * [miscemu/int15.c] [miscemu/int31.c] Added. * [loader/selector.c] Stubs added for {Get|Set}SelectorLimit(), {Get|Set}SelectorBase(). * [misc/main.c] Stub added for IsRomModule(). * [miscemu/int21.c] Some cleanup, added heap for returning data. Jun 6, 94 martin2@trgcorp.solucorp.qc.ca (Martin Ayotte) * [tools/build.c] Change MAX_ORDINALS define to higher value, 1299 entries. (MMSYSTEM doesn't have succesive numbers, some are around 1200). * [windows/utility.c] Bug fix in windows_wsprintf(), (twice increments ...). * [windows/winpos.c] Bug fix in SetWindowPos(), redraw was done if flag was set to SWP_NOREDRAW while SWP_SHOWWINDOW). * [misc/message.c] [controls/combo.c] Add an InvalidateRect() in WM_SHOWWINDOW to statisfy the new 'saveunder'. * [windows/win.c] In CreateWindowEx(), do SetMenu() calls after window creation, just before sending to WM_NCCALCSIZE. * [controls/menu.c] In function SetMenu(), now use SetWindowPos() with flags SWP_FRAMECHANGED to readjust menu area. Function MenuBarCalcSize() redone. Sun May 29 11:08:24 1994 David B. Thomas (dt@yenta.abq.nm.us) * [objects/text.c] Fixed problems associated with DT_WORDBREAK flag. String length was not being properly decremented when lines were folded, and wrapping was not performed when DT_NOCLIP and DT_NOPREFIX were both on in addition to DT_WORDBREAK. Windows does wrapping in this case, and now so does wine. Sun Jun 5 19:17:49 1994 Olaf Flebbe (olaf@dragon) * [edit.c] cp1 was uninitialized iff lineno == 0 * FindFile tests for existance of file even if a full filename was supplied. What about unix file names? * [controls/listbox ] wndPtr was uninitialized for LB_SETTOPINDEX * [misc/property.c] Do not free lpProp. Is it really allocated by malloc? {edited by Bob Amstadt: changed free() to GlobalFree()}
252 lines
7.6 KiB
C
252 lines
7.6 KiB
C
/* $Id: prototypes.h,v 1.3 1993/07/04 04:04:21 root Exp root $
|
|
*/
|
|
/*
|
|
* Copyright Robert J. Amstadt, 1993
|
|
*/
|
|
#ifndef _WINE_PROTOTYPES_H
|
|
#define _WINE_PROTOTYPES_H
|
|
|
|
#include <sys/types.h>
|
|
|
|
#include "neexe.h"
|
|
#include "segmem.h"
|
|
#include "wine.h"
|
|
#include "heap.h"
|
|
#include "msdos.h"
|
|
#include "windows.h"
|
|
|
|
#ifndef WINELIB
|
|
|
|
/* loader/dump.c */
|
|
|
|
extern void PrintFileHeader(struct ne_header_s *ne_header);
|
|
extern void PrintSegmentTable(struct ne_segment_table_entry_s *seg_table,
|
|
int nentries);
|
|
extern void PrintRelocationTable(char *exe_ptr,
|
|
struct ne_segment_table_entry_s *seg_entry_p,
|
|
int segment);
|
|
|
|
/* loader/ldtlib.c */
|
|
|
|
struct segment_descriptor *
|
|
make_sd(unsigned base, unsigned limit, int contents, int read_exec_only, int seg32, int inpgs);
|
|
int get_ldt(void *buffer);
|
|
int set_ldt_entry(int entry, unsigned long base, unsigned int limit,
|
|
int seg_32bit_flag, int contents, int read_only_flag,
|
|
int limit_in_pages_flag);
|
|
|
|
/* loader/resource.c */
|
|
|
|
extern int OpenResourceFile(HANDLE instance);
|
|
extern HBITMAP ConvertCoreBitmap( HDC hdc, BITMAPCOREHEADER * image );
|
|
extern HBITMAP ConvertInfoBitmap( HDC hdc, BITMAPINFO * image );
|
|
extern int FindResourceByNumber(struct resource_nameinfo_s *result_p,
|
|
int type_id, int resource_id);
|
|
extern int FindResourceByName(struct resource_nameinfo_s *result_p,
|
|
int type_id, char *resource_name);
|
|
extern HICON LoadIcon(HANDLE instance, LPSTR icon_name);
|
|
extern HANDLE RSC_LoadResource(int instance, char *rsc_name, int type,
|
|
int *image_size_ret);
|
|
extern int LoadString(HANDLE instance, WORD resource_id, LPSTR buffer, int buflen);
|
|
extern HANDLE RSC_LoadMenu(HANDLE instance, LPSTR menu_name);
|
|
extern HBITMAP LoadBitmap(HANDLE instance, LPSTR bmp_name);
|
|
|
|
/* loader/selector.c */
|
|
|
|
extern int FindUnusedSelectors(int n_selectors);
|
|
extern int IPCCopySelector(int i_old, unsigned long new, int swap_type);
|
|
extern WORD AllocSelector(WORD old_selector);
|
|
extern unsigned int PrestoChangoSelector(unsigned src_selector, unsigned dst_selector);
|
|
extern WORD AllocDStoCSAlias(WORD ds_selector);
|
|
extern WORD FreeSelector(WORD sel);
|
|
extern SEGDESC *CreateNewSegments(int code_flag, int read_only, int length,
|
|
int n_segments);
|
|
extern SEGDESC *GetNextSegment(unsigned int flags, unsigned int limit);
|
|
extern unsigned int GetEntryDLLName(char *dll_name, char *function, int *sel,
|
|
int *addr);
|
|
extern unsigned int GetEntryDLLOrdinal(char *dll_name, int ordinal, int *sel,
|
|
int *addr);
|
|
|
|
/* loader/signal.c */
|
|
|
|
extern int init_wine_signals(void);
|
|
|
|
/* loader/wine.c */
|
|
|
|
extern void myerror(const char *s);
|
|
extern void load_mz_header (int, struct mz_header_s *);
|
|
extern void load_ne_header (int, struct ne_header_s *);
|
|
|
|
extern char *GetFilenameFromInstance(unsigned short instance);
|
|
extern HINSTANCE LoadImage(char *modulename, int filetype, int change_dir);
|
|
extern int _WinMain(int argc, char **argv);
|
|
extern void InitializeLoadedDLLs();
|
|
|
|
/* if1632/relay.c */
|
|
|
|
extern int CallBack16(void *func, int n_args, ...);
|
|
extern void *CALLBACK_MakeProcInstance(void *func, int instance);
|
|
extern void CallLineDDAProc(FARPROC func, short xPos, short yPos, long lParam);
|
|
extern void winestat(void);
|
|
|
|
/* if1632/callback.c */
|
|
|
|
extern int DLLRelay(unsigned int func_num, unsigned int seg_off);
|
|
extern struct dll_table_entry_s *FindDLLTable(char *dll_name);
|
|
extern int FindOrdinalFromName(struct dll_table_entry_s *dll_table, char *func_name);
|
|
extern int ReturnArg(int arg);
|
|
|
|
/* miscemu/int1a.c */
|
|
|
|
extern do_int1A(struct sigcontext_struct *context);
|
|
|
|
/* miscemu/int21.c */
|
|
|
|
extern do_int21(struct sigcontext_struct *context);
|
|
|
|
/* miscemu/kernel.c */
|
|
|
|
extern int KERNEL_LockSegment(int segment);
|
|
extern int KERNEL_UnlockSegment(int segment);
|
|
extern KERNEL_InitTask();
|
|
extern int KERNEL_WaitEvent(int task);
|
|
|
|
/* misc/comm.c */
|
|
|
|
void Comm_Init(void);
|
|
void Comm_DeInit(void);
|
|
|
|
/* misc/dos_fs.c */
|
|
|
|
extern void DOS_InitFS(void);
|
|
extern WORD DOS_GetEquipment(void);
|
|
extern int DOS_ValidDrive(int drive);
|
|
extern int DOS_GetDefaultDrive(void);
|
|
extern void DOS_SetDefaultDrive(int drive);
|
|
extern void ToUnix(char *s);
|
|
extern void ToDos(char *s);
|
|
extern void ChopOffSlash(char *string);
|
|
extern int DOS_DisableDrive(int drive);
|
|
extern int DOS_EnableDrive(int drive);
|
|
extern char *GetUnixFileName(char *dosfilename);
|
|
extern char *DOS_GetCurrentDir(int drive);
|
|
extern int DOS_ChangeDir(int drive, char *dirname);
|
|
extern int DOS_MakeDir(int drive, char *dirname);
|
|
extern int DOS_GetSerialNumber(int drive, unsigned long *serialnumber);
|
|
extern int DOS_SetSerialNumber(int drive, unsigned long serialnumber);
|
|
extern char *DOS_GetVolumeLabel(int drive);
|
|
extern int DOS_SetVolumeLabel(int drive, char *label);
|
|
extern int DOS_GetFreeSpace(int drive, long *size, long *available);
|
|
extern char *FindFile(char *buffer, int buflen, char *rootname, char **extensions, char *path);
|
|
extern char *WineIniFileName(void);
|
|
extern char *WinIniFileName(void);
|
|
extern struct dosdirent *DOS_opendir(char *dosdirname);
|
|
extern struct dosdirent *DOS_readdir(struct dosdirent *de);
|
|
extern void DOS_closedir(struct dosdirent *de);
|
|
|
|
/* misc/profile.c */
|
|
|
|
extern void sync_profiles(void);
|
|
|
|
/* misc/spy.c */
|
|
|
|
extern void SpyInit(void);
|
|
|
|
/* controls/button.c */
|
|
|
|
extern LONG ButtonWndProc(HWND hWnd, WORD uMsg, WORD wParam, LONG lParam);
|
|
|
|
/* controls/combo.c */
|
|
|
|
extern LONG ComboBoxWndProc(HWND hwnd, WORD message, WORD wParam, LONG lParam);
|
|
|
|
/* controls/desktop.c */
|
|
|
|
extern LONG DesktopWndProc (HWND hwnd, WORD message, WORD wParam, LONG lParam);
|
|
extern BOOL DESKTOP_SetPattern(char *pattern);
|
|
|
|
/* controls/listbox.c */
|
|
|
|
extern LONG ListBoxWndProc(HWND hwnd, WORD message, WORD wParam, LONG lParam);
|
|
|
|
/* controls/menu.c */
|
|
|
|
extern LONG PopupMenuWndProc(HWND hwnd, WORD message, WORD wParam, LONG lParam);
|
|
|
|
/* controls/scrollbar.c */
|
|
|
|
extern LONG ScrollBarWndProc(HWND hWnd, WORD message, WORD wParam, LONG lParam);
|
|
|
|
/* controls/static.c */
|
|
|
|
extern LONG StaticWndProc(HWND hwnd, WORD message, WORD wParam, LONG lParam);
|
|
|
|
/* controls/widget.c */
|
|
|
|
extern BOOL WIDGETS_Init(void);
|
|
|
|
/* memory/heap.c */
|
|
|
|
extern void HEAP_Init(MDESC **free_list, void *start, int length);
|
|
extern void *HEAP_Alloc(MDESC **free_list, int flags, int bytes);
|
|
extern void *HEAP_ReAlloc(MDESC **free_list, void *old_block, int new_size, unsigned int flags);
|
|
extern int HEAP_Free(MDESC **free_list, void *block);
|
|
extern LHEAP *HEAP_LocalFindHeap(unsigned short owner);
|
|
extern void HEAP_LocalInit(unsigned short owner, void *start, int length);
|
|
extern void *WIN16_LocalAlloc(int flags, int bytes);
|
|
extern int WIN16_LocalCompact(int min_free);
|
|
extern unsigned int WIN16_LocalFlags(unsigned int handle);
|
|
extern unsigned int WIN16_LocalFree(unsigned int handle);
|
|
extern unsigned int WIN16_LocalInit(unsigned int segment, unsigned int start, unsigned int end);
|
|
extern void *WIN16_LocalLock(unsigned int handle);
|
|
extern void *WIN16_LocalReAlloc(unsigned int handle, int flags, int bytes);
|
|
extern unsigned int WIN16_LocalSize(unsigned int handle);
|
|
extern unsigned int WIN16_LocalUnlock(unsigned int handle);
|
|
|
|
/* objects/bitmaps.c */
|
|
|
|
extern BOOL BITMAP_Init(void);
|
|
|
|
/* objects/color.c */
|
|
|
|
extern BOOL COLOR_Init(void);
|
|
|
|
/* objects/dib.c */
|
|
|
|
extern int DIB_BitmapInfoSize(BITMAPINFO *info, WORD coloruse);
|
|
|
|
/* objects/gdiobj.c */
|
|
|
|
extern BOOL GDI_Init(void);
|
|
|
|
/* objects/palette.c */
|
|
|
|
extern BOOL PALETTE_Init(void);
|
|
|
|
/* objects/region.c */
|
|
|
|
extern BOOL REGION_Init(void);
|
|
|
|
/* windows/graphic.c */
|
|
|
|
extern void DrawReliefRect(HDC hdc, RECT rect, int thickness, BOOL pressed);
|
|
|
|
/* windows/dce.c */
|
|
|
|
extern void DCE_Init(void);
|
|
|
|
/* windows/dialog.c */
|
|
|
|
extern BOOL DIALOG_Init(void);
|
|
|
|
/* windows/syscolor.c */
|
|
|
|
extern void SYSCOLOR_Init(void);
|
|
|
|
/* windows/sysmetrics.c */
|
|
|
|
extern void SYSMETRICS_Init(void);
|
|
|
|
#endif /* WINELIB */
|
|
#endif /* _WINE_PROTOTYPES_H */
|