mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 18:15:11 +00:00
Little changes in the psxdll library.
svn path=/trunk/; revision=694
This commit is contained in:
parent
74031c2379
commit
81a9f1c4b0
11 changed files with 116 additions and 26 deletions
|
@ -15,7 +15,7 @@ include rules.mak
|
||||||
# Required to run the system
|
# Required to run the system
|
||||||
#
|
#
|
||||||
COMPONENTS = iface_native ntoskrnl
|
COMPONENTS = iface_native ntoskrnl
|
||||||
DLLS = ntdll kernel32 crtdll fmifs gdi32
|
DLLS = ntdll kernel32 crtdll fmifs gdi32 psxdll
|
||||||
#DLLS = advapi32 mingw32 user32
|
#DLLS = advapi32 mingw32 user32
|
||||||
SUBSYS = smss win32k
|
SUBSYS = smss win32k
|
||||||
#SUBSYS = csrss
|
#SUBSYS = csrss
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#ifndef _INC_REACTOS_CONFIG_H
|
#ifndef _INC_REACTOS_CONFIG_H
|
||||||
#define _INC_REACTOS_CONFIG_H
|
#define _INC_REACTOS_CONFIG_H
|
||||||
/* $Id: config.h,v 1.1 1999/08/29 07:01:32 ea Exp $ */
|
/* $Id: config.h,v 1.2 1999/10/12 21:17:03 ea Exp $ */
|
||||||
/* ReactOS global configuration options */
|
/* ReactOS global configuration options */
|
||||||
|
|
||||||
#define CONFIG_PROCESSOR_FAMILY_I386 "i386"
|
#define CONFIG_PROCESSOR_FAMILY_I386 "i386"
|
||||||
|
@ -15,6 +15,10 @@
|
||||||
*/
|
*/
|
||||||
#define CONFIG_PROCESSOR_FAMILY CONFIG_PROCESSOR_FAMILY_I586
|
#define CONFIG_PROCESSOR_FAMILY CONFIG_PROCESSOR_FAMILY_I586
|
||||||
#define CONFIG_ARCHITECTURE CONFIG_ARCHITECTURE_IBMPC
|
#define CONFIG_ARCHITECTURE CONFIG_ARCHITECTURE_IBMPC
|
||||||
|
/*
|
||||||
|
* Hardware page size
|
||||||
|
*/
|
||||||
|
#define CONFIG_MEMORY_PAGE_SIZE 4096
|
||||||
/*
|
/*
|
||||||
* Use __fastcall calling conventions when needed
|
* Use __fastcall calling conventions when needed
|
||||||
* in system components that require it.
|
* in system components that require it.
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
; $Id: ntdll.def,v 1.15 1999/09/12 22:06:26 ea Exp $
|
; $Id: ntdll.def,v 1.16 1999/10/12 21:17:04 ea Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
LIBRARY ntdll
|
LIBRARY ntdll.dll
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
InitializeObjectAttributes
|
InitializeObjectAttributes
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
; $Id: ntdll.edf,v 1.6 1999/09/12 22:06:26 ea Exp $
|
; $Id: ntdll.edf,v 1.7 1999/10/12 21:17:04 ea Exp $
|
||||||
;
|
;
|
||||||
; ReactOS Operating System
|
; ReactOS Operating System
|
||||||
;
|
;
|
||||||
LIBRARY ntdll
|
LIBRARY ntdll.dll
|
||||||
|
|
||||||
EXPORTS
|
EXPORTS
|
||||||
InitializeObjectAttributes
|
InitializeObjectAttributes
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# $Id: makefile,v 1.23 1999/09/04 18:35:48 ekohl Exp $
|
# $Id: makefile,v 1.24 1999/10/12 21:17:03 ea Exp $
|
||||||
#
|
#
|
||||||
# ReactOS Operating System
|
# ReactOS Operating System
|
||||||
#
|
#
|
||||||
|
@ -65,7 +65,7 @@ $(TARGET).dll: $(DLLMAIN) $(OBJECTS) def/ntdll.def def/ntdll.edf
|
||||||
$(OBJECTS) \
|
$(OBJECTS) \
|
||||||
-o $(TARGET).o
|
-o $(TARGET).o
|
||||||
$(DLLTOOL) \
|
$(DLLTOOL) \
|
||||||
--dllname $(TARGET).dll \
|
--dllname $(TARGET) \
|
||||||
--def def/$(TARGET).def \
|
--def def/$(TARGET).def \
|
||||||
--kill-at \
|
--kill-at \
|
||||||
--output-lib $(TARGET).a
|
--output-lib $(TARGET).a
|
||||||
|
@ -77,7 +77,7 @@ $(TARGET).dll: $(DLLMAIN) $(OBJECTS) def/ntdll.def def/ntdll.edf
|
||||||
$(TARGET).o
|
$(TARGET).o
|
||||||
- $(RM) junk.tmp
|
- $(RM) junk.tmp
|
||||||
$(DLLTOOL) \
|
$(DLLTOOL) \
|
||||||
--dllname $(TARGET).dll \
|
--dllname $(TARGET) \
|
||||||
--base-file base.tmp \
|
--base-file base.tmp \
|
||||||
--output-exp temp.exp \
|
--output-exp temp.exp \
|
||||||
--def def/$(TARGET).edf
|
--def def/$(TARGET).edf
|
||||||
|
|
24
reactos/lib/psxdll/libc/stdlib/exit.c
Normal file
24
reactos/lib/psxdll/libc/stdlib/exit.c
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
/* $Id: exit.c,v 1.1 1999/10/12 21:19:40 ea Exp $
|
||||||
|
*
|
||||||
|
* reactos/lib/psxdll/libc/stdlib/exit.c
|
||||||
|
*
|
||||||
|
* POSIX+ Subsystem client shared library
|
||||||
|
*/
|
||||||
|
#define NTOS_MODE_USER
|
||||||
|
#include <ntos.h>
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
_exit (
|
||||||
|
int code
|
||||||
|
)
|
||||||
|
{
|
||||||
|
/* FIXME: call atexit registered functions */
|
||||||
|
NtTerminateProcess (
|
||||||
|
NtCurrentProcess(),
|
||||||
|
code
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* EOF */
|
|
@ -1,4 +1,4 @@
|
||||||
# $Id: makefile,v 1.1 1999/09/12 21:54:16 ea Exp $
|
# $Id: makefile,v 1.2 1999/10/12 21:17:04 ea Exp $
|
||||||
#
|
#
|
||||||
# ReactOS psxdll.dll makefile
|
# ReactOS psxdll.dll makefile
|
||||||
#
|
#
|
||||||
|
@ -19,11 +19,15 @@ BASE_CFLAGS = -I../../include
|
||||||
all: $(DLLTARGET)
|
all: $(DLLTARGET)
|
||||||
|
|
||||||
|
|
||||||
|
OBJECTS_LIBC_STDLIB = libc/stdlib/exit.o
|
||||||
|
|
||||||
|
OBJECTS_LIBC = $(OBJECTS_LIBC_STDLIB)
|
||||||
|
|
||||||
OBJECTS_MISC = misc/dllmain.o misc/special.o misc/heap.o misc/rtl.o
|
OBJECTS_MISC = misc/dllmain.o misc/special.o misc/heap.o misc/rtl.o
|
||||||
|
|
||||||
OBJECTS_RESOURCE = $(TARGETNAME).coff
|
OBJECTS_RESOURCE = $(TARGETNAME).coff
|
||||||
|
|
||||||
OBJECTS = $(OBJECTS_MISC) $(OBJECTS_RESOURCE)
|
OBJECTS = $(OBJECTS_LIBC) $(OBJECTS_LIBM) $(OBJECTS_MISC) $(OBJECTS_RESOURCE)
|
||||||
|
|
||||||
DEFS=$(TARGETNAME).def $(TARGETNAME).edf
|
DEFS=$(TARGETNAME).def $(TARGETNAME).edf
|
||||||
|
|
||||||
|
|
|
@ -1,22 +1,79 @@
|
||||||
/* $Id: dllmain.c,v 1.1 1999/09/12 21:54:16 ea Exp $
|
/* $Id: dllmain.c,v 1.2 1999/10/12 21:17:05 ea Exp $
|
||||||
*
|
*
|
||||||
* reactos/subsys/psxdll/dllmain.c
|
* reactos/subsys/psxdll/dllmain.c
|
||||||
*
|
*
|
||||||
* ReactOS Operating System
|
* ReactOS Operating System
|
||||||
* - POSIX+ client side DLL (ReactOS POSIX+ Subsystem)
|
* - POSIX+ client side DLL (ReactOS POSIX+ Subsystem)
|
||||||
*/
|
*/
|
||||||
#include <windows.h>
|
#define NTOS_MODE_USER
|
||||||
|
#include <ntos.h>
|
||||||
|
#include <reactos/config.h>
|
||||||
|
|
||||||
BOOL
|
|
||||||
WINAPI
|
/* --- Data --- */
|
||||||
DllMain (
|
|
||||||
HINSTANCE hinstDll,
|
PVOID
|
||||||
DWORD fdwReason,
|
__PdxHeap = NULL;
|
||||||
LPVOID fImpLoad
|
|
||||||
)
|
HANDLE
|
||||||
|
__PdxApiPort = INVALID_HANDLE_VALUE;
|
||||||
|
|
||||||
|
HINSTANCE
|
||||||
|
__PdxModuleHandle;
|
||||||
|
|
||||||
|
/* --- Internal functions --- */
|
||||||
|
|
||||||
|
|
||||||
|
BOOLEAN
|
||||||
|
__PdxConnectToPsxSs (VOID)
|
||||||
{
|
{
|
||||||
/* FIXME: Connect to psxss.exe */
|
/* FIXME: call NtConnectPort(); */
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* --- Library entry point --- */
|
||||||
|
|
||||||
|
|
||||||
|
BOOL
|
||||||
|
WINAPI
|
||||||
|
DllMain (
|
||||||
|
HINSTANCE hInstDll,
|
||||||
|
DWORD fdwReason,
|
||||||
|
LPVOID fImpLoad
|
||||||
|
)
|
||||||
|
{
|
||||||
|
if (DLL_PROCESS_ATTACH == fdwReason)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Save the module handle.
|
||||||
|
*/
|
||||||
|
__PdxModuleHandle = hInstDll;
|
||||||
|
/*
|
||||||
|
* Create a heap for the client process.
|
||||||
|
* Initially its size is the same as the
|
||||||
|
* memory page size; it is growable and
|
||||||
|
* grows 512 bytes a time.
|
||||||
|
*/
|
||||||
|
__PdxHeap = RtlCreateHeap (
|
||||||
|
3, /* Flags */
|
||||||
|
NULL, /* Base address */
|
||||||
|
CONFIG_MEMORY_PAGE_SIZE, /* Initial size */
|
||||||
|
512, /* Maximum size/grow by */
|
||||||
|
0, /* unknown */
|
||||||
|
NULL /* PHEAP_DEFINITION */
|
||||||
|
);
|
||||||
|
/*
|
||||||
|
* Connect to the POSIX+ subsystem
|
||||||
|
* process (psxss.exe).
|
||||||
|
*/
|
||||||
|
if (FALSE == __PdxConnectToPsxSs())
|
||||||
|
{
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* EOF */
|
||||||
|
|
|
@ -1,10 +1,11 @@
|
||||||
/* $Id: special.c,v 1.1 1999/09/12 21:54:16 ea Exp $
|
/* $Id: special.c,v 1.2 1999/10/12 21:17:05 ea Exp $
|
||||||
*
|
*
|
||||||
* reactos/subsys/psxdll/misc/special.c
|
* reactos/subsys/psxdll/misc/special.c
|
||||||
*
|
*
|
||||||
* ReactOS Operating System
|
* ReactOS Operating System
|
||||||
* - POSIX+ client side DLL (ReactOS POSIX+ Subsystem)
|
* - POSIX+ client side DLL (ReactOS POSIX+ Subsystem)
|
||||||
*/
|
*/
|
||||||
|
#define NTOS_MODE_USER
|
||||||
#include <ntos.h>
|
#include <ntos.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; $Id: psxdll.def,v 1.2 1999/09/12 21:54:16 ea Exp $
|
; $Id: psxdll.def,v 1.3 1999/10/12 21:17:04 ea Exp $
|
||||||
;
|
;
|
||||||
; psxdll.def
|
; psxdll.def
|
||||||
;
|
;
|
||||||
|
@ -41,7 +41,7 @@ RtlZeroMemory@8
|
||||||
__PdxGetCmdLine@0
|
__PdxGetCmdLine@0
|
||||||
__PdxInitializeData@8
|
__PdxInitializeData@8
|
||||||
;__findenv
|
;__findenv
|
||||||
;_exit
|
_exit
|
||||||
;_fdptcheck
|
;_fdptcheck
|
||||||
;_sigjmp_store_mask
|
;_sigjmp_store_mask
|
||||||
;accept
|
;accept
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
; $Id: psxdll.edf,v 1.1 1999/09/12 21:54:16 ea Exp $
|
; $Id: psxdll.edf,v 1.2 1999/10/12 21:17:04 ea Exp $
|
||||||
;
|
;
|
||||||
; psxdll.edf
|
; psxdll.edf
|
||||||
;
|
;
|
||||||
|
@ -41,7 +41,7 @@ RtlZeroMemory=RtlZeroMemory@8
|
||||||
__PdxGetCmdLine=__PdxGetCmdLine@0
|
__PdxGetCmdLine=__PdxGetCmdLine@0
|
||||||
__PdxInitializeData=__PdxInitializeData@8
|
__PdxInitializeData=__PdxInitializeData@8
|
||||||
;__findenv
|
;__findenv
|
||||||
;_exit
|
_exit
|
||||||
;_fdptcheck
|
;_fdptcheck
|
||||||
;_sigjmp_store_mask
|
;_sigjmp_store_mask
|
||||||
;accept
|
;accept
|
||||||
|
|
Loading…
Reference in a new issue