Josh @ Dreamland
|
 |
Posted on: March 06, 2010, 12:47:05 AM |
|
|
Pragma
Dev Team
Posts: 1078
|
The C Parser is now hooked up such that it is self sufficient in collecting information.
On initialization, it asks the GCC to dump built-in #defines into a file that it can read. It parses those to gain the ability to correctly evaluate later preprocessors and the like, then it begins parsing SHELLmain.cpp, which will soon be moved (for the most part) to a separate header, since that particular source file shouldn't be responsible for all of that.
While getting it to work, I was met only with the problem of setting the working directory, which is currently temporarily resolved: I set it manually with a relative path that will have to be changed for the release compile.
However, once that was implemented, it made it through the entire project without incident. I asked it to print the contents of the enigma namespace to be sure it got it all, and was blown away.
At that, mission accomplished. I will make sure the GML parser and syntax checker are performing adequately tomorrow, which they shouldn't be, considering I am recoding a chunk of each to use the new input.
Expect material to be tested this coming week (Surprise). Don't expect anything grandiose during testing; I've not even hooked up the DLL functions yet. What you should see is vastly improved compile time and some small bugfixes that were made before the split. Serp's optimized code as well as the things that have been implemented since R3 are not part of the equation at this point.
In fact, the struggle of the next several days is going to be getting LGM to communicate better with ENIGMA, which has officially outgrown its separate-module form. I remember when syntax check rang in at 13x faster than GM's while code was being sent as a file. XD Those days are over, and now we'll be faster with dignity.
*commits code in whatever state it may be*
I haven't seen Ism today. I'll definitely need her for this part... Ed suggests we use JNA to handle the interface as a DLL. We'll see how that works for us.
Ciao for now.
|
|
|
|
« Last Edit: March 06, 2010, 12:51:37 AM by Josh @ Dreamland »
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
score_under
|
 |
Reply #1 Posted on: March 06, 2010, 08:59:51 AM |
|
|
Member
Posts: 314
|
Does this mean you'll be naming each version of ENIGMA after different stages of mitosis?
|
|
|
|
|
Logged
|
|
|
|
Josh @ Dreamland
|
 |
Reply #2 Posted on: March 06, 2010, 09:22:24 AM |
|
|
Pragma
Dev Team
Posts: 1078
|
Only the next three newsposts.
|
|
|
|
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
kkg
|
 |
Reply #3 Posted on: March 07, 2010, 01:51:36 AM |
|
|
Member
Posts: 56
|
I've been reading all the news posts over the past few months and I have to say I'm getting pretty pumped for it, it's clear a lot of thought has gone into this and in general it just seems like a fun application to toy with once it hits R4 (or whatever you like to call it) stage. I've been attempting to learn a little bit of C++ to maybe add a function or two from Game Maker just to be an addition to the development but I'm a bit shit  All in all though, great to see the work coming into form!
|
|
|
|
|
Logged
|
Corei7-930 OC'd @ 3.5ghz | 6gb G.Skill Trident DDR3-1600 | 2x GeForce GTX 260 SLi | Win7 Pro 64-Bit / AcromOS 64-bit / Kubuntu 9.10 64+32-Bit [GML, PHP/SQL, HTML(XHTML,XML etc)] Time may be the greatest teacher, however it unfortunately kills all its pupils.
|
|
|
serprex
|
 |
Reply #4 Posted on: March 07, 2010, 07:56:45 AM |
|
|
Smooth ER
Dev Team
Posts: 92
|
Yeah, before I could get a C compiler working I recall Josh was just starting with C++. When I found GM7's debug flag, I had him write a program to essentially fopen;fseek;fputc;fclose; Enigma is the first large piece of code of another I ever poked around, it's odd seeing how I've changed in respect to it. It's a place where I write code and think it seems pretty nice, only to rewrite it again a year later Enigma taught me C++, though I was fortunate enough to have already known programming. If you want to work on adding Enigma functions, work off the git repo @ http://github.com/serprex/Enigma-R3 though it's been modified to be developed on Linux, so some patchery will be needed to get it back to the Windows state. Hassle yes, but Josh plans to have that fixed for R4
|
|
|
|
« Last Edit: March 07, 2010, 07:58:52 AM by serprex »
|
Logged
|
|
|
|
Fede-lasse
|
 |
