Commit Graph

6 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
a50c4b0baf 2010-09-28 17:46 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcom.ch
    + added new error constant value: HB_COM_ERR_IO
  * harbour/src/rtl/hbcom.c
    + added translation for some important OS error code
      in *nix builds
    + added translation ERROR_TIMEOUT -> HB_COM_ERR_TIMEOUT
      in Windows build.
      TODO: check real error codes for it and also for other
            operations like opening the same port more then
            once and add valid translations
    ; TODO: add some basic trnaslation for OS2 error codes.
      HB_COM_ERR_TIMEOUT seems to be most important for portable
      programs.
2010-09-28 15:47:08 +00:00
Przemyslaw Czerpak
61854e0dda 2010-09-28 08:32 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbcom.ch
    * updated few comments

  * harbour/include/hbapicom.h
  * harbour/src/rtl/hbcom.c
    + added new C function:
         HB_FHANDLE hb_comGetDeviceHandle( int iPort );
    * small cleanup in OS2 flow control setting

  * harbour/src/rtl/hbcomhb.c
    + added new PRG function
         HB_COMGETDEVICEHANDLE( nPort )  --> nHandle | F_ERROR
    * modified HB_COMFLOWCONTROL() to not change existing flow control
      when 3-rd parameter is missing:
         HB_COMFLOWCONTROL( nPort, @nOldFlow [, nNewFlow] ) --> lSuccess

  * harbour/contrib/hbmzip/hbmzip.c
    ! fixed date setting in HB_ZIPFILECREATE()
2010-09-28 06:32:51 +00:00
Mindaugas Kavaliauskas
8d2c665f98 2010-06-28 17:22 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
* harbour/include/hbcom.ch
  * harbour/rtl/hbcom.c
    * implemented new error code HB_COM_ALREADYOPEN in hb_comOpen()
  * harbour/contrib/hbct/ctcom1.c
    * changed COM_OPEN() behaviour to be compatible with HBCOM API 
      and original CT behaviour
2010-06-28 14:23:11 +00:00
Viktor Szakats
8223f81fa6 2010-06-10 18:44 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* include/hbcom.ch
    * Changed functions names to use proper camelcasing so that
      they also hold true for C level API.

  * include/hbsocket.ch
    + Readded .prg level function names to address array constant
      comment.
    + Added 'this is also used in C file' comment.

  * contrib/hbsms/hbsms.prg
    ! Fixed COM port reading function after last update.
      I finally restored original defaulting logic (instead of
      FETCHCHARS() method) which by default waits for 64 bytes
      and 5 seconds. Pls check me.
2010-06-10 16:45:33 +00:00
Viktor Szakats
c8a32bfc8c 2010-06-09 19:56 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* utils/hbmk2/hbmk2.prg
    + Quite big commit aiming to clean path forming in different
      situations. After this is change it should be more or less
      true that internally hbmk2 always uses native path format,
      it should accept _any_ format regardless of platform,
      and it should convert filenames to proper format only when
      calling external compiler tools, according to their specific
      taste.
      F.e. this should fix problems when doing Windows cross-build
      on *nix systems, with watcom, or other compilers (except
      mingw) which has native compiler. It should continue to
      work with WINE based on compilers in similar situations.
      There is one specific exception when passing around
      filenames as part of options. In this case hbmk2 cannot do
      too much magic, so try to avoid it.
      Though I never actualluy tried this latter case.
      Please test it, regressions are possible. I'd be happy to 
      see stress tests with passing various combination of pathseps 
      and watching -trace output whether everything is properly 
      converted to right format.
    + Will now convert filenames to Cygwin format for Cygwin
      targets.
    ! Fixed to accept .hbi files without '@' prefix.

  * config/postinst.prg
    % Do not add '@' prefix when referring to .hbi files.

  * src/vm/extend.c
    ! Fixed TRACE message of new hb_parnintdef() function.

  * src/rtl/hbcomhb.c
    * Minor correction to one function description in comment.

  * src/rtl/hbsocket.c
    * Minor formatting.

  * include/hbcom.ch
    + Added comments.
    * Formatting.
    + Added comment that code is used by .c code.

  * contrib/hbtpathy/telepath.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).
    + tp_send() code rewritten to use core timeout functionality.
    + Implemented formerly disabled tp_ctrldtr() function.
      (pls review it)
    % FetchChars() internal function simplified.

  * contrib/hbcomm/hbcomm.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).

  * contrib/hbsms/hbsms.prg
    * Rewritten to use native HB_COM*() API (instead of hbct
      specific COM_() one).
    * Receive code rewritten to rely on core timeout functionality
      instead of rolling local implementation.

  ; I didn't make any tests with API converted COM code, so please
    review and test these changes.

  * contrib/hbtpathy/hbtpathy.hbc
  * contrib/hbcomm/hbcomm.hbc
  * contrib/hbsms/hbsms.hbc
    - Deleted hbct dependency.

  * INSTALL
  * package/winuni/RELNOTES
    * QT 4.6.2 -> 4.6.3
