mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-15 11:09:16 +02:00
Merged revisions 1267 via svnmerge from
http://svn.freepascal.org/svn/fpc/trunk r1267 (florian) * U_SYSTEM_HINSTANCE -> U_SYSTEM_SYSINSTANCE git-svn-id: branches/fixes_2_0@1273 -
This commit is contained in:
parent
0c9c25f5e8
commit
62a17d5a3f
@ -1,84 +1,84 @@
|
||||
// DLL Startup code for WIN32 port of Free Pascal
|
||||
// Written by P.Ozerski 16.10.1998
|
||||
.text
|
||||
.globl _mainCRTStartup
|
||||
_mainCRTStartup:
|
||||
movb $1,U_SYSTEM_ISCONSOLE
|
||||
jmp .LDLL_Entry
|
||||
.globl _WinMainCRTStartup
|
||||
_WinMainCRTStartup:
|
||||
movb $0,U_SYSTEM_ISCONSOLE
|
||||
.LDLL_Entry:
|
||||
pushl %ebp
|
||||
movl %esp,%ebp
|
||||
pushl %ebx
|
||||
pushl %esi
|
||||
pushl %edi
|
||||
movl 8(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_HINSTANCE
|
||||
movl 12(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_DLLREASON
|
||||
movl 16(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_DLLPARAM
|
||||
call _FPC_DLL_Entry
|
||||
popl %edi
|
||||
popl %esi
|
||||
popl %ebx
|
||||
popl %ebp
|
||||
ret $12
|
||||
|
||||
.globl asm_exit
|
||||
asm_exit:
|
||||
pushl %eax
|
||||
call exitprocess
|
||||
|
||||
.text
|
||||
.globl exitprocess
|
||||
exitprocess:
|
||||
jmp *.L10
|
||||
.balign 4,144
|
||||
|
||||
.text
|
||||
.balign 4,144
|
||||
|
||||
.section .idata$2
|
||||
.rva .L7
|
||||
.long 0,0
|
||||
.rva .L6
|
||||
.rva .L8
|
||||
|
||||
.section .idata$4
|
||||
.L7:
|
||||
.rva .L9
|
||||
.long 0
|
||||
|
||||
.section .idata$5
|
||||
.L8:
|
||||
|
||||
|
||||
.section .idata$5
|
||||
.L10:
|
||||
.rva .L9
|
||||
.long 0
|
||||
|
||||
.section .idata$6
|
||||
.L9:
|
||||
.short 0
|
||||
.ascii "ExitProcess\000"
|
||||
.balign 2,0
|
||||
|
||||
.section .idata$7
|
||||
.L6:
|
||||
.ascii "kernel32.dll\000"
|
||||
|
||||
|
||||
//
|
||||
|
||||
// Revision 1.4 2002/12/04 21:36:44 carl
|
||||
// * libraries would no longer compile because of my profiling fix
|
||||
//
|
||||
// Revision 1.3 2002/07/28 20:43:51 florian
|
||||
// * several fixes for linux/powerpc
|
||||
// * several fixes to MT
|
||||
//
|
||||
//
|
||||
// DLL Startup code for WIN32 port of Free Pascal
|
||||
// Written by P.Ozerski 16.10.1998
|
||||
.text
|
||||
.globl _mainCRTStartup
|
||||
_mainCRTStartup:
|
||||
movb $1,U_SYSTEM_ISCONSOLE
|
||||
jmp .LDLL_Entry
|
||||
.globl _WinMainCRTStartup
|
||||
_WinMainCRTStartup:
|
||||
movb $0,U_SYSTEM_ISCONSOLE
|
||||
.LDLL_Entry:
|
||||
pushl %ebp
|
||||
movl %esp,%ebp
|
||||
pushl %ebx
|
||||
pushl %esi
|
||||
pushl %edi
|
||||
movl 8(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_SYSINSTANCE
|
||||
movl 12(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_DLLREASON
|
||||
movl 16(%ebp),%edi
|
||||
movl %edi,U_SYSTEM_DLLPARAM
|
||||
call _FPC_DLL_Entry
|
||||
popl %edi
|
||||
popl %esi
|
||||
popl %ebx
|
||||
popl %ebp
|
||||
ret $12
|
||||
|
||||
.globl asm_exit
|
||||
asm_exit:
|
||||
pushl %eax
|
||||
call exitprocess
|
||||
|
||||
.text
|
||||
.globl exitprocess
|
||||
exitprocess:
|
||||
jmp *.L10
|
||||
.balign 4,144
|
||||
|
||||
.text
|
||||
.balign 4,144
|
||||
|
||||
.section .idata$2
|
||||
.rva .L7
|
||||
.long 0,0
|
||||
.rva .L6
|
||||
.rva .L8
|
||||
|
||||
.section .idata$4
|
||||
.L7:
|
||||
.rva .L9
|
||||
.long 0
|
||||
|
||||
.section .idata$5
|
||||
.L8:
|
||||
|
||||
|
||||
.section .idata$5
|
||||
.L10:
|
||||
.rva .L9
|
||||
.long 0
|
||||
|
||||
.section .idata$6
|
||||
.L9:
|
||||
.short 0
|
||||
.ascii "ExitProcess\000"
|
||||
.balign 2,0
|
||||
|
||||
.section .idata$7
|
||||
.L6:
|
||||
.ascii "kernel32.dll\000"
|
||||
|
||||
|
||||
//
|
||||
|
||||
// Revision 1.4 2002/12/04 21:36:44 carl
|
||||
// * libraries would no longer compile because of my profiling fix
|
||||
//
|
||||
// Revision 1.3 2002/07/28 20:43:51 florian
|
||||
// * several fixes for linux/powerpc
|
||||
// * several fixes to MT
|
||||
//
|
||||
//
|
||||
|
Loading…
Reference in New Issue
Block a user