Prev: 32719 Up: Map Next: 32967
32816: DrawSelectedName — the menu column's name row and colour bands
Rebuild the right-hand menu column's fixed dressing: the selected crew member's name on screen row 0, the coloured attribute bands behind the 19 menu rows, then (falling into DrawMenuStrip) the mode-1 strip itself from CorridorPosTable, the cursor highlight on the QUIT row and the status line.
Used by the routines at 32719, 44938 and 45148.
32816 LD HL,16406 blank the name row
32819 LD (31257),HL (screen row 0, col 22)
32822 PUSH HL
32823 LD A,255
32825 CALL 31634
32828 POP HL
32829 INC HL and print the selected crew
32830 LD (31257),HL member's name at col 23
32833 LD A,(31241)
32836 CALL 31690
32839 LD HL,22550 paint the colour bands (attr
32842 LD A,7 col 22): the name row white,
32844 LD C,1
32846 CALL 31612
32849 LD A,15 cells 0-6 white-on-blue
32851 LD C,7 (the "move to:" block),
32853 CALL 31612
32856 LD A,32 cells 7-9 green paper
32858 LD C,3 (" use:" + the two hands),
32860 CALL 31612
32863 LD A,23 cell 10 white-on-red (Get Item),
32865 LD C,1
32867 CALL 31612
32870 LD A,48 cell 11 yellow paper (Leave Item),
32872 LD C,1
32874 CALL 31612
32877 LD A,31 cells 12-16 white-on-magenta
32879 LD C,5 (the Special block),
32881 CALL 31612
32884 LD A,56 cells 17-18 white paper (QUIT)
32886 LD C,2
32888 CALL 31612
32891 LD A,61 mirror = 61 " QUIT "
32893 LD (33685),A
32896 LD A,17 park the cursor on the QUIT row
32898 LD (33683),A
32901 LD A,1 room mode 1 (the room view)
32903 LD (31252),A
32906 LD HL,29630 tile source = CorridorPosTable
32909 LD (31261),HL
32912 LD HL,16438 draw the 18 strip rows from
32915 LD (31257),HL screen row 1, col 22
32918 LD B,18
32920 PUSH BC
32921 CALL 31626
32924 POP BC
32925 DJNZ 32920
32927 CALL 34882 highlight the cursor row
32930 CALL 39572 and redraw the status line
32933 RET
Cell-glyph walk-handler table (was mis-disassembled as code): 3-byte records (glyph, handler word) looked up by DrawDoorArm, which patches the handler into its CALL as it walks an exit path over the room-map grid.
  • Glyphs 126/127/132/133 are straight wall segments -> ArmStraight, a no-op: keep heading
  • 128-131 are the four corner pieces -> steer handlers that bend the walk by approach direction
  • 125 '}' (duct grille) and 142/143 (junction nodes) -> ArmEndNode: paint and end the walk
32934 DEFB 125,108,130 '}' duct grille -> ArmEndNode
32937 DEFB 126,251,129 horizontal wall -> ArmStraight
32940 DEFB 127,251,129 vertical wall -> ArmStraight
32943 DEFB 128,252,129 top-left corner -> ArmCornerTopLeft
32946 DEFB 129,24,130 bottom-left corner -> ArmCornerBottomLeft
32949 DEFB 130,52,130 bottom-right corner -> ArmCornerBottomRight
32952 DEFB 131,80,130 top-right corner -> ArmCornerTopRight
32955 DEFB 132,251,129 horizontal wall -> ArmStraight
32958 DEFB 133,251,129 vertical wall -> ArmStraight
32961 DEFB 142,108,130 junction node -> ArmEndNode
32964 DEFB 143,108,130 junction node -> ArmEndNode
Prev: 32719 Up: Map Next: 32967