To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.robotics.rcxOpen lugnet.robotics.rcx in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / RCX / 1122
1121  |  1123
Subject: 
Re: Bug in RCX 2.0 beta (Was: RIS 2.0 software now in beta)
Newsgroups: 
lugnet.robotics.rcx, lugnet.robotics
Date: 
Tue, 20 Mar 2001 21:01:31 GMT
Viewed: 
1915 times
  
Dear fellow Lego enthusiasts,

so far I did not receive any feedback to my problem report, neither from the
newsgroup, nor from Lego technical support. Could somebody please try to
confirm that I am not completely stupid in my analysis!

Regards,
Sebastian
--
Familie Wangick <familie.wangnick@t-online.de> schrieb in im Newsbeitrag:
G9opDv.B47@lugnet.com...
Dear all,

I have managed to pin down the problem a bit further. Please look at the
following program:

program foo {
    const c10 = 10
    main { forever {} }
    task test {
        local v2f
        local v2e
        local v2d
        v2f = 1
        v2e = 2
        v2d = v2e * c10
    }
}

If you download this script to the brick, and the upload it again, you • will
receive the following:

task,0,2,0,0x27,0x81

task,1,25,0,0x14,0x2f,0x02,0x01,0x00,0x14,0x2e,0x02,0x02,0x00,0x14,0x2f,0x00
,0x2e,0x00,0x54,0x2f,0x02,0x0a,0x00,0x14,0x2d,0x00,0x2f,0x00

Task 1 (the task test) translates as following into LASM:

task
1
25
0
0x14 setv 0x2f const 0x0001
0x2f
0x02
0x01
0x00
0x14 setv 0x2e const 0x0002
0x2e
0x02
0x02
0x00
0x14 setv 0x2f var 0x002e
0x2f
0x00
0x2e
0x00
0x54 mulv 0x2f const 0x000a
0x2f
0x02
0x0a
0x00
0x14 setv 0x2d var 0x002f
0x2d
0x00
0x2f
0x00

As you can see the compiler translates the general multiplication v2d = • v2e
* c10 into a setv tmp v2e, mulv tmp c10, setv v2d tmp sequence. When
allocating the temporary local variable if fails to respect the • user-defined
local variables, though -- it should have used the next free local • variable
0x2c for this operation!

Hope this help fixing the problem.

Regards,
Sebastian
--
Dipl.-Inform. Sebastian Wangnick

Familie Wangick <familie.wangnick@t-online.de> schrieb in im Newsbeitrag:
G9oKJq.1y2@lugnet.com...
Dear all,

I'm experiencing a strange phenomenon in my MindScript program which I
believe to be a bug, where within a task the assignment of a • multiplication
of a local variable (containing value 0) and a constant (set to 10) to a
second local variable would set a third local variable (containing 1) to
zero! If rewritten as a simple assignment and then a multiplying • assignment
the phenomenon disappears.

Please find attached the script exemplifying the issue. It expects a • light
sensor on 1, a motor turning the light sensor on B and a touch sensor on • 2
being triggered when the motor turned the light sensor to 180° • resp. -180°.

As a newbie to LEGO robotics (which both my son and me find fantastic) I
don't exclude that I overlooked some finesse of the RCX environment • though
...






Message has 1 Reply:
  Re: Bug in RCX 2.0 beta (Was: RIS 2.0 software now in beta)
 
(...) Hi Sebastian I think you're right in your analysis and TLG may silently have fixed the problem, because if you look at the Vision Command installation, you'll find that some of the SDK DLLs are newer in that release. For fun, I copied the DLLs (...) (24 years ago, 21-Mar-01, to lugnet.robotics.rcx, lugnet.robotics)

Message is in Reply To:
  Re: Bug in RCX 2.0 beta (Was: RIS 2.0 software now in beta)
 
Dear all, I have managed to pin down the problem a bit further. Please look at the following program: program foo { const c10 = 10 main { forever {} } task test { local v2f local v2e local v2d v2f = 1 v2e = 2 v2d = v2e * c10 } } If you download this (...) (24 years ago, 4-Mar-01, to lugnet.robotics.rcx, lugnet.robotics)

8 Messages in This Thread:


Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR