Prev: 41242 Up: Map Next: 41391
41244: Allocate Memory
AllocateMemory 41244 PUSH IY
41246 PUSH HL
41247 PUSH DE
41248 PUSH BC
41249 ADD A,3
41251 LD C,A
41252 LD B,0
41254 LD HL,(40931)
41257 LD IY,40931
AllocateMemory_0 41261 LD A,L
41262 OR H
41263 JR Z,AllocateMemory_4
41265 LD E,(HL)
41266 INC HL
41267 LD D,(HL)
41268 INC HL
41269 LD A,D
41270 AND A
41271 JR NZ,AllocateMemory_1
41273 LD A,E
41274 CP C
41275 JR C,AllocateMemory_3
AllocateMemory_1 41277 BIT 0,B
41279 JR Z,AllocateMemory_2
41281 PUSH HL
41282 LD L,(IX-2)
41285 LD H,(IX-1)
41288 AND A
41289 SBC HL,DE
41291 POP HL
41292 JR C,AllocateMemory_3
AllocateMemory_2 41294 PUSH HL
41295 POP IX
41297 LD (41242),IY
41301 SET 0,B
AllocateMemory_3 41303 PUSH HL
41304 POP IY
41306 LD E,(HL)
41307 INC HL
41308 LD D,(HL)
41309 EX DE,HL
41310 JR AllocateMemory_0
AllocateMemory_4 41312 BIT 0,B
41314 JR Z,AllocateMemory_8
41316 LD L,(IX-2)
41319 LD H,(IX-1)
41322 LD B,0
41324 AND A
41325 SBC HL,BC
41327 LD A,H
41328 AND A
41329 JR NZ,AllocateMemory_5
41331 LD A,L
41332 CP 4
41334 JR NC,AllocateMemory_5
41336 LD IY,(41242)
41340 LD A,(IX+0)
41343 LD (IY+0),A
41346 LD A,(IX+1)
41349 LD (IY+1),A
41352 JR AllocateMemory_6
AllocateMemory_5 41354 LD (IX-2),L
41357 LD (IX-1),H
41360 EX DE,HL
41361 ADD IX,DE
AllocateMemory_6 41363 INC IX
41365 LD (IX-3),C
41368 PUSH IX
41370 POP HL
41371 DEC HL
41372 DEC HL
41373 LD B,C
41374 DEC B
41375 XOR A
AllocateMemory_7 41376 LD (HL),A
41377 INC HL
41378 DJNZ AllocateMemory_7
41380 OR 1
41382 POP BC
41383 POP DE
41384 POP HL
41385 POP IY
41387 RET
AllocateMemory_8 41388 JP Error_OutOfMemory
Prev: 41242 Up: Map Next: 41391