2010-06-09 17:57:34 +00:00
Mindaugas Kavaliauskas
f6ad555233 2010-06-09 18:37 UTC+0300 Mindaugas Kavaliauskas (dbtopas/at/dbtopas.lt)
+ harbour/src/rtl/hbcomhb.c
  * harnour/src/rtl/Makefile
  * harbour/include/hbextern.ch
    + added wrapper functions for Serial communication port API
      The list of exported functions is:
        HB_COMCLOSE( nPort )  --> lSuccess
        HB_COMDISCARDCHAR( nPort, nChar | cChar ) --> lSuccess
        HB_COMERRORCHAR( nPort, nChar | cChar ) --> lSuccess
        HB_COMFLOWCHARS( nPort, nXONchar | cXONchar, nXOFFchar | cXOFFchar ) --> lSuccess
        HB_COMFLOWCONTROL( nPort, @iValue, nFlow ) --> lSuccess
        HB_COMFLOWSET( nPort, nFlow ) --> lSuccess
        HB_COMFLUSH( nPort, [ nType = HB_COM_IOFLUSH ] ) --> lSuccess
        HB_COMGETDEVICE( nPort )  --> cDeviceName
        HB_COMGETERROR( nPort ) --> nError
        HB_COMGETOSERROR( nPort ) --> nError
        HB_COMINIT( nPort, nBaud, cParity, nSize, nStop ) --> lSuccess
        HB_COMINPUTCOUNT( nPort ) --> nCount
        HB_COMINPUTSTATE( nPort ) --> nState
        HB_COMLASTNUM() --> nLastPortNumber
        HB_COMLSR( nPort, @nValue ) --> lSuccess
        HB_COMMCR( nPort, @nValue, nClear, nSet ) --> lSuccess
        HB_COMMSR( nPort, @nValue ) --> lSuccess
        HB_COMOPEN( nPort ) --> lSuccess
        HB_COMOUTPUTCOUNT( nPort ) --> nCount
        HB_COMOUTPUTSTATE( nPort ) --> nState
        HB_COMSENDBREAK( nPort, [ nDuration = 50 ] ) --> lSuccess
        HB_COMSETDEVICE( nPort, cDeviceName ) --> lSuccess
        HB_COMRECV( nPort, @cBuffer, [ nLen = LEN( cBuffer ) ], [ nTimeout = 0 ] ) --> nBytesRecv
        HB_COMSEND( nPort, cBuffer, [ nLen = LEN( cBuffer ) ], [ nTimeout = 0 ] ) --> nBytesSent

  + harbour/include/hbcom.ch
  * harbour/include/hbapicom.h
    * moved HB_COM_* constants to .ch file

  + harbour/examples/commouse
  + harbour/examples/commouse/commouse.prg
    + sample application to decode and display COM port mouse data.
      Two types of mouse protocol is supported. You just need to 
      find COM port mouse! :) 

  * harbour/src/rtl/hbcom.c
    ! fixed timeouts on Windows platform (thanks Przemek!)
2010-06-09 15:37:23 +00:00