1 | ; $Id: VBoxHlp.asm 98103 2023-01-17 14:15:46Z vboxsync $
|
---|
2 | ;; @file
|
---|
3 | ; VBox Qt GUI - Implementation of OS/2-specific helpers that require to reside in a DLL.
|
---|
4 | ;
|
---|
5 | ; This stub is used to avoid linking the helper DLL to the C runtime.
|
---|
6 | ;
|
---|
7 |
|
---|
8 | ;
|
---|
9 | ; Copyright (C) 2008-2023 Oracle and/or its affiliates.
|
---|
10 | ;
|
---|
11 | ; This file is part of VirtualBox base platform packages, as
|
---|
12 | ; available from https://www.virtualbox.org.
|
---|
13 | ;
|
---|
14 | ; This program is free software; you can redistribute it and/or
|
---|
15 | ; modify it under the terms of the GNU General Public License
|
---|
16 | ; as published by the Free Software Foundation, in version 3 of the
|
---|
17 | ; License.
|
---|
18 | ;
|
---|
19 | ; This program is distributed in the hope that it will be useful, but
|
---|
20 | ; WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
21 | ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
22 | ; General Public License for more details.
|
---|
23 | ;
|
---|
24 | ; You should have received a copy of the GNU General Public License
|
---|
25 | ; along with this program; if not, see <https://www.gnu.org/licenses>.
|
---|
26 | ;
|
---|
27 | ; SPDX-License-Identifier: GPL-3.0-only
|
---|
28 | ;
|
---|
29 |
|
---|
30 | ;; @todo BEGINCODE gives us this:
|
---|
31 | ;
|
---|
32 | ; 02-03-2008 22:19:37 SYS3175 PID 4383 TID 0001 Slot 0076
|
---|
33 | ; D:\CODING\INNOTEK\VBOX\OUT\OS2.X86\RELEASE\BIN\VIRTUALBOX.EXE
|
---|
34 | ; c0000005
|
---|
35 | ; 17d40000
|
---|
36 | ; P1=00000008 P2=0000bea4 P3=XXXXXXXX P4=XXXXXXXX
|
---|
37 | ; EAX=00001489 EBX=00000000 ECX=00000000 EDX=00000000
|
---|
38 | ; ESI=00000000 EDI=00001489
|
---|
39 | ; DS=be7f DSACC=00f3 DSLIM=0000003f
|
---|
40 | ; ES=0053 ESACC=f0f3 ESLIM=ffffffff
|
---|
41 | ; FS=150b FSACC=00f3 FSLIM=00000030
|
---|
42 | ; GS=0000 GSACC=**** GSLIM=********
|
---|
43 | ; CS:EIP=bea7:00000000 CSACC=00f2 CSLIM=00000002
|
---|
44 | ; SS:ESP=01d7:0000ffe8 SSACC=00f3 SSLIM=0000ffff
|
---|
45 | ; EBP=00000000 FLG=00012202
|
---|
46 | ;
|
---|
47 | ; VBOXHLP.DLL 0003:00000000
|
---|
48 | ;
|
---|
49 | ; Looks like the previous 'segment TEXT32 ...' definition in asmdefs.mac
|
---|
50 | ; is ignored and the segment is redefined as if it had no 'CLASS=CODE...'
|
---|
51 | ; attributes...
|
---|
52 |
|
---|
53 | ;%include "iprt/asmdefs.mac"
|
---|
54 | ;
|
---|
55 | ;BEGINCODE
|
---|
56 |
|
---|
57 | segment TEXT32 public CLASS=CODE align=16 use32 flat
|
---|
58 |
|
---|
59 | extern _DLL_InitTerm
|
---|
60 |
|
---|
61 | ; Low-level DLL entry point - Forward to the C code.
|
---|
62 | ..start:
|
---|
63 | jmp _DLL_InitTerm
|
---|
64 |
|
---|
65 |
|
---|
66 | ; emxomfld may generate references to this for weak symbols. It is usually
|
---|
67 | ; found in in libend.lib.
|
---|
68 | ABSOLUTE 0
|
---|
69 | global WEAK$ZERO
|
---|
70 | WEAK$ZERO:
|
---|
71 |
|
---|