Prev: 38070 Up: Map Next: 38269
38133: Randomise Doors
Used by the routine at StartGame.
RandomiseDoors 38133 LD A,(24082)
38136 LD L,A
38137 LD A,(23672)
38140 AND 15
38142 OR 16
38144 LD H,A
38145 EXX
38146 LD HL,61152
38149 LD DE,61160
38152 LD BC,16
RandomiseDoors_0 38155 EXX
38156 LD A,(HL)
38157 INC HL
38158 EXX
38159 CP 112
38161 JR NC,RandomiseDoors_1
38163 LD A,(DE)
38164 CP (HL)
38165 JR NZ,RandomiseDoors_1
38167 CP 1
38169 JR Z,RandomiseDoors_3
38171 CP 2
38173 JR Z,RandomiseDoors_5
RandomiseDoors_1 38175 ADD HL,BC
This entry point is used by the routine at PlaceKeyPieces.
RandomiseDoors_2 38176 EX DE,HL
38177 ADD HL,BC
38178 RET C
38179 EX DE,HL
38180 JR RandomiseDoors_0
RandomiseDoors_3 38182 LD A,34
RandomiseDoors_4 38184 LD (DE),A
38185 LD (HL),A
38186 PUSH DE
38187 INC DE
38188 INC DE
38189 INC DE
38190 INC DE
38191 INC DE
38192 LD A,(DE)
38193 OR 8
38195 LD (DE),A
38196 POP DE
38197 PUSH HL
38198 INC HL
38199 INC HL
38200 INC HL
38201 INC HL
38202 INC HL
38203 LD A,(HL)
38204 OR 8
38206 LD (HL),A
38207 POP HL
38208 JR RandomiseDoors_1
RandomiseDoors_5 38210 LD A,32
38212 JR RandomiseDoors_4
This entry point is used by the routine at HandlerDoorClosed.
RandomiseDoors_6 38214 LD A,(IX+0)
38217 AND 1
38219 JR Z,RandomiseDoors_8
This entry point is used by the routines at HandlerRoomItem, HandlerClock and HandlerDoorACGExit.
RandomiseDoors_7 38221 LD A,(IX+5)
38224 AND 247
38226 LD (IX+5),A
38229 PUSH IX
38231 CALL HandlerCaveDoorLocked_5
38234 LD A,(IX+5)
38237 AND 247
38239 LD (IX+5),A
38242 POP IX
38244 RET
This entry point is used by the routines at HandlerRoomItem, HandlerClock and HandlerDoorACGExit.
RandomiseDoors_8 38245 LD A,(IX+5)
38248 OR 8
38250 LD (IX+5),A
38253 PUSH IX
38255 CALL HandlerCaveDoorLocked_5
38258 LD A,(IX+5)
38261 OR 8
38263 LD (IX+5),A
38266 POP IX
38268 RET
Prev: 38070 Up: Map Next: 38269