![]()  | 
Routines | 
| Prev: AD79 | Up: Map | Next: AE0D | 
| 
 
Used by the routine at GameEntryPoint.
 
 | 
||||
| GameStart | ADA1 | LD HL,$9F88 | HL=Table_ItemLocations. | |
| ADA4 | LD BC,$0181 | BC=0181. | ||
| GameStart_0 | ADA7 | LD (HL),$00 | Write 00 to *HL. | |
| ADA9 | INC HL | Increment HL by one. | ||
| ADAA | DEC BC | Decrease BC by one. | ||
| ADAB | LD A,B | Jump to GameStart_0 until BC is zero. | ||
| ADAC | OR C | |||
| ADAD | JR NZ,GameStart_0 | |||
| ADAF | LD HL,$BB0B | Copy 0088 bytes of data (count is via *Count_Objects_1) from BB0B to Table_ItemLocations. | ||
| ADB2 | LD DE,$9F88 | |||
| ADB5 | LD BC,($BBC7) | |||
| ADB9 | LDIR | |||
| ADBB | LD A,($BBD7) | Write *BBD7 to *A0D3. | ||
| ADBE | LD ($A0D3),A | |||
| ADC1 | LD IX,$BAF9 | IX=BAF9. | ||
| ADC5 | LD DE,$BB05 | DE=BB05. | ||
| ADC8 | LD A,($BBD1) | B=*BBD1. | ||
| ADCB | LD B,A | |||
| GameStart_1 | ADCC | LD L,(IX+$00) | L=*IX+00. | |
| ADCF | LD H,(IX+$01) | H=*IX+01. | ||
| ADD2 | LD A,(DE) | A=*DE. | ||
| ADD3 | LD (HL),A | Write A to *HL. | ||
| ADD4 | INC IX | Increment IX by two. | ||
| ADD6 | INC IX | |||
| ADD8 | INC DE | Increment DE by one. | ||
| ADD9 | DJNZ GameStart_1 | Decrease counter by one and loop back to GameStart_1 until counter is zero. | ||
| ADDB | CALL JustReturn | Call JustReturn. | ||
| ADDE | LD A,($BBD3) | Write *StartingRoom to *CurrentRoom. | ||
| ADE1 | LD ($A106),A | |||
| ADE4 | CALL ChangeRoom | Call ChangeRoom. | ||
| GameStart_2 | ADE7 | CALL $A280 | Call A280. | |
| ADEA | CALL Handler_ScenicEvents | Call Handler_ScenicEvents. | ||
| ADED | LD A,$00 | A=00. | ||
| ADEF | CALL $A1C8 | Call A1C8. | ||
| ADF2 | JR NZ,GameOver | Jump to GameOver if DE is not equal to C. | ||
| ADF4 | LD A,$01 | A=01. | ||
| ADF6 | CALL $A1C8 | Call A1C8. | ||
| ADF9 | JR NZ,GameOver_Score | Jump to GameOver_Score if DE is not equal to C. | ||
| ADFB | LD A,$02 | A=02. | ||
| ADFD | CALL $A1C8 | Call A1C8. | ||
| AE00 | JR NZ,WantAnotherGameInput | Jump to WantAnotherGameInput if DE is not equal to C. | ||
| AE02 | CALL Handler_UserInput | Call Handler_UserInput. | ||
| AE05 | CALL Parser_ProcessItem | Call Parser_ProcessItem. | ||
| AE08 | CALL NC,$ACFC | Call ACFC if C is greater than 02. | ||
| AE0B | JR GameStart_2 | Jump to GameStart_2. | ||
| Prev: AD79 | Up: Map | Next: AE0D |