Config
Log for #openttd on 17th June 2018:
Times are UTC Toggle Colours
00:16:19  *** greeter has joined #openttd
00:20:46  <Eddi|zuHause> how is "lzma and lzo2" "1 step" and "make" "two steps"?
00:25:10  <ANIKHTOS> okey instal make from pacman
00:25:14  <ANIKHTOS> and now i have make
00:25:30  <ANIKHTOS> i thougth installign packages from pacboy was better ??
00:27:59  <glx> for libraries it's better
00:28:55  <ANIKHTOS> okey i will  delete all reisntall all
00:29:03  <ANIKHTOS> and write down the steps
00:29:12  <ANIKHTOS> and i can give the steps to someoen to post it in wiki
00:30:38  <glx> try with PR6825, should remove the need to create a mingw dir
00:31:34  <ANIKHTOS> PR6825 whats that??
00:32:03  <glx> a pull request
00:32:05  <glx> https://github.com/OpenTTD/OpenTTD/pull/6825
00:32:26  <glx> it's a submitted modification of openttd source
00:36:49  <ANIKHTOS> how i get the file??
00:37:55  <glx> you can get the source including the modification with git
00:41:57  *** Progman has quit IRC
00:42:18  <ANIKHTOS> okey i go to files changed
00:42:23  <ANIKHTOS> to get the file??
00:43:42  <glx> I know it can be done with command line, but I don't know how
00:43:58  <glx> I use github desktop for that
00:46:03  *** OsteHovel has quit IRC
00:50:04  *** tokai|noir has joined #openttd
00:50:05  *** ChanServ sets mode: +v tokai|noir
00:53:33  <ANIKHTOS> well today i manage to get msys2 work at last
00:53:36  <ANIKHTOS> :-)
00:57:06  *** tokai has quit IRC
01:03:07  *** cHawk has quit IRC
01:17:09  *** KouDy has joined #openttd
01:17:35  <ANIKHTOS> got the file
01:17:53  <ANIKHTOS> installing everythign from beginign and make documendation
01:25:44  *** cHawk has joined #openttd
01:27:31  *** KouDy has quit IRC
01:49:44  *** ANIKHTOS has quit IRC
01:50:41  *** ANIKHTOS has joined #openttd
01:52:06  *** KouDy has joined #openttd
01:59:18  *** HerzogDeXtEr has quit IRC
02:03:05  *** Flygon has joined #openttd
02:04:09  *** KouDy has quit IRC
02:05:22  *** Cthulhux has quit IRC
02:41:18  *** muffindrake1 has joined #openttd
02:43:08  *** muffindrake has quit IRC
02:47:04  *** glx has quit IRC
02:54:00  <ANIKHTOS> good night all
02:54:08  *** ANIKHTOS has quit IRC
03:08:45  *** ToffeeYogurtPots has quit IRC
05:10:15  *** snail_UES_ has quit IRC
05:14:38  *** snail_UES_ has joined #openttd
05:23:31  *** Alberth has joined #openttd
05:23:31  *** ChanServ sets mode: +o Alberth
05:23:36  <Alberth> hi hi
05:36:50  *** beno__ has quit IRC
05:42:48  *** OsteHovel has joined #openttd
05:56:11  *** techmagus has quit IRC
06:21:59  *** nielsm has joined #openttd
06:24:35  <nielsm> morning
06:27:54  <Alberth> moin
06:44:46  *** KouDy has joined #openttd
06:47:53  *** techmagus has joined #openttd
06:47:56  *** snail_UES_ has quit IRC
06:52:55  *** andythenorth has joined #openttd
06:53:01  <andythenorth> o/
07:15:22  <peter1138> Yes indeed.
07:23:10  *** sla_ro|master has joined #openttd
08:07:23  *** ANIKHTOS has joined #openttd
08:07:46  <ANIKHTOS> hello how do you do?
08:08:14  <ANIKHTOS> yes now my msys2 is install correct i ahve lzma and lzo2 :-)
08:08:30  <ANIKHTOS> and i wrote down all the steps if someoen want to update the wiki
08:10:45  <Eddi|zuHause> uhm, it's a wiki? you update it yourself?
08:11:56  <ANIKHTOS> nope i wrote down the steps
08:12:04  <ANIKHTOS> i post them in the forum in feedback
08:12:24  <ANIKHTOS> if someone that has a wiki accoutn want to update the wiki to include msys2 install
08:16:41  *** Progman has joined #openttd
08:16:56  <ANIKHTOS> 6 hours yesterday lost to reinstall the msys2
08:17:15  <ANIKHTOS> for one reason pacboy install better libraries for mingw
08:17:45  <ANIKHTOS> but make you need to instal it with pacman!?!?! pacboy version of make does nto compile!!!!!!
08:22:30  *** Wolf01 has joined #openttd
08:22:43  <Wolf01> o/
08:23:42  <ANIKHTOS> hello wolf01
08:38:07  <Alberth> o/
08:38:32  <Alberth> by the way, not is written as "not" rather than "nto"  :)
08:38:47  *** HerzogDeXtEr has joined #openttd
08:42:09  *** frosch123 has joined #openttd
08:45:01  <__ln__> ciao a tutti
08:45:26  <Wolf01> Quak
08:45:59  <ANIKHTOS> well the good news alberth is that now my msys mingw installation have lzma and lzo2
08:46:35  <Alberth> good
08:46:51  <ANIKHTOS> and i do not know why the make pacboy download does not compile while the make from pacman does
08:47:37  <ANIKHTOS> it took me a few hours to figure that out i was installign extra libraries to see if i need more files isntall to make make work
08:47:39  <Alberth> does not compile what?
08:47:45  <ANIKHTOS> and in the end i just run pacman and it work
08:47:50  <ANIKHTOS> anything
08:48:10  <Alberth> ...
08:48:13  <ANIKHTOS> when i trype make i get error no command
08:48:22  <peter1138> pacboy doesn't work, pacman does work.
08:48:29  <Alberth> ...
08:48:29  <peter1138> I don't know what either of those things are.
08:48:54  <peter1138> I thought pacman was some Linux distro's packaging system.
08:49:02  <Alberth> reports like you do "it does not work" has no clues on what EXACTLY goes wrong, so we cannot help you
08:49:23  <ANIKHTOS> it does nto find the comamnd
08:49:32  <ANIKHTOS> it give back the eror no command
08:49:44  <Alberth> Who reports the error, make or the shell, what is the error exactly?
08:49:46  <peter1138> That means it's not installed :p
08:50:06  <Alberth> these details matter in finding the cause
08:50:26  <ANIKHTOS> iwell i do pacboy -S make install teh make
08:50:29  <ANIKHTOS> then trype make
08:50:34  <ANIKHTOS> and i get there is no command make
08:50:42  <ANIKHTOS> in the shelll of mingw
08:50:55  <Alberth> right, that helps
08:51:03  <ANIKHTOS> i isntall make from pacman -S make
08:51:06  <ANIKHTOS> type make
08:51:10  <ANIKHTOS> it works
08:51:18  <Alberth> so it's not a command inside the makefile that fails, it's starting make itself
08:51:36  <Alberth> so where does pacboy drop the program?
08:51:57  <Alberth> is that path in your PATH ?  (no, probably)
08:52:08  <ANIKHTOS> pacboy drops the x64 in a folder called mingw64
08:52:35  <ANIKHTOS> and the i686 in a folder called mingw32
08:52:40  <Alberth> can you start it manually by typing the full path?
08:53:57  <Alberth> "make" automagically getting found by the shell runs through the PATH environment variable of the shell
08:54:22  <Alberth> so either the directory containing the program is not in PATH, or it cannot be run at all
08:54:58  <ANIKHTOS> the folder have this file mingw32-make.exe
08:55:13  <ANIKHTOS> maybe thats the problem??
08:55:19  <Alberth> by manually starting it (thus avoiding use of PATH to resolve "make") you can verify if it runs at all
08:55:38  <Alberth> no idea, does it run?
09:01:20  <ANIKHTOS> i can nto go to the folder
09:01:53  <ANIKHTOS> i need to go r:\msys64\mingw64\bin
09:02:08  <ANIKHTOS> but i go so far as r:\msys64
09:03:20  *** andythenorth has quit IRC
09:03:34  <ANIKHTOS> mingw32-make: *** No targets specified and no makefile found.  Stop.
09:03:45  <ANIKHTOS> i manage to go the the folder and run the programm
09:05:00  <Alberth> you stay in the directory with the Makefile, and then type the full path to make at the prompt
09:05:51  <Alberth> eg $  r:/msys64/mingw64/bin/mingw32-make
09:06:41  <ANIKHTOS> i$ r:\msys64\ming64\bin\mingw32-make.exe i get bash: r:msys64ming64binmingw32-make.exe: command not found
09:07:18  <Alberth> the full path is is not correct if bash complains about not found
09:07:43  <Wolf01> The problem is that you are using \ instead of /
09:07:44  <Alberth> maybe you have to escape the \  as they have special meaning????
09:07:51  <Alberth> use / instead
09:08:43  *** gelignite has joined #openttd
09:09:12  <Alberth> bash agrees with \ being the problem, notice how your \ have disappeared in the response from bash?
09:09:33  <ANIKHTOS> okey with / the mingw32-make
09:09:38  <ANIKHTOS> start to compile
09:09:40  <Alberth> this kind of details provide information where to look further
09:10:30  <Alberth> ok, program runs thus
09:10:31  <ANIKHTOS> cc: error: R:/ottd/objs/release/config.cache.source.o: No such file or directory
09:10:37  <ANIKHTOS> and  faield
09:10:44  <ANIKHTOS> failed
09:11:03  <Alberth> given it has the name "mingw32-make", you should be able to start the program using that name
09:11:17  <Alberth> cc error is after make started
09:11:30  <ANIKHTOS> yes
09:11:41  <Alberth> do want to fix starting make or building source?   one thing at a time please
09:12:27  <ANIKHTOS> so that means the pacboy did nto find a 64bit make?/ and isntall a 32 in its palce??
09:12:37  <ANIKHTOS> place??
09:13:17  <Alberth> I don't know, maybe the pacboy mingw package contains both
09:13:42  <ANIKHTOS> i think thats the reson i do nto have make when i use pacboy
09:13:47  <Alberth> you'll have to check the mingw-make project to know what they aim to achieve
09:13:50  <ANIKHTOS> it install a make but with this name
09:14:25  <Alberth> likely they don't want to disturb an existing make
09:14:54  <Alberth> so they give their make program a different name to avoid name conflicts
09:15:22  <Alberth> but that is only guessing
09:16:42  <ANIKHTOS> mingw32-make: name thought up by mingw.org to distinguish the win32 variant of GNU Make. This name will be required by several software packages: Qt, CMake...
09:16:52  <ANIKHTOS> the have 3 make
09:17:00  <ANIKHTOS> nomral make is the 64 bit
09:17:27  <Alberth> so it's intentional
09:17:46  <ANIKHTOS> gmake.exe: another common name for GNU Make, does not conflict with MSYS Make.
09:17:49  <ANIKHTOS> i need this make
09:18:10  <ANIKHTOS> make.exe: traditional name for GNU Make on popular linux distributions. This will conflict (badly) with MSYS Make
09:19:12  <Alberth> original "make" is BSD make, gnu make program is standard at Linux systems, but other unicies install it as gmake to avoide name conflicts with BSD make
09:19:28  <Alberth> *unices
09:20:41  <ANIKHTOS> i do nto have gmake
09:21:41  <Alberth> sure?    mingw32-make  --version    does not say it's Gnu software?
09:22:01  <Alberth> or your "make" program
09:22:53  <Alberth> ie https://paste.openttdcoop.org/pp8txcnhn
09:23:42  <ANIKHTOS> wait i still compile
09:23:43  <Alberth> simplest solution is to make a link with the correct name that you want to the program that should be used
09:24:23  <ANIKHTOS> if mingw32-make is a 32 bit but i run mingw64 is not a problem???
09:24:29  <Alberth> ctrl+C aborts the compile :p
09:24:34  <nielsm> I would still recommend finding the time and space to install visual studio, instead of trying to get mingw/msys working
09:25:16  <Alberth> I don't know, I run only 64 bit software since several years, 32 bit software doesn't even start at my system
09:25:29  <ANIKHTOS> $ mingw32-make --version GNU Make 4.2.1
09:25:59  <michi_cc> nielsm: Your last merged commit causes a warning on clang: src/base_media_func.h:133:11: warning: enumeration value 'CR_UNKNOWN' not handled in switch [-Wswitch]
09:25:59  <Alberth> I'd expect so, there are not that many make programs around :)
09:26:34  <michi_cc> I forgot to check in the CI output logs as warnings alone still make it green :)
09:26:35  <ANIKHTOS> Built for x86_64-w64-mingw32
09:26:48  <ANIKHTOS> and it is 32 bit
09:26:51  <nielsm> michi_cc the CAT files one?
09:26:55  <Alberth> michi_cc: should be an error?
09:27:05  <nielsm> ah yeah has to be
09:27:16  <michi_cc> nielsm: 5ab06ef8
09:27:16  <nielsm> sorry :(
09:27:42  <nielsm> yeah that's the one
09:28:06  <nielsm> in hindsight it's obvious why
09:28:16  <michi_cc> Alberth: Well, if there's nothing to do for a switch case, there's nothing to do.
09:29:14  <ANIKHTOS> i will use the make i got from pacman  it is 64 bit
09:29:21  <nielsm> missing cases can only be a warning, since it _might_ be an indication of a mistake
09:31:29  <michi_cc> -Werror :p
09:35:22  *** iSoSyS has joined #openttd
09:35:24  <nielsm> sigh, again blocked from doing any work by birds
09:35:30  <nielsm> completely occupying my hands and arms
09:36:12  <Wolf01> Like a disney princess
09:36:36  <Alberth> michi_cc: for the CI that might make sense, as it avoids missing these things
09:37:22  <Alberth> but yeah, these warnings reach the point where they are somewhat questionable
09:39:57  <michi_cc> The OSX clang gives a warning like "unused typedef" on out codebase (some assert stuff). Why is that a warning please?
09:41:17  <Alberth> quite
09:42:02  <Alberth> trying to do perfect checking, which is a non-achievable goal in the first place
09:45:43  <Alberth> or they try to avoid programmers having to think and instead totally rely on tool-output, which is also not achievable
09:46:39  <Alberth> but works for all commercial tool sellers
09:48:47  <Alberth> in the meantime, why is there no editor that recognizes patterns in my code, and automatically completes the next instances of it?
09:54:54  *** iSoSyS has quit IRC
09:57:41  *** synchris has joined #openttd
10:24:10  *** Wacko1976 has joined #openttd
10:29:20  <ANIKHTOS> when i have to write code liek that i use macro that write the boring recreating code
10:31:12  *** Wormnest has joined #openttd
10:31:58  <Alberth> problem is that it's always somewhat different, different function names, different variables
10:34:08  <Alberth> and there is other unique code that I write in-between
10:39:20  <ANIKHTOS> well i have the code that is the same
10:39:34  <ANIKHTOS> and i write the macro to create the code that changes
10:39:48  <ANIKHTOS> most of the times is var1 then var2
10:40:00  <ANIKHTOS> so it is easy to write a macro with close similar names
10:40:44  <peter1138> Macros are generally bad.
10:41:34  <ANIKHTOS> well i do not know if i save time or loose time
10:41:44  <ANIKHTOS> but it makes the codign more fun and less boring
10:43:11  <ANIKHTOS> micorsoft word is good for that because you can write the macros in visual basic so many many options
10:43:39  <Wolf01> Don't confuse macros with functions
10:44:22  <ANIKHTOS> okey i use microsoft word so i can use the functions which is better than the macros
10:44:43  <nielsm> in C and C++, "macro" means a very specific thing
10:44:53  <Wolf01> No, C++ macros are something different than functions, I'm not speaking of word
10:49:25  <Alberth> Functions don't work, and Python has no macros. What I am talking about is https://paste.openttdcoop.org/pvrtvft5j  see how lines 5-11 is the same as 34-35 and
10:49:25  <Alberth> (almost) 41-47?   In fact the latter is a different pattern that also happens
10:55:41  <ANIKHTOS> https://paste.openttdcoop.org/pxxnsfmhd
10:55:47  <michi_cc> peter1138: Could I bother you for a re-approve of #6826?
10:55:56  <ANIKHTOS> that i woudl do if i ahd to write many times that
10:57:30  <Alberth> makes sense
10:59:00  <ANIKHTOS> i use placeholders where the change will be and then replace them
11:00:07  <michi_cc> peter1138: Thanks.
11:04:09  <ANIKHTOS> https://wiki.openttd.org/OpenTTDDevBlackBook/Settings/AddSetting
11:04:15  <ANIKHTOS> is this quide correct??
11:09:10  <Alberth> last change in 2015?   likely out of date
11:11:12  <Alberth> also, author doesn't seem to understand the matter very much, considering the fixes that planet-maker did
11:13:13  <ANIKHTOS> i follo wthe step i compile but when i am in the game and i try to go to settign to see if i add the setting
11:13:16  <ANIKHTOS> the game crashes
11:15:19  <ANIKHTOS> assertion failed at line 952 of settings_gui.cpp  this-> setting != NULL
11:24:45  <ANIKHTOS> solve it
11:26:43  <Alberth> assert is a check that should never fail
11:28:19  <Alberth> ie the  line before it this->setting = GetSettingFromName(this->name, &this->index);  must not return NULL
11:28:41  <Alberth> so check that function to see how it fails to do that
11:29:39  <ANIKHTOS> in the setting.ini i put it as version 200
11:29:52  <ANIKHTOS> but in saveload i did nto declare the game as 200
11:32:09  <Alberth> asserts are basically sanity checks that everything is consistent, so yeah, your changes could trigger it
11:32:30  <Alberth> ie, assert is working as intended :)
11:32:49  <ANIKHTOS> well thats why i knew it was somethign i did wrong
11:34:26  <Alberth> an error is not an endpoint in general, it's a sign that something is messed up. As programmer it is your job to find out why
11:34:41  <Alberth> so assert is a starting point for further searches
11:35:24  <Alberth> removing the assert will make the program crash in totally unrelated code, making it more difficult to find the real cause
11:35:47  <Alberth> so the assert is helping in localizing problems
11:38:54  <ANIKHTOS> is there any documendation for saveload.cpp??
11:40:54  <ANIKHTOS> when i wrote my code  for slow day i introduce some variables in date.cpp
11:41:08  <ANIKHTOS> how i save them?? witht he save game??
11:41:15  <ANIKHTOS> with the save game
11:42:54  <Alberth> you just list it as existing in a table, load and save then works
11:43:22  <ANIKHTOS> how i do that??
11:43:37  <Alberth> in addition, in AfterLoad, you fix the case of loading an older savegame by specifying a default value
11:43:52  <ANIKHTOS> yes after load i understand how it works
11:44:01  <Alberth> (not even sure if that is needed, maybe that is done automatically already)
11:44:59  <Alberth> what file in src/saveload looks the right for adding the variable to you?
11:45:14  <Alberth> economy?
11:45:28  <Alberth> misc?
11:45:52  <ANIKHTOS> well its about date so game??
11:46:08  <Alberth> misc seems to have _date
11:47:06  <Alberth> you see the static const SaveLoadGlobVarList _date_desc[] = {  table?
11:48:12  <ANIKHTOS> yes
11:48:22  <Alberth> it lists global variable to save, with at the right the first and last version number in the savegame
11:49:02  <Alberth> so _date is saved as SLE_INT32  since version 31
11:49:56  <Alberth> and the line before says _date was saved as a UINT16 until and including version 30
11:50:39  <Alberth> near the end of the table is _pause_mode which exists since version 4, and not before
11:51:01  <Alberth> so you just add your global variable in there
11:51:42  <Alberth> ok, no default values here, I am confused with settings
11:51:56  <Alberth> so you need AfterLoad to initialize it for older savegames
11:52:05  <ANIKHTOS> okey thanks alberth when you said saveload table i  though in the saveload.cpp file
11:52:40  <Alberth> and you didn't look in all the other src/saveload/* files?  :)
11:53:34  <ANIKHTOS> well i look in saveload.cpp
11:53:38  <ANIKHTOS> long long file
11:53:45  <Alberth> yes, toooooo long :p
11:54:04  <Alberth> one decade of history
11:54:05  <ANIKHTOS> and i did nto get anything apart the firs tlien where you declare the version of the game
11:54:58  <Alberth> yeah, there isn't much documentation that explains everything
11:55:12  <Alberth> not sure how much of a problem that is
11:55:46  <Alberth> it'd just become obsolete if it existed
11:57:24  <Alberth> first time I read the source I didn't understand it either, but you try a few times, and eventually it's not that difficult.
11:57:50  <Alberth> reading source you didn't write is also a skill you have to practice
11:58:34  <ANIKHTOS> 	SLEG_CONDVAR SLEG_VAR?? what i use??
12:06:01  <ANIKHTOS> well i documented my experience isntalling msys2 and i post it to help others
12:14:35  <Alberth> SLEG_VAR is the same as SLEG_CONDVAR, except the latter has a lower and upper value for savegame versions
12:15:15  <Alberth> you didn't see that when comparing two lines?
12:16:34  <Alberth> posting in the forum is pretty much useless, in a month nobody is going to find that post
12:21:17  <ANIKHTOS> well if someoen wants to edit the wiki and put the steps they are welcome to do it
12:21:37  *** ToffeeYogurtPots has joined #openttd
12:21:38  <ANIKHTOS> i imagine my steps are not worded 100% perfect
12:30:40  <Alberth> the problem is that some one that knows it all has no use for documenting it on the wiki
12:31:22  <Alberth> so you'll never find one that is willing to do it and write it down perfectly
12:32:59  <Alberth> this is why the newer features of openttd are not even listed on the wiki, and why the blackbook is outdated
12:33:16  <Alberth> and incomplete
12:44:37  <ANIKHTOS> okey i made my add settign in the gui so users can choose the slow factor
12:44:44  <ANIKHTOS> but i can nto use it in the code
12:44:50  <ANIKHTOS> not declared in this scope
12:45:33  <Alberth> it's a global?
12:45:48  <Alberth> declare it next to _date
12:45:56  <Alberth> assuming that is done :)
12:46:34  <Alberth> yep, is
12:46:44  *** Cthulhux has joined #openttd
12:51:38  <ANIKHTOS> it is declared in setting_type.h
12:52:08  <ANIKHTOS> which date.cpp is including would not link to the variable over there??
12:55:25  <Alberth> oh, you're talking about the setting and not your own date variable
12:55:47  <Alberth> well yes you have to include any file that you need in the cpp file
12:56:37  <Alberth> any .h file, that is
13:01:24  <nielsm> modifying strings in english.txt is a slog, having to wait for first language compiler for all other languages, and then rebuilding most of the code because strings.h changed too
13:03:09  <ANIKHTOS> okey i add a seeting which is declared in the settings+type.h
13:03:46  <ANIKHTOS> now i am in the date,cpp which includes the settings_type.h file and i want to call that setting variable
13:03:55  <ANIKHTOS> but i get not declared in scope
13:04:06  <ANIKHTOS> how i call the setting??
13:06:11  <Alberth> find how an arbitrary other setting does it
13:07:00  <Alberth> don't panic on the first problem, but try to come up with other cases in the code that must solve the same problem
13:07:40  <Alberth> then find that code and see how they do it
13:18:28  <ANIKHTOS> i am nto panicking
13:21:49  <Alberth> ok, just think a little longer than :)
13:21:59  <Alberth> *then
13:29:50  *** Thedarkb1 has quit IRC
13:37:38  *** Thedarkb1 has joined #openttd
13:38:41  *** Cthulhux has quit IRC
13:47:04  *** Cthulhux has joined #openttd
13:50:08  <Wolf01> V453000: so some company made Factorio3D?
13:51:08  <nielsm> TrueBrain, how do you like this layout? http://0x0.st/sLyn.png
13:56:05  <TrueBrain> nielsm: I like the top part, although a value it is aiming for would be nice too (I have no clue if 32 is what it should be, etc)
13:56:13  <TrueBrain> a high-watermark is nice, but it is a bit meaningless
13:56:23  <TrueBrain> same for average
13:56:31  <TrueBrain> a plain history would be much more valuable
13:56:39  <TrueBrain> if we look at the situations you are interested in the value, is when it goes wrong
13:56:48  <TrueBrain> and the average is a poor value for that imo
13:57:11  <TrueBrain> (and a high watermark .. well .. all our systems sometimes choke .. is that really useful?)
13:57:38  <nielsm> how about 50th and 90th percentile then?
13:57:46  <TrueBrain> still not useful to me
13:57:53  <TrueBrain> if I run OpenTTD for a day
13:57:55  <TrueBrain> those values are meaningless
13:58:00  <TrueBrain> they only work for the last 10 minutes or so
13:58:11  <nielsm> ah you're missing one detail
13:58:24  <nielsm> it's not all time, but within the window of (currently) 128 data points
13:58:37  <TrueBrain> that is not written in your GUI anywhere ;)
13:58:43  <TrueBrain> still a graph would be more useful tbh
13:58:43  <nielsm> I intend to add it
13:58:55  <TrueBrain> (all modern games you see adopt this btw)
13:59:30  <TrueBrain> http://i.imgur.com/Kpw8VIF.jpg <- Path of Exile example
14:00:01  <TrueBrain> this allows me in PoE to mostly understand where the spike is coming from
14:00:01  <Eddi|zuHause> great fps drops in that :p
14:00:04  <TrueBrain> as I have a bit more context
14:00:16  <TrueBrain> especially I see if it was a minor drop, or a long drop
14:00:24  <TrueBrain> as you can see, Eddi|zuHause already understand the context of that simple graph :)
14:00:42  <TrueBrain> personally, I think any other value would only make it more complex without really adding value
14:00:43  <Eddi|zuHause> well, i've had my share of poe performance problems :p
14:00:47  <TrueBrain> so a plain fps would be better than
14:01:08  <TrueBrain> havent we all :P
14:05:52  <nielsm> http://0x0.st/sLtH.gif
14:05:54  <nielsm> yay it works
14:07:17  <TrueBrain> slick :)
14:07:24  <TrueBrain> maybe make the 2 section details a bit more clear or something
14:07:27  <TrueBrain> but that is working in the margins :)
14:07:47  <TrueBrain> we already have code for sparklines in the UI, so a history should be trivial I guess? :)
14:10:33  *** Cthulhux has quit IRC
14:12:47  <nielsm> http://0x0.st/sLtX.png  better now? :P
14:13:29  <TrueBrain> as explained, I do not see the point of the information
14:13:35  <TrueBrain> even if you tell me how you got the information :)
14:13:41  <TrueBrain> it doesnt tell me anything honestly
14:14:08  <TrueBrain> a graph can say what 1000 statistics cant :)
14:14:35  *** Thedarkb1 has quit IRC
14:19:29  <nielsm> um I'll push this version of it and then look at the company graphs for how those are done
14:20:31  <TrueBrain> remove average/high-watermark, and it seems like a valid PR to me; graphs can be an addition. With the average/highwatermark, I think you get more questions than you want to answer :P Just my 2 cents on getting PRs in quick :D
14:21:26  <Alberth> a case of less is more :)
14:22:17  <TrueBrain> exactly :)
14:23:13  <nielsm> the "current" here is actually based on 8 points still, so it's more "short term average"
14:23:46  <TrueBrain> what is a "point"?
14:23:54  <Eddi|zuHause> TrueBrain: this is my "best" one https://i.paste.pics/bfaf777477b8e145077c1439fe8ebd3e.png
14:25:03  <nielsm> one data point is one run through the game loop/window drawing proc/video output proc/mixer loop
14:25:17  <TrueBrain> nielsm: so the second method in my reply?
14:25:17  <Eddi|zuHause> so, one tick?
14:25:39  <nielsm> for game loop yes
14:25:56  <TrueBrain> does video do something else?
14:26:23  <Eddi|zuHause> not to my knowledge
14:26:32  <nielsm> video output can run more frequently, I think it does that for the mouse cusor specifically
14:26:35  <nielsm> on windows at least
14:27:00  <TrueBrain> so okay, you measure the time of a frame, take the last N frames, and calculate the FPS from that?
14:27:54  <nielsm> I measure two things for each frame/tick, one how long it took for the function to run (time from entry to return), and store the start time of each call as well
14:28:18  <Eddi|zuHause> ok, i do remember some talk about making the gui more smooth
14:28:20  <nielsm> the history of entry times is used to calculate the frame rate (fps)
14:28:35  <nielsm> while the history of run times is used to display the ms values
14:28:59  <TrueBrain> so you measure the frame time
14:29:02  <nielsm> Eddi|zuHause yes this PR: https://github.com/OpenTTD/OpenTTD/pull/6780
14:29:05  <TrueBrain> and calculate the FPS from there
14:29:39  <TrueBrain> well, and not the last, but over a few measurements I guess
14:30:22  <nielsm> http://0x0.st/sLtZ.txt
14:30:25  <nielsm> the relevant part
14:31:33  <TrueBrain> okay, so FPS is from the start of the frames
14:32:07  <nielsm> yes
14:32:18  <Eddi|zuHause> frame time is end-start, and FPS is start[n]-start[n-1]
14:32:46  <TrueBrain> I would show that tbh ... frame time and FPS, as 2 separate values
14:32:59  <TrueBrain> (for the 2 main things)
14:33:10  <TrueBrain> I guess you kinda did
14:33:23  <TrueBrain> as you notice, the information is not fully clear to me at first glance :)
14:34:19  <nielsm> there's also the console output option: http://0x0.st/sLtq.png
14:34:32  <nielsm> which is mostly meant to for dedicated servers I suppose
14:35:50  <TrueBrain> okay, so if I would play the game, and it is going a bit wonkey, I would like to see how the game is doing
14:36:12  <TrueBrain> I would like to see how much frames/second the game is updating, and how many frames/second the game is drawing
14:36:17  <TrueBrain> if the game is a bit more okay
14:36:30  <TrueBrain> I would like to see the frame time, so I can see how close I am to hurting the framerate
14:36:31  *** sim-al2 has quit IRC
14:36:50  <TrueBrain> (in factorio this is very much a thing too .. for days your game runs fine, and than it crumbles down .. seeing that moment approach really helps)
14:37:00  <TrueBrain> as FPS is always max if the frame time is low enough
14:37:06  <TrueBrain> makes sense?
14:37:14  <nielsm> yes
14:37:25  <TrueBrain> than if the game loop is acting up, Iwould like to see inside there
14:37:28  <TrueBrain> how the entries related
14:37:32  <TrueBrain> FPS is irrelevant there
14:37:39  <Eddi|zuHause> i guess an interesting data point is how much time the gameloop is sleeping
14:37:44  <TrueBrain> I just want to see which parts takes how much ms, possibly relative to the parent
14:37:52  <nielsm> perhaps part of the reason I didn't even think of graphs initially is that my experience with OTTD is that if things are slow, they are slow all the time and not occasionally
14:38:12  <TrueBrain> I get that
14:38:21  <TrueBrain> for FPS this most likely is also true
14:38:27  <TrueBrain> for frame times this should be a slow line upwards
14:38:58  <Alberth> just stop playing soon enough :p
14:39:16  <LordAro> peter1138: https://imgur.com/gallery/IYOKT3I this guy.
14:39:40  <Eddi|zuHause> i guess the frame times might be useful in screenshots and crash reports, to know when to tell people things like "try disabling full animation"
14:40:07  <Alberth> sounds fair
14:40:08  <TrueBrain> you measure both frame time, as FPS in a decent way
14:40:16  <TrueBrain> FPS over the last N frames
14:40:24  <Alberth> I also run other stuff at the same machine, which should affect frame time
14:40:33  <TrueBrain> auto-save anyone? :D
14:40:40  <Alberth> would be nice to see that
14:41:06  <TrueBrain> guess the frame time is also over a few frames nielsm? (the "current")?
14:41:38  <Alberth> 300K save, once ever 13-ish minutes? hardly worth noticing probably :)
14:43:02  <nielsm> TrueBrain yes, average over 8 frames
14:43:18  <peter1138> LordAro, "You can't go anywhere in Scotland without passing a distillery. This is Dalwhinnie."
14:43:26  <TrueBrain> nielsm: so possibly a good start for an initial PR for this is simply that ... FPS over last 8 frames for gameloop/video, and frame time over last 8 frames in both the gameloop/video and in a little bit more detail
14:43:27  <peter1138> LordAro, that's a journey I can get behind :-)
14:43:39  <nielsm> the two main framerate values at the top are over the full 128 point history
14:43:43  <LordAro> peter1138: ikr
14:43:47  <LordAro> one day, one day...
14:43:53  <TrueBrain> nielsm: I would pick the same N ?
14:44:09  <TrueBrain> otherwise you get these situations where 1 / framerate is a number lower than FPS?
14:44:36  *** gelignite has quit IRC
14:45:06  <TrueBrain> and I wrote 8 for N, but 128 for N sounds better indeed :P
14:45:16  <TrueBrain> euh, 1 / frametime, oops
14:45:37  <Eddi|zuHause> @calc 170*1.6
14:45:37  <DorpsGek> Eddi|zuHause: 272
14:46:12  <peter1138> The issue I had with the fps patch is that on very high frame rates, the average updates quickly, and very low frame rates it updates slowly.
14:46:29  <peter1138> Cos the display always used the full data points.
14:46:39  <TrueBrain> nielsm: so what you have now, minus the 'current' and 'high-watermark' (as I assume 'average' was over the 128 points), to keep it simple and keep people away from questions :D
14:46:58  <Eddi|zuHause> so it rather should update every 1s, 10s, 60s?
14:47:13  <TrueBrain> if I get nielsm correctly, every frame the value changes?
14:47:16  <Eddi|zuHause> and then see how many frames fit in that?
14:47:17  <peter1138> Hence if you just work out how many data points are needed for a full second (or something) the update should be better.
14:47:21  <TrueBrain> but it is the average over 128 points?
14:48:06  <TrueBrain> I do not really understand what peter1138 is trying to say, sorry :D
14:48:08  <Eddi|zuHause> TrueBrain: yes, but 128 datapoints is a much longer period in slow framerates
14:48:14  <TrueBrain> yes; so?
14:48:17  <TrueBrain> the framerate is also lower
14:48:26  <TrueBrain> it takes a bit of time for the average to pick up on that
14:48:29  <TrueBrain> but .. that is an average
14:49:41  <TrueBrain> btw, in general, FPS is hard to work out to mean something  proper, in any game
14:49:44  <Alberth> I think the point is you can also update eg once a second, independent of the number of frames you have
14:49:45  <TrueBrain> frame times is a lot easier :P
14:49:53  <TrueBrain> but you update every frame?
14:49:56  <Eddi|zuHause> i guess it's more relevant for the shorter intervals
14:50:02  <TrueBrain> I guess we mean different things with the 'update' part?
14:51:00  <Eddi|zuHause> yes
14:51:38  <TrueBrain> trying to puzzle it together .. I guess they mean that the sliding window is not based on frames, but based on time?
14:52:50  <Eddi|zuHause> yes, that was the suggestion
14:52:53  <TrueBrain> okay :)
14:53:05  <TrueBrain> algining lingo is a big part of the work :P
14:53:26  <nielsm> well yes you could also make something that searches the timestamps array, finds the first timestamp more than 1 second away from "now", and calculates a framerate based on that
14:53:29  <Alberth> it is
14:53:45  <nielsm> something with number of frames actually rendered, and then the difference between now and that timestamp found
14:54:01  <TrueBrain> nielsm: and to speed that up, you can make a bucket system of a resolution of 1 second :)
14:54:19  <TrueBrain> euh, 100ms or so
14:54:26  <TrueBrain> not 1s, silly TrueBrain
14:54:42  <TrueBrain> as otherwise the calculation gets a bit expensive
14:55:14  <nielsm> really no, for buckets you'll need to make division operations for every value recorded, which is probably slower than doing a linear search through an array once every 20 screen updates
14:55:14  <Alberth> keep last time-stamp, and check while adding a new entry
14:55:27  <TrueBrain> nielsm: huh? I think we mean different things :D
14:55:28  <nielsm> but now we're into microoptimizations that probably are a waste of time
14:55:50  <TrueBrain> bucket[time % 0.1s] += 1
14:55:54  <TrueBrain> no division needed :)
14:56:00  <nielsm> % is a division
14:56:09  <TrueBrain> so use 1024
14:56:09  <LordAro> lol
14:56:23  <TrueBrain> and please call modulo modulo, makes talking easier :)
14:56:46  <TrueBrain> it read to me that you wanted to add the starttimes together and dvide that by the points or something silly :)
14:57:18  <TrueBrain> owh, 1024 is 10ms .. use 128! :P
14:57:41  <Alberth> off by 28% :p
14:58:07  <TrueBrain> either way .. for FPS using a fixed timeframe looks a bit better
14:58:17  <TrueBrain> for frametimes I think it doesnt really matter
14:58:32  <peter1138> frametimes, no.
14:58:41  <TrueBrain> but if we ever want a graph that has on the x-axis time, it does
14:59:02  <peter1138> It's just odd for FPS becuase of the different lengths of time for it to settle.
14:59:05  <TrueBrain> (as that might look better)
14:59:09  <TrueBrain> ack
14:59:53  <TrueBrain> the impact of a slower frame needs longer time to show up in an average FPS with a sliding window over frames :D
15:00:12  <TrueBrain> (just to confuse the fuck out of anyone by constantly mising time with frame as unit :D)
15:01:35  <TrueBrain> mising? Mixing
15:09:00  <peter1138> My PRs are going to sit there forever anyway :p
15:09:11  <TrueBrain> other channel I guess? :P
15:09:18  <peter1138> That one.
15:10:13  <LordAro> gonna test #6825
15:10:25  <LordAro> break my rule of not putting a development environment on my windows install
15:10:33  <peter1138> Bah, £1400 for a shed :S
15:11:47  *** Cthulhux has joined #openttd
15:12:43  *** gelignite has joined #openttd
15:13:45  <peter1138> Hmm, might rebase the window tick stuff, I want the ICU-replacing code :-)
15:15:52  <nielsm> TrueBrain, for a graph display of processing times, since there are potentially lots of elements that can be measured and displayed, I wonder if the best approach would actually be to have each graph openable in its own window?
15:16:30  <nielsm> instead of all graphs overlapped, or stacked in the same window
15:16:52  <peter1138> Stacked is pretty normal for that kind of thing.
15:17:13  <peter1138> Meh, can't even run it now as ICU crashes every time.
15:17:34  <nielsm> yeah but useless if you have 10 graphs stacked and don't care about 7 of them
15:17:42  <nielsm> (waste of screen real estate)
15:17:57  <TrueBrain> nielsm: experiment with it a bit I would say :)
15:21:25  <TrueBrain> you can do like company windows, where you can enable/disable details :P
15:21:26  <LordAro> is ICU entirely irrelevant on windows now?
15:21:38  <TrueBrain> please say yes please say yes please say yes :P
15:21:54  <LordAro> oh, sorting will still be icu
15:22:10  <LordAro> sorry :p
15:22:15  <TrueBrain> ffs!
15:22:40  <TrueBrain> off to get some food o/
15:23:49  <peter1138> LordAro, fix it!
15:24:59  <LordAro> or maybe not...
15:25:13  <LordAro> icu sort is disabled if uniscribe is found
15:26:51  <LordAro> yeah, seems uniscribe can do string sorting as well
15:27:37  <LordAro> was a little confused by the "disabled" output in the configure script, rather than the expected "WIN32, skipping"
15:27:38  <nielsm> it's called /collation/ !!
15:27:41  <LordAro> shh
15:28:05  <LordAro> but "WIN32, skipping" is used for non-compatible libraries anyway
15:28:56  <LordAro> oh, fun fact, configure script does not check for `make`
15:31:42  <LordAro> and interestingly, mingw-gcc7.3 has a couple of warnings that look like they should be fixed
15:33:56  <peter1138> nielsm, another minor issue is the fps window can be partially updated
15:35:33  <nielsm> I think I actually noticed that... if it's above a part of screen where things are happening, parts of it will update with new values and parts remain
15:58:07  <LordAro> error: static assertion failed: sizeof(BitmapFileHeader) == 14
15:58:08  <LordAro> hmm.
16:00:13  <LordAro> who's most recently used mingw?
16:00:28  <Alberth> ANIKHTOS:  ?
16:01:09  <ANIKHTOS> yes??
16:01:52  <LordAro> ANIKHTOS: don't suppose you ever came across the above error with your msys/mingw install?
16:03:23  <ANIKHTOS> win 32 skiping??
16:03:46  <Alberth> the static assert error
16:04:28  <Alberth> code does not use a library, it writes uncompressed BMP
16:04:41  <LordAro> it's as if GCC_PACK is not being applied
16:05:05  <LordAro> there was an odd warning earlier about OTTD_PRINTF64 being defined as %d as well
16:06:08  <ANIKHTOS> wait i compile knwo i will run config in a min and tell you about the assert
16:07:01  <LordAro> the assert is at compile time
16:07:11  <LordAro> given you can currently successfully compile OTTD, i imagine you haven't seen it
16:07:20  <LordAro> https://github.com/OpenTTD/OpenTTD/blob/master/src/stdafx.h#L307 this doesn't seem right
16:08:26  <Alberth> or ANIKHTOS uses 32 bit compile
16:08:50  <LordAro> possible
16:08:58  <Alberth> haha :)
16:09:00  <ANIKHTOS> i use mingw64
16:09:01  <LordAro> although i don't see why that would make a difference
16:09:09  <ANIKHTOS> and installed only 64 bit libraries
16:11:15  <LordAro> nope, GCC_PACK is definitely defined to be __attribute__((packed))
16:11:19  <LordAro> so why isn't it working...
16:11:31  <ANIKHTOS> checking assert... enabled
16:11:49  <ANIKHTOS> thats what you ask for alberth??
16:12:02  <Eddi|zuHause> ANIKHTOS: no
16:12:26  <Alberth> no, "error: static assertion failed: sizeof(BitmapFileHeader) == 14" is the failure that LordAro has
16:12:28  <Eddi|zuHause> LordAro: maybe a datatype has different length?
16:12:38  <LordAro> nope, just checked those
16:12:39  <Alberth> and he asked for someone recently using mingw
16:12:55  <LordAro> and i'd very much hope that uint16 & uint32 are the correct size :p
16:13:03  <Alberth> add that packed stuff hardcoded around the definition to be sure?
16:13:22  <ANIKHTOS> imy only problems wiwere with lzma lzo2 and make
16:13:52  <LordAro> Alberth: yh, no change
16:13:59  <Eddi|zuHause> LordAro: so we know that sizeof is not 14, what is the actual result?
16:13:59  <LordAro> to google!
16:14:11  <LordAro> Eddi|zuHause: the assert does not tell me that :>
16:14:17  <Alberth> try 16
16:14:32  <LordAro> Alberth: yup
16:14:41  <ANIKHTOS> lordara have you install all toolchain??/
16:15:00  <LordAro> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991 interesting
16:15:04  <LordAro> ANIKHTOS: yes
16:15:21  <ANIKHTOS> with pacman or pacboy??
16:15:32  <LordAro> irrelevant, it is installed
16:16:03  <ANIKHTOS> they do not isntall the same  files
16:16:17  <LordAro> i am not having an issue with the libraries
16:16:44  <Eddi|zuHause> LordAro: "In contrast, compiling with -mno-ms-bitfields makes the example programs work as expected under gcc 4.7.0." <-- have you tried that?
16:17:08  <LordAro> trying..
16:19:57  <Alberth> ANIKHTOS: he's debugging bugs in the gcc compiler  :)
16:20:33  <ANIKHTOS> nice
16:21:02  <Alberth> well, if you read the link, it's fixed, took only about 6 years
16:21:25  <ANIKHTOS> who is in hurry??
16:23:10  <LordAro> Eddi|zuHause: seems to have fixed it
16:23:21  <LordAro> now i have some excellent llooking harfbuzz linker errors
16:23:38  <Eddi|zuHause> that sounds fun :p
16:23:42  <Alberth> progress :p
16:24:44  <michi_cc> TrueBrain: ICU is entirely optional on Windows now (as is the DirectMusic part that we package in openttd-useful).
16:24:49  <Eddi|zuHause> now, $someone should probably tell configure that certain versions of GCC need that flag
16:25:16  <LordAro> Eddi|zuHause: yeah, i've got a couple of changes so far
16:27:06  <nielsm> well that's... kinda something? http://0x0.st/sLvH.png
16:27:07  <Eddi|zuHause> people making loud noises in the neighbourhood. game must be on?
16:30:55  *** sla_ro|master has quit IRC
16:31:01  <Alberth> nielsm: bit magic what the spikes mean, doesn't it?
16:31:17  <nielsm> absolutely :)
16:31:31  <nielsm> it's one pixel per millisecond
16:32:13  <LordAro> wait, what is linking in harfbuzz anyway?
16:32:14  <Alberth> horizontally or vertically?
16:32:36  <LordAro> ah, static freetype
16:32:37  <nielsm> Alberth it makes sense in motion :P
16:32:50  <Alberth> quite likely it does :)
16:33:52  <ANIKHTOS>  ISO C++ forbids comparison between pointer and integer progress alberth diferent eror message
16:33:53  <Alberth> adding a hoover with explanation helps a lot, I think
16:35:11  <Alberth> yeah, they finally made that official. I always wondered why they added it to C in 1978
16:35:29  <LordAro> Alberth: lol, still only a warning by default, iirc
16:36:07  <Alberth> likely, don't want to scare all the oldtimers away :p
16:37:38  <LANJesus> sometimes i want to know the distance between two pointers in an array
16:37:43  <LANJesus> it makes sense there
16:38:05  <Alberth> no, then you subtract two pointer from each other
16:38:44  <nielsm> woo http://0x0.st/sLvK.png
16:38:57  <Alberth> int i;   i < &i   is comparison between pointer and integer
16:39:59  <LordAro> Eddi|zuHause: ... config.lib:1617
16:40:07  <LordAro> guess i should work out why that's not applying
16:40:18  <Eddi|zuHause> LordAro: i don't think i ever looked at that file
16:40:29  <Alberth> that's a good thing :p
16:40:35  <LordAro> ^
16:40:38  <LordAro> it's not a nice file
16:42:14  <LordAro> oh wait, that's for icc only
16:44:03  <LordAro> TrueBrain: hurry up and finish the new build system pls :>
16:46:23  <peter1138> :D
16:46:23  <nielsm> MUCH better when using QueryPerformanceCounter: http://0x0.st/sLvc.png
16:46:53  <peter1138> Simulation rate should be 33.33 frames/s though.
16:47:00  <peter1138> 1000/30
16:47:11  <nielsm> yeah I don't know why it gets it wrong
16:47:28  <nielsm> I'm dividing by a wrong number somewhere
16:47:49  <peter1138> Although its possible it's slower, as it doesn't play catch-up if it's behind.
16:48:56  <nielsm> http://0x0.st/sLvT.jpg
16:50:50  <peter1138> When do we get enough detail to show how slow NewGRF is? :D
16:51:21  <peter1138> Modern languages without specs are much faster.
16:51:46  <LordAro> haha
16:54:45  <Eddi|zuHause> yeah, just compare the speed of loading games betewen civ{4,5,6} and civ2
16:56:06  <LordAro> ...the harfbuzz issue was because i hadn't done a "system upgrade"
16:56:13  <LordAro> so it was pulling in old versions
17:00:37  <ANIKHTOS> civ2 load really fast??
17:04:27  <LordAro> once you click past the "yes i've got more than 32MB RAM" box
17:05:44  <LordAro> goddamn it, i copied the icc directive for mingw & bitfields
17:06:20  <LordAro> wait, no
17:06:23  <LordAro> what's going on
17:08:47  <LordAro> oh fuck you freetype
17:08:58  <LordAro> it's *adding* -mms-bitfields
17:12:43  <LordAro> and yes, harfbuzz is still broken
17:12:50  * LordAro --without-freetype
17:13:43  <LordAro> where's a glx when you want him
17:17:24  <Eddi|zuHause>  <LordAro> once you click past the "yes i've got more than 32MB RAM" box <-- i'm pretty sure i always answered "no" on that
17:18:13  <LordAro> i think it was actually asking if you had the CD?
17:20:07  *** Flygon has quit IRC
17:20:11  <Eddi|zuHause> well, without the CD you'd be missing the video files anyway
17:21:19  <LordAro> indeed, which is what the 32MB was required for
17:22:20  *** snail_UES_ has joined #openttd
17:25:22  <LordAro> how does one get ottd to bootstrap to download graphics?
17:27:31  <Eddi|zuHause> start it with no graphics in the paths that it looks for?
17:32:18  <LordAro> ...it uses freetype
17:32:24  <LordAro> typical
17:34:00  *** andythenorth has joined #openttd
17:36:24  <LordAro> in the meantime, i made a thing: http://wiki.openttd.org/Compiling_on_Windows_using_MSYS2
17:38:57  <ANIKHTOS> nice lord ara in the packboy you can say if you remove the ::x it will download both 32 and 64
17:40:26  <LordAro> done :)
17:40:49  <ANIKHTOS> did you read my step by step?? or not??
17:40:55  <LordAro> i've not looked
17:41:02  <LordAro> don't go on the forum much
17:42:11  <ANIKHTOS> i documented all my steps that i doen to set up mingw64 in the msys2 package
17:42:39  <LordAro> as did i :)
17:43:26  <ANIKHTOS> you did nto wwirte you need lzma??
17:43:55  <LordAro> yeah i did - xz
17:44:04  <LordAro> it's got 2 different names, for some reason
17:44:42  <ANIKHTOS> glx told me that is better to use pacboy to install libraries for mingw
17:44:47  <ANIKHTOS> and nto use pacman
17:45:54  <LordAro> yes, that is what i did
17:46:13  <ANIKHTOS> did you have problem with lzo2??? the config.lib of ottd look for lzo2 in wrong  place
17:46:15  <LordAro> git & make have no (meaningful) mingw equivalent
17:46:32  <LordAro> ANIKHTOS: ah yes, i forgot i was using the branch for PR #6825
17:46:39  <ANIKHTOS> glx made a new config.lib to be update with msys2
17:46:53  <LordAro> yeah, that's the one i used
17:47:29  <ANIKHTOS> before glx made the file update i make a symlink and create the folder ottd was lookign for lzo2
18:01:49  *** planetmaker_ has joined #openttd
18:07:37  *** supermop has joined #openttd
18:07:50  <supermop> yo
18:11:49  <andythenorth> lo supermop
18:12:46  <supermop> hows it going over there
18:15:25  <andythenorth> much chores
18:16:00  <supermop> similar here
18:16:09  <supermop> also its like 90 today
18:20:19  <Eddi|zuHause> how much is that in real units?
18:28:11  <Arveen> or in soccer fields
19:01:28  <supermop> Eddi|zuHause: about 90
19:01:56  <LordAro> https://github.com/Alexpux/MINGW-packages/issues/3966 hrm.
19:10:05  *** sla_ro|master has joined #openttd
19:17:56  *** sla_ro|master has quit IRC
19:26:06  <Eddi|zuHause> supermop: back in elementary school, whenever anyone said a number like "90" without units, my teacher asked "90 what? sausages?"
19:26:31  <supermop> it feels outside about as if i had eated 90 sausages
19:26:40  <supermop> eaten
19:26:42  <supermop> damnit
19:30:24  *** glx has joined #openttd
19:30:24  *** ChanServ sets mode: +v glx
19:31:14  <LordAro> o/ glx
19:31:30  <LordAro> there's some interesting stuff in the logs
19:35:28  *** snail_UES_ has quit IRC
19:36:26  <Eddi|zuHause> yeah, like discussions about 90 sausages
19:36:37  <LordAro> exactly.
19:41:58  *** synchris has quit IRC
19:43:39  <glx> @logs
19:43:39  <DorpsGek> glx: https://webster.openttdcoop.org/index.php?channel=openttd
20:00:26  *** Thedarkb-X40 has joined #openttd
20:04:09  *** Alberth has left #openttd
20:20:35  <ANIKHTOS> created a new setting in the gui but i can not use it? all the time i get error either not declare in scope. type mismatch.  mo class type, and a few others i am doing progress i find out many errors but not the answer
20:24:11  *** sla_ro|master has joined #openttd
20:24:50  <glx> LordAro: nice work on the wiki :)
20:31:53  <LordAro> michi_cc: dmusic.cpp - ChunkHeader & WAVE_DOWNLOAD structs - is the pack(2) strictly necessary, or can it just be a more usual pack(1)? (i'm making a define)
20:34:42  *** sim-al2 has joined #openttd
20:36:35  <Eddi|zuHause> i'd take things like that pretty literally
20:39:18  <LordAro> i imagine so, but there's no comment, so...
20:40:08  <michi_cc> LordAro: It's that way in a Microsoft sample code, but as all includes structs have even length as far as I can see, it should make no difference.
20:40:45  <LordAro> mm, there's another instance of it in win32.cpp
20:40:55  <LordAro> which definitely doesn't matter for other OSes, but eh
20:41:23  <michi_cc> dmusic definitily doesn't matter for other OSes either.
20:41:44  <LordAro> can't hurt to be a little more consistent :)
20:42:01  <LordAro> regardless, i've just made a PACK_N macro
20:42:08  <michi_cc> And I don't think any compiler targeting Windows fails on pragma pack, or the system headers break horribly :)
20:42:11  <glx> LordAro: are you enabling dmusic for msys2 ?
20:42:37  <glx> I think the headers are available in msys2 w32api
20:43:46  <LordAro> glx: i wasn't trying to
20:44:02  <LordAro> just searching for other uses of struct packing
20:44:17  <LordAro> other than the one in screenshot.cpp, the only other instances are in windows code
20:44:21  <Wolf01> 'night
20:44:24  *** Wolf01 has quit IRC
20:44:36  <glx> at least I can see them in https://github.com/Alexpux/mingw-w64/tree/master/mingw-w64-headers/direct-x/include
20:45:16  <LordAro> is there a define to distinguish between MSYS & MSYS2? or do we think it's not worth the bother supporting the old version>
20:45:20  <LordAro> ?*
20:45:47  <glx> I don't think it's possible to detect than
20:45:54  <glx> both says MINGW
20:46:07  <LordAro> src/3rdparty/squirrel/squirrel/sqfuncstate.cpp:88:60: warning: format '%d' expects argument of type 'int', but argument 2 has type 'SQInteger {aka long long int}'
20:46:11  <LordAro> is annoying
20:46:19  <LordAro> apparently it doesn't like %I64d
20:46:44  <glx> hmm it should use the same format as MSVC
20:47:09  <LordAro> yeah, it doesn't like %lld even more
20:47:10  <glx> because printf format depends on msvcrt even for minwg
20:47:38  <glx> yeah I get a lot of warnings when building with mingw
20:55:49  <glx> warning: use of 'I' length modifier with 'u' type character has either no effect or undefined behavior [-Wformat=]
20:55:57  <glx> these are annoying too
20:56:12  *** andythenorth has left #openttd
20:56:13  <glx> I think the compiler is the one to blame
20:59:39  <LordAro> i don't get those
20:59:50  <glx> d:/developpement/GitHub/OpenTTD/src/base_media_func.h:133:3: warning: enumeration value 'CR_UNKNOWN' not handled in switch [-Wswitch]
20:59:51  <glx>    switch (file->check_result) {
20:59:51  <glx>    ^~~~~~
20:59:56  <LordAro> i get those
21:00:00  <LordAro> should be easy fix
21:00:07  <glx> that one is real :)
21:00:16  <LordAro> odd how nothing else picks it up
21:05:42  <LordAro> #define PACK_N(type_dec, n) __pragma(pack(push, n)) type_dec __pragma(pack(pop))
21:05:46  <LordAro> this should work, right?
21:05:56  <LordAro> error: expected constructor, destructor, or type conversion before '(' token
21:06:10  <LordAro> (the opening ( of the first __pragma )
21:07:03  *** frosch123 has quit IRC
21:08:58  <glx> my mingw is 32bit btw that could explain some differences with yours
21:09:18  <LordAro> ah yes
21:10:22  <glx> and probably a different gcc version  too (6.3.0 for me)
21:12:31  <LordAro> mine is 7.3
21:20:12  *** gelignite has quit IRC
21:32:14  *** nielsm has quit IRC
21:44:11  *** planetmaker_ has quit IRC
21:54:16  *** supermop has quit IRC
22:06:49  *** KouDy has quit IRC
22:07:04  *** Progman has quit IRC
22:20:46  *** sla_ro|master has quit IRC
22:32:47  *** milek7 has joined #openttd
22:41:56  *** Wormnest has quit IRC
22:46:36  *** supermop has joined #openttd
23:11:41  *** Wacko1976 has quit IRC
23:15:29  *** Wacko1976 has joined #openttd
23:17:12  *** snail_UES_ has joined #openttd
23:36:12  *** HerzogDeXtEr has quit IRC
23:54:48  <ANIKHTOS> hello snail how are you??

Powered by YARRSTE version: svn-trunk