| Alien (BUGFIX 1.7) | Routines |
| Prev: 38182 | Up: Map | Next: 38379 |
|
A room's damage meter has passed 99 (or the destruct countdown ran out): ~7 seconds of screen flashing with a rainbow border, then the ship is lost (DamageGameOver).
|
||||
| 38317 | PUSH BC | |||
| 38318 | PUSH AF | |||
| 38319 | LD B,100 | 100 flash cycles: | ||
| 38321 | PUSH BC | |||
| 38322 | CALL 36448 | ~36 ms delay, | ||
| 38325 | LD A,7 | attributes = white ink on black, | ||
| 38327 | CALL 42515 | |||
| 38330 | CALL 36448 | ~36 ms delay, | ||
| 38333 | LD A,56 | attributes = black ink on white | ||
| 38335 | CALL 42515 | |||
| 38338 | POP BC | |||
| 38339 | LD A,B | border cycles through | ||
| 38340 | AND 7 | all 8 colours | ||
| 38342 | OUT (254),A | |||
| 38344 | DJNZ 38321 | |||
| 38346 | POP AF | |||
| 38347 | POP BC | |||
| 38348 | JP 44524 | game over: the Nostromo is lost | ||
|
Ship-status dashboard: counters and ASCII digit cells (previously mis-disassembled as code). The digit cells double as the source text drawn on the status bar, and the endgame renderer copies them into the "The Nostromo will explode in .. minutes .. seconds" screen.
|
||||
| 38351 | DEFB 0,0,0 | per-engine-room (17/18/19) fire-fighting progress, +1 per squirt (FightFireSquirt) | ||
| 38354 | DEFB 50 | ship-systems tick countdown (reloaded with 100 by the engine-state scan at 39041) | ||
| 38355 | DEFB 3 | destruct-second countdown (reloaded with 20 by the ticker at 38846) | ||
| 38356 | DEFB 0 | scratch: room of the actor under adjacency test | ||
| 38357 | DEFB 10 | oxygen tick reload value | ||
| 38358 | DEFM "TIME: " | status-bar label for the destruct countdown | ||
| 38364 | DEFB 0 | minutes digit, ASCII ('5' when armed at 38454) | ||
| 38365 | DEFM ":" | |||
| 38366 | DEFB 0,0 | seconds digits, ASCII ("00" when armed); the low digit also drives the border flicker while armed | ||
| 38368 | DEFM "TOOH: " | oxygen label as stored on the tape (sic) | ||
| 38374 | DEFM "75" | oxygen level, ASCII, counting down; msg #26 | ||
| 38376 | DEFM "00" | "Oxygen status CRITICAL" fires at "05"+"00" | ||
| 38378 | DEFB 0 | free-running pace counter gating an event every 8 ticks (inside 38379) | ||
| Prev: 38182 | Up: Map | Next: 38379 |