Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - dsaddan

Pages: [1]
1
Newbie / No problem ...
« on: May 13, 2017, 04:53:33 AM »
There is no particular rush.

2
Newbie / Skip to patch Darwinbots2UnitTests_09_05_2017.patch
« on: May 08, 2017, 05:55:56 PM »
Hi:

Please ignore Darwinbots2UnitTests_07_05_2017.patch and skip to Darwinbots2UnitTests_09_05_2017.patch
https://app.caspitweb.biz/content/db/Darwinbots2UnitTests_09_05_2017.7z

Reason:
patch 07_05_2017 would not complie to an exe so I imported the missing modules, forms and classes.
I added more tests.

Dror

3
Newbie / I added several unit tests
« on: May 07, 2017, 02:51:45 PM »
Hi:

I added the some unit tests for common.bas.

I found a bug in fRnd:
fRnd(10,10) ==> 11



In order to run the code you will need to do the following:

1. Install SimplyVBUnit 4.1.6 from http:// https://sourceforge.net/projects/simplyvbunit/files/latest/download
2. The DarwinBots2UnitTests.vbp contains two references that may be different in your system. Edit the file if necessary:

2   Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\Windows\SysWOW64\stdole2.tlb#OLE Automation
3   Reference=*\G{923925AC-1013-4D27-9FB1-4FF0B3B47BA2}#4.0#0#C:\WINDOWS\SysWow64\SimplyVBUnitType.tlb#SimplyVBUnit Type Library 4.0

The patch is here:
https://app.caspitweb.biz/content/db/Darwinbots2UnitTests_07_05_2017.7z

Dror

4
Newbie / Unit Tests
« on: May 07, 2017, 08:43:45 AM »
OK. I will look inyo creating unit tests for DB2.

What about minor changes to the code? For example:

Public Function SysvarTok(a As String, Optional n As Integer = 0) As Integer
  Dim t As Integer
 
  If Left(a, 1) = "." Then
    a = Right(a, Len(a) - 1)
       
    For t = 1 To UBound(sysvar)
      If LCase(sysvar(t).Name) = LCase(a) Then SysvarTok = sysvar(t).value
    Next t
   
    If n > 0 Then
      For t = 1 To UBound(rob(n).vars)
        If rob(n).vars(t).Name = a Then SysvarTok = rob(n).vars(t).value
      Next t
    End If
  Else
    SysvarTok = val(a)
  End If
End Function



Would not it be better to
LCase "a" just once?
LCase in the second loop on rob(n).vars?
Exit a loop once you have a hit?
Skip the first loop if n > 0 since we overwrite SysvarTok in the second loop? ==> Simply switch the loop order
Raise an error if the "a" is not found in sysvars or robot vars? Currently the code ignores the error and returns 0.

Why is there a need to LCase sysvar(I).Name) when this could be done after initializing sysvar?
Looks to me that this LCase is done for each DNA strand of each copy of each robot when starting the sim. Very wasteful.



'---------------------------------------------------------------------------------------
' Procedure : SysvarTok
' Author    :
' Date      : 07/05/2017
' Purpose   :
'---------------------------------------------------------------------------------------
Public Function SysVarTok(a As String, Optional n As Integer = 0) As Integer
10      On Error GoTo func_err
        Const FUNC_NAME = MOD_NAME & "SysVarTok"
        Dim I As Integer
       

20      If Left(a, 1) = "." Then
30        a = LCase(Right(a, Len(a) - 1))
             
40        If n > 0 Then
50          For I = 1 To UBound(rob(n).vars)
60            If LCase(rob(n).vars(I).Name) = a Then
70                SysVarTok = rob(n).vars(I).value
80                Exit Function
90            End If
100         Next
110       End If

120       For I = 1 To UBound(sysvar)
130         If LCase(sysvar(I).Name) = a Then
140           SysVarTok = sysvar(I).value
150           Exit Function
160         End If
170       Next
         
180       Err.Raise 19999, "", "Unknown SysVar or robot vars: ." & a & " in bot number " & n
         
190     Else
200       SysVarTok = val(a)
210     End If

220   Exit Function

func_err:
230   Err.Raise Err.Number, FUNC_NAME & "[" & Erl & "]" & "\" & Err.source, Err.Description
End Function



Dror

5
I will be happy to work on the DB2 VB6 code to get to know the application.

Do you need any work such as bug fixing done there?

Dror

6
Newbie / Re: Where can I find the latest source code (ver 2.48.32)?
« on: May 06, 2017, 05:30:56 PM »
Thanks.

I installed TortoiseSVN and checked out the code.

Dror

7
Newbie / Where can I find the latest source code (ver 2.48.32)?
« on: May 06, 2017, 06:07:37 AM »
Hi:

I was able to download the source code for version 2.44.1, but I did not find the source for version 2.48.32.

I identified several changes between the versions. E.g. veggie behave differently (ver 2.44.1 sysvar does not contain .chlr nor .mkchlr), there is no Sun On indication (a yellow bar in the top of the sim screen), ...)

Is is possible to make the missing source code available?

Thanks,

Dror

8
Newbie / Hi
« on: May 06, 2017, 04:24:22 AM »
Hi:

I just registered to the forum. I have a few questions:

Is the project alive in the sense that there is an active development going on?

Is there a development team that I can join?

Dror

Pages: [1]