Announcement

Collapse
No announcement yet.

Serial com with SK-43DT

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    I have one more question re floating point. I have another app I am thinking about for this unit but need floating point.

    When I define a variable and set it

    var fpnum[2] ;

    fpnum:=0.625;

    I get a warning floating point is not supported. Does this mean the hardware I have does not support it.

    Comment


    • #32
      It means the compiler doesn't know how to do what you are after.

      Try

      flt_VAL(fpnum, "0.625") ;
      Mark

      Comment


      • #33
        Floating point working great. Thanks.

        I found your product in a Hamm radio magazine, QST. Someone used it in a project. I had been searching the web for something like this with not much luck.

        You guys need more exposure in the US. This is a really cool product.

        Comment


        • #34
          Hi Mark,

          One more question RE srt_Match()

          The internal function manual states

          “Returns 1 if successful, advancing ptr to the next position after the match
          Returns 0 if no match “

          The way I read this it should return a 1 if matched. The password buffer contains the string 7074.

          Var r,ptr;

          ptr:=str_Ptr(password_bufr);
          if(r:=str_Match(&ptr,"7074"))
          works OK
          endif

          ptr:=str_Ptr(password_bufr);
          r:=str_Match(&ptr,"7074");
          if(r == 1)
          Does NOT work (r is = 8)
          endif

          This does not seem logical to me Can you explain why the second code does not work? While I have it working, I want to get a better understanding of 4DGL.

          Thanks, Al

          Comment


          • #35
            What version of the manual says "Returns 1 if successful"?

            The text says "Returns 0 if no match, else advance ptr to the next position after the match and returns that value."

            Actually this is not quite right, a better description would be "Returns 0 if no match, else advance ptr to the next position after the match and returns a ptr to the match position."

            So the comparison should be

            if (r) which is the same as if (r != 0)

            Mark

            Comment


            • #36
              That makes sense.

              Document Date: 20th March 2010
              Document Revision: 2.0

              What is the latest?

              Comment


              • #37
                2010? Pretty sure Diablo didn't even exist back then. Which manual are you looking at?

                Workshop 'maintains' the latest manuals in the C:\Users\Public\Documents\4D Labs\4DUpdates\Manuals folder and will attempt to open it up on a relevant page by pressing F1
                Mark

                Comment


                • #38
                  Here is a screen shot of the first page. I can attach it if you want. it is 5.45 MB

                  I can't find a manual like it on the software page. I found this on your site doing a google search for 4DGL. It has all the stuff in it.
                  Attached Files

                  Comment


                  • #39
                    Gee would you have the URL?

                    Surely it isn't there anymore, it's well out of date
                    Mark

                    Comment


                    • #40
                      All the manuals are here:

                      http://www.4dsystems.com.au/product/4D_Workshop_4_IDE

                      In the downloads section
                      James

                      Comment


                      • #41
                        Thanks for the link James. I now have the new manual.

                        Comment


                        • #42
                          Hi Mark,

                          I forgot a few features and now I am up to this length, 29320. The program will no longer run from RAM. File too long error. So it appears that there is about 3K of RAM that is not available.

                          I can debug using flash. My question is how much of the 32768 flash is available. Do I have 3K left or am I almost out there too?

                          Thanks, Al

                          0 warnings
                          20 notices
                          No Errors, code size = 28696 bytes out of 32750 total
                          Initial RAM size = 624 bytes out of 32768 total
                          Program will run from ram so total initial RAM size = 29320 bytes out of 32768 total

                          Comment


                          • #43
                            Hi Mark,

                            I put some large dummy functions in and it does appear to support 32K of flash.

                            I got the latest Diable manual and the str_Match is incorrect. It is OK in an older Picaso manual. See images.
                            Attached Files

                            Comment


                            • #44
                              Can you use File, zip project and send it to mark at 4dsystems dot com dot au? There might be an explanation for the 'missing' 3K, but I'd like to see it first hand.

                              We have fixed the relevant parts of the manual for the next release, thanks for pointing it out.
                              Mark

                              Comment


                              • #45
                                Hi Mark,

                                File attached. I have another file loaded into Bank 1. It is the same file with some different nomenclature. That might affect RAM ??

                                Al
                                Attached Files

                                Comment

                                Working...
                                X