Changeset 2884


Ignore:
Timestamp:
Nov 18, 2006, 1:55:48 PM (19 years ago)
Author:
bird
Message:

buildable.

Location:
trunk/kLdr
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/kLdr/Makefile.kmk

    r2883 r2884  
    130130kLdrExeStub-os2_ASTOOL = NASM
    131131kLdrExeStub-os2_ASFLAGS = -f obj
    132 kLdrExeStub-os2_LDFLAGS = -nostdlib
     132#kLdrExeStub-os2_LDFLAGS = -nostdlib
     133kLdrExeStub-os2_LDFLAGS = -nostdlib -Zstack 64
    133134kLdrExeStub-os2_LIBS = $(TARGET_kLdr)
    134 kLdrExeStub-os2_SOURCES = kLdrExeStub-os2.asm
     135#kLdrExeStub-os2_SOURCES = kLdrExeStub-os2.asm
     136kLdrExeStub-os2_SOURCES =  kLdrExeStub-os2A.asm kLdrExeStub-os2.c
    135137
    136138#
  • trunk/kLdr/kLdr-os2.def

    r2834 r2884  
    2929DATA MULTIPLE
    3030EXPORTS
    31     ; Process Bootstrapping and exec:
    32     _kLdrLoadExe
     31    ; The file reader API
     32    _kLdrRdrAddProvider
     33    _kLdrRdrOpen
     34    _kLdrRdrClose
     35    _kLdrRdrRead
     36    _kLdrRdrAllMap
     37    _kLdrRdrAllUnmap
     38    _kLdrRdrSize
     39    _kLdrRdrTell
     40    _kLdrRdrName
     41    _kLdrRdrPageSize
     42    _kLdrRdrMap
     43    _kLdrRdrRefresh
     44    _kLdrRdrProtect
     45    _kLdrRdrUnmap
     46    _kLdrRdrDone
     47
     48    ; The module interpreter API
     49    _kLdrModOpen
     50    _kLdrModOpenFromRdr
     51    _kLdrModOpenNative
     52    _kLdrModOpenNativeByHandle
     53    _kLdrModClose
     54    _kLdrModQuerySymbol
     55    _kLdrModEnumSymbols
     56    _kLdrModGetImport
     57    _kLdrModNumberOfImports
     58    _kLdrModCanExecuteOn
     59    _kLdrModGetStackInfo
     60    _kLdrModQueryMainEntrypoint
     61    _kLdrModEnumDbgInfo
     62    _kLdrModHasDbgInfo
     63    _kLdrModMap
     64    _kLdrModUnmap
     65    _kLdrModAllocTLS
     66    _kLdrModFreeTLS
     67    _kLdrModReload
     68    _kLdrModFixupMapping
     69    _kLdrModCallInit
     70    _kLdrModCallTerm
     71    _kLdrModCallThread
     72    _kLdrModSize
     73    _kLdrModGetBits
     74    _kLdrModRelocateBits
     75
     76    ; Process Bootstrapping
     77    _kLdrDyldLoadExe
     78
     79    ; Dynamic loading
     80    _kLdrDyldLoad
     81    _kLdrDyldUnload
     82    _kLdrDyldFindByName
     83    _kLdrDyldFindByAddress
     84    _kLdrDyldGetName
     85    _kLdrDyldGetFilename
     86    _kLdrDyldQuerySymbol
     87
    3388
    3489    ; OS/2 API wrappers:
  • trunk/kLdr/kLdrA-os2.asm

    r2834 r2884  
    3939; kLdrLoadExe wrapper which loads the bootstrap stack.
    4040;
    41 global _kldrLoadExe
    42 _kldrLoadExe:
     41global _kLdrDyldLoadExe
     42_kLdrDyldLoadExe:
    4343    push    ebp
    4444    mov     ebp, esp
    4545
    4646    ; switch stack.
    47     extern _abStack
    48     lea     esp, [_abStack + 8192 - 4]
     47;    extern _abStack
     48;    lea     esp, [_abStack + 8192 - 4]
    4949    push    dword [ebp + 8 + 20]
    5050    push    dword [ebp + 8 + 16]
     
    5353
    5454    ; call worker on the new stack.
    55     extern  kLdrLoadExe
    56     call    kLdrLoadExe
     55    extern  _kldrDyldLoadExe
     56    call    _kldrDyldLoadExe
    5757
    5858    ; we shouldn't return!
  • trunk/kLdr/kLdrExeStub-os2.asm

    r2834 r2884  
    1313
    1414struc KLDRARGS
    15     .fFlags         resd 260
     15    .fFlags         resd 1
     16    .enmSearch      resd 1
    1617    .szExecutable   resb 260
    17     .szLibPath      resb (4096 - 260 - 260 - 8)
     18    .szDefPrefix    resb 16
     19    .szDefSuffix    resb 16
     20    .szLibPath      resb (4096 - (4 + 4 + 16 + 16 + 260))
    1821endstruc
    1922
    20 extern _kLdrLoadExe
     23extern _kLdrDyldLoadExe
    2124
    2225
     
    2427..start:
    2528    push    args
    26     jmp     _kLdrLoadExe
     29    jmp     _kLdrDyldLoadExe
    2730
    2831;
     
    3336istruc KLDRARGS
    3437    at KLDRARGS.fFlags,         dd 0
    35     at KLDRARGS.szExecutable,   db 'hello.lx'
     38    at KLDRARGS.enmSearch,      dd 2 ;KLDRDYLD_SEARCH_HOST
     39    at KLDRARGS.szDefPrefix,    db ''
     40    at KLDRARGS.szDefSuffix,    db '.dll'
     41;    at KLDRARGS.szExecutable,   db 'tst-0.exe'
    3642    at KLDRARGS.szLibPath,      db ''
    3743iend
  • trunk/kLdr/tstkLdrHeap.c

    r2826 r2884  
    4444
    4545#define CHECK(expr) \
    46     do { if (!(expr)) { printf("tstkLdrHeap(%d): ERROR - %s\n", __LINE__, #expr); cErrors++; __debugbreak();} \
     46    do { if (!(expr)) { printf("tstkLdrHeap(%d): ERROR - %s\n", __LINE__, #expr); cErrors++; kldrHlpBreakpoint();} \
    4747    } while (0)
    4848
Note: See TracChangeset for help on using the changeset viewer.