Prev: C8C6 Up: Map Next: C929
C8EF: Set Object Pointers
Chooses a room record or an object record from the picture parameter.
SetObjectPointers C8EF LD A,($A034) Jump to SetObjectPointers_RoomGraphicsParameter if the room display parameter is at least FE.
C8F2 CP $FE
C8F4 JR NC,SetObjectPointers_RoomGraphicsParameter
C8F6 LD A,($A00F) Compare *DisplayMode with 05.
C8F9 CP $05
C8FB LD A,($A034) Read the room display parameter and jump ahead to SetObjectPointers_Next if the display mode is at least 05.
C8FE JR NC,SetObjectPointers_Next
C900 CALL FetchLocationDataPointer Call FetchLocationDataPointer to look up this room.
C903 JR SetObjectPointers_RememberRoomRecord
Record the character record in the current object, then read the room graphics parameter, then check for the other end marker, and return if it reaches the limit.
SetObjectPointers_Next C905 CALL FetchObjectDataPointer Call FetchObjectDataPointer to look that object up.
SetObjectPointers_RememberRoomRecord C908 LD ($A013),IX Remember the room record and read the room graphics parameter.
SetObjectPointers_RoomGraphicsParameter C90C LD A,($A035) Return if the room graphics parameter is at least FE.
C90F CP $FE
C911 RET NC
C912 LD A,($A010) Compare *A010 with 05.
C915 CP $05
C917 LD A,($A035) Load the room graphics parameter at RoomGraphicsParameter and jump to SetObjectPointers_LookObjectBefore if the display mode is at least 05.
C91A JR NC,SetObjectPointers_LookObjectBefore
C91C CALL FetchLocationDataPointer Call FetchLocationDataPointer to look up this room.
C91F JR SetObjectPointers_0
Look the object up before returning.
SetObjectPointers_LookObjectBefore C921 CALL FetchObjectDataPointer Call FetchObjectDataPointer to look up that object.
SetObjectPointers_0 C924 LD ($A015),IX Remember this character record in the secondary pointer.
C928 RET Return.
Prev: C8C6 Up: Map Next: C929