Sign in to follow this  
Guest LarryJ_KMSO

BGLXML.EXE has been released

Recommended Posts

Mr Alessandro G. Antonini has released a long awaited tool to convert bgl files to xml.I have tried to use it but when I try to compile a bgl file it tells me that the particular bgl is not in the FS2004 Library. I just wondered if any one else has tried this new disassembler and has run into this problem and how to solve it.Tom Jones

Share this post


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

Hi PanosYes it does indeed work with AP.....files. I was hoping it would dissassemble bgl files of objectes that I have created with various scenery design programs but I presume thats not possible with any dissambler program yetThanksTom Jones

Share this post


Link to post
Share on other sites

>Hi Panos>Yes it does indeed work with AP.....files. I was hoping it>would dissassemble bgl files of objectes that I have created>with various scenery design programs but I presume thats not>possible with any dissambler program yetIf that's the case, then I too misunderstood its utility. Alessandro's description reads:GLXML 0.30, by Alessandro G. Antonini ©2004this is an utility which disassembles BGL filesinto new FS2004 format and produces an XMLfile to be compiled with Microsoft BGLCOMP(from FS2004 SDK).That doesn't say anything about being limited to BGL files already compiled with the new format. Like you, I had hoped it would decompile older BGL files into the XML format.

Share this post


Link to post
Share on other sites

Hi BasilI sent the author some email asking about lots of scenery objects that I have made for FS2002. I dont know if I will get an answer or not. Im with you. I thought it would disassemble any scenery object bgl file. Tom Jones

Share this post


Link to post
Share on other sites

Scenery you have made with the current tools does not use the new XML format, so it is not strange that it can not be decompiled with this tool.This tool just reads the new format and gives you the XML source for it, but it does not translate the old format to a new one. That is just not possible.

Share this post


Link to post
Share on other sites

The Airport for Windows people are already experimenting with a new scenery design tool, Scenegenx, available from their web page, that codes into the new format.As you say, I do not think someone will come out with an utility to convert old BGLs (scasm style) to new BGLs (BGLComp style). That sounds too difficult, and it is not needed for the moment, maybe for FS2006 it will, as the MS people is kindly warning now...regardsJoaquin

Share this post


Link to post
Share on other sites

This is decompiled code of "Athens.bgl", give a look!sourceFile="gr02a.mdl"?I search my all fs9 directories and I found only 2 texture files gr02a.bmp,gr02a_lm.bmp!My opinion is that MS use gmax objects with *.mdl format in to fs9!Now I will make a test with gmax.When I try to compiling a gmax object with *.mdl ext.apears this error message. ERROR C2470: Unrecoverable error parsing XML!ERROR C2006: Parse failed (0x80004005)ERROR C2003: Failed to process file: mdltest.xmlPanos GeorgotasAthens-Greecehttp://www.precisionmanuals.com/images/forum/supporter.jpg

Share this post


Link to post
Share on other sites

Hi Panos.There are 2 problems.We do not have the FS9 MakeMDL, needed to save scenery MDLs. The BGLComp can only place Library objects... so the MDLs we eventually create must be combined into Libraries.See this post:http://forums.avsim.net/dcboard.php?az=sho...16633&mode=fullIn order to place single objects we still will be using BGLC or SCASM code. There's nothing wrong with this. BGLComp just gives us a different way to create scenery object libraries, and place those library objects in the sim.Dick

Share this post


Link to post
Share on other sites

Dick are you saying that by using the MakeMdl, when it is released ,that we may be able to use all the objects that were created by the scasm code? If so great and I certainly hope so because I have created lots of object with scasm.Tom Jones

Share this post


Link to post
Share on other sites

Hi Tom,I don't know what you mean here. MakeMDL is the export tool from GMax, and it makes a BGL of the object at the moment and we will have to wait for the new gamepack to see what it makes then.So, this has nothing to do with SCASM object, it only allows you to export from GMax.

Share this post


Link to post
Share on other sites

Alessandro's web site is http://www.cpinf.net/web/home.php?index=1Very interesting program. If you run the .NET utility xsd on a bgl xsd file (which M$ thoughtfully provided as bglcomp.xsd part of the scenery SDK), with the xsd /c option (like "xsd /c bglcomp.xsd" ), xsd writes the Csharp classes that fit this schema. The output is bglcomp.cs which contains CSharp classes for the bglcomp schema. Unfortunately I haven't been able to use xml serialization to read a .bgl file.I would attach the bglcomp.cs file but AVSIM's attachment feature is not functioning this evening.Larry

Share this post


Link to post
Share on other sites

My error... Too many windows open and covered up.Here's the file containing the C # .NET classes obtained frombglcomp.xsd.Larry

Share this post


Link to post
Share on other sites

Very good Larry but what is the serilization stuff used for?Tom Jones

Share this post


Link to post
Share on other sites

Hi Tom,For one thing, the ctFSData class contains all the enumerations. I'll write a little program that prints them out later today so you can see what I mean. For example, buried in the class is an enum(eration) for stSurface. ASPHALT would be 0, BITUMINOUS would be 1, BRICK would be 2 etc. More importantly, it seems to me ( a totally newbie to C# and .NET programming so I may not know what I am talking about!!) , you should be able to read a .blg file using a c# .net program that looks something like this. (Doesn't work and I don't know why !!) If it would work, all the .bgl guts would be contained in various classes within the d object accessible for you to change and modify.Any other C# .NET programmers out there? Maybe someone can tell me why the program below fails at the creation of the serializer object complaining about missing a .dll each time. The .dll name is different each time and seemingly random. Something to do with the GAC, I suspect...?Larryprivate void button1_Click(object sender, System.EventArgs e) { ctFSData d = new ctFSData(); XmlSerializer serializer = new XmlSerializer(typeof(ctFSData)); // A FileStream is needed to read the XML document. string filename = @"D:FSUIPC_PgmsPilotLogBGL_DumpbinDebugAP917160.BGL"; FileStream fs = new FileStream(filename, FileMode.Open); XmlReader reader = new XmlTextReader(fs); d = (ctFSData) serializer.Deserialize(fs); }

Share this post


Link to post
Share on other sites

>Mr Alessandro G. Antonini has released a long awaited tool to>convert bgl files to xml.>>I have tried to use it but when I try to compile a bgl file it>tells me that the particular bgl is not in the FS2004 Library.Thanks for advertising my software :-)There are only a few BGL files which uses the real FS2004 format - all the rest just seems a re-use of the old FS2002/2000 AFD format. That's my fault however: I will issue a more meaningful message with the next bglxml release. This is a list of prefixes found to be in FS2004 format (therefore dealt by bglxml):AP*.BGL - containing airport entries and anything related to themAT*.BGL - containing all waypoint and routes NV*.BGL - containing VOR and NDB OB*.BGL - containing buildings and some modeldata.All other files named with cities (e.g. SANFRAN.BGL,SANDIEGO.BGL,DC.BGL) contain model datas for that city and are also dealt by BGLXML.Hope it helps.

Share this post


Link to post
Share on other sites

Thanks many times Alessandro for bglxml. Just keep up the good workAlso Larry thanks for the input.Tom Jones

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