Sign in to follow this  
Guest

FSDS2 vs. FSDS1 : Object out of range!

Recommended Posts

In FSDS1 the polygon number could go up to 750-800 before Airport started yelling "Object out of range" when trying to compile the Airport-file. In FSDS2 this number seems to be somewhere around 300! Can anyone confirm this, or give some advice how to get rid of it? Of course, the object can always be split in several objects or exported directly as a .bgl-file, but that's not what I'm looking for as an answer to this topic. How about those of you, who have made APIs from GMAX-objects, anyone know what the polygon maximum number is here?

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

Hi,The new FS2002 floating-point instructions require larger BGLs or larger TXT "Scasm source" files". SCASM by default reserves some RAM to temporarily store point coordinates and other information that it uses during compilation. What I think is hapenning is that these buffers are not sufficient large for your project. I have very litle experience with AirportForWindows but I know that you can set command line switches for SCASM. Try to use switches that make these buffers larger. An alternative would be to include a file in all of your Airport projects with "pseudo SCASM commands". Regards, Luis

Share this post


Link to post
Share on other sites

Hi Luissa,What you say sounds like something I'll need to try. But I'm far from the best in SCASM-coding, so if you want and have time to add some more comprehensive instructions, I would be more than happy!Thanks...

Share this post


Link to post
Share on other sites

Here's a screen dump of the SCASM command lines? Any clue what I should change them to? Arno? (come back from Belgium!)

Share this post


Link to post
Share on other sites

>Here's a screen dump of the SCASM command lines? Any clue >what I should change them to? Arno? (come back from >Belgium!) Hello Eva2002,The following SCASM pseudo commands should allow very large files to compile:Set( BUF 1024 )Set( areamx 1024 )Set( LINBUF 2048 )I think that they should be placed on the top of the SCASM file just after the Header() and LatRange(). Your API will be introduced in the SCASM file after your runways, your buildings, your taxiways, etc. Therefore even if the generated FSDS2 API has these commands they will probably will not result as expected as they are not at the top of the file.Please read the SCASM DOCS for further explanation (I would have to read them as well if I had to write more than this). I rarely use Airport for Windows and I do not know if pasting those lines in the file that comes when you go to the menu SECTIONS > GENERAL > SCASM CODE, will solve this.Kind Regards, Luis

Share this post


Link to post
Share on other sites

I think the solution for the out of range error is to change the Area type that is used by FSDS2. You can set it in the "Project properties". By default type 5 is used, but if you set it to type C for example much larger areas are allowed.Arno


Member Netherlands 2000 Scenery Team[a href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a]

Share this post


Link to post
Share on other sites

This is a stupid question, but how to make a .sca file to .api? I exported the object to a -sca-file from FSDS2, and inserted those lines you mention, Luis. But now I want it to Api so I can insert it in Airport...EDIT: Luis, I noticed that FSDS2 BY DEFAULT inserts those lines you mention, and directly on the spot you mentioned too. Are we getting out of ideas?

Share this post


Link to post
Share on other sites

Sebastian,I got the same error when I exported a FSDS1 object with FSDS2, but after I changed something and/or re-exported they were gone. The bad thing is that I don't know anymore what I did change.....I'll have a look this evening what I changed, I thought I changed the Area type, but not sure.....Arno


Member Netherlands 2000 Scenery Team[a href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a]

Share this post


Link to post
Share on other sites

Hello,No, keep using the API. Airport will "construct" a complete SCASM file that will be presented to SCASM. SCASM compiles that file and generates the BGL. The lines I referred to (which appear at the start of the API) should be placed at the beginning of the Airport "constructed file". The Airport "constructed file" will contain your APIs in the midle of it. This is the problem. You should be able to set up Airport to include those SCASM pseudo commands at the the beginning. But by no means I am an Airport expert to answer that.Also note what Arno told us: select one of the large Areas in FSDS2. You can select several types of Areas.Regards,Luis

Share this post


Link to post
Share on other sites

I tried area C, which was "huge", but it didn't work. Is there anyone who knows Airport for Windows well and call tell the proper way of inserting these command lines?

Share this post


Link to post
Share on other sites

>Just open the SCA file in notepad or so and paste them in. >Then try to compile the source and see if it works. >>Arno >


Member Netherlands 2000 Scenery Team >[a >href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a] No luck there either. Still this error: -> EndA -> destination ":Exit" out of range (71360), source line 55

Share this post


Link to post
Share on other sites

Dear All:I remmeber that SCASM compilers can compile scenery object up to 64000 bytes of size, the SCASM error message above say that the object has a size of 71360 , i got the same problem in ASD2.1 with macros generated by FSDS1.62.The best solution to don't lose detail is to create a Library bgl with the .SCA files and mack a macro with a LibCall, i did it to may high detailed scenery objects in my Aircraft Macros.The library bgl can contain objects larger than 64Kb of size according to the SCASM docs.I think FSDS shows the object size on some window.Thanks.Alfredo Mendiola LoyolaLima Peru

Share this post


Link to post
Share on other sites

Hi. The insertion of the parameters Luis suggested and the revised area type as Arno suggested can be accomplished as they suggested by manually editing the .sca file's text. HOWEVER, you can not then compile it using the Apt26 compile button -- If you do this, Apt26 causes the .sca file to revert-to the last configuration that Apt26's .apt VB file told it to be.The solution to that is to ALWAYS MANUALLY COMPILE the .sca file that's been revised to enlarge the area and SCASM buffers and the "Area( c" command. This has to be the last compile operation for the scenery bgl. Again, going back to use the Apt26 compile button forces the older, unedited .sca file config.The manual compile is quickly and easily accomplished: Place a copy of the SCASM 2.88 exe file on the Windows desktop along with a copy the (edited) .sca file. Drag and drop the edited .sca file on-top-of the SCASM.exe icon whereupon SCASM compiles the edited .sca file into a bgl file and places it on the desktop. Move that .bgl file from the desktop into your active scenery folder to overwrite the Apt26 compiled .bgl file and your resulting scenery bgl should be as configured by the revisions Luis and Arno advised.IF that was the problem, the manual edit/compile should fix it. Regards;J.R.

Share this post


Link to post
Share on other sites

The Area type C should allow you to use areas bigger then 64kB.Got a question for Sebastian, is it the RefPoint or a Jump command that generates the error? (so which command is on the line which number is stated in the error message).Arno


Member Netherlands 2000 Scenery Team[a href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a]

Share this post


Link to post
Share on other sites

I tried the desktop thing that J.R. suggested, and SCASM still generates an error concerning the macro file in question. The error refers to line 5404 in the API-macro (last line), which only says: "EndA"That shouldn't be any problem in itself, only a sign of that the source file is too many kilobytes?When I compile with Airport, I'm also given a reference in the error to line 55 in the .sca-file (supposedly the sca-file, or???).This is the whole error report Airport gives me:-------Error in macro file C:GamesFS2002ExtraJoensuuFSDSTerminal_fsds2.api line 5404 -> EndA -> destination ":Exit" out of range (71360), source line 55Scasm compilation status: error(s) 1-------Line 55 in the .sca-file only includes information about the runway I've made (heading 289.2), hmmm!? Mean anything? Does this mean line 55 is in another file, and not the .sca-file? Arno, from this I can't answer your question, because I have obviously understood this wrongly. =o)

Share this post


Link to post
Share on other sites

Dear efva2002,The error "destination ":Exit" out of range (71360), source line 55" normally means a Call( :Exit ) or Jump( :Exit ) or something similar, where the call or jump point to more than 32KB. As far as I know FSDS uses Call32() and Jump32() and such problem is avoided.So, if you want to send me the API (only the API, please) I would make a small file with a macro call for that API. I would try to compile it and repport backRegards, Luis (luis@ptsim.com)

Share this post


Link to post
Share on other sites