Reply #5 Posted on: March 07, 2010, 10:39:54 AM |
|
|
AI Programmer
Member
Posts: 185
Warn: 45% (watched)
|
Yeah, before I could get a C compiler working I recall Josh was just starting with C++. When I found GM7's debug flag, I had him write a program to essentially fopen;fseek;fputc;fclose; Enigma is the first large piece of code of another I ever poked around, it's odd seeing how I've changed in respect to it. It's a place where I write code and think it seems pretty nice, only to rewrite it again a year later
Enigma taught me C++, though I was fortunate enough to have already known programming. If you want to work on adding Enigma functions, work off the git repo @ http://github.com/serprex/Enigma-R3 though it's been modified to be developed on Linux, so some patchery will be needed to get it back to the Windows state. Hassle yes, but Josh plans to have that fixed for R4
I've actually coded a lot of functions that I hope either Josh or you would implement when that time comes. I can send them to you, if you want.
|
|
|
|
|
Logged
|
Go to my topic for some nifty tips, and here if you want to see my public folder.
|
|
|
kkg
|
 |
Reply #6 Posted on: March 08, 2010, 04:18:57 AM |
|
|
Member
Posts: 56
|
Yeah, before I could get a C compiler working I recall Josh was just starting with C++. When I found GM7's debug flag, I had him write a program to essentially fopen;fseek;fputc;fclose; Enigma is the first large piece of code of another I ever poked around, it's odd seeing how I've changed in respect to it. It's a place where I write code and think it seems pretty nice, only to rewrite it again a year later
Enigma taught me C++, though I was fortunate enough to have already known programming. If you want to work on adding Enigma functions, work off the git repo @ http://github.com/serprex/Enigma-R3 though it's been modified to be developed on Linux, so some patchery will be needed to get it back to the Windows state. Hassle yes, but Josh plans to have that fixed for R4
Not a problem, I program on AcromOS (Ubuntu based distro) anyway 
|
|
|
|
|
Logged
|
Corei7-930 OC'd @ 3.5ghz | 6gb G.Skill Trident DDR3-1600 | 2x GeForce GTX 260 SLi | Win7 Pro 64-Bit / AcromOS 64-bit / Kubuntu 9.10 64+32-Bit [GML, PHP/SQL, HTML(XHTML,XML etc)] Time may be the greatest teacher, however it unfortunately kills all its pupils.
|
|
|
Josh @ Dreamland
|
 |
Reply #7 Posted on: March 08, 2010, 07:22:31 AM |
|
|
Pragma
Dev Team
Posts: 1078
|
Why am I making this work for Windows, again? >_>
Oh right, GM userbase. *begrudgingly gets back to work*
|
|
|
|
|
Logged
|
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble "I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
|
|
|
|
|
Fede-lasse
|
 |
Reply #9 Posted on: March 08, 2010, 10:15:15 AM |
|
|
AI Programmer
Member
Posts: 185
Warn: 45% (watched)
|
Plus the 400,000,000 people who use Windows.
|
|
|
|
|
Logged
|
Go to my topic for some nifty tips, and here if you want to see my public folder.
|
|
|
Josh @ Dreamland.
|
 |
Reply #10 Posted on: March 08, 2010, 02:20:19 PM |
|
|
Member
Posts: 48
|
Yes, was being funny. Linux port was written with the thought "maybe this'll finally bring more than 20 games to the OS...." But then it turned out I hate Windows in comparison. Regardless, Windows is still the first priority (though not so much first to justify me stopping to write a DirectX port right away).
|
|
|
|
|
Logged
|
Me, only at school. With a period.
|
|
|
|