VirtualBox

source: kStuff/trunk/kLdr/kLdrA-os2.asm@ 113

Last change on this file since 113 was 29, checked in by bird, 16 years ago

Finally got around execute the switch to the MIT license.

  • Property svn:keywords set to Id Revision
File size: 1.9 KB
Line 
1; $Id: kLdrA-os2.asm 29 2009-07-01 20:30:29Z bird $
2;; @file
3; kLdr - The Dynamic Loader, OS/2 Assembly Helpers.
4;
5
6;
7; Copyright (c) 2006-2007 Knut St. Osmundsen <[email protected]>
8;
9; Permission is hereby granted, free of charge, to any person
10; obtaining a copy of this software and associated documentation
11; files (the "Software"), to deal in the Software without
12; restriction, including without limitation the rights to use,
13; copy, modify, merge, publish, distribute, sublicense, and/or sell
14; copies of the Software, and to permit persons to whom the
15; Software is furnished to do so, subject to the following
16; conditions:
17;
18; The above copyright notice and this permission notice shall be
19; included in all copies or substantial portions of the Software.
20;
21; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
23; OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24; NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
25; HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
26; WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27; FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
28; OTHER DEALINGS IN THE SOFTWARE.
29;
30
31segment TEXT32 public align=16 CLASS=CODE use32
32
33;
34; _DLL_InitTerm
35;
36..start:
37extern _DLL_InitTerm
38 jmp _DLL_InitTerm
39
40
41;
42; kLdrLoadExe wrapper which loads the bootstrap stack.
43;
44global _kLdrDyldLoadExe
45_kLdrDyldLoadExe:
46 push ebp
47 mov ebp, esp
48
49 ; switch stack.
50; extern _abStack
51; lea esp, [_abStack + 8192 - 4]
52 push dword [ebp + 8 + 20]
53 push dword [ebp + 8 + 16]
54 push dword [ebp + 8 + 12]
55 push dword [ebp + 8 + 8]
56
57 ; call worker on the new stack.
58 extern _kldrDyldLoadExe
59 call _kldrDyldLoadExe
60
61 ; we shouldn't return!
62we_re_not_supposed_to_get_here:
63 int3
64 int3
65 jmp short we_re_not_supposed_to_get_here
66
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette