Compiling Hengband: "fatal error: util.h: No such file or directory"

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • smbhax
    replied
    Originally posted by Gwarl
    This is probably a side effect of Habu's cursor fix
    I don't think so. The cursor worked with her fix. And I used her fix as my Hengband basis in both my versions and the cursor always worked.

    Originally posted by Gwarl
    This is probably a side affect of the colour fix. It comes straight from mainstream angband though.
    Ah right I forgot you had a separate color-related pull request. What was that fixing, anyway? I've been running Cygwin as an xterm-256color terminal, and I hadn't noticed a color problem in the GCU version of Hengband.

    Originally posted by Gwarl
    hengband never supported that. it didn't support any mgcu subopts at all. -o will give you the old behaviour. Porting modern angband's behaviour would be more work and I'm not motivated to do it.
    Hm well all I did was a little copy and paste from Angband's main-gcu.c, and the mgcu stuff definitely just worked in both my versions of main-gcu.cpp.
    Last edited by smbhax; January 30, 2022, 20:27.

    Leave a comment:


  • backwardsEric
    replied
    Originally posted by smbhax
    - The darker colors (forest green, background "x" marks in dungeon, and anything darker than those) are brighter now and less accurate to the color table values in term/gameterm.cpp (that was the case in my second version, but not in my first)
    You might interpolate between the changes this pull request, https://github.com/angband/angband/pull/5286/files , makes to Angband and Gwarl's changes to Hengband for 256/88 color curses windows. That should get back the close matching to the specified colors, at least when the terminal supports changing the color table.

    Leave a comment:


  • Gwarl
    replied
    Originally posted by smbhax
    - The cursor is not being drawn (press x to look around, there is no visible cursor to show what is being looked at)
    This is probably a side effect of Habu's cursor fix

    Originally posted by smbhax
    - The darker colors (forest green, background "x" marks in dungeon, and anything darker than those) are brighter now and less accurate to the color table values in term/gameterm.cpp (that was the case in my second version, but not in my first)
    This is probably a side affect of the colour fix. It comes straight from mainstream angband though.

    Originally posted by smbhax
    - The "-mgcu -- -n4" or just "-- -n4" command line stuff no longer works--no subwindows come up in-game, and when I leave the game, I see "Ignoring option -n4" or whatever in the console (I'm not sure it worked in the game before; I sometimes did "-- -n4", and the full "-mgcu -- -n4" is like the one optional option they recommend in their English readme, but you'd still get the same even without entering that; I never tried like "-- -n6" or something...until I'd hacked the Angband stuff in myself today, and then "-- -n6" definitely *did* work, and so did "-- -n4," because with my hack, if I didn't enter options like those--or the composband style--I'd get no subwindows)
    hengband never supported that. it didn't support any mgcu subopts at all. -o will give you the old behaviour. Porting modern angband's behaviour would be more work and I'm not motivated to do it.

    Originally posted by smbhax
    - The funky composband or whatever subwindow command line options are probably working--I can get some subwindows with them, although I'm really bad at figuring out how to get them to come out right--but when I quit the game I still find the command line returning "Ignoring option"; like, I entered "./hengband -mgcu -- -right 40x25,* -bottom *x7" and got some subwindows in game, but when I got back, I still found

    Ignoring option: -right
    Ignoring option: 40x25*
    Ignoring option: -bottom
    Ignoring option: *x7

    in the console
    Those 'ignoring option' things are a bug, yes

    Leave a comment:


  • smbhax
    replied
    Originally posted by Gwarl
    well it's a subopt so it shouldn't conflict. I couldn't use the traditional -b for bigscreen because bigscreen is just the new syntax without parameters
    Yeah I tried "-o -- -o" and they both worked, it's just a little strange to look at as a command line to enter. ^_^

    Leave a comment:


  • smbhax
    replied
    I synced to your pull request, did a full recompile and ran into a few surprises:

    - The cursor is not being drawn (press x to look around, there is no visible cursor to show what is being looked at)

    - The darker colors (forest green, background "x" marks in dungeon, and anything darker than those) are brighter now and less accurate to the color table values in term/gameterm.cpp (that was the case in my second version, but not in my first)

    - The "-mgcu -- -n4" or just "-- -n4" command line stuff no longer works--no subwindows come up in-game, and when I leave the game, I see "Ignoring option -n4" or whatever in the console (I'm not sure it worked in the game before; I sometimes did "-- -n4", and the full "-mgcu -- -n4" is like the one optional option they recommend in their English readme, but you'd still get the same even without entering that; I never tried like "-- -n6" or something...until I'd hacked the Angband stuff in myself today, and then "-- -n6" definitely *did* work, and so did "-- -n4," because with my hack, if I didn't enter options like those--or the composband style--I'd get no subwindows)

    - The funky composband or whatever subwindow command line options are probably working--I can get some subwindows with them, although I'm really bad at figuring out how to get them to come out right--but when I quit the game I still find the command line returning "Ignoring option"; like, I entered "./hengband -mgcu -- -right 40x25,* -bottom *x7" and got some subwindows in game, but when I got back, I still found

    Ignoring option: -right
    Ignoring option: 40x25*
    Ignoring option: -bottom
    Ignoring option: *x7

    in the console
    Last edited by smbhax; January 30, 2022, 19:52.

    Leave a comment:


  • smbhax
    replied
    Originally posted by Gwarl
    I didn't want to implement angband's -nN
    Wait but that was working already. It worked in mine. I need that, I can't handle the composband stuff = ooo

    Leave a comment:


  • Gwarl
    replied
    Originally posted by smbhax
    The "-- -o" to use the old subwindow layout won't be too confusing with the older "-o" option for "use original keyset," I suppose?
    well it's a subopt so it shouldn't conflict. I couldn't use the traditional -b for bigscreen because bigscreen is just the new syntax without parameters, and I didn't want to implement angband's -nN. This seemed like a good idea

    Leave a comment:


  • smbhax
    replied
    The "-- -o" to use the old subwindow layout won't be too confusing with the older "-o" option for "use original keyset," I suppose?

    Leave a comment:


  • smbhax
    replied
    Originally posted by Gwarl
    Okay so the bigscreen fix itself was incredibly simple, I only had too parse a -b arg and add an if else with a handful of extra lines of code, but I went large and also included the poschengband subwindow layout so it looks scarier than it is

    https://github.com/hengband/hengband/pull/2037
    Yours looks nice! This is really cool. = D

    Leave a comment:


  • Gwarl
    replied
    Okay so the bigscreen fix itself was incredibly simple, I only had too parse a -b arg and add an if else with a handful of extra lines of code, but I went large and also included the poschengband subwindow layout so it looks scarier than it is

    Implement bigscreen for curses and use it as the default behaviour. The old behaviour is still avilable using -o as a subopt for -mgcu. Also implements a new syntax for user-controlled subwindow la...

    Leave a comment:


  • smbhax
    replied
    Originally posted by Gwarl
    Anyway I'm going to take a crack at heng 3.0.0 myself just because I want to do it myself. But you can still take credit for being the first.
    Yeah you'll probably be able to keep some things I had to throw out. : ) I'm just kicking myself for missing the "One does not simply WALK into main-gcu" joke. ^_^

    Leave a comment:


  • Gwarl
    replied
    yeah both variants have gone their own separate ways... a LONG way, since 2.8.1 which is why I assumed it wouldn't be this easy. Z 2.2.8 was actually more like angband 2.8.3 than it was like angband 2.8.1, which was a relief since I couldn't fix 2.8.1 (I tried). When I fix variants I usually try to find the earliest version of V which has the feature I want and copying from there, since 4.x is so different. I managed z 2.2.8 by reference to z 2.5.2.

    Anyway I'm going to take a crack at heng 3.0.0 myself just because I want to do it myself. But you can still take credit for being the first.

    Leave a comment:


  • smbhax
    replied
    Originally posted by Gwarl
    Just to vent; it never even occurred to me that I could simply walk into main-gcu on 3.0.0 and I spent some time yesterday bashing my head against 2.2.1r2 and that was weird. I was able to completely remove the code that divided the terminal into subwindows there and the terminal was still being divided into subwindows, it was maddening.

    Also don't feel bad about just copy pasting bits of code, that's all I do, it's how the "-- -right 40x25,* -bottom *x7" syntax got into angband in the first place (I copy-pasted from poschengband)
    I was looking through some more files and could swear I just saw some chunk of code that made me think it could still generate subwindows all by itself but eh now I can't find that specifically so I probably just imagined it. 8 o

    Good to know about those subwindow size parameters, they do seem like a bit of alien code. ^_^

    Good luck with it! I can't say it was easy exactly, but going from Hengband to Angband I just copied in the stuff that seemed like it had to do with subwindows, then walked it back as compile errors came up. Going from Angband to Hengband got a little more intense, particularly when everything compiled except for a conversion or something error about

    Code:
    	t->text_hook = Term_text_gcu;
    and I couldn't understand it because that same chunk was in the other version and had always compiled just fine. Wasted a bunch of time scratching my head over the containing term_data_init_gcu function, looking up the text_hook function in a header file, modifying it, which of course broke other areas of the game that use it, giving up entirely, then coming back and trying to make my own new hook function, which of course didn't work. : P As anyone with more experience would know immediately I'm sure, the problem was in the term_text_gcu function, which Angband has as

    Code:
    static errr Term_text_gcu(int x, int y, int n, int a, const wchar_t *s)
    but which Hengband needs as

    Code:
    static errr Term_text_gcu(int x, int y, int n, byte a, concptr s)
    ... Or at least, it seems to. = P

    Leave a comment:


  • Gwarl
    replied
    Just to vent; it never even occurred to me that I could simply walk into main-gcu on 3.0.0 and I spent some time yesterday bashing my head against 2.2.1r2 and that was weird. I was able to completely remove the code that divided the terminal into subwindows there and the terminal was still being divided into subwindows, it was maddening.

    Also don't feel bad about just copy pasting bits of code, that's all I do, it's how the "-- -right 40x25,* -bottom *x7" syntax got into angband in the first place (I copy-pasted from poschengband)

    Leave a comment:


  • Gwarl
    replied
    Very impressive. And I've been beating my head against ancient versions of angband and Z on the assumption that it wouldn't be that easy (it has never been that easy before).

    I'll make my own edits to 3.0.0 and see if it works for me.

    Leave a comment:

Working...
😀
😂
🥰
😘
🤢
😎
😞
😡
👍
👎