#config armor=2 ; consumes 2 points #config scanner=4 ; gives us 5 points #config engine=2 ; gives us 2 points #config heatsinks=1 ; gives us 1 point #config weapon=3 ; gives us 2 points #msg no.i xspect u 2 die #def arc #def bsnum opo 22, 12 opo 22, 12 mov ax, 1 int 3 opo 11, 100 mov bsnum, 4 mov arc, 32 :99 opo 12, 64 !scan call !m1 opo 17, arc ipo 7, bx cmp bx, 2000 jgr !nt cmp arc, 2 jeq !fire mov ax, @3 shl ax, bsnum opo 12, ax opo 15 shr arc, 2 sub bsnum, 2 jmp !scan :99 opo 12, 64 jmp !scan !fire opo 18, 0 ipo 2, ax cmp ax, 200 jgr !scan call !heat2 opo 15, @3 opo 15, @3 opo 15, @3 opo 18, 0 jmp !scan !heat2 ipo 2, ax cmp ax, 150 jgr !heat-2big opo 18, 1 !heat-2big ret !nt cmp arc, 32 jeq 99 shl arc, 2 add bsnum, 2 jmp !scan !m1 opo 11, 100 int 2 cmp ex, 100 jls !mleft cmp ex, 900 jgr !mright cmp fx, 100 jls !mup cmp fx, 900 jgr !mdown je !mclear jne !mclear !mleft ipo 3, ax mov bx, 64 sub bx, ax opo 14, bx ret !mright ipo 3, ax mov bx, 192 sub bx, ax opo 14, bx opo 11, 100 ret !mdown ipo 3, ax mov bx, 0 sub bx, ax opo 14, bx opo 11, 100 ret !mup ipo 3, ax mov bx, 128 sub bx, ax opo 14, bx opo 11, 100 ret !mclear ipo 10, ax and ax, 255 opo 14, ax ret