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??