+
+txt_pause: .db " ",6,"/",7," ",$1C,"contrast; "
+ .db "F1",$1C,"B",$CF,5,"W Mode",0
+_txt_pause = $020B
+txt_pressenter: .db "Enter to continue",0 ;pause
+_txt_pressenter = $0201
+txt_teacher: .db "(2",Lpi,"*.98)/sin 13",0 ;teacher
+txt_teacherans: .db Lneg,"14.6549373495",0
+
+;---------------------------- save data -------------------------------------
+
+storehi_start:
+hiscore .dw 0 ;default hiscore
+hiname .db "shiar.99",0 ; " " name
+storehi_end:
+
+storesave_start: ;--SAVED GAME-- defs:
+level .db 10 ;level number 1
+levelp .dw level09 ;pointer to level data lev00
+pickuptimer .db 4 ;counts when to place a pickup 4
+your_ship .dw spr_ship01 ;your sprite sprs1
+your_extramode .db 1 ;you have tail or double 1
+your_score .dw 0 ;current score 0
+your_pickup .db 3 ;pickups already picked up 0
+your_occ .db 0 ;0=normal 1..16=exploding 0
+your_shield .db 0 ;invincibility left 0
+your_armor .db 12 ;HP left 12
+your_lives .db 3 ;lives left 3
+your_weapon .db 3 ;current weapon upgrade 0
+your_multiples .db 0 ;multiples present 0
+your_extra .db 0 ;extra beam present 0
+storesave_end:
+
+time2invert: .db 0 ;time until b<>w switch (0 at startup)
+
+;------------------------------ levels data ---------------------------------
+
+;format:boss: [moveType] [enemyType]
+; @level: [nr.dif.enemies]x [enemy nr]
+; [min. enemy frequency] [enemy frequency max.inc]
+; [next lvl (=nrenemies+4)] [level_info: 1:ceiling 1:ground]
+; [tunnel size] [groundtype] [stars1] [stars2]
+;efrequency must be odd if halfluring!
+
+ .db 0 ;storyline ID
+levelstart: ;[y-pos] [x-pos] [text,0] [SFX lines; 0=more text] [-1=end]
+ .db 25,33,"Imperial ships have",0,0
+ .db 31,9,"been sent to intercept you",0,31-25+6,-1
+
+ .db 9
+level00:.db 5,2,4,2,1,1
+ .db 28,73,13
+ .db %00,0,0,1,1
+
+ .db 30 ;boss for level01
+level01:.db 2,2,4 ;enemies
+ .db 26,70,20
+ .db %00,0,0,1,1
+
+ .db 31
+level02:.db 3,2,3,4
+ .db 20,60,60
+ .db %00,0,0,1,1
+
+ .db 32
+level03:.db 4,3,4,5,6
+ .db 17,40,75
+ .db %00,0,0,1,1
+
+ .db 0
+ .db 1,1,"Long-Range scanners are ",
+ .db "showing",0,0
+ .db 8,1,"lots of enemy vessels ",
+ .db "advancing fast.",0,8-1+6
+ .db 24,1,"I'm changing course to a",
+ .db " nearby ",0,0
+ .db 31,1,"asteroid belt and try to",0,0
+ .db 38,1,"lose them inthere.",0,38-24+6,-1
+
+;---- approaching asteroid belt
+ .db 33
+level04:.db 5,7,7,8,10,11
+ .db 17,27,70
+ .db %00,0,0,1,1
+
+;---- light asteroid belt
+ .db 34
+level05:.db 7,9,10,8,10,11,11,13
+ .db 12,24,80
+ .db %00,0,0,1,1
+
+;---- inside asteroid belt
+ .db 35
+level06:.db 10,9,10,11,11,13,12,12,13,14,14
+ .db 7,18,180
+ .db %00,0,0,1,1
+
+ .db 36
+level07:.db 4,15,16,17,5
+ .db 22,29,62
+ .db %00,0,0,1,1 ;-1=%11111111=line
+
+ .db 37
+level08:.db 5,15,16,17,18,18
+ .db 20,38,57
+ .db %00,0,0,1,1
+
+ .db 38
+level09:.db 3,18,19,20
+ .db 19,63,57
+ .db %00,0,0,1,1
+
+ .db 0,1,1,"That`s all folks...",0,0
+ .db 20,50,"for now...",0,20-0+6,-1
+
+endlevel = 10
+
+pickupfreq = 18
+
+;------------------------------ enemies -------------------------------------
+
+;format: [HP64] [000000:HP 00:occ] [sprite] [xpos] [appearance(ypos)]
+; [movetype] [time2fire] [firefreq] [firetype]
+;appearances: 1=random; 2=lure; 3=halflure
+;movetypes: 1=updown; 2=1/4x; 3=1/2x; 4=3/4x; 5=3/2x; 6=2x; 7=ylure50%;
+; 7=ylure; 8=ylure50%; 9=x; 10=x+y-lure 50%; 11=-1/2x; 12=-1x
+;firetypes: 1=normal; 6=aiming; 7=triple; 8=double
+
+enemyspecs: ;sprites use 418/512 bytes
+ .db 0,%00000111,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;pickup
+;1-6=basic enemies , , , , , , ,
+ .db 0,%00000110,(spr_enemyE0-spr_enemy00)/2,128,1,00,12, 0,1 ;intro
+ .db 0,%00010010,(spr_enemyE1-spr_enemy00)/2,128,1,00,10, 0,1 ;weak
+ .db 0,%00110010,(spr_enemyE4-spr_enemy00)/2,128,1,03, 6,50,1 ;slow
+ .db 0,%00100110,(spr_enemyE2-spr_enemy00)/2,128,1,00, 1, 0,1
+ .db 0,%00101110,(spr_enemyE3-spr_enemy00)/2,128,3,00,19,39,8 ;heavy
+ .db 0,%00101010,(spr_enemyE5-spr_enemy00)/2,128,3,05, 1, 0,1 ;fast
+;7-9=backwards enemies , , , , , , ,
+ .db 0,%00011110,(spr_enemyB1-spr_enemy00)/2,000,3,11,19,92,1
+ .db 0,%00101110,(spr_enemyB2-spr_enemy00)/2,000,1,12,11,45,1
+ .db 0,%00110110,(spr_enemyB3-spr_enemy00)/2,000,1,11,10,41,8 ;small
+;10-14=asteroid , , , , , , ,
+ .db 0,%00100110,(spr_enemyA1-spr_enemy00)/2,128,1,04, 0, 0,1
+ .db 0,%00111110,(spr_enemyA2-spr_enemy00)/2,128,1,00, 0, 0,1
+ .db 0,%01011010,(spr_enemyA3-spr_enemy00)/2,128,1,05, 0, 0,1
+ .db 1,%00001010,(spr_enemyA4-spr_enemy00)/2,128,1,03, 0, 0,1 ;slow+hard
+ .db 0,%00111110,(spr_enemyA4-spr_enemy00)/2,128,1,06, 0, 0,1
+;15-20=improved enemies, , , , , , ,
+ .db 0,%01001010,(spr_enemyG1-spr_enemy00)/2,128,3,00, 3,40,1
+ .db 0,%01011110,(spr_enemyG2-spr_enemy00)/2,128,3,00, 1,36,1
+ .db 0,%00110010,(spr_enemyG5-spr_enemy00)/2,128,1,01, 9,52,1 ;updown
+ .db 0,%01111010,(spr_enemyG3-spr_enemy00)/2,128,3,04, 7,99,7 ;3x
+ .db 0,%10110110,(spr_enemyG4-spr_enemy00)/2,128,2,01,17, 0,7 ;updown3x
+ .db 0,%10001011,(spr_enemyG6-spr_enemy00)/2,128,2,07,62,60,8 ;lure
+;21-29=unused, , , , , , , ,
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;21
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;22
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;23
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;24
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;25
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;26
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;27
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;28
+ .db 0,%00000011,(spr_enemy00-spr_enemy00)/2,128,2,03, 0, 0,1 ;29
+;30-33=first bosses , , , , , , ,
+ .db 1,%00101011,(spr_boss2 -spr_enemy00)/2,127,1,09,20,12,1 ;small
+ .db 1,%00110011,(spr_boss1 -spr_enemy00)/2,127,1,09,15,11,8 ;normal
+ .db 1,%01001011,(spr_boss1 -spr_enemy00)/2,127,3,10,10,11,1 ;moving
+ .db 0,%11111111,(spr_boss3 -spr_enemy00)/2,127,2,10, 1, 4,1 ;weak+rapidfire
+;34-35=asteroid bosses , , , , , , ,
+ .db 2,%00001011,(spr_bossA1 -spr_enemy00)/2,127,1,10,36,14,6
+ .db 2,%00110011,(spr_bossA1 -spr_enemy00)/2,127,2,10,28,12,6
+;36-38=big bosses , , , , , , ,
+ .db 2,%00000011,(spr_bossB1 -spr_enemy00)/2,127,3,08,31, 8,7
+ .db 2,%00100111,(spr_bossB2 -spr_enemy00)/2,127,3,08,13, 7,7
+ .db 2,%00100111,(spr_bossB2 -spr_enemy00)/2,127,3,08,13, 7,7