Log for #openttdcoop.devzone on 30th September 2011:
Times are UTC Toggle Colours
00:38:01  <Brot6> Central European Train Set - Revision 154:ff16d36defde: expanded livery template and moved to "docs" (oberhuemer) @
00:40:04  <Brot6> Central European Train Set - Support #2919: Livery/color standards (oberhuemer) @
03:07:05  <Brot6> Central European Train Set - Support #2750: Tracking Table (oberhuemer) @
07:19:13  *** andythenorth has joined #openttdcoop.devzone
07:43:26  *** andythenorth has quit IRC
07:48:10  <Brot6> Example NewGRF Project - Revision 344:bef12d6f0764: Fix: Type in variable name (planetmaker) @
07:48:10  <Brot6> Example NewGRF Project - Revision 345:b41aabf8fb1b: Change: Update the NML example to use a gimp ... (planetmaker) @
07:56:46  <Brot6> Example NewGRF Project - Revision 346:bb58aecea714: Fix: Don't announce cleaning stages twice (planetmaker) @
07:58:37  *** hanf has joined #openttdcoop.devzone
08:11:08  *** andythenorth has joined #openttdcoop.devzone
08:12:05  *** andythenorth has quit IRC
08:36:11  <Brot6> Example NewGRF Project - Revision 347:d7f9dc728678: Fix: Also don't call dep check on first run w... (planetmaker) @
08:36:11  <Brot6> Example NewGRF Project - Revision 348:14460ee62409: Fix: Add dependencies for NML-projects in the... (planetmaker) @
08:38:13  *** hanf has quit IRC
11:46:00  *** ODM has joined #openttdcoop.devzone
12:10:01  <Brot6> Example NewGRF Project - Revision 349:5b60a2734fc1: Fix: Separate the need and use gimp variable (planetmaker) @
12:23:13  *** orudge` is now known as orudge
12:49:03  <Brot6> Central European Train Set - Revision 155:1dae6263d911: set 3lu as minimum length (Eddi) @
12:49:03  <Brot6> Central European Train Set - Revision 156:8940cfa45853: missing template code for vehicles (Eddi) @
12:49:03  <Brot6> Central European Train Set - Revision 157:4864f564a5ad: move uniqueness checking out of the gener... (Eddi) @
12:49:04  <Brot6> Central European Train Set - Revision 158:0995627285ce: move length calculation out of the genera... (Eddi) @
12:49:08  <Brot6> Central European Train Set - Revision 159:359c1b653720: missing values for articulation (Eddi) @
12:49:12  <Brot6> Central European Train Set - Revision 160:77a66809eefa: calculate number of articulated parts (Eddi) @
12:49:16  <Brot6> Central European Train Set - Revision 161:ab8c558d133f: automatically introduce articulated parts... (Eddi) @
12:49:22  <Brot6> Central European Train Set - Revision 162:0fceaae94da7: remove custom callbacks for articulation ... (Eddi) @
12:49:26  <Brot6> Central European Train Set - Revision 163:35337dd2834e: switch tracking table to 24m=12lu scheme ... (Eddi) @
12:55:49  <Brot6> Example NewGRF Project - Revision 350:faf53641c43a: Change: Use always the same filename for vers... (planetmaker) @
13:20:42  <Brot6> Central European Train Set - Support #2750: Tracking Table (planetmaker) @
14:06:26  <Brot6> Example NewGRF Project - Revision 351:e779c0a3687f: Change: Adopt .hgignore to new version file (planetmaker) @
15:04:30  <Brot6> Example NewGRF Project - Revision 352:7e139d0d4c5e: Change: Rename the target 'mrproper' to 'main... (planetmaker) @
16:40:20  *** hanf has joined #openttdcoop.devzone
17:09:44  <planetmaker> Ammler: you suggested to use "hg archive" for creation of source bundles. Do you see a way to archive a modified repository with that command?
17:10:05  <planetmaker> All I get when using hg archive is the prestine state of the repo w/o local modifications
17:21:07  <Brot6> cets: update from r153 to r163 done (471 warnings) -
17:22:21  <Brot6> newgrf_makefile: update from r341 to r352 done -
17:24:52  <Brot6> vactrainset: compile of r1 still failed (#3044) -
17:25:54  <Brot6> frenchtowns: compile of r6 still failed (#3099) -
17:28:41  <Ammler> planetmaker: why not simply commit those changes?
17:29:49  <planetmaker> it's not about wanting to commit them or not. But "make bundle_src" should bundle the source code 'as is' and not some version it has been before
17:30:08  <planetmaker> if bundle_src packs something else than the current repo state it's highly unexpected
17:42:44  *** frosch123 has joined #openttdcoop.devzone
19:02:23  <Brot6> clientpatches: compile of r22967 still failed (#2964) -
19:02:31  *** andythenorth has joined #openttdcoop.devzone
19:07:21  <Brot6> openttd-vehiclevars: update from r22966 to r22967 done -
19:08:41  <Brot6> serverpatches: compile of r22967 still failed (#2966) -
19:10:25  <Brot6> 32bpp-ez-patches: compile of r22967 still failed (#2446) -
20:28:59  *** JVassie has joined #openttdcoop.devzone
20:51:43  *** andythenorth has quit IRC
20:54:32  <Brot6> Central European Train Set - Feature #2924: Prussian steam engines (Eddi) @
20:54:53  *** frosch123 has quit IRC
21:03:27  *** hanf has quit IRC
21:04:05  <Brot6> Example NewGRF Project - Revision 353:7145078461a8: Change: Simplify source bundling and only exc... (planetmaker) @
21:07:44  *** ODM has quit IRC
21:12:07  <Brot6> Central European Train Set - Revision 164:df604ca089ad: add (some) images for prussian steam engi... (Eddi) @
21:12:07  <Brot6> Central European Train Set - Revision 165:58596359c5c6: preliminary algorithm for getting vehicle... (Eddi) @
21:12:07  <Brot6> Central European Train Set - Revision 166:d77a4137e04c: add some graphics to tracking table, corr... (Eddi) @
22:05:42  <Brot6> Example NewGRF Project - Revision 354:f875ee142d19: Add: Also maintainer-clean should not trigger... (planetmaker) @
22:05:42  <Brot6> Example NewGRF Project - Revision 355:865ec33bf99b: Cleanup: Remove expensive variables which sto... (planetmaker) @
22:31:17  <planetmaker> #3098
22:31:18  <Brot6> planetmaker: #3098 is "Central European Train Set - Patch #3098: Enable sprite cropping by nmlc - #openttdcoop Development Zone"
22:31:36  <Brot6> Example NewGRF Project - Revision 356:fc15a1e7bd08: Add: Ignore also source bundles (planetmaker) @
22:31:36  <Brot6> Example NewGRF Project - Revision 357:5a5fef33c015: Fix: Less pointless ignored errors for clean (planetmaker) @
22:53:30  <Brot6> Example NewGRF Project - Revision 358:1d506df00dad: Fix: define VPATH directly (planetmaker) @
22:59:37  <Brot6> Example NewGRF Project - Revision 359:7d770d7d66f3: Add: [NML] Clean another temporary file (planetmaker) @
23:07:13  <Brot6> NewGRF Meta Language - Bug #3100 (New): High (pseudo-) sprite usage for conditional expressions (michi_cc) @
23:10:18  <Brot6> NewGRF Meta Language - Bug #3100: High (pseudo-) sprite usage for conditional expressions (michi_cc) @
23:10:23  <michi_cc> planetmaker: ^
23:13:14  <planetmaker> yes... Yexo wrote most of this optimization for parameter usage
23:13:28  <michi_cc> Feel free to pass it along :)
23:13:58  <planetmaker> I think that has been done now by means of highlight ;-)
23:15:06  <Yexo> michi_cc:  that's a known problem (but so far not reported on the bug tracker)
23:15:41  <Yexo> the reason I've given it a fairly low priority so far is because all those act9/actD sprites are only parsed once when starting the game / loading the game, not during actual gameplay
23:15:48  <michi_cc> Not every CETS vehicle has such a complicated conditional expression, but even if it averages only 5 superfluous actions, that's over 2k psdeu sprites for CETS.
23:16:11  <Yexo> the only thing it does is increase the filesize of the grf a little bit, and I guess the startup time of new games / loading of savegames
23:16:20  <Yexo> but given the time that takes I doubt it's noticable
23:17:24  <michi_cc> It's not time I'm worried about. CETS is at 22k pseudo sprites already, without even having loading stages (or graphics at all) or any other fancy Act2 stuff (refits, livery override etc.)
23:17:26  <Yexo> (avail_DRG_2_ext | avail_DR_3_ext | avail_DB_3_ext) ? ALL_CLIMATES : NO_CLIMATE; <- that probably results in "better" code (using binary or instead of logical or)
23:17:37  <Yexo> hmm, ok
23:18:29  <Yexo> I guess the total number of pseudo sprites is limited? could you remind me by what exactly?
23:18:36  <michi_cc> 64k by the file format
23:19:51  <Yexo> yes, but how exactly is it limited?
23:20:07  <Yexo> the "sprite number" as seen in nfo is never actually written to the grf file
23:20:16  <michi_cc> Some savings could be achieved by merging action 0. Biggest impact would likely have common subexpression elimination for Act2 though (i.e. move common code into procedures).
23:20:30  <michi_cc> The header (I think) has a word for number of sprites.
23:21:30  <Yexo> the first pseudo sprite is always length 4 and contains the number of sprites in a dword
23:21:48  <Yexo> openttd completely ignores that value and just reads the grf until the end of file
23:22:09  <Yexo> I've been thinking about common subexpression elimination
23:22:31  <Yexo> one of the problems there is that as soon as parameters are used you can't easily move them around
23:23:16  <Yexo> param[0] = 1; switch (.... param[0]) {}   param[0] = 2;  switch(.... (same expr as before) param[0]) {} <- you can't eliminate these expressions because of the param[0]
23:24:06  <michi_cc> Hmm, maybe the 64k limit is a Patch limit only.
23:28:01  <michi_cc> For CETS, the switch(s) in the templates (e.g. don't depend on params for example.
23:28:28  <Yexo> I have been thinking about making all parameters "write-once"
23:28:53  <Yexo> I don't think there are a lot of cases where parameters need to be modified, and making everything write-once would make it a lot easier to do optimalizations on it
23:29:36  <Yexo> since nml could then freely move the initialization around (as long as the initialization is done before it's used), and eliminate common subexpressions throughout the complete nml file
23:31:02  <planetmaker> uhm... so no more like paramx = default_value; paramx += grf_param[0x444E5323, 0] ? 0 : 10
23:31:41  <planetmaker> or rather setting default value and modifying it depending on the presence of other newgrfs
23:31:51  <Yexo> nope, just "paramx = default_value + (grf_param[0x444E5323, 0] ? 0 : 10);"
23:32:09  <planetmaker> (which is something I actually use)
23:32:32  <Yexo> I know, but there can be though of an alternative syntax to allow that
23:32:52  <michi_cc> planetmaker: Can you make mdep work for NML projects? The dep check of CETS takes sooooo loooooooooooong on Cygwin (forking is slow)
23:33:06  <planetmaker> michi_cc: nml has its own dep check
23:33:10  <planetmaker> meanwhile
23:33:29  <michi_cc> Then change CETS to use that :)
23:33:44  <planetmaker> yes. Also that is part of the makefile refactoring I'm doing
23:34:01  <planetmaker> but I actually doubt that it is faster...
23:34:46  <planetmaker> let me give you a diff to test
23:35:07  <michi_cc> It will be, simply because python won't fork all the time (and cygwin fork() is sloooow).
23:37:00  <planetmaker> well, the 'new' way is to use gcc for (p)nml deps and nml for the gfx deps
23:46:59  <planetmaker> ok, seems not yet ready for cets :-)
23:48:29  <michi_cc> Yexo: Changing || to | indeed results in better code (NML could figure that out itself though, as avail_... are not user params and the possible contents is thus known).
23:49:12  <Yexo> I'm about to learn nml this new trick :)

Powered by YARRSTE version: svn-trunk