;;; $8000..8686: Common to all enemy banks ;;;
;;; $8687..CA00: Kraid ;;;
    ;;; $8687..A929: Kraid data ;;;
        ;;; $8687: Palette - enemy $E2BF/$E2FF/$E33F/$E37F/$E3BF/$E3FF/$E43F/$E47F (Kraid) ;;;
        ;;; $86A7: Unused. Palette ;;;
        ;;; $86C7: Kraid room background palette ;;;
        ;;; $86E7..A715: Instruction lists et al ;;;
            ;;; $86E7..8B2D: Instruction lists ;;;
                ;;; $86E7: Instruction list - Kraid foot - initial ;;;
                ;;; $86ED: Instruction list - Kraid foot - Kraid is big - neutral ;;;
                ;;; $86F3: Instruction list - Kraid foot - Kraid is big - walking forwards ;;;
                ;;; $87BD: Instruction list - Kraid foot - lunge forward ;;;
                ;;; $8887: Instruction list - Kraid foot - Kraid is big - walking backwards ;;;
                ;;; $893D: Unused. Instruction list - Kraid foot - walking backwards - fast ;;;
                ;;; $89F3: Instruction list - Kraid arm - normal ;;;
                ;;; $8A41: Instruction list - Kraid arm - slow ;;;
                ;;; $8A8F: Instruction - slow Kraid arm if Kraid has less than half health ;;;
                ;;; $8AA4: Instruction list - Kraid arm - rising/sinking ;;;
                ;;; $8AF0: Instruction list - Kraid arm - dying / preparing to lunge forward ;;;
                ;;; $8AFE: Instruction list - Kraid lint - initial ;;;
                ;;; $8B04: Instruction list - Kraid lint - Kraid is big ;;;
                ;;; $8B0A: Instruction list - fingernail ;;;
            ;;; $8B2E..948A: (Extended) spritemaps ;;;
                ;;; $8B2E: Unused. Extended spritemaps - Kraid arm ;;;
                ;;; $8C6C: Spritemap - Kraid lint - Kraid is big ;;;
                ;;; $8C87: Unused. Extended spritemaps - Kraid foot ;;;
                ;;; $8CE3: Extended spritemaps - Kraid foot ;;;
                ;;; $8F59: Extended spritemaps - Kraid arm ;;;
                ;;; $92B5: Hitbox - Kraid lint ;;;
                ;;; $92C3: Unused. Hitbox - Kraid foot ;;;
                ;;; $92D1: Hitboxes - Kraid arm ;;;
                ;;; $9453: Hitbox - Kraid foot ;;;
                ;;; $9461: Unused. Hitbox - Kraid foot ;;;
                ;;; $946F: Hitboxes - Kraid arm - dying / preparing to lunge forward ;;;
            ;;; $948B: Enemy touch - Kraid arm/foot - normal ;;;
            ;;; $9490: Enemy touch - enemy $E2FF (Kraid arm) ;;;
            ;;; $949F: Enemy touch - enemy $E2BF (Kraid) ;;;
            ;;; $94A4: Push Samus back ;;;
            ;;; $94B1: Normal enemy shot ;;;
            ;;; $94B6: Enemy shot - Kraid arm ;;;
            ;;; $94C4..96D1: Spritemaps ;;;
                ;;; $94C4: Unused. Spritemap - Kraid lint ;;;
                ;;; $94DA: Unused. Spritemap - Kraid foot ;;;
                ;;; $94E1: Spritemaps - Kraid arm - general ;;;
                ;;; $95DE: Spritemaps - Kraid foot ;;;
                ;;; $96C4: Unused. Spritemaps - Kraid foot ;;;
            ;;; $96D2..9787: Kraid instruction lists ;;;
                ;;; $96D2: Kraid instruction list - roar ;;;
                ;;; $970E: Kraid instruction list - dying roar ;;;
                ;;; $974A: Kraid instruction list - eye glowing ;;;
                ;;; $9764: Kraid instruction list - dying ;;;
            ;;; $9788: Kraid mouth hitboxes ;;;
            ;;; $97C8: Kraid head tilemaps ;;;
            ;;; $A3C8..A715: (Extended) spritemaps ;;;
                ;;; $A3C8: Unused. Extended spritemaps - Kraid arm ;;;
                ;;; $A47C: Spritemaps - Kraid arm - rising/sinking ;;;
                ;;; $A4E2: Unused. Extended spritemaps - Kraid arm ;;;
                ;;; $A500: Spritemaps - Kraid arm - rising/sinking ;;;
                ;;; $A565: Extended spritemap - Kraid foot - initial ;;;
                ;;; $A577: Spritemaps - Kraid foot ;;;
                ;;; $A5DF: Spritemap - Kraid lint - initial ;;;
                ;;; $A5FA: Unused. Spritemaps - Kraid lint ;;;
                ;;; $A617: Spritemaps - Kraid fingernail ;;;
                ;;; $A69F: Spritemaps - Kraid arm - dying / preparing to lunge ;;;
        ;;; $A716: Kraid's room background ;;;
        ;;; $A916: Kraid constants ;;;
    ;;; $A92A: Unused. REP #$30 ;;;
    ;;; $A92C: Check if Kraid has died ;;;
    ;;; $A943: Set enemy properties to dead ;;;
    ;;; $A959: Initialisation AI - enemy $E2BF (Kraid) ;;;
    ;;; $AAC6: Set up Kraid graphics with the tile priority cleared ;;;
    ;;; $AB43: Initialisation AI - enemy $E2FF (Kraid's arm) ;;;
    ;;; $AB68: Initialisation AI - enemy $E33F (Kraid top lint) ;;;
    ;;; $AB9C: Initialisation AI - enemy $E37F (Kraid middle lint) ;;;
    ;;; $ABCA: Initialisation AI - enemy $E3BF (Kraid bottom lint) ;;;
    ;;; $ABF8: Initialisation AI - enemy $E3FF (Kraid's foot) ;;;
    ;;; $AC21: Main AI - enemy $E2BF (Kraid) ;;;
    ;;; $AC4D: Kraid function - Kraid gets big - break ceiling into platforms ;;;
    ;;; $AD3A: Kraid function - Kraid gets big - set BG2 tilemap priority bits ;;;
    ;;; $AD61: Kraid function - Kraid gets big - finish updating BG2 tilemap ;;;
    ;;; $AD8E: Kraid function - Kraid gets big - draw room background ;;;
    ;;; $AD9A: Draw Kraid's room background ;;;
    ;;; $ADE1: Set up Kraid gets big - thinking ;;;
    ;;; $ADE9: Set up Kraid main loop - thinking ;;;
    ;;; $ADEF: Set lint Y positions and random thinking timer ;;;
    ;;; $AE23: Kraid function - Kraid gets big - fade in room background ;;;
    ;;; $AE90: Enable Kraid lints ;;;
    ;;; $AEA4: Kraid function - Kraid main loop - thinking ;;;
    ;;; $AEC4: Kraid function - Kraid gets big - thinking ;;;
    ;;; $AEE4: Kraid function - Kraid shot - Kraid's mouth is open ;;;
    ;;; $AF32: Kraid instruction list handling ;;;
    ;;; $AF3D: Process Kraid instruction list ;;;
    ;;; $AF88: Process next Kraid instruction ;;;
    ;;; $AF94: Kraid instruction - play Kraid roar sound effect ;;;
    ;;; $AF9F: Kraid instruction - play Kraid dying sound effect ;;;
    ;;; $AFAA: Kraid's mouth / projectile collision handling ;;;
    ;;; $B0CB: Spawn explosion enemy projectile ;;;
    ;;; $B0F3: Kraid body / Samus collision handling ;;;
    ;;; $B161: Kraid body hitbox definition table ;;;
    ;;; $B181: Kraid body / projectile collision handling ;;;
    ;;; $B269: Unused. Handle projectile damage and sound ;;;
    ;;; $B337: Kraid palette handling ;;;
    ;;; $B371: Kraid hurt flash handling ;;;
    ;;; $B394: Kraid health-based palette handling ;;;
    ;;; $B3D3: Kraid BG palette 7 ;;;
    ;;; $B513: Kraid sprite palette 7 ;;;
    ;;; $B633: Instruction - NOP ;;;
    ;;; $B636: Instruction - decrement Kraid Y position ;;;
    ;;; $B63C: Instruction - increment Kraid Y position, set screen shaking ;;;
    ;;; $B64E: Instruction - queue sound 76h, sound library 2, max queued sounds allowed = 6 (quake) ;;;
    ;;; $B65A: Instruction - Kraid X position -= 3 ;;;
    ;;; $B667: Instruction - Kraid X position -= 3 ;;;
    ;;; $B674: Instruction - Kraid X position += 3 ;;;
    ;;; $B683: Instruction - move Kraid right ;;;
    ;;; $B6BF: Kraid function - Kraid shot - initialise Kraid eye glowing ;;;
    ;;; $B6D7: Kraid function - Kraid shot - glow Kraid's eye ;;;
    ;;; $B73D: Kraid function - Kraid shot - unglow Kraid's eye ;;;
    ;;; $B7BD: Main AI - enemy $E2FF (Kraid's arm) ;;;
    ;;; $B801: Main AI - enemy $E33F (Kraid top lint) ;;;
    ;;; $B80D: Main AI - enemy $E37F (Kraid middle lint) ;;;
    ;;; $B819: Main AI - enemy $E3BF (Kraid bottom lint) ;;;
    ;;; $B822: Kraid lint main AI ;;;
    ;;; $B832: Kraid lint function - produce lint ;;;
    ;;; $B868: Kraid lint function - charge lint ;;;
    ;;; $B89B: Kraid lint function - fire lint ;;;
    ;;; $B907: Kraid fingernail function - wait until top lint X position >= 100h ;;;
    ;;; $B923: Kraid lint function - horizontally align enemy to Kraid ;;;
    ;;; $B92D: Kraid enemy function - handle Kraid enemy function timer ;;;
    ;;; $B93F: Kraid foot function - start retreat ;;;
    ;;; $B960: Kraid foot function - first phase - thinking ;;;
    ;;; $B965: Kraid function - process Kraid instruction ;;;
    ;;; $B96A: Kraid lint / Samus collision handling ;;;
    ;;; $B9F6: Main AI - enemy $E3FF (Kraid's foot) ;;;
    ;;; $BA2D: RTL. Kraid foot function ;;;
    ;;; $BA2E: Kraid foot function - second phase - thinking ;;;
    ;;; $BB0D: Set Kraid walking backwards ;;;
    ;;; $BB29: Set Kraid walking forwards ;;;
    ;;; $BB45: Kraid foot function - second phase - walking backwards ;;;
    ;;; $BB6E: Kraid foot function - second phase setup - walk to starting spot ;;;
    ;;; $BBA4: Kraid foot function - second phase setup - initialise second phase ;;;
    ;;; $BBAE: Kraid foot function - second phase - walking forwards ;;;
    ;;; $BBEA: Kraid function - Kraid main loop - attacking with mouth open ;;;
    ;;; $BC75: Unused. Lunge forward if Samus is not invincible ;;;
    ;;; $BCB5: Unused. Fire lint after [A] frames ;;;
    ;;; $BCCF: Enemy touch - enemy $E43F (Kraid good fingernail) ;;;
    ;;; $BCDE: Enemy touch - enemy $E47F (Kraid bad fingernail) ;;;
    ;;; $BCED: RTL ;;;
    ;;; $BCEE: RTL ;;;
    ;;; $BCEF: Initialisation AI - enemy $E43F (Kraid good fingernail) ;;;
    ;;; $BCF2: Kraid's fingernails initialisation AI ;;;
    ;;; $BD2D: Initialisation AI - enemy $E47F (Kraid bad fingernail) ;;;
    ;;; $BD32: Main AI - enemy $E43F (Kraid good fingernail) ;;;
    ;;; $BD49: Main AI - enemy $E47F (Kraid bad fingernail) ;;;
    ;;; $BD60: Kraid fingernail function - initialise fingernail ;;;
    ;;; $BE8E: Kraid fingernail function - fire fingernail ;;;
    ;;; $BF2D: Kraid foot function - first phase - prepare to lunge forward ;;;
    ;;; $BF5D: Kraid foot function - first phase - lunge forward ;;;
    ;;; $BFAB: Kraid foot function - first phase - retreat from lunge ;;;
    ;;; $C005: Handle Kraid's first phase ;;;
    ;;; $C0A1: Kraid function - Kraid gets big - release camera ;;;
    ;;; $C0BD: Unused. Crumble first section of Kraid's spike floor ;;;
    ;;; $C106: Unused. Crumble second section of Kraid's spike floor ;;;
    ;;; $C12F: Unused. Crumble third section of Kraid's spike floor ;;;
    ;;; $C168: Spawn PLM to clear the ceiling ;;;
    ;;; $C171: Spawn PLM to clear the spikes ;;;
    ;;; $C17A: Unused. Clear some of the spikes ;;;
    ;;; $C1FB: Unpause hook - Kraid is dead ;;;
    ;;; $C24E: Unpause hook - Kraid is alive ;;;
    ;;; $C278: Transfer Kraid top half tilemap to VRAM ;;;
    ;;; $C2A0: Unpause hook - Kraid is sinking ;;;
    ;;; $C325: Pause hook - Kraid ;;;
    ;;; $C360: Kraid death - initialise death ;;;
    ;;; $C3F9: Kraid death - fade out background ;;;
    ;;; $C457: Unused. Process Kraid instruction, except there's no ASM instructions ;;;
    ;;; $C4A4: Kraid death - update BG2 tilemap top half ;;;
    ;;; $C4C8: Kraid death - update BG2 tilemap bottom half ;;;
    ;;; $C51D: Play sound every half second ;;;
    ;;; $C537: Kraid death - Kraid sinks through floor ;;;
    ;;; $C59F: Handle Kraid sinking ;;;
    ;;; $C5E7: Sinking Kraid table ;;;
    ;;; $C691: Crumble left platform - left ;;;
    ;;; $C6A7: Crumble right platform - middle ;;;
    ;;; $C6BD: Crumble right platform - left ;;;
    ;;; $C6D3: Crumble left platform - right ;;;
    ;;; $C6E9: Crumble left platform - middle ;;;
    ;;; $C6FF: Crumble right platform - right ;;;
    ;;; $C715: Kraid function - fade in regular background - clear BG2 tilemap top half ;;;
    ;;; $C751: Kraid function - fade in regular background - clear BG2 tilemap bottom half ;;;
    ;;; $C777: Kraid function - fade in regular background - load standard BG3 tiles 1/4 ;;;
    ;;; $C7A3: Kraid function - fade in regular background - load standard BG3 tiles 2/4 ;;;
    ;;; $C7C9: Kraid function - fade in regular background - load standard BG3 tiles 3/4 ;;;
    ;;; $C7EF: Kraid function - fade in regular background - load standard BG3 tiles 4/4 ;;;
    ;;; $C815: Kraid function - fade in regular background - fade in BG palette 6 ;;;
    ;;; $C843: Kraid function - fade in regular background - set enemy properties to dead - Kraid was alive ;;;
    ;;; $C851: Kraid function - fade in regular background - set enemy properties to dead - Kraid was dead ;;;
    ;;; $C865: Kraid function - restrict Samus X position to first screen ;;;
    ;;; $C86B: Kraid function - raise Kraid through floor - load tilemap top half ;;;
    ;;; $C874: Update BG2 tilemap top half ;;;
    ;;; $C89A: Kraid function - raise Kraid through floor - load tilemap bottom half and shake screen ;;;
    ;;; $C8B6: Update BG2 tilemap bottom half ;;;
    ;;; $C8E0: Kraid function - raise Kraid through floor - spawn random earthquake projectiles every 10h frames ;;;
    ;;; $C902: Kraid function - raise Kraid through floor - spawn random earthquake projectiles every 8 frames ;;;
    ;;; $C924: Kraid function - raise Kraid through floor - raise Kraid ;;;
    ;;; $C995: Spawn random earthquake projectile ;;;
    ;;; $C9EE: Restrict Samus X position to first screen ;;;
;;; $CA01..E7FD: Phantoon ;;;
    ;;; $CA01..CDF2: Phantoon data ;;;
        ;;; $CA01: Palette - enemy $E4BF/$E4FF/$E53F/$E57F (Phantoon) ;;;
        ;;; $CA21: Palettes ;;;
        ;;; $CC41..FC: Instruction lists - Phantoon ;;;
            ;;; $CC41: Instruction list - body - invulnerable ;;;
            ;;; $CC47: Instruction list - body - full hitbox ;;;
            ;;; $CC4D: Instruction list - body - eye hitbox only ;;;
            ;;; $CC53: Instruction list - eye - open ;;;
            ;;; $CC69: Unused. Instruction list - open (ignoring Samus) ;;;
            ;;; $CC7B: Instruction list - eye - closed ;;;
            ;;; $CC81: Instruction list - eye - close and pick new pattern ;;;
            ;;; $CC91: Instruction list - eye - close ;;;
            ;;; $CC9D: Instruction list - eyeball - centred ;;;
            ;;; $CCA7: Instruction list - eyeball - looking up ;;;
            ;;; $CCAD: Instruction list - eyeball - looking up-right ;;;
            ;;; $CCB3: Instruction list - eyeball - looking right ;;;
            ;;; $CCB9: Instruction list - eyeball - looking down-right ;;;
            ;;; $CCBF: Instruction list - eyeball - looking down ;;;
            ;;; $CCC5: Instruction list - eyeball - looking down-left ;;;
            ;;; $CCCB: Instruction list - eyeball - looking left ;;;
            ;;; $CCD1: Instruction list - eyeball - looking up-left ;;;
            ;;; $CCD7: Instruction list - tentacles ;;;
            ;;; $CCEB: Instruction list - mouth - spawn flame ;;;
            ;;; $CCF7: Instruction list - mouth - initial ;;;
        ;;; $CCFD: Casual flame timers ;;;
        ;;; $CD41: Phantoon figure-8 vulnerable window timers ;;;
        ;;; $CD51: Empty HDMA table ;;;
        ;;; $CD53: Phantoon eye closed timers ;;;
        ;;; $CD63: Flame rain Phantoon hiding timers ;;;
        ;;; $CD73: Figure-8 Phantoon acceleration ;;;
        ;;; $CD7B: Figure-8 speed caps ;;;
        ;;; $CD81: Reverse figure-8 Phantoon acceleration ;;;
        ;;; $CD89: Reverse figure-8 speed caps ;;;
        ;;; $CD8F: Unused ;;;
        ;;; $CD9B: Wavy Phantoon constants ;;;
        ;;; $CDA5: Values for $0FEA ;;;
        ;;; $CDAD: Phantoon position table for flame rain ;;;
        ;;; $CDED: Materialisation sound effects ;;;
    ;;; $CDF3: Initialisation AI - enemy $E4BF (Phantoon body) ;;;
    ;;; $CE55: Initialisation AI - enemy $E4FF/$E53F/$E57F (Phantoon eye / tentacles / mouth) ;;;
    ;;; $CE96: HDMA object instruction list - Phantoon semi-transparency ;;;
    ;;; $CEA6: Main AI - enemy $E4BF (Phantoon) ;;;
    ;;; $CEED: Play Phantoon materialisation sound effect ;;;
    ;;; $CF0C: Broken nothingness ;;;
    ;;; $CF27: Grow/shrink Phantoon wave amplitude ;;;
    ;;; $CF5E: Spawn casual flame ;;;
    ;;; $CF70: Phantoon materialisation flame spiral ;;;
    ;;; $CF8B: Spawn flame rain enemy projectiles ;;;
    ;;; $CFCA: Handle casual flames ;;;
    ;;; $D03F: Set up eye open Phantoon state ;;;
    ;;; $D076: Pick new Phantoon pattern ;;;
    ;;; $D0F1: Adjust speed and move Phantoon in figure-8 ;;;
    ;;; $D114: Update figure-8 Phantoon speed ;;;
    ;;; $D193: Update reversed figure-8 Phantoon speed ;;;
    ;;; $D215: Move Phantoon in figure-8 ;;;
    ;;; $D271: Move Phantoon in reverse figure-8 ;;;
    ;;; $D2D1: Move Phantoon in swooping pattern ;;;
    ;;; $D3E1: Start Phantoon swooping pattern ;;;
    ;;; $D3FA: Make Phantoon look towards Samus ;;;
    ;;; $D421: Start Phantoon death sequence ;;;
    ;;; $D464: Advance Phantoon fade out ;;;
    ;;; $D486: Advance Phantoon fade in ;;;
    ;;; $D4A8: RTS ;;;
    ;;; $D4A9..D5E6: Phantoon function - fight intro ;;;
        ;;; $D4A9: Phantoon function - fight intro - spawn circle of flames ;;;
        ;;; $D4EE: Phantoon function - fight intro - spin circle of flames ;;;
        ;;; $D508: Phantoon function - fight intro - start wavy fade in ;;;
        ;;; $D54A: Phantoon function - fight intro - wavy fade-in ;;;
        ;;; $D581: Unused ;;;
        ;;; $D596: Phantoon function - fight intro - pick first pattern ;;;
    ;;; $D5E7..D677: Phantoon function - figure-8 ;;;
        ;;; $D5E7: Phantoon function - figure-8 - moving ;;;
        ;;; $D60D: Phantoon function - figure-8 - vulnerable window ;;;
        ;;; $D65C: Phantoon function - figure-8 - swooping triggered ;;;
    ;;; $D678..D3: Phantoon function - swooping ;;;
        ;;; $D678: Phantoon function - swooping - opaque ;;;
        ;;; $D6B9: Phantoon function - swooping - fading out ;;;
    ;;; $D6D4..D73E: Phantoon function - hiding before figure-8 ;;;
        ;;; $D6D4: Phantoon function - hiding before figure-8 - hiding ;;;
        ;;; $D6E2: Phantoon function - hiding before figure-8 - place Phantoon ;;;
        ;;; $D72D: Phantoon function - hiding before figure-8 - fading in ;;;
    ;;; $D73F..D85B: Phantoon function - flame rain ;;;
        ;;; $D73F: Phantoon function - flame rain - show Phantoon ;;;
        ;;; $D767: Phantoon function - flame rain - make Phantoon vulnerable ;;;
        ;;; $D788: Phantoon function - flame rain - vulnerable window ;;;
        ;;; $D7D5: Phantoon function - flame rain - fading out ;;;
        ;;; $D7F7: Phantoon function - flame rain - subsequent flame rain ;;;
        ;;; $D82A: Phantoon function - flame rain - initial flame rain ;;;
    ;;; $D85C..D92D: Phantoon function - enraged ;;;
        ;;; $D85C: Phantoon function - enraged - fading out before rage ;;;
        ;;; $D874: Phantoon function - enraged - hiding ;;;
        ;;; $D891: Phantoon function - enraged - fading in ;;;
        ;;; $D8AC: Phantoon function - enraged - rage ;;;
        ;;; $D916: Phantoon function - enraged - fading out after rage ;;;
    ;;; $D92E: Phantoon function - swooping - fatal damage ;;;
    ;;; $D948..DB99: Phantoon function - death sequence - fading in and out ;;;
        ;;; $D948: Phantoon function - death sequence - fading in and out ;;;
        ;;; $D98B: Phantoon function - death sequence - exploding ;;;
        ;;; $DA51: Phantoon function - death sequence - set up wavy mosaic Phantoon ;;;
        ;;; $DA86: Phantoon function - death sequence - wavy mosaic Phantoon ;;;
        ;;; $DAD7: Phantoon function - death sequence - clear graphics ;;;
        ;;; $DB3D: Phantoon function - death sequence - activate Wrecked Ship ;;;
    ;;; $DB9A: Advance Phantoon fade out ;;;
    ;;; $DBD5: Advance Phantoon fade in ;;;
    ;;; $DC0F: Get Phantoon health-based palette colour [X] / 2 ;;;
    ;;; $DC5A: Advance Wrecked Ship power on palette transition ;;;
    ;;; $DC95: Calculate the [A]th transitional colour from [X] to [Y] ;;;
    ;;; $DCF1: Calculate the [A]th transitional colour component from [X] to [Y] ;;;
    ;;; $DD3F: Hurt AI - enemy $E4BF (Phantoon) ;;;
    ;;; $DD95: Enemy touch - enemy $E4BF (Phantoon) ;;;
    ;;; $DD9A: RTL. Power bomb reaction - enemy $E4BF (Phantoon) ;;;
    ;;; $DD9B: Enemy shot - enemy $E4BF (Phantoon) ;;;
    ;;; $DEDD: Extended spritemaps ;;;
    ;;; $E011: RTL. Initialisation AI - enemy $E53F/$E57F (Phantoon) ;;;
    ;;; $E012: Hitboxes ;;;
    ;;; $E07A: Spritemaps / extended tilemaps ;;;
    ;;; $E3D2: Phantoon movement data ;;;
;;; $E7FE..F224: Etecoon ;;;
    ;;; $E7FE: Palette - enemy $E5BF (etecoon) ;;;
    ;;; $E81E..FF: Instruction lists ;;;
        ;;; $E81E: Instruction list - look right at Samus and run left ;;;
        ;;; $E828: Instruction list - running left ;;;
        ;;; $E83C: Instruction list - wall jump left ;;;
        ;;; $E854: Instruction list - hopping - facing left ;;;
        ;;; $E862: Instruction list - hit ceiling ;;;
        ;;; $E870: Instruction list - wall-jump left eligible ;;;
        ;;; $E876: Instruction list - look left at Samus and run right ;;;
        ;;; $E880: Instruction list - running right ;;;
        ;;; $E894: Instruction list - wall jump right ;;;
        ;;; $E898: Instruction list - jumping right ;;;
        ;;; $E8AC: Instruction list - hopping - facing right ;;;
        ;;; $E8C8: Instruction list - wall-jump right eligible ;;;
        ;;; $E8CE: Instruction list - initial ;;;
        ;;; $E8D6: Instruction list - flexing ;;;
    ;;; $E900: Etecoon constants ;;;
    ;;; $E912: Initialisation AI - enemy $E5BF (etecoon) ;;;
    ;;; $E940: Main AI - enemy $E5BF (etecoon) ;;;
    ;;; $E958: Freeze etecoon if quake active ;;;
    ;;; $E974: Etecoon horizontal movement ;;;
    ;;; $E983: Etecoon vertical movement ;;;
    ;;; $E9AF: Etecoon function - initial ;;;
    ;;; $EA00: Etecoon function - start hop - bottom of room ;;;
    ;;; $EA37: Etecoon function - hopping - bottom of room ;;;
    ;;; $EAB5: Etecoon function - look at Samus ;;;
    ;;; $EB02: Etecoon function - running left ;;;
    ;;; $EB2C: Etecoon function - running right ;;;
    ;;; $EB50: Etecoon function - jumping ;;;
    ;;; $EBCD: Etecoon function - wall jump ;;;
    ;;; $EC1B: Etecoon function - landed from jump ;;;
    ;;; $EC47: Run to left run-up point ;;;
    ;;; $EC61: Run to right run-up point ;;;
    ;;; $EC7B: Hop at centre run-up point ;;;
    ;;; $EC97: Etecoon function - run to left run-up point ;;;
    ;;; $ECBB: Etecoon function - run to right run-up point ;;;
    ;;; $ECDF: Etecoon function - running for successful morph tunnel jump ;;;
    ;;; $ED09: Etecoon function - successful morph tunnel jump ;;;
    ;;; $ED2A: Etecoon function - running through morph tunnel ;;;
    ;;; $ED54: Etecoon function - falling from morph tunnel ledge ;;;
    ;;; $ED75: Etecoon function - hopping - top of room ;;;
    ;;; $EDC7: Etecoon function - start hop - top of room ;;;
    ;;; $EE3E: Etecoon function - hop until Samus is near ;;;
    ;;; $EE9A: Etecoon function - running for failed morph tunnel jump ;;;
    ;;; $EEB8: Etecoon function - failed tunnel jump ;;;
    ;;; $EEEB: RTL ;;;
    ;;; $EEEC: RTL ;;;
    ;;; $EEED: Spritemaps ;;;
;;; $F225..FF81: Dachora ;;;
    ;;; $F225: Palettes ;;;
    ;;; $F345..F4C8: Instruction lists ;;;
        ;;; $F345: Instruction list - running left ;;;
        ;;; $F399: Instruction list - idling - facing left ;;;
        ;;; $F3C9: Instruction list - blinking - facing left ;;;
        ;;; $F3F1: Unused. Instruction list - charge shinespark - facing left ;;;
        ;;; $F3F7: Instruction list - echo - facing left ;;;
        ;;; $F3FF: Instruction list - falling - facing left ;;;
        ;;; $F407: Instruction list - running right ;;;
        ;;; $F45B: Instruction list - idling - facing right ;;;
        ;;; $F48B: Instruction list - blinking - facing right ;;;
        ;;; $F4B3: Instruction list - charge shinespark - facing right ;;;
        ;;; $F4B9: Instruction list - echo - facing right ;;;
        ;;; $F4C1: Instruction list - falling - facing right ;;;
    ;;; $F4C9: Dachora constants ;;;
    ;;; $F4DD: Initialisation AI - enemy $E5FF (dachora) ;;;
    ;;; $F52E: Main AI - enemy $E5FF (dachora) ;;;
    ;;; $F534: Unused. RTL ;;;
    ;;; $F535: Load dachora palette ;;;
    ;;; $F56F: Unused. RTL ;;;
    ;;; $F570: Dachora function - wait for Samus to be near ;;;
    ;;; $F5BC: Dachora function - start running ;;;
    ;;; $F5ED: Dachora function - running left ;;;
    ;;; $F65E: Dachora function - running right ;;;
    ;;; $F6D5: Accelerate running dachora ;;;
    ;;; $F78F: Dachora function - activate shinespark ;;;
    ;;; $F806: Dachora function - shinesparking ;;;
    ;;; $F89A: Update echo positions ;;;
    ;;; $F90A: Load dachora shine palette ;;;
    ;;; $F935: Dachora function - falling ;;;
    ;;; $F98C: Dachora function - echo ;;;
    ;;; $F9C2: RTL ;;;
    ;;; $F9C3: RTL ;;;
    ;;; $F9C4: Spritemaps ;;;
;;; $FF82: Free space ;;;