Routines |
Prev: 62283 | Up: Map | Next: 62361 |
|
||||||||
Keeps count of correct and incorrect codes entered, displaying a message if a wrong code is entered.
|
||||||||
62288 | PUSH BC | Store number of codes left to enter | ||||||
62289 | CALL 62102 | Set up player code entry | ||||||
RET from 62282 after code that has been input is compared with valid code.
Zero flag set (Z) indicates there's a match - the code is correct.
Non-zero (NZ) indicates the wrong code has been entered. |
||||||||
62292 | JR Z,62355 | Jump out here if correct code entered | ||||||
62294 | CALL 62056 | Print the following 'wrong code' message text on screen. Jump down to 62332 on RETurn after printing |
||||||
Wrong code message text:
|
||||||||
62297 | DEFB 13,13 | Codes for ENTER x 2 (move two lines down) | ||||||
62299 | DEFM " That is wrong - one more try" | |||||||
62331 | DEFB 255 | End-of-message marker | ||||||
Pause for a few seconds:
|
||||||||
62332 | LD DE,10 | Set outer loop counter (10) | ||||||
62335 | LD HL,0 | Set inner loop counter (65536) | ||||||
Pause loop:
|
||||||||
62338 | DEC DE | Outer loop - decrement DE counter | ||||||
62339 | DEC HL | Inner loop - decrement HL counter | ||||||
62340 | LD A,H | Has inner loop counter reached zero? | ||||||
62341 | OR L | |||||||
62342 | JR NZ,62339 | If not, continue to decrement inner loop counter | ||||||
62344 | DEC DE | Decrement outer loop counter | ||||||
62345 | LD A,D | Has outer loop counter reached zero? | ||||||
62346 | OR E | |||||||
62347 | JR NZ,62338 | If not, continue to decrement both counters | ||||||
62349 | CALL 62105 | Give the player another chance to enter the right code | ||||||
62352 | JP NZ,0 | ...This time if there's no match, reset the computer. | ||||||
Correct code has been entered
|
||||||||
62355 | POP BC | Retrieve the number-of-codes-entered counter | ||||||
62356 | DJNZ 62288 | Decrement and continue code generation and entry for 3 iterations | ||||||
62358 | JP 48922 | 3 codes have been correctly entered. Jump to initialize the game. |
Prev: 62283 | Up: Map | Next: 62361 |