home *** CD-ROM | disk | FTP | other *** search
/ OK PC 29 / OKPC29.iso / l2 / intro.asm < prev    next >
Assembly Source File  |  1994-11-11  |  4KB  |  285 lines

  1.                org    0
  2.  
  3.         include    interp.mac
  4.  
  5. ;*****************************************************************************
  6. ;*****************************************************************************
  7. ; GAL PROGRAM START HERE
  8. ;*****************************************************************************
  9. ;*****************************************************************************
  10.  
  11.         Process    0
  12.  
  13. begin0        
  14.  
  15. X    EQU    r0
  16. Y    EQU    r1
  17. DeltaX    EQU    r2
  18. DeltaY    EQU    r3
  19. Zero    EQU    r4
  20.  
  21. main0        
  22.  
  23.         speed    2
  24.         spawn    Proc1
  25.         spawn    Proc2
  26.         spawn    Proc3
  27.         spawn    Proc4
  28.  
  29.         pal    2
  30.         bobpri    0,0
  31.         pause    32
  32.  
  33.         sleep
  34.  
  35. finish0        
  36.         pal    0
  37.         pause    32
  38.         release
  39.         die
  40.  
  41. ;***************************************************************************
  42. Proc1         
  43.         Process    1
  44.  
  45. begin1    
  46.  
  47.  
  48. OldButtons    EQU    r5    
  49. CurrentButtons    EQU    r6
  50.  
  51. main1        
  52.         hold
  53.         mov    r0,0
  54.         mov    r1,302
  55.         mov    r2,183
  56.         restrict r0,r1,r0,r2
  57.  
  58.         mov    Zero,0
  59.         mov    OldButtons,0
  60.         mov    CurrentButtons,0
  61.  
  62.         bobanim    2
  63.         animpause
  64.         bobpri    1,3
  65.  
  66. loop1        
  67.         load    BobX,MouseX
  68.         load    BobY,MouseY
  69.  
  70.         release
  71.         hold
  72.  
  73.         load    CurrentButtons,Buttons
  74.         compare    CurrentButtons,OldButtons
  75.         jumpeq    nochange1
  76.  
  77.         animcont
  78.         release
  79.         hold
  80.         animpause
  81.         store    BobX,0
  82.         store    BobY,2
  83.         
  84. nochange1    add3    OldButtons,CurrentButtons,Zero
  85.  
  86.         jump    loop1
  87.  
  88. finish1        release
  89.         animpause
  90.         pause    64
  91.         killbob
  92.  
  93.         release
  94.         die
  95.  
  96. ;**********************************************************************
  97.  
  98. Proc2        
  99.         Process    2
  100.  
  101. begin2        
  102.  
  103.  
  104. main2        
  105.         mov    BobX,14
  106.         mov    BobY,151
  107.  
  108.         bobanim    1
  109.         bobpri    2,1
  110.         animcont
  111.         animpause
  112.  
  113. loop2        
  114.         release
  115.         hold
  116.  
  117.         load    r0,keyval
  118.         icomp    r0,83
  119.         jumpeq    pressed2
  120.  
  121.         load    r0,0
  122.         load    r1,2
  123.         mov    r3,15
  124.         add3    r0,r0,r3
  125.  
  126.         icomp    r0,12
  127.         jumpl    exit2
  128.           icomp    r0,80
  129.         jumpg    exit2
  130.         icomp    r1,150
  131.         jumpl    exit2
  132.         icomp    r1,162
  133.         jumpg    exit2
  134.  
  135. pressed2
  136.         hold
  137.         mov    r0,0
  138.         store    r0,4
  139.         wake    0
  140.         killbob
  141.         release
  142.         wake    0
  143.  
  144. exit2        jump    loop2
  145.  
  146. finish2        
  147.  
  148.         release
  149.         animpause
  150.         pause    64
  151.         killbob
  152.  
  153.         release
  154.         die
  155.  
  156. ;********************************************************************
  157.  
  158. Proc3        
  159.         Process    3
  160.  
  161. begin3        
  162.  
  163.  
  164. main3        
  165.         mov    BobX,14
  166.         mov    BobY,166
  167.  
  168.         bobanim    1
  169.         bobpri    3,2
  170.         animcont
  171.         animpause
  172.  
  173. loop3           
  174.         release
  175.         hold
  176.  
  177.         load    r0,keyval
  178.         icomp    r0,69
  179.         jumpeq    pressed3
  180.  
  181.         load    r0,0
  182.         load    r1,2
  183.         mov    r3,15
  184.         add3    r0,r0,r3
  185.  
  186.         icomp    r0,14
  187.         jumpl    exit3
  188.           icomp    r0,80
  189.         jumpg    exit3
  190.         icomp    r1,165
  191.         jumpl    exit3
  192.         icomp    r1,177
  193.         jumpg    exit3
  194.  
  195. pressed3    
  196.         hold
  197.         mov    r0,1
  198.         store    r0,4
  199.         wake    0
  200.         killbob
  201.         release
  202.         wake    0
  203.  
  204. exit3        jump    loop3
  205.  
  206. finish3        
  207.  
  208.         release
  209.         animpause
  210.         pause    64
  211.         killbob
  212.  
  213.         release
  214.         die
  215. ;********************************************************************
  216.  
  217. Proc4        
  218.         Process    4
  219.  
  220. begin4        
  221.  
  222.  
  223. main4        
  224.         mov    BobX,232
  225.         mov    BobY,181
  226.  
  227.         bobanim    1
  228.         bobpri    4,2
  229.         animcont
  230.         animpause
  231.  
  232. loop4           
  233.         release
  234.         hold
  235.  
  236.         load    r0,keyval
  237.         icomp    r0,69
  238.         jumpeq    pressed3
  239.  
  240.         load    r0,0
  241.         load    r1,2
  242.         mov    r3,15
  243.         add3    r0,r0,r3
  244.  
  245.         icomp    r0,230
  246.         jumpl    exit4
  247.           icomp    r0,310
  248.         jumpg    exit4
  249.         icomp    r1,180
  250.         jumpl    exit4
  251.         icomp    r1,192
  252.         jumpg    exit4
  253.  
  254. pressed4     
  255.         hold
  256.         mov    r0,5
  257.         store    r0,4
  258.         wake    0
  259.         killbob
  260.         release
  261.         wake    0
  262.  
  263. exit4        jump    loop4
  264.  
  265. finish4        
  266.  
  267.         release
  268.         animpause
  269.         pause    64
  270.         killbob
  271.  
  272.         release
  273.         die
  274.  
  275.  
  276.  
  277.  
  278. ;*****************************************************************************
  279. ;*****************************************************************************
  280. ; END OF GAL PROGRAM
  281. ;*****************************************************************************
  282. ;*****************************************************************************
  283.  
  284. END
  285.