Angband 3.1.2v2 for N900/Maemo 5: release for testing

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Dawnmist
    Rookie
    • Oct 2007
    • 23

    Angband 3.1.2v2 for N900/Maemo 5: release for testing

    I've over the last week or so been creating and testing a Maemo 5 port of angband 3.1.2v2 using the SDL interface (Maemo 5 is the debian-based distribution used on the Nokia N900 phones - using the 1.2PR).

    The SDL interface appears to be installing and working reasonably well, and I've put in probably about 10-15h of gameplay over the last 5 days with it without experiencing any trouble.

    It's currently available at http://www.dawnmist.net/angband/ if anyone wants to test it...

    Built using the debian-git repository (for 3.1.2v2, there's an older 3.1.1 available as well built from the current Ubuntu source), with a few modifications to suit the size of the N900's screen, provide a menu entry, and some macros to give access to keys missing from the phone's QWERTY keyboard. My full source tree is tar'ed up there too so if anyone want to see what I did they're welcome to
  • Nick
    Vanilla maintainer
    • Apr 2007
    • 9637

    #2
    Can you post some screenshots?
    One for the Dark Lord on his dark throne
    In the Land of Mordor where the Shadows lie.

    Comment

    • Magnate
      Angband Devteam member
      • May 2007
      • 5110

      #3
      Originally posted by Dawnmist
      I've over the last week or so been creating and testing a Maemo 5 port of angband 3.1.2v2 using the SDL interface (Maemo 5 is the debian-based distribution used on the Nokia N900 phones - using the 1.2PR).

      The SDL interface appears to be installing and working reasonably well, and I've put in probably about 10-15h of gameplay over the last 5 days with it without experiencing any trouble.

      It's currently available at http://www.dawnmist.net/angband/ if anyone wants to test it...

      Built using the debian-git repository (for 3.1.2v2, there's an older 3.1.1 available as well built from the current Ubuntu source), with a few modifications to suit the size of the N900's screen, provide a menu entry, and some macros to give access to keys missing from the phone's QWERTY keyboard. My full source tree is tar'ed up there too so if anyone want to see what I did they're welcome to
      Congrats on getting this working, that's excellent news. To my knowledge this is the first useful output derived from the debian git repository - a little piece of history!
      "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

      Comment

      • d_m
        Angband Devteam member
        • Aug 2008
        • 1517

        #4
        I would love to push these changes upstream into SVN if possible.

        I haven't looked at the changes, but I imagine that it is (or should be) possible.
        linux->xterm->screen->pmacs

        Comment

        • Magnate
          Angband Devteam member
          • May 2007
          • 5110

          #5
          Originally posted by d_m
          I would love to push these changes upstream into SVN if possible.

          I haven't looked at the changes, but I imagine that it is (or should be) possible.
          That rather depends on how extensive the changes are, beyond main-maemo.c ...
          "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

          Comment

          • Dawnmist
            Rookie
            • Oct 2007
            • 23

            #6
            I didn't need a main-maemo.c - the src changes are not that extensive . Most of it exists in the debian packaging, and a few prf file changes.

            I'm not sure if all the changes should be pushed upstream...maemo-specific macros would be of questionable use for example, and changing the default starting size of the window and text in the SDL port is also of questionable value to anyone not using an 800x480 screen. The main-sdl.c changes are more convenience changes. They mean that the default window size "fits" the screen, rather than the user having to run angband once, exit, and then edit the sdlinit.txt file to set the options there.

            main-gcu.c does have one bugfix that's useful - if you undefine A_ALTCHARSET, use_alt_charset is never defined instead of being set to 0, and angband won't compile. Likewise, there's a couple of directory name fixes in debian/local.mk that should go upstream since without them you can't actually change the install location properly (it only 1/2 works).

            I've put the full diffs up - they're at http://www.dawnmist.net/angband/maemo.diff, http://www.dawnmist.net/angband/maemo-debian.diff, and http://www.dawnmist.net/angband/maem...an-common.diff.

            The 8x8 "transparent floor" issue in the sdl port appears to apply to all versions of sdl angband - I've reported the issue at http://trac.rephial.org/ticket/1157, but the maemo version has a work-around to at least show the floor itself by partially doing option 2 (change floor location in the 8x8 tile file and give it a slightly different shade, update floor and hidden traps location in prf file, but currently stairs/doors/etc never become "lit"). I wouldn't recommend pushing the graphics-xxx.prf and altered 8x8 tileset files up in it's work-around state - better to fix it properly, which is why I raised the ticket.

            I'm working on photos, hope to have them up soon.

            And thanks Magnate for walking me through actually checking out the git repository code - I've not used git before, and it seems to do a lot of things in an odd way compared to cvs/svn/bzr so I'm finding a lot of knowledge isn't transferring to git easily
            Last edited by Dawnmist; June 19, 2010, 06:33.

            Comment

            • Dawnmist
              Rookie
              • Oct 2007
              • 23

              #7
              Photos:
              Angband Init screen
              Angband ASCII
              Angband 8x8 tiles
              Angband 16x16 tiles
              Angband 32x32 tiles
              Angband 16x16 tiles in bigtile mode
              Angband 32x32 tiles in bigtile mode
              Angband sdl options window
              Angband fullscreen

              Pretty much looks like standard sdl angband, since it pretty much IS standard sdl angband

              Comment

              • Nick
                Vanilla maintainer
                • Apr 2007
                • 9637

                #8
                That looks excellent.
                One for the Dark Lord on his dark throne
                In the Land of Mordor where the Shadows lie.

                Comment

                • Magnate
                  Angband Devteam member
                  • May 2007
                  • 5110

                  #9
                  Originally posted by Dawnmist
                  I didn't need a main-maemo.c - the src changes are not that extensive . Most of it exists in the debian packaging, and a few prf file changes.

                  I'm not sure if all the changes should be pushed upstream...maemo-specific macros would be of questionable use for example, and changing the default starting size of the window and text in the SDL port is also of questionable value to anyone not using an 800x480 screen. The main-sdl.c changes are more convenience changes. They mean that the default window size "fits" the screen, rather than the user having to run angband once, exit, and then edit the sdlinit.txt file to set the options there.

                  main-gcu.c does have one bugfix that's useful - if you undefine A_ALTCHARSET, use_alt_charset is never defined instead of being set to 0, and angband won't compile. Likewise, there's a couple of directory name fixes in debian/local.mk that should go upstream since without them you can't actually change the install location properly (it only 1/2 works).

                  I've put the full diffs up - they're at http://www.dawnmist.net/angband/maemo.diff, http://www.dawnmist.net/angband/maemo-debian.diff, and http://www.dawnmist.net/angband/maem...an-common.diff.

                  The 8x8 "transparent floor" issue in the sdl port appears to apply to all versions of sdl angband - I've reported the issue at http://trac.rephial.org/ticket/1157, but the maemo version has a work-around to at least show the floor itself by partially doing option 2 (change floor location in the 8x8 tile file and give it a slightly different shade, update floor and hidden traps location in prf file, but currently stairs/doors/etc never become "lit"). I wouldn't recommend pushing the graphics-xxx.prf and altered 8x8 tileset files up in it's work-around state - better to fix it properly, which is why I raised the ticket.

                  I'm working on photos, hope to have them up soon.

                  And thanks Magnate for walking me through actually checking out the git repository code - I've not used git before, and it seems to do a lot of things in an odd way compared to cvs/svn/bzr so I'm finding a lot of knowledge isn't transferring to git easily
                  No worries - I had only used svn so found quite a bit of material for making the transition.

                  Thanks for your updates to local.mk - I'll be using some of the more generic ones, but Debian is quite picky about assumptions, so I can't assume the presence of gnome/gtk etc. I do intend to provide icons and menu entries, but I have yet to get my head around the debian-genericised way of doing this.
                  "Been away so long I hardly knew the place, gee it's good to be back home" - The Beatles

                  Comment

                  • Dawnmist
                    Rookie
                    • Oct 2007
                    • 23

                    #10
                    I've uploaded an update to the maemo port that fixes the 8x8 tile graphics so that sdl versions (and hopefully the win version, though I couldn't test that - no build environment for it at present) respond to transparency/lighting effects (ticket http://trac.rephial.org/ticket/1157).

                    Still uses the 3.1.2v2 source as a base, the updated deb is available from the same place as previously: http://www.dawnmist.net/angband/

                    Comment

                    • rogueliker
                      Rookie
                      • Nov 2010
                      • 7

                      #11
                      Thank you, Dawnmist.
                      I was wondering if I could change the keymapping for ESC. You remap it to CTRL-e. I feel a bit cumbersome to keep moving my right thumb to the left half of the keyboard. So I want to remap it to somewhere on the right.
                      In your angband page you give the instructions of how to do it. I tried but the change has no effect.
                      I was editing ~/.angband/Angband/User.prf. At the very bottom I added

                      ## Maemo N900 key mappings ##
                      # CTRL-E = ESC
                      A:`
                      P:^_S[SPACE]

                      and

                      P:^_S[,]

                      Both don't work. The macro dialog does not show the keymapping at all and just returns "found no macro"

                      How to get remapping to work?


                      [SOLVED]
                      After several trials I managed to remap Backspace to ESC by doing this:

                      (If you find the process too involving, just download the attachment and unzip it to /home/user/.angband/Angband/)

                      1) Press Shift-, (i.e. =) to get into the Options Menu

                      2) Go down to "m) Interact with macros (advanced)", and press m to get there.

                      3) Next go down to "c) Query a macro". Press ENTER.

                      4) Make sure you see this two-line message below the options:
                      Command: Query a macro

                      Trigger:
                      5) Run the default macro of ESC (or `), which is CTRL-e. Do it.

                      6) You should see
                      Trigger:^E



                      `
                      and at the top
                      Found a macro. -more-
                      7) Press ENTER. The messages will be cleared.

                      8) Check out the line "Current action (if any) shown before:" below the options. You should also find a ` right below this line.

                      9) Use the down arrow key to choose "d) Create a macro" and press ENTER.

                      10) You should see this:
                      Command: Create a macro

                      Trigger:
                      This means it's waiting for you to assign a new key to represent "`" (ESC).

                      11) We want to use Backspace. Press the Backspace key just ONCE.

                      12) You should now see
                      Trigger:\B

                      Action: `
                      Press ENTER to confirm.

                      13) At the top of the display you should see
                      Added a macro. -more-
                      This means your new macro is created successfully.
                      Press ENTER.

                      14) Go up to "b) Append macros to a file". Press ENTER.

                      15) A message will appear below the options, saying:
                      Dump Macros to a pref file

                      File: User.prf
                      Press ENTER to confirm.

                      16) At the top appears a new message:
                      Dumped Macros -more-
                      Press ENTER again. The new macro has been added to /home/user/.angband/Angband/User.prf.

                      Well, the new macro is working now. Try pressing backspace. Voila!


                      Notes:
                      1. The reason why I choose backspace is because it is more intuitive and convenient. Plus the original assignment duplicated the macro "<" (go up stairs), which has already been assigned to CTRL-left.

                      2. Of course you can saving pressing ENTER by pressing the option letters directly. I used ENTER just to play safe.

                      3. Thanks to takkaria. The steps are now simplified. Yes (2), (3), (5), (6) are redundant, although (1) and (4) are still necessary.
                      Attached Files
                      Last edited by rogueliker; November 19, 2010, 19:13. Reason: Simplified the steps
                      Don't get discouraged by the random question when registering for the forums, my friend.

                      Comment

                      • takkaria
                        Veteran
                        • Apr 2007
                        • 1951

                        #12
                        I'm pretty sure 1-6 are redundant, unless the code has some weird quirks I'm not aware of. All you're doing is saving your options to a file and loading them again, which should do precisely nothing.
                        takkaria whispers something about options. -more-

                        Comment

                        • rogueliker
                          Rookie
                          • Nov 2010
                          • 7

                          #13
                          Thanks takkaria. Just made the correction.
                          Don't get discouraged by the random question when registering for the forums, my friend.

                          Comment

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