-#include "ti86abs.inc"
-
-_SHRACC = $4383
-_SHLACC = $438B
-_divHLby10 = $4044
-_divAby10 = $4DAF
-_cphlde = $403C
-_clrWindow = $4A86
-_asapvar = $D6FC
-_MOV4B = $429B ;4x ld (de),(hl)
-_MOV5B = $4297 ;5x ld (de),(hl)
-_mov9b = $4283 ;9x ld (de),(hl)
-_ldHLind = $4010 ;ld hl,(hl)
-_swapt_ = $45F3 ;ex_ahl_bde
-
-leveldata = $EA00 ;size<$400
+
+_SHRACC = $4383
+_SHLACC = $438B
+_divHLby10 = $4044
+_divAby10 = $4DAF
+_cphlde = $403C
+_clrWindow = $4A86 ;clear screen
+_asapvar = $D6FC ;own name (worm)
+_MOV4B = $429B ;4x ld (de),(hl)
+_MOV5B = $4297 ;5x ld (de),(hl)
+_mov9b = $4283 ;9x ld (de),(hl)
+_ldHLind = $4010 ;ld hl,(hl)
+_swapt_ = $45F3 ;ex_ahl_bde
+_Get_Word_ahl = $521D ;ld de,(ahl)
+_Set_Word_ahl = $5221 ;ld (ahl),de
+_AHL_PLUS_2_PG3 = $4C3F ;ahl=ahl+2
+_SET_ABS_SRC_ADDR = $4647 ;set source for mm.ldir =ahl
+_LOAD_ABS_SRC_ADDR = $5209 ;ahl = mm.ldir source
+_SET_ABS_DEST_ADDR = $5285 ;set destination for mm.ldir = ahl
+_SET_MM_NUM_BYTES = $464F ;number of bytes for mm.ldir = ahl
+_mm_ldir = $52ED ;24bit ldir
+_RAM_PAGE_1 = $47E3 ;set $8000+ to page 1
+
+;-----------------------------
+;------- data storage -------
+;-----------------------------
+
+leveldata = $EA00 ;size< $400
+ScrBuffer = $8100 ;size=$2000 (32x256)
+ ;->mod$800
+DispBuffer = $BC00 ;size= $390 (16x57)
+SinCosTable = $B500 ;size= $100 (4x64)
+
+worm1 = $B400
+worm2 = $B42A
+worm3 = $B454
+worm4 = $B47E ;-B4A8
+
+resbit = 2 ;and%11111011
+worm1p = $B000 ;%10110000 -$B3FF
+worm2p = $B800 ;%10111000 -$BBFF
+worm3p = $F000 ;%11110000 -$F3FF
+worm4p = $A800 ;$E800=%11101000 ;$D748+$1000+
+
+WormVersion = 086