#pentagram@irc.freenode.net logs for 24 Jul 2008 (GMT)

Archive Today Yesterday Tomorrow
Pentagram homepage

[01:02:06] <-- Kirben has left IRC ()
[01:10:52] --> Kirben has joined #pentagram
[01:10:52] --- ChanServ gives channel operator status to Kirben
[01:34:29] --> ShadwChsr has joined #pentagram
[01:34:36] <ShadwChsr> Hi
[01:52:19] <ShadwChsr> What's the "lexer" for in Pentagram?
[01:52:36] <Colourless> the unfinished usecode compiler
[01:54:12] <ShadwChsr> It looks like 3rd party code though
[01:55:28] <Colourless> ask darke about that stuff. it's his 'baby'
[01:55:39] * ShadwChsr nods
[01:56:09] <Colourless> the lexer of course is generated by flex which would probably be what you're seeing
[01:56:33] <Colourless> llcLexer.cpp is generated from llcLexer.l by flex
[01:56:52] <ShadwChsr> That makes sense - darke is working on a usecode language that gets compiled into code
[02:22:30] <ShadwChsr> I have a few questions about TestARCH - why are the batch files used?
[02:22:47] <ShadwChsr> Couldn't the architecture just be set in Visual Studio in the configuration?
[02:28:41] <Colourless> i did it when i was using visual studio express
[02:28:54] <ShadwChsr> Ahhh, for the AMD64 compiler?
[02:29:01] <Colourless> yeah
[02:29:16] <Colourless> not that I think anyone would bother compiling pentagram for AMD64
[02:29:19] <ShadwChsr> Do you think the warning batch files are still required?
[02:29:21] <Colourless> but you *can* if you *really* want
[02:29:45] <ShadwChsr> If I'm reading them right, it looks like they just send out a warning about environment variables instead of set anything up
[02:30:18] <Colourless> that is pretty much what they do. they check the environment to see if its correct. if not they cause the build to fail
[02:30:20] <ShadwChsr> Most people are likely to compile on 32bit anyhow, so it just ends up nagging me to muck with my system's environment variables for no reason ;)
[02:30:50] <Colourless> i should probably remove the 64bit stuff from svn just because it's confusing and takes up space
[02:31:19] <ShadwChsr> Was it just the build framework for express, or were there some code changes as well?
[02:32:12] <Colourless> just the framework
[02:32:18] <ShadwChsr> Ahhhh
[02:32:58] <ShadwChsr> Most of the geeks who would want to build on x64 probably have a full Visual Studio anyhow :)
[02:35:02] <ShadwChsr> I'm also seeing a missing file in the project file at Misc\exceptions.h
[02:36:36] <ShadwChsr> I have a few fixes too
[02:37:27] <ShadwChsr> data2c.c(99), changed unlink to _unlink (_unlink is iso c++). I'm not sure if it affects Linux, but I'm going by the assumption that GCC is more iso compliant than VC anyhow ;)
[02:37:35] <ShadwChsr> There are two "unlink" calls in that file
[02:39:48] <ShadwChsr> I think that _mkdir(const char*) is ISO, but the "mkdir(name.c_str(), 0750)" overload is probably unix specific
[02:40:01] <ShadwChsr> It's #if'ed out anyways
[02:40:24] <ShadwChsr> (in FileSystem.cpp)
[02:43:34] <ShadwChsr> Should probably marked as a // TODO:
[02:43:48] --> servus_ has joined #pentagram
[02:44:08] <ShadwChsr> The normal case is #if defined(WIN32) while the "else" is the one that has posix specific paremeters
[02:44:28] <ShadwChsr> Should probably be something like #if defined(UNIX) (or something equivalent)
[02:45:31] <Colourless> mkdir and unlink are posix
[02:45:54] <Colourless> you'll find more systems can use those than not
[02:46:23] <ShadwChsr> Technically even Windows can ;)
[02:46:44] <ShadwChsr> They do throw warnings in Visual Studio though, since they're not the ISO variants
[02:47:57] <Colourless> you can get it to surpress the warnings
[02:50:19] <ShadwChsr> True, but there's no point since there's already an #if defined(WIN32) there ;)
[03:00:52] <-- servus has left IRC (Read error: 110 (Connection timed out))
[03:25:51] <ShadwChsr> Colourless - the project standard is still VS2005, right? Not 08 yet?
[03:27:19] <ShadwChsr> I've fixed quite a few warnings. Would you like me to describe them or create a patch?
[03:27:39] <ShadwChsr> I'm using VS2008 locally (for now) so I probably shouldn't include the project file changes ;)
[03:28:08] <Colourless> create a patch
[03:28:12] <Colourless> i still use 2005
[03:28:29] <ShadwChsr> *nods*
[03:31:14] <ShadwChsr> Email, DCC?
[03:33:19] <Colourless> dont care really. don't think dcc would work. but could be wrong :-)
[03:39:04] <ShadwChsr> The patch has been submitted to SourceForge
[03:39:52] <ShadwChsr> There are two project-file related changes I didn't include - one was to switch "Detect 64-bit portability issues /Wp64" back to inherited
[03:40:01] <ShadwChsr> (it's deprecated and no longer supported per-se)
[03:40:07] <ShadwChsr> The other was to remove the TestArch stuff
[05:29:31] <ShadwChsr> Can you explain this to me? typedef uint32 (*Intrinsic)(const uint8* args, unsigned int argsize);
[05:39:12] <ShadwChsr> sorry, nevermind :)
[05:39:16] <ShadwChsr> The problem was in the TempOp class
[05:41:30] <ShadwChsr> ConvertU8Usecode.h has a forward declaration for "class TempOp;"
[05:41:46] <ShadwChsr> class TempOp is defined in Disasm.cpp
[05:41:59] <ShadwChsr> However, Disasm.cpp is not in the Project File
[05:42:15] <ShadwChsr> For some reason VC++ doesn't blow up, but the VC++/CLI does
[05:42:31] <ShadwChsr> Looks like Disasm.cpp needs to be added to the project
[05:44:29] <ShadwChsr> Hrmmmmm, Disasm.cpp is a standalone app, but has definitions that Pentagram.exe depends on
[05:44:34] <ShadwChsr> :O
[05:48:27] <ShadwChsr> Ditto for "Node"
[05:53:16] <ShadwChsr> Commenting out all references for "Node" and "TempOp" worked - it's compiled but never used? Not only that, but it's in Pentagram even though the dependencies live in a tool?
[06:01:26] <ShadwChsr> Buwahahaha, Pentagram is running inside the .NET CLR now :D
[06:12:07] <wjp> ShadwChsr: it's more that Disasm and Pentagram share ConvertU8Usecode as a common dependency
[06:12:34] * ShadwChsr nods
[06:12:36] <wjp> (it's possible it depends on dead-code removal)
[06:13:00] <ShadwChsr> Is there any way to factor out the parts that only Disasm uses? Ie/ the Node and TempOp references?
[06:20:53] <wjp> Darke?
[06:23:00] <wjp> oh, this lengthy INCLUDE_CONVERTUSECODEU8_WITHOUT_BRINGING_IN_FOLD define looks like it's for that purpose
[06:25:07] <ShadwChsr> I noticed that - but it still seems strange compiling technically broken code by default :)
[06:25:48] <wjp> it just has external dependencies
[06:26:43] <ShadwChsr> I was running a stricter compiler - the linker failed while trying to resolve those dependencies
[06:27:27] <wjp> I'm not sure if stricter is the right word; it doesn't remove as much dead code, apparently
[06:29:51] <ShadwChsr> Agreed, but it's designed to do that in it's freakish own way ;)
[06:30:08] <ShadwChsr> .NET leaves private code in the assemblies because it can be called via reflection
[06:30:47] <ShadwChsr> Not that it's a targeted platform for Pentagram, of course :) I was more curious than anything.
[06:31:09] <ShadwChsr> It still looks like there could be a bit of cleanup in the usecode compiler/decompiler/etc area
[06:31:25] <ShadwChsr> I'm off to bed though, maybe we can discuss it more another day. Night!
[06:31:35] <-- ShadwChsr has left IRC ()
[07:17:39] <-- Kirben has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- watt has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- Mrrrrz0r has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- servus_ has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- Lord_Nightmare has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- Darke has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- Colourless has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:17:39] <-- wjp has left IRC (kornbluth.freenode.net irc.freenode.net)
[07:18:37] --> Kirben has joined #pentagram
[07:18:37] --> servus_ has joined #pentagram
[07:18:37] --> watt has joined #pentagram
[07:18:37] --> Colourless has joined #pentagram
[07:18:37] --> Darke has joined #pentagram
[07:18:37] --> Lord_Nightmare has joined #pentagram
[07:18:37] --> Mrrrrz0r has joined #pentagram
[07:18:37] --> wjp has joined #pentagram
[08:51:11] <Darke> Ah, yeah. That intertwining bit was a side effect of the days-of-yore when we were still trying to work out how all the usecode bytecodes worked. It made it easier and less error prone to translate what I found out through decompiling back into the disassembler, because I didn't have to. *grin*
[11:25:19] <-- Mrrrrz0r has left IRC (Read error: 110 (Connection timed out))
[13:22:04] <-- watt has left IRC ()
[13:46:33] --> watt has joined #pentagram
[13:46:33] --- ChanServ gives channel operator status to watt
[14:55:23] --> Mrrrrz0r has joined #pentagram
[15:01:21] <-- Kirben has left IRC (Read error: 110 (Connection timed out))
[15:39:44] <watt> Working on getting configure/make based builds on OSX - might be committing some work-in-progress tonight.
[15:41:07] <wjp> cool
[17:00:33] <-- Mrrrrz0r has left IRC (Read error: 113 (No route to host))
[17:01:05] --> Mrrrr has joined #pentagram
[17:45:14] --> watt_ has joined #pentagram
[17:45:25] <-- watt has left IRC (Read error: 104 (Connection reset by peer))
[17:45:38] --- watt_ is now known as watt
[17:45:39] --- ChanServ gives channel operator status to watt
[17:46:25] <watt> well that was fun - system locked up on compiling the hq2x scaler.
[17:48:23] <wjp> out of memory?
[17:49:55] <wjp> there's an explicit --enable-hq2x for pretty much this reason :/
[17:52:14] <wjp> (it uses 550Mb for me, and takes about 2 minutes)
[17:52:58] <wjp> not as much as I remembered, but I'm probably remembering relative to 2003 levels of memory :-)
[17:56:53] <watt> yeah - something - I'll consider turning it off at least for testing the build process
[20:02:08] <watt> are the module.mk file generated or copy/pasted?
[20:06:24] <wjp> copied
[20:07:02] <wjp> the only special ones are those in directories that contain targets
[20:07:05] <wjp> (main dir, tools/*)
[20:07:51] <watt> ok.
[20:08:37] <watt> Had to adjust a few things for the macosx_utils.m file.
[21:48:21] <watt> Think I'm finally having some success.
[21:54:49] <watt> successful compile now - not quite right, but probably close enough to commit soon.
[22:17:08] <-- watt has left IRC ()
[22:42:50] --> watt has joined #pentagram
[22:42:50] --- ChanServ gives channel operator status to watt
[23:14:23] <Colourless> probably should look at the hq2x scaler to see if i can make it less templated
[23:57:32] <watt> committing a bit of the macosx make build
[23:58:05] <watt> huh... commit not working... blah
[23:58:27] <watt> oh mime-type check