![]() |
Routines |
Prev: 44409 | Up: Map | Next: 44557 |
Used by the routine at GameEntryPoint.
|
||||
GameStart | 44449 | LD HL,40840 | HL=Table_ItemLocations. | |
44452 | LD BC,385 | BC=0385. | ||
GameStart_0 | 44455 | LD (HL),0 | Write 0 to *HL. | |
44457 | INC HL | Increment HL by one. | ||
44458 | DEC BC | Decrease BC by one. | ||
44459 | LD A,B | Jump to GameStart_0 until BC is zero. | ||
44460 | OR C | |||
44461 | JR NZ,GameStart_0 | |||
44463 | LD HL,47883 | Copy 0136 bytes of data (count is via *Count_Objects_1) from 47883 to Table_ItemLocations. | ||
44466 | LD DE,40840 | |||
44469 | LD BC,(48071) | |||
44473 | LDIR | |||
44475 | LD A,(48087) | Write *48087 to *41171. | ||
44478 | LD (41171),A | |||
44481 | LD IX,47865 | IX=47865. | ||
44485 | LD DE,47877 | DE=47877. | ||
44488 | LD A,(48081) | B=*48081. | ||
44491 | LD B,A | |||
GameStart_1 | 44492 | LD L,(IX+0) | L=*IX+0. | |
44495 | LD H,(IX+1) | H=*IX+1. | ||
44498 | LD A,(DE) | A=*DE. | ||
44499 | LD (HL),A | Write A to *HL. | ||
44500 | INC IX | Increment IX by two. | ||
44502 | INC IX | |||
44504 | INC DE | Increment DE by one. | ||
44505 | DJNZ GameStart_1 | Decrease counter by one and loop back to GameStart_1 until counter is zero. | ||
44507 | CALL JustReturn | Call JustReturn. | ||
44510 | LD A,(48083) | Write *StartingRoom to *CurrentRoom. | ||
44513 | LD (41222),A | |||
44516 | CALL ChangeRoom | Call ChangeRoom. | ||
GameStart_2 | 44519 | CALL 41600 | Call 41600. | |
44522 | CALL Handler_ScenicEvents | Call Handler_ScenicEvents. | ||
44525 | LD A,0 | A=0. | ||
44527 | CALL 41416 | Call 41416. | ||
44530 | JR NZ,GameOver | Jump to GameOver if DE is not equal to C. | ||
44532 | LD A,1 | A=1. | ||
44534 | CALL 41416 | Call 41416. | ||
44537 | JR NZ,GameOver_Score | Jump to GameOver_Score if DE is not equal to C. | ||
44539 | LD A,2 | A=2. | ||
44541 | CALL 41416 | Call 41416. | ||
44544 | JR NZ,WantAnotherGameInput | Jump to WantAnotherGameInput if DE is not equal to C. | ||
44546 | CALL Handler_UserInput | Call Handler_UserInput. | ||
44549 | CALL Parser_ProcessItem | Call Parser_ProcessItem. | ||
44552 | CALL NC,44284 | Call 44284 if C is greater than 2. | ||
44555 | JR GameStart_2 | Jump to GameStart_2. |
Prev: 44409 | Up: Map | Next: 44557 |