>Dear All: >>I remmeber that SCASM compilers can compile scenery object >up to 64000 bytes of size, the SCASM error message above say >that the object has a size of 71360 , i got the same problem >in ASD2.1 with macros generated by FSDS1.62. >>The best solution to don't lose detail is to create a >Library bgl with the .SCA files and mack a macro with a >LibCall, i did it to may high detailed scenery objects in my >Aircraft Macros. >>The library bgl can contain objects larger than 64Kb of size >according to the SCASM docs. >>I think FSDS shows the object size on some window. >>Thanks. >Alfredo Mendiola Loyola >Lima Peru Hi Alfredo,Yes, FSDS 1.6 also had its upper limit, but the strange thing in this case is that the same object, compiled with FSDS1 works flawlessly when I use it to make my bgl with Airport for Windows. But when I use FSDS 2, it won't work!

Share this post


Link to post
Share on other sites

Hi Sebastian,I was asking about the command to be sure that there are Jump32 or Call32 commands, as Luis says. Then the jump size shouldn't be a problem as long as you the Area type is set correct.Only the call from the RefPoint then is a problem often (RefPoint has no RefPoint32 variant), but as far as I know FSDS has the code written that way that it isn't a problem.PS. I'll be in Delft this weekend (from this afternoon), so I'll be on MSN then :)Arno


Member Netherlands 2000 Scenery Team[a href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a]

Share this post


Link to post
Share on other sites

Luis,I wonder what Area type the macro I sent you was in. Either 5 or C. Can you see that from the macro? Tell me if you need a certain area type and I'll resend./Sebastian

Share this post


Link to post
Share on other sites

I'd like to thank Luis for showing me what was wrong with the code. FSDS2 apparently generated a code that was buggy in some sort of way. To the rest I can say that Luis sent Abacus a note about this./Sebastian

Share this post


Link to post
Share on other sites

The BAD and easy solution:Hi Johan! To much polygons are the problem.But now everything works :)regards,Viktor>I'm not sure how ypou made the whels, but I had common problems, with making of>brdiges in the NL2000 scenery. The solution was to avoid making round patrs>that have to many points. Somsetimes there was no problem, but after joining>serveral parts the part became to complex.>>If you make a wheel, don't join them, and don't create too much points and>sections...>>Johan Calje>>>Hi !>>I have brought FSDS. Now I'm designing two trucks. But every time I place it in>>>Airport 2.6 and then convert it it says : >>>>"Error in macro file G:GAMESFS2000FSDSPROJECTSFIRETR~3.API line 3327>> -> EndA>> -> destination ":End" out of range (35150), source line 136>>Scasm compilation status: error(s) 1 ">>>>Then I delete some tubes(wheels,...) in FSDS and it everything is OK.>>>>But who likes a truck without wheels ?>>I'm really frostrated. It took me many hours to build the trucks.>>>>I have tried everything but nothing worked.>>>>What should I try to do ?>>>>Please help me .>>>> regards,>> Viktor>>>The best solution:Mak object Library ith the FSDS V2 source code.Thanks.Alfredo Mendiola LoyolaLima Peru

Share this post


Link to post
Share on other sites

FYII have been dealing with the same problem since release. Just playing around, I found the polygon limit to be about 314 for a "huge" object.I have communicated with both the FSDS team and Tom Hiscox about the problem. As a result of the communications, both teams have error files, object files and in the case of the FSDS team, the object development file. I have also tried Luis' approach without success.Hopefully, one of the two teams will resolve the issue. In the mean time, I find my self developing objects in both FSDS2 and FSDS1.5.Have a great day,Bear

Share this post


Link to post
Share on other sites

Still easier is the approach Luis took above. Just changing a few commands and your macro works :).I also used this in FSDS1.6 when the objects got to big. Just changing the Area type and make sure the jump command is Jump32. Can't be easier (if you know a little bit of SCASM :D).Arno


Member Netherlands 2000 Scenery Team[a href=http://home.wanadoo.nl/arno.gerretsen]http://home.wanadoo.nl/arno.gerretsen/banner.jpg[/a]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this