No announcement yet.

Error Running 4DGL Workshop

  • Filter
  • Time
  • Show
Clear All
new posts

  • Error Running 4DGL Workshop

    4dglworkshop was running fine on my notebook.
    Since some days I get an error when I want to compile a project.

    The Error is:

    Error loading compiler DLL

    when I close the message another diolog will be displayed

    These handles closed by Liberty BASIC.
    Please add the appropriate CLOSE handles.
    What is the problem?

  • #2

    Right click 4DGL Workshop exe file or shortcut file and click "Run as Administrator".


    • #3


      I m on Windows 7, Workshop running under compatibility XP SP3 with Run as administrator checked.
      I have the same issue as thomas sometimes.
      I need to reboot to cancel it.



      • #4

        It was a software problem in the following line of my program

        #inherit "BasImg.gc"
        uncomment this solved the problem.

        After this I was recreating the *.gc file with Graphicscomposer and it worked if the amount of pictures in it is very low. When I insert all images I need (~250) I will get the error message. It seems that there is a limitation in the amount of #constant declarations. How many constants can I use?


        • #5

          I did some further tests and it is definitely a problem with the amount of constants.
          The information to run the workshop as administrator posted in other threads with the same error message does not work.
          I have now reduced the amount of entries in the BasImg.gc to 37. This is the absolute minimum to run my program. It works fine. But my icons have additional states (pressed and incactive) and so I need more than these 37. With this version of 4DGL I can not continue my project
          I need a solution for this problem VERY SOON!!
          I have a project deadline on March, 1st, 2010 and therefore it is to late to change the design to use other displays.

          I attached a working and a not working example of my files. The difference is only that I removed 2 entries from the Basimg.gc file and uncomment the corresponding image calls in the 4dg file.

          btw. the gc file must end with a CR character. If this is missing you will get an EOL error while compiling the 4dg file!! This is also a bug.
          Attached files (12.7 KB)


          • #6

            Hi Thomas,
            please find attached interim compiler DLL. Your diagnosis of constant buffer being a bit small is indeed correct. It should have been 300k , was only set to 30k. Please let us know how it goes. It has been tested with your program and now compiles correctly.
            Attached files (94.6 KB)


            • #7

              Hi Meldavia.

              Yes this version works fine? Thanks for the fast support.
              Is this buffer a part of the compiler or is it limited by the internal memory of the display module?
              If it is in the ccompiler then I have another question. in the .gc file are a lot of comment lines with mostly the same information. Would it be helpful to remove this lines to reduce file size or are they automatically eliminated by the compiler?


              • #8

                Hi Thomas, buffer is part of the compiler DLL, you can have as many comments as you like in any files, and name lengths up to 64 characters - it will not affect the code size. It was just an oversight that the buffer was not sized correctly.


                • #9

                  you can have as many comments as you like in any file

                  Hi Meldavia.

                  That's not true! With my old gc-file and the new comiler dll all worked fine. But now I added some images to my gc-file with graphics composer and the file wasn't load. I got the same error as before. But when I remove all comment lines and so decrease the file size I will get a new error.

                  Symbol not understood in line 1, column 1 (pass 1)
                  and this is the beginning of my file
                  HTML Code:
                  #platform "uOLED-32028-P1"
                  * Filename: Menue.4dg
                  * Created: 2008/11/19
                  * Author:  Thomas Westerhoff
                  * Description: Base Program for SkyDrive 1.0
                  #inherit "4DGL_16bitColours.fnc" 
                  #inherit "BasimgRW.gc"
                  My gc-file is attached.

                  Attached files (656 B)


                  • #10

                    Well, here are my files. Both, the gc and the 4dg.

                    It would be fine if the support team would have a look at my code and give me some hints what is wrong. The compiler messages are not meaningful.
                    Ok, I know 4DGL is derived from C and C isn't fail save. It has no memchecks and a C compiler is unable to find potential programming errors. I also know that the hardware isn't as powerful to run a real fail safe programming language like PASCAL (oh I hate that ancient pointer stuff ). But on the other hand I think that meaningfull compiler messages could be a first step to guide me to the solution.

                    Since more than one year I try to realize a project with 4dsystems displays and 4DGL but it works rough-and-ready. Ever when I add new functions I got errors and problems. First I tried to do a lot of functionality on the display with 4xe files on the uSD-Card. Hopeless! Then I tried to minimize the funtionality and moved the 'intelligence' tho the host controller. This worked much better but as one can see there are still a lot of problems.
                    Attached files (6.9 KB)


                    • #11

                      I got a workaround for this problem. It looks like the #inhert statement will not correctly handled by the compiler. It works well if I copy the content of the gc file into the 4dg file like this.

                      HTML Code:
                      #platform "uOLED-32028-P1"
                      * Filename: Menue.4dg
                      * Created: 2008/11/19
                      * Author:  Thomas Westerhoff
                      * Description: Base Program for SkyDrive 1.0
                      #inherit "4DGL_16bitColours.fnc" 
                      #constant sd_intro_jpg    $uSD_SetSector(0x0010, 0x0228);    uSD_Image
                      #constant status_jpg    $uSD_SetSector(0x0010, 0x02D2);    uSD_Image
                      #constant no_pic_jpg    $uSD_SetSector(0x0010, 0x03FF);    uSD_Image
                      #constant ubernehmen_2_bmp    $uSD_SetSector(0x0010, 0x0427);    uSD_Image
                      #constant abbruch_2_bmp    $uSD_SetSector(0x0010, 0x0454);    uSD_Image
                      #constant button_3_2_bmp    $uSD_SetSector(0x0010, 0x0481);    uSD_Image
                      #constant ja_2_bmp    $uSD_SetSector(0x0010, 0x04AE);    uSD_Image
                      #constant menue_2_jpg    $uSD_SetSector(0x0010, 0x04DB);    uSD_Image
                      #constant nein_2_bmp    $uSD_SetSector(0x0010, 0x0508);    uSD_Image
                      #constant ok_2_bmp    $uSD_SetSector(0x0010, 0x0535);    uSD_Image
                      #constant suchen_2_bmp    $uSD_SetSector(0x0010, 0x0562);    uSD_Image
                      #constant warnung_2_jpg    $uSD_SetSector(0x0010, 0x058F);    uSD_Image
                      #constant button_1_2_jpg    $uSD_SetSector(0x0010, 0x0601);    uSD_Image
                      #constant button_5_2_jpg    $uSD_SetSector(0x0010, 0x0673);    uSD_Image
                      #constant fehler_2_jpg    $uSD_SetSector(0x0010, 0x06E5);    uSD_Image
                      #constant information_2_jpg    $uSD_SetSector(0x0010, 0x0757);    uSD_Image
                      #constant planet_19_gif    $uSD_SetSector(0x0010, 0x0805);    uSD_Video
                      #constant wait_gif    $uSD_SetSector(0x0010, 0x0938);    uSD_Video
                      #constant wetter01_jpg    $uSD_SetSector(0x0010, 0x07C9);    uSD_Image
                      #constant wetter02_jpg    $uSD_SetSector(0x0010, 0x07CE);    uSD_Image
                      #constant wetter03_jpg    $uSD_SetSector(0x0010, 0x07D3);    uSD_Image
                      #constant wetter04_jpg    $uSD_SetSector(0x0010, 0x07D8);    uSD_Image
                      #constant wetter05_jpg    $uSD_SetSector(0x0010, 0x07DD);    uSD_Image
                      #constant wetter06_jpg    $uSD_SetSector(0x0010, 0x07E2);    uSD_Image
                      #constant wetter07_jpg    $uSD_SetSector(0x0010, 0x07E7);    uSD_Image
                      #constant wetter08_jpg    $uSD_SetSector(0x0010, 0x07EC);    uSD_Image
                      #constant wetter09_jpg    $uSD_SetSector(0x0010, 0x07F1);    uSD_Image
                      #constant wetter10_jpg    $uSD_SetSector(0x0010, 0x07F6);    uSD_Image
                      #constant wetter11_jpg    $uSD_SetSector(0x0010, 0x07FB);    uSD_Image
                      #constant wetter12_jpg    $uSD_SetSector(0x0010, 0x0800);    uSD_Image
                      var ConfigFile;
                      var MoonImg;             //imagecontrol für die Mondphase
                      var BattImg;             //imagecontrol für die Batterieanzaige