![]() |
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 |