• Successfully compiled overlayed binaries

    From Mvan Le@1:343/41 to All on Friday, February 05, 2010 07:48:08
    I have now successfully built overlayed DOS executables using Watcom 10.6 under
    Windows XP Service Pack 2:

    ============================================================================ C:\dv\s3\exe\max>dir
    Volume in drive C has no label.
    Volume Serial Number is C097-5E23

    Directory of C:\dv\s3\exe\max

    06/02/2010 01:06 AM <DIR> .
    06/02/2010 01:06 AM <DIR> ..
    06/02/2010 01:06 AM 553,091 max.exe
    06/02/2010 01:06 AM 392,912 max.ovl
    06/02/2010 01:06 AM 1,195,146 maxd.exe
    3 File(s) 2,141,149 bytes
    2 Dir(s) 25,853,984,768 bytes free

    C:\dv\s3\exe\max> ============================================================================

    Preliminary testing shows that it works. Online games also work (via NetFoss):

    ============================================================================
    + 06 Feb 01:07:12 MAX Begin, v3.02-1 (task=1)
    06 Feb 01:07:12 MAX Your Public Access Network

    Mvan Le (Y,n)? y

    Password: ============================================================================

    The NT build however doesn't work very well. The 10.6 Wlinker complains about undefined references ...

    ============================================================================ ...
    ...
    ...
    cd comdll && c:\dv\cvs\dmaken.exe
    wcc386 /dNT -bt=NT /j/zp1/4/fp3/onmaxte100 /Fo=W3n\ntcomm.obj /bd .\ntcomm.c wcc386 /dNT -bt=NT /j/zp1/4/fp3/onmaxte100 /Fo=W3n\ntcommdl.obj /bd .\ntcommdl.c
    wlink libpath c:\dv\comp\wc15\lib386\nt lib nt,kernel32,user32 @ntcomm
    WATCOM Linker Version 10.6
    Copyright by WATCOM International Corp. 1985, 1996. All rights reserved.
    WATCOM is a trademark of WATCOM International Corp.
    Warning(1038): file ntcomm.lnk: line(1): DEBUG directive appears after object files
    Warning(1028): _ComOpenHandle is an undefined reference
    Warning(1028): _ComOpen is an undefined reference
    Warning(1028): _ComClose is an undefined reference
    Warning(1028): _ComIsOnline is an undefined reference
    Warning(1028): _ComWrite is an undefined reference
    Warning(1028): _ComRead is an undefined reference
    Warning(1028): _ComGetc is an undefined reference
    Warning(1028): _ComPeek is an undefined reference
    Warning(1028): _ComPutc is an undefined reference
    Warning(1028): _ComRxWait is an undefined reference
    Warning(1028): _ComTxWait is an undefined reference
    Warning(1028): _ComInCount is an undefined reference
    Warning(1028): _ComOutCount is an undefined reference
    Warning(1028): _ComOutSpace is an undefined reference
    Warning(1028): _ComPurge is an undefined reference
    Warning(1028): _ComGetHandle is an undefined reference
    Warning(1028): _ComGetDCB is an undefined reference
    Warning(1028): _ComSetDCB is an undefined reference
    Warning(1028): _ComSetBaudRate is an undefined reference
    Warning(1028): _ComPause is an undefined reference
    Warning(1028): _ComResume is an undefined reference
    Warning(1028): _ComWatchDog is an undefined reference
    Error(2044): exported symbol _ComOpenHandle not found
    Error(2044): exported symbol _ComOpen not found
    Error(2044): exported symbol _ComClose not found
    Error(2044): exported symbol _ComIsOnline not found
    Error(2044): exported symbol _ComWrite not found
    Error(2044): exported symbol _ComRead not found
    Error(2044): exported symbol _ComGetc not found
    Error(2044): exported symbol _ComPeek not found
    Error(2044): exported symbol _ComPutc not found
    Error(2044): exported symbol _ComRxWait not found
    Error(2044): exported symbol _ComTxWait not found
    Error(2044): exported symbol _ComInCount not found
    Error(2044): exported symbol _ComOutCount not found
    Error(2044): exported symbol _ComOutSpace not found
    Error(2044): exported symbol _ComPurge not found
    Error(2044): exported symbol _ComGetHandle not found
    Error(2044): exported symbol _ComGetDCB not found
    Error(2044): exported symbol _ComSetDCB not found
    Error(2044): exported symbol _ComSetBaudRate not found
    Error(2044): exported symbol _ComPause not found
    Error(2044): exported symbol _ComResume not found
    Error(2044): exported symbol _ComWatchDog not found
    dmaken.exe: Error code 129, while making 'c:\dv\s3\dll\ntcomm.dll'
    dmaken.exe: Error code 255, while making 'comdll'
    *** make nt Compilation error encountered. Terminating build.
    Ended: Sat 06/02/2010 @ 1:30:41.89

    C:\dv\s3> ============================================================================

    I can produce NT executables with Watcom 11.0c however there seems to be some very odd keyboard mapping issues with "maxn.exe" and "maxnd.exe". None of my input key strokes work or get recognised properly. For example "Alt-X" in WFC mode says "Junk character from keyboard":

    +-] Current Activity ]------------------------------------------------------+
    ] ]
    ] ] ]: 06 Feb 02:24:59 MAX Waiting for caller (event in 170 mins) ]
    ] 06 Feb 02:30:54 MAX Junk character from keyboard ]
    ] 06 Feb 02:30:54 MAX Junk character from keyboard ] +---------------------------------------------------------------------------+

    But I'm happy that I seem to have a working DOS binary :) Atleast now I have something to start working on.

    --- Maximus/2 3.01
    * Origin: Top Hat 2 BBS (1:343/41)
  • From Mvan Le to Mvan Le on Friday, February 05, 2010 12:16:19
    Re: Successfully compiled overlayed binaries
    By: Mvan Le to All on Fri Feb 05 2010 07:48 am

    dmaken.exe: Error code 129, while making 'c:\dv\s3\dll\ntcomm.dll' dmaken.exe: Error code 255, while making 'comdll'
    *** make nt Compilation error encountered. Terminating build.
    Ended: Sat 06/02/2010 @ 1:30:41.89

    C:\dv\s3> ============================================================================

    I can produce NT executables with Watcom 11.0c however there seems to be som very odd keyboard mapping issues with "maxn.exe" and "maxnd.exe". None of my input key strokes work or get recognised properly. For example "Alt-X" in WF mode says "Junk character from keyboard":

    I managed to work around this problem by following the procedure:

    ============================================================================= How to build "maxn.exe" and "maxnd.exe" that works:

    1. "make dos" with Watcom 10.6
    2. "make nt" with Watcom 10.6 to build W3n SLIB

    When the build dies on comdll,

    3. Switch to Watcom 11.0c
    4. Delete c:\dv\s3\comdll\w3n\*.obj
    5. "make nt" (with Watcom 11.0c)

    The above steps should produce working "maxn.exe" and "maxnd.exe". =============================================================================

    Not the most ideal solution but it works. I will have to change the makefiles to use both compilers to create a smooth build process.