Prev: 33479 Up: Map Next: 33589
33500: DrawCrewPortrait
Draw the selected crew member's 24x24-pixel portrait (CrewPortraits 30216, 72 bytes each) at the bottom-left of the room view (screen rows 15-17, cols 1-3), blue ink on white. BlitPortrait is also entered directly by GameModeScreen with HL/DE preloaded.
33500 LD HL,23009 paint the 3x3 attribute square
33503 LD DE,29 (row 15, col 1) blue-on-white (57)
33506 LD C,3
33508 LD B,3
33510 LD (HL),57
33512 INC HL
33513 DJNZ 33510
33515 DEC C
33516 ADD HL,DE
33517 JR NZ,33508
33519 LD DE,72 DE -> CrewPortraits +
33522 LD HL,30216 (slot-1) * 72 bytes
33525 LD A,(31241)
33528 DEC A
33529 JR Z,33535
33531 LD B,A
33532 ADD HL,DE
33533 DJNZ 33532
33535 EX DE,HL
33536 LD HL,18657 blit at screen row 15, col 1
This entry point is used by the routine at 42821.
33539 LD (31257),HL
33542 LD B,3 3 cell rows
33544 LD C,3 of 3 cell columns
33546 PUSH BC
33547 LD HL,(31257)
33550 LD B,8 8 pixel bytes straight down
33552 LD A,(DE)
33553 LD (HL),A
33554 INC H
33555 INC DE
33556 DJNZ 33552
33558 LD HL,31257 next cell column
33561 INC (HL)
33562 POP BC
33563 DEC C
33564 JR NZ,33546
33566 PUSH DE next cell row: usually -3 +32,
33567 LD HL,(31257) but crossing into the next
33570 LD DE,29 screen third needs the big
33573 LD A,L +1821 stride
33574 CP 224
33576 JR C,33581
33578 LD DE,1821
33581 ADD HL,DE
33582 LD (31257),HL
33585 POP DE
33586 DJNZ 33544
33588 RET
Prev: 33479 Up: Map Next: 33589