Home » Archimedes archive » Acorn User » AU 1995-11.adf » !Sherston » Crystal/!Crystal2/Pt0/Start

Crystal/!Crystal2/Pt0/Start

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » AU 1995-11.adf » !Sherston
Filename: Crystal/!Crystal2/Pt0/Start
Read OK:
File size: 120BD bytes
Load address: 0000
Exec address: 0000
File contents
    0REMOSCLIADFS::HardDisc4.$.Crystal2.Finish1.DemoMag.!Crystal2.Pt0.Start
    1
    2
    3LIBRARY "<Crystal2$Dir>.Pt0.Library"
    4vga%=V%
    5IFT%<>2 THEN
    6  IFvga%=1 sprite_height%=2
    7  IFvga%=0 sprite_height%=1
    8  IFvga%=0:MODE12
    9  IFvga%=1:MODE27
   10  PROCpalette
   11ENDIF
   12*fx225,1,0
   13ONERROR:OSCLI"FX229,1":ONERROR OFF:PROCdt|M
   14*KEY5 MODE12:PROCprint_all_sprites
   15REM General running dim's
   16DIM input_disk_name% 256,sp_name_buff% 16
   17DIM pdrect% 16,pdrect2% 16,pdtrans% 16,pdplot% 8,ctrans% 256,paltab% 256
   18DIM input% 16,output% 16,scale% 16
   19REM Animation dim's
   20cann%=4
   21DIManx%(cann%),any%(cann%),anxx%(cann%),anyy%(cann%),an_type%(cann%)                          :REM Space bar animation
   22REM button dim's
   23DIM but%(40,4),but$(40)     :REM but%(#,0)=x
   24                            :REM but%(#,1)=y
   25                            :REM but%(#,2)=length of button
   26                            :REM but%(#,3)=height of button
   27                            :REM but%(#,4)=0=off 1=greyed out 2=on
   28REM game dim's
   29DIM out_wire%(5)
   30DIM out_cir%(8)
   31DIM maze%(20,20)            :REM maximum size of maze 20x20
   32DIM corr%(10,3)             :REM length of corridor (x,1)=left (x,2)=centre (x,3)=right
   33
   34REM main drip=0 other drips=1 to 8 drip pointer=next available start
   35
   36DIM drip%(16,5)  :REM active x,y top number/bottom number/set number
   37                 :REM active = 0 off
   38                 :REM          1 increase
   39                 :REM          2 stable
   40                 :REM          3 decrease
   41DIM drip$(40),string% 256
   42DIM sdrip$(40)
   43DIM sdrip%(40)
   44DIM convey%(9,14):REM  9 positions - 0 height cup fill?  sprite plot1 up....
   45DIM convey$(9,14):REM sprite name up to from 2 to 10
   46DIM drop%(9)
   47DIM prof$(4)
   48DIM prof%(4)
   49DIM coor_table%(2,300)
   50DIM par$(5),heli%(6),parrot%(5,3),parrot_o%(5,3),back$(6)
   51back_col%=129
   52REM bush moving animation
   53DIM sidex%(10),sidey%(10),sp$(10),di%(10),inc%(10)
   54SYS"OS_RemoveCursors"
   55PROCfind_screens
   56PROCpull_variables
   57PROCinitialise_sprite_area
   58IFV%=0 PROCtop_blank:OSCLI"FX112,2":PROCtop_blank:OSCLI"FX112,1"
   59fade$="fade"
   60sa1%=sprite_area1%
   61
   62
   63PROCtitle
   64PROCstart_game
   65PROCgame1
   66PROCmain_game
   67PROCexplore
   68PROCattack
   69PROCtemple_top(1)
   70PROCmaze
   71PROCfinal1
   72error
   73
   74
   75
   76DEFPROCfinal1
   77PROCload_sprites("bulbs")
   78*fx112,2
   79VDU18,0,131,16
   80PROCplot_sprite(0,0,1,1,1,1,"bulds",sprite_area1%)
   81fade$="fade2"
   82PROCfade(0,960,4,0,1,1)
   83PROCpause(200)
   84*fx112,1
   85PROCtext_box(300,800,400,100,1,"Finally....","","" )
   86PROCspace(490,740,0,0)
   87*fx112,2
   88PROCplot_sprite(0,0,1,1,1,1,"comp",sprite_area1%)
   89*fx112,1
   90scr%=((V%-1)*-1)*320*16
   91FORf%=1 TO 80
   92A%=screen_one%+scr%
   93B%=screen_two%+scr%
   94C%=1
   95D%=(V%*240)+239
   96CALLscroll_all%
   97NEXT
   98PROCtext_box(700,560,500,210,2,"...you will need to","learn how to control","different equipment")
   99PROCtext_box(700,320,500,210,2,"before you can stop","Gomez and save the","Crystal Rain Forest.")
  100PROCspace(940,200,0,0)
  101*fx112,2
  102PROCload_sprites("Frontscr")
  103PROCplot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
  104fade$="fade2"
  105PROCtext_box(100,790,1000,90,1,"The complete adventure is available from....","","")
  106PROCtext_box(200,500,800,210,2,"Sherston Software Ltd.","Angel House, Sherston,","Malmesbury, Wiltshire, SN16 OLH.")
  107PROCtext_box(200,340,800,90,2,"Telephone: 01666 840433","","")
  108PROCfade(0,960,4,0,1,1)
  109VDU26
  110*fx112,1
  111PROCdefine_buttons(3)
  112PROCpause(10)
  113REPEAT:MOUSEmx%,my%,mc%:UNTILmc%=0
  114FORmsxf%=1TO10:MOUSEmx%,my%,mc%:NEXT
  115PROCset_new_buttons
  116MOUSEON
  117REPEAT
  118PROCcheck_buttons(0)
  119UNTILselected%>0
  120ENDPROC
  121
  122DEFPROCattack
  123PROCload_sprites("attack")
  124*fx112,2
  125VDU18,0,131,16
  126PROCplot_sprite(190,100,1,1,1,1,"attack",sprite_area1%)
  127fade$="fade"
  128PROCtext_box(100,800,1080,150,2,"You will need to stop the robots","from attacking you.","" )
  129fade$="fade"
  130PROCfade(0,960,4,0,1,1)
  131*FX112,1
  132PROCspace(940,40,0,0)
  133ENDPROC
  134
  135DEFPROCexplore
  136PROCload_sprites("flight")
  137*fx112,2
  138VDU18,0,131,16
  139PROCplot_sprite(4,4,1,1,1,1,"forest",sprite_area1%)
  140fade$="fade"
  141PROCfade(0,960,4,0,1,1)
  142PROCpause(200)
  143PROCtext_box(100,342,1080,150,2,"You will also need to search the","Crystal Rain Forest in a hoverheli.","" )
  144fade$="fade"
  145PROCfade(0,960,4,0,1,1)
  146*FX112,1
  147PROCspace(940,40,0,0)
  148ENDPROC
  149
  150
  151
  152DEFPROCtitle
  153T%=2
  154PROCload_sprites("Frontscr")
  155PROCplot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
  156x%=64:y%=722
  157PROCpause(200)
  158VDU24,x%-8;y%-8;x%+518;y%+162;18,0,131,16
  159VDU24,x%;y%;x%+510;y%+154;18,0,128,16,26
  160PROCpri(x%+22,y%+96,"Mission: Control")
  161PROCpri(x%+22,y%+30,"Crystal Rain Forest 2")
  162PROCpause(200)
  163x%=64:y%=480
  164VDU24,x%-8;y%-8;x%+518;y%+162;18,0,131,16
  165VDU24,x%;y%;x%+510;y%+154;18,0,128,16,26
  166PROCpri(x%+22,y%+96,"Designed and written")
  167PROCpri(x%+22,y%+30,"by Simon Hosler.")
  168PROCpause(200)
  169x%=64:y%=280
  170VDU24,x%-8;y%-8;x%+1160;y%+100;18,0,131,16
  171VDU24,x%;y%;x%+1152;y%+92;18,0,128,16,26
  172PROCpri(x%+22,y%+30,"� 1995 Simon Hosler and Sherston Software Ltd.")
  173PROCpause(200)
  174*FX112,2
  175PROCplot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
  176fade$="fade"
  177PROCtext_box(32,500,1216,210,2,"Mission: Control, is an adventure that introduces","control technology in a highly original and","motivating way.")
  178PROCtext_box(100,360,1080,90,2,"Here is a short introduction.","","")
  179PROCfade(0,960,4,0,1,1)
  180*FX112,1
  181PROCspace(940,180,0,0)
  182
  183*FX112,2
  184PROCplot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
  185fade$="fade"
  186PROCfade(0,960,4,0,1,1)
  187PROCplot_sprite(40,412,1,1,1,1,"GOMAZ",sprite_area1%)
  188PROCtext_box(520,600,740,210,2,"This is Gomez, he must be","stopped! He is a danger","to the Crystal Rain Forest." )
  189PROCfade(0,960,4,0,1,1)
  190*FX112,1
  191PROCspace(940,520,0,0)
  192IF TRUE THEN
  193  *FX112,2
  194  PROCtext_box(100,200,1080,170,2,"To stop Gomez and complete this adventure","you will need to do many things.","" )
  195  fade$="fade"
  196  PROCfade(0,960,4,0,1,1)
  197  *FX112,1
  198  PROCspace(940,40,0,0)
  199ENDIF
  200ENDPROC
  201
  202DEFPROCmaze
  203 PROCload_sprites("Toptem")
  204COLOUR4,64,64,64
  205rnd_maze%=RND(3)
  206*FX112,2
  207VDU26,18,0,129,16
  208PROCset_maze("amaze2"+STR$(rnd_maze%)):PROCtemple_map(740,268," "," "," ",150)
  209PROCbox(100,8,1080,260)
  210mazex%=32:mazey%=300
  211direction%=1
  212pos_x%=1
  213pos_y%=1
  214VDU 24,16;256+32;680;948;18,0,131,16
  215PROCdraw_maze(direction%,pos_x%,pos_y%)
  216VDU26
  217PROCpri(240,160,"Try to find the control room inside this")
  218PROCpri(240,90,"jungle temple.")
  219PROCpri(140,66," ")
  220fade$="fade"
  221PROCfade(0,960,4,0,1,1)
  222*FX112,1
  223PROCspace(940,48,0,0)
  224SOUND2,-15,&2500,20
  225PROCbox(100,8,1080,260)
  226PROCpri(200,170,"You are inside the temple.  Which way?")
  227VDU 24,16;256+32;680;948;18,0,131,16
  228PROCinside_maze(1)
  229*RMensure Smbuzz *RMload "<Crystal2$dir>.PT0.sound.Smbuzz"
  230*channelvoice 1 Smbuzz
  231FORf%=448 TO 256 STEP-2
  232  PROCst_pause
  233  VDU24,f%+2;428;450;753;
  234  IFf% MOD 2=0:SOUND1,-15,&2000,10
  235  VDU18,0,131,16
  236  VDU24,254;428;f%;753;
  237  PROCplot_sprite(254-(448-f%),428,1,1,1,1,"dooropen",sa1%)
  238  PROCen_pause(3)
  239NEXT
  240REM PROCbox_ecf(&A0A0A0A0,&0A0A0A0A,0,0,1280,280)
  241VDU24,0;0;1278;270;18,0,129,16
  242PROCbox(20,60,1240,200)
  243PROCpri(150,188,"Well done!")
  244PROCpri(150,118,"You have succeeded in this temple.")
  245SOUND2,-15,&2500,20
  246PROCspace(900,4,0,0)
  247*channelvoice 1 1
  248*RMkill Smbuzz
  249PROCpalette
  250ENDPROC
  251DEFPROCinside_maze(exit%)
  252*RMensure batflap *RMload "<Crystal2$dir>.PT0.sound.batflap"
  253*channelvoice 2 batflap
  254found_door%=0
  255PROCdraw_maze(direction%,pos_x%,pos_y%)
  256REPEAT
  257  VDU26
  258  PROCdefine_buttons(6)
  259  IFFNmove(direction%,pos_x%,pos_y%)=3 but%(3,4)=1 ELSE but%(3,4)=2
  260  REPEAT:MOUSEmx%,my%,mc%:UNTILmc%=0
  261  FORmsxf%=1TO10:MOUSEmx%,my%,mc%:NEXT
  262  PROCset_new_buttons
  263  MOUSEON
  264  REPEAT
  265    PROCcheck_buttons(0)
  266  UNTILselected%>0
  267  IFselected%=3 THEN
  268    temp%=FNmove(direction%,pos_x%,pos_y%)
  269    IFtemp%=0 THEN
  270      tem%=FNmove(direction%,pos_x%-1,pos_y%)
  271      IFtem%=15 THEN
  272        found_door%=1:IFexit%=2:PROCpri(200,100,"Try to find the way out.")
  273      ELSE
  274        pos_x%=pos_x%+look_twox%
  275        pos_y%=pos_y%+look_twoy%
  276        PROCdraw_maze_hidden
  277      ENDIF
  278    ENDIF
  279    IFtemp%=5 found_door%=2:IFexit%=1:PROCpri(200,100,"Try to find the control room.")
  280  ENDIF
  281  IFselected%=1 THEN
  282    *fx112,2
  283    mazex%=640:mazey%=0
  284    PROCdraw_maze(direction%,pos_x%,pos_y%)
  285    direction%=direction%-1:IFdirection%=0:direction%=4
  286    mazex%=0:mazey%=0
  287    PROCdraw_maze(direction%,pos_x%,pos_y%)
  288    *fx112,1
  289    mazex%=32:mazey%=300
  290    FORscr%=640 TO 0 STEP-128
  291      PROCmove_block(screen_two%,scr%,0,screen_one%,mazex%,mazey%,160,160)
  292    NEXT
  293  ENDIF
  294  IFselected%=2 THEN
  295    *fx112,2
  296    mazex%=0:mazey%=0
  297    PROCdraw_maze(direction%,pos_x%,pos_y%)
  298    direction%=direction%+1:IFdirection%=5:direction%=1
  299    mazex%=640:mazey%=0
  300    PROCdraw_maze(direction%,pos_x%,pos_y%)
  301    *fx112,1
  302    mazex%=32:mazey%=300
  303    FORscr%=0 TO 640 STEP128
  304      PROCmove_block(screen_two%,scr%,0,screen_one%,mazex%,mazey%,160,160)
  305    NEXT
  306  ENDIF
  307VDU26:*FX113,1
  308IF count%>5 AND RND(3)=1 PROCbat_flight(268,640)
  309UNTIL found_door%=exit%
  310*channelvoice 2 2
  311*RMkill batflap
  312ENDPROC
  313
  314DEFPROCdraw_maze_hidden
  315*fx112,2
  316mazex%=0:mazey%=0
  317PROCdraw_maze(direction%,pos_x%,pos_y%)
  318*fx112,1
  319mazex%=32:mazey%=300
  320  PROCmove_block(screen_two%,0,0,screen_one%,mazex%,mazey%,160,160)
  321ENDPROC
  322
  323DEFFNmove(d%,px%,py%)
  324  IFd%=1 THEN
  325     look_twox%=0
  326     look_twoy%=+1
  327  ENDIF
  328  IFd%=2 THEN
  329     look_twox%=+1
  330     look_twoy%=0
  331  ENDIF
  332  IFd%=3 THEN
  333     look_twox%=0
  334     look_twoy%=-1
  335  ENDIF
  336  IFd%=4 THEN
  337     look_twox%=-1
  338     look_twoy%=0
  339  ENDIF
  340  =maze%(px%+look_twox%,py%+look_twoy%)
  341  IFmaze%(px%+look_twox%,py%+look_twoy%)=3:=1
  342  IFmaze%(px%+look_twox%,py%+look_twoy%)=5:=3
  343  IFmaze%(px%+look_twox%,py%+look_twoy%)=15:=2
  344  =0
  345
  346DEFPROCtemple_map(xx%,yy%,a$,aa$,aaa$,hi%)
  347  PROCplot_sprite_masked(xx%,yy%,1,1,1,1,"scroll",sa1%)
  348  SYS"OS_SpriteOp",&12F,sprite_area1%,"scroll"
  349  PROCplot_sprite_masked(xx%+400,yy%,1,1,1,1,"scroll",sa1%)
  350  VDU24,xx%+80;yy%+44;xx%+400;yy%+558;18,0,131,16
  351  VDU24,xx%+80;yy%+48;xx%+400;yy%+554;18,0,128,16
  352     PROCpri(xx%+92,yy%+510,a$)
  353     PROCpri(xx%+92,yy%+450,aa$)
  354     PROCpri(xx%+92,yy%+390,aaa$)
  355  x%=xx%+96
  356  FORf%=0 TO width%-1
  357    y%=yy%+hi%
  358    FORff%=0 TO height%-1
  359      IFmaze%(f%,ff%)=3  PROCplot_sprite(x%,y%,1,1,1,1,"map_brick",sa1%)
  360      IFmaze%(f%,ff%)=15 PROCplot_sprite(x%,y%,1,1,1,1,"doorh",sa1%)
  361      IFmaze%(f%,ff%)=9  PROCplot_sprite(x%,y%,1,1,1,1,"cr",sa1%)
  362      IFmaze%(f%,ff%)=5 AND S%<>14 PROCplot_sprite(x%,y%,1,1,1,1,"wi",sa1%)
  363      y%=y%+32
  364    NEXT
  365    x%=x%+32
  366  NEXT
  367ENDPROC
  368
  369DEFPROCbat_flight(bx%,by%)
  370B%=screen_one%:C%=screen_two%:CALLsave_screen%
  371*FX112,2
  372VDU 24,mazex%;mazey%;mazex%+636;mazey%+638;
  373an_x%=bx%:an_y%=by%
  374sel_sprite$="bat3"
  375blank$="blank"
  376PROCstart_anim(blank$)
  377sel%=3
  378sel_sprite$="bat"
  379RESTORE409
  380FORf%=1TO 15
  381 PROCst_pause
  382 IFsel%=4:sel%=3 ELSE sel%=4
  383 sel_sprite$="bat"+STR$(sel%)
  384 an_y%=an_y%+8
  385 READsm%,sd%,ofx%,ofy%
  386 PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
  387 SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
  388 PROCpsm(an_x%+ofx%,an_y%+ofy%,sm%,sm%,sd%,sd%,sel_sprite$,sa1%)
  389 PROCmove_block(screen_two%,220,624,screen_one%,220,624,80,80)
  390 an_xx%=an_x%:an_yy%=an_y%
  391 PROCen_pause(10)
  392NEXT
  393FORf%=1TO 12
  394 PROCst_pause
  395 IFsel%=4:sel%=3 ELSE sel%=4
  396 sel_sprite$="bat"+STR$(sel%)
  397 an_y%=an_y%+16
  398 PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
  399 SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
  400 PROCpsm(an_x%,an_y%,1,1,1,1,sel_sprite$,sa1%)
  401 PROCmove_block(screen_two%,220,624,screen_one%,220,624,80,80)
  402 an_xx%=an_x%:an_yy%=an_y%
  403 IFf% MOD 3=2:SOUND2,-12,&4800,2
  404 PROCen_pause(10)
  405NEXT
  406 PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
  407 PROCmove_block(screen_two%,220,624,screen_one%,220,624,80,80)
  408 *FX112,1
  409DATA1,4,56,20
  410DATA1,4,56,20
  411DATA1,4,56,20
  412DATA1,4,56,20
  413DATA1,2,32,12
  414DATA1,2,32,12
  415DATA1,2,32,12
  416DATA1,2,32,12
  417DATA2,3,24,8
  418DATA2,3,24,8
  419DATA2,3,24,8
  420DATA3,4,16,4
  421DATA3,4,16,4
  422DATA3,4,16,4
  423DATA1,1,0,0
  424PROCend_anim(blank$)
  425ENDPROC
  426
  427DEFPROCdraw_maze(dir%,px%,py%)
  428
  429REM Change the drawing of the corridor to a universal draw in any direction proc.
  430REM The dir% sets up a string$ that will give details of length of corridor and paths off.
  431VDU 24,mazex%;mazey%;mazex%+636;mazey%+640;
  432
  433  IFdir%=1 THEN
  434     look_onex%=-1
  435     look_oney%=0
  436     look_twox%=0
  437     look_twoy%=+1
  438     look_threex%=+1
  439     look_threey%=0
  440  ENDIF
  441
  442  IFdir%=2 THEN
  443     look_onex%=0
  444     look_oney%=+1
  445     look_twox%=+1
  446     look_twoy%=0
  447     look_threex%=0
  448     look_threey%=-1
  449  ENDIF
  450
  451  IFdir%=3 THEN
  452     look_onex%=+1
  453     look_oney%=0
  454     look_twox%=0
  455     look_twoy%=-1
  456     look_threex%=-1
  457     look_threey%=0
  458  ENDIF
  459
  460  IFdir%=4 THEN
  461     look_onex%=0
  462     look_oney%=-1
  463     look_twox%=-1
  464     look_twoy%=0
  465     look_threex%=0
  466     look_threey%=+1
  467  ENDIF
  468
  469     temp_x%=px%:temp_y%=py%:count%=0
  470  REPEAT
  471    count%=count%+1
  472    temp_x%=temp_x%+look_twox%
  473    temp_y%=temp_y%+look_twoy%
  474    corr%(count%,2)=1
  475    newend%=0
  476    IFmaze%(temp_x%,temp_y%)<3 corr%(count%,2)=0
  477    IFmaze%(temp_x%,temp_y%)=5 newend%=1          :REM ouside
  478    IFmaze%(temp_x%,temp_y%)=15 newend%=2         :REM control room
  479    corr%(count%,1)=1:IFmaze%(temp_x%+look_onex%,temp_y%+look_oney%)<3 corr%(count%,1)=0
  480    corr%(count%,3)=1:IFmaze%(temp_x%+look_threex%,temp_y%+look_threey%)<3 corr%(count%,3)=0
  481  UNTIL maze%(temp_x%,temp_y%)>2
  482   IFcount%=1 REM wall
  483   IFcount%>6 PROCplot_sprite(mazex%,mazey%+244,1,1,1,1,"floor6",sa1%)
  484   IFcount%>5 PROCplot_sprite(mazex%,mazey%+232,1,1,1,1,"floor5",sa1%)
  485   IFcount%>4 PROCplot_sprite(mazex%,mazey%+212,1,1,1,1,"floor4",sa1%)
  486   IFcount%>3 PROCplot_sprite(mazex%,mazey%+184,1,1,1,1,"floor3",sa1%)
  487   IFcount%>2 PROCplot_sprite(mazex%,mazey%+132,1,1,1,1,"floor2",sa1%)
  488   IFcount%>1 PROCplot_sprite(mazex%,mazey%+0,1,1,1,1,"floor1",sa1%)
  489  FORf%=1TO6:SYS"OS_SpriteOp",&121,sprite_area1%,"floor"+STR$(f%):NEXT
  490   IFcount%=7 THEN
  491      IFnewend%=0 PROCplot_sprite(mazex%+252,mazey%+256,1,1,1,1,"wall7",sa1%)
  492      IFnewend%=1 PROCplot_sprite(mazex%+252,mazey%+256,40,(40-V%)*(V%+1),65,65,"out4",sa1%)
  493      IFnewend%=2 PROCplot_sprite(mazex%+252,mazey%+256,40,(40-V%)*(V%+1),65,65,"door4",sa1%)
  494   ENDIF
  495   IFcount%=6 THEN
  496      IFnewend%=0 PROCplot_sprite(mazex%+240,mazey%+244,1,1,1,1,"wall6",sa1%)
  497      IFnewend%=1 PROCplot_sprite(mazex%+240,mazey%+244,40,(40-V%)*(V%+1),56,56,"out4",sa1%)
  498      IFnewend%=2 PROCplot_sprite(mazex%+240,mazey%+244,40,(40-V%)*(V%+1),56,56,"door4",sa1%)
  499   ENDIF
  500   IFcount%=5 THEN
  501      IFnewend%=0 PROCplot_sprite(mazex%+230,mazey%+232,1,1,1,1,"wall5",sa1%)
  502      IFnewend%=1 PROCplot_sprite(mazex%+230,mazey%+232,40,(40-V%)*(V%+1),48,48,"out4",sa1%)
  503      IFnewend%=2 PROCplot_sprite(mazex%+230,mazey%+232,40,(40-V%)*(V%+1),48,48,"door4",sa1%)
  504   ENDIF
  505   IFcount%=4 THEN
  506      IFnewend%=0 PROCplot_sprite(mazex%+212,mazey%+208,1,1,1,1,"wall4",sa1%)
  507      IFnewend%=1 PROCplot_sprite(mazex%+212,mazey%+208,1,1,1,1,"out4",sa1%)
  508      IFnewend%=2 PROCplot_sprite(mazex%+212,mazey%+208,1,1,1,1,"door4",sa1%)
  509   ENDIF
  510   IFcount%=3 THEN
  511      IFnewend%=0 PROCplot_sprite(mazex%+182,mazey%+180,1,1,1,1,"wall3",sa1%)
  512      IFnewend%=1 PROCplot_sprite(mazex%+182,mazey%+184,40,(40-V%)*(V%+1),55,55,"out2",sa1%)
  513      IFnewend%=2 PROCplot_sprite(mazex%+182,mazey%+184,40,(40-V%)*(V%+1),55,55,"door2",sa1%)
  514   ENDIF
  515   IFcount%=2 THEN
  516      IFnewend%=0 PROCplot_sprite(mazex%+128,mazey%+128,1,1,1,1,"wall2",sa1%)
  517      IFnewend%=1 PROCplot_sprite(mazex%+128,mazey%+128,1,1,1,1,"out2",sa1%)
  518      IFnewend%=2 PROCplot_sprite(mazex%+128,mazey%+128,1,1,1,1,"door2",sa1%)
  519   ENDIF
  520   IFcount%>6 THEN
  521      PROCplot_sprite(mazex%,mazey%+(640-256),1,1,1,1,"floor6",sa1%)
  522      IFcount%=7 PROCplot_sprite(mazex%,mazey%+(640-256),1,1,1,1,"roof1",sa1%)
  523      IFcorr%(6,1)=1 THEN
  524         PROCplot_sprite_masked(mazex%+242,mazey%+240,1,1,1,1,"side6",sa1%)
  525      ELSE
  526         PROCplot_sprite(mazex%+252-136,mazey%+256,1,1,1,1,"wall7",sa1%)
  527      ENDIF
  528      IFcorr%(6,3)=1 THEN
  529         SYS"OS_SpriteOp",&12F,sprite_area1%,"side6"
  530         PROCplot_sprite_masked(mazex%+386,mazey%+240,1,1,1,1,"side6",sa1%)
  531         SYS"OS_SpriteOp",&12F,sprite_area1%,"side6"
  532      ELSE
  533         PROCplot_sprite(mazex%+252+136,mazey%+256,1,1,1,1,"wall7",sa1%)
  534      ENDIF
  535   ENDIF
  536
  537   IFcount%>5 THEN
  538      PROCplot_sprite(mazex%,mazey%+(640-244),1,1,1,1,"floor5",sa1%)
  539      IFcount%=6 PROCplot_sprite(mazex%,mazey%+(640-244),1,1,1,1,"roof1",sa1%)
  540      IFcorr%(5,1)=1 THEN
  541         PROCplot_sprite_masked(mazex%+228,mazey%+228,1,1,1,1,"side5",sa1%)
  542         REM PROCplot_sprite_masked(mazex%+228,mazey%+228,1,1,1,1,"roof1",sa1%)
  543      ELSE
  544         PROCplot_sprite(mazex%+240-156,mazey%+244,1,1,1,1,"wall6",sa1%)
  545      ENDIF
  546      IFcorr%(5,3)=1 THEN
  547         SYS"OS_SpriteOp",&12F,sprite_area1%,"side5"
  548         PROCplot_sprite_masked(mazex%+396,mazey%+228,1,1,1,1,"side5",sa1%)
  549         SYS"OS_SpriteOp",&12F,sprite_area1%,"side5"
  550      ELSE
  551         PROCplot_sprite(mazex%+240+156,mazey%+244,1,1,1,1,"wall6",sa1%)
  552      ENDIF
  553   ENDIF
  554
  555   IFcount%>4 THEN
  556      PROCplot_sprite(mazex%,mazey%+(640-232),1,1,1,1,"floor4",sa1%)
  557      IFcount%=5 PROCplot_sprite(mazex%,mazey%+(640-232),1,1,1,1,"roof1",sa1%)
  558      IFcorr%(4,1)=1 THEN
  559         PROCplot_sprite_masked(mazex%+212,mazey%+208,1,1,1,1,"side4",sa1%)
  560      ELSE
  561         PROCplot_sprite(mazex%+230-180,mazey%+232,1,1,1,1,"wall5",sa1%)
  562      ENDIF
  563      IFcorr%(4,3)=1 THEN
  564         SYS"OS_SpriteOp",&12F,sprite_area1%,"side4"
  565         PROCplot_sprite_masked(mazex%+410,mazey%+208,1,1,1,1,"side4",sa1%)
  566         SYS"OS_SpriteOp",&12F,sprite_area1%,"side4"
  567      ELSE
  568         PROCplot_sprite(mazex%+230+180,mazey%+232,1,1,1,1,"wall5",sa1%)
  569      ENDIF
  570   ENDIF
  571
  572   IFcount%>3 THEN
  573      PROCplot_sprite(mazex%,mazey%+(640-212),1,1,1,1,"floor3",sa1%)
  574      IFcount%=4 PROCplot_sprite(mazex%,mazey%+(640-212),1,1,1,1,"roof1",sa1%)
  575      IFcorr%(3,1)=1 THEN
  576         PROCplot_sprite_masked(mazex%+182,mazey%+180,1,1,1,1,"side3",sa1%)
  577      ELSE
  578         PROCplot_sprite(mazex%+212-216,mazey%+208,1,1,1,1,"wall4",sa1%)
  579      ENDIF
  580      IFcorr%(3,3)=1 THEN
  581         SYS"OS_SpriteOp",&12F,sprite_area1%,"side3"
  582         PROCplot_sprite_masked(mazex%+428,mazey%+180,1,1,1,1,"side3",sa1%)
  583         SYS"OS_SpriteOp",&12F,sprite_area1%,"side3"
  584      ELSE
  585         PROCplot_sprite(mazex%+212+216,mazey%+208,1,1,1,1,"wall4",sa1%)
  586      ENDIF
  587   ENDIF
  588
  589   IFcount%>2 THEN
  590      PROCplot_sprite(mazex%,mazey%+(640-184),1,1,1,1,"floor2",sa1%)
  591      IFcount%=3 PROCplot_sprite(mazex%,mazey%+(640-184),1,1,1,1,"roof1",sa1%)
  592      IFcorr%(2,1)=1 THEN
  593         PROCplot_sprite_masked(mazex%+130,mazey%+128,1,1,1,1,"side2",sa1%)
  594      ELSE
  595         PROCplot_sprite(mazex%+182-278,mazey%+180,1,1,1,1,"wall3",sa1%)
  596      ENDIF
  597      IFcorr%(2,3)=1 THEN
  598         SYS"OS_SpriteOp",&12F,sprite_area1%,"side2"
  599         PROCplot_sprite_masked(mazex%+458,mazey%+128,1,1,1,1,"side2",sa1%)
  600         SYS"OS_SpriteOp",&12F,sprite_area1%,"side2"
  601      ELSE
  602         PROCplot_sprite(mazex%+182+278,mazey%+180,1,1,1,1,"wall3",sa1%)
  603      ENDIF
  604   ENDIF
  605
  606   IFcount%>1 THEN
  607      PROCplot_sprite(mazex%,mazey%+(640-132),1,1,1,1,"floor1",sa1%)
  608      IFcount%=2 PROCplot_sprite(mazex%,mazey%+(640-132),1,1,1,1,"roof1",sa1%)
  609      IFcorr%(1,1)=1 THEN
  610         PROCplot_sprite_masked(mazex%+0,mazey%+0,1,1,1,1,"side1",sa1%)
  611      ELSE
  612         PROCplot_sprite(mazex%+128-384,mazey%+128,1,1,1,1,"wall2",sa1%)
  613      ENDIF
  614      IFcorr%(1,3)=1 THEN
  615         SYS"OS_SpriteOp",&12F,sprite_area1%,"side1"
  616         PROCplot_sprite_masked(mazex%+510,mazey%+0,1,1,1,1,"side1",sa1%)
  617         SYS"OS_SpriteOp",&12F,sprite_area1%,"side1"
  618      ELSE
  619         PROCplot_sprite(mazex%+128+384,mazey%+128,1,1,1,1,"wall2",sa1%)
  620      ENDIF
  621   ENDIF
  622
  623   IFcount%=1 THEN
  624      IFnewend%=0 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"wall2",sa1%)
  625      IFnewend%=1 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"out2",sa1%)
  626      IFnewend%=2 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"door2",sa1%)
  627   ENDIF
  628
  629   IFcount%=1 THEN
  630      IFnewend%=0 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"wall2",sa1%)
  631      IFnewend%=1 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"out2",sa1%)
  632      IFnewend%=2 PROCplot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"door2",sa1%)
  633   ENDIF
  634
  635   IFcount%>1 THEN
  636     IFmaze%(px%+look_twox%+look_twox%,py%+look_twoy%+look_twoy%)=2 THEN
  637       PROCplot_sprite_masked(mazex%+300,mazey%+436,1,1,1,1,"bat2",sa1%)
  638       PROCplot_sprite_masked(mazex%+200,mazey%+436,1,1,1,1,"bat2",sa1%)
  639       PROCplot_sprite_masked(mazex%+230,mazey%+440,1,1,1,1,"bat2",sa1%)
  640       PROCplot_sprite_masked(mazex%+420,mazey%+436,1,1,1,1,"bat2",sa1%)
  641     ENDIF
  642   ENDIF
  643   IFmaze%(px%+look_twox%,py%+look_twoy%)=2 THEN
  644     PROCplot_sprite_masked(mazex%+260,mazey%+426,1,1,1,1,"bat1",sa1%)
  645     PROCplot_sprite_masked(mazex%+110,mazey%+426,1,1,1,1,"bat1",sa1%)
  646     PROCplot_sprite_masked(mazex%+150,mazey%+430,1,1,1,1,"bat1",sa1%)
  647     PROCplot_sprite_masked(mazex%+460,mazey%+426,1,1,1,1,"bat1",sa1%)
  648   ENDIF
  649   IFcount%>1 THEN
  650     IFmaze%(px%+look_twox%+look_twox%,py%+look_twoy%+look_twoy%)=1 THEN
  651       PROCplot_sprite_masked(mazex%+160,mazey%+436,1,1,1,1,"bat2",sa1%)
  652       PROCplot_sprite_masked(mazex%+180,mazey%+436,1,1,1,1,"bat2",sa1%)
  653       PROCplot_sprite_masked(mazex%+210,mazey%+440,1,1,1,1,"bat2",sa1%)
  654       PROCplot_sprite_masked(mazex%+400,mazey%+436,1,1,1,1,"bat2",sa1%)
  655       PROCplot_sprite_masked(mazex%+420,mazey%+436,1,1,1,1,"bat2",sa1%)
  656     ENDIF
  657   ENDIF
  658   IFmaze%(px%+look_twox%,py%+look_twoy%)=1 THEN
  659     PROCplot_sprite_masked(mazex%+80,mazey%+426,1,1,1,1,"bat1",sa1%)
  660     PROCplot_sprite_masked(mazex%+110,mazey%+426,1,1,1,1,"bat1",sa1%)
  661     PROCplot_sprite_masked(mazex%+150,mazey%+430,1,1,1,1,"bat1",sa1%)
  662     PROCplot_sprite_masked(mazex%+430,mazey%+426,1,1,1,1,"bat1",sa1%)
  663     PROCplot_sprite_masked(mazex%+470,mazey%+426,1,1,1,1,"bat1",sa1%)
  664   ENDIF
  665  FORf%=1TO6:SYS"OS_SpriteOp",&121,sprite_area1%,"floor"+STR$(f%):NEXT
  666ENDPROC
  667
  668DEFPROCset_maze(m$)
  669  SYS"OS_SpriteOp",&128,sprite_area1%,m$ TO r0,r1,r2,width%,height%
  670  FORf%=0 TO width%-1
  671    FORff%=0 TO height%-1
  672      SYS"OS_SpriteOp",&129,sprite_area1%,m$,f%,ff% TO r0,r1,r2,r3,r4,colour%
  673      maze%(f%,ff%)=colour%
  674    NEXT
  675  NEXT
  676ENDPROC
  677
  678DEFPROCstart_game
  679PROCload_sprites("sp_start2")
  680PROCload_picture(picture1%+(1024*15),"wall2")
  681*FX112,2
  682COLOUR129
  683CLS
  684IFV%=0 PROCtop_blank
  685A%=picture1%+(1024*15):CALLdraw%
  686FORf%=0TO8 STEP2
  687  MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
  688NEXT
  689PROCbox(200,700,880,200)
  690fade$="fade"
  691 PROCpri(248,820,"You will need to fix complicated")
  692 PROCpri(248,750,"machines with no instructions.")
  693IFV%=0 PROCtop_blank
  694PROCfade(0,960,4,0,1,1)
  695COLOUR129
  696CLS
  697A%=picture1%+(1024*15):CALLdraw%
  698FORf%=0TO8 STEP2
  699  MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
  700NEXT
  701*FX112,1
  702PROCspace(900,9,0,0)
  703B%=screen_two%:C%=screen_one%:CALLsave_screen%
  704IFV%=0 PROCtop_blank
  705PROCpause(100)
  706PROCbox(200,700,880,200)
  707PROCpri(238,820,"This machine should fill a cup with")
  708PROCpri(238,750,"juice and then put a lid on.")
  709PROCspace(900,9,0,0)
  710PROCbox(840,480,200,200)
  711PROCplot_sprite(870,506,1,1,1,1,"explain1",sprite_area1%)
  712PROCpause(200)
  713PROCplot_sprite(870,506,1,1,1,1,"explain2",sprite_area1%)
  714PROCpause(200)
  715PROCplot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
  716PROCpause(200)
  717PROCbox(200,700,880,200)
  718PROCpri(448,780,"Have a try now!")
  719PROCspace(900,9,0,0)
  720ENDPROC
  721
  722DEFPROCtemple_top(site%)
  723fade$="fade"
  724par$(1)="par1":par$(2)="par2":par$(3)="par1":par$(4)="par3"
  725heli%(1)=30+68:heli%(2)=40+68:heli%(3)=48+68:heli%(4)=60+68:heli%(5)=48+68:heli%(6)=40+68
  726IFsite%=1 PROCload_sprites("land")
  727*fx113,1
  728*fx112,2
  729PROCclear
  730IFV%=0 PROCtop_blank:OSCLI"FX112,1":PROCtop_blank:OSCLI"FX112,2"
  731VDU24,152;120;1126;926;18,0,131,16,26
  732IFsite%=1 PROCplot_sprite(160,128,1,1,1,1,"LAND",sa1%):land%=40
  733PROCfade(0,960,4,0,1,1)
  734PROCbox(100,10,1080,90)
  735PROCpri(150,42,"You will need to visit remote places,")
  736*FX112,1
  737PROCbox(100,10,1080,90)
  738PROCpri(150,42,"You will need to visit remote places,")
  739VDU24,160;128;1118;922;
  740*RMensure Smhover *RMload "<Crystal2$dir>.PT0.sound.Smhover"
  741*channelvoice 1 Smhover
  742an_x%=380:an_y%=912:ho%=1
  743an_x2%=380:an_y2%=908
  744sel_sprite$="slide1"
  745sel_sprite2$="slide1"
  746PROCstart_anim("blank")
  747PROCend_anim("blank")
  748PROCstart_anim2("blank2")
  749FORfly%=120TO1 STEP-1
  750 PROCst_pause
  751 *FX113,1
  752 *FX112,2
  753 IFfly%>land% an_y%=an_y%-8
  754 IFfly%=land%-1 an_y%=an_y%-4
  755 PROCanim("blank")
  756 PROCplot_sprite(an_x%+heli%(ho%),an_y%+284,1,1,1,1,"nb"+STR$(ho%),sprite_area1%)
  757 IFsite%=1 PROCplot_sprite_masked(160+206,128+624,1,1,1,1,"leaf",sprite_area1%)
  758 ho%=ho%+1:IFho%=7:ho%=1
  759 PROCen_pause(5-Z%)
  760 IFfly%<land% PROCpause(30/fly%)
  761 PROCst_pause
  762 *FX113,2
  763 *FX112,1
  764 IFfly%>land% an_y2%=an_y2%-8
  765 PROCanim2("blank2")
  766 SOUND1,-15,&4000,10
  767 PROCplot_sprite(an_x2%+heli%(ho%),an_y2%+284,1,1,1,1,"nb"+STR$(ho%),sprite_area1%)
  768 IFsite%=1 PROCplot_sprite_masked(160+206,128+624,1,1,1,1,"leaf",sprite_area1%)
  769 ho%=ho%+1:IFho%=7:ho%=1
  770 PROCen_pause(5-Z%)
  771 IFfly%<land% PROCpause(30/fly%)
  772NEXT
  773*FX112,1
  774*FX113,1
  775*channelvoice 1 1
  776*channelvoice 2 2
  777*RMkill SmHover
  778*RMensure jung *RMload "<Crystal2$dir>.PT0.sound.jung"
  779*channelvoice 2 jung
  780 IFsite%=1 THEN
  781  RESTORE786
  782  FORf%=1TO5
  783  READparrot%(f%,1),parrot%(f%,2)
  784  parrot%(f%,0)=RND(4)
  785  back$(f%)=STR$(f%)
  786  NEXT
  787  DATA 430,698,505,809,583,713,607,825,406,845,544,863
  788  sound_t%=TIME
  789  SOUND2,-15,&2500,20
  790  FORf%=1TO5
  791  an_x%=parrot%(f%,1)
  792  an_y%=parrot%(f%,2)
  793  sel_sprite$=par$(parrot%(f%,0))
  794  SYS"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ TO r0,r1,r2
  795  width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1))
  796  SYS"OS_SpriteOp",&110,sprite_area1%,back$(f%),0,an_x%,an_y%,an_x%+width%,an_y%+height%
  797  PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
  798  parrot_o%(f%,1)=an_x%:parrot_o%(f%,2)=an_y%
  799  NEXT
  800  REPEAT
  801  PROCst_pause
  802  IFsound_t%+450<TIME:sound_t%=TIME:SOUND2,-15,&2500,20
  803  FORf%=1TO5
  804  parrot%(f%,0)=parrot%(f%,0)+1:IFparrot%(f%,0)=5:parrot%(f%,0)=1
  805  parrot%(f%,1)=parrot%(f%,1)+8
  806  parrot%(f%,2)=parrot%(f%,2)+4
  807  an_x%=parrot%(f%,1)
  808  an_y%=parrot%(f%,2)
  809  sel_sprite$=par$(parrot%(f%,0))
  810  PROCplot_sprite_masked(parrot_o%(f%,1),parrot_o%(f%,2),1,1,1,1+vga%,back$(f%),sprite_area1%)
  811  SYS"OS_SpriteOp",&110,sprite_area1%,back$(f%),0,an_x%,an_y%,an_x%+width%,an_y%+height%
  812  PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
  813  parrot_o%(f%,1)=an_x%:parrot_o%(f%,2)=an_y%
  814  NEXT
  815  PROCen_pause(10)
  816  UNTIL parrot%(1,2)>940
  817  VDU26
  818 ENDIF
  819VDU26
  820SOUND2,-15,&2500,20
  821PROCspace(940,32,2,0)
  822PROCbox(100,10,1080,90)
  823PROCpause(50)
  824PROCpri(150,42,"and explore old temples.")
  825PROCspace(940,32,2,0)
  826*channelvoice 2 2
  827*RMKILL jung
  828ENDPROC
  829
  830
  831DEFPROCmain_game
  832*FX112,1
  833PROCmain_info
  834*RMensure juicy *RMload "<Crystal2$dir>.PT0.sound.juicy"
  835*RMensure Smbuzz *RMload "<Crystal2$dir>.PT0.sound.Smbuzz"
  836*RMensure bonk *RMload "<Crystal2$dir>.PT0.sound.bonk"
  837*channelvoice 1 juicy
  838*channelvoice 2 Smbuzz
  839REPEAT
  840  PROCreset_convey
  841  main_x%=64:main_y%=900 :REM left top
  842  convey_x%=main_x%
  843  drip_pointer%=1
  844  old_drip_ptr%=0
  845  trigger%=0
  846  move%=0
  847  soundcnt%=TIME
  848  cup_count%=1
  849  bottom_height_n%=26
  850  PROCset_drip_sp
  851  test%=1
  852  display_x%=64
  853  display_y%=700
  854  cup_release%=0    :REM 0 off 1 wanting release 2 falling
  855  lid_release%=0    :REM 0 off 1 wanting release 2 falling
  856  cup_drop%=0
  857  lid_drop%=0
  858  an_con_move%=48
  859  con_move%=0
  860  overload%=0
  861  ok_lid%=0:ok_cup%=0
  862  cup_t%=TIME
  863  lid_t%=TIME
  864  move_t%=TIME
  865  *FX112,1
  866  PROCdisplay
  867  *FX112,2
  868  CLS
  869  PROCgrid
  870  MOUSEON
  871  attempt%=0:ok$=""
  872  PROCmain_two
  873  PROCout_butts(0)
  874  REPEAT
  875
  876    PROCst_pause
  877    drip%(0,5)=drip%(0,5)+1:IFdrip%(0,5)=3 drip%(0,5)=1
  878    *FX112,1
  879    REM PRINTTAB(0,0);ok_cup%,ok_lid%
  880    PROCout_status
  881    *FX112,2
  882    PROClook_at_wires
  883    PROCmove_block(screen_two%,640,an_con_move%,screen_two%,main_x%,48+main_y%-(64*7),144,100)
  884    PROCrelease
  885    PROCstart_move
  886    PROCconvey
  887    PROCcheck_main
  888    PROCput_in_sprites
  889    PROCcheck_drips
  890    PROCdrop_ends
  891    PROCmove_block(screen_two%,main_x%,48+main_y%-(64*7),screen_one%,display_x%,48+display_y%-(64*7),144,100)
  892    *fx112,1
  893    PROCen_pause(20)
  894  UNTIL attempt%=1 OR overload%=1
  895IFattempt%=1 THEN
  896   *FX112,2
  897   COLOUR129
  898   CLS
  899   IFV%=0 PROCtop_blank
  900   A%=picture1%+(1024*15):CALLdraw%
  901   FORf%=0TO8 STEP2
  902    MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
  903   NEXT
  904    PROCplot_sprite_masked(308,100,1,1,1,1,"boy",sprite_area1%)
  905    PROCplot_sprite_masked(436,100,1,1,1,1,"girl",sprite_area1%)
  906   FORff%=3 TO convey%(9,2)
  907    sprite$=convey$(9,ff%)
  908    IFsprite$="cup":sprite$=sprite$+STR$(convey%(9,1))
  909    PROCplot_sprite_masked(510,668-(convey%(9,ff%)*16),1,1,1,1,sprite$,sprite_area1%)
  910   NEXT
  911   ok$="no"
  912   IFconvey%(9,2)=4 THEN
  913     IFconvey$(9,3)="cup6" AND convey$(9,4)="lid" ok$="ok"
  914     IFconvey$(9,3)="cup5" AND convey$(9,4)="lid" ok$="ok"
  915     IFconvey$(9,3)="cup4" AND convey$(9,4)="lid" ok$="not"
  916     IFconvey$(9,3)="cup3" AND convey$(9,4)="lid" ok$="not"
  917     IFconvey$(9,3)="cup2" AND convey$(9,4)="lid" ok$="not"
  918   ENDIF
  919   PROCbox(200,700,880,200)
  920   IF ok$="no" THEN
  921     PROCpri(218,820,"This is not correct!")
  922     PROCpri(218,750,"Look at what it should be.")
  923     PROCbox(840,480,200,200)
  924     SYS"OS_SpriteOp",&121,sprite_area1%,"arrow"
  925     PROCplot_sprite(790,726,1,1,1,1,"arrow",sprite_area1%)
  926     PROCplot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
  927     SYS"OS_SpriteOp",&121,sprite_area1%,"arrow"
  928   ENDIF
  929   IF ok$="not" THEN
  930     PROCpri(218,820,"There is not enough drink in")
  931     PROCpri(218,750,"this cup.")
  932     PROCbox(840,480,200,200)
  933     PROCplot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
  934   ENDIF
  935   IF ok$="ok" THEN
  936     PROCpri(228,820,"Well done.")
  937     PROCpri(228,750,"The machine has made a drink.")
  938   ENDIF
  939   B%=screen_two%:C%=screen_one%:CALLsave_screen%
  940ENDIF
  941IFoverload%=1 AND attempt%=0 THEN
  942   *fx112,1
  943   PROCbox(200,400,880,200)
  944   PROCpri(218,520,"Danger! Do not put too much on the")
  945   PROCpri(218,450,"conveyer belt.")
  946ENDIF
  947 *FX112,1
  948 PROCspace(900,9,0,0)
  949 PROCreset_drips
  950 IF ok$<>"ok" PROCdraw_in_wires
  951 IF ok$<>"ok" B%=screen_two%:C%=screen_one%:CALLsave_screen%
  952 COLOUR128
  953UNTIL ok$="ok"
  954*FX112,1
  955*FX113,1
  956   *channelvoice 1 1
  957   *RMkill juicy
  958   *channelvoice 2 2
  959   *RMkill Smbuzz
  960   *RMkill bonk
  961ENDPROC
  962
  963DEFPROCreset_drips
  964FORf%=0TO5
  965FORff%=0TO5:drip%(f%,ff%)=0:NEXT:NEXT
  966ENDPROC
  967
  968DEFPROClook_at_wires
  969IFout_cir%(9-out_wire%(1))=1 AND cup_release%=0 AND lid_release%=0 AND move_t%+100<TIME THEN
  970   con_move%=1:move_t%=TIME
  971ENDIF
  972IFout_cir%(9-out_wire%(2))=1 AND cup_release%=0 AND lid_release%=0 AND move_t%+100<TIME THEN
  973   con_move%=-1:move_t%=TIME
  974ENDIF
  975IFout_cir%(9-out_wire%(5))=1 AND cup_release%=0 AND cup_t%+400<TIME AND move%=0 AND ok_cup%=0 THEN
  976   cup_release%=1:cup_t%=TIME
  977ENDIF
  978IFout_cir%(9-out_wire%(4))=1 AND drip%(0,0)=0 THEN
  979   PROCstart_main
  980ENDIF
  981IFout_cir%(9-out_wire%(4))=0 AND (drip%(0,0)=1 OR drip%(0,0)=2) THEN
  982   PROCstop_main
  983ENDIF
  984IFout_cir%(9-out_wire%(3))=1 AND lid_release%=0 AND lid_t%+400<TIME AND move%=0 AND ok_lid%=0 THEN
  985   lid_release%=1:lid_t%=TIME
  986ENDIF
  987IFout_cir%(9-out_wire%(2))=1 AND  out_cir%(9-out_wire%(1))=1 THEN
  988move_t%=TIME
  989ok_lid%=0:ok_cup%=0
  990ENDIF
  991IFout_cir%(9-out_wire%(2))=0 AND out_cir%(9-out_wire%(1))=0 THEN
  992ok_lid%=0:ok_cup%=0
  993ENDIF
  994
  995ENDPROC
  996
  997DEFPROCout_butts(so%)
  998total_but%=8
  999FORf%=1 TO total_but%
 1000but%(f%,0)=1190
 1001but%(f%,1)=770-((f%-1)*96)
 1002but%(f%,2)=35
 1003but%(f%,3)=40
 1004but%(f%,4)=0
 1005out_cir%(f%)=0
 1006NEXT
 1007FORf%=1 TO total_but%
 1008   PROCplot_sprite(but%(f%,0),but%(f%,1),1,1,1,1,"on"+STR$(out_cir%(f%)),sprite_area1%)
 1009   IFso%=1 :PROCpause(10)
 1010NEXT
 1011ENDPROC
 1012
 1013
 1014DEFPROCout_status
 1015sel%=0
 1016MOUSEmx%,my%,mc%
 1017FORbut_n%=1 TO total_but%
 1018   IFmx%<but%(but_n%,0)+but%(but_n%,4) OR mx%>(but%(but_n%,0)+but%(but_n%,2))+but%(but_n%,4) OR my%<but%(but_n%,1) OR my%>(but%(but_n%,1)+but%(but_n%,3))THEN
 1019   ELSE
 1020      IFmc%=4:sel%=but_n%
 1021   ENDIF
 1022NEXT
 1023IFsel%=0 ENDPROC
 1024   *channelvoice 2 Smbuzz
 1025   SOUND2,-15,1,1
 1026IFout_cir%(sel%)=0:out_cir%(sel%)=1:but%(sel%,4)=36: ELSE out_cir%(sel%)=0:but%(sel%,4)=0
 1027
 1028PROCplot_sprite(but%(sel%,0),but%(sel%,1),1,1,1,1,"on"+STR$(out_cir%(sel%)),sprite_area1%)
 1029PROCplot_sprite_masked(but%(sel%,0)-122,but%(sel%,1),1,1,1,1,"led"+STR$(out_cir%(sel%)),sprite_area1%)
 1030ENDPROC
 1031
 1032DEFPROCstart_move
 1033IFcon_move%=0 OR move%>0:ENDPROC
 1034IFcup_release%<>0 OR lid_release%<>0:ENDPROC
 1035move%=1
 1036move_dir%=con_move%
 1037move_num%=0
 1038ENDPROC
 1039
 1040DEFPROCdrop_ends
 1041  IFconvey%(1,2)>0 THEN
 1042    FORf%=3 TO convey%(1,2)
 1043       convey%(1,f%)=convey%(1,f%)+2
 1044    NEXT
 1045      IFconvey%(1,3)>30 THEN
 1046         convey%(1,0)=0:convey%(1,1)=0:convey%(1,2)=0:convey%(1,3)=0
 1047      ENDIF
 1048  ENDIF
 1049  IFconvey%(9,2)>0 THEN
 1050    FORf%=3 TO convey%(9,2)
 1051       convey%(9,f%)=convey%(9,f%)+1
 1052    NEXT
 1053      IFconvey%(9,3)>25 THEN
 1054         attempt%=1
 1055      ENDIF
 1056  ENDIF
 1057ENDPROC
 1058
 1059DEFPROCconvey
 1060IFmove%=0:ENDPROC
 1061*channelvoice 2 Smbuzz
 1062SOUND2,-15,&2000,20
 1063IFmove_num%<4 OR (move_num%>4 AND move_num%<8) THEN
 1064  convey_x%=convey_x%+(move_dir%*8)
 1065  drip%(drip_pointer%,1)=drip%(drip_pointer%,1)+(move_dir%*8)
 1066  IFold_drip_ptr%>0 drip%(old_drip_ptr%,1)=drip%(old_drip_ptr%,1)+(move_dir%*8)
 1067  move_num%=move_num%+1
 1068  IFan_con_move%=448:an_con_move%=48 ELSE an_con_move%=448
 1069ENDIF
 1070IFmove_num%=4 THEN
 1071   IFold_drip_ptr%>0:drip%(old_drip_ptr%,0)=3
 1072   trigger%=0
 1073   IFmove_dir%=+1 THEN
 1074      FORf%=9TO1STEP-1
 1075       FORff%=0 TO 10
 1076        convey%(f%,ff%)=convey%(f%-1,ff%)
 1077        convey$(f%,ff%)=convey$(f%-1,ff%)
 1078       NEXT:NEXT
 1079       convey_x%=convey_x%-56
 1080   ENDIF
 1081   IFmove_dir%=-1 THEN
 1082      FORf%=0TO8STEP1
 1083       FORff%=0 TO 10
 1084        convey%(f%,ff%)=convey%(f%+1,ff%)
 1085        convey$(f%,ff%)=convey$(f%+1,ff%)
 1086       NEXT:NEXT
 1087       convey_x%=convey_x%+56
 1088   ENDIF
 1089   move_num%=move_num%+1
 1090   IFdrip%(0,0)>0 THEN
 1091     IFconvey%(5,2)=0 THEN
 1092      drop%=20
 1093     ELSE
 1094      last%=convey%(5,convey%(5,2))
 1095      last$=convey$(5,convey%(5,2))
 1096      IF LEFT$(last$,3)="cup" add%=6 ELSE add%=1
 1097      drop%=last%-add%
 1098     ENDIF
 1099      IFdrip%(0,0)=2 drip%(0,0)=1
 1100      drip%(0,1)=main_x%+(64*4)
 1101      drip%(0,2)=main_y%
 1102 REM      drip%(0,3)=1       :REM top
 1103      drip%(0,4)=drop%   :REM bottom
 1104      drip%(0,5)=1       :REM set number
 1105   ENDIF
 1106ENDIF
 1107IFmove_num%=8 THEN
 1108  move_num%=0
 1109  move%=0
 1110  con_move%=0
 1111  ok_cup%=0
 1112  ok_lid%=0
 1113ENDIF
 1114ENDPROC
 1115
 1116DEFPROCstart_main
 1117drip%(0,0)=1       :REM increse
 1118drip%(0,1)=main_x%+(64*4)
 1119drip%(0,2)=main_y%
 1120drip%(0,3)=1       :REM top
 1121drip%(0,4)=1       :REM bottom
 1122drip%(0,5)=1       :REM set number
 1123IF old_drip_ptr%>0 drip%(old_drip_ptr%,0)=3
 1124ENDPROC
 1125
 1126DEFPROCstop_main
 1127drip%(0,0)=3
 1128ENDPROC
 1129
 1130DEFPROCreset_convey
 1131FORf%=0TO9
 1132convey%(f%,0)=20
 1133convey%(f%,1)=0
 1134convey%(f%,2)=0
 1135NEXT
 1136REM  PROCput_cups
 1137ENDPROC
 1138
 1139DEFPROCput_cups
 1140convey%(1,0)=19
 1141convey%(1,1)=1
 1142convey%(1,2)=3
 1143convey%(1,3)=20
 1144convey$(1,3)="cup3"
 1145
 1146convey%(5,0)=13  :REM units of 16os down from main_y%
 1147convey%(5,1)=1
 1148convey%(5,2)=4   :REM position last sprites ie number 3 is first 4 second
 1149convey%(5,3)=20  :REM first sprite
 1150convey$(5,3)="cup2"
 1151convey%(5,4)=14  :REM second sprite
 1152convey$(5,4)="cup"
 1153ENDPROC
 1154
 1155DEFPROCrelease
 1156  IFmove%<>2 AND cup_release%=1 AND ok_cup%=0 THEN
 1157    cup_release%=2
 1158    ok_cup%=1
 1159    IFconvey%(3,2)=0 THEN
 1160    *channelvoice 2 Smbuzz
 1161    SOUND2,-15,&2000,1
 1162      convey%(3,2)=3
 1163      convey%(3,3)=20
 1164      cup_drop%=20
 1165    ELSE
 1166      last%=convey%(3,convey%(3,2))
 1167      last$=convey$(3,convey%(3,2))
 1168      IF LEFT$(last$,3)="cup" add%=6 ELSE add%=1
 1169      IF last$="cup" convey$(3,convey%(3,2))="cup"+STR$(convey%(3,1)):convey%(3,1)=0
 1170      cup_drop%=last%-add%
 1171      IFcup_drop%<10 overload%=1
 1172      convey%(3,2)=convey%(3,2)+1
 1173      IFconvey%(3,2)>6 overload%=1
 1174    ENDIF
 1175    convey%(3,0)=cup_drop%-1     :REM fluid goes down to
 1176    convey%(3,convey%(3,2))=4    :REM first view of cup
 1177    convey%(3,1)=1               :REM cup number1
 1178    convey$(3,convey%(3,2))="cup"
 1179  ENDIF
 1180  IFcup_release%=2 AND cup_drop%=convey%(3,convey%(3,2)) THEN
 1181    *channelvoice 2 bonk
 1182    SOUND2,-15,&3000,20
 1183    cup_release%=0
 1184  ENDIF
 1185
 1186  IFcup_release%=2 THEN
 1187    convey%(3,convey%(3,2))=convey%(3,convey%(3,2))+1
 1188  ENDIF
 1189
 1190  IFmove%<>2 AND lid_release%=1 AND ok_lid%=0 THEN
 1191    lid_release%=2
 1192    ok_lid%=1
 1193    IFconvey%(7,2)=0 THEN
 1194      convey%(7,2)=3
 1195      convey%(7,3)=20
 1196      lid_drop%=20
 1197    ELSE
 1198      last%=convey%(7,convey%(7,2))
 1199      last$=convey$(7,convey%(7,2))
 1200      IF LEFT$(last$,3)="cup" add%=6 ELSE add%=1
 1201      IF last$="cup" convey$(7,convey%(7,2))="cup"+STR$(convey%(7,1)):convey%(7,1)=0
 1202      lid_drop%=last%-add%
 1203      IFlid_drop%<10 overload%=1
 1204      convey%(7,2)=convey%(7,2)+1
 1205      IFconvey%(7,2)>6 overload%=1
 1206    ENDIF
 1207    convey%(7,0)=lid_drop%-1     :REM fluid goes down to
 1208    convey%(7,convey%(7,2))=4    :REM first view of cup
 1209    convey%(7,1)=0               :REM cup number1
 1210    convey$(7,convey%(7,2))="lid"
 1211
 1212  ENDIF
 1213  IFlid_release%=2 AND lid_drop%=convey%(7,convey%(7,2)) THEN
 1214    lid_release%=0
 1215  ENDIF
 1216
 1217  IFlid_release%=2 THEN
 1218    convey%(7,convey%(7,2))=convey%(7,convey%(7,2))+1
 1219  ENDIF
 1220
 1221ENDPROC
 1222
 1223DEFPROCdisplay
 1224PROCplot_sprite_masked(display_x%+(32*3),display_y%,1,1,1,1,"cup_mac1",sprite_area1%)
 1225PROCplot_sprite_masked(display_x%+(32*7),display_y%,1,1,1,1,"drink_mach",sprite_area1%)
 1226PROCplot_sprite_masked(display_x%+(32*11),display_y%,1,1,1,1,"lid_mac1",sprite_area1%)
 1227ENDPROC
 1228
 1229DEFPROCgrid
 1230PROCplot_sprite_masked(704,48,1,1,1,1,"convey1",sprite_area1%)
 1231PROCplot_sprite_masked(704,448,1,1,1,1,"convey0",sprite_area1%)
 1232ENDPROC
 1233
 1234DEFPROCput_in_sprites
 1235FORfff%=1TO9
 1236   IFconvey%(fff%,2)=0 NEXT:ENDPROC
 1237   FORff%=3 TO convey%(fff%,2)
 1238    sprite$=convey$(fff%,ff%)
 1239    IFsprite$="cup":sprite$=sprite$+STR$(convey%(fff%,1))
 1240    PROCplot_sprite_masked(convey_x%+((fff%-1)*64),main_y%-(convey%(fff%,ff%)*16),1,1,1,1,sprite$,sprite_area1%)
 1241   NEXT
 1242NEXT
 1243ENDPROC
 1244
 1245DEFPROCset_drip_sp
 1246RESTORE1248
 1247FORf%=1TO30:READdrip$(f%):NEXT
 1248DATA drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6
 1249RESTORE1253
 1250FORf%=1TO5:READsdrip$(f%),sdrip%(f%):NEXT
 1251FORf%=6TO30:sdrip$(f%)="drip6":sdrip%(f%)=f%-1:NEXT
 1252ENDPROC
 1253DATA drip1,4,drip2,4,drip3,4,drip4,4,drip5,4
 1254ENDPROC
 1255
 1256DEFPROCcheck_main
 1257REM PRINTdrip%(0,0),drip%(0,3),drip%(0,4),drip%(0,4)-drip%(0,3)
 1258REM Update main data
 1259IFdrip%(0,0)=0:ENDPROC
 1260IFsoundcnt%+40<TIME SOUND1,-15,&3000,10:soundcnt%=TIME
 1261IF(drip%(0,0)=1 OR drip%(0,0)=3) AND drip%(0,4)<convey%(5,0) THEN
 1262      drip%(0,4)=drip%(0,4)+1
 1263ENDIF
 1264IFdrip%(0,0)=1 AND drip%(0,4)=convey%(5,0) THEN
 1265      drip%(0,0)=2
 1266ENDIF
 1267IFdrip%(0,4)=convey%(5,0) ANDmove%<>2 ANDtrigger%=0 ANDconvey%(5,1)=0 THEN
 1268      drip%(drip_pointer%,0)=1:REM  start flow
 1269      drip%(drip_pointer%,1)=convey_x%+(64*4)
 1270      drip%(drip_pointer%,2)=main_y%-(16*drip%(0,4))
 1271      drip%(drip_pointer%,3)=1
 1272      drip%(drip_pointer%,4)=1
 1273      drip%(drip_pointer%,5)=1
 1274      old_drip_ptr%=drip_pointer%
 1275      drip_pointer%=drip_pointer%+1:IFdrip_pointer%=5 drip_pointer%=1
 1276      trigger%=1
 1277ENDIF
 1278IFdrip%(0,4)=convey%(5,0) ANDmove%<>2 ANDconvey%(5,1)>0 AND drip%(0,0)>0 THEN
 1279      cup_count%=cup_count%+1
 1280          IFcup_count%>8 THEN
 1281             cup_count%=1
 1282             convey%(5,0)=convey%(5,0)-1
 1283             convey%(5,1)=convey%(5,1)+1
 1284             drip%(0,4)=drip%(0,4)-1
 1285             IFconvey%(5,1)=6 THEN
 1286                 convey%(5,1)=0
 1287                 convey$(5,convey%(5,2))="cup6"
 1288             ENDIF
 1289          ENDIF
 1290ENDIF
 1291IFdrip%(0,0)=3 AND drip%(0,3)<drip%(0,4) THEN
 1292      drip%(0,3)=drip%(0,3)+1
 1293ENDIF
 1294IFdrip%(0,0)=3 AND (drip%(0,3)>drip%(0,4) OR drip%(0,3)=drip%(0,4)) THEN
 1295      drip%(0,0)=0
 1296      IFold_drip_ptr%>0:drip%(old_drip_ptr%,0)=3
 1297      trigger%=0
 1298ENDIF
 1299FORf%=drip%(0,3) TO drip%(0,4)
 1300PROCplot_sprite_masked(drip%(0,1),drip%(0,2)-(f%*16),1,1,1,1,STR$(drip%(0,5))+drip$(f%),sprite_area1%)
 1301NEXT
 1302ENDPROC
 1303
 1304DEFPROCcheck_drips
 1305FORff%=1 TO 4
 1306IFdrip%(ff%,0)=0:NEXT:ENDPROC
 1307IF(drip%(ff%,0)=1 OR drip%(ff%,0)=3) AND drip%(ff%,4)<bottom_height_n% THEN
 1308      drip%(ff%,4)=drip%(ff%,4)+1
 1309ENDIF
 1310IFdrip%(ff%,0)=1 AND drip%(ff%,4)=bottom_height_n% THEN
 1311      drip%(ff%,0)=2
 1312ENDIF
 1313IFdrip%(ff%,0)=3 AND drip%(ff%,3)<drip%(ff%,4) THEN
 1314      drip%(ff%,3)=drip%(ff%,3)+1
 1315ENDIF
 1316IFdrip%(ff%,0)=3 AND drip%(ff%,3)=drip%(ff%,4) THEN
 1317      drip%(ff%,0)=0
 1318ENDIF
 1319FORf%=drip%(ff%,3) TO drip%(ff%,4)
 1320PROCplot_sprite_masked(drip%(ff%,1),drip%(ff%,2)-(sdrip%(f%)*16),1,1,1,1,STR$(drip%(0,5))+sdrip$(f%),sprite_area1%)
 1321NEXT
 1322NEXT
 1323
 1324ENDPROC
 1325
 1326
 1327DEFPROCintro1
 1328*FX112,2
 1329an%=4
 1330ann%=5
 1331GCOL0,3
 1332FORf%=0TO8 STEP2
 1333  MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
 1334NEXT
 1335PROCplot_sprite(100,616,1,1,1,1,"r"+STR$(an%),sprite_area1%)
 1336PROCplot_sprite(480,616,1,1,1,1,"r"+STR$(ann%),sprite_area1%)
 1337PROCplot_sprite_masked(800,732,1,1,1,1,"knife1",sprite_area1%)
 1338PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1339fade$="fade"
 1340IFV%=0 PROCtop_blank:OSCLI"FX112,2":PROCtop_blank:OSCLI"FX112,1"
 1341PROCfade(0,960,4,0,1,1)
 1342an_t%=TIME
 1343*fx112,1
 1344PROCbox(40,46,1200,94)
 1345PROCpri(70,78,"Professor Roberts will be along very soon.")
 1346PROCspace(1024,62,1,0)
 1347PROCbox(40,46,1200,94)
 1348PROCpause(40)
 1349PROCpri(70,78,"He is just finishing an experiment.")
 1350PROCspace(1024,62,1,0)
 1351B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1352*fx112,2
 1353*RMensure puff *RMload "<Crystal2$dir>.PT0.sound.puff"
 1354*RMensure explode *RMload "<Crystal2$dir>.PT0.sound.explode"
 1355*channelvoice 1 explode
 1356*channelvoice 2 explode
 1357REM explode
 1358*fx112,1
 1359f%=1:inc%=1
 1360SOUND1,-15,&2000,2
 1361REPEAT
 1362PROCst_pause
 1363IFf%=2 SOUND2,-15,&1600,2
 1364PROCplot_sprite(32,188,1,1,1,1,"flash"+STR$(f%),sa1%)
 1365PROCen_pause(10)
 1366f%=f%+inc%
 1367IFf%=5 inc%=-1:f%=3
 1368UNTILf%=0
 1369PROCplot_sprite(32,188,1,1,1,1,"flash5",sa1%)
 1370   PROCplot_sprite(100,616,1,1,1,1,"r9",sprite_area1%)
 1371   PROCplot_sprite(480,616,1,1,1,1,"r9",sprite_area1%)
 1372PROCpause(10)
 1373*channelvoice 1 puff
 1374   SOUND1,-15,&2000,30
 1375   PROCplot_sprite(210,676,1,1,1,1,"s1",sprite_area1%)
 1376   PROCplot_sprite(590,676,1,1,1,1,"s1",sprite_area1%)
 1377PROCpause(40)
 1378   PROCplot_sprite(210,676,1,1,1,1,"s3",sprite_area1%)
 1379   PROCplot_sprite(590,676,1,1,1,1,"s3",sprite_area1%)
 1380PROCpause(40)
 1381   PROCplot_sprite(210,676,1,1,1,1,"s4",sprite_area1%)
 1382   PROCplot_sprite(590,676,1,1,1,1,"s4",sprite_area1%)
 1383PROCpause(40)
 1384   PROCplot_sprite(210,676,1,1,1,1,"s5",sprite_area1%)
 1385   PROCplot_sprite(590,676,1,1,1,1,"s5",sprite_area1%)
 1386PROCpause(40)
 1387   PROCplot_sprite(210,676,1,1,1,1,"s6",sprite_area1%)
 1388   PROCplot_sprite(590,676,1,1,1,1,"s6",sprite_area1%)
 1389PROCpause(100)
 1390B%=screen_one%:C%=screen_two%:CALLsave_screen%
 1391PROCpause(100)
 1392f%=1:inc%=1
 1393*channelvoice 1 explode
 1394*RMensure door *RMload "<Crystal2$dir>.PT0.sound.door"
 1395*RmKill puff
 1396SOUND1,-15,&2000,2
 1397REPEAT
 1398PROCst_pause
 1399IFf%=2 SOUND2,-15,&1600,2
 1400PROCplot_sprite(32,188,1,1,1,1,"flash"+STR$(f%),sa1%)
 1401PROCen_pause(10)
 1402f%=f%+inc%
 1403IFf%=5 inc%=-1:f%=3
 1404UNTILf%=0
 1405PROCplot_sprite(32,188,1,1,1,1,"flash5",sa1%)
 1406*fx113,1
 1407*fx112,2
 1408*channelvoice 1 door
 1409SOUND 1,-15,&1600,2
 1410PROCplot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
 1411PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1412PROCplot_sprite_masked(818,654,1,1,1,1,"knife7",sprite_area1%)
 1413B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1414PROCpause(30)
 1415PROCplot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
 1416PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1417PROCplot_sprite_masked(926,558,1,1,1,1,"knife3",sprite_area1%)
 1418B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1419PROCpause(20)
 1420PROCplot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
 1421PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1422PROCplot_sprite_masked(926,558,1,1,1,1,"knife3",sprite_area1%)
 1423B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1424PROCpause(10)
 1425PROCplot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
 1426PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1427PROCplot_sprite_masked(978,546,1,1,1,1,"knife9",sprite_area1%)
 1428B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1429PROCpause(50)
 1430*RmKill door
 1431*RMensure chop1 *RMload "<Crystal2$dir>.PT0.sound.chop1"
 1432*RMensure bonk *RMload "<Crystal2$dir>.PT0.sound.bonk"
 1433f%=1:inc%=1
 1434*fx113,1
 1435*fx112,1
 1436SOUND1,-15,&2000,2
 1437REPEAT
 1438PROCst_pause
 1439IFf%=2 SOUND2,-15,&1600,2
 1440PROCplot_sprite(32,188,1,1,1,1,"flash"+STR$(f%),sa1%)
 1441PROCen_pause(10)
 1442f%=f%+inc%
 1443IFf%=5 inc%=-1:f%=3
 1444UNTILf%=0
 1445PROCplot_sprite(32,188,1,1,1,1,"flash5",sa1%)
 1446B%=screen_one%:C%=screen_two%:CALLsave_screen%
 1447an_x%=0:an_y%=372
 1448an_x2%=0:an_y2%=372
 1449incx%=32
 1450incy%=4
 1451sel_sprite$="p2"
 1452sel_sprite2$="p2"
 1453REM VDU24,160;128;1118;918;
 1454*fx112,2
 1455PROCstart_anim("blank")
 1456*fx112,1
 1457PROCstart_anim2("blank2")
 1458*channelvoice 1 chop1
 1459FORfly%=0TO22
 1460 PROCst_pause
 1461 an_x%=an_x2%
 1462 an_x%=an_x%+incx%
 1463 an_y%=an_y2%
 1464 an_y%=an_y%+incy%
 1465IFfly%=3 incx%=24:incy%=0
 1466IFfly%=5 incx%=20:incy%=-4:sel_sprite$="p2":sel_sprite2$="p2"
 1467IFfly%=7  incy%=-8
 1468IFfly%=9 incy%=-16
 1469IFfly%=11 incy%=-24
 1470IFfly%=15 incx%=8:incy%=0:sel_sprite$="p4":sel_sprite2$="p4":SOUND1,-15,&2000,2
 1471 *FX113,1
 1472 *FX112,2
 1473 *FX19
 1474 PROCanim("blank")
 1475 PROCen_pause(5)
 1476 PROCst_pause
 1477 an_x2%=an_x%
 1478 an_x2%=an_x2%+incx%
 1479 an_y2%=an_y%
 1480 an_y2%=an_y2%+incy%
 1481 *FX113,2
 1482 *FX112,1
 1483 *FX19
 1484 PROCanim2("blank2")
 1485 PROCen_pause(5)
 1486NEXT
 1487*channelvoice 2 bonk
 1488*FX113,2
 1489*FX112,1
 1490PROCplot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
 1491PROCplot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
 1492B%=screen_one%:C%=screen_two%:CALLsave_screen%
 1493an_x%=978:an_y%=546
 1494an_x2%=978:an_y2%=546
 1495incx%=0
 1496incy%=-6
 1497sel_sprite$="knife9"
 1498sel_sprite2$="knife9"
 1499*fx112,2
 1500PROCstart_anim("blank")
 1501*fx112,1
 1502PROCstart_anim2("blank2")
 1503FORfly%=0TO15
 1504 PROCst_pause
 1505 an_x%=an_x2%
 1506 an_x%=an_x%+incx%
 1507 an_y%=an_y2%
 1508 an_y%=an_y%+incy%
 1509IFfly%=3 incy%=-6
 1510IFfly%=5 incy%=-8
 1511IFfly%=7 incy%=-12
 1512IFfly%=9 incy%=-16
 1513IFfly%=11 incy%=-20
 1514IFfly%=13 incy%=-24
 1515 *FX113,1
 1516 *FX112,2
 1517 *FX19
 1518 PROCanim("blank")
 1519 PROCplot_sprite_masked(964,152,1,1,1,1,"LEG2",sprite_area1%)
 1520 PROCen_pause(2)
 1521 PROCst_pause
 1522 an_x2%=an_x%
 1523 an_x2%=an_x2%+incx%
 1524 an_y2%=an_y%
 1525 an_y2%=an_y2%+incy%
 1526 *FX113,2
 1527 *FX112,1
 1528 *FX19
 1529 PROCanim2("blank2")
 1530 PROCplot_sprite_masked(964,152,1,1,1,1,"LEG2",sprite_area1%)
 1531 PROCen_pause(2)
 1532NEXT
 1533SOUND1,-15,&2000,2
 1534 *FX112,2
 1535PROCpause(100)
 1536PROCplot_sprite(858,320,1,1,1,1,"HEAD1",sprite_area1%)
 1537PROCpause(200)
 1538PROCplot_sprite(802,761,1,1,1,1,"blockcl",sprite_area1%)
 1539FORf%=722 TO 418 STEP-16
 1540 PROCst_pause
 1541  PROCplot_sprite(880,f%,1,1,1,1,"block2",sprite_area1%)
 1542 PROCen_pause(2)
 1543NEXT
 1544SOUND2,-15,&2000,2
 1545PROCplot_sprite(858,320,1,1,1,1,"HEAD2",sprite_area1%)
 1546B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1547PROCpause(50)
 1548*channelvoice 1 1
 1549*channelvoice 2 2
 1550*RMkill bonk
 1551*RMkill chop1
 1552*RMkill explode
 1553*FX112,1
 1554*FX113,1
 1555 butbox_x%=108:butbox_y%=560
 1556 PROCbox(butbox_x%-24,butbox_y%-16,650,388)
 1557 PROCpri(120,870,"This is Professor Roberts.")
 1558 PROCpause(100)
 1559 PROCpri(120,800,"He is glad you have found")
 1560 PROCpri(120,730,"his temple laboratory.")
 1561 PROCpause(100)
 1562 PROCpri(120,660,"The meeting will start in")
 1563 PROCpri(120,590,"a few minutes.")
 1564 PROCspace(900,9,0,0)
 1565 B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1566 butbox_x%=88:butbox_y%=280
 1567 PROCbox(butbox_x%-24,butbox_y%-16,700,280)
 1568 PROCpri(100,460,"While you are waiting,  you")
 1569 PROCpri(100,390,"can go upstairs for a cool")
 1570 PROCpri(100,320,"drink.")
 1571PROCload_sprites("sp_start2")
 1572PROCload_picture(picture1%+(1024*15),"wall2")
 1573PROCspace(900,9,1,0)
 1574*FX112,2
 1575COLOUR129
 1576CLS
 1577IFV%=0 PROCtop_blank
 1578A%=picture1%+(1024*15):CALLdraw%
 1579FORf%=0TO8 STEP2
 1580  MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
 1581NEXT
 1582PROCbox(200,700,880,200)
 1583fade$="fade"
 1584 PROCpri(218,820,"This is the professor's drinks machine.")
 1585 PROCpri(218,750,"As usual,  it needs fixing.")
 1586IFV%=0 PROCtop_blank
 1587PROCfade(0,960,4,0,1,1)
 1588COLOUR129
 1589CLS
 1590A%=picture1%+(1024*15):CALLdraw%
 1591FORf%=0TO8 STEP2
 1592  MOVE31-f%,32-f%:DRAW1249+f%,32-f%:DRAW1249+f%,933+f%:DRAW31-f%,933+f%:DRAW31-f%,32-f%
 1593NEXT
 1594*FX112,1
 1595PROCspace(900,9,0,0)
 1596B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1597IFV%=0 PROCtop_blank
 1598PROCpause(100)
 1599PROCbox(200,700,880,200)
 1600PROCpri(238,820,"The machine should fill a cup with")
 1601PROCpri(238,750,"juice and then put a lid on.")
 1602PROCspace(900,9,0,0)
 1603PROCbox(840,480,200,200)
 1604PROCplot_sprite(870,506,1,1,1,1,"explain1",sprite_area1%)
 1605PROCpause(200)
 1606PROCplot_sprite(870,506,1,1,1,1,"explain2",sprite_area1%)
 1607PROCpause(200)
 1608PROCplot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
 1609PROCpause(200)
 1610PROCbox(200,700,880,200)
 1611PROCpri(328,780,"There are no instructions!")
 1612PROCspace(900,9,0,0)
 1613ENDPROC
 1614
 1615DEFPROCdraw_in_wires
 1616*FX112,2
 1617COLOUR128
 1618CLS
 1619IFV%=0 PROCtop_blank
 1620  butbox_x%=100:butbox_y%=24
 1621  wire_x%=836:wire_y%=64
 1622  sa1%=sprite_area1%
 1623  display_x%=64
 1624  display_y%=700
 1625PROCdraw_output_base(wire_x%+(16*13),wire_y%)
 1626PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1627  PROCset_output
 1628  PROCdisplay
 1629  A%=picture1%:CALLdraw%
 1630ENDPROC
 1631
 1632DEFPROCgame1
 1633*RMensure click *RMload "<Crystal2$dir>.PT0.sound.click"
 1634*channelvoice 1 click
 1635PROCload_picture(picture1%,"wire_bac")
 1636PROCdraw_in_wires
 1637PROCfirst_info
 1638fade$="fade"
 1639*FX112,1
 1640PROCfade(0,960,4,0,1,1)
 1641PROCspace(760,9,0,0)
 1642PROCsecond_info
 1643PROCspace(760,9,0,0)
 1644  finished%=0
 1645  REPEAT
 1646    PROCset_output
 1647    *FX112,1
 1648    PROCinfo1
 1649    PROCget_a_wire
 1650    wire%=got_wire%
 1651    PROCset_wire_anim(wire%)
 1652    PROCanim_wire(wire%)
 1653  UNTILFNall_connected=1
 1654*channelvoice 1 1
 1655*RMkill click
 1656ENDPROC
 1657
 1658DEFPROCanim_wire(wire%)
 1659  *FX112,1
 1660end%=0
 1661PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1662REPEAT
 1663  *FX112,1
 1664  PROCdefine_buttons(2)
 1665  PROCset_pos_buttons(butbox_x%,butbox_y%)
 1666  PROCpause(10)
 1667  REPEAT:MOUSEmx%,my%,mc%:UNTILmc%=0
 1668  FORmsxf%=1TO10:MOUSEmx%,my%,mc%:NEXT
 1669  PROCset_new_buttons
 1670  MOUSEON
 1671  REPEAT
 1672  PROCcheck_buttons(an_num%)
 1673  UNTILselected%>0
 1674  *FX112,2
 1675  IFselected%=6 THEN
 1676    end%=1
 1677    PROCmove_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
 1678    PROCfind_wire(wire%)
 1679    PROCdraw_wire(ac1%,height%,ac2%,end$)
 1680    PROCmove_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
 1681  ENDIF
 1682  IFselected%=7 end%=2:REM check final ending
 1683  IFselected%=5 THEN
 1684    connect%=FNplugok
 1685    IFconnect%>0 THEN
 1686      SOUND1,-15,&2800,30
 1687      IFin%=1 height%=height%-1
 1688      end$="con_in1"
 1689      PROCmove_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
 1690      st_wire_x%=wx%:st_wire_y%=wy%
 1691      PROCdraw_wire(ac1%,height%,ac2%,end$)
 1692      PROCmove_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
 1693      height%=height%-1
 1694      end$="con_in3"
 1695      out_wire%(wire%)=connect%
 1696      end%=1
 1697      PROCpause(30)
 1698    ENDIF
 1699  ENDIF
 1700  IFselected%=1 AND (wire%-1)*5+height%<26:height%=height%+1
 1701  IFselected%=2 AND ac1%+ac2%<16 ac2%=ac2%+1
 1702  IFselected%=3 AND (wire%-1)*5+height%>3 :height%=height%-1
 1703  IFselected%=4 AND ac2%>1 ac2%=ac2%-1
 1704  PROCmove_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
 1705  st_wire_x%=wx%:st_wire_y%=wy%
 1706  PROCdraw_wire(ac1%,height%,ac2%,end$)
 1707  PROCmove_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
 1708UNTIL end%=1
 1709ENDPROC
 1710
 1711DEFFNplugok
 1712  IFac1%+ac2%<16:=0
 1713  pos%=(wire%-1)*5+height%
 1714  in%=1
 1715  RESTORE1724
 1716  REPEAT
 1717  in%=(in%*-1)+1
 1718  READcon%,read%
 1719  UNTILpos%=read% OR read%=0
 1720  IFread%=0:=0
 1721  IFout_wire%(1)=con% OR out_wire%(2)=con% OR out_wire%(3)=con% OR out_wire%(4)=con% OR out_wire%(5)=con%:=0
 1722  =con%
 1723
 1724DATA 1,4,1,5,2,7,2,8,3,10,3,11,4,13,4,14,5,16,5,17,6,19,6,20,7,22,7,23,8,25,8,26,0,0
 1725
 1726DEFPROCset_wire_anim(wire%)
 1727*fx112,2
 1728GCOL0,128:CLS
 1729  PROCdraw_output_base(wire_x%+(16*13),wire_y%)
 1730  FORw%=1TO5
 1731  IFwire%<>w% PROCfind_wire(w%)
 1732  IFwire%<>w% PROCdraw_wire(ac1%,height%,ac2%,end$)
 1733  NEXT
 1734  PROCfind_wire(wire%)
 1735  wx%=st_wire_x%:wy%=st_wire_y%
 1736  PROCmove_block(screen_two%,wire_x%,wire_y%,screen_two%,0,wire_y%,88,216)
 1737
 1738  IFold_w%=1 THEN
 1739      end$="con_in1":height%=height%+1
 1740      PROCmove_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
 1741      st_wire_x%=wx%:st_wire_y%=wy%
 1742      PROCdraw_wire(ac1%,height%,ac2%,end$)
 1743      PROCmove_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
 1744      end$="con"
 1745      out_wire%(wire%)=0
 1746      PROCpause(50)
 1747      st_wire_x%=wx%:st_wire_y%=wy%
 1748      height%=height%+1
 1749  ELSE
 1750      ac2%=ac2%+2
 1751  ENDIF
 1752  PROCmove_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
 1753  PROCdraw_wire(ac1%,height%,ac2%,end$)
 1754
 1755  PROCmove_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
 1756
 1757ENDPROC
 1758
 1759DEFPROCget_a_wire
 1760got_wire%=0
 1761old_w%=0
 1762MOUSE ON
 1763  REPEAT
 1764   REPEAT:MOUSEmx%,my%,mc%:UNTIL mc%>0
 1765   IFmc%=4 got_wire%=FNnew_wire(mx%,my%)
 1766   IFmc%=4 AND got_wire%=0:got_wire%=FNold_wire(mx%,my%)
 1767  UNTILgot_wire%>0
 1768ENDPROC
 1769
 1770DEFFNnew_wire(mx%,my%)
 1771 old_w%=0
 1772 REM is mouse click in the correct x pos
 1773 IFmx%>wire_x%+200 THEN =0
 1774 pos_wire%=((my%-wire_y%)/160)+1
 1775 IFout_wire%(pos_wire%)=0 THEN =pos_wire% ELSE =0
 1776
 1777DEFFNold_wire(mx%,my%)
 1778 old_w%=1:res%=0
 1779 IFmx%<wire_x%+270 OR mx%>wire_x%+340 =0
 1780 pos_wire%=(((my%-wire_y%))/96)+1
 1781 FORg%=1TO5
 1782 IFout_wire%(g%)=pos_wire%:res%=g%
 1783 NEXT
 1784 =res%
 1785
 1786DEFFNall_connected
 1787 all%=1
 1788 FORf%=1 TO 5
 1789 IFout_wire%(f%)=0 all%=0
 1790 NEXT
 1791 =all%
 1792
 1793DEFPROCdraw_output_base(out_x%,out_y%)
 1794
 1795PROCplot_sprite(out_x%-22,out_y%-64,1,1,1,1,"base2",sa1%)
 1796out_nu%=8
 1797  FORf%=32 TO 780 STEP 96
 1798  PROCplot_sprite_masked(out_x%+64,out_y%+f%,1,1,1,1,"out_holes",sa1%)
 1799  PROCplot_sprite_masked(out_x%+4,out_y%+f%,1,1,1,1,STR$(out_nu%),sa1%)
 1800  PROCplot_sprite_masked(out_x%+24,out_y%+f%,1,1,1,1,"led0",sa1%)
 1801  out_nu%=out_nu%-1
 1802  NEXT
 1803ENDPROC
 1804
 1805DEFPROCfirst_info
 1806PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1807PROCpri(butbox_x%-8,butbox_y%+102,"This is the inside of the")
 1808PROCpri(butbox_x%-8,butbox_y%+32,"drinks machine.")
 1809ENDPROC
 1810
 1811DEFPROCmain_info
 1812PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1813PROCpri(butbox_x%+30,butbox_y%+102,"There is a switch next to")
 1814PROCpri(butbox_x%+30,butbox_y%+32,"each output.")
 1815PROCpause(100)
 1816PROCout_butts(1)
 1817PROCspace(760,9,0,0)
 1818PROCpause(10)
 1819PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1820PROCpri(butbox_x%-12,butbox_y%+102,"You must turn the outputs")
 1821PROCpri(butbox_x%-12,butbox_y%+32,"on and off to make the drink.")
 1822PROCspace(760,9,0,0)
 1823ENDPROC
 1824
 1825DEFPROCmain_two
 1826*FX112,1
 1827PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1828PROCpri(butbox_x%-8,butbox_y%+102,"Move your drink")
 1829PROCpri(butbox_x%-8,butbox_y%+32,"to the DRINK sign.")
 1830PROCplot_sprite(550,24,1,1,1,1,"explain3",sprite_area1%)
 1831PROCspace(760,9,0,0)
 1832PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1833PROCpri(butbox_x%-8,butbox_y%+102,"Turn the outputs")
 1834PROCpri(butbox_x%-8,butbox_y%+32,"ON and OFF.")
 1835PROCplot_sprite(550,24,1,1,1,1,"arrow",sprite_area1%)
 1836ENDPROC
 1837
 1838DEFPROCsecond_info
 1839PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1840PROCpri(butbox_x%-8,butbox_y%+102,"First you will need to")
 1841PROCpri(butbox_x%-8,butbox_y%+32,"connect all of the wires.")
 1842ENDPROC
 1843
 1844
 1845
 1846DEFPROCinfo1
 1847PROCbox(butbox_x%-24,butbox_y%-16,650,180)
 1848PROCpri(butbox_x%+30,butbox_y%+100,"Click on the end of a wire.")
 1849PROCplot_sprite(550,24,1,1,1,1,"arrow",sprite_area1%)
 1850ENDPROC
 1851
 1852
 1853DEFPROCset_output
 1854  FORwire%=1TO5
 1855  PROCfind_wire(wire%)
 1856  PROCdraw_wire(ac1%,height%,ac2%,end$)
 1857  NEXT
 1858ENDPROC
 1859
 1860DEFPROCfind_wire(wire%)
 1861REM find start and end positions of wires
 1862  IFwire%=1 st_wire_x%=wire_x%:st_wire_y%=wire_y%:RESTORE 1925
 1863  IFwire%=2 st_wire_x%=wire_x%:st_wire_y%=wire_y%+160:RESTORE 1926
 1864  IFwire%=3 st_wire_x%=wire_x%:st_wire_y%=wire_y%+320:RESTORE 1927
 1865  IFwire%=4 st_wire_x%=wire_x%:st_wire_y%=wire_y%+480:RESTORE 1928
 1866  IFwire%=5 st_wire_x%=wire_x%:st_wire_y%=wire_y%+640:RESTORE 1929
 1867FORtype%=0 TO out_wire%(wire%):REM find data to draw wire in.
 1868READ ac1%,height%,ac2%
 1869NEXT
 1870IFout_wire%(wire%)=0 end$="con" ELSE end$="con_in3"
 1871ENDPROC
 1872
 1873
 1874DEFPROCdraw_wire(ac1%,height%,ac2%,end$)
 1875REM across wire one
 1876FORf%=1 TO ac1%
 1877PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
 1878st_wire_x%=st_wire_x%+16
 1879NEXT
 1880REM up or down
 1881IFheight%=1 THEN
 1882  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w5",sa1%)
 1883  st_wire_y%=st_wire_y%+32
 1884  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w2",sa1%)
 1885ENDIF
 1886IFheight%=-1 THEN
 1887  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w6",sa1%)
 1888  st_wire_y%=st_wire_y%-32
 1889  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w3",sa1%)
 1890ENDIF
 1891IFheight%=0 THEN
 1892  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
 1893ENDIF
 1894IFheight%>1 THEN
 1895  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w5",sa1%)
 1896  vert%=height%-1
 1897  FORf%=1 TO vert%
 1898  st_wire_y%=st_wire_y%+32
 1899  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w4",sa1%)
 1900  NEXT
 1901  st_wire_y%=st_wire_y%+32
 1902  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w2",sa1%)
 1903ENDIF
 1904IFheight%<-1 THEN
 1905  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w6",sa1%)
 1906  vert%=(height%*-1)-1
 1907  FORf%=1 TO vert%
 1908  st_wire_y%=st_wire_y%-32
 1909  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w4",sa1%)
 1910  NEXT
 1911  st_wire_y%=st_wire_y%-32
 1912  PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w3",sa1%)
 1913ENDIF
 1914st_wire_x%=st_wire_x%+16
 1915FORf%=1 TO ac2%
 1916PROCplot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
 1917st_wire_x%=st_wire_x%+16
 1918NEXT
 1919down%=96:IFend$="con_in3":down%=64
 1920PROCplot_sprite_masked(st_wire_x%,st_wire_y%-down%,1,1,1,1,end$,sa1%)
 1921ENDPROC
 1922
 1923REM across? up/down? up? left/right? across? end?
 1924
 1925DATA 5,3,1,5,3,11,5,6,11,5,9,11,5,12,11,5,15,11,5,18,11,5,21,11,5,24,11
 1926DATA 4,3,2,4,-2,12,4,1,12,4,4,12,4,7,12,4,10,12,4,13,12,4,16,12,4,19,12
 1927DATA 3,3,3,3,-7,13,3,-4,13,3,-1,13,3,2,13,3,5,13,3,8,13,3,11,13,3,14,13
 1928DATA 2,3,4,2,-12,14,2,-9,14,2,-6,14,2,-3,14,2,0,14,2,3,14,2,6,14,2,9,14
 1929DATA 1,3,5,1,-17,15,1,-14,15,1,-11,15,1,-8,15,1,-5,15,1,-2,15,1,1,15,1,4,15
 1930
 1931
 1932DEFPROCjungle(x%,y%)
 1933  ORIGIN0,0
 1934  an_p%=30
 1935   *RMensure jung *RMload "<Crystal2$dir>.PT0.sound.jung"
 1936   *channelvoice 1 jung
 1937*FX112,2
 1938A%=120*(V%+1):
 1939B%=screen_two%+(1-V%)*(320*16):C%=&01010101:D%=&10101010:E%=320:CALLfill_screen%
 1940VDU24,x%+16;y%+32;x%+1004;y%+918;18,0,131,16,26
 1941REM create and store back sprite for first plant animation
 1942IFZ%>2 move%=2 ELSE move%=1
 1943sidex%(0)=x%+200:sidey%(0)=y%+200:sp$(0)="temple2":di%(0)=0:inc%(0)=0
 1944sidex%(1)=x%+240:sidey%(1)=y%:sp$(1)="newp8":di%(1)=0:inc%(1)=0
 1945sidex%(2)=x%+32:sidey%(2)=y%+32:sp$(2)="newp8":di%(2)=0:inc%(2)=-4*move%
 1946sidex%(3)=x%+440:sidey%(3)=y%+32:sp$(3)="newp6":di%(3)=1:inc%(3)=4*move%
 1947sidex%(4)=x%+440:sidey%(4)=y%+300:sp$(4)="newp8":di%(4)=1:inc%(4)=8*move%
 1948sidex%(5)=x%+32:sidey%(5)=y%+340:sp$(5)="newp6":di%(5)=0:inc%(5)=-8*move%
 1949sidex%(6)=x%+300:sidey%(6)=y%+0:sp$(6)="plant1":di%(6)=0:inc%(6)=0
 1950sidex%(7)=x%+420:sidey%(7)=y%-32:sp$(7)="leaf2":di%(7)=0:inc%(7)=0
 1951sidex%(8)=x%+100:sidey%(8)=y%-40:sp$(8)="plant1":di%(8)=0:inc%(8)=0
 1952  *FX112,2
 1953  PROCplot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
 1954VDU24,32;200;922;400;18,0,143,16
 1955VDU24,x%+32;y%+48;x%+992;y%+890;
 1956base%=8
 1957FORf%=0 TO base%
 1958  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 1959  PROCplot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
 1960  IF f%=6 PROCplot_sprite_masked(sidex%(f%)+286,sidey%(f%)-4,1,1,1,1,"plant2",sprite_area1%)
 1961  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 1962NEXT
 1963SYS"OS_SpriteOp",&110,sprite_area2%,"blank",0,300,32,700,500
 1964PROCplot_sprite_masked(384,-44,1,1,1,1,"plant2",sprite_area1%)
 1965
 1966frx1%=486:fry1%=152:bl1$="blank1"
 1967frx2%=350:fry2%=48:bl2$="blank2"
 1968
 1969an_x%=frx1%:an_y%=fry1%:sel_sprite$="f1"
 1970PROCstart_anim(bl1$)
 1971an_x%=frx2%:an_y%=fry2%:sel_sprite$="ff1"
 1972PROCstart_anim(bl2$)
 1973*FX112,1
 1974REM PROCpause(100)
 1975fade$="fade"
 1976REM IFT%=2 THEN T%=1:PROCpause(100):IF Y%=1:PROCpause(200)
 1977IFV%=0 PROCtop_blank:OSCLI"FX112,2":PROCtop_blank:OSCLI"FX112,1"
 1978PROCfade(0,960,4,0,1,1)
 1979IFU%=0 SOUND1,-15,&2500,20
 1980sound_t%=TIME
 1981PROCpause(200)
 1982VDU26
 1983PROCbox(840,430,400,360)
 1984PROCpri(868,720,"You are at a top")
 1985PROCpri(868,660,"secret location")
 1986PROCpri(868,600,"hidden deep")
 1987PROCpri(868,540,"inside the rain")
 1988PROCpri(868,480,"forest.")
 1989PROCspace(1024,32,2,0)
 1990B%=screen_two%:C%=screen_one%:CALLsave_screen%
 1991IFU%=0 THEN
 1992ENDIF
 1993*RMensure chop1 *RMload "<Crystal2$dir>.PT0.sound.chop1"
 1994*channelvoice 2 chop1
 1995*FX112,2
 1996VDU24,x%+32;y%+48;x%+992;y%+890;
 1997PROCpause(20)
 1998an_xx%=frx1%:an_yy%=fry1%:sel_sprite$="f1"
 1999PROCfrog_anim(1,frx1%,fry1%,8,8,8,4,2,bl1$)
 2000PROCpause(40)
 2001PROCfrog_anim(1,frx1%,fry1%,8,6,8,4,2,bl1$)
 2002an_xx%=frx2%:an_yy%=fry2%:sel_sprite$="f2"
 2003PROCfrog_anim(2,frx2%,fry2%,-8,12,12,4,4,bl2$)
 2004PROCpause(40)
 2005PROCfrog_anim(2,frx2%,fry2%,-8,4,2,2,2,bl2$)
 2006an_xx%=frx1%:an_yy%=fry1%:sel_sprite$="f1"
 2007PROCpause(40)
 2008PROCfrog_anim(1,frx1%,fry1%,8,8,8,4,2,bl1$)
 2009an_xx%=frx2%:an_yy%=fry2%:sel_sprite$="f2"
 2010PROCpause(40)
 2011PROCfrog_anim(2,frx2%,fry2%,-8,10,10,2,2,bl2$)
 2012PROCpause(100)
 2013kx%=440:ky%=32:ly%=-44
 2014FORf%=1TO9
 2015PROCst_pause
 2016PROCplot_sprite(300,32,1,1,1,1+V%,"blank",sprite_area2%)
 2017PROCplot_sprite_masked(384,ly%,1,1,1,1,"plant2",sprite_area1%)
 2018PROCplot_sprite_masked(kx%,ky%,1,1,1,1,"knife",sprite_area1%)
 2019PROCplot_sprite_masked(sidex%(8),sidey%(8),1,1,1,1,sp$(8),sprite_area1%)
 2020B%=screen_two%:C%=screen_one%:CALLsave_screen%
 2021IFly%>-70 kx%=kx%-40:ky%=ky%-40
 2022IFky%<-48 ly%=ly%-40
 2023IFf%=4 SOUND2,-15,&4000,&3
 2024IFZ%<4 PROCen_pause(6-Z%)
 2025NEXT
 2026base%=5
 2027FORf%=0 TO base%
 2028  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2029  PROCplot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
 2030  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2031NEXT
 2032SYS"OS_SpriteOp",&110,sprite_area2%,"blank",0,300,32,900,500
 2033base%=8
 2034yp%=0
 2035PROCflip_hor("knife")
 2036FORff%=1 TO 18
 2037PROCst_pause
 2038PROCplot_sprite(300,32,1,1,1,1+V%,"blank",sprite_area2%)
 2039FORf%=6 TO base%
 2040  PROCplot_sprite_masked(sidex%(f%),sidey%(f%)-yp%,1,1,1,1,sp$(f%),sprite_area1%)
 2041  IF f%=6 PROCplot_sprite_masked(sidex%(f%)+286,sidey%(f%)-(4+yp%),1,1,1,1,"plant2",sprite_area1%)
 2042NEXT
 2043PROCplot_sprite_masked(500,32-yp%,1,1,1,1,"knife",sprite_area1%)
 2044IFff%=3 SOUND2,-15,&3000,10
 2045B%=screen_two%:C%=screen_one%:CALLsave_screen%
 2046yp%=yp%+20
 2047PROCen_pause(5-Z%)
 2048NEXT
 2049base%=5
 2050loop%=20
 2051IFZ%>2 loop%=10
 2052FORff%=0 TO loop%
 2053IFff% MOD 6=0  SOUND1,-13,&2500,10
 2054sidey%(1)=sidey%(1)-4
 2055sidey%(0)=sidey%(0)+4
 2056PROCst_pause
 2057*FX112,2
 2058  PROCplot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
 2059VDU24,32;200;922;400;18,0,143,16
 2060VDU24,x%+32;y%+48;x%+992;y%+890;
 2061FORf%=0 TO base%
 2062  sidex%(f%)=sidex%(f%)+inc%(f%)
 2063  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2064  PROCplot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
 2065  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2066NEXT
 2067*FX113,2
 2068IF Z%<4 PROCen_pause(an_p%)
 2069PROCst_pause
 2070*FX112,1
 2071  PROCplot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
 2072VDU24,32;200;922;400;18,0,143,16
 2073VDU24,x%+32;y%+48;x%+992;y%+890;
 2074FORf%=0 TO base%
 2075  sidex%(f%)=sidex%(f%)+inc%(f%)
 2076  IF f%>0 sidey%(f%)=sidey%(f%)-4*move%
 2077  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2078  PROCplot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
 2079  IF di%(f%)=1 PROCflip_hor(sp$(f%))
 2080NEXT
 2081*FX113,1
 2082IF Z%<4 PROCen_pause(an_p%)
 2083NEXT
 2084  VDU26
 2085C%=screen_two%:B%=screen_one%:CALLsave_screen%
 2086VDU26
 2087PROCbox(840,500,400,230)
 2088PROCpri(860,660,"You are here")
 2089PROCpri(860,600,"for an important")
 2090PROCpri(860,540,"meeting.")
 2091PROCspace(1024,32,0,0)
 2092B%=screen_two%:C%=screen_one%:CALLsave_screen%
 2093PROCpause(100)
 2094PROCbox(840,560,400,170)
 2095PROCpri(872,660,"You must go")
 2096PROCpri(872,600,"inside.")
 2097PROCload_picture(picture1%,"wall1")
 2098PROCload_sprites("entrance")
 2099PROCspace(1024,32,0,0)
 2100*channelvoice 1 1
 2101*channelvoice 2 2
 2102*RMkill chop1
 2103*RMKILL jung
 2104*FX112,2
 2105VDU18,0,129,26,16
 2106A%=picture1%:CALL draw%
 2107ENDPROC
 2108
 2109DEFPROCfrog_anim(frog%,an_x%,an_y%,inc%,h1%,h2%,d1%,d2%,blank$)
 2110REM h1%=h1%/2:h2%=h2%/2:d2%=d2%/2:d1%=d1%/2
 2111IFfrog%=1 frog1$="f1":frog2$="f2"
 2112IFfrog%=2 frog1$="ff1":frog2$="ff2"
 2113sel_sprite$=frog2$
 2114IFZ%=1 an_p%=3
 2115IFZ%=2 an_p%=2
 2116IFZ%>2 an_p%=1
 2117FORf%=1 TO h1%
 2118PROCst_pause
 2119an_x%=an_x%+inc%
 2120an_y%=an_y%+8
 2121PROCanim(blank$)
 2122PROCmove_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
 2123PROCen_pause(an_p%)
 2124NEXT
 2125FORf%=1 TO h2%
 2126PROCst_pause
 2127an_x%=an_x%+inc%
 2128an_y%=an_y%+4
 2129PROCanim(blank$)
 2130PROCmove_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
 2131PROCen_pause(an_p%)
 2132NEXT
 2133sel_sprite$=frog1$
 2134FORf%=1 TO d1%
 2135PROCst_pause
 2136an_x%=an_x%+inc%
 2137an_y%=an_y%-4
 2138PROCanim(blank$)
 2139PROCmove_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
 2140PROCen_pause(an_p%)
 2141NEXT
 2142FORf%=1 TO d1%
 2143PROCst_pause
 2144an_x%=an_x%+inc%
 2145an_y%=an_y%-8
 2146PROCanim(blank$)
 2147PROCmove_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
 2148PROCen_pause(an_p%)
 2149NEXT
 2150IFfrog%=1 frx1%=an_x%:fry1%=an_y%
 2151IFfrog%=2 frx2%=an_x%:fry2%=an_y%
 2152ENDPROC
 2153
 2154
 2155DEFPROCset_pos_buttons(x%,y%)
 2156FORf%=1TO total_but%
 2157but%(f%,0)=but%(f%,0)+x%
 2158but%(f%,1)=but%(f%,1)+y%
 2159NEXT
 2160ENDPROC
 2161
 2162
 2163DEFPROCdefine_buttons(set%)
 2164IFset%=1:total_but%=1:RESTORE2174
 2165IFset%=2:total_but%=6:RESTORE2180
 2166IFset%=3:total_but%=1:RESTORE2176
 2167IFset%=4:total_but%=2:RESTORE2177
 2168IFset%=5:total_but%=1:RESTORE2178
 2169IFset%=6:total_but%=3:RESTORE2175
 2170FORbut_number%=1TOtotal_but%
 2171READbut%(but_number%,0),but%(but_number%,1),but%(but_number%,2),but%(but_number%,3),but%(but_number%,4),but$(but_number%)
 2172NEXT
 2173ENDPROC
 2174DATA 100,100,200,40,2,Go on
 2175DATA 760,900,200,40,2,"Left turn",980,900,200,40,2,"Right turn",760,842,420,40,2,"Move forward"
 2176DATA 800,36,400,40,2,"Return to Desktop"
 2177DATA 100,8,512,40,2,"Look through the opening",640,8,512,40,2,"Look round the back"
 2178DATA 1070,16,200,170,3," "
 2179
 2180DATA 96,106,160,40,2,Up,182,52,160,40,2,Right,96,0,160,40,2,Down,10,52,160,40,2,Left,352,106,240,40,2,Connect wires,352,52,240,40,2,Leave wires,352,0,240,40,2,All connected!
 2181
 2182DEFPROCset_new_buttons
 2183FORbut_n%=1TOtotal_but%
 2184IFbut%(but_n%,4)=0 OR but%(but_n%,4)=3:colour%=0
 2185IFbut%(but_n%,4)=1 :colour%=1
 2186IFbut%(but_n%,4)=2 :colour%=3
 2187IF colour%>0:PROCbut_surround(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),colour%)
 2188IF colour%>0:PROCbut_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),128,colour%,but$(but_n%))
 2189VDU26
 2190NEXT
 2191ENDPROC
 2192
 2193DEFPROCbut_surround(bx%,by%,bxx%,byy%,col%)
 2194GCOL0,col%
 2195MOVEbx%,by%:PLOT1,bxx%,0:PLOT1,0,(byy%+4):PLOT1,-2,0:PLOT1,0,-(byy%+4):PLOT0,2,(byy%+4):PLOT1,-bxx%,0:PLOT1,0,-(byy%+4):PLOT1,2,0:PLOT1,0,(byy%+4)
 2196IFvga%=1 MOVEbx%,by%-2:PLOT1,bxx%,0:PLOT1,0,(byy%+8):PLOT1,-bxx%,0:PLOT1,0,-(byy%+8)
 2197ENDPROC
 2198
 2199DEFPROCbut_centre(bx%,by%,bxx%,byy%,bcol%,col%,text$)
 2200GCOL0,bcol%:GCOL0,col%
 2201IFV%=1 correct%=2 ELSE correct%=0
 2202VDU24,bx%+4;by%+4-correct%;bx%+bxx%-4;by%+byy%+correct%;16,26,5
 2203left_margin%=(bxx%-(LEN(text$)*16))/2
 2204MOVEbx%+left_margin%,by%+36:PRINTtext$
 2205VDU4
 2206ENDPROC
 2207
 2208DEFPROCcheck_buttons(an_num%)
 2209selected%=0
 2210MOUSEmx%,my%,mc%
 2211cb%=INKEY(1)
 2212REM IFcb%=16 cb%=0:PROCprinter
 2213REM IFcb%=19 cb%=0:PROCscreen_save(1)
 2214FORbut_n%=1 TO total_but%
 2215IFbut%(but_n%,4)<2:NEXT:ENDPROC
 2216IFmx%<but%(but_n%,0) OR mx%>(but%(but_n%,0)+but%(but_n%,2)) OR my%<but%(but_n%,1) OR my%>(but%(but_n%,1)+but%(but_n%,3))THEN
 2217   IFPOINT(but%(but_n%,0)+6,but%(but_n%,1)+8)=13 AND but%(but_n%,4)<3:PROCbut_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),128,3,but$(but_n%))
 2218ELSE
 2219   IFPOINT(but%(but_n%,0)+6,but%(but_n%,1)+4)=0 AND but%(but_n%,4)<3:PROCbut_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),141,3,but$(but_n%))
 2220   IFmc%=4:selected%=but_n%
 2221ENDIF
 2222IFan_num%>0:PROCsp_anim(an_num%)
 2223NEXT
 2224ENDPROC
 2225
 2226DEFPROCsp_anim(an_num%)
 2227IFan_num%=1 THEN
 2228 IFan_t%+20<TIME THEN
 2229  *FX112,1
 2230  PROCplot_sprite(100,616,1,1,1,1,"r"+STR$(an%),sprite_area1%)
 2231  an%=an%+1:IF an%=7an%=4
 2232  PROCplot_sprite(480,616,1,1,1,1,"r"+STR$(ann%),sprite_area1%)
 2233  ann%=ann%+1:IF ann%=7ann%=4
 2234  an_t%=TIME
 2235 ENDIF
 2236ENDIF
 2237IFan_num%=2 THEN
 2238  IFsound_t%+400<TIME:SOUND2,-15,&2500,20:sound_t%=TIME
 2239ENDIF
 2240ENDPROC
 2241
 2242DEFPROCcheck_an_num
 2243RESTORE2323
 2244go_an%=0
 2245FORcan%=1TO an_num%
 2246FORcann%=1TO3:READanx%(cann%),any%(cann%),anxx%(cann%),anyy%(cann%),an_type%(cann%):NEXT
 2247NEXT
 2248IFmx%<anxx%(1) AND mx%>anx%(1) AND my%<anyy%(1) AND my%>any%(1):go_an%=an_type%(1)
 2249IFmx%<anxx%(2) AND mx%>anx%(2) AND my%<anyy%(2) AND my%>any%(2):go_an%=an_type%(2)
 2250IFmx%<anxx%(3) AND mx%>anx%(3) AND my%<anyy%(3) AND my%>any%(3):go_an%=an_type%(3)
 2251IFgo_an%=1 PROCbounce_ball
 2252IFgo_an%=2 PROCsweep
 2253IFgo_an%>0 PROCset_new_buttons
 2254ENDPROC
 2255
 2256DEFPROCflip_hor(sprite$)
 2257SYS"OS_SpriteOp",&12F,sprite_area1%,sprite$
 2258ENDPROC
 2259
 2260DEFPROCstart_anim(blank$)
 2261SYS"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ TO r0,r1,r2
 2262width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1))
 2263SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
 2264PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
 2265an_xx%=an_x%:an_yy%=an_y%
 2266ENDPROC
 2267
 2268DEFPROCanim(blank$)
 2269PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sprite_area1%)
 2270SYS"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
 2271PROCplot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
 2272an_xx%=an_x%:an_yy%=an_y%
 2273ENDPROC
 2274
 2275DEFPROCend_anim(blank$)
 2276PROCplot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sprite_area1%)
 2277ENDPROC
 2278
 2279
 2280DEFPROCstart_anim2(blank2$)
 2281SYS"OS_SpriteOp",&118,sprite_area1%,sel_sprite2$ TO r0,r1,r2
 2282width2%=(!(r2+16)+1)*16:height2%=(!(r2+20)+1)*(4*(vga%+1))
 2283SYS"OS_SpriteOp",&110,sprite_area1%,blank2$,0,an_x2%,an_y2%,an_x2%+width2%,an_y2%+height2%
 2284PROCplot_sprite_masked(an_x2%,an_y2%,1,1,1,1,sel_sprite2$,sprite_area1%)
 2285an_xx2%=an_x2%:an_yy2%=an_y2%
 2286ENDPROC
 2287
 2288DEFPROCanim2(blank2$)
 2289PROCplot_sprite_masked(an_xx2%,an_yy2%,1,1,1,1+vga%,blank2$,sprite_area1%)
 2290SYS"OS_SpriteOp",&110,sprite_area1%,blank2$,0,an_x2%,an_y2%,an_x2%+width2%,an_y2%+height2%
 2291PROCplot_sprite_masked(an_x2%,an_y2%,1,1,1,1,sel_sprite2$,sprite_area1%)
 2292an_xx2%=an_x2%:an_yy2%=an_y2%
 2293ENDPROC
 2294
 2295DEFPROCend_anim2(blank2$)
 2296PROCplot_sprite_masked(an_xx2%,an_yy2%,1,1,1,1+vga%,blank2$,sprite_area1%)
 2297ENDPROC
 2298
 2299DEFPROCanim21(blank$)
 2300OSCLI"FX112,1"
 2301PROCplot_sprite_masked(an_xx1%,an_yy1%,1,1,1,1+vga%,blank1$,sprite_area1%)
 2302SYS"OS_SpriteOp",&110,sprite_area1%,blank1$,0,an_x1%,an_y1%,an_x1%+width%,an_y1%+height%
 2303PROCplot_sprite_masked(an_x1%,an_y1%,1,1,1,1,sel_sprite$,sprite_area1%)
 2304an_xx1%=an_x1%:an_yy1%=an_y1%
 2305ENDPROC
 2306
 2307DEFPROCpri(x%,y%,a$)
 2308SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han%
 2309SYS"Font_SetFontColours",0,0,1,2
 2310VDU0,0,0,0,0,0,0,0
 2311SYS"Font_Paint",,a$,16,x%,y%
 2312SYS"Font_LoseFont",han%
 2313ENDPROC
 2314
 2315DEFPROCpri2(x%,y%,a$)
 2316SYS"Font_FindFont",,"TABLOID.Medium",220,260,0,0 TO hand%
 2317SYS"Font_SetFontColours",0,0,1,2
 2318VDU0,0,0,0,0,0,0,0
 2319SYS"Font_Paint",,a$,16,x%,y%
 2320SYS"Font_LoseFont",hand%
 2321ENDPROC
 2322
 2323DATA256,4,1260,480,1, 0,0,0,0,0, 0,0,0,0,0
 2324DATA256,4,1260,400,1, 4,480,1000,1000,2, 0,0,0,0,0
 2325
 2326DEFPROCspace(sx%,sy%,an_num%,pa%)
 2327PROCpause(pa%)
 2328*fx21,9
 2329PROCdefine_buttons(1)
 2330but%(1,0)=sx%:but%(1,1)=sy%:an_t%=TIME:sound_t%=TIME
 2331SYS"OS_SpriteOp",&110,sprite_area1%,"space_area",0,sx%,sy%-4,sx%+200,sy%+48
 2332PROCpause(10)
 2333REPEAT:MOUSEmx%,my%,mc%:UNTILmc%=0
 2334FORmsxf%=1TO10:MOUSEmx%,my%,mc%:NEXT
 2335PROCset_new_buttons
 2336MOUSEON
 2337REPEAT
 2338PROCcheck_buttons(an_num%)
 2339UNTILselected%>0
 2340PROCplot_sprite(sx%,sy%-4,1,1,1,1+V%,"space_area",sprite_area1%)
 2341am_num%=0
 2342PROCpause(30)
 2343ENDPROC
 2344
 2345DEFPROCbox(bx%,by%,bxx%,byy%)
 2346bxx%=bx%+bxx%:byy%=by%+byy%
 2347VDU24,bx%;by%;bxx%;byy%;18,0,130,16
 2348VDU24,bx%+4;by%+4;bxx%-4;byy%-4;18,0,129,16
 2349VDU24,bx%+8;by%+8;bxx%-8;byy%-8;18,0,128,16,26
 2350GCOL0,3:MOVE bx%+4,by%:PLOT5,bxx%,by%:PLOT5,bxx%,byy%-4
 2351MOVE bx%+4,by%+2:PLOT5,bxx%-2,by%+2:PLOT5,bxx%-2,byy%-4
 2352GCOL0,2:MOVE bx%+8,by%+4:PLOT5,bxx%-4,by%+4:PLOT5,bxx%-4,byy%-8
 2353MOVE bx%+8,by%+6:PLOT5,bxx%-6,by%+6:PLOT5,bxx%-6,byy%-8
 2354ENDPROC
 2355
 2356DEFPROCbox_ecf(col1%,col2%,x%,y%,xx%,yy%)
 2357REM screen start
 2358 IFV%=0 mul%=80:ELSE mul%=160
 2359 B%=screen_one%+((960-(y%+yy%))*mul%+(x%/4))
 2360REM across
 2361 E%=(xx% DIV 4)
 2362 E%=(E% DIV 4)*4
 2363REM down
 2364 A%=yy%/8
 2365PROCclear_ecf(col1%,col2%,B%,E%,A%)
 2366ENDPROC
 2367
 2368DEFPROCclear_ecf(C%,D%,B%,E%,A%)
 2369 REM C%,D%  colours
 2370 REM A%*(V%+1) 1/2 Screen lines down
 2371 REM B%=screen_one% or screen start
 2372 REM E%=lines across
 2373IFV%=1 A%=A%*2
 2374CALLfill_screen%
 2375ENDPROC
 2376
 2377DEFPROCclear
 2378VDU24,0;0;1278;956;18,0,129,16,26
 2379ENDPROC
 2380
 2381DEFPROCtop_blank
 2382VDU24,0;960;1278;1020;18,0,131,16,26
 2383ENDPROC
 2384
 2385DEFPROCpsm(x%,y%,xm%,ym%,xd%,yd%,name$,area%)
 2386!(scale%+0)=xm%
 2387!(scale%+4)=ym%*(V%+1)
 2388!(scale%+8)=xd%
 2389!(scale%+12)=yd%
 2390SYS"OS_SpriteOp",&134,sprite_area1%,name$,x%,y%,8,scale%,0
 2391ENDPROC
 2392
 2393DEFPROCmove_block(from_screen%,from_x%,from_y%,to_screen%,to_x%,to_y%,bytes_across%,scans_up%)
 2394IFbytes_across% MOD 4<>0 STOP
 2395A%=from_screen%+FNcalc(from_x%,from_y%)
 2396B%=to_screen%+FNcalc(to_x%,to_y%)
 2397C%=bytes_across%
 2398D%=(scans_up%*(V%+1))-1
 2399  CALL move_block%
 2400ENDPROC
 2401
 2402DEFFNcalc(x%,y%)
 2403x%=x%+(x% MOD 4)
 2404top_lines%=0:IF vga%=0 top_lines%=320*16
 2405=top_lines%+(x%/4)+((956-y%)*80)*(vga%+1)
 2406DEFPROCtext_box(st_x%,st_y%,length%,height%,just_type%,a$,b$,c$)
 2407PROCbox2(st_x%,st_y%,length%,height%)
 2408f_width1%=FNfont_string_w(a$)
 2409f_width2%=FNfont_string_w(b$)
 2410f_width3%=FNfont_string_w(c$)
 2411f_height%=70:REM FNfont_string_w(a$):REM all heights the same?
 2412lines%=3:IFc$="":lines%=2:IFb$="":lines%=1
 2413xpos1%=st_x%+((length%-(f_width1%/400))/2)
 2414xpos2%=st_x%+((length%-(f_width2%/400))/2)
 2415xpos3%=st_x%+((length%-(f_width3%/400))/2)
 2416REM box_type%=1 centred box_type%=2 left justified
 2417IFjust_type%=2 THEN
 2418  IFxpos1%<xpos2% xpos2%=xpos1% ELSE xpos1%=xpos2%
 2419  IFxpos2%<xpos3% xpos3%=xpos2% ELSE xpos2%=xpos3%
 2420  IFxpos3%<xpos1% xpos1%=xpos3% ELSE xpos3%=xpos1%
 2421ENDIF
 2422ypos1%=(st_y%-(f_height%/6)*4)+(height%-(lines%*f_height%))/2+(lines%*f_height%)
 2423ypos2%=ypos1%-f_height%
 2424ypos3%=ypos2%-f_height%
 2425PROCpri(xpos1%,ypos1%,a$)
 2426IFlines%>1 PROCpri(xpos2%,ypos2%,b$)
 2427IFlines%>2 PROCpri(xpos3%,ypos3%,c$)
 2428ENDPROC
 2429
 2430DEFFNfont_string_w(string$)
 2431  $string%=string$
 2432  SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han%
 2433  SYS"Font_StringWidth",0,string%,600000,480000,-1,80 TO r0,r1,f_width%
 2434  SYS"Font_LoseFont",han%
 2435=f_width%
 2436
 2437DEFFNfont_string_h(string$)
 2438  $string%=string$
 2439  SYS"Font_FindFont",,"TABLOID.Medium",320,360,0,0 TO han%
 2440  SYS"Font_StringWidth",0,string%,600000,480000,-1,80 TO r0,r1,r2,f_height
 2441  SYS"Font_LoseFont",han%
 2442=f_height%
 2443
 2444DEFPROCbox2(bx%,by%,bxx%,byy%)
 2445bxx%=bx%+bxx%:byy%=by%+byy%
 2446VDU24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16
 2447VDU24,bx%;by%;bxx%;byy%;18,0,128,16,26
 2448ENDPROC
 2449
 2450
D�ADFS::HardDisc4.$.Crystal2.Finish1.DemoMag.!Crystal2.Pt0.Start


#ț "<Crystal2$Dir>.Pt0.Library"
vga%=V%
�T%<>2 �
  �vga%=1 sprite_height%=2
  �vga%=0 sprite_height%=1
  �vga%=0:�12
	  �vga%=1:�27

  �palette
�
*fx225,1,0

�:�"FX229,1":� �:�dt|M
&*KEY5 MODE12:PROCprint_all_sprites
� General running dim's
+� input_disk_name% 256,sp_name_buff% 16
J� pdrect% 16,pdrect2% 16,pdtrans% 16,pdplot% 8,ctrans% 256,paltab% 256
$� input% 16,output% 16,scale% 16
� Animation dim's
cann%=4
v�anx%(cann%),any%(cann%),anxx%(cann%),anyy%(cann%),an_type%(cann%)                          :� Space bar animation
� button dim's
,� but%(40,4),but$(40)     :� but%(#,0)=x
.                            :� but%(#,1)=y
=                            :� but%(#,2)=length of button
=                            :� but%(#,3)=height of button
D                            :� but%(#,4)=0=off 1=greyed out 2=on
� game dim's
� out_wire%(5)
� out_cir%(8)
;� maze%(20,20)            :� maximum size of maze 20x20
 W� corr%(10,3)             :� length of corridor (x,1)=left (x,2)=centre (x,3)=right
!
"F� main drip=0 other drips=1 to 8 drip pointer=next available start
#
$D� drip%(16,5)  :� active x,y top number/bottom number/set number
%&                 :� active = 0 off
&+                 :�          1 increase
')                 :�          2 stable
(+                 :�          3 decrease
)� drip$(40),string% 256
*� sdrip$(40)
+� sdrip%(40)
,L� convey%(9,14):�  9 positions - 0 height cup fill?  sprite plot1 up....
-4� convey$(9,14):� sprite name up to from 2 to 10
.� drop%(9)
/� prof$(4)
0� prof%(4)
1� coor_table%(2,300)
2;� par$(5),heli%(6),parrot%(5,3),parrot_o%(5,3),back$(6)
3back_col%=129
4� bush moving animation
54� sidex%(10),sidey%(10),sp$(10),di%(10),inc%(10)
6ș"OS_RemoveCursors"
7�find_screens
8�pull_variables
9�initialise_sprite_area
:5�V%=0 �top_blank:�"FX112,2":�top_blank:�"FX112,1"
;fade$="fade"
<sa1%=sprite_area1%
=
>
?
�title
@�start_game
A
�game1
B�main_game
C�explore
D�attack
E�temple_top(1)
F	�maze
G�final1
H	error
I
J
K
L��final1
M�load_sprites("bulbs")
N*fx112,2
O�18,0,131,16
P3�plot_sprite(0,0,1,1,1,1,"bulds",sprite_area1%)
Qfade$="fade2"
R�fade(0,960,4,0,1,1)
S�pause(200)
T*fx112,1
U5�text_box(300,800,400,100,1,"Finally....","","" )
V�space(490,740,0,0)
W*fx112,2
X2�plot_sprite(0,0,1,1,1,1,"comp",sprite_area1%)
Y*fx112,1
Zscr%=((V%-1)*-1)*320*16
[�f%=1 � 80
\A%=screen_one%+scr%
]B%=screen_two%+scr%
^C%=1
_D%=(V%*240)+239
`�scroll_all%
a�
bc�text_box(700,560,500,210,2,"...you will need to","learn how to control","different equipment")
cb�text_box(700,320,500,210,2,"before you can stop","Gomez and save the","Crystal Rain Forest.")
d�space(940,200,0,0)
e*fx112,2
f�load_sprites("Frontscr")
g2�plot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
hfade$="fade2"
iU�text_box(100,790,1000,90,1,"The complete adventure is available from....","","")
ju�text_box(200,500,800,210,2,"Sherston Software Ltd.","Angel House, Sherston,","Malmesbury, Wiltshire, SN16 OLH.")
k?�text_box(200,340,800,90,2,"Telephone: 01666 840433","","")
l�fade(0,960,4,0,1,1)
m�26
n*fx112,1
o�define_buttons(3)
p�pause(10)
q�:ȗmx%,my%,mc%:�mc%=0
r�msxf%=1�10:ȗmx%,my%,mc%:�
s�set_new_buttons
tȗ�
u�
v�check_buttons(0)
w�selected%>0
x�
y
z��attack
{�load_sprites("attack")
|*fx112,2
}�18,0,131,16
~8�plot_sprite(190,100,1,1,1,1,"attack",sprite_area1%)
fade$="fade"
�^�text_box(100,800,1080,150,2,"You will need to stop the robots","from attacking you.","" )
�fade$="fade"
��fade(0,960,4,0,1,1)
�*FX112,1
��space(940,40,0,0)
��
�
�
��explore
��load_sprites("flight")
�*fx112,2
��18,0,131,16
�4�plot_sprite(4,4,1,1,1,1,"forest",sprite_area1%)
�fade$="fade"
��fade(0,960,4,0,1,1)
��pause(200)
�n�text_box(100,342,1080,150,2,"You will also need to search the","Crystal Rain Forest in a hoverheli.","" )
�fade$="fade"
��fade(0,960,4,0,1,1)
�*FX112,1
��space(940,40,0,0)
��
�
�
�
���title
�T%=2
��load_sprites("Frontscr")
�2�plot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
�x%=64:y%=722
��pause(200)
�+�24,x%-8;y%-8;x%+518;y%+162;18,0,131,16
�*�24,x%;y%;x%+510;y%+154;18,0,128,16,26
�(�pri(x%+22,y%+96,"Mission: Control")
�-�pri(x%+22,y%+30,"Crystal Rain Forest 2")
��pause(200)
�x%=64:y%=480
�+�24,x%-8;y%-8;x%+518;y%+162;18,0,131,16
�*�24,x%;y%;x%+510;y%+154;18,0,128,16,26
�,�pri(x%+22,y%+96,"Designed and written")
�(�pri(x%+22,y%+30,"by Simon Hosler.")
��pause(200)
�x%=64:y%=280
�,�24,x%-8;y%-8;x%+1160;y%+100;18,0,131,16
�*�24,x%;y%;x%+1152;y%+92;18,0,128,16,26
�F�pri(x%+22,y%+30,"� 1995 Simon Hosler and Sherston Software Ltd.")
��pause(200)
�*FX112,2
�2�plot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
�fade$="fade"
���text_box(32,500,1216,210,2,"Mission: Control, is an adventure that introduces","control technology in a highly original and","motivating way.")
�F�text_box(100,360,1080,90,2,"Here is a short introduction.","","")
��fade(0,960,4,0,1,1)
�*FX112,1
��space(940,180,0,0)
�
�*FX112,2
�2�plot_sprite(0,0,1,1,1,1,"test",sprite_area1%)
�fade$="fade"
��fade(0,960,4,0,1,1)
�6�plot_sprite(40,412,1,1,1,1,"GOMAZ",sprite_area1%)
�u�text_box(520,600,740,210,2,"This is Gomez, he must be","stopped! He is a danger","to the Crystal Rain Forest." )
��fade(0,960,4,0,1,1)
�*FX112,1
��space(940,520,0,0)
�	� � �
�  *FX112,2
�v  �text_box(100,200,1080,170,2,"To stop Gomez and complete this adventure","you will need to do many things.","" )
�  fade$="fade"
�  �fade(0,960,4,0,1,1)
�  *FX112,1
�  �space(940,40,0,0)
��
��
�
�
��maze
� �load_sprites("Toptem")
��4,64,64,64
�rnd_maze%=�(3)
�*FX112,2
��26,18,0,129,16
�I�set_maze("amaze2"+�(rnd_maze%)):�temple_map(740,268," "," "," ",150)
��box(100,8,1080,260)
�mazex%=32:mazey%=300
�direction%=1
�pos_x%=1
�pos_y%=1
�&� 24,16;256+32;680;948;18,0,131,16
�(�draw_maze(direction%,pos_x%,pos_y%)
��26
�<�pri(240,160,"Try to find the control room inside this")
�!�pri(240,90,"jungle temple.")
��pri(140,66," ")
�fade$="fade"
��fade(0,960,4,0,1,1)
�*FX112,1
��space(940,48,0,0)
��2,-15,&2500,20
��box(100,8,1080,260)
�:�pri(200,170,"You are inside the temple.  Which way?")
�&� 24,16;256+32;680;948;18,0,131,16
��inside_maze(1)
�>*RMensure Smbuzz *RMload "<Crystal2$dir>.PT0.sound.Smbuzz"
�*channelvoice 1 Smbuzz
��f%=448 � 256 �-2
�  �st_pause
�  �24,f%+2;428;450;753;
�  �f% � 2=0:�1,-15,&2000,10
�  �18,0,131,16
�  �24,254;428;f%;753;
�<  �plot_sprite(254-(448-f%),428,1,1,1,1,"dooropen",sa1%)
�  �en_pause(3)
��
�3� PROCbox_ecf(&A0A0A0A0,&0A0A0A0A,0,0,1280,280)
� �24,0;0;1278;270;18,0,129,16
��box(20,60,1240,200)
��pri(150,188,"Well done!")
�6�pri(150,118,"You have succeeded in this temple.")
��2,-15,&2500,20
��space(900,4,0,0)
�*channelvoice 1 1
�*RMkill Smbuzz
��palette
��
���inside_maze(exit%)
�@*RMensure batflap *RMload "<Crystal2$dir>.PT0.sound.batflap"
�*channelvoice 2 batflap
�found_door%=0
�(�draw_maze(direction%,pos_x%,pos_y%)
�
	  �26
  �define_buttons(6)
B  �move(direction%,pos_x%,pos_y%)=3 but%(3,4)=1 � but%(3,4)=2
  �:ȗmx%,my%,mc%:�mc%=0
!  �msxf%=1�10:ȗmx%,my%,mc%:�
  �set_new_buttons
	  ȗ�
  �
	    �check_buttons(0)

  �selected%>0
  �selected%=3 �
-    temp%=�move(direction%,pos_x%,pos_y%)

    �temp%=0 �
0      tem%=�move(direction%,pos_x%-1,pos_y%)
      �tem%=15 �
K        found_door%=1:�exit%=2:�pri(200,100,"Try to find the way out.")
      �
$        pos_x%=pos_x%+look_twox%
$        pos_y%=pos_y%+look_twoy%
        �draw_maze_hidden
      �
	    �
U    �temp%=5 found_door%=2:�exit%=1:�pri(200,100,"Try to find the control room.")
  �
  �selected%=1 �
    *fx112,2
    mazex%=640:mazey%=0
,    �draw_maze(direction%,pos_x%,pos_y%)
:    direction%=direction%-1:�direction%=0:direction%=4
    mazex%=0:mazey%=0
,    �draw_maze(direction%,pos_x%,pos_y%)
     *fx112,1
!    mazex%=32:mazey%=300
"    �scr%=640 � 0 �-128
#K      �move_block(screen_two%,scr%,0,screen_one%,mazex%,mazey%,160,160)
$	    �
%  �
&  �selected%=2 �
'    *fx112,2
(    mazex%=0:mazey%=0
),    �draw_maze(direction%,pos_x%,pos_y%)
*:    direction%=direction%+1:�direction%=5:direction%=1
+    mazex%=640:mazey%=0
,,    �draw_maze(direction%,pos_x%,pos_y%)
-    *fx112,1
.    mazex%=32:mazey%=300
/    �scr%=0 � 640 �128
0K      �move_block(screen_two%,scr%,0,screen_one%,mazex%,mazey%,160,160)
1	    �
2  �
3�26:*FX113,1
4,� count%>5 � �(3)=1 �bat_flight(268,640)
5� found_door%=exit%
6*channelvoice 2 2
7*RMkill batflap
8�
9
:��draw_maze_hidden
;*fx112,2
<mazex%=0:mazey%=0
=(�draw_maze(direction%,pos_x%,pos_y%)
>*fx112,1
?mazex%=32:mazey%=300
@D  �move_block(screen_two%,0,0,screen_one%,mazex%,mazey%,160,160)
A�
B
Cݤmove(d%,px%,py%)
D
  �d%=1 �
E     look_twox%=0
F     look_twoy%=+1
G  �
H
  �d%=2 �
I     look_twox%=+1
J     look_twoy%=0
K  �
L
  �d%=3 �
M     look_twox%=0
N     look_twoy%=-1
O  �
P
  �d%=4 �
Q     look_twox%=-1
R     look_twoy%=0
S  �
T+  =maze%(px%+look_twox%,py%+look_twoy%)
U0  �maze%(px%+look_twox%,py%+look_twoy%)=3:=1
V0  �maze%(px%+look_twox%,py%+look_twoy%)=5:=3
W1  �maze%(px%+look_twox%,py%+look_twoy%)=15:=2
X  =0
Y
Z)��temple_map(xx%,yy%,a$,aa$,aaa$,hi%)
[8  �plot_sprite_masked(xx%,yy%,1,1,1,1,"scroll",sa1%)
\1  ș"OS_SpriteOp",&12F,sprite_area1%,"scroll"
]<  �plot_sprite_masked(xx%+400,yy%,1,1,1,1,"scroll",sa1%)
^3  �24,xx%+80;yy%+44;xx%+400;yy%+558;18,0,131,16
_3  �24,xx%+80;yy%+48;xx%+400;yy%+554;18,0,128,16
`      �pri(xx%+92,yy%+510,a$)
a!     �pri(xx%+92,yy%+450,aa$)
b"     �pri(xx%+92,yy%+390,aaa$)
c  x%=xx%+96
d  �f%=0 � width%-1
e    y%=yy%+hi%
f    �ff%=0 � height%-1
gH      �maze%(f%,ff%)=3  �plot_sprite(x%,y%,1,1,1,1,"map_brick",sa1%)
hD      �maze%(f%,ff%)=15 �plot_sprite(x%,y%,1,1,1,1,"doorh",sa1%)
iA      �maze%(f%,ff%)=9  �plot_sprite(x%,y%,1,1,1,1,"cr",sa1%)
jI      �maze%(f%,ff%)=5 � S%<>14 �plot_sprite(x%,y%,1,1,1,1,"wi",sa1%)
k      y%=y%+32
l	    �
m    x%=x%+32
n  �
o�
p
q��bat_flight(bx%,by%)
r/B%=screen_one%:C%=screen_two%:�save_screen%
s*FX112,2
t-� 24,mazex%;mazey%;mazex%+636;mazey%+638;
uan_x%=bx%:an_y%=by%
vsel_sprite$="bat3"
wblank$="blank"
x�start_anim(blank$)
y
sel%=3
zsel_sprite$="bat"
{	��tYA
|
�f%=1� 15
} �st_pause
~ �sel%=4:sel%=3 � sel%=4
 sel_sprite$="bat"+�(sel%)
� an_y%=an_y%+8
� �sm%,sd%,ofx%,ofy%
�@ �plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
�W ș"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
�A �psm(an_x%+ofx%,an_y%+ofy%,sm%,sm%,sd%,sd%,sel_sprite$,sa1%)
�? �move_block(screen_two%,220,624,screen_one%,220,624,80,80)
� an_xx%=an_x%:an_yy%=an_y%
� �en_pause(10)
��
�
�f%=1� 12
� �st_pause
� �sel%=4:sel%=3 � sel%=4
� sel_sprite$="bat"+�(sel%)
� an_y%=an_y%+16
�@ �plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
�W ș"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
�/ �psm(an_x%,an_y%,1,1,1,1,sel_sprite$,sa1%)
�? �move_block(screen_two%,220,624,screen_one%,220,624,80,80)
� an_xx%=an_x%:an_yy%=an_y%
� �f% � 3=2:�2,-12,&4800,2
� �en_pause(10)
��
�@ �plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sa1%)
�? �move_block(screen_two%,220,624,screen_one%,220,624,80,80)
�
 *FX112,1
��1,4,56,20
��1,4,56,20
��1,4,56,20
��1,4,56,20
��1,2,32,12
��1,2,32,12
��1,2,32,12
��1,2,32,12
�
�2,3,24,8
�
�2,3,24,8
�
�2,3,24,8
�
�3,4,16,4
�
�3,4,16,4
�
�3,4,16,4
��1,1,0,0
��end_anim(blank$)
��
�
���draw_maze(dir%,px%,py%)
�
�S� Change the drawing of the corridor to a universal draw in any direction proc.
�\� The dir% sets up a string$ that will give details of length of corridor and paths off.
�-� 24,mazex%;mazey%;mazex%+636;mazey%+640;
�
�  �dir%=1 �
�     look_onex%=-1
�     look_oney%=0
�     look_twox%=0
�     look_twoy%=+1
�     look_threex%=+1
�     look_threey%=0
�  �
�
�  �dir%=2 �
�     look_onex%=0
�     look_oney%=+1
�     look_twox%=+1
�     look_twoy%=0
�     look_threex%=0
�     look_threey%=-1
�  �
�
�  �dir%=3 �
�     look_onex%=+1
�     look_oney%=0
�     look_twox%=0
�     look_twoy%=-1
�     look_threex%=-1
�     look_threey%=0
�  �
�
�  �dir%=4 �
�     look_onex%=0
�     look_oney%=-1
�     look_twox%=-1
�     look_twoy%=0
�     look_threex%=0
�     look_threey%=+1
�  �
�
�)     temp_x%=px%:temp_y%=py%:count%=0
�  �
�    count%=count%+1
�"    temp_x%=temp_x%+look_twox%
�"    temp_y%=temp_y%+look_twoy%
�    corr%(count%,2)=1
�    newend%=0
�3    �maze%(temp_x%,temp_y%)<3 corr%(count%,2)=0
�>    �maze%(temp_x%,temp_y%)=5 newend%=1          :� ouside
�D    �maze%(temp_x%,temp_y%)=15 newend%=2         :� control room
�[    corr%(count%,1)=1:�maze%(temp_x%+look_onex%,temp_y%+look_oney%)<3 corr%(count%,1)=0
�_    corr%(count%,3)=1:�maze%(temp_x%+look_threex%,temp_y%+look_threey%)<3 corr%(count%,3)=0
�   � maze%(temp_x%,temp_y%)>2
�   �count%=1 � wall
�F   �count%>6 �plot_sprite(mazex%,mazey%+244,1,1,1,1,"floor6",sa1%)
�F   �count%>5 �plot_sprite(mazex%,mazey%+232,1,1,1,1,"floor5",sa1%)
�F   �count%>4 �plot_sprite(mazex%,mazey%+212,1,1,1,1,"floor4",sa1%)
�F   �count%>3 �plot_sprite(mazex%,mazey%+184,1,1,1,1,"floor3",sa1%)
�F   �count%>2 �plot_sprite(mazex%,mazey%+132,1,1,1,1,"floor2",sa1%)
�D   �count%>1 �plot_sprite(mazex%,mazey%+0,1,1,1,1,"floor1",sa1%)
�@  �f%=1�6:ș"OS_SpriteOp",&121,sprite_area1%,"floor"+�(f%):�
�   �count%=7 �
�M      �newend%=0 �plot_sprite(mazex%+252,mazey%+256,1,1,1,1,"wall7",sa1%)
�\      �newend%=1 �plot_sprite(mazex%+252,mazey%+256,40,(40-V%)*(V%+1),65,65,"out4",sa1%)
�]      �newend%=2 �plot_sprite(mazex%+252,mazey%+256,40,(40-V%)*(V%+1),65,65,"door4",sa1%)
�   �
�   �count%=6 �
�M      �newend%=0 �plot_sprite(mazex%+240,mazey%+244,1,1,1,1,"wall6",sa1%)
�\      �newend%=1 �plot_sprite(mazex%+240,mazey%+244,40,(40-V%)*(V%+1),56,56,"out4",sa1%)
�]      �newend%=2 �plot_sprite(mazex%+240,mazey%+244,40,(40-V%)*(V%+1),56,56,"door4",sa1%)
�   �
�   �count%=5 �
�M      �newend%=0 �plot_sprite(mazex%+230,mazey%+232,1,1,1,1,"wall5",sa1%)
�\      �newend%=1 �plot_sprite(mazex%+230,mazey%+232,40,(40-V%)*(V%+1),48,48,"out4",sa1%)
�]      �newend%=2 �plot_sprite(mazex%+230,mazey%+232,40,(40-V%)*(V%+1),48,48,"door4",sa1%)
�   �
�   �count%=4 �
�M      �newend%=0 �plot_sprite(mazex%+212,mazey%+208,1,1,1,1,"wall4",sa1%)
�L      �newend%=1 �plot_sprite(mazex%+212,mazey%+208,1,1,1,1,"out4",sa1%)
�M      �newend%=2 �plot_sprite(mazex%+212,mazey%+208,1,1,1,1,"door4",sa1%)
�   �
�   �count%=3 �
�M      �newend%=0 �plot_sprite(mazex%+182,mazey%+180,1,1,1,1,"wall3",sa1%)
\      �newend%=1 �plot_sprite(mazex%+182,mazey%+184,40,(40-V%)*(V%+1),55,55,"out2",sa1%)
]      �newend%=2 �plot_sprite(mazex%+182,mazey%+184,40,(40-V%)*(V%+1),55,55,"door2",sa1%)
   �
   �count%=2 �
M      �newend%=0 �plot_sprite(mazex%+128,mazey%+128,1,1,1,1,"wall2",sa1%)
L      �newend%=1 �plot_sprite(mazex%+128,mazey%+128,1,1,1,1,"out2",sa1%)
M      �newend%=2 �plot_sprite(mazex%+128,mazey%+128,1,1,1,1,"door2",sa1%)
   �
   �count%>6 �
	E      �plot_sprite(mazex%,mazey%+(640-256),1,1,1,1,"floor6",sa1%)

N      �count%=7 �plot_sprite(mazex%,mazey%+(640-256),1,1,1,1,"roof1",sa1%)
      �corr%(6,1)=1 �
L         �plot_sprite_masked(mazex%+242,mazey%+240,1,1,1,1,"side6",sa1%)

      �
I         �plot_sprite(mazex%+252-136,mazey%+256,1,1,1,1,"wall7",sa1%)
      �
      �corr%(6,3)=1 �
7         ș"OS_SpriteOp",&12F,sprite_area1%,"side6"
L         �plot_sprite_masked(mazex%+386,mazey%+240,1,1,1,1,"side6",sa1%)
7         ș"OS_SpriteOp",&12F,sprite_area1%,"side6"
      �
I         �plot_sprite(mazex%+252+136,mazey%+256,1,1,1,1,"wall7",sa1%)
      �
   �

   �count%>5 �
E      �plot_sprite(mazex%,mazey%+(640-244),1,1,1,1,"floor5",sa1%)
N      �count%=6 �plot_sprite(mazex%,mazey%+(640-244),1,1,1,1,"roof1",sa1%)
      �corr%(5,1)=1 �
L         �plot_sprite_masked(mazex%+228,mazey%+228,1,1,1,1,"side5",sa1%)
Q         � PROCplot_sprite_masked(mazex%+228,mazey%+228,1,1,1,1,"roof1",sa1%)
      �
 I         �plot_sprite(mazex%+240-156,mazey%+244,1,1,1,1,"wall6",sa1%)
!      �
"      �corr%(5,3)=1 �
#7         ș"OS_SpriteOp",&12F,sprite_area1%,"side5"
$L         �plot_sprite_masked(mazex%+396,mazey%+228,1,1,1,1,"side5",sa1%)
%7         ș"OS_SpriteOp",&12F,sprite_area1%,"side5"
&      �
'I         �plot_sprite(mazex%+240+156,mazey%+244,1,1,1,1,"wall6",sa1%)
(      �
)   �
*
+   �count%>4 �
,E      �plot_sprite(mazex%,mazey%+(640-232),1,1,1,1,"floor4",sa1%)
-N      �count%=5 �plot_sprite(mazex%,mazey%+(640-232),1,1,1,1,"roof1",sa1%)
.      �corr%(4,1)=1 �
/L         �plot_sprite_masked(mazex%+212,mazey%+208,1,1,1,1,"side4",sa1%)
0      �
1I         �plot_sprite(mazex%+230-180,mazey%+232,1,1,1,1,"wall5",sa1%)
2      �
3      �corr%(4,3)=1 �
47         ș"OS_SpriteOp",&12F,sprite_area1%,"side4"
5L         �plot_sprite_masked(mazex%+410,mazey%+208,1,1,1,1,"side4",sa1%)
67         ș"OS_SpriteOp",&12F,sprite_area1%,"side4"
7      �
8I         �plot_sprite(mazex%+230+180,mazey%+232,1,1,1,1,"wall5",sa1%)
9      �
:   �
;
<   �count%>3 �
=E      �plot_sprite(mazex%,mazey%+(640-212),1,1,1,1,"floor3",sa1%)
>N      �count%=4 �plot_sprite(mazex%,mazey%+(640-212),1,1,1,1,"roof1",sa1%)
?      �corr%(3,1)=1 �
@L         �plot_sprite_masked(mazex%+182,mazey%+180,1,1,1,1,"side3",sa1%)
A      �
BI         �plot_sprite(mazex%+212-216,mazey%+208,1,1,1,1,"wall4",sa1%)
C      �
D      �corr%(3,3)=1 �
E7         ș"OS_SpriteOp",&12F,sprite_area1%,"side3"
FL         �plot_sprite_masked(mazex%+428,mazey%+180,1,1,1,1,"side3",sa1%)
G7         ș"OS_SpriteOp",&12F,sprite_area1%,"side3"
H      �
II         �plot_sprite(mazex%+212+216,mazey%+208,1,1,1,1,"wall4",sa1%)
J      �
K   �
L
M   �count%>2 �
NE      �plot_sprite(mazex%,mazey%+(640-184),1,1,1,1,"floor2",sa1%)
ON      �count%=3 �plot_sprite(mazex%,mazey%+(640-184),1,1,1,1,"roof1",sa1%)
P      �corr%(2,1)=1 �
QL         �plot_sprite_masked(mazex%+130,mazey%+128,1,1,1,1,"side2",sa1%)
R      �
SI         �plot_sprite(mazex%+182-278,mazey%+180,1,1,1,1,"wall3",sa1%)
T      �
U      �corr%(2,3)=1 �
V7         ș"OS_SpriteOp",&12F,sprite_area1%,"side2"
WL         �plot_sprite_masked(mazex%+458,mazey%+128,1,1,1,1,"side2",sa1%)
X7         ș"OS_SpriteOp",&12F,sprite_area1%,"side2"
Y      �
ZI         �plot_sprite(mazex%+182+278,mazey%+180,1,1,1,1,"wall3",sa1%)
[      �
\   �
]
^   �count%>1 �
_E      �plot_sprite(mazex%,mazey%+(640-132),1,1,1,1,"floor1",sa1%)
`N      �count%=2 �plot_sprite(mazex%,mazey%+(640-132),1,1,1,1,"roof1",sa1%)
a      �corr%(1,1)=1 �
bH         �plot_sprite_masked(mazex%+0,mazey%+0,1,1,1,1,"side1",sa1%)
c      �
dI         �plot_sprite(mazex%+128-384,mazey%+128,1,1,1,1,"wall2",sa1%)
e      �
f      �corr%(1,3)=1 �
g7         ș"OS_SpriteOp",&12F,sprite_area1%,"side1"
hJ         �plot_sprite_masked(mazex%+510,mazey%+0,1,1,1,1,"side1",sa1%)
i7         ș"OS_SpriteOp",&12F,sprite_area1%,"side1"
j      �
kI         �plot_sprite(mazex%+128+384,mazey%+128,1,1,1,1,"wall2",sa1%)
l      �
m   �
n
o   �count%=1 �
pN      �newend%=0 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"wall2",sa1%)
qM      �newend%=1 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"out2",sa1%)
rN      �newend%=2 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"door2",sa1%)
s   �
t
u   �count%=1 �
vN      �newend%=0 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"wall2",sa1%)
wM      �newend%=1 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"out2",sa1%)
xN      �newend%=2 �plot_sprite(mazex%-64,mazey%-64,2,2+V%,1,1,"door2",sa1%)
y   �
z
{   �count%>1 �
|H     �maze%(px%+look_twox%+look_twox%,py%+look_twoy%+look_twoy%)=2 �
}I       �plot_sprite_masked(mazex%+300,mazey%+436,1,1,1,1,"bat2",sa1%)
~I       �plot_sprite_masked(mazex%+200,mazey%+436,1,1,1,1,"bat2",sa1%)
I       �plot_sprite_masked(mazex%+230,mazey%+440,1,1,1,1,"bat2",sa1%)
�I       �plot_sprite_masked(mazex%+420,mazey%+436,1,1,1,1,"bat2",sa1%)
�
     �
�   �
�0   �maze%(px%+look_twox%,py%+look_twoy%)=2 �
�G     �plot_sprite_masked(mazex%+260,mazey%+426,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+110,mazey%+426,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+150,mazey%+430,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+460,mazey%+426,1,1,1,1,"bat1",sa1%)
�   �
�   �count%>1 �
�H     �maze%(px%+look_twox%+look_twox%,py%+look_twoy%+look_twoy%)=1 �
�I       �plot_sprite_masked(mazex%+160,mazey%+436,1,1,1,1,"bat2",sa1%)
�I       �plot_sprite_masked(mazex%+180,mazey%+436,1,1,1,1,"bat2",sa1%)
�I       �plot_sprite_masked(mazex%+210,mazey%+440,1,1,1,1,"bat2",sa1%)
�I       �plot_sprite_masked(mazex%+400,mazey%+436,1,1,1,1,"bat2",sa1%)
�I       �plot_sprite_masked(mazex%+420,mazey%+436,1,1,1,1,"bat2",sa1%)
�
     �
�   �
�0   �maze%(px%+look_twox%,py%+look_twoy%)=1 �
�F     �plot_sprite_masked(mazex%+80,mazey%+426,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+110,mazey%+426,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+150,mazey%+430,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+430,mazey%+426,1,1,1,1,"bat1",sa1%)
�G     �plot_sprite_masked(mazex%+470,mazey%+426,1,1,1,1,"bat1",sa1%)
�   �
�@  �f%=1�6:ș"OS_SpriteOp",&121,sprite_area1%,"floor"+�(f%):�
��
�
���set_maze(m$)
�E  ș"OS_SpriteOp",&128,sprite_area1%,m$ � r0,r1,r2,width%,height%
�  �f%=0 � width%-1
�    �ff%=0 � height%-1
�O      ș"OS_SpriteOp",&129,sprite_area1%,m$,f%,ff% � r0,r1,r2,r3,r4,colour%
�      maze%(f%,ff%)=colour%
�	    �
�  �
��
�
���start_game
��load_sprites("sp_start2")
�.�load_picture(picture1%+(1024*15),"wall2")
�*FX112,2
��129
��
��V%=0 �top_blank
�!A%=picture1%+(1024*15):�draw%
��f%=0�8 �2
�L  �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
��
��box(200,700,880,200)
�fade$="fade"
�5 �pri(248,820,"You will need to fix complicated")
�3 �pri(248,750,"machines with no instructions.")
��V%=0 �top_blank
��fade(0,960,4,0,1,1)
��129
��
�!A%=picture1%+(1024*15):�draw%
��f%=0�8 �2
�L  �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
��
�*FX112,1
��space(900,9,0,0)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��V%=0 �top_blank
��pause(100)
��box(200,700,880,200)
�7�pri(238,820,"This machine should fill a cup with")
�0�pri(238,750,"juice and then put a lid on.")
��space(900,9,0,0)
��box(840,480,200,200)
�:�plot_sprite(870,506,1,1,1,1,"explain1",sprite_area1%)
��pause(200)
�:�plot_sprite(870,506,1,1,1,1,"explain2",sprite_area1%)
��pause(200)
�:�plot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
��pause(200)
��box(200,700,880,200)
�#�pri(448,780,"Have a try now!")
��space(900,9,0,0)
��
�
���temple_top(site%)
�fade$="fade"
�?par$(1)="par1":par$(2)="par2":par$(3)="par1":par$(4)="par3"
�]heli%(1)=30+68:heli%(2)=40+68:heli%(3)=48+68:heli%(4)=60+68:heli%(5)=48+68:heli%(6)=40+68
�"�site%=1 �load_sprites("land")
�*fx113,1
�*fx112,2
�
�clear
�5�V%=0 �top_blank:�"FX112,1":�top_blank:�"FX112,2"
�'�24,152;120;1126;926;18,0,131,16,26
�?�site%=1 �plot_sprite(160,128,1,1,1,1,"LAND",sa1%):land%=40
��fade(0,960,4,0,1,1)
��box(100,10,1080,90)
�8�pri(150,42,"You will need to visit remote places,")
�*FX112,1
��box(100,10,1080,90)
�8�pri(150,42,"You will need to visit remote places,")
��24,160;128;1118;922;
�@*RMensure Smhover *RMload "<Crystal2$dir>.PT0.sound.Smhover"
�*channelvoice 1 Smhover
�an_x%=380:an_y%=912:ho%=1
�an_x2%=380:an_y2%=908
�sel_sprite$="slide1"
�sel_sprite2$="slide1"
��start_anim("blank")
��end_anim("blank")
��start_anim2("blank2")
��fly%=120�1 �-1
� �st_pause
�
 *FX113,1
�
 *FX112,2
� �fly%>land% an_y%=an_y%-8
�  �fly%=land%-1 an_y%=an_y%-4
� �anim("blank")
�O �plot_sprite(an_x%+heli%(ho%),an_y%+284,1,1,1,1,"nb"+�(ho%),sprite_area1%)
�O �site%=1 �plot_sprite_masked(160+206,128+624,1,1,1,1,"leaf",sprite_area1%)
� ho%=ho%+1:�ho%=7:ho%=1
� �en_pause(5-Z%)
�  �fly%<land% �pause(30/fly%)
� �st_pause
�
 *FX113,2
�
 *FX112,1
�  �fly%>land% an_y2%=an_y2%-8
� �anim2("blank2")
� �1,-15,&4000,10
�Q �plot_sprite(an_x2%+heli%(ho%),an_y2%+284,1,1,1,1,"nb"+�(ho%),sprite_area1%)
O �site%=1 �plot_sprite_masked(160+206,128+624,1,1,1,1,"leaf",sprite_area1%)
 ho%=ho%+1:�ho%=7:ho%=1
 �en_pause(5-Z%)
  �fly%<land% �pause(30/fly%)
�
*FX112,1
*FX113,1
*channelvoice 1 1
*channelvoice 2 2
	*RMkill SmHover

:*RMensure jung *RMload "<Crystal2$dir>.PT0.sound.jung"
*channelvoice 2 jung
 �site%=1 �

  ��TRC

  �f%=1�5
"  �parrot%(f%,1),parrot%(f%,2)
  parrot%(f%,0)=�(4)
  back$(f%)=�(f%)
  �
7  � 430,698,505,809,583,713,607,825,406,845,544,863
  sound_t%=�
  �2,-15,&2500,20

  �f%=1�5
  an_x%=parrot%(f%,1)
  an_y%=parrot%(f%,2)
%  sel_sprite$=par$(parrot%(f%,0))
?  ș"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ � r0,r1,r2
>  width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1))
[  ș"OS_SpriteOp",&110,sprite_area1%,back$(f%),0,an_x%,an_y%,an_x%+width%,an_y%+height%
H  �plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
1  parrot_o%(f%,1)=an_x%:parrot_o%(f%,2)=an_y%
  �
   �
!  �st_pause
"0  �sound_t%+450<�:sound_t%=�:�2,-15,&2500,20
#
  �f%=1�5
$D  parrot%(f%,0)=parrot%(f%,0)+1:�parrot%(f%,0)=5:parrot%(f%,0)=1
%#  parrot%(f%,1)=parrot%(f%,1)+8
&#  parrot%(f%,2)=parrot%(f%,2)+4
'  an_x%=parrot%(f%,1)
(  an_y%=parrot%(f%,2)
)%  sel_sprite$=par$(parrot%(f%,0))
*_  �plot_sprite_masked(parrot_o%(f%,1),parrot_o%(f%,2),1,1,1,1+vga%,back$(f%),sprite_area1%)
+[  ș"OS_SpriteOp",&110,sprite_area1%,back$(f%),0,an_x%,an_y%,an_x%+width%,an_y%+height%
,H  �plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
-1  parrot_o%(f%,1)=an_x%:parrot_o%(f%,2)=an_y%
.  �
/  �en_pause(10)
0  � parrot%(1,2)>940
1	  �26
2 �
3�26
4�2,-15,&2500,20
5�space(940,32,2,0)
6�box(100,10,1080,90)
7�pause(50)
8+�pri(150,42,"and explore old temples.")
9�space(940,32,2,0)
:*channelvoice 2 2
;*RMKILL jung
<�
=
>
?��main_game
@*FX112,1
A�main_info
B<*RMensure juicy *RMload "<Crystal2$dir>.PT0.sound.juicy"
C>*RMensure Smbuzz *RMload "<Crystal2$dir>.PT0.sound.Smbuzz"
D:*RMensure bonk *RMload "<Crystal2$dir>.PT0.sound.bonk"
E*channelvoice 1 juicy
F*channelvoice 2 Smbuzz
G�
H  �reset_convey
I(  main_x%=64:main_y%=900 :� left top
J  convey_x%=main_x%
K  drip_pointer%=1
L  old_drip_ptr%=0
M  trigger%=0
N
  move%=0
O  soundcnt%=�
P  cup_count%=1
Q  bottom_height_n%=26
R  �set_drip_sp
S
  test%=1
T  display_x%=64
U  display_y%=700
V<  cup_release%=0    :� 0 off 1 wanting release 2 falling
W<  lid_release%=0    :� 0 off 1 wanting release 2 falling
X  cup_drop%=0
Y  lid_drop%=0
Z  an_con_move%=48
[  con_move%=0
\  overload%=0
]  ok_lid%=0:ok_cup%=0
^  cup_t%=�
_  lid_t%=�
`  move_t%=�
a  *FX112,1
b  �display
c  *FX112,2
d  �
e  �grid
f	  ȗ�
g  attempt%=0:ok$=""
h  �main_two
i  �out_butts(0)
j  �
k
l    �st_pause
m:    drip%(0,5)=drip%(0,5)+1:�drip%(0,5)=3 drip%(0,5)=1
n    *FX112,1
o'    � PRINTTAB(0,0);ok_cup%,ok_lid%
p    �out_status
q    *FX112,2
r    �look_at_wires
s_    �move_block(screen_two%,640,an_con_move%,screen_two%,main_x%,48+main_y%-(64*7),144,100)
t    �release
u    �start_move
v    �convey
w    �check_main
x    �put_in_sprites
y    �check_drips
z    �drop_ends
{n    �move_block(screen_two%,main_x%,48+main_y%-(64*7),screen_one%,display_x%,48+display_y%-(64*7),144,100)
|    *fx112,1
}    �en_pause(20)
~   � attempt%=1 � overload%=1
�attempt%=1 �
�   *FX112,2
�   �129
�   �
�   �V%=0 �top_blank
�$   A%=picture1%+(1024*15):�draw%
�   �f%=0�8 �2
�N    �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
�   �
�@    �plot_sprite_masked(308,100,1,1,1,1,"boy",sprite_area1%)
�A    �plot_sprite_masked(436,100,1,1,1,1,"girl",sprite_area1%)
�   �ff%=3 � convey%(9,2)
�    sprite$=convey$(9,ff%)
�6    �sprite$="cup":sprite$=sprite$+�(convey%(9,1))
�V    �plot_sprite_masked(510,668-(convey%(9,ff%)*16),1,1,1,1,sprite$,sprite_area1%)
�   �
�   ok$="no"
�   �convey%(9,2)=4 �
�;     �convey$(9,3)="cup6" � convey$(9,4)="lid" ok$="ok"
�;     �convey$(9,3)="cup5" � convey$(9,4)="lid" ok$="ok"
�<     �convey$(9,3)="cup4" � convey$(9,4)="lid" ok$="not"
�<     �convey$(9,3)="cup3" � convey$(9,4)="lid" ok$="not"
�<     �convey$(9,3)="cup2" � convey$(9,4)="lid" ok$="not"
�   �
�   �box(200,700,880,200)
�   � ok$="no" �
�-     �pri(218,820,"This is not correct!")
�3     �pri(218,750,"Look at what it should be.")
�     �box(840,480,200,200)
�3     ș"OS_SpriteOp",&121,sprite_area1%,"arrow"
�<     �plot_sprite(790,726,1,1,1,1,"arrow",sprite_area1%)
�?     �plot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
�3     ș"OS_SpriteOp",&121,sprite_area1%,"arrow"
�   �
�   � ok$="not" �
�5     �pri(218,820,"There is not enough drink in")
�"     �pri(218,750,"this cup.")
�     �box(840,480,200,200)
�?     �plot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
�   �
�   � ok$="ok" �
�#     �pri(228,820,"Well done.")
�6     �pri(228,750,"The machine has made a drink.")
�   �
�2   B%=screen_two%:C%=screen_one%:�save_screen%
��
��overload%=1 � attempt%=0 �
�   *fx112,1
�   �box(200,400,880,200)
�9   �pri(218,520,"Danger! Do not put too much on the")
�%   �pri(218,450,"conveyer belt.")
��
�
 *FX112,1
� �space(900,9,0,0)
� �reset_drips
� � ok$<>"ok" �draw_in_wires
�< � ok$<>"ok" B%=screen_two%:C%=screen_one%:�save_screen%
�	 �128
�� ok$="ok"
�*FX112,1
�*FX113,1
�   *channelvoice 1 1
�   *RMkill juicy
�   *channelvoice 2 2
�   *RMkill Smbuzz
�   *RMkill bonk
��
�
���reset_drips
��f%=0�5
� �ff%=0�5:drip%(f%,ff%)=0:�:�
��
�
���look_at_wires
�S�out_cir%(9-out_wire%(1))=1 � cup_release%=0 � lid_release%=0 � move_t%+100<� �
�   con_move%=1:move_t%=�
��
�S�out_cir%(9-out_wire%(2))=1 � cup_release%=0 � lid_release%=0 � move_t%+100<� �
�   con_move%=-1:move_t%=�
��
�W�out_cir%(9-out_wire%(5))=1 � cup_release%=0 � cup_t%+400<� � move%=0 � ok_cup%=0 �
�   cup_release%=1:cup_t%=�
��
�0�out_cir%(9-out_wire%(4))=1 � drip%(0,0)=0 �
�   �start_main
��
�A�out_cir%(9-out_wire%(4))=0 � (drip%(0,0)=1 � drip%(0,0)=2) �
�   �stop_main
��
�W�out_cir%(9-out_wire%(3))=1 � lid_release%=0 � lid_t%+400<� � move%=0 � ok_lid%=0 �
�   lid_release%=1:lid_t%=�
��
�?�out_cir%(9-out_wire%(2))=1 �  out_cir%(9-out_wire%(1))=1 �
�
move_t%=�
�ok_lid%=0:ok_cup%=0
��
�>�out_cir%(9-out_wire%(2))=0 � out_cir%(9-out_wire%(1))=0 �
�ok_lid%=0:ok_cup%=0
��
�
��
�
���out_butts(so%)
�total_but%=8
��f%=1 � total_but%
�but%(f%,0)=1190
�but%(f%,1)=770-((f%-1)*96)
�but%(f%,2)=35
�but%(f%,3)=40
�but%(f%,4)=0
�out_cir%(f%)=0
��
��f%=1 � total_but%
�U   �plot_sprite(but%(f%,0),but%(f%,1),1,1,1,1,"on"+�(out_cir%(f%)),sprite_area1%)
�   �so%=1 :�pause(10)
��
��
�
�
���out_status
�
sel%=0
�ȗmx%,my%,mc%
��but_n%=1 � total_but%
��   �mx%<but%(but_n%,0)+but%(but_n%,4) � mx%>(but%(but_n%,0)+but%(but_n%,2))+but%(but_n%,4) � my%<but%(but_n%,1) � my%>(but%(but_n%,1)+but%(but_n%,3))�
�   �
�      �mc%=4:sel%=but_n%
�   �
��
�
�sel%=0 �
   *channelvoice 2 Smbuzz
   �2,-15,1,1
Y�out_cir%(sel%)=0:out_cir%(sel%)=1:but%(sel%,4)=36: � out_cir%(sel%)=0:but%(sel%,4)=0

X�plot_sprite(but%(sel%,0),but%(sel%,1),1,1,1,1,"on"+�(out_cir%(sel%)),sprite_area1%)
d�plot_sprite_masked(but%(sel%,0)-122,but%(sel%,1),1,1,1,1,"led"+�(out_cir%(sel%)),sprite_area1%)
�

��start_move
	�con_move%=0 � move%>0:�

(�cup_release%<>0 � lid_release%<>0:�
move%=1
move_dir%=con_move%

move_num%=0
�

��drop_ends
  �convey%(1,2)>0 �
    �f%=3 � convey%(1,2)
(       convey%(1,f%)=convey%(1,f%)+2
	    �
      �convey%(1,3)>30 �
H         convey%(1,0)=0:convey%(1,1)=0:convey%(1,2)=0:convey%(1,3)=0
      �
  �
  �convey%(9,2)>0 �
    �f%=3 � convey%(9,2)
(       convey%(9,f%)=convey%(9,f%)+1
	    �
      �convey%(9,3)>25 �
         attempt%=1
      �
   �
!�
"
#��convey
$�move%=0:�
%*channelvoice 2 Smbuzz
&�2,-15,&2000,20
'0�move_num%<4 � (move_num%>4 � move_num%<8) �
('  convey_x%=convey_x%+(move_dir%*8)
)A  drip%(drip_pointer%,1)=drip%(drip_pointer%,1)+(move_dir%*8)
*R  �old_drip_ptr%>0 drip%(old_drip_ptr%,1)=drip%(old_drip_ptr%,1)+(move_dir%*8)
+  move_num%=move_num%+1
,:  �an_con_move%=448:an_con_move%=48 � an_con_move%=448
-�
.�move_num%=4 �
/0   �old_drip_ptr%>0:drip%(old_drip_ptr%,0)=3
0   trigger%=0
1   �move_dir%=+1 �
2      �f%=9�1�-1
3       �ff%=0 � 10
4-        convey%(f%,ff%)=convey%(f%-1,ff%)
5-        convey$(f%,ff%)=convey$(f%-1,ff%)
6       �:�
7!       convey_x%=convey_x%-56
8   �
9   �move_dir%=-1 �
:      �f%=0�8�1
;       �ff%=0 � 10
<-        convey%(f%,ff%)=convey%(f%+1,ff%)
=-        convey$(f%,ff%)=convey$(f%+1,ff%)
>       �:�
?!       convey_x%=convey_x%+56
@   �
A   move_num%=move_num%+1
B   �drip%(0,0)>0 �
C     �convey%(5,2)=0 �
D      drop%=20
E
     �
F'      last%=convey%(5,convey%(5,2))
G'      last$=convey$(5,convey%(5,2))
H+      � �last$,3)="cup" add%=6 � add%=1
I      drop%=last%-add%
J
     �
K$      �drip%(0,0)=2 drip%(0,0)=1
L#      drip%(0,1)=main_x%+(64*4)
M      drip%(0,2)=main_y%
N' �      drip%(0,3)=1       :REM top
O&      drip%(0,4)=drop%   :� bottom
P*      drip%(0,5)=1       :� set number
Q   �
R�
S�move_num%=8 �
T  move_num%=0
U
  move%=0
V  con_move%=0
W  ok_cup%=0
X  ok_lid%=0
Y�
Z�
[
\��start_main
]!drip%(0,0)=1       :� increse
^drip%(0,1)=main_x%+(64*4)
_drip%(0,2)=main_y%
`drip%(0,3)=1       :� top
a drip%(0,4)=1       :� bottom
b$drip%(0,5)=1       :� set number
c.� old_drip_ptr%>0 drip%(old_drip_ptr%,0)=3
d�
e
f��stop_main
gdrip%(0,0)=3
h�
i
j��reset_convey
k�f%=0�9
lconvey%(f%,0)=20
mconvey%(f%,1)=0
nconvey%(f%,2)=0
o�
p�  PROCput_cups
q�
r
s��put_cups
tconvey%(1,0)=19
uconvey%(1,1)=1
vconvey%(1,2)=3
wconvey%(1,3)=20
xconvey$(1,3)="cup3"
y
z7convey%(5,0)=13  :� units of 16os down from main_y%
{convey%(5,1)=1
|Kconvey%(5,2)=4   :� position last sprites ie number 3 is first 4 second
}$convey%(5,3)=20  :� first sprite
~convey$(5,3)="cup2"
%convey%(5,4)=14  :� second sprite
�convey$(5,4)="cup"
��
�
�
��release
�.  �move%<>2 � cup_release%=1 � ok_cup%=0 �
�    cup_release%=2
�    ok_cup%=1
�    �convey%(3,2)=0 �
�    *channelvoice 2 Smbuzz
�    �2,-15,&2000,1
�      convey%(3,2)=3
�      convey%(3,3)=20
�      cup_drop%=20
�	    �
�'      last%=convey%(3,convey%(3,2))
�'      last$=convey$(3,convey%(3,2))
�+      � �last$,3)="cup" add%=6 � add%=1
�T      � last$="cup" convey$(3,convey%(3,2))="cup"+�(convey%(3,1)):convey%(3,1)=0
�      cup_drop%=last%-add%
�#      �cup_drop%<10 overload%=1
�%      convey%(3,2)=convey%(3,2)+1
�%      �convey%(3,2)>6 overload%=1
�	    �
�:    convey%(3,0)=cup_drop%-1     :� fluid goes down to
�9    convey%(3,convey%(3,2))=4    :� first view of cup
�3    convey%(3,1)=1               :� cup number1
�%    convey$(3,convey%(3,2))="cup"
�  �
�;  �cup_release%=2 � cup_drop%=convey%(3,convey%(3,2)) �
�    *channelvoice 2 bonk
�    �2,-15,&3000,20
�    cup_release%=0
�  �
�
�  �cup_release%=2 �
�9    convey%(3,convey%(3,2))=convey%(3,convey%(3,2))+1
�  �
�
�.  �move%<>2 � lid_release%=1 � ok_lid%=0 �
�    lid_release%=2
�    ok_lid%=1
�    �convey%(7,2)=0 �
�      convey%(7,2)=3
�      convey%(7,3)=20
�      lid_drop%=20
�	    �
�'      last%=convey%(7,convey%(7,2))
�'      last$=convey$(7,convey%(7,2))
�+      � �last$,3)="cup" add%=6 � add%=1
�T      � last$="cup" convey$(7,convey%(7,2))="cup"+�(convey%(7,1)):convey%(7,1)=0
�      lid_drop%=last%-add%
�#      �lid_drop%<10 overload%=1
�%      convey%(7,2)=convey%(7,2)+1
�%      �convey%(7,2)>6 overload%=1
�	    �
�:    convey%(7,0)=lid_drop%-1     :� fluid goes down to
�9    convey%(7,convey%(7,2))=4    :� first view of cup
�3    convey%(7,1)=0               :� cup number1
�%    convey$(7,convey%(7,2))="lid"
�
�  �
�;  �lid_release%=2 � lid_drop%=convey%(7,convey%(7,2)) �
�    lid_release%=0
�  �
�
�  �lid_release%=2 �
�9    convey%(7,convey%(7,2))=convey%(7,convey%(7,2))+1
�  �
�
��
�
�
��display
�V�plot_sprite_masked(display_x%+(32*3),display_y%,1,1,1,1,"cup_mac1",sprite_area1%)
�X�plot_sprite_masked(display_x%+(32*7),display_y%,1,1,1,1,"drink_mach",sprite_area1%)
�W�plot_sprite_masked(display_x%+(32*11),display_y%,1,1,1,1,"lid_mac1",sprite_area1%)
��
�
�
��grid
�?�plot_sprite_masked(704,48,1,1,1,1,"convey1",sprite_area1%)
�@�plot_sprite_masked(704,448,1,1,1,1,"convey0",sprite_area1%)
��
�
���put_in_sprites
�
�fff%=1�9
�   �convey%(fff%,2)=0 �:�
�   �ff%=3 � convey%(fff%,2)
�!    sprite$=convey$(fff%,ff%)
�9    �sprite$="cup":sprite$=sprite$+�(convey%(fff%,1))
�q    �plot_sprite_masked(convey_x%+((fff%-1)*64),main_y%-(convey%(fff%,ff%)*16),1,1,1,1,sprite$,sprite_area1%)
�   �
��
��
�
���set_drip_sp
�	��d`D
��f%=1�30:�drip$(f%):�
��� drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6,drip6
�	��deD
�$�f%=1�5:�sdrip$(f%),sdrip%(f%):�
�1�f%=6�30:sdrip$(f%)="drip6":sdrip%(f%)=f%-1:�
��
�-� drip1,4,drip2,4,drip3,4,drip4,4,drip5,4
��
�
���check_main
�A� PRINTdrip%(0,0),drip%(0,3),drip%(0,4),drip%(0,4)-drip%(0,3)
�� Update main data
��drip%(0,0)=0:�
�/�soundcnt%+40<� �1,-15,&3000,10:soundcnt%=�
�>�(drip%(0,0)=1 � drip%(0,0)=3) � drip%(0,4)<convey%(5,0) �
�!      drip%(0,4)=drip%(0,4)+1
��
�-�drip%(0,0)=1 � drip%(0,4)=convey%(5,0) �
�      drip%(0,0)=2
��
�D�drip%(0,4)=convey%(5,0) �move%<>2 �trigger%=0 �convey%(5,1)=0 �
�0      drip%(drip_pointer%,0)=1:�  start flow
�1      drip%(drip_pointer%,1)=convey_x%+(64*4)
�8      drip%(drip_pointer%,2)=main_y%-(16*drip%(0,4))
�"      drip%(drip_pointer%,3)=1
�"      drip%(drip_pointer%,4)=1
�"      drip%(drip_pointer%,5)=1
�%      old_drip_ptr%=drip_pointer%
�H      drip_pointer%=drip_pointer%+1:�drip_pointer%=5 drip_pointer%=1
�      trigger%=1
��
�G�drip%(0,4)=convey%(5,0) �move%<>2 �convey%(5,1)>0 � drip%(0,0)>0 �
�!      cup_count%=cup_count%+1
          �cup_count%>8 �
             cup_count%=1
,             convey%(5,0)=convey%(5,0)-1
,             convey%(5,1)=convey%(5,1)+1
(             drip%(0,4)=drip%(0,4)-1
"             �convey%(5,1)=6 �
#                 convey%(5,1)=0
3                 convey$(5,convey%(5,2))="cup6"
             �
	          �

�
+�drip%(0,0)=3 � drip%(0,3)<drip%(0,4) �
!      drip%(0,3)=drip%(0,3)+1

�
E�drip%(0,0)=3 � (drip%(0,3)>drip%(0,4) � drip%(0,3)=drip%(0,4)) �
      drip%(0,0)=0
3      �old_drip_ptr%>0:drip%(old_drip_ptr%,0)=3
      trigger%=0
�
�f%=drip%(0,3) � drip%(0,4)
d�plot_sprite_masked(drip%(0,1),drip%(0,2)-(f%*16),1,1,1,1,�(drip%(0,5))+drip$(f%),sprite_area1%)
�
�

��check_drips
�ff%=1 � 4
�drip%(ff%,0)=0:�:�
H�(drip%(ff%,0)=1 � drip%(ff%,0)=3) � drip%(ff%,4)<bottom_height_n% �
%      drip%(ff%,4)=drip%(ff%,4)+1
�
5�drip%(ff%,0)=1 � drip%(ff%,4)=bottom_height_n% �
      drip%(ff%,0)=2
 �
!1�drip%(ff%,0)=3 � drip%(ff%,3)<drip%(ff%,4) �
"%      drip%(ff%,3)=drip%(ff%,3)+1
#�
$1�drip%(ff%,0)=3 � drip%(ff%,3)=drip%(ff%,4) �
%      drip%(ff%,0)=0
&�
'#�f%=drip%(ff%,3) � drip%(ff%,4)
(q�plot_sprite_masked(drip%(ff%,1),drip%(ff%,2)-(sdrip%(f%)*16),1,1,1,1,�(drip%(0,5))+sdrip$(f%),sprite_area1%)
)�
*�
+
,�
-
.
/��intro1
0*FX112,2
1	an%=4
2
ann%=5
3�0,3
4�f%=0�8 �2
5L  �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
6�
7:�plot_sprite(100,616,1,1,1,1,"r"+�(an%),sprite_area1%)
8;�plot_sprite(480,616,1,1,1,1,"r"+�(ann%),sprite_area1%)
9?�plot_sprite_masked(800,732,1,1,1,1,"knife1",sprite_area1%)
:7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
;fade$="fade"
<5�V%=0 �top_blank:�"FX112,2":�top_blank:�"FX112,1"
=�fade(0,960,4,0,1,1)
>an_t%=�
?*fx112,1
@�box(40,46,1200,94)
A<�pri(70,78,"Professor Roberts will be along very soon.")
B�space(1024,62,1,0)
C�box(40,46,1200,94)
D�pause(40)
E5�pri(70,78,"He is just finishing an experiment.")
F�space(1024,62,1,0)
G/B%=screen_two%:C%=screen_one%:�save_screen%
H*fx112,2
I:*RMensure puff *RMload "<Crystal2$dir>.PT0.sound.puff"
J@*RMensure explode *RMload "<Crystal2$dir>.PT0.sound.explode"
K*channelvoice 1 explode
L*channelvoice 2 explode
M
� explode
N*fx112,1
Of%=1:inc%=1
P�1,-15,&2000,2
Q�
R
�st_pause
S�f%=2 �2,-15,&1600,2
T3�plot_sprite(32,188,1,1,1,1,"flash"+�(f%),sa1%)
U�en_pause(10)
Vf%=f%+inc%
W�f%=5 inc%=-1:f%=3
X	�f%=0
Y.�plot_sprite(32,188,1,1,1,1,"flash5",sa1%)
Z7   �plot_sprite(100,616,1,1,1,1,"r9",sprite_area1%)
[7   �plot_sprite(480,616,1,1,1,1,"r9",sprite_area1%)
\�pause(10)
]*channelvoice 1 puff
^   �1,-15,&2000,30
_7   �plot_sprite(210,676,1,1,1,1,"s1",sprite_area1%)
`7   �plot_sprite(590,676,1,1,1,1,"s1",sprite_area1%)
a�pause(40)
b7   �plot_sprite(210,676,1,1,1,1,"s3",sprite_area1%)
c7   �plot_sprite(590,676,1,1,1,1,"s3",sprite_area1%)
d�pause(40)
e7   �plot_sprite(210,676,1,1,1,1,"s4",sprite_area1%)
f7   �plot_sprite(590,676,1,1,1,1,"s4",sprite_area1%)
g�pause(40)
h7   �plot_sprite(210,676,1,1,1,1,"s5",sprite_area1%)
i7   �plot_sprite(590,676,1,1,1,1,"s5",sprite_area1%)
j�pause(40)
k7   �plot_sprite(210,676,1,1,1,1,"s6",sprite_area1%)
l7   �plot_sprite(590,676,1,1,1,1,"s6",sprite_area1%)
m�pause(100)
n/B%=screen_one%:C%=screen_two%:�save_screen%
o�pause(100)
pf%=1:inc%=1
q*channelvoice 1 explode
r:*RMensure door *RMload "<Crystal2$dir>.PT0.sound.door"
s*RmKill puff
t�1,-15,&2000,2
u�
v
�st_pause
w�f%=2 �2,-15,&1600,2
x3�plot_sprite(32,188,1,1,1,1,"flash"+�(f%),sa1%)
y�en_pause(10)
zf%=f%+inc%
{�f%=5 inc%=-1:f%=3
|	�f%=0
}.�plot_sprite(32,188,1,1,1,1,"flash5",sa1%)
~*fx113,1
*fx112,2
�*channelvoice 1 door
�� 1,-15,&1600,2
�9�plot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
�7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
�?�plot_sprite_masked(818,654,1,1,1,1,"knife7",sprite_area1%)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��pause(30)
�9�plot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
�7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
�?�plot_sprite_masked(926,558,1,1,1,1,"knife3",sprite_area1%)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��pause(20)
�9�plot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
�7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
�?�plot_sprite_masked(926,558,1,1,1,1,"knife3",sprite_area1%)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��pause(10)
�9�plot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
�7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
�?�plot_sprite_masked(978,546,1,1,1,1,"knife9",sprite_area1%)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��pause(50)
�*RmKill door
�<*RMensure chop1 *RMload "<Crystal2$dir>.PT0.sound.chop1"
�:*RMensure bonk *RMload "<Crystal2$dir>.PT0.sound.bonk"
�f%=1:inc%=1
�*fx113,1
�*fx112,1
��1,-15,&2000,2
��
�
�st_pause
��f%=2 �2,-15,&1600,2
�3�plot_sprite(32,188,1,1,1,1,"flash"+�(f%),sa1%)
��en_pause(10)
�f%=f%+inc%
��f%=5 inc%=-1:f%=3
�	�f%=0
�.�plot_sprite(32,188,1,1,1,1,"flash5",sa1%)
�/B%=screen_one%:C%=screen_two%:�save_screen%
�an_x%=0:an_y%=372
�an_x2%=0:an_y2%=372
�incx%=32
�incy%=4
�sel_sprite$="p2"
�sel_sprite2$="p2"
�� VDU24,160;128;1118;918;
�*fx112,2
��start_anim("blank")
�*fx112,1
��start_anim2("blank2")
�*channelvoice 1 chop1
��fly%=0�22
� �st_pause
� an_x%=an_x2%
� an_x%=an_x%+incx%
� an_y%=an_y2%
� an_y%=an_y%+incy%
��fly%=3 incx%=24:incy%=0
�@�fly%=5 incx%=20:incy%=-4:sel_sprite$="p2":sel_sprite2$="p2"
��fly%=7  incy%=-8
��fly%=9 incy%=-16
��fly%=11 incy%=-24
�N�fly%=15 incx%=8:incy%=0:sel_sprite$="p4":sel_sprite2$="p4":�1,-15,&2000,2
�
 *FX113,1
�
 *FX112,2
�
 *FX19
� �anim("blank")
� �en_pause(5)
� �st_pause
� an_x2%=an_x%
� an_x2%=an_x2%+incx%
� an_y2%=an_y%
� an_y2%=an_y2%+incy%
�
 *FX113,2
�
 *FX112,1
�
 *FX19
� �anim2("blank2")
� �en_pause(5)
��
�*channelvoice 2 bonk
�*FX113,2
�*FX112,1
�9�plot_sprite(802,544,1,1,1,1,"blank33",sprite_area1%)
�7�plot_sprite(880,753,1,1,1,1,"block",sprite_area1%)
�/B%=screen_one%:C%=screen_two%:�save_screen%
�an_x%=978:an_y%=546
�an_x2%=978:an_y2%=546
�incx%=0
�incy%=-6
�sel_sprite$="knife9"
�sel_sprite2$="knife9"
�*fx112,2
��start_anim("blank")
�*fx112,1
��start_anim2("blank2")
��fly%=0�15
� �st_pause
� an_x%=an_x2%
� an_x%=an_x%+incx%
� an_y%=an_y2%
� an_y%=an_y%+incy%
��fly%=3 incy%=-6
��fly%=5 incy%=-8
��fly%=7 incy%=-12
��fly%=9 incy%=-16
��fly%=11 incy%=-20
��fly%=13 incy%=-24
�
 *FX113,1
�
 *FX112,2
�
 *FX19
� �anim("blank")
�> �plot_sprite_masked(964,152,1,1,1,1,"LEG2",sprite_area1%)
� �en_pause(2)
� �st_pause
� an_x2%=an_x%
� an_x2%=an_x2%+incx%
� an_y2%=an_y%
� an_y2%=an_y2%+incy%
�
 *FX113,2
�
 *FX112,1
�
 *FX19
� �anim2("blank2")
�> �plot_sprite_masked(964,152,1,1,1,1,"LEG2",sprite_area1%)
� �en_pause(2)
��
��1,-15,&2000,2
�
 *FX112,2
��pause(100)
7�plot_sprite(858,320,1,1,1,1,"HEAD1",sprite_area1%)
�pause(200)
9�plot_sprite(802,761,1,1,1,1,"blockcl",sprite_area1%)
�f%=722 � 418 �-16
 �st_pause
9  �plot_sprite(880,f%,1,1,1,1,"block2",sprite_area1%)
 �en_pause(2)
�
�2,-15,&2000,2
	7�plot_sprite(858,320,1,1,1,1,"HEAD2",sprite_area1%)

/B%=screen_two%:C%=screen_one%:�save_screen%
�pause(50)
*channelvoice 1 1

*channelvoice 2 2
*RMkill bonk
*RMkill chop1
*RMkill explode
*FX112,1
*FX113,1
  butbox_x%=108:butbox_y%=560
, �box(butbox_x%-24,butbox_y%-16,650,388)
/ �pri(120,870,"This is Professor Roberts.")
 �pause(100)
. �pri(120,800,"He is glad you have found")
+ �pri(120,730,"his temple laboratory.")
 �pause(100)
. �pri(120,660,"The meeting will start in")
# �pri(120,590,"a few minutes.")
 �space(900,9,0,0)
0 B%=screen_two%:C%=screen_one%:�save_screen%
 butbox_x%=88:butbox_y%=280
, �box(butbox_x%-24,butbox_y%-16,700,280)
 0 �pri(100,460,"While you are waiting,  you")
!/ �pri(100,390,"can go upstairs for a cool")
" �pri(100,320,"drink.")
#�load_sprites("sp_start2")
$.�load_picture(picture1%+(1024*15),"wall2")
%�space(900,9,1,0)
&*FX112,2
'�129
(�
)�V%=0 �top_blank
*!A%=picture1%+(1024*15):�draw%
+�f%=0�8 �2
,L  �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
-�
.�box(200,700,880,200)
/fade$="fade"
0< �pri(218,820,"This is the professor's drinks machine.")
10 �pri(218,750,"As usual,  it needs fixing.")
2�V%=0 �top_blank
3�fade(0,960,4,0,1,1)
4�129
5�
6!A%=picture1%+(1024*15):�draw%
7�f%=0�8 �2
8L  �31-f%,32-f%:�1249+f%,32-f%:�1249+f%,933+f%:�31-f%,933+f%:�31-f%,32-f%
9�
:*FX112,1
;�space(900,9,0,0)
</B%=screen_two%:C%=screen_one%:�save_screen%
=�V%=0 �top_blank
>�pause(100)
?�box(200,700,880,200)
@6�pri(238,820,"The machine should fill a cup with")
A0�pri(238,750,"juice and then put a lid on.")
B�space(900,9,0,0)
C�box(840,480,200,200)
D:�plot_sprite(870,506,1,1,1,1,"explain1",sprite_area1%)
E�pause(200)
F:�plot_sprite(870,506,1,1,1,1,"explain2",sprite_area1%)
G�pause(200)
H:�plot_sprite(870,506,1,1,1,1,"explain3",sprite_area1%)
I�pause(200)
J�box(200,700,880,200)
K.�pri(328,780,"There are no instructions!")
L�space(900,9,0,0)
M�
N
O��draw_in_wires
P*FX112,2
Q�128
R�
S�V%=0 �top_blank
T   butbox_x%=100:butbox_y%=24
U  wire_x%=836:wire_y%=64
V  sa1%=sprite_area1%
W  display_x%=64
X  display_y%=700
Y.�draw_output_base(wire_x%+(16*13),wire_y%)
Z+�box(butbox_x%-24,butbox_y%-16,650,180)
[  �set_output
\  �display
]  A%=picture1%:�draw%
^�
_
`��game1
a<*RMensure click *RMload "<Crystal2$dir>.PT0.sound.click"
b*channelvoice 1 click
c'�load_picture(picture1%,"wire_bac")
d�draw_in_wires
e�first_info
ffade$="fade"
g*FX112,1
h�fade(0,960,4,0,1,1)
i�space(760,9,0,0)
j�second_info
k�space(760,9,0,0)
l  finished%=0
m  �
n    �set_output
o    *FX112,1
p    �info1
q    �get_a_wire
r    wire%=got_wire%
s    �set_wire_anim(wire%)
t    �anim_wire(wire%)
u  ��all_connected=1
v*channelvoice 1 1
w*RMkill click
x�
y
z��anim_wire(wire%)
{  *FX112,1
|
end%=0
}+�box(butbox_x%-24,butbox_y%-16,650,180)
~�
  *FX112,1
�  �define_buttons(2)
�+  �set_pos_buttons(butbox_x%,butbox_y%)
�  �pause(10)
�  �:ȗmx%,my%,mc%:�mc%=0
�!  �msxf%=1�10:ȗmx%,my%,mc%:�
�  �set_new_buttons
�	  ȗ�
�  �
�  �check_buttons(an_num%)
�  �selected%>0
�  *FX112,2
�  �selected%=6 �
�    end%=1
�M    �move_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
�    �find_wire(wire%)
�*    �draw_wire(ac1%,height%,ac2%,end$)
�S    �move_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
�  �
�.  �selected%=7 end%=2:� check final ending
�  �selected%=5 �
�    connect%=�plugok
�    �connect%>0 �
�      �1,-15,&2800,30
�"      �in%=1 height%=height%-1
�      end$="con_in1"
�O      �move_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
�'      st_wire_x%=wx%:st_wire_y%=wy%
�,      �draw_wire(ac1%,height%,ac2%,end$)
�U      �move_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
�      height%=height%-1
�      end$="con_in3"
�#      out_wire%(wire%)=connect%
�      end%=1
�      �pause(30)
�	    �
�  �
�=  �selected%=1 � (wire%-1)*5+height%<26:height%=height%+1
�-  �selected%=2 � ac1%+ac2%<16 ac2%=ac2%+1
�=  �selected%=3 � (wire%-1)*5+height%>3 :height%=height%-1
�'  �selected%=4 � ac2%>1 ac2%=ac2%-1
�K  �move_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
�#  st_wire_x%=wx%:st_wire_y%=wy%
�(  �draw_wire(ac1%,height%,ac2%,end$)
�Q  �move_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
�� end%=1
��
�
�ݤplugok
�  �ac1%+ac2%<16:=0
�  pos%=(wire%-1)*5+height%
�  in%=1
�  ��t|F
�  �
�  in%=(in%*-1)+1
�  �con%,read%
�  �pos%=read% � read%=0
�  �read%=0:=0
�k  �out_wire%(1)=con% � out_wire%(2)=con% � out_wire%(3)=con% � out_wire%(4)=con% � out_wire%(5)=con%:=0
�  =con%
�
�U� 1,4,1,5,2,7,2,8,3,10,3,11,4,13,4,14,5,16,5,17,6,19,6,20,7,22,7,23,8,25,8,26,0,0
�
���set_wire_anim(wire%)
�*fx112,2
��0,128:�
�0  �draw_output_base(wire_x%+(16*13),wire_y%)
�
  �w%=1�5
�  �wire%<>w% �find_wire(w%)
�3  �wire%<>w% �draw_wire(ac1%,height%,ac2%,end$)
�  �
�  �find_wire(wire%)
�#  wx%=st_wire_x%:wy%=st_wire_y%
�K  �move_block(screen_two%,wire_x%,wire_y%,screen_two%,0,wire_y%,88,216)
�
�  �old_w%=1 �
�*      end$="con_in1":height%=height%+1
�O      �move_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
�'      st_wire_x%=wx%:st_wire_y%=wy%
�,      �draw_wire(ac1%,height%,ac2%,end$)
�U      �move_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
�      end$="con"
�      out_wire%(wire%)=0
�      �pause(50)
�'      st_wire_x%=wx%:st_wire_y%=wy%
�      height%=height%+1
�  �
�      ac2%=ac2%+2
�  �
�K  �move_block(screen_two%,0,wire_y%,screen_two%,wire_x%,wire_y%,88,216)
�(  �draw_wire(ac1%,height%,ac2%,end$)
�
�Q  �move_block(screen_two%,wire_x%,wire_y%,screen_one%,wire_x%,wire_y%,88,216)
�
��
�
���get_a_wire
�got_wire%=0
�old_w%=0
�ȗ �
�  �
�   �:ȗmx%,my%,mc%:� mc%>0
�*   �mc%=4 got_wire%=�new_wire(mx%,my%)
�8   �mc%=4 � got_wire%=0:got_wire%=�old_wire(mx%,my%)
�  �got_wire%>0
��
�
�ݤnew_wire(mx%,my%)
�
 old_w%=0
�* � is mouse click in the correct x pos
� �mx%>wire_x%+200 � =0
�$ pos_wire%=((my%-wire_y%)/160)+1
�. �out_wire%(pos_wire%)=0 � =pos_wire% � =0
�
�ݤold_wire(mx%,my%)
� old_w%=1:res%=0
�* �mx%<wire_x%+270 � mx%>wire_x%+340 =0
�% pos_wire%=(((my%-wire_y%))/96)+1
� �g%=1�5
�% �out_wire%(g%)=pos_wire%:res%=g%
� �
�
 =res%
�
�ݤall_connected
� all%=1
� �f%=1 � 5
� �out_wire%(f%)=0 all%=0
� �
�
 =all%

%��draw_output_base(out_x%,out_y%)

:�plot_sprite(out_x%-22,out_y%-64,1,1,1,1,"base2",sa1%)

out_nu%=8
  �f%=32 � 780 � 96
G  �plot_sprite_masked(out_x%+64,out_y%+f%,1,1,1,1,"out_holes",sa1%)
E  �plot_sprite_masked(out_x%+4,out_y%+f%,1,1,1,1,�(out_nu%),sa1%)
B  �plot_sprite_masked(out_x%+24,out_y%+f%,1,1,1,1,"led0",sa1%)
	  out_nu%=out_nu%-1

  �
�


��first_info
+�box(butbox_x%-24,butbox_y%-16,650,180)
?�pri(butbox_x%-8,butbox_y%+102,"This is the inside of the")
4�pri(butbox_x%-8,butbox_y%+32,"drinks machine.")
�

��main_info
+�box(butbox_x%-24,butbox_y%-16,650,180)
@�pri(butbox_x%+30,butbox_y%+102,"There is a switch next to")
2�pri(butbox_x%+30,butbox_y%+32,"each output.")
�pause(100)
�out_butts(1)
�space(760,9,0,0)
�pause(10)
+�box(butbox_x%-24,butbox_y%-16,650,180)
@�pri(butbox_x%-12,butbox_y%+102,"You must turn the outputs")
C�pri(butbox_x%-12,butbox_y%+32,"on and off to make the drink.")
�space(760,9,0,0)
�
 
!��main_two
"*FX112,1
#+�box(butbox_x%-24,butbox_y%-16,650,180)
$5�pri(butbox_x%-8,butbox_y%+102,"Move your drink")
%7�pri(butbox_x%-8,butbox_y%+32,"to the DRINK sign.")
&9�plot_sprite(550,24,1,1,1,1,"explain3",sprite_area1%)
'�space(760,9,0,0)
(+�box(butbox_x%-24,butbox_y%-16,650,180)
)6�pri(butbox_x%-8,butbox_y%+102,"Turn the outputs")
*0�pri(butbox_x%-8,butbox_y%+32,"ON and OFF.")
+6�plot_sprite(550,24,1,1,1,1,"arrow",sprite_area1%)
,�
-
.��second_info
/+�box(butbox_x%-24,butbox_y%-16,650,180)
0<�pri(butbox_x%-8,butbox_y%+102,"First you will need to")
1>�pri(butbox_x%-8,butbox_y%+32,"connect all of the wires.")
2�
3
4
5
6��info1
7+�box(butbox_x%-24,butbox_y%-16,650,180)
8B�pri(butbox_x%+30,butbox_y%+100,"Click on the end of a wire.")
96�plot_sprite(550,24,1,1,1,1,"arrow",sprite_area1%)
:�
;
<
=��set_output
>  �wire%=1�5
?  �find_wire(wire%)
@(  �draw_wire(ac1%,height%,ac2%,end$)
A  �
B�
C
D��find_wire(wire%)
E+� find start and end positions of wires
F;  �wire%=1 st_wire_x%=wire_x%:st_wire_y%=wire_y%:� �tEG
G?  �wire%=2 st_wire_x%=wire_x%:st_wire_y%=wire_y%+160:� �tFG
H?  �wire%=3 st_wire_x%=wire_x%:st_wire_y%=wire_y%+320:� �tGG
I?  �wire%=4 st_wire_x%=wire_x%:st_wire_y%=wire_y%+480:� �tHG
J?  �wire%=5 st_wire_x%=wire_x%:st_wire_y%=wire_y%+640:� �tIG
K<�type%=0 � out_wire%(wire%):� find data to draw wire in.
L� ac1%,height%,ac2%
M�
N3�out_wire%(wire%)=0 end$="con" � end$="con_in3"
O�
P
Q
R'��draw_wire(ac1%,height%,ac2%,end$)
S� across wire one
T�f%=1 � ac1%
U@�plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
Vst_wire_x%=st_wire_x%+16
W�
X� up or down
Y�height%=1 �
ZB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w5",sa1%)
[  st_wire_y%=st_wire_y%+32
\B  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w2",sa1%)
]�
^�height%=-1 �
_B  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w6",sa1%)
`  st_wire_y%=st_wire_y%-32
aB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w3",sa1%)
b�
c�height%=0 �
dB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
e�
f�height%>1 �
gB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w5",sa1%)
h  vert%=height%-1
i  �f%=1 � vert%
j  st_wire_y%=st_wire_y%+32
kB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w4",sa1%)
l  �
m  st_wire_y%=st_wire_y%+32
nB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w2",sa1%)
o�
p�height%<-1 �
qB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w6",sa1%)
r  vert%=(height%*-1)-1
s  �f%=1 � vert%
t  st_wire_y%=st_wire_y%-32
uB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w4",sa1%)
v  �
w  st_wire_y%=st_wire_y%-32
xB  �plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w3",sa1%)
y�
zst_wire_x%=st_wire_x%+16
{�f%=1 � ac2%
|@�plot_sprite_masked(st_wire_x%,st_wire_y%,1,1,1,1,"w1",sa1%)
}st_wire_x%=st_wire_x%+16
~�
%down%=96:�end$="con_in3":down%=64
�F�plot_sprite_masked(st_wire_x%,st_wire_y%-down%,1,1,1,1,end$,sa1%)
��
�
�3� across? up/down? up? left/right? across? end?
�
�H� 5,3,1,5,3,11,5,6,11,5,9,11,5,12,11,5,15,11,5,18,11,5,21,11,5,24,11
�H� 4,3,2,4,-2,12,4,1,12,4,4,12,4,7,12,4,10,12,4,13,12,4,16,12,4,19,12
�H� 3,3,3,3,-7,13,3,-4,13,3,-1,13,3,2,13,3,5,13,3,8,13,3,11,13,3,14,13
�H� 2,3,4,2,-12,14,2,-9,14,2,-6,14,2,-3,14,2,0,14,2,3,14,2,6,14,2,9,14
�L� 1,3,5,1,-17,15,1,-14,15,1,-11,15,1,-8,15,1,-5,15,1,-2,15,1,1,15,1,4,15
�
�
���jungle(x%,y%)
�  ȑ0,0
�  an_p%=30
�=   *RMensure jung *RMload "<Crystal2$dir>.PT0.sound.jung"
�   *channelvoice 1 jung
�*FX112,2
�A%=120*(V%+1):
�QB%=screen_two%+(1-V%)*(320*16):C%=&01010101:D%=&10101010:E%=320:�fill_screen%
�1�24,x%+16;y%+32;x%+1004;y%+918;18,0,131,16,26
�<� create and store back sprite for first plant animation
��Z%>2 move%=2 � move%=1
�Isidex%(0)=x%+200:sidey%(0)=y%+200:sp$(0)="temple2":di%(0)=0:inc%(0)=0
�Csidex%(1)=x%+240:sidey%(1)=y%:sp$(1)="newp8":di%(1)=0:inc%(1)=0
�Lsidex%(2)=x%+32:sidey%(2)=y%+32:sp$(2)="newp8":di%(2)=0:inc%(2)=-4*move%
�Lsidex%(3)=x%+440:sidey%(3)=y%+32:sp$(3)="newp6":di%(3)=1:inc%(3)=4*move%
�Msidex%(4)=x%+440:sidey%(4)=y%+300:sp$(4)="newp8":di%(4)=1:inc%(4)=8*move%
�Msidex%(5)=x%+32:sidey%(5)=y%+340:sp$(5)="newp6":di%(5)=0:inc%(5)=-8*move%
�Fsidex%(6)=x%+300:sidey%(6)=y%+0:sp$(6)="plant1":di%(6)=0:inc%(6)=0
�Fsidex%(7)=x%+420:sidey%(7)=y%-32:sp$(7)="leaf2":di%(7)=0:inc%(7)=0
�Gsidex%(8)=x%+100:sidey%(8)=y%-40:sp$(8)="plant1":di%(8)=0:inc%(8)=0
�  *FX112,2
�C  �plot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
�"�24,32;200;922;400;18,0,143,16
�"�24,x%+32;y%+48;x%+992;y%+890;
�base%=8
��f%=0 � base%
�$  � di%(f%)=1 �flip_hor(sp$(f%))
�N  �plot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
�\  � f%=6 �plot_sprite_masked(sidex%(f%)+286,sidey%(f%)-4,1,1,1,1,"plant2",sprite_area1%)
�$  � di%(f%)=1 �flip_hor(sp$(f%))
��
�?ș"OS_SpriteOp",&110,sprite_area2%,"blank",0,300,32,700,500
�?�plot_sprite_masked(384,-44,1,1,1,1,"plant2",sprite_area1%)
�
�%frx1%=486:fry1%=152:bl1$="blank1"
�$frx2%=350:fry2%=48:bl2$="blank2"
�
�,an_x%=frx1%:an_y%=fry1%:sel_sprite$="f1"
��start_anim(bl1$)
�-an_x%=frx2%:an_y%=fry2%:sel_sprite$="ff1"
��start_anim(bl2$)
�*FX112,1
�� PROCpause(100)
�fade$="fade"
�<� IFT%=2 THEN T%=1:PROCpause(100):IF Y%=1:PROCpause(200)
�5�V%=0 �top_blank:�"FX112,2":�top_blank:�"FX112,1"
��fade(0,960,4,0,1,1)
��U%=0 �1,-15,&2500,20
�sound_t%=�
��pause(200)
��26
��box(840,430,400,360)
�$�pri(868,720,"You are at a top")
�#�pri(868,660,"secret location")
��pri(868,600,"hidden deep")
�#�pri(868,540,"inside the rain")
��pri(868,480,"forest.")
��space(1024,32,2,0)
�/B%=screen_two%:C%=screen_one%:�save_screen%
��U%=0 �
��
�<*RMensure chop1 *RMload "<Crystal2$dir>.PT0.sound.chop1"
�*channelvoice 2 chop1
�*FX112,2
�"�24,x%+32;y%+48;x%+992;y%+890;
��pause(20)
�.an_xx%=frx1%:an_yy%=fry1%:sel_sprite$="f1"
�,�frog_anim(1,frx1%,fry1%,8,8,8,4,2,bl1$)
��pause(40)
�,�frog_anim(1,frx1%,fry1%,8,6,8,4,2,bl1$)
�.an_xx%=frx2%:an_yy%=fry2%:sel_sprite$="f2"
�/�frog_anim(2,frx2%,fry2%,-8,12,12,4,4,bl2$)
��pause(40)
�-�frog_anim(2,frx2%,fry2%,-8,4,2,2,2,bl2$)
�.an_xx%=frx1%:an_yy%=fry1%:sel_sprite$="f1"
��pause(40)
�,�frog_anim(1,frx1%,fry1%,8,8,8,4,2,bl1$)
�.an_xx%=frx2%:an_yy%=fry2%:sel_sprite$="f2"
��pause(40)
�/�frog_anim(2,frx2%,fry2%,-8,10,10,2,2,bl2$)
��pause(100)
�kx%=440:ky%=32:ly%=-44
��f%=1�9
�
�st_pause
�9�plot_sprite(300,32,1,1,1,1+V%,"blank",sprite_area2%)
�?�plot_sprite_masked(384,ly%,1,1,1,1,"plant2",sprite_area1%)
�>�plot_sprite_masked(kx%,ky%,1,1,1,1,"knife",sprite_area1%)
�I�plot_sprite_masked(sidex%(8),sidey%(8),1,1,1,1,sp$(8),sprite_area1%)
�/B%=screen_two%:C%=screen_one%:�save_screen%
�"�ly%>-70 kx%=kx%-40:ky%=ky%-40
��ky%<-48 ly%=ly%-40
��f%=4 �2,-15,&4000,&3
��Z%<4 �en_pause(6-Z%)
��
�base%=5
��f%=0 � base%
�$  � di%(f%)=1 �flip_hor(sp$(f%))
�N  �plot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
�$  � di%(f%)=1 �flip_hor(sp$(f%))
��
�?ș"OS_SpriteOp",&110,sprite_area2%,"blank",0,300,32,900,500
�base%=8
�	yp%=0
��flip_hor("knife")
��ff%=1 � 18
�
�st_pause
�9�plot_sprite(300,32,1,1,1,1+V%,"blank",sprite_area2%)
��f%=6 � base%
�R  �plot_sprite_masked(sidex%(f%),sidey%(f%)-yp%,1,1,1,1,sp$(f%),sprite_area1%)
�b  � f%=6 �plot_sprite_masked(sidex%(f%)+286,sidey%(f%)-(4+yp%),1,1,1,1,"plant2",sprite_area1%)
��
�A�plot_sprite_masked(500,32-yp%,1,1,1,1,"knife",sprite_area1%)
��ff%=3 �2,-15,&3000,10
�/B%=screen_two%:C%=screen_one%:�save_screen%
�yp%=yp%+20
��en_pause(5-Z%)
�
base%=5
loop%=20
�Z%>2 loop%=10
�ff%=0 � loop%
�ff% � 6=0  �1,-13,&2500,10
sidey%(1)=sidey%(1)-4
sidey%(0)=sidey%(0)+4

�st_pause
	*FX112,2

C  �plot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
"�24,32;200;922;400;18,0,143,16
"�24,x%+32;y%+48;x%+992;y%+890;

�f%=0 � base%
$  sidex%(f%)=sidex%(f%)+inc%(f%)
$  � di%(f%)=1 �flip_hor(sp$(f%))
N  �plot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
$  � di%(f%)=1 �flip_hor(sp$(f%))
�
*FX113,2
� Z%<4 �en_pause(an_p%)

�st_pause
*FX112,1
C  �plot_sprite(x%+32,y%+48+(88*4),1,1,1,1,"newp",sprite_area2%)
"�24,32;200;922;400;18,0,143,16
"�24,x%+32;y%+48;x%+992;y%+890;
�f%=0 � base%
$  sidex%(f%)=sidex%(f%)+inc%(f%)
*  � f%>0 sidey%(f%)=sidey%(f%)-4*move%
$  � di%(f%)=1 �flip_hor(sp$(f%))
N  �plot_sprite_masked(sidex%(f%),sidey%(f%),1,1,1,1,sp$(f%),sprite_area1%)
$  � di%(f%)=1 �flip_hor(sp$(f%))
 �
!*FX113,1
"� Z%<4 �en_pause(an_p%)
#�
$	  �26
%/C%=screen_two%:B%=screen_one%:�save_screen%
&�26
'�box(840,500,400,230)
( �pri(860,660,"You are here")
)$�pri(860,600,"for an important")
*�pri(860,540,"meeting.")
+�space(1024,32,0,0)
,/B%=screen_two%:C%=screen_one%:�save_screen%
-�pause(100)
.�box(840,560,400,170)
/�pri(872,660,"You must go")
0�pri(872,600,"inside.")
1$�load_picture(picture1%,"wall1")
2�load_sprites("entrance")
3�space(1024,32,0,0)
4*channelvoice 1 1
5*channelvoice 2 2
6*RMkill chop1
7*RMKILL jung
8*FX112,2
9�18,0,129,26,16
:A%=picture1%:� draw%
;�
<
=>��frog_anim(frog%,an_x%,an_y%,inc%,h1%,h2%,d1%,d2%,blank$)
>-� h1%=h1%/2:h2%=h2%/2:d2%=d2%/2:d1%=d1%/2
?$�frog%=1 frog1$="f1":frog2$="f2"
@&�frog%=2 frog1$="ff1":frog2$="ff2"
Asel_sprite$=frog2$
B�Z%=1 an_p%=3
C�Z%=2 an_p%=2
D�Z%>2 an_p%=1
E�f%=1 � h1%
F
�st_pause
Gan_x%=an_x%+inc%
Han_y%=an_y%+8
I�anim(blank$)
JR�move_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
K�en_pause(an_p%)
L�
M�f%=1 � h2%
N
�st_pause
Oan_x%=an_x%+inc%
Pan_y%=an_y%+4
Q�anim(blank$)
RR�move_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
S�en_pause(an_p%)
T�
Usel_sprite$=frog1$
V�f%=1 � d1%
W
�st_pause
Xan_x%=an_x%+inc%
Yan_y%=an_y%-4
Z�anim(blank$)
[R�move_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
\�en_pause(an_p%)
]�
^�f%=1 � d1%
_
�st_pause
`an_x%=an_x%+inc%
aan_y%=an_y%-8
b�anim(blank$)
cR�move_block(screen_two%,an_x%-16,an_y%-16,screen_one%,an_x%-16,an_y%-16,44,40)
d�en_pause(an_p%)
e�
f$�frog%=1 frx1%=an_x%:fry1%=an_y%
g$�frog%=2 frx2%=an_x%:fry2%=an_y%
h�
i
j
k��set_pos_buttons(x%,y%)
l�f%=1� total_but%
mbut%(f%,0)=but%(f%,0)+x%
nbut%(f%,1)=but%(f%,1)+y%
o�
p�
q
r
s��define_buttons(set%)
t�set%=1:total_but%=1:��D~H
u�set%=2:total_but%=6:��tDH
v�set%=3:total_but%=1:��t@H
w�set%=4:total_but%=2:��tAH
x�set%=5:total_but%=1:��tBH
y�set%=6:total_but%=3:��DH
z�but_number%=1�total_but%
{z�but%(but_number%,0),but%(but_number%,1),but%(but_number%,2),but%(but_number%,3),but%(but_number%,4),but$(but_number%)
|�
}�
~� 100,100,200,40,2,Go on
`� 760,900,200,40,2,"Left turn",980,900,200,40,2,"Right turn",760,842,420,40,2,"Move forward"
�)� 800,36,400,40,2,"Return to Desktop"
�T� 100,8,512,40,2,"Look through the opening",640,8,512,40,2,"Look round the back"
�� 1070,16,200,170,3," "
�
��� 96,106,160,40,2,Up,182,52,160,40,2,Right,96,0,160,40,2,Down,10,52,160,40,2,Left,352,106,240,40,2,Connect wires,352,52,240,40,2,Leave wires,352,0,240,40,2,All connected!
�
���set_new_buttons
��but_n%=1�total_but%
�2�but%(but_n%,4)=0 � but%(but_n%,4)=3:colour%=0
� �but%(but_n%,4)=1 :colour%=1
� �but%(but_n%,4)=2 :colour%=3
�b� colour%>0:�but_surround(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),colour%)
�q� colour%>0:�but_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),128,colour%,but$(but_n%))
��26
��
��
�
�*��but_surround(bx%,by%,bxx%,byy%,col%)
��0,col%
�x�bx%,by%:�1,bxx%,0:�1,0,(byy%+4):�1,-2,0:�1,0,-(byy%+4):�0,2,(byy%+4):�1,-bxx%,0:�1,0,-(byy%+4):�1,2,0:�1,0,(byy%+4)
�H�vga%=1 �bx%,by%-2:�1,bxx%,0:�1,0,(byy%+8):�1,-bxx%,0:�1,0,-(byy%+8)
��
�
�4��but_centre(bx%,by%,bxx%,byy%,bcol%,col%,text$)
��0,bcol%:�0,col%
�!�V%=1 correct%=2 � correct%=0
�A�24,bx%+4;by%+4-correct%;bx%+bxx%-4;by%+byy%+correct%;16,26,5
�'left_margin%=(bxx%-(�(text$)*16))/2
�#�bx%+left_margin%,by%+36:�text$
��4
��
�
���check_buttons(an_num%)
�selected%=0
�ȗmx%,my%,mc%
�cb%=�(1)
� � IFcb%=16 cb%=0:PROCprinter
�'� IFcb%=19 cb%=0:PROCscreen_save(1)
��but_n%=1 � total_but%
��but%(but_n%,4)<2:�:�
�y�mx%<but%(but_n%,0) � mx%>(but%(but_n%,0)+but%(but_n%,2)) � my%<but%(but_n%,1) � my%>(but%(but_n%,1)+but%(but_n%,3))�
��   �but%(but_n%,0)+6,but%(but_n%,1)+8)=13 � but%(but_n%,4)<3:�but_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),128,3,but$(but_n%))
��
��   �but%(but_n%,0)+6,but%(but_n%,1)+4)=0 � but%(but_n%,4)<3:�but_centre(but%(but_n%,0),but%(but_n%,1),but%(but_n%,2),but%(but_n%,3),141,3,but$(but_n%))
�   �mc%=4:selected%=but_n%
��
� �an_num%>0:�sp_anim(an_num%)
��
��
�
���sp_anim(an_num%)
��an_num%=1 �
� �an_t%+20<� �
�  *FX112,1
�<  �plot_sprite(100,616,1,1,1,1,"r"+�(an%),sprite_area1%)
�  an%=an%+1:� an%=7an%=4
�=  �plot_sprite(480,616,1,1,1,1,"r"+�(ann%),sprite_area1%)
�   ann%=ann%+1:� ann%=7ann%=4
�
  an_t%=�
� �
��
��an_num%=2 �
�0  �sound_t%+400<�:�2,-15,&2500,20:sound_t%=�
��
��
�
���check_an_num
�	��TSI
�go_an%=0
��can%=1� an_num%
�S�cann%=1�3:�anx%(cann%),any%(cann%),anxx%(cann%),anyy%(cann%),an_type%(cann%):�
��
�O�mx%<anxx%(1) � mx%>anx%(1) � my%<anyy%(1) � my%>any%(1):go_an%=an_type%(1)
�O�mx%<anxx%(2) � mx%>anx%(2) � my%<anyy%(2) � my%>any%(2):go_an%=an_type%(2)
�O�mx%<anxx%(3) � mx%>anx%(3) � my%<anyy%(3) � my%>any%(3):go_an%=an_type%(3)
��go_an%=1 �bounce_ball
��go_an%=2 �sweep
��go_an%>0 �set_new_buttons
��
�
���flip_hor(sprite$)
�.ș"OS_SpriteOp",&12F,sprite_area1%,sprite$
��
�
���start_anim(blank$)
�=ș"OS_SpriteOp",&118,sprite_area1%,sel_sprite$ � r0,r1,r2
�<width%=(!(r2+16)+1)*16:height%=(!(r2+20)+1)*(4*(vga%+1))
�Vș"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
�F�plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
�an_xx%=an_x%:an_yy%=an_y%
��
�
���anim(blank$)
�H�plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sprite_area1%)
�Vș"OS_SpriteOp",&110,sprite_area1%,blank$,0,an_x%,an_y%,an_x%+width%,an_y%+height%
�F�plot_sprite_masked(an_x%,an_y%,1,1,1,1,sel_sprite$,sprite_area1%)
�an_xx%=an_x%:an_yy%=an_y%
��
�
���end_anim(blank$)
�H�plot_sprite_masked(an_xx%,an_yy%,1,1,1,1+vga%,blank$,sprite_area1%)
��
�
�
���start_anim2(blank2$)
�>ș"OS_SpriteOp",&118,sprite_area1%,sel_sprite2$ � r0,r1,r2
�>width2%=(!(r2+16)+1)*16:height2%=(!(r2+20)+1)*(4*(vga%+1))
�]ș"OS_SpriteOp",&110,sprite_area1%,blank2$,0,an_x2%,an_y2%,an_x2%+width2%,an_y2%+height2%
�I�plot_sprite_masked(an_x2%,an_y2%,1,1,1,1,sel_sprite2$,sprite_area1%)
�!an_xx2%=an_x2%:an_yy2%=an_y2%
��
�
���anim2(blank2$)
�K�plot_sprite_masked(an_xx2%,an_yy2%,1,1,1,1+vga%,blank2$,sprite_area1%)
�]ș"OS_SpriteOp",&110,sprite_area1%,blank2$,0,an_x2%,an_y2%,an_x2%+width2%,an_y2%+height2%
�I�plot_sprite_masked(an_x2%,an_y2%,1,1,1,1,sel_sprite2$,sprite_area1%)
�!an_xx2%=an_x2%:an_yy2%=an_y2%
��
�
���end_anim2(blank2$)
�K�plot_sprite_masked(an_xx2%,an_yy2%,1,1,1,1+vga%,blank2$,sprite_area1%)
��
�
���anim21(blank$)
��"FX112,1"
�K�plot_sprite_masked(an_xx1%,an_yy1%,1,1,1,1+vga%,blank1$,sprite_area1%)
�[ș"OS_SpriteOp",&110,sprite_area1%,blank1$,0,an_x1%,an_y1%,an_x1%+width%,an_y1%+height%
�H�plot_sprite_masked(an_x1%,an_y1%,1,1,1,1,sel_sprite$,sprite_area1%)
	!an_xx1%=an_x1%:an_yy1%=an_y1%
	�
	
	��pri(x%,y%,a$)
	:ș"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han%
	#ș"Font_SetFontColours",0,0,1,2
	�0,0,0,0,0,0,0,0
	ș"Font_Paint",,a$,16,x%,y%
	ș"Font_LoseFont",han%
		�
	

	��pri2(x%,y%,a$)
	;ș"Font_FindFont",,"TABLOID.Medium",220,260,0,0 � hand%
	
#ș"Font_SetFontColours",0,0,1,2
	�0,0,0,0,0,0,0,0
	ș"Font_Paint",,a$,16,x%,y%
	ș"Font_LoseFont",hand%
	�
	
	+�256,4,1260,480,1, 0,0,0,0,0, 0,0,0,0,0
	3�256,4,1260,400,1, 4,480,1000,1000,2, 0,0,0,0,0
	
	 ��space(sx%,sy%,an_num%,pa%)
	�pause(pa%)
	*fx21,9
	�define_buttons(1)
	2but%(1,0)=sx%:but%(1,1)=sy%:an_t%=�:sound_t%=�
	Nș"OS_SpriteOp",&110,sprite_area1%,"space_area",0,sx%,sy%-4,sx%+200,sy%+48
	�pause(10)
	�:ȗmx%,my%,mc%:�mc%=0
	�msxf%=1�10:ȗmx%,my%,mc%:�
	�set_new_buttons
	 ȗ�
	!�
	"�check_buttons(an_num%)
	#�selected%>0
	$A�plot_sprite(sx%,sy%-4,1,1,1,1+V%,"space_area",sprite_area1%)
	%
am_num%=0
	&�pause(30)
	'�
	(
	)��box(bx%,by%,bxx%,byy%)
	*bxx%=bx%+bxx%:byy%=by%+byy%
	+%�24,bx%;by%;bxx%;byy%;18,0,130,16
	,-�24,bx%+4;by%+4;bxx%-4;byy%-4;18,0,129,16
	-0�24,bx%+8;by%+8;bxx%-8;byy%-8;18,0,128,16,26
	./�0,3:� bx%+4,by%:�5,bxx%,by%:�5,bxx%,byy%-4
	/2� bx%+4,by%+2:�5,bxx%-2,by%+2:�5,bxx%-2,byy%-4
	07�0,2:� bx%+8,by%+4:�5,bxx%-4,by%+4:�5,bxx%-4,byy%-8
	12� bx%+8,by%+6:�5,bxx%-6,by%+6:�5,bxx%-6,byy%-8
	2�
	3
	4(��box_ecf(col1%,col2%,x%,y%,xx%,yy%)
	5� screen start
	6 �V%=0 mul%=80:� mul%=160
	70 B%=screen_one%+((960-(y%+yy%))*mul%+(x%/4))
	8� across
	9 E%=(xx% � 4)
	: E%=(E% � 4)*4
	;
� down
	<
 A%=yy%/8
	=$�clear_ecf(col1%,col2%,B%,E%,A%)
	>�
	?
	@��clear_ecf(C%,D%,B%,E%,A%)
	A � C%,D%  colours
	B& � A%*(V%+1) 1/2 Screen lines down
	C% � B%=screen_one% or screen start
	D � E%=lines across
	E�V%=1 A%=A%*2
	F�fill_screen%
	G�
	H
	I��clear
	J#�24,0;0;1278;956;18,0,129,16,26
	K�
	L
	M��top_blank
	N&�24,0;960;1278;1020;18,0,131,16,26
	O�
	P
	Q,��psm(x%,y%,xm%,ym%,xd%,yd%,name$,area%)
	R!(scale%+0)=xm%
	S!(scale%+4)=ym%*(V%+1)
	T!(scale%+8)=xd%
	U!(scale%+12)=yd%
	V=ș"OS_SpriteOp",&134,sprite_area1%,name$,x%,y%,8,scale%,0
	W�
	X
	Y]��move_block(from_screen%,from_x%,from_y%,to_screen%,to_x%,to_y%,bytes_across%,scans_up%)
	Z�bytes_across% � 4<>0 �
	[*A%=from_screen%+�calc(from_x%,from_y%)
	\$B%=to_screen%+�calc(to_x%,to_y%)
	]C%=bytes_across%
	^D%=(scans_up%*(V%+1))-1
	_  � move_block%
	`�
	a
	bݤcalc(x%,y%)
	cx%=x%+(x% � 4)
	d+top_lines%=0:� vga%=0 top_lines%=320*16
	e-=top_lines%+(x%/4)+((956-y%)*80)*(vga%+1)
	f?��text_box(st_x%,st_y%,length%,height%,just_type%,a$,b$,c$)
	g&�box2(st_x%,st_y%,length%,height%)
	h f_width1%=�font_string_w(a$)
	i f_width2%=�font_string_w(b$)
	j f_width3%=�font_string_w(c$)
	k@f_height%=70:� FNfont_string_w(a$):REM all heights the same?
	l,lines%=3:�c$="":lines%=2:�b$="":lines%=1
	m.xpos1%=st_x%+((length%-(f_width1%/400))/2)
	n.xpos2%=st_x%+((length%-(f_width2%/400))/2)
	o.xpos3%=st_x%+((length%-(f_width3%/400))/2)
	p4� box_type%=1 centred box_type%=2 left justified
	q�just_type%=2 �
	r2  �xpos1%<xpos2% xpos2%=xpos1% � xpos1%=xpos2%
	s2  �xpos2%<xpos3% xpos3%=xpos2% � xpos2%=xpos3%
	t2  �xpos3%<xpos1% xpos1%=xpos3% � xpos3%=xpos1%
	u�
	vTypos1%=(st_y%-(f_height%/6)*4)+(height%-(lines%*f_height%))/2+(lines%*f_height%)
	wypos2%=ypos1%-f_height%
	xypos3%=ypos2%-f_height%
	y�pri(xpos1%,ypos1%,a$)
	z$�lines%>1 �pri(xpos2%,ypos2%,b$)
	{$�lines%>2 �pri(xpos3%,ypos3%,c$)
	|�
	}
	~ݤfont_string_w(string$)
	  $string%=string$
	�<  ș"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han%
	�I  ș"Font_StringWidth",0,string%,600000,480000,-1,80 � r0,r1,f_width%
	�  ș"Font_LoseFont",han%
	�
=f_width%
	�
	�ݤfont_string_h(string$)
	�  $string%=string$
	�<  ș"Font_FindFont",,"TABLOID.Medium",320,360,0,0 � han%
	�L  ș"Font_StringWidth",0,string%,600000,480000,-1,80 � r0,r1,r2,f_height
	�  ș"Font_LoseFont",han%
	�=f_height%
	�
	���box2(bx%,by%,bxx%,byy%)
	�bxx%=bx%+bxx%:byy%=by%+byy%
	�-�24,bx%-4;by%-4;bxx%+4;byy%+4;18,0,131,16
	�(�24,bx%;by%;bxx%;byy%;18,0,128,16,26
	��
	�
	�
�
00000000  0d 00 00 44 f4 ff 41 44  46 53 3a 3a 48 61 72 64  |...D..ADFS::Hard|
00000010  44 69 73 63 34 2e 24 2e  43 72 79 73 74 61 6c 32  |Disc4.$.Crystal2|
00000020  2e 46 69 6e 69 73 68 31  2e 44 65 6d 6f 4d 61 67  |.Finish1.DemoMag|
00000030  2e 21 43 72 79 73 74 61  6c 32 2e 50 74 30 2e 53  |.!Crystal2.Pt0.S|
00000040  74 61 72 74 0d 00 01 04  0d 00 02 04 0d 00 03 23  |tart...........#|
00000050  c8 9b 20 22 3c 43 72 79  73 74 61 6c 32 24 44 69  |.. "<Crystal2$Di|
00000060  72 3e 2e 50 74 30 2e 4c  69 62 72 61 72 79 22 0d  |r>.Pt0.Library".|
00000070  00 04 0b 76 67 61 25 3d  56 25 0d 00 05 0c e7 54  |...vga%=V%.....T|
00000080  25 3c 3e 32 20 8c 0d 00  06 1e 20 20 e7 76 67 61  |%<>2 .....  .vga|
00000090  25 3d 31 20 73 70 72 69  74 65 5f 68 65 69 67 68  |%=1 sprite_heigh|
000000a0  74 25 3d 32 0d 00 07 1e  20 20 e7 76 67 61 25 3d  |t%=2....  .vga%=|
000000b0  30 20 73 70 72 69 74 65  5f 68 65 69 67 68 74 25  |0 sprite_height%|
000000c0  3d 31 0d 00 08 11 20 20  e7 76 67 61 25 3d 30 3a  |=1....  .vga%=0:|
000000d0  eb 31 32 0d 00 09 11 20  20 e7 76 67 61 25 3d 31  |.12....  .vga%=1|
000000e0  3a eb 32 37 0d 00 0a 0e  20 20 f2 70 61 6c 65 74  |:.27....  .palet|
000000f0  74 65 0d 00 0b 05 cd 0d  00 0c 0e 2a 66 78 32 32  |te.........*fx22|
00000100  35 2c 31 2c 30 0d 00 0d  1c ee 85 3a ff 22 46 58  |5,1,0......:."FX|
00000110  32 32 39 2c 31 22 3a ee  85 20 87 3a f2 64 74 7c  |229,1":.. .:.dt||
00000120  4d 0d 00 0e 26 2a 4b 45  59 35 20 4d 4f 44 45 31  |M...&*KEY5 MODE1|
00000130  32 3a 50 52 4f 43 70 72  69 6e 74 5f 61 6c 6c 5f  |2:PROCprint_all_|
00000140  73 70 72 69 74 65 73 0d  00 0f 1b f4 20 47 65 6e  |sprites..... Gen|
00000150  65 72 61 6c 20 72 75 6e  6e 69 6e 67 20 64 69 6d  |eral running dim|
00000160  27 73 0d 00 10 2b de 20  69 6e 70 75 74 5f 64 69  |'s...+. input_di|
00000170  73 6b 5f 6e 61 6d 65 25  20 32 35 36 2c 73 70 5f  |sk_name% 256,sp_|
00000180  6e 61 6d 65 5f 62 75 66  66 25 20 31 36 0d 00 11  |name_buff% 16...|
00000190  4a de 20 70 64 72 65 63  74 25 20 31 36 2c 70 64  |J. pdrect% 16,pd|
000001a0  72 65 63 74 32 25 20 31  36 2c 70 64 74 72 61 6e  |rect2% 16,pdtran|
000001b0  73 25 20 31 36 2c 70 64  70 6c 6f 74 25 20 38 2c  |s% 16,pdplot% 8,|
000001c0  63 74 72 61 6e 73 25 20  32 35 36 2c 70 61 6c 74  |ctrans% 256,palt|
000001d0  61 62 25 20 32 35 36 0d  00 12 24 de 20 69 6e 70  |ab% 256...$. inp|
000001e0  75 74 25 20 31 36 2c 6f  75 74 70 75 74 25 20 31  |ut% 16,output% 1|
000001f0  36 2c 73 63 61 6c 65 25  20 31 36 0d 00 13 15 f4  |6,scale% 16.....|
00000200  20 41 6e 69 6d 61 74 69  6f 6e 20 64 69 6d 27 73  | Animation dim's|
00000210  0d 00 14 0b 63 61 6e 6e  25 3d 34 0d 00 15 76 de  |....cann%=4...v.|
00000220  61 6e 78 25 28 63 61 6e  6e 25 29 2c 61 6e 79 25  |anx%(cann%),any%|
00000230  28 63 61 6e 6e 25 29 2c  61 6e 78 78 25 28 63 61  |(cann%),anxx%(ca|
00000240  6e 6e 25 29 2c 61 6e 79  79 25 28 63 61 6e 6e 25  |nn%),anyy%(cann%|
00000250  29 2c 61 6e 5f 74 79 70  65 25 28 63 61 6e 6e 25  |),an_type%(cann%|
00000260  29 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |)               |
00000270  20 20 20 20 20 20 20 20  20 20 20 3a f4 20 53 70  |           :. Sp|
00000280  61 63 65 20 62 61 72 20  61 6e 69 6d 61 74 69 6f  |ace bar animatio|
00000290  6e 0d 00 16 12 f4 20 62  75 74 74 6f 6e 20 64 69  |n..... button di|
000002a0  6d 27 73 0d 00 17 2c de  20 62 75 74 25 28 34 30  |m's...,. but%(40|
000002b0  2c 34 29 2c 62 75 74 24  28 34 30 29 20 20 20 20  |,4),but$(40)    |
000002c0  20 3a f4 20 62 75 74 25  28 23 2c 30 29 3d 78 0d  | :. but%(#,0)=x.|
000002d0  00 18 2e 20 20 20 20 20  20 20 20 20 20 20 20 20  |...             |
000002e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 3a  |               :|
000002f0  f4 20 62 75 74 25 28 23  2c 31 29 3d 79 0d 00 19  |. but%(#,1)=y...|
00000300  3d 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |=               |
00000310  20 20 20 20 20 20 20 20  20 20 20 20 20 3a f4 20  |             :. |
00000320  62 75 74 25 28 23 2c 32  29 3d 6c 65 6e 67 74 68  |but%(#,2)=length|
00000330  20 6f 66 20 62 75 74 74  6f 6e 0d 00 1a 3d 20 20  | of button...=  |
00000340  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000350  20 20 20 20 20 20 20 20  20 20 3a f4 20 62 75 74  |          :. but|
00000360  25 28 23 2c 33 29 3d 68  65 69 67 68 74 20 6f 66  |%(#,3)=height of|
00000370  20 62 75 74 74 6f 6e 0d  00 1b 44 20 20 20 20 20  | button...D     |
00000380  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000390  20 20 20 20 20 20 20 3a  f4 20 62 75 74 25 28 23  |       :. but%(#|
000003a0  2c 34 29 3d 30 3d 6f 66  66 20 31 3d 67 72 65 79  |,4)=0=off 1=grey|
000003b0  65 64 20 6f 75 74 20 32  3d 6f 6e 0d 00 1c 10 f4  |ed out 2=on.....|
000003c0  20 67 61 6d 65 20 64 69  6d 27 73 0d 00 1d 12 de  | game dim's.....|
000003d0  20 6f 75 74 5f 77 69 72  65 25 28 35 29 0d 00 1e  | out_wire%(5)...|
000003e0  11 de 20 6f 75 74 5f 63  69 72 25 28 38 29 0d 00  |.. out_cir%(8)..|
000003f0  1f 3b de 20 6d 61 7a 65  25 28 32 30 2c 32 30 29  |.;. maze%(20,20)|
00000400  20 20 20 20 20 20 20 20  20 20 20 20 3a f4 20 6d  |            :. m|
00000410  61 78 69 6d 75 6d 20 73  69 7a 65 20 6f 66 20 6d  |aximum size of m|
00000420  61 7a 65 20 32 30 78 32  30 0d 00 20 57 de 20 63  |aze 20x20.. W. c|
00000430  6f 72 72 25 28 31 30 2c  33 29 20 20 20 20 20 20  |orr%(10,3)      |
00000440  20 20 20 20 20 20 20 3a  f4 20 6c 65 6e 67 74 68  |       :. length|
00000450  20 6f 66 20 63 6f 72 72  69 64 6f 72 20 28 78 2c  | of corridor (x,|
00000460  31 29 3d 6c 65 66 74 20  28 78 2c 32 29 3d 63 65  |1)=left (x,2)=ce|
00000470  6e 74 72 65 20 28 78 2c  33 29 3d 72 69 67 68 74  |ntre (x,3)=right|
00000480  0d 00 21 04 0d 00 22 46  f4 20 6d 61 69 6e 20 64  |..!..."F. main d|
00000490  72 69 70 3d 30 20 6f 74  68 65 72 20 64 72 69 70  |rip=0 other drip|
000004a0  73 3d 31 20 74 6f 20 38  20 64 72 69 70 20 70 6f  |s=1 to 8 drip po|
000004b0  69 6e 74 65 72 3d 6e 65  78 74 20 61 76 61 69 6c  |inter=next avail|
000004c0  61 62 6c 65 20 73 74 61  72 74 0d 00 23 04 0d 00  |able start..#...|
000004d0  24 44 de 20 64 72 69 70  25 28 31 36 2c 35 29 20  |$D. drip%(16,5) |
000004e0  20 3a f4 20 61 63 74 69  76 65 20 78 2c 79 20 74  | :. active x,y t|
000004f0  6f 70 20 6e 75 6d 62 65  72 2f 62 6f 74 74 6f 6d  |op number/bottom|
00000500  20 6e 75 6d 62 65 72 2f  73 65 74 20 6e 75 6d 62  | number/set numb|
00000510  65 72 0d 00 25 26 20 20  20 20 20 20 20 20 20 20  |er..%&          |
00000520  20 20 20 20 20 20 20 3a  f4 20 61 63 74 69 76 65  |       :. active|
00000530  20 3d 20 30 20 6f 66 66  0d 00 26 2b 20 20 20 20  | = 0 off..&+    |
00000540  20 20 20 20 20 20 20 20  20 20 20 20 20 3a f4 20  |             :. |
00000550  20 20 20 20 20 20 20 20  20 31 20 69 6e 63 72 65  |         1 incre|
00000560  61 73 65 0d 00 27 29 20  20 20 20 20 20 20 20 20  |ase..')         |
00000570  20 20 20 20 20 20 20 20  3a f4 20 20 20 20 20 20  |        :.      |
00000580  20 20 20 20 32 20 73 74  61 62 6c 65 0d 00 28 2b  |    2 stable..(+|
00000590  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000005a0  20 3a f4 20 20 20 20 20  20 20 20 20 20 33 20 64  | :.          3 d|
000005b0  65 63 72 65 61 73 65 0d  00 29 1b de 20 64 72 69  |ecrease..).. dri|
000005c0  70 24 28 34 30 29 2c 73  74 72 69 6e 67 25 20 32  |p$(40),string% 2|
000005d0  35 36 0d 00 2a 10 de 20  73 64 72 69 70 24 28 34  |56..*.. sdrip$(4|
000005e0  30 29 0d 00 2b 10 de 20  73 64 72 69 70 25 28 34  |0)..+.. sdrip%(4|
000005f0  30 29 0d 00 2c 4c de 20  63 6f 6e 76 65 79 25 28  |0)..,L. convey%(|
00000600  39 2c 31 34 29 3a f4 20  20 39 20 70 6f 73 69 74  |9,14):.  9 posit|
00000610  69 6f 6e 73 20 2d 20 30  20 68 65 69 67 68 74 20  |ions - 0 height |
00000620  63 75 70 20 66 69 6c 6c  3f 20 20 73 70 72 69 74  |cup fill?  sprit|
00000630  65 20 70 6c 6f 74 31 20  75 70 2e 2e 2e 2e 0d 00  |e plot1 up......|
00000640  2d 34 de 20 63 6f 6e 76  65 79 24 28 39 2c 31 34  |-4. convey$(9,14|
00000650  29 3a f4 20 73 70 72 69  74 65 20 6e 61 6d 65 20  |):. sprite name |
00000660  75 70 20 74 6f 20 66 72  6f 6d 20 32 20 74 6f 20  |up to from 2 to |
00000670  31 30 0d 00 2e 0e de 20  64 72 6f 70 25 28 39 29  |10..... drop%(9)|
00000680  0d 00 2f 0e de 20 70 72  6f 66 24 28 34 29 0d 00  |../.. prof$(4)..|
00000690  30 0e de 20 70 72 6f 66  25 28 34 29 0d 00 31 18  |0.. prof%(4)..1.|
000006a0  de 20 63 6f 6f 72 5f 74  61 62 6c 65 25 28 32 2c  |. coor_table%(2,|
000006b0  33 30 30 29 0d 00 32 3b  de 20 70 61 72 24 28 35  |300)..2;. par$(5|
000006c0  29 2c 68 65 6c 69 25 28  36 29 2c 70 61 72 72 6f  |),heli%(6),parro|
000006d0  74 25 28 35 2c 33 29 2c  70 61 72 72 6f 74 5f 6f  |t%(5,3),parrot_o|
000006e0  25 28 35 2c 33 29 2c 62  61 63 6b 24 28 36 29 0d  |%(5,3),back$(6).|
000006f0  00 33 11 62 61 63 6b 5f  63 6f 6c 25 3d 31 32 39  |.3.back_col%=129|
00000700  0d 00 34 1b f4 20 62 75  73 68 20 6d 6f 76 69 6e  |..4.. bush movin|
00000710  67 20 61 6e 69 6d 61 74  69 6f 6e 0d 00 35 34 de  |g animation..54.|
00000720  20 73 69 64 65 78 25 28  31 30 29 2c 73 69 64 65  | sidex%(10),side|
00000730  79 25 28 31 30 29 2c 73  70 24 28 31 30 29 2c 64  |y%(10),sp$(10),d|
00000740  69 25 28 31 30 29 2c 69  6e 63 25 28 31 30 29 0d  |i%(10),inc%(10).|
00000750  00 36 18 c8 99 22 4f 53  5f 52 65 6d 6f 76 65 43  |.6..."OS_RemoveC|
00000760  75 72 73 6f 72 73 22 0d  00 37 11 f2 66 69 6e 64  |ursors"..7..find|
00000770  5f 73 63 72 65 65 6e 73  0d 00 38 13 f2 70 75 6c  |_screens..8..pul|
00000780  6c 5f 76 61 72 69 61 62  6c 65 73 0d 00 39 1b f2  |l_variables..9..|
00000790  69 6e 69 74 69 61 6c 69  73 65 5f 73 70 72 69 74  |initialise_sprit|
000007a0  65 5f 61 72 65 61 0d 00  3a 35 e7 56 25 3d 30 20  |e_area..:5.V%=0 |
000007b0  f2 74 6f 70 5f 62 6c 61  6e 6b 3a ff 22 46 58 31  |.top_blank:."FX1|
000007c0  31 32 2c 32 22 3a f2 74  6f 70 5f 62 6c 61 6e 6b  |12,2":.top_blank|
000007d0  3a ff 22 46 58 31 31 32  2c 31 22 0d 00 3b 10 66  |:."FX112,1"..;.f|
000007e0  61 64 65 24 3d 22 66 61  64 65 22 0d 00 3c 16 73  |ade$="fade"..<.s|
000007f0  61 31 25 3d 73 70 72 69  74 65 5f 61 72 65 61 31  |a1%=sprite_area1|
00000800  25 0d 00 3d 04 0d 00 3e  04 0d 00 3f 0a f2 74 69  |%..=...>...?..ti|
00000810  74 6c 65 0d 00 40 0f f2  73 74 61 72 74 5f 67 61  |tle..@..start_ga|
00000820  6d 65 0d 00 41 0a f2 67  61 6d 65 31 0d 00 42 0e  |me..A..game1..B.|
00000830  f2 6d 61 69 6e 5f 67 61  6d 65 0d 00 43 0c f2 65  |.main_game..C..e|
00000840  78 70 6c 6f 72 65 0d 00  44 0b f2 61 74 74 61 63  |xplore..D..attac|
00000850  6b 0d 00 45 12 f2 74 65  6d 70 6c 65 5f 74 6f 70  |k..E..temple_top|
00000860  28 31 29 0d 00 46 09 f2  6d 61 7a 65 0d 00 47 0b  |(1)..F..maze..G.|
00000870  f2 66 69 6e 61 6c 31 0d  00 48 09 65 72 72 6f 72  |.final1..H.error|
00000880  0d 00 49 04 0d 00 4a 04  0d 00 4b 04 0d 00 4c 0c  |..I...J...K...L.|
00000890  dd f2 66 69 6e 61 6c 31  0d 00 4d 1a f2 6c 6f 61  |..final1..M..loa|
000008a0  64 5f 73 70 72 69 74 65  73 28 22 62 75 6c 62 73  |d_sprites("bulbs|
000008b0  22 29 0d 00 4e 0c 2a 66  78 31 31 32 2c 32 0d 00  |")..N.*fx112,2..|
000008c0  4f 10 ef 31 38 2c 30 2c  31 33 31 2c 31 36 0d 00  |O..18,0,131,16..|
000008d0  50 33 f2 70 6c 6f 74 5f  73 70 72 69 74 65 28 30  |P3.plot_sprite(0|
000008e0  2c 30 2c 31 2c 31 2c 31  2c 31 2c 22 62 75 6c 64  |,0,1,1,1,1,"buld|
000008f0  73 22 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |s",sprite_area1%|
00000900  29 0d 00 51 11 66 61 64  65 24 3d 22 66 61 64 65  |)..Q.fade$="fade|
00000910  32 22 0d 00 52 18 f2 66  61 64 65 28 30 2c 39 36  |2"..R..fade(0,96|
00000920  30 2c 34 2c 30 2c 31 2c  31 29 0d 00 53 0f f2 70  |0,4,0,1,1)..S..p|
00000930  61 75 73 65 28 32 30 30  29 0d 00 54 0c 2a 66 78  |ause(200)..T.*fx|
00000940  31 31 32 2c 31 0d 00 55  35 f2 74 65 78 74 5f 62  |112,1..U5.text_b|
00000950  6f 78 28 33 30 30 2c 38  30 30 2c 34 30 30 2c 31  |ox(300,800,400,1|
00000960  30 30 2c 31 2c 22 46 69  6e 61 6c 6c 79 2e 2e 2e  |00,1,"Finally...|
00000970  2e 22 2c 22 22 2c 22 22  20 29 0d 00 56 17 f2 73  |.","","" )..V..s|
00000980  70 61 63 65 28 34 39 30  2c 37 34 30 2c 30 2c 30  |pace(490,740,0,0|
00000990  29 0d 00 57 0c 2a 66 78  31 31 32 2c 32 0d 00 58  |)..W.*fx112,2..X|
000009a0  32 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 30 2c  |2.plot_sprite(0,|
000009b0  30 2c 31 2c 31 2c 31 2c  31 2c 22 63 6f 6d 70 22  |0,1,1,1,1,"comp"|
000009c0  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
000009d0  00 59 0c 2a 66 78 31 31  32 2c 31 0d 00 5a 1b 73  |.Y.*fx112,1..Z.s|
000009e0  63 72 25 3d 28 28 56 25  2d 31 29 2a 2d 31 29 2a  |cr%=((V%-1)*-1)*|
000009f0  33 32 30 2a 31 36 0d 00  5b 0e e3 66 25 3d 31 20  |320*16..[..f%=1 |
00000a00  b8 20 38 30 0d 00 5c 17  41 25 3d 73 63 72 65 65  |. 80..\.A%=scree|
00000a10  6e 5f 6f 6e 65 25 2b 73  63 72 25 0d 00 5d 17 42  |n_one%+scr%..].B|
00000a20  25 3d 73 63 72 65 65 6e  5f 74 77 6f 25 2b 73 63  |%=screen_two%+sc|
00000a30  72 25 0d 00 5e 08 43 25  3d 31 0d 00 5f 13 44 25  |r%..^.C%=1.._.D%|
00000a40  3d 28 56 25 2a 32 34 30  29 2b 32 33 39 0d 00 60  |=(V%*240)+239..`|
00000a50  10 d6 73 63 72 6f 6c 6c  5f 61 6c 6c 25 0d 00 61  |..scroll_all%..a|
00000a60  05 ed 0d 00 62 63 f2 74  65 78 74 5f 62 6f 78 28  |....bc.text_box(|
00000a70  37 30 30 2c 35 36 30 2c  35 30 30 2c 32 31 30 2c  |700,560,500,210,|
00000a80  32 2c 22 2e 2e 2e 79 6f  75 20 77 69 6c 6c 20 6e  |2,"...you will n|
00000a90  65 65 64 20 74 6f 22 2c  22 6c 65 61 72 6e 20 68  |eed to","learn h|
00000aa0  6f 77 20 74 6f 20 63 6f  6e 74 72 6f 6c 22 2c 22  |ow to control","|
00000ab0  64 69 66 66 65 72 65 6e  74 20 65 71 75 69 70 6d  |different equipm|
00000ac0  65 6e 74 22 29 0d 00 63  62 f2 74 65 78 74 5f 62  |ent")..cb.text_b|
00000ad0  6f 78 28 37 30 30 2c 33  32 30 2c 35 30 30 2c 32  |ox(700,320,500,2|
00000ae0  31 30 2c 32 2c 22 62 65  66 6f 72 65 20 79 6f 75  |10,2,"before you|
00000af0  20 63 61 6e 20 73 74 6f  70 22 2c 22 47 6f 6d 65  | can stop","Gome|
00000b00  7a 20 61 6e 64 20 73 61  76 65 20 74 68 65 22 2c  |z and save the",|
00000b10  22 43 72 79 73 74 61 6c  20 52 61 69 6e 20 46 6f  |"Crystal Rain Fo|
00000b20  72 65 73 74 2e 22 29 0d  00 64 17 f2 73 70 61 63  |rest.")..d..spac|
00000b30  65 28 39 34 30 2c 32 30  30 2c 30 2c 30 29 0d 00  |e(940,200,0,0)..|
00000b40  65 0c 2a 66 78 31 31 32  2c 32 0d 00 66 1d f2 6c  |e.*fx112,2..f..l|
00000b50  6f 61 64 5f 73 70 72 69  74 65 73 28 22 46 72 6f  |oad_sprites("Fro|
00000b60  6e 74 73 63 72 22 29 0d  00 67 32 f2 70 6c 6f 74  |ntscr")..g2.plot|
00000b70  5f 73 70 72 69 74 65 28  30 2c 30 2c 31 2c 31 2c  |_sprite(0,0,1,1,|
00000b80  31 2c 31 2c 22 74 65 73  74 22 2c 73 70 72 69 74  |1,1,"test",sprit|
00000b90  65 5f 61 72 65 61 31 25  29 0d 00 68 11 66 61 64  |e_area1%)..h.fad|
00000ba0  65 24 3d 22 66 61 64 65  32 22 0d 00 69 55 f2 74  |e$="fade2"..iU.t|
00000bb0  65 78 74 5f 62 6f 78 28  31 30 30 2c 37 39 30 2c  |ext_box(100,790,|
00000bc0  31 30 30 30 2c 39 30 2c  31 2c 22 54 68 65 20 63  |1000,90,1,"The c|
00000bd0  6f 6d 70 6c 65 74 65 20  61 64 76 65 6e 74 75 72  |omplete adventur|
00000be0  65 20 69 73 20 61 76 61  69 6c 61 62 6c 65 20 66  |e is available f|
00000bf0  72 6f 6d 2e 2e 2e 2e 22  2c 22 22 2c 22 22 29 0d  |rom....","","").|
00000c00  00 6a 75 f2 74 65 78 74  5f 62 6f 78 28 32 30 30  |.ju.text_box(200|
00000c10  2c 35 30 30 2c 38 30 30  2c 32 31 30 2c 32 2c 22  |,500,800,210,2,"|
00000c20  53 68 65 72 73 74 6f 6e  20 53 6f 66 74 77 61 72  |Sherston Softwar|
00000c30  65 20 4c 74 64 2e 22 2c  22 41 6e 67 65 6c 20 48  |e Ltd.","Angel H|
00000c40  6f 75 73 65 2c 20 53 68  65 72 73 74 6f 6e 2c 22  |ouse, Sherston,"|
00000c50  2c 22 4d 61 6c 6d 65 73  62 75 72 79 2c 20 57 69  |,"Malmesbury, Wi|
00000c60  6c 74 73 68 69 72 65 2c  20 53 4e 31 36 20 4f 4c  |ltshire, SN16 OL|
00000c70  48 2e 22 29 0d 00 6b 3f  f2 74 65 78 74 5f 62 6f  |H.")..k?.text_bo|
00000c80  78 28 32 30 30 2c 33 34  30 2c 38 30 30 2c 39 30  |x(200,340,800,90|
00000c90  2c 32 2c 22 54 65 6c 65  70 68 6f 6e 65 3a 20 30  |,2,"Telephone: 0|
00000ca0  31 36 36 36 20 38 34 30  34 33 33 22 2c 22 22 2c  |1666 840433","",|
00000cb0  22 22 29 0d 00 6c 18 f2  66 61 64 65 28 30 2c 39  |"")..l..fade(0,9|
00000cc0  36 30 2c 34 2c 30 2c 31  2c 31 29 0d 00 6d 07 ef  |60,4,0,1,1)..m..|
00000cd0  32 36 0d 00 6e 0c 2a 66  78 31 31 32 2c 31 0d 00  |26..n.*fx112,1..|
00000ce0  6f 16 f2 64 65 66 69 6e  65 5f 62 75 74 74 6f 6e  |o..define_button|
00000cf0  73 28 33 29 0d 00 70 0e  f2 70 61 75 73 65 28 31  |s(3)..p..pause(1|
00000d00  30 29 0d 00 71 1a f5 3a  c8 97 6d 78 25 2c 6d 79  |0)..q..:..mx%,my|
00000d10  25 2c 6d 63 25 3a fd 6d  63 25 3d 30 0d 00 72 1f  |%,mc%:.mc%=0..r.|
00000d20  e3 6d 73 78 66 25 3d 31  b8 31 30 3a c8 97 6d 78  |.msxf%=1.10:..mx|
00000d30  25 2c 6d 79 25 2c 6d 63  25 3a ed 0d 00 73 14 f2  |%,my%,mc%:...s..|
00000d40  73 65 74 5f 6e 65 77 5f  62 75 74 74 6f 6e 73 0d  |set_new_buttons.|
00000d50  00 74 07 c8 97 ee 0d 00  75 05 f5 0d 00 76 15 f2  |.t......u....v..|
00000d60  63 68 65 63 6b 5f 62 75  74 74 6f 6e 73 28 30 29  |check_buttons(0)|
00000d70  0d 00 77 10 fd 73 65 6c  65 63 74 65 64 25 3e 30  |..w..selected%>0|
00000d80  0d 00 78 05 e1 0d 00 79  04 0d 00 7a 0c dd f2 61  |..x....y...z...a|
00000d90  74 74 61 63 6b 0d 00 7b  1b f2 6c 6f 61 64 5f 73  |ttack..{..load_s|
00000da0  70 72 69 74 65 73 28 22  61 74 74 61 63 6b 22 29  |prites("attack")|
00000db0  0d 00 7c 0c 2a 66 78 31  31 32 2c 32 0d 00 7d 10  |..|.*fx112,2..}.|
00000dc0  ef 31 38 2c 30 2c 31 33  31 2c 31 36 0d 00 7e 38  |.18,0,131,16..~8|
00000dd0  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 31 39 30  |.plot_sprite(190|
00000de0  2c 31 30 30 2c 31 2c 31  2c 31 2c 31 2c 22 61 74  |,100,1,1,1,1,"at|
00000df0  74 61 63 6b 22 2c 73 70  72 69 74 65 5f 61 72 65  |tack",sprite_are|
00000e00  61 31 25 29 0d 00 7f 10  66 61 64 65 24 3d 22 66  |a1%)....fade$="f|
00000e10  61 64 65 22 0d 00 80 5e  f2 74 65 78 74 5f 62 6f  |ade"...^.text_bo|
00000e20  78 28 31 30 30 2c 38 30  30 2c 31 30 38 30 2c 31  |x(100,800,1080,1|
00000e30  35 30 2c 32 2c 22 59 6f  75 20 77 69 6c 6c 20 6e  |50,2,"You will n|
00000e40  65 65 64 20 74 6f 20 73  74 6f 70 20 74 68 65 20  |eed to stop the |
00000e50  72 6f 62 6f 74 73 22 2c  22 66 72 6f 6d 20 61 74  |robots","from at|
00000e60  74 61 63 6b 69 6e 67 20  79 6f 75 2e 22 2c 22 22  |tacking you.",""|
00000e70  20 29 0d 00 81 10 66 61  64 65 24 3d 22 66 61 64  | )....fade$="fad|
00000e80  65 22 0d 00 82 18 f2 66  61 64 65 28 30 2c 39 36  |e".....fade(0,96|
00000e90  30 2c 34 2c 30 2c 31 2c  31 29 0d 00 83 0c 2a 46  |0,4,0,1,1)....*F|
00000ea0  58 31 31 32 2c 31 0d 00  84 16 f2 73 70 61 63 65  |X112,1.....space|
00000eb0  28 39 34 30 2c 34 30 2c  30 2c 30 29 0d 00 85 05  |(940,40,0,0)....|
00000ec0  e1 0d 00 86 04 0d 00 87  0d dd f2 65 78 70 6c 6f  |...........explo|
00000ed0  72 65 0d 00 88 1b f2 6c  6f 61 64 5f 73 70 72 69  |re.....load_spri|
00000ee0  74 65 73 28 22 66 6c 69  67 68 74 22 29 0d 00 89  |tes("flight")...|
00000ef0  0c 2a 66 78 31 31 32 2c  32 0d 00 8a 10 ef 31 38  |.*fx112,2.....18|
00000f00  2c 30 2c 31 33 31 2c 31  36 0d 00 8b 34 f2 70 6c  |,0,131,16...4.pl|
00000f10  6f 74 5f 73 70 72 69 74  65 28 34 2c 34 2c 31 2c  |ot_sprite(4,4,1,|
00000f20  31 2c 31 2c 31 2c 22 66  6f 72 65 73 74 22 2c 73  |1,1,1,"forest",s|
00000f30  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 00 8c  |prite_area1%)...|
00000f40  10 66 61 64 65 24 3d 22  66 61 64 65 22 0d 00 8d  |.fade$="fade"...|
00000f50  18 f2 66 61 64 65 28 30  2c 39 36 30 2c 34 2c 30  |..fade(0,960,4,0|
00000f60  2c 31 2c 31 29 0d 00 8e  0f f2 70 61 75 73 65 28  |,1,1).....pause(|
00000f70  32 30 30 29 0d 00 8f 6e  f2 74 65 78 74 5f 62 6f  |200)...n.text_bo|
00000f80  78 28 31 30 30 2c 33 34  32 2c 31 30 38 30 2c 31  |x(100,342,1080,1|
00000f90  35 30 2c 32 2c 22 59 6f  75 20 77 69 6c 6c 20 61  |50,2,"You will a|
00000fa0  6c 73 6f 20 6e 65 65 64  20 74 6f 20 73 65 61 72  |lso need to sear|
00000fb0  63 68 20 74 68 65 22 2c  22 43 72 79 73 74 61 6c  |ch the","Crystal|
00000fc0  20 52 61 69 6e 20 46 6f  72 65 73 74 20 69 6e 20  | Rain Forest in |
00000fd0  61 20 68 6f 76 65 72 68  65 6c 69 2e 22 2c 22 22  |a hoverheli.",""|
00000fe0  20 29 0d 00 90 10 66 61  64 65 24 3d 22 66 61 64  | )....fade$="fad|
00000ff0  65 22 0d 00 91 18 f2 66  61 64 65 28 30 2c 39 36  |e".....fade(0,96|
00001000  30 2c 34 2c 30 2c 31 2c  31 29 0d 00 92 0c 2a 46  |0,4,0,1,1)....*F|
00001010  58 31 31 32 2c 31 0d 00  93 16 f2 73 70 61 63 65  |X112,1.....space|
00001020  28 39 34 30 2c 34 30 2c  30 2c 30 29 0d 00 94 05  |(940,40,0,0)....|
00001030  e1 0d 00 95 04 0d 00 96  04 0d 00 97 04 0d 00 98  |................|
00001040  0b dd f2 74 69 74 6c 65  0d 00 99 08 54 25 3d 32  |...title....T%=2|
00001050  0d 00 9a 1d f2 6c 6f 61  64 5f 73 70 72 69 74 65  |.....load_sprite|
00001060  73 28 22 46 72 6f 6e 74  73 63 72 22 29 0d 00 9b  |s("Frontscr")...|
00001070  32 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 30 2c  |2.plot_sprite(0,|
00001080  30 2c 31 2c 31 2c 31 2c  31 2c 22 74 65 73 74 22  |0,1,1,1,1,"test"|
00001090  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
000010a0  00 9c 10 78 25 3d 36 34  3a 79 25 3d 37 32 32 0d  |...x%=64:y%=722.|
000010b0  00 9d 0f f2 70 61 75 73  65 28 32 30 30 29 0d 00  |....pause(200)..|
000010c0  9e 2b ef 32 34 2c 78 25  2d 38 3b 79 25 2d 38 3b  |.+.24,x%-8;y%-8;|
000010d0  78 25 2b 35 31 38 3b 79  25 2b 31 36 32 3b 31 38  |x%+518;y%+162;18|
000010e0  2c 30 2c 31 33 31 2c 31  36 0d 00 9f 2a ef 32 34  |,0,131,16...*.24|
000010f0  2c 78 25 3b 79 25 3b 78  25 2b 35 31 30 3b 79 25  |,x%;y%;x%+510;y%|
00001100  2b 31 35 34 3b 31 38 2c  30 2c 31 32 38 2c 31 36  |+154;18,0,128,16|
00001110  2c 32 36 0d 00 a0 28 f2  70 72 69 28 78 25 2b 32  |,26...(.pri(x%+2|
00001120  32 2c 79 25 2b 39 36 2c  22 4d 69 73 73 69 6f 6e  |2,y%+96,"Mission|
00001130  3a 20 43 6f 6e 74 72 6f  6c 22 29 0d 00 a1 2d f2  |: Control")...-.|
00001140  70 72 69 28 78 25 2b 32  32 2c 79 25 2b 33 30 2c  |pri(x%+22,y%+30,|
00001150  22 43 72 79 73 74 61 6c  20 52 61 69 6e 20 46 6f  |"Crystal Rain Fo|
00001160  72 65 73 74 20 32 22 29  0d 00 a2 0f f2 70 61 75  |rest 2").....pau|
00001170  73 65 28 32 30 30 29 0d  00 a3 10 78 25 3d 36 34  |se(200)....x%=64|
00001180  3a 79 25 3d 34 38 30 0d  00 a4 2b ef 32 34 2c 78  |:y%=480...+.24,x|
00001190  25 2d 38 3b 79 25 2d 38  3b 78 25 2b 35 31 38 3b  |%-8;y%-8;x%+518;|
000011a0  79 25 2b 31 36 32 3b 31  38 2c 30 2c 31 33 31 2c  |y%+162;18,0,131,|
000011b0  31 36 0d 00 a5 2a ef 32  34 2c 78 25 3b 79 25 3b  |16...*.24,x%;y%;|
000011c0  78 25 2b 35 31 30 3b 79  25 2b 31 35 34 3b 31 38  |x%+510;y%+154;18|
000011d0  2c 30 2c 31 32 38 2c 31  36 2c 32 36 0d 00 a6 2c  |,0,128,16,26...,|
000011e0  f2 70 72 69 28 78 25 2b  32 32 2c 79 25 2b 39 36  |.pri(x%+22,y%+96|
000011f0  2c 22 44 65 73 69 67 6e  65 64 20 61 6e 64 20 77  |,"Designed and w|
00001200  72 69 74 74 65 6e 22 29  0d 00 a7 28 f2 70 72 69  |ritten")...(.pri|
00001210  28 78 25 2b 32 32 2c 79  25 2b 33 30 2c 22 62 79  |(x%+22,y%+30,"by|
00001220  20 53 69 6d 6f 6e 20 48  6f 73 6c 65 72 2e 22 29  | Simon Hosler.")|
00001230  0d 00 a8 0f f2 70 61 75  73 65 28 32 30 30 29 0d  |.....pause(200).|
00001240  00 a9 10 78 25 3d 36 34  3a 79 25 3d 32 38 30 0d  |...x%=64:y%=280.|
00001250  00 aa 2c ef 32 34 2c 78  25 2d 38 3b 79 25 2d 38  |..,.24,x%-8;y%-8|
00001260  3b 78 25 2b 31 31 36 30  3b 79 25 2b 31 30 30 3b  |;x%+1160;y%+100;|
00001270  31 38 2c 30 2c 31 33 31  2c 31 36 0d 00 ab 2a ef  |18,0,131,16...*.|
00001280  32 34 2c 78 25 3b 79 25  3b 78 25 2b 31 31 35 32  |24,x%;y%;x%+1152|
00001290  3b 79 25 2b 39 32 3b 31  38 2c 30 2c 31 32 38 2c  |;y%+92;18,0,128,|
000012a0  31 36 2c 32 36 0d 00 ac  46 f2 70 72 69 28 78 25  |16,26...F.pri(x%|
000012b0  2b 32 32 2c 79 25 2b 33  30 2c 22 a9 20 31 39 39  |+22,y%+30,". 199|
000012c0  35 20 53 69 6d 6f 6e 20  48 6f 73 6c 65 72 20 61  |5 Simon Hosler a|
000012d0  6e 64 20 53 68 65 72 73  74 6f 6e 20 53 6f 66 74  |nd Sherston Soft|
000012e0  77 61 72 65 20 4c 74 64  2e 22 29 0d 00 ad 0f f2  |ware Ltd.").....|
000012f0  70 61 75 73 65 28 32 30  30 29 0d 00 ae 0c 2a 46  |pause(200)....*F|
00001300  58 31 31 32 2c 32 0d 00  af 32 f2 70 6c 6f 74 5f  |X112,2...2.plot_|
00001310  73 70 72 69 74 65 28 30  2c 30 2c 31 2c 31 2c 31  |sprite(0,0,1,1,1|
00001320  2c 31 2c 22 74 65 73 74  22 2c 73 70 72 69 74 65  |,1,"test",sprite|
00001330  5f 61 72 65 61 31 25 29  0d 00 b0 10 66 61 64 65  |_area1%)....fade|
00001340  24 3d 22 66 61 64 65 22  0d 00 b1 94 f2 74 65 78  |$="fade".....tex|
00001350  74 5f 62 6f 78 28 33 32  2c 35 30 30 2c 31 32 31  |t_box(32,500,121|
00001360  36 2c 32 31 30 2c 32 2c  22 4d 69 73 73 69 6f 6e  |6,210,2,"Mission|
00001370  3a 20 43 6f 6e 74 72 6f  6c 2c 20 69 73 20 61 6e  |: Control, is an|
00001380  20 61 64 76 65 6e 74 75  72 65 20 74 68 61 74 20  | adventure that |
00001390  69 6e 74 72 6f 64 75 63  65 73 22 2c 22 63 6f 6e  |introduces","con|
000013a0  74 72 6f 6c 20 74 65 63  68 6e 6f 6c 6f 67 79 20  |trol technology |
000013b0  69 6e 20 61 20 68 69 67  68 6c 79 20 6f 72 69 67  |in a highly orig|
000013c0  69 6e 61 6c 20 61 6e 64  22 2c 22 6d 6f 74 69 76  |inal and","motiv|
000013d0  61 74 69 6e 67 20 77 61  79 2e 22 29 0d 00 b2 46  |ating way.")...F|
000013e0  f2 74 65 78 74 5f 62 6f  78 28 31 30 30 2c 33 36  |.text_box(100,36|
000013f0  30 2c 31 30 38 30 2c 39  30 2c 32 2c 22 48 65 72  |0,1080,90,2,"Her|
00001400  65 20 69 73 20 61 20 73  68 6f 72 74 20 69 6e 74  |e is a short int|
00001410  72 6f 64 75 63 74 69 6f  6e 2e 22 2c 22 22 2c 22  |roduction.","","|
00001420  22 29 0d 00 b3 18 f2 66  61 64 65 28 30 2c 39 36  |").....fade(0,96|
00001430  30 2c 34 2c 30 2c 31 2c  31 29 0d 00 b4 0c 2a 46  |0,4,0,1,1)....*F|
00001440  58 31 31 32 2c 31 0d 00  b5 17 f2 73 70 61 63 65  |X112,1.....space|
00001450  28 39 34 30 2c 31 38 30  2c 30 2c 30 29 0d 00 b6  |(940,180,0,0)...|
00001460  04 0d 00 b7 0c 2a 46 58  31 31 32 2c 32 0d 00 b8  |.....*FX112,2...|
00001470  32 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 30 2c  |2.plot_sprite(0,|
00001480  30 2c 31 2c 31 2c 31 2c  31 2c 22 74 65 73 74 22  |0,1,1,1,1,"test"|
00001490  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
000014a0  00 b9 10 66 61 64 65 24  3d 22 66 61 64 65 22 0d  |...fade$="fade".|
000014b0  00 ba 18 f2 66 61 64 65  28 30 2c 39 36 30 2c 34  |....fade(0,960,4|
000014c0  2c 30 2c 31 2c 31 29 0d  00 bb 36 f2 70 6c 6f 74  |,0,1,1)...6.plot|
000014d0  5f 73 70 72 69 74 65 28  34 30 2c 34 31 32 2c 31  |_sprite(40,412,1|
000014e0  2c 31 2c 31 2c 31 2c 22  47 4f 4d 41 5a 22 2c 73  |,1,1,1,"GOMAZ",s|
000014f0  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 00 bc  |prite_area1%)...|
00001500  75 f2 74 65 78 74 5f 62  6f 78 28 35 32 30 2c 36  |u.text_box(520,6|
00001510  30 30 2c 37 34 30 2c 32  31 30 2c 32 2c 22 54 68  |00,740,210,2,"Th|
00001520  69 73 20 69 73 20 47 6f  6d 65 7a 2c 20 68 65 20  |is is Gomez, he |
00001530  6d 75 73 74 20 62 65 22  2c 22 73 74 6f 70 70 65  |must be","stoppe|
00001540  64 21 20 48 65 20 69 73  20 61 20 64 61 6e 67 65  |d! He is a dange|
00001550  72 22 2c 22 74 6f 20 74  68 65 20 43 72 79 73 74  |r","to the Cryst|
00001560  61 6c 20 52 61 69 6e 20  46 6f 72 65 73 74 2e 22  |al Rain Forest."|
00001570  20 29 0d 00 bd 18 f2 66  61 64 65 28 30 2c 39 36  | ).....fade(0,96|
00001580  30 2c 34 2c 30 2c 31 2c  31 29 0d 00 be 0c 2a 46  |0,4,0,1,1)....*F|
00001590  58 31 31 32 2c 31 0d 00  bf 17 f2 73 70 61 63 65  |X112,1.....space|
000015a0  28 39 34 30 2c 35 32 30  2c 30 2c 30 29 0d 00 c0  |(940,520,0,0)...|
000015b0  09 e7 20 b9 20 8c 0d 00  c1 0e 20 20 2a 46 58 31  |.. . .....  *FX1|
000015c0  31 32 2c 32 0d 00 c2 76  20 20 f2 74 65 78 74 5f  |12,2...v  .text_|
000015d0  62 6f 78 28 31 30 30 2c  32 30 30 2c 31 30 38 30  |box(100,200,1080|
000015e0  2c 31 37 30 2c 32 2c 22  54 6f 20 73 74 6f 70 20  |,170,2,"To stop |
000015f0  47 6f 6d 65 7a 20 61 6e  64 20 63 6f 6d 70 6c 65  |Gomez and comple|
00001600  74 65 20 74 68 69 73 20  61 64 76 65 6e 74 75 72  |te this adventur|
00001610  65 22 2c 22 79 6f 75 20  77 69 6c 6c 20 6e 65 65  |e","you will nee|
00001620  64 20 74 6f 20 64 6f 20  6d 61 6e 79 20 74 68 69  |d to do many thi|
00001630  6e 67 73 2e 22 2c 22 22  20 29 0d 00 c3 12 20 20  |ngs.","" )....  |
00001640  66 61 64 65 24 3d 22 66  61 64 65 22 0d 00 c4 1a  |fade$="fade"....|
00001650  20 20 f2 66 61 64 65 28  30 2c 39 36 30 2c 34 2c  |  .fade(0,960,4,|
00001660  30 2c 31 2c 31 29 0d 00  c5 0e 20 20 2a 46 58 31  |0,1,1)....  *FX1|
00001670  31 32 2c 31 0d 00 c6 18  20 20 f2 73 70 61 63 65  |12,1....  .space|
00001680  28 39 34 30 2c 34 30 2c  30 2c 30 29 0d 00 c7 05  |(940,40,0,0)....|
00001690  cd 0d 00 c8 05 e1 0d 00  c9 04 0d 00 ca 0a dd f2  |................|
000016a0  6d 61 7a 65 0d 00 cb 1c  20 f2 6c 6f 61 64 5f 73  |maze.... .load_s|
000016b0  70 72 69 74 65 73 28 22  54 6f 70 74 65 6d 22 29  |prites("Toptem")|
000016c0  0d 00 cc 0f fb 34 2c 36  34 2c 36 34 2c 36 34 0d  |.....4,64,64,64.|
000016d0  00 cd 12 72 6e 64 5f 6d  61 7a 65 25 3d b3 28 33  |...rnd_maze%=.(3|
000016e0  29 0d 00 ce 0c 2a 46 58  31 31 32 2c 32 0d 00 cf  |)....*FX112,2...|
000016f0  13 ef 32 36 2c 31 38 2c  30 2c 31 32 39 2c 31 36  |..26,18,0,129,16|
00001700  0d 00 d0 49 f2 73 65 74  5f 6d 61 7a 65 28 22 61  |...I.set_maze("a|
00001710  6d 61 7a 65 32 22 2b c3  28 72 6e 64 5f 6d 61 7a  |maze2"+.(rnd_maz|
00001720  65 25 29 29 3a f2 74 65  6d 70 6c 65 5f 6d 61 70  |e%)):.temple_map|
00001730  28 37 34 30 2c 32 36 38  2c 22 20 22 2c 22 20 22  |(740,268," "," "|
00001740  2c 22 20 22 2c 31 35 30  29 0d 00 d1 18 f2 62 6f  |," ",150).....bo|
00001750  78 28 31 30 30 2c 38 2c  31 30 38 30 2c 32 36 30  |x(100,8,1080,260|
00001760  29 0d 00 d2 18 6d 61 7a  65 78 25 3d 33 32 3a 6d  |)....mazex%=32:m|
00001770  61 7a 65 79 25 3d 33 30  30 0d 00 d3 10 64 69 72  |azey%=300....dir|
00001780  65 63 74 69 6f 6e 25 3d  31 0d 00 d4 0c 70 6f 73  |ection%=1....pos|
00001790  5f 78 25 3d 31 0d 00 d5  0c 70 6f 73 5f 79 25 3d  |_x%=1....pos_y%=|
000017a0  31 0d 00 d6 26 ef 20 32  34 2c 31 36 3b 32 35 36  |1...&. 24,16;256|
000017b0  2b 33 32 3b 36 38 30 3b  39 34 38 3b 31 38 2c 30  |+32;680;948;18,0|
000017c0  2c 31 33 31 2c 31 36 0d  00 d7 28 f2 64 72 61 77  |,131,16...(.draw|
000017d0  5f 6d 61 7a 65 28 64 69  72 65 63 74 69 6f 6e 25  |_maze(direction%|
000017e0  2c 70 6f 73 5f 78 25 2c  70 6f 73 5f 79 25 29 0d  |,pos_x%,pos_y%).|
000017f0  00 d8 07 ef 32 36 0d 00  d9 3c f2 70 72 69 28 32  |....26...<.pri(2|
00001800  34 30 2c 31 36 30 2c 22  54 72 79 20 74 6f 20 66  |40,160,"Try to f|
00001810  69 6e 64 20 74 68 65 20  63 6f 6e 74 72 6f 6c 20  |ind the control |
00001820  72 6f 6f 6d 20 69 6e 73  69 64 65 20 74 68 69 73  |room inside this|
00001830  22 29 0d 00 da 21 f2 70  72 69 28 32 34 30 2c 39  |")...!.pri(240,9|
00001840  30 2c 22 6a 75 6e 67 6c  65 20 74 65 6d 70 6c 65  |0,"jungle temple|
00001850  2e 22 29 0d 00 db 14 f2  70 72 69 28 31 34 30 2c  |.").....pri(140,|
00001860  36 36 2c 22 20 22 29 0d  00 dc 10 66 61 64 65 24  |66," ")....fade$|
00001870  3d 22 66 61 64 65 22 0d  00 dd 18 f2 66 61 64 65  |="fade".....fade|
00001880  28 30 2c 39 36 30 2c 34  2c 30 2c 31 2c 31 29 0d  |(0,960,4,0,1,1).|
00001890  00 de 0c 2a 46 58 31 31  32 2c 31 0d 00 df 16 f2  |...*FX112,1.....|
000018a0  73 70 61 63 65 28 39 34  30 2c 34 38 2c 30 2c 30  |space(940,48,0,0|
000018b0  29 0d 00 e0 13 d4 32 2c  2d 31 35 2c 26 32 35 30  |).....2,-15,&250|
000018c0  30 2c 32 30 0d 00 e1 18  f2 62 6f 78 28 31 30 30  |0,20.....box(100|
000018d0  2c 38 2c 31 30 38 30 2c  32 36 30 29 0d 00 e2 3a  |,8,1080,260)...:|
000018e0  f2 70 72 69 28 32 30 30  2c 31 37 30 2c 22 59 6f  |.pri(200,170,"Yo|
000018f0  75 20 61 72 65 20 69 6e  73 69 64 65 20 74 68 65  |u are inside the|
00001900  20 74 65 6d 70 6c 65 2e  20 20 57 68 69 63 68 20  | temple.  Which |
00001910  77 61 79 3f 22 29 0d 00  e3 26 ef 20 32 34 2c 31  |way?")...&. 24,1|
00001920  36 3b 32 35 36 2b 33 32  3b 36 38 30 3b 39 34 38  |6;256+32;680;948|
00001930  3b 31 38 2c 30 2c 31 33  31 2c 31 36 0d 00 e4 13  |;18,0,131,16....|
00001940  f2 69 6e 73 69 64 65 5f  6d 61 7a 65 28 31 29 0d  |.inside_maze(1).|
00001950  00 e5 3e 2a 52 4d 65 6e  73 75 72 65 20 53 6d 62  |..>*RMensure Smb|
00001960  75 7a 7a 20 2a 52 4d 6c  6f 61 64 20 22 3c 43 72  |uzz *RMload "<Cr|
00001970  79 73 74 61 6c 32 24 64  69 72 3e 2e 50 54 30 2e  |ystal2$dir>.PT0.|
00001980  73 6f 75 6e 64 2e 53 6d  62 75 7a 7a 22 0d 00 e6  |sound.Smbuzz"...|
00001990  1a 2a 63 68 61 6e 6e 65  6c 76 6f 69 63 65 20 31  |.*channelvoice 1|
000019a0  20 53 6d 62 75 7a 7a 0d  00 e7 15 e3 66 25 3d 34  | Smbuzz.....f%=4|
000019b0  34 38 20 b8 20 32 35 36  20 88 2d 32 0d 00 e8 0f  |48 . 256 .-2....|
000019c0  20 20 f2 73 74 5f 70 61  75 73 65 0d 00 e9 1b 20  |  .st_pause.... |
000019d0  20 ef 32 34 2c 66 25 2b  32 3b 34 32 38 3b 34 35  | .24,f%+2;428;45|
000019e0  30 3b 37 35 33 3b 0d 00  ea 1f 20 20 e7 66 25 20  |0;753;....  .f% |
000019f0  83 20 32 3d 30 3a d4 31  2c 2d 31 35 2c 26 32 30  |. 2=0:.1,-15,&20|
00001a00  30 30 2c 31 30 0d 00 eb  12 20 20 ef 31 38 2c 30  |00,10....  .18,0|
00001a10  2c 31 33 31 2c 31 36 0d  00 ec 19 20 20 ef 32 34  |,131,16....  .24|
00001a20  2c 32 35 34 3b 34 32 38  3b 66 25 3b 37 35 33 3b  |,254;428;f%;753;|
00001a30  0d 00 ed 3c 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |...<  .plot_spri|
00001a40  74 65 28 32 35 34 2d 28  34 34 38 2d 66 25 29 2c  |te(254-(448-f%),|
00001a50  34 32 38 2c 31 2c 31 2c  31 2c 31 2c 22 64 6f 6f  |428,1,1,1,1,"doo|
00001a60  72 6f 70 65 6e 22 2c 73  61 31 25 29 0d 00 ee 12  |ropen",sa1%)....|
00001a70  20 20 f2 65 6e 5f 70 61  75 73 65 28 33 29 0d 00  |  .en_pause(3)..|
00001a80  ef 05 ed 0d 00 f0 33 f4  20 50 52 4f 43 62 6f 78  |......3. PROCbox|
00001a90  5f 65 63 66 28 26 41 30  41 30 41 30 41 30 2c 26  |_ecf(&A0A0A0A0,&|
00001aa0  30 41 30 41 30 41 30 41  2c 30 2c 30 2c 31 32 38  |0A0A0A0A,0,0,128|
00001ab0  30 2c 32 38 30 29 0d 00  f1 20 ef 32 34 2c 30 3b  |0,280)... .24,0;|
00001ac0  30 3b 31 32 37 38 3b 32  37 30 3b 31 38 2c 30 2c  |0;1278;270;18,0,|
00001ad0  31 32 39 2c 31 36 0d 00  f2 18 f2 62 6f 78 28 32  |129,16.....box(2|
00001ae0  30 2c 36 30 2c 31 32 34  30 2c 32 30 30 29 0d 00  |0,60,1240,200)..|
00001af0  f3 1e f2 70 72 69 28 31  35 30 2c 31 38 38 2c 22  |...pri(150,188,"|
00001b00  57 65 6c 6c 20 64 6f 6e  65 21 22 29 0d 00 f4 36  |Well done!")...6|
00001b10  f2 70 72 69 28 31 35 30  2c 31 31 38 2c 22 59 6f  |.pri(150,118,"Yo|
00001b20  75 20 68 61 76 65 20 73  75 63 63 65 65 64 65 64  |u have succeeded|
00001b30  20 69 6e 20 74 68 69 73  20 74 65 6d 70 6c 65 2e  | in this temple.|
00001b40  22 29 0d 00 f5 13 d4 32  2c 2d 31 35 2c 26 32 35  |").....2,-15,&25|
00001b50  30 30 2c 32 30 0d 00 f6  15 f2 73 70 61 63 65 28  |00,20.....space(|
00001b60  39 30 30 2c 34 2c 30 2c  30 29 0d 00 f7 15 2a 63  |900,4,0,0)....*c|
00001b70  68 61 6e 6e 65 6c 76 6f  69 63 65 20 31 20 31 0d  |hannelvoice 1 1.|
00001b80  00 f8 12 2a 52 4d 6b 69  6c 6c 20 53 6d 62 75 7a  |...*RMkill Smbuz|
00001b90  7a 0d 00 f9 0c f2 70 61  6c 65 74 74 65 0d 00 fa  |z.....palette...|
00001ba0  05 e1 0d 00 fb 18 dd f2  69 6e 73 69 64 65 5f 6d  |........inside_m|
00001bb0  61 7a 65 28 65 78 69 74  25 29 0d 00 fc 40 2a 52  |aze(exit%)...@*R|
00001bc0  4d 65 6e 73 75 72 65 20  62 61 74 66 6c 61 70 20  |Mensure batflap |
00001bd0  2a 52 4d 6c 6f 61 64 20  22 3c 43 72 79 73 74 61  |*RMload "<Crysta|
00001be0  6c 32 24 64 69 72 3e 2e  50 54 30 2e 73 6f 75 6e  |l2$dir>.PT0.soun|
00001bf0  64 2e 62 61 74 66 6c 61  70 22 0d 00 fd 1b 2a 63  |d.batflap"....*c|
00001c00  68 61 6e 6e 65 6c 76 6f  69 63 65 20 32 20 62 61  |hannelvoice 2 ba|
00001c10  74 66 6c 61 70 0d 00 fe  11 66 6f 75 6e 64 5f 64  |tflap....found_d|
00001c20  6f 6f 72 25 3d 30 0d 00  ff 28 f2 64 72 61 77 5f  |oor%=0...(.draw_|
00001c30  6d 61 7a 65 28 64 69 72  65 63 74 69 6f 6e 25 2c  |maze(direction%,|
00001c40  70 6f 73 5f 78 25 2c 70  6f 73 5f 79 25 29 0d 01  |pos_x%,pos_y%)..|
00001c50  00 05 f5 0d 01 01 09 20  20 ef 32 36 0d 01 02 18  |.......  .26....|
00001c60  20 20 f2 64 65 66 69 6e  65 5f 62 75 74 74 6f 6e  |  .define_button|
00001c70  73 28 36 29 0d 01 03 42  20 20 e7 a4 6d 6f 76 65  |s(6)...B  ..move|
00001c80  28 64 69 72 65 63 74 69  6f 6e 25 2c 70 6f 73 5f  |(direction%,pos_|
00001c90  78 25 2c 70 6f 73 5f 79  25 29 3d 33 20 62 75 74  |x%,pos_y%)=3 but|
00001ca0  25 28 33 2c 34 29 3d 31  20 8b 20 62 75 74 25 28  |%(3,4)=1 . but%(|
00001cb0  33 2c 34 29 3d 32 0d 01  04 1c 20 20 f5 3a c8 97  |3,4)=2....  .:..|
00001cc0  6d 78 25 2c 6d 79 25 2c  6d 63 25 3a fd 6d 63 25  |mx%,my%,mc%:.mc%|
00001cd0  3d 30 0d 01 05 21 20 20  e3 6d 73 78 66 25 3d 31  |=0...!  .msxf%=1|
00001ce0  b8 31 30 3a c8 97 6d 78  25 2c 6d 79 25 2c 6d 63  |.10:..mx%,my%,mc|
00001cf0  25 3a ed 0d 01 06 16 20  20 f2 73 65 74 5f 6e 65  |%:.....  .set_ne|
00001d00  77 5f 62 75 74 74 6f 6e  73 0d 01 07 09 20 20 c8  |w_buttons....  .|
00001d10  97 ee 0d 01 08 07 20 20  f5 0d 01 09 19 20 20 20  |......  .....   |
00001d20  20 f2 63 68 65 63 6b 5f  62 75 74 74 6f 6e 73 28  | .check_buttons(|
00001d30  30 29 0d 01 0a 12 20 20  fd 73 65 6c 65 63 74 65  |0)....  .selecte|
00001d40  64 25 3e 30 0d 01 0b 14  20 20 e7 73 65 6c 65 63  |d%>0....  .selec|
00001d50  74 65 64 25 3d 33 20 8c  0d 01 0c 2d 20 20 20 20  |ted%=3 ....-    |
00001d60  74 65 6d 70 25 3d a4 6d  6f 76 65 28 64 69 72 65  |temp%=.move(dire|
00001d70  63 74 69 6f 6e 25 2c 70  6f 73 5f 78 25 2c 70 6f  |ction%,pos_x%,po|
00001d80  73 5f 79 25 29 0d 01 0d  12 20 20 20 20 e7 74 65  |s_y%)....    .te|
00001d90  6d 70 25 3d 30 20 8c 0d  01 0e 30 20 20 20 20 20  |mp%=0 ....0     |
00001da0  20 74 65 6d 25 3d a4 6d  6f 76 65 28 64 69 72 65  | tem%=.move(dire|
00001db0  63 74 69 6f 6e 25 2c 70  6f 73 5f 78 25 2d 31 2c  |ction%,pos_x%-1,|
00001dc0  70 6f 73 5f 79 25 29 0d  01 0f 14 20 20 20 20 20  |pos_y%)....     |
00001dd0  20 e7 74 65 6d 25 3d 31  35 20 8c 0d 01 10 4b 20  | .tem%=15 ....K |
00001de0  20 20 20 20 20 20 20 66  6f 75 6e 64 5f 64 6f 6f  |       found_doo|
00001df0  72 25 3d 31 3a e7 65 78  69 74 25 3d 32 3a f2 70  |r%=1:.exit%=2:.p|
00001e00  72 69 28 32 30 30 2c 31  30 30 2c 22 54 72 79 20  |ri(200,100,"Try |
00001e10  74 6f 20 66 69 6e 64 20  74 68 65 20 77 61 79 20  |to find the way |
00001e20  6f 75 74 2e 22 29 0d 01  11 0b 20 20 20 20 20 20  |out.")....      |
00001e30  cc 0d 01 12 24 20 20 20  20 20 20 20 20 70 6f 73  |....$        pos|
00001e40  5f 78 25 3d 70 6f 73 5f  78 25 2b 6c 6f 6f 6b 5f  |_x%=pos_x%+look_|
00001e50  74 77 6f 78 25 0d 01 13  24 20 20 20 20 20 20 20  |twox%...$       |
00001e60  20 70 6f 73 5f 79 25 3d  70 6f 73 5f 79 25 2b 6c  | pos_y%=pos_y%+l|
00001e70  6f 6f 6b 5f 74 77 6f 79  25 0d 01 14 1d 20 20 20  |ook_twoy%....   |
00001e80  20 20 20 20 20 f2 64 72  61 77 5f 6d 61 7a 65 5f  |     .draw_maze_|
00001e90  68 69 64 64 65 6e 0d 01  15 0b 20 20 20 20 20 20  |hidden....      |
00001ea0  cd 0d 01 16 09 20 20 20  20 cd 0d 01 17 55 20 20  |.....    ....U  |
00001eb0  20 20 e7 74 65 6d 70 25  3d 35 20 66 6f 75 6e 64  |  .temp%=5 found|
00001ec0  5f 64 6f 6f 72 25 3d 32  3a e7 65 78 69 74 25 3d  |_door%=2:.exit%=|
00001ed0  31 3a f2 70 72 69 28 32  30 30 2c 31 30 30 2c 22  |1:.pri(200,100,"|
00001ee0  54 72 79 20 74 6f 20 66  69 6e 64 20 74 68 65 20  |Try to find the |
00001ef0  63 6f 6e 74 72 6f 6c 20  72 6f 6f 6d 2e 22 29 0d  |control room.").|
00001f00  01 18 07 20 20 cd 0d 01  19 14 20 20 e7 73 65 6c  |...  .....  .sel|
00001f10  65 63 74 65 64 25 3d 31  20 8c 0d 01 1a 10 20 20  |ected%=1 .....  |
00001f20  20 20 2a 66 78 31 31 32  2c 32 0d 01 1b 1b 20 20  |  *fx112,2....  |
00001f30  20 20 6d 61 7a 65 78 25  3d 36 34 30 3a 6d 61 7a  |  mazex%=640:maz|
00001f40  65 79 25 3d 30 0d 01 1c  2c 20 20 20 20 f2 64 72  |ey%=0...,    .dr|
00001f50  61 77 5f 6d 61 7a 65 28  64 69 72 65 63 74 69 6f  |aw_maze(directio|
00001f60  6e 25 2c 70 6f 73 5f 78  25 2c 70 6f 73 5f 79 25  |n%,pos_x%,pos_y%|
00001f70  29 0d 01 1d 3a 20 20 20  20 64 69 72 65 63 74 69  |)...:    directi|
00001f80  6f 6e 25 3d 64 69 72 65  63 74 69 6f 6e 25 2d 31  |on%=direction%-1|
00001f90  3a e7 64 69 72 65 63 74  69 6f 6e 25 3d 30 3a 64  |:.direction%=0:d|
00001fa0  69 72 65 63 74 69 6f 6e  25 3d 34 0d 01 1e 19 20  |irection%=4.... |
00001fb0  20 20 20 6d 61 7a 65 78  25 3d 30 3a 6d 61 7a 65  |   mazex%=0:maze|
00001fc0  79 25 3d 30 0d 01 1f 2c  20 20 20 20 f2 64 72 61  |y%=0...,    .dra|
00001fd0  77 5f 6d 61 7a 65 28 64  69 72 65 63 74 69 6f 6e  |w_maze(direction|
00001fe0  25 2c 70 6f 73 5f 78 25  2c 70 6f 73 5f 79 25 29  |%,pos_x%,pos_y%)|
00001ff0  0d 01 20 10 20 20 20 20  2a 66 78 31 31 32 2c 31  |.. .    *fx112,1|
00002000  0d 01 21 1c 20 20 20 20  6d 61 7a 65 78 25 3d 33  |..!.    mazex%=3|
00002010  32 3a 6d 61 7a 65 79 25  3d 33 30 30 0d 01 22 1b  |2:mazey%=300..".|
00002020  20 20 20 20 e3 73 63 72  25 3d 36 34 30 20 b8 20  |    .scr%=640 . |
00002030  30 20 88 2d 31 32 38 0d  01 23 4b 20 20 20 20 20  |0 .-128..#K     |
00002040  20 f2 6d 6f 76 65 5f 62  6c 6f 63 6b 28 73 63 72  | .move_block(scr|
00002050  65 65 6e 5f 74 77 6f 25  2c 73 63 72 25 2c 30 2c  |een_two%,scr%,0,|
00002060  73 63 72 65 65 6e 5f 6f  6e 65 25 2c 6d 61 7a 65  |screen_one%,maze|
00002070  78 25 2c 6d 61 7a 65 79  25 2c 31 36 30 2c 31 36  |x%,mazey%,160,16|
00002080  30 29 0d 01 24 09 20 20  20 20 ed 0d 01 25 07 20  |0)..$.    ...%. |
00002090  20 cd 0d 01 26 14 20 20  e7 73 65 6c 65 63 74 65  | ...&.  .selecte|
000020a0  64 25 3d 32 20 8c 0d 01  27 10 20 20 20 20 2a 66  |d%=2 ...'.    *f|
000020b0  78 31 31 32 2c 32 0d 01  28 19 20 20 20 20 6d 61  |x112,2..(.    ma|
000020c0  7a 65 78 25 3d 30 3a 6d  61 7a 65 79 25 3d 30 0d  |zex%=0:mazey%=0.|
000020d0  01 29 2c 20 20 20 20 f2  64 72 61 77 5f 6d 61 7a  |.),    .draw_maz|
000020e0  65 28 64 69 72 65 63 74  69 6f 6e 25 2c 70 6f 73  |e(direction%,pos|
000020f0  5f 78 25 2c 70 6f 73 5f  79 25 29 0d 01 2a 3a 20  |_x%,pos_y%)..*: |
00002100  20 20 20 64 69 72 65 63  74 69 6f 6e 25 3d 64 69  |   direction%=di|
00002110  72 65 63 74 69 6f 6e 25  2b 31 3a e7 64 69 72 65  |rection%+1:.dire|
00002120  63 74 69 6f 6e 25 3d 35  3a 64 69 72 65 63 74 69  |ction%=5:directi|
00002130  6f 6e 25 3d 31 0d 01 2b  1b 20 20 20 20 6d 61 7a  |on%=1..+.    maz|
00002140  65 78 25 3d 36 34 30 3a  6d 61 7a 65 79 25 3d 30  |ex%=640:mazey%=0|
00002150  0d 01 2c 2c 20 20 20 20  f2 64 72 61 77 5f 6d 61  |..,,    .draw_ma|
00002160  7a 65 28 64 69 72 65 63  74 69 6f 6e 25 2c 70 6f  |ze(direction%,po|
00002170  73 5f 78 25 2c 70 6f 73  5f 79 25 29 0d 01 2d 10  |s_x%,pos_y%)..-.|
00002180  20 20 20 20 2a 66 78 31  31 32 2c 31 0d 01 2e 1c  |    *fx112,1....|
00002190  20 20 20 20 6d 61 7a 65  78 25 3d 33 32 3a 6d 61  |    mazex%=32:ma|
000021a0  7a 65 79 25 3d 33 30 30  0d 01 2f 1a 20 20 20 20  |zey%=300../.    |
000021b0  e3 73 63 72 25 3d 30 20  b8 20 36 34 30 20 88 31  |.scr%=0 . 640 .1|
000021c0  32 38 0d 01 30 4b 20 20  20 20 20 20 f2 6d 6f 76  |28..0K      .mov|
000021d0  65 5f 62 6c 6f 63 6b 28  73 63 72 65 65 6e 5f 74  |e_block(screen_t|
000021e0  77 6f 25 2c 73 63 72 25  2c 30 2c 73 63 72 65 65  |wo%,scr%,0,scree|
000021f0  6e 5f 6f 6e 65 25 2c 6d  61 7a 65 78 25 2c 6d 61  |n_one%,mazex%,ma|
00002200  7a 65 79 25 2c 31 36 30  2c 31 36 30 29 0d 01 31  |zey%,160,160)..1|
00002210  09 20 20 20 20 ed 0d 01  32 07 20 20 cd 0d 01 33  |.    ...2.  ...3|
00002220  10 ef 32 36 3a 2a 46 58  31 31 33 2c 31 0d 01 34  |..26:*FX113,1..4|
00002230  2c e7 20 63 6f 75 6e 74  25 3e 35 20 80 20 b3 28  |,. count%>5 . .(|
00002240  33 29 3d 31 20 f2 62 61  74 5f 66 6c 69 67 68 74  |3)=1 .bat_flight|
00002250  28 32 36 38 2c 36 34 30  29 0d 01 35 17 fd 20 66  |(268,640)..5.. f|
00002260  6f 75 6e 64 5f 64 6f 6f  72 25 3d 65 78 69 74 25  |ound_door%=exit%|
00002270  0d 01 36 15 2a 63 68 61  6e 6e 65 6c 76 6f 69 63  |..6.*channelvoic|
00002280  65 20 32 20 32 0d 01 37  13 2a 52 4d 6b 69 6c 6c  |e 2 2..7.*RMkill|
00002290  20 62 61 74 66 6c 61 70  0d 01 38 05 e1 0d 01 39  | batflap..8....9|
000022a0  04 0d 01 3a 16 dd f2 64  72 61 77 5f 6d 61 7a 65  |...:...draw_maze|
000022b0  5f 68 69 64 64 65 6e 0d  01 3b 0c 2a 66 78 31 31  |_hidden..;.*fx11|
000022c0  32 2c 32 0d 01 3c 15 6d  61 7a 65 78 25 3d 30 3a  |2,2..<.mazex%=0:|
000022d0  6d 61 7a 65 79 25 3d 30  0d 01 3d 28 f2 64 72 61  |mazey%=0..=(.dra|
000022e0  77 5f 6d 61 7a 65 28 64  69 72 65 63 74 69 6f 6e  |w_maze(direction|
000022f0  25 2c 70 6f 73 5f 78 25  2c 70 6f 73 5f 79 25 29  |%,pos_x%,pos_y%)|
00002300  0d 01 3e 0c 2a 66 78 31  31 32 2c 31 0d 01 3f 18  |..>.*fx112,1..?.|
00002310  6d 61 7a 65 78 25 3d 33  32 3a 6d 61 7a 65 79 25  |mazex%=32:mazey%|
00002320  3d 33 30 30 0d 01 40 44  20 20 f2 6d 6f 76 65 5f  |=300..@D  .move_|
00002330  62 6c 6f 63 6b 28 73 63  72 65 65 6e 5f 74 77 6f  |block(screen_two|
00002340  25 2c 30 2c 30 2c 73 63  72 65 65 6e 5f 6f 6e 65  |%,0,0,screen_one|
00002350  25 2c 6d 61 7a 65 78 25  2c 6d 61 7a 65 79 25 2c  |%,mazex%,mazey%,|
00002360  31 36 30 2c 31 36 30 29  0d 01 41 05 e1 0d 01 42  |160,160)..A....B|
00002370  04 0d 01 43 16 dd a4 6d  6f 76 65 28 64 25 2c 70  |...C...move(d%,p|
00002380  78 25 2c 70 79 25 29 0d  01 44 0d 20 20 e7 64 25  |x%,py%)..D.  .d%|
00002390  3d 31 20 8c 0d 01 45 15  20 20 20 20 20 6c 6f 6f  |=1 ...E.     loo|
000023a0  6b 5f 74 77 6f 78 25 3d  30 0d 01 46 16 20 20 20  |k_twox%=0..F.   |
000023b0  20 20 6c 6f 6f 6b 5f 74  77 6f 79 25 3d 2b 31 0d  |  look_twoy%=+1.|
000023c0  01 47 07 20 20 cd 0d 01  48 0d 20 20 e7 64 25 3d  |.G.  ...H.  .d%=|
000023d0  32 20 8c 0d 01 49 16 20  20 20 20 20 6c 6f 6f 6b  |2 ...I.     look|
000023e0  5f 74 77 6f 78 25 3d 2b  31 0d 01 4a 15 20 20 20  |_twox%=+1..J.   |
000023f0  20 20 6c 6f 6f 6b 5f 74  77 6f 79 25 3d 30 0d 01  |  look_twoy%=0..|
00002400  4b 07 20 20 cd 0d 01 4c  0d 20 20 e7 64 25 3d 33  |K.  ...L.  .d%=3|
00002410  20 8c 0d 01 4d 15 20 20  20 20 20 6c 6f 6f 6b 5f  | ...M.     look_|
00002420  74 77 6f 78 25 3d 30 0d  01 4e 16 20 20 20 20 20  |twox%=0..N.     |
00002430  6c 6f 6f 6b 5f 74 77 6f  79 25 3d 2d 31 0d 01 4f  |look_twoy%=-1..O|
00002440  07 20 20 cd 0d 01 50 0d  20 20 e7 64 25 3d 34 20  |.  ...P.  .d%=4 |
00002450  8c 0d 01 51 16 20 20 20  20 20 6c 6f 6f 6b 5f 74  |...Q.     look_t|
00002460  77 6f 78 25 3d 2d 31 0d  01 52 15 20 20 20 20 20  |wox%=-1..R.     |
00002470  6c 6f 6f 6b 5f 74 77 6f  79 25 3d 30 0d 01 53 07  |look_twoy%=0..S.|
00002480  20 20 cd 0d 01 54 2b 20  20 3d 6d 61 7a 65 25 28  |  ...T+  =maze%(|
00002490  70 78 25 2b 6c 6f 6f 6b  5f 74 77 6f 78 25 2c 70  |px%+look_twox%,p|
000024a0  79 25 2b 6c 6f 6f 6b 5f  74 77 6f 79 25 29 0d 01  |y%+look_twoy%)..|
000024b0  55 30 20 20 e7 6d 61 7a  65 25 28 70 78 25 2b 6c  |U0  .maze%(px%+l|
000024c0  6f 6f 6b 5f 74 77 6f 78  25 2c 70 79 25 2b 6c 6f  |ook_twox%,py%+lo|
000024d0  6f 6b 5f 74 77 6f 79 25  29 3d 33 3a 3d 31 0d 01  |ok_twoy%)=3:=1..|
000024e0  56 30 20 20 e7 6d 61 7a  65 25 28 70 78 25 2b 6c  |V0  .maze%(px%+l|
000024f0  6f 6f 6b 5f 74 77 6f 78  25 2c 70 79 25 2b 6c 6f  |ook_twox%,py%+lo|
00002500  6f 6b 5f 74 77 6f 79 25  29 3d 35 3a 3d 33 0d 01  |ok_twoy%)=5:=3..|
00002510  57 31 20 20 e7 6d 61 7a  65 25 28 70 78 25 2b 6c  |W1  .maze%(px%+l|
00002520  6f 6f 6b 5f 74 77 6f 78  25 2c 70 79 25 2b 6c 6f  |ook_twox%,py%+lo|
00002530  6f 6b 5f 74 77 6f 79 25  29 3d 31 35 3a 3d 32 0d  |ok_twoy%)=15:=2.|
00002540  01 58 08 20 20 3d 30 0d  01 59 04 0d 01 5a 29 dd  |.X.  =0..Y...Z).|
00002550  f2 74 65 6d 70 6c 65 5f  6d 61 70 28 78 78 25 2c  |.temple_map(xx%,|
00002560  79 79 25 2c 61 24 2c 61  61 24 2c 61 61 61 24 2c  |yy%,a$,aa$,aaa$,|
00002570  68 69 25 29 0d 01 5b 38  20 20 f2 70 6c 6f 74 5f  |hi%)..[8  .plot_|
00002580  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 78 78  |sprite_masked(xx|
00002590  25 2c 79 79 25 2c 31 2c  31 2c 31 2c 31 2c 22 73  |%,yy%,1,1,1,1,"s|
000025a0  63 72 6f 6c 6c 22 2c 73  61 31 25 29 0d 01 5c 31  |croll",sa1%)..\1|
000025b0  20 20 c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |  .."OS_SpriteOp|
000025c0  22 2c 26 31 32 46 2c 73  70 72 69 74 65 5f 61 72  |",&12F,sprite_ar|
000025d0  65 61 31 25 2c 22 73 63  72 6f 6c 6c 22 0d 01 5d  |ea1%,"scroll"..]|
000025e0  3c 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |<  .plot_sprite_|
000025f0  6d 61 73 6b 65 64 28 78  78 25 2b 34 30 30 2c 79  |masked(xx%+400,y|
00002600  79 25 2c 31 2c 31 2c 31  2c 31 2c 22 73 63 72 6f  |y%,1,1,1,1,"scro|
00002610  6c 6c 22 2c 73 61 31 25  29 0d 01 5e 33 20 20 ef  |ll",sa1%)..^3  .|
00002620  32 34 2c 78 78 25 2b 38  30 3b 79 79 25 2b 34 34  |24,xx%+80;yy%+44|
00002630  3b 78 78 25 2b 34 30 30  3b 79 79 25 2b 35 35 38  |;xx%+400;yy%+558|
00002640  3b 31 38 2c 30 2c 31 33  31 2c 31 36 0d 01 5f 33  |;18,0,131,16.._3|
00002650  20 20 ef 32 34 2c 78 78  25 2b 38 30 3b 79 79 25  |  .24,xx%+80;yy%|
00002660  2b 34 38 3b 78 78 25 2b  34 30 30 3b 79 79 25 2b  |+48;xx%+400;yy%+|
00002670  35 35 34 3b 31 38 2c 30  2c 31 32 38 2c 31 36 0d  |554;18,0,128,16.|
00002680  01 60 20 20 20 20 20 20  f2 70 72 69 28 78 78 25  |.`      .pri(xx%|
00002690  2b 39 32 2c 79 79 25 2b  35 31 30 2c 61 24 29 0d  |+92,yy%+510,a$).|
000026a0  01 61 21 20 20 20 20 20  f2 70 72 69 28 78 78 25  |.a!     .pri(xx%|
000026b0  2b 39 32 2c 79 79 25 2b  34 35 30 2c 61 61 24 29  |+92,yy%+450,aa$)|
000026c0  0d 01 62 22 20 20 20 20  20 f2 70 72 69 28 78 78  |..b"     .pri(xx|
000026d0  25 2b 39 32 2c 79 79 25  2b 33 39 30 2c 61 61 61  |%+92,yy%+390,aaa|
000026e0  24 29 0d 01 63 0f 20 20  78 25 3d 78 78 25 2b 39  |$)..c.  x%=xx%+9|
000026f0  36 0d 01 64 16 20 20 e3  66 25 3d 30 20 b8 20 77  |6..d.  .f%=0 . w|
00002700  69 64 74 68 25 2d 31 0d  01 65 12 20 20 20 20 79  |idth%-1..e.    y|
00002710  25 3d 79 79 25 2b 68 69  25 0d 01 66 1a 20 20 20  |%=yy%+hi%..f.   |
00002720  20 e3 66 66 25 3d 30 20  b8 20 68 65 69 67 68 74  | .ff%=0 . height|
00002730  25 2d 31 0d 01 67 48 20  20 20 20 20 20 e7 6d 61  |%-1..gH      .ma|
00002740  7a 65 25 28 66 25 2c 66  66 25 29 3d 33 20 20 f2  |ze%(f%,ff%)=3  .|
00002750  70 6c 6f 74 5f 73 70 72  69 74 65 28 78 25 2c 79  |plot_sprite(x%,y|
00002760  25 2c 31 2c 31 2c 31 2c  31 2c 22 6d 61 70 5f 62  |%,1,1,1,1,"map_b|
00002770  72 69 63 6b 22 2c 73 61  31 25 29 0d 01 68 44 20  |rick",sa1%)..hD |
00002780  20 20 20 20 20 e7 6d 61  7a 65 25 28 66 25 2c 66  |     .maze%(f%,f|
00002790  66 25 29 3d 31 35 20 f2  70 6c 6f 74 5f 73 70 72  |f%)=15 .plot_spr|
000027a0  69 74 65 28 78 25 2c 79  25 2c 31 2c 31 2c 31 2c  |ite(x%,y%,1,1,1,|
000027b0  31 2c 22 64 6f 6f 72 68  22 2c 73 61 31 25 29 0d  |1,"doorh",sa1%).|
000027c0  01 69 41 20 20 20 20 20  20 e7 6d 61 7a 65 25 28  |.iA      .maze%(|
000027d0  66 25 2c 66 66 25 29 3d  39 20 20 f2 70 6c 6f 74  |f%,ff%)=9  .plot|
000027e0  5f 73 70 72 69 74 65 28  78 25 2c 79 25 2c 31 2c  |_sprite(x%,y%,1,|
000027f0  31 2c 31 2c 31 2c 22 63  72 22 2c 73 61 31 25 29  |1,1,1,"cr",sa1%)|
00002800  0d 01 6a 49 20 20 20 20  20 20 e7 6d 61 7a 65 25  |..jI      .maze%|
00002810  28 66 25 2c 66 66 25 29  3d 35 20 80 20 53 25 3c  |(f%,ff%)=5 . S%<|
00002820  3e 31 34 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |>14 .plot_sprite|
00002830  28 78 25 2c 79 25 2c 31  2c 31 2c 31 2c 31 2c 22  |(x%,y%,1,1,1,1,"|
00002840  77 69 22 2c 73 61 31 25  29 0d 01 6b 12 20 20 20  |wi",sa1%)..k.   |
00002850  20 20 20 79 25 3d 79 25  2b 33 32 0d 01 6c 09 20  |   y%=y%+32..l. |
00002860  20 20 20 ed 0d 01 6d 10  20 20 20 20 78 25 3d 78  |   ...m.    x%=x|
00002870  25 2b 33 32 0d 01 6e 07  20 20 ed 0d 01 6f 05 e1  |%+32..n.  ...o..|
00002880  0d 01 70 04 0d 01 71 19  dd f2 62 61 74 5f 66 6c  |..p...q...bat_fl|
00002890  69 67 68 74 28 62 78 25  2c 62 79 25 29 0d 01 72  |ight(bx%,by%)..r|
000028a0  2f 42 25 3d 73 63 72 65  65 6e 5f 6f 6e 65 25 3a  |/B%=screen_one%:|
000028b0  43 25 3d 73 63 72 65 65  6e 5f 74 77 6f 25 3a d6  |C%=screen_two%:.|
000028c0  73 61 76 65 5f 73 63 72  65 65 6e 25 0d 01 73 0c  |save_screen%..s.|
000028d0  2a 46 58 31 31 32 2c 32  0d 01 74 2d ef 20 32 34  |*FX112,2..t-. 24|
000028e0  2c 6d 61 7a 65 78 25 3b  6d 61 7a 65 79 25 3b 6d  |,mazex%;mazey%;m|
000028f0  61 7a 65 78 25 2b 36 33  36 3b 6d 61 7a 65 79 25  |azex%+636;mazey%|
00002900  2b 36 33 38 3b 0d 01 75  17 61 6e 5f 78 25 3d 62  |+638;..u.an_x%=b|
00002910  78 25 3a 61 6e 5f 79 25  3d 62 79 25 0d 01 76 16  |x%:an_y%=by%..v.|
00002920  73 65 6c 5f 73 70 72 69  74 65 24 3d 22 62 61 74  |sel_sprite$="bat|
00002930  33 22 0d 01 77 12 62 6c  61 6e 6b 24 3d 22 62 6c  |3"..w.blank$="bl|
00002940  61 6e 6b 22 0d 01 78 17  f2 73 74 61 72 74 5f 61  |ank"..x..start_a|
00002950  6e 69 6d 28 62 6c 61 6e  6b 24 29 0d 01 79 0a 73  |nim(blank$)..y.s|
00002960  65 6c 25 3d 33 0d 01 7a  15 73 65 6c 5f 73 70 72  |el%=3..z.sel_spr|
00002970  69 74 65 24 3d 22 62 61  74 22 0d 01 7b 09 f7 8d  |ite$="bat"..{...|
00002980  74 59 41 0d 01 7c 0d e3  66 25 3d 31 b8 20 31 35  |tYA..|..f%=1. 15|
00002990  0d 01 7d 0e 20 f2 73 74  5f 70 61 75 73 65 0d 01  |..}. .st_pause..|
000029a0  7e 1c 20 e7 73 65 6c 25  3d 34 3a 73 65 6c 25 3d  |~. .sel%=4:sel%=|
000029b0  33 20 8b 20 73 65 6c 25  3d 34 0d 01 7f 1e 20 73  |3 . sel%=4.... s|
000029c0  65 6c 5f 73 70 72 69 74  65 24 3d 22 62 61 74 22  |el_sprite$="bat"|
000029d0  2b c3 28 73 65 6c 25 29  0d 01 80 12 20 61 6e 5f  |+.(sel%).... an_|
000029e0  79 25 3d 61 6e 5f 79 25  2b 38 0d 01 81 17 20 f3  |y%=an_y%+8.... .|
000029f0  73 6d 25 2c 73 64 25 2c  6f 66 78 25 2c 6f 66 79  |sm%,sd%,ofx%,ofy|
00002a00  25 0d 01 82 40 20 f2 70  6c 6f 74 5f 73 70 72 69  |%...@ .plot_spri|
00002a10  74 65 5f 6d 61 73 6b 65  64 28 61 6e 5f 78 78 25  |te_masked(an_xx%|
00002a20  2c 61 6e 5f 79 79 25 2c  31 2c 31 2c 31 2c 31 2b  |,an_yy%,1,1,1,1+|
00002a30  76 67 61 25 2c 62 6c 61  6e 6b 24 2c 73 61 31 25  |vga%,blank$,sa1%|
00002a40  29 0d 01 83 57 20 c8 99  22 4f 53 5f 53 70 72 69  |)...W .."OS_Spri|
00002a50  74 65 4f 70 22 2c 26 31  31 30 2c 73 70 72 69 74  |teOp",&110,sprit|
00002a60  65 5f 61 72 65 61 31 25  2c 62 6c 61 6e 6b 24 2c  |e_area1%,blank$,|
00002a70  30 2c 61 6e 5f 78 25 2c  61 6e 5f 79 25 2c 61 6e  |0,an_x%,an_y%,an|
00002a80  5f 78 25 2b 77 69 64 74  68 25 2c 61 6e 5f 79 25  |_x%+width%,an_y%|
00002a90  2b 68 65 69 67 68 74 25  0d 01 84 41 20 f2 70 73  |+height%...A .ps|
00002aa0  6d 28 61 6e 5f 78 25 2b  6f 66 78 25 2c 61 6e 5f  |m(an_x%+ofx%,an_|
00002ab0  79 25 2b 6f 66 79 25 2c  73 6d 25 2c 73 6d 25 2c  |y%+ofy%,sm%,sm%,|
00002ac0  73 64 25 2c 73 64 25 2c  73 65 6c 5f 73 70 72 69  |sd%,sd%,sel_spri|
00002ad0  74 65 24 2c 73 61 31 25  29 0d 01 85 3f 20 f2 6d  |te$,sa1%)...? .m|
00002ae0  6f 76 65 5f 62 6c 6f 63  6b 28 73 63 72 65 65 6e  |ove_block(screen|
00002af0  5f 74 77 6f 25 2c 32 32  30 2c 36 32 34 2c 73 63  |_two%,220,624,sc|
00002b00  72 65 65 6e 5f 6f 6e 65  25 2c 32 32 30 2c 36 32  |reen_one%,220,62|
00002b10  34 2c 38 30 2c 38 30 29  0d 01 86 1e 20 61 6e 5f  |4,80,80).... an_|
00002b20  78 78 25 3d 61 6e 5f 78  25 3a 61 6e 5f 79 79 25  |xx%=an_x%:an_yy%|
00002b30  3d 61 6e 5f 79 25 0d 01  87 12 20 f2 65 6e 5f 70  |=an_y%.... .en_p|
00002b40  61 75 73 65 28 31 30 29  0d 01 88 05 ed 0d 01 89  |ause(10)........|
00002b50  0d e3 66 25 3d 31 b8 20  31 32 0d 01 8a 0e 20 f2  |..f%=1. 12.... .|
00002b60  73 74 5f 70 61 75 73 65  0d 01 8b 1c 20 e7 73 65  |st_pause.... .se|
00002b70  6c 25 3d 34 3a 73 65 6c  25 3d 33 20 8b 20 73 65  |l%=4:sel%=3 . se|
00002b80  6c 25 3d 34 0d 01 8c 1e  20 73 65 6c 5f 73 70 72  |l%=4.... sel_spr|
00002b90  69 74 65 24 3d 22 62 61  74 22 2b c3 28 73 65 6c  |ite$="bat"+.(sel|
00002ba0  25 29 0d 01 8d 13 20 61  6e 5f 79 25 3d 61 6e 5f  |%).... an_y%=an_|
00002bb0  79 25 2b 31 36 0d 01 8e  40 20 f2 70 6c 6f 74 5f  |y%+16...@ .plot_|
00002bc0  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 61 6e  |sprite_masked(an|
00002bd0  5f 78 78 25 2c 61 6e 5f  79 79 25 2c 31 2c 31 2c  |_xx%,an_yy%,1,1,|
00002be0  31 2c 31 2b 76 67 61 25  2c 62 6c 61 6e 6b 24 2c  |1,1+vga%,blank$,|
00002bf0  73 61 31 25 29 0d 01 8f  57 20 c8 99 22 4f 53 5f  |sa1%)...W .."OS_|
00002c00  53 70 72 69 74 65 4f 70  22 2c 26 31 31 30 2c 73  |SpriteOp",&110,s|
00002c10  70 72 69 74 65 5f 61 72  65 61 31 25 2c 62 6c 61  |prite_area1%,bla|
00002c20  6e 6b 24 2c 30 2c 61 6e  5f 78 25 2c 61 6e 5f 79  |nk$,0,an_x%,an_y|
00002c30  25 2c 61 6e 5f 78 25 2b  77 69 64 74 68 25 2c 61  |%,an_x%+width%,a|
00002c40  6e 5f 79 25 2b 68 65 69  67 68 74 25 0d 01 90 2f  |n_y%+height%.../|
00002c50  20 f2 70 73 6d 28 61 6e  5f 78 25 2c 61 6e 5f 79  | .psm(an_x%,an_y|
00002c60  25 2c 31 2c 31 2c 31 2c  31 2c 73 65 6c 5f 73 70  |%,1,1,1,1,sel_sp|
00002c70  72 69 74 65 24 2c 73 61  31 25 29 0d 01 91 3f 20  |rite$,sa1%)...? |
00002c80  f2 6d 6f 76 65 5f 62 6c  6f 63 6b 28 73 63 72 65  |.move_block(scre|
00002c90  65 6e 5f 74 77 6f 25 2c  32 32 30 2c 36 32 34 2c  |en_two%,220,624,|
00002ca0  73 63 72 65 65 6e 5f 6f  6e 65 25 2c 32 32 30 2c  |screen_one%,220,|
00002cb0  36 32 34 2c 38 30 2c 38  30 29 0d 01 92 1e 20 61  |624,80,80).... a|
00002cc0  6e 5f 78 78 25 3d 61 6e  5f 78 25 3a 61 6e 5f 79  |n_xx%=an_x%:an_y|
00002cd0  79 25 3d 61 6e 5f 79 25  0d 01 93 1d 20 e7 66 25  |y%=an_y%.... .f%|
00002ce0  20 83 20 33 3d 32 3a d4  32 2c 2d 31 32 2c 26 34  | . 3=2:.2,-12,&4|
00002cf0  38 30 30 2c 32 0d 01 94  12 20 f2 65 6e 5f 70 61  |800,2.... .en_pa|
00002d00  75 73 65 28 31 30 29 0d  01 95 05 ed 0d 01 96 40  |use(10)........@|
00002d10  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  | .plot_sprite_ma|
00002d20  73 6b 65 64 28 61 6e 5f  78 78 25 2c 61 6e 5f 79  |sked(an_xx%,an_y|
00002d30  79 25 2c 31 2c 31 2c 31  2c 31 2b 76 67 61 25 2c  |y%,1,1,1,1+vga%,|
00002d40  62 6c 61 6e 6b 24 2c 73  61 31 25 29 0d 01 97 3f  |blank$,sa1%)...?|
00002d50  20 f2 6d 6f 76 65 5f 62  6c 6f 63 6b 28 73 63 72  | .move_block(scr|
00002d60  65 65 6e 5f 74 77 6f 25  2c 32 32 30 2c 36 32 34  |een_two%,220,624|
00002d70  2c 73 63 72 65 65 6e 5f  6f 6e 65 25 2c 32 32 30  |,screen_one%,220|
00002d80  2c 36 32 34 2c 38 30 2c  38 30 29 0d 01 98 0d 20  |,624,80,80).... |
00002d90  2a 46 58 31 31 32 2c 31  0d 01 99 0e dc 31 2c 34  |*FX112,1.....1,4|
00002da0  2c 35 36 2c 32 30 0d 01  9a 0e dc 31 2c 34 2c 35  |,56,20.....1,4,5|
00002db0  36 2c 32 30 0d 01 9b 0e  dc 31 2c 34 2c 35 36 2c  |6,20.....1,4,56,|
00002dc0  32 30 0d 01 9c 0e dc 31  2c 34 2c 35 36 2c 32 30  |20.....1,4,56,20|
00002dd0  0d 01 9d 0e dc 31 2c 32  2c 33 32 2c 31 32 0d 01  |.....1,2,32,12..|
00002de0  9e 0e dc 31 2c 32 2c 33  32 2c 31 32 0d 01 9f 0e  |...1,2,32,12....|
00002df0  dc 31 2c 32 2c 33 32 2c  31 32 0d 01 a0 0e dc 31  |.1,2,32,12.....1|
00002e00  2c 32 2c 33 32 2c 31 32  0d 01 a1 0d dc 32 2c 33  |,2,32,12.....2,3|
00002e10  2c 32 34 2c 38 0d 01 a2  0d dc 32 2c 33 2c 32 34  |,24,8.....2,3,24|
00002e20  2c 38 0d 01 a3 0d dc 32  2c 33 2c 32 34 2c 38 0d  |,8.....2,3,24,8.|
00002e30  01 a4 0d dc 33 2c 34 2c  31 36 2c 34 0d 01 a5 0d  |....3,4,16,4....|
00002e40  dc 33 2c 34 2c 31 36 2c  34 0d 01 a6 0d dc 33 2c  |.3,4,16,4.....3,|
00002e50  34 2c 31 36 2c 34 0d 01  a7 0c dc 31 2c 31 2c 30  |4,16,4.....1,1,0|
00002e60  2c 30 0d 01 a8 15 f2 65  6e 64 5f 61 6e 69 6d 28  |,0.....end_anim(|
00002e70  62 6c 61 6e 6b 24 29 0d  01 a9 05 e1 0d 01 aa 04  |blank$).........|
00002e80  0d 01 ab 1d dd f2 64 72  61 77 5f 6d 61 7a 65 28  |......draw_maze(|
00002e90  64 69 72 25 2c 70 78 25  2c 70 79 25 29 0d 01 ac  |dir%,px%,py%)...|
00002ea0  04 0d 01 ad 53 f4 20 43  68 61 6e 67 65 20 74 68  |....S. Change th|
00002eb0  65 20 64 72 61 77 69 6e  67 20 6f 66 20 74 68 65  |e drawing of the|
00002ec0  20 63 6f 72 72 69 64 6f  72 20 74 6f 20 61 20 75  | corridor to a u|
00002ed0  6e 69 76 65 72 73 61 6c  20 64 72 61 77 20 69 6e  |niversal draw in|
00002ee0  20 61 6e 79 20 64 69 72  65 63 74 69 6f 6e 20 70  | any direction p|
00002ef0  72 6f 63 2e 0d 01 ae 5c  f4 20 54 68 65 20 64 69  |roc....\. The di|
00002f00  72 25 20 73 65 74 73 20  75 70 20 61 20 73 74 72  |r% sets up a str|
00002f10  69 6e 67 24 20 74 68 61  74 20 77 69 6c 6c 20 67  |ing$ that will g|
00002f20  69 76 65 20 64 65 74 61  69 6c 73 20 6f 66 20 6c  |ive details of l|
00002f30  65 6e 67 74 68 20 6f 66  20 63 6f 72 72 69 64 6f  |ength of corrido|
00002f40  72 20 61 6e 64 20 70 61  74 68 73 20 6f 66 66 2e  |r and paths off.|
00002f50  0d 01 af 2d ef 20 32 34  2c 6d 61 7a 65 78 25 3b  |...-. 24,mazex%;|
00002f60  6d 61 7a 65 79 25 3b 6d  61 7a 65 78 25 2b 36 33  |mazey%;mazex%+63|
00002f70  36 3b 6d 61 7a 65 79 25  2b 36 34 30 3b 0d 01 b0  |6;mazey%+640;...|
00002f80  04 0d 01 b1 0f 20 20 e7  64 69 72 25 3d 31 20 8c  |.....  .dir%=1 .|
00002f90  0d 01 b2 16 20 20 20 20  20 6c 6f 6f 6b 5f 6f 6e  |....     look_on|
00002fa0  65 78 25 3d 2d 31 0d 01  b3 15 20 20 20 20 20 6c  |ex%=-1....     l|
00002fb0  6f 6f 6b 5f 6f 6e 65 79  25 3d 30 0d 01 b4 15 20  |ook_oney%=0.... |
00002fc0  20 20 20 20 6c 6f 6f 6b  5f 74 77 6f 78 25 3d 30  |    look_twox%=0|
00002fd0  0d 01 b5 16 20 20 20 20  20 6c 6f 6f 6b 5f 74 77  |....     look_tw|
00002fe0  6f 79 25 3d 2b 31 0d 01  b6 18 20 20 20 20 20 6c  |oy%=+1....     l|
00002ff0  6f 6f 6b 5f 74 68 72 65  65 78 25 3d 2b 31 0d 01  |ook_threex%=+1..|
00003000  b7 17 20 20 20 20 20 6c  6f 6f 6b 5f 74 68 72 65  |..     look_thre|
00003010  65 79 25 3d 30 0d 01 b8  07 20 20 cd 0d 01 b9 04  |ey%=0....  .....|
00003020  0d 01 ba 0f 20 20 e7 64  69 72 25 3d 32 20 8c 0d  |....  .dir%=2 ..|
00003030  01 bb 15 20 20 20 20 20  6c 6f 6f 6b 5f 6f 6e 65  |...     look_one|
00003040  78 25 3d 30 0d 01 bc 16  20 20 20 20 20 6c 6f 6f  |x%=0....     loo|
00003050  6b 5f 6f 6e 65 79 25 3d  2b 31 0d 01 bd 16 20 20  |k_oney%=+1....  |
00003060  20 20 20 6c 6f 6f 6b 5f  74 77 6f 78 25 3d 2b 31  |   look_twox%=+1|
00003070  0d 01 be 15 20 20 20 20  20 6c 6f 6f 6b 5f 74 77  |....     look_tw|
00003080  6f 79 25 3d 30 0d 01 bf  17 20 20 20 20 20 6c 6f  |oy%=0....     lo|
00003090  6f 6b 5f 74 68 72 65 65  78 25 3d 30 0d 01 c0 18  |ok_threex%=0....|
000030a0  20 20 20 20 20 6c 6f 6f  6b 5f 74 68 72 65 65 79  |     look_threey|
000030b0  25 3d 2d 31 0d 01 c1 07  20 20 cd 0d 01 c2 04 0d  |%=-1....  ......|
000030c0  01 c3 0f 20 20 e7 64 69  72 25 3d 33 20 8c 0d 01  |...  .dir%=3 ...|
000030d0  c4 16 20 20 20 20 20 6c  6f 6f 6b 5f 6f 6e 65 78  |..     look_onex|
000030e0  25 3d 2b 31 0d 01 c5 15  20 20 20 20 20 6c 6f 6f  |%=+1....     loo|
000030f0  6b 5f 6f 6e 65 79 25 3d  30 0d 01 c6 15 20 20 20  |k_oney%=0....   |
00003100  20 20 6c 6f 6f 6b 5f 74  77 6f 78 25 3d 30 0d 01  |  look_twox%=0..|
00003110  c7 16 20 20 20 20 20 6c  6f 6f 6b 5f 74 77 6f 79  |..     look_twoy|
00003120  25 3d 2d 31 0d 01 c8 18  20 20 20 20 20 6c 6f 6f  |%=-1....     loo|
00003130  6b 5f 74 68 72 65 65 78  25 3d 2d 31 0d 01 c9 17  |k_threex%=-1....|
00003140  20 20 20 20 20 6c 6f 6f  6b 5f 74 68 72 65 65 79  |     look_threey|
00003150  25 3d 30 0d 01 ca 07 20  20 cd 0d 01 cb 04 0d 01  |%=0....  .......|
00003160  cc 0f 20 20 e7 64 69 72  25 3d 34 20 8c 0d 01 cd  |..  .dir%=4 ....|
00003170  15 20 20 20 20 20 6c 6f  6f 6b 5f 6f 6e 65 78 25  |.     look_onex%|
00003180  3d 30 0d 01 ce 16 20 20  20 20 20 6c 6f 6f 6b 5f  |=0....     look_|
00003190  6f 6e 65 79 25 3d 2d 31  0d 01 cf 16 20 20 20 20  |oney%=-1....    |
000031a0  20 6c 6f 6f 6b 5f 74 77  6f 78 25 3d 2d 31 0d 01  | look_twox%=-1..|
000031b0  d0 15 20 20 20 20 20 6c  6f 6f 6b 5f 74 77 6f 79  |..     look_twoy|
000031c0  25 3d 30 0d 01 d1 17 20  20 20 20 20 6c 6f 6f 6b  |%=0....     look|
000031d0  5f 74 68 72 65 65 78 25  3d 30 0d 01 d2 18 20 20  |_threex%=0....  |
000031e0  20 20 20 6c 6f 6f 6b 5f  74 68 72 65 65 79 25 3d  |   look_threey%=|
000031f0  2b 31 0d 01 d3 07 20 20  cd 0d 01 d4 04 0d 01 d5  |+1....  ........|
00003200  29 20 20 20 20 20 74 65  6d 70 5f 78 25 3d 70 78  |)     temp_x%=px|
00003210  25 3a 74 65 6d 70 5f 79  25 3d 70 79 25 3a 63 6f  |%:temp_y%=py%:co|
00003220  75 6e 74 25 3d 30 0d 01  d6 07 20 20 f5 0d 01 d7  |unt%=0....  ....|
00003230  17 20 20 20 20 63 6f 75  6e 74 25 3d 63 6f 75 6e  |.    count%=coun|
00003240  74 25 2b 31 0d 01 d8 22  20 20 20 20 74 65 6d 70  |t%+1..."    temp|
00003250  5f 78 25 3d 74 65 6d 70  5f 78 25 2b 6c 6f 6f 6b  |_x%=temp_x%+look|
00003260  5f 74 77 6f 78 25 0d 01  d9 22 20 20 20 20 74 65  |_twox%..."    te|
00003270  6d 70 5f 79 25 3d 74 65  6d 70 5f 79 25 2b 6c 6f  |mp_y%=temp_y%+lo|
00003280  6f 6b 5f 74 77 6f 79 25  0d 01 da 19 20 20 20 20  |ok_twoy%....    |
00003290  63 6f 72 72 25 28 63 6f  75 6e 74 25 2c 32 29 3d  |corr%(count%,2)=|
000032a0  31 0d 01 db 11 20 20 20  20 6e 65 77 65 6e 64 25  |1....    newend%|
000032b0  3d 30 0d 01 dc 33 20 20  20 20 e7 6d 61 7a 65 25  |=0...3    .maze%|
000032c0  28 74 65 6d 70 5f 78 25  2c 74 65 6d 70 5f 79 25  |(temp_x%,temp_y%|
000032d0  29 3c 33 20 63 6f 72 72  25 28 63 6f 75 6e 74 25  |)<3 corr%(count%|
000032e0  2c 32 29 3d 30 0d 01 dd  3e 20 20 20 20 e7 6d 61  |,2)=0...>    .ma|
000032f0  7a 65 25 28 74 65 6d 70  5f 78 25 2c 74 65 6d 70  |ze%(temp_x%,temp|
00003300  5f 79 25 29 3d 35 20 6e  65 77 65 6e 64 25 3d 31  |_y%)=5 newend%=1|
00003310  20 20 20 20 20 20 20 20  20 20 3a f4 20 6f 75 73  |          :. ous|
00003320  69 64 65 0d 01 de 44 20  20 20 20 e7 6d 61 7a 65  |ide...D    .maze|
00003330  25 28 74 65 6d 70 5f 78  25 2c 74 65 6d 70 5f 79  |%(temp_x%,temp_y|
00003340  25 29 3d 31 35 20 6e 65  77 65 6e 64 25 3d 32 20  |%)=15 newend%=2 |
00003350  20 20 20 20 20 20 20 20  3a f4 20 63 6f 6e 74 72  |        :. contr|
00003360  6f 6c 20 72 6f 6f 6d 0d  01 df 5b 20 20 20 20 63  |ol room...[    c|
00003370  6f 72 72 25 28 63 6f 75  6e 74 25 2c 31 29 3d 31  |orr%(count%,1)=1|
00003380  3a e7 6d 61 7a 65 25 28  74 65 6d 70 5f 78 25 2b  |:.maze%(temp_x%+|
00003390  6c 6f 6f 6b 5f 6f 6e 65  78 25 2c 74 65 6d 70 5f  |look_onex%,temp_|
000033a0  79 25 2b 6c 6f 6f 6b 5f  6f 6e 65 79 25 29 3c 33  |y%+look_oney%)<3|
000033b0  20 63 6f 72 72 25 28 63  6f 75 6e 74 25 2c 31 29  | corr%(count%,1)|
000033c0  3d 30 0d 01 e0 5f 20 20  20 20 63 6f 72 72 25 28  |=0..._    corr%(|
000033d0  63 6f 75 6e 74 25 2c 33  29 3d 31 3a e7 6d 61 7a  |count%,3)=1:.maz|
000033e0  65 25 28 74 65 6d 70 5f  78 25 2b 6c 6f 6f 6b 5f  |e%(temp_x%+look_|
000033f0  74 68 72 65 65 78 25 2c  74 65 6d 70 5f 79 25 2b  |threex%,temp_y%+|
00003400  6c 6f 6f 6b 5f 74 68 72  65 65 79 25 29 3c 33 20  |look_threey%)<3 |
00003410  63 6f 72 72 25 28 63 6f  75 6e 74 25 2c 33 29 3d  |corr%(count%,3)=|
00003420  30 0d 01 e1 20 20 20 fd  20 6d 61 7a 65 25 28 74  |0...   . maze%(t|
00003430  65 6d 70 5f 78 25 2c 74  65 6d 70 5f 79 25 29 3e  |emp_x%,temp_y%)>|
00003440  32 0d 01 e2 17 20 20 20  e7 63 6f 75 6e 74 25 3d  |2....   .count%=|
00003450  31 20 f4 20 77 61 6c 6c  0d 01 e3 46 20 20 20 e7  |1 . wall...F   .|
00003460  63 6f 75 6e 74 25 3e 36  20 f2 70 6c 6f 74 5f 73  |count%>6 .plot_s|
00003470  70 72 69 74 65 28 6d 61  7a 65 78 25 2c 6d 61 7a  |prite(mazex%,maz|
00003480  65 79 25 2b 32 34 34 2c  31 2c 31 2c 31 2c 31 2c  |ey%+244,1,1,1,1,|
00003490  22 66 6c 6f 6f 72 36 22  2c 73 61 31 25 29 0d 01  |"floor6",sa1%)..|
000034a0  e4 46 20 20 20 e7 63 6f  75 6e 74 25 3e 35 20 f2  |.F   .count%>5 .|
000034b0  70 6c 6f 74 5f 73 70 72  69 74 65 28 6d 61 7a 65  |plot_sprite(maze|
000034c0  78 25 2c 6d 61 7a 65 79  25 2b 32 33 32 2c 31 2c  |x%,mazey%+232,1,|
000034d0  31 2c 31 2c 31 2c 22 66  6c 6f 6f 72 35 22 2c 73  |1,1,1,"floor5",s|
000034e0  61 31 25 29 0d 01 e5 46  20 20 20 e7 63 6f 75 6e  |a1%)...F   .coun|
000034f0  74 25 3e 34 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |t%>4 .plot_sprit|
00003500  65 28 6d 61 7a 65 78 25  2c 6d 61 7a 65 79 25 2b  |e(mazex%,mazey%+|
00003510  32 31 32 2c 31 2c 31 2c  31 2c 31 2c 22 66 6c 6f  |212,1,1,1,1,"flo|
00003520  6f 72 34 22 2c 73 61 31  25 29 0d 01 e6 46 20 20  |or4",sa1%)...F  |
00003530  20 e7 63 6f 75 6e 74 25  3e 33 20 f2 70 6c 6f 74  | .count%>3 .plot|
00003540  5f 73 70 72 69 74 65 28  6d 61 7a 65 78 25 2c 6d  |_sprite(mazex%,m|
00003550  61 7a 65 79 25 2b 31 38  34 2c 31 2c 31 2c 31 2c  |azey%+184,1,1,1,|
00003560  31 2c 22 66 6c 6f 6f 72  33 22 2c 73 61 31 25 29  |1,"floor3",sa1%)|
00003570  0d 01 e7 46 20 20 20 e7  63 6f 75 6e 74 25 3e 32  |...F   .count%>2|
00003580  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00003590  7a 65 78 25 2c 6d 61 7a  65 79 25 2b 31 33 32 2c  |zex%,mazey%+132,|
000035a0  31 2c 31 2c 31 2c 31 2c  22 66 6c 6f 6f 72 32 22  |1,1,1,1,"floor2"|
000035b0  2c 73 61 31 25 29 0d 01  e8 44 20 20 20 e7 63 6f  |,sa1%)...D   .co|
000035c0  75 6e 74 25 3e 31 20 f2  70 6c 6f 74 5f 73 70 72  |unt%>1 .plot_spr|
000035d0  69 74 65 28 6d 61 7a 65  78 25 2c 6d 61 7a 65 79  |ite(mazex%,mazey|
000035e0  25 2b 30 2c 31 2c 31 2c  31 2c 31 2c 22 66 6c 6f  |%+0,1,1,1,1,"flo|
000035f0  6f 72 31 22 2c 73 61 31  25 29 0d 01 e9 40 20 20  |or1",sa1%)...@  |
00003600  e3 66 25 3d 31 b8 36 3a  c8 99 22 4f 53 5f 53 70  |.f%=1.6:.."OS_Sp|
00003610  72 69 74 65 4f 70 22 2c  26 31 32 31 2c 73 70 72  |riteOp",&121,spr|
00003620  69 74 65 5f 61 72 65 61  31 25 2c 22 66 6c 6f 6f  |ite_area1%,"floo|
00003630  72 22 2b c3 28 66 25 29  3a ed 0d 01 ea 12 20 20  |r"+.(f%):.....  |
00003640  20 e7 63 6f 75 6e 74 25  3d 37 20 8c 0d 01 eb 4d  | .count%=7 ....M|
00003650  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
00003660  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00003670  7a 65 78 25 2b 32 35 32  2c 6d 61 7a 65 79 25 2b  |zex%+252,mazey%+|
00003680  32 35 36 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |256,1,1,1,1,"wal|
00003690  6c 37 22 2c 73 61 31 25  29 0d 01 ec 5c 20 20 20  |l7",sa1%)...\   |
000036a0  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
000036b0  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
000036c0  25 2b 32 35 32 2c 6d 61  7a 65 79 25 2b 32 35 36  |%+252,mazey%+256|
000036d0  2c 34 30 2c 28 34 30 2d  56 25 29 2a 28 56 25 2b  |,40,(40-V%)*(V%+|
000036e0  31 29 2c 36 35 2c 36 35  2c 22 6f 75 74 34 22 2c  |1),65,65,"out4",|
000036f0  73 61 31 25 29 0d 01 ed  5d 20 20 20 20 20 20 e7  |sa1%)...]      .|
00003700  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003710  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 32 35  |sprite(mazex%+25|
00003720  32 2c 6d 61 7a 65 79 25  2b 32 35 36 2c 34 30 2c  |2,mazey%+256,40,|
00003730  28 34 30 2d 56 25 29 2a  28 56 25 2b 31 29 2c 36  |(40-V%)*(V%+1),6|
00003740  35 2c 36 35 2c 22 64 6f  6f 72 34 22 2c 73 61 31  |5,65,"door4",sa1|
00003750  25 29 0d 01 ee 08 20 20  20 cd 0d 01 ef 12 20 20  |%)....   .....  |
00003760  20 e7 63 6f 75 6e 74 25  3d 36 20 8c 0d 01 f0 4d  | .count%=6 ....M|
00003770  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
00003780  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00003790  7a 65 78 25 2b 32 34 30  2c 6d 61 7a 65 79 25 2b  |zex%+240,mazey%+|
000037a0  32 34 34 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |244,1,1,1,1,"wal|
000037b0  6c 36 22 2c 73 61 31 25  29 0d 01 f1 5c 20 20 20  |l6",sa1%)...\   |
000037c0  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
000037d0  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
000037e0  25 2b 32 34 30 2c 6d 61  7a 65 79 25 2b 32 34 34  |%+240,mazey%+244|
000037f0  2c 34 30 2c 28 34 30 2d  56 25 29 2a 28 56 25 2b  |,40,(40-V%)*(V%+|
00003800  31 29 2c 35 36 2c 35 36  2c 22 6f 75 74 34 22 2c  |1),56,56,"out4",|
00003810  73 61 31 25 29 0d 01 f2  5d 20 20 20 20 20 20 e7  |sa1%)...]      .|
00003820  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003830  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 32 34  |sprite(mazex%+24|
00003840  30 2c 6d 61 7a 65 79 25  2b 32 34 34 2c 34 30 2c  |0,mazey%+244,40,|
00003850  28 34 30 2d 56 25 29 2a  28 56 25 2b 31 29 2c 35  |(40-V%)*(V%+1),5|
00003860  36 2c 35 36 2c 22 64 6f  6f 72 34 22 2c 73 61 31  |6,56,"door4",sa1|
00003870  25 29 0d 01 f3 08 20 20  20 cd 0d 01 f4 12 20 20  |%)....   .....  |
00003880  20 e7 63 6f 75 6e 74 25  3d 35 20 8c 0d 01 f5 4d  | .count%=5 ....M|
00003890  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
000038a0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
000038b0  7a 65 78 25 2b 32 33 30  2c 6d 61 7a 65 79 25 2b  |zex%+230,mazey%+|
000038c0  32 33 32 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |232,1,1,1,1,"wal|
000038d0  6c 35 22 2c 73 61 31 25  29 0d 01 f6 5c 20 20 20  |l5",sa1%)...\   |
000038e0  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
000038f0  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
00003900  25 2b 32 33 30 2c 6d 61  7a 65 79 25 2b 32 33 32  |%+230,mazey%+232|
00003910  2c 34 30 2c 28 34 30 2d  56 25 29 2a 28 56 25 2b  |,40,(40-V%)*(V%+|
00003920  31 29 2c 34 38 2c 34 38  2c 22 6f 75 74 34 22 2c  |1),48,48,"out4",|
00003930  73 61 31 25 29 0d 01 f7  5d 20 20 20 20 20 20 e7  |sa1%)...]      .|
00003940  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003950  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 32 33  |sprite(mazex%+23|
00003960  30 2c 6d 61 7a 65 79 25  2b 32 33 32 2c 34 30 2c  |0,mazey%+232,40,|
00003970  28 34 30 2d 56 25 29 2a  28 56 25 2b 31 29 2c 34  |(40-V%)*(V%+1),4|
00003980  38 2c 34 38 2c 22 64 6f  6f 72 34 22 2c 73 61 31  |8,48,"door4",sa1|
00003990  25 29 0d 01 f8 08 20 20  20 cd 0d 01 f9 12 20 20  |%)....   .....  |
000039a0  20 e7 63 6f 75 6e 74 25  3d 34 20 8c 0d 01 fa 4d  | .count%=4 ....M|
000039b0  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
000039c0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
000039d0  7a 65 78 25 2b 32 31 32  2c 6d 61 7a 65 79 25 2b  |zex%+212,mazey%+|
000039e0  32 30 38 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |208,1,1,1,1,"wal|
000039f0  6c 34 22 2c 73 61 31 25  29 0d 01 fb 4c 20 20 20  |l4",sa1%)...L   |
00003a00  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
00003a10  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
00003a20  25 2b 32 31 32 2c 6d 61  7a 65 79 25 2b 32 30 38  |%+212,mazey%+208|
00003a30  2c 31 2c 31 2c 31 2c 31  2c 22 6f 75 74 34 22 2c  |,1,1,1,1,"out4",|
00003a40  73 61 31 25 29 0d 01 fc  4d 20 20 20 20 20 20 e7  |sa1%)...M      .|
00003a50  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003a60  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 32 31  |sprite(mazex%+21|
00003a70  32 2c 6d 61 7a 65 79 25  2b 32 30 38 2c 31 2c 31  |2,mazey%+208,1,1|
00003a80  2c 31 2c 31 2c 22 64 6f  6f 72 34 22 2c 73 61 31  |,1,1,"door4",sa1|
00003a90  25 29 0d 01 fd 08 20 20  20 cd 0d 01 fe 12 20 20  |%)....   .....  |
00003aa0  20 e7 63 6f 75 6e 74 25  3d 33 20 8c 0d 01 ff 4d  | .count%=3 ....M|
00003ab0  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
00003ac0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00003ad0  7a 65 78 25 2b 31 38 32  2c 6d 61 7a 65 79 25 2b  |zex%+182,mazey%+|
00003ae0  31 38 30 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |180,1,1,1,1,"wal|
00003af0  6c 33 22 2c 73 61 31 25  29 0d 02 00 5c 20 20 20  |l3",sa1%)...\   |
00003b00  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
00003b10  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
00003b20  25 2b 31 38 32 2c 6d 61  7a 65 79 25 2b 31 38 34  |%+182,mazey%+184|
00003b30  2c 34 30 2c 28 34 30 2d  56 25 29 2a 28 56 25 2b  |,40,(40-V%)*(V%+|
00003b40  31 29 2c 35 35 2c 35 35  2c 22 6f 75 74 32 22 2c  |1),55,55,"out2",|
00003b50  73 61 31 25 29 0d 02 01  5d 20 20 20 20 20 20 e7  |sa1%)...]      .|
00003b60  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003b70  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 31 38  |sprite(mazex%+18|
00003b80  32 2c 6d 61 7a 65 79 25  2b 31 38 34 2c 34 30 2c  |2,mazey%+184,40,|
00003b90  28 34 30 2d 56 25 29 2a  28 56 25 2b 31 29 2c 35  |(40-V%)*(V%+1),5|
00003ba0  35 2c 35 35 2c 22 64 6f  6f 72 32 22 2c 73 61 31  |5,55,"door2",sa1|
00003bb0  25 29 0d 02 02 08 20 20  20 cd 0d 02 03 12 20 20  |%)....   .....  |
00003bc0  20 e7 63 6f 75 6e 74 25  3d 32 20 8c 0d 02 04 4d  | .count%=2 ....M|
00003bd0  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 30  |      .newend%=0|
00003be0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00003bf0  7a 65 78 25 2b 31 32 38  2c 6d 61 7a 65 79 25 2b  |zex%+128,mazey%+|
00003c00  31 32 38 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |128,1,1,1,1,"wal|
00003c10  6c 32 22 2c 73 61 31 25  29 0d 02 05 4c 20 20 20  |l2",sa1%)...L   |
00003c20  20 20 20 e7 6e 65 77 65  6e 64 25 3d 31 20 f2 70  |   .newend%=1 .p|
00003c30  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
00003c40  25 2b 31 32 38 2c 6d 61  7a 65 79 25 2b 31 32 38  |%+128,mazey%+128|
00003c50  2c 31 2c 31 2c 31 2c 31  2c 22 6f 75 74 32 22 2c  |,1,1,1,1,"out2",|
00003c60  73 61 31 25 29 0d 02 06  4d 20 20 20 20 20 20 e7  |sa1%)...M      .|
00003c70  6e 65 77 65 6e 64 25 3d  32 20 f2 70 6c 6f 74 5f  |newend%=2 .plot_|
00003c80  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2b 31 32  |sprite(mazex%+12|
00003c90  38 2c 6d 61 7a 65 79 25  2b 31 32 38 2c 31 2c 31  |8,mazey%+128,1,1|
00003ca0  2c 31 2c 31 2c 22 64 6f  6f 72 32 22 2c 73 61 31  |,1,1,"door2",sa1|
00003cb0  25 29 0d 02 07 08 20 20  20 cd 0d 02 08 12 20 20  |%)....   .....  |
00003cc0  20 e7 63 6f 75 6e 74 25  3e 36 20 8c 0d 02 09 45  | .count%>6 ....E|
00003cd0  20 20 20 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |      .plot_spri|
00003ce0  74 65 28 6d 61 7a 65 78  25 2c 6d 61 7a 65 79 25  |te(mazex%,mazey%|
00003cf0  2b 28 36 34 30 2d 32 35  36 29 2c 31 2c 31 2c 31  |+(640-256),1,1,1|
00003d00  2c 31 2c 22 66 6c 6f 6f  72 36 22 2c 73 61 31 25  |,1,"floor6",sa1%|
00003d10  29 0d 02 0a 4e 20 20 20  20 20 20 e7 63 6f 75 6e  |)...N      .coun|
00003d20  74 25 3d 37 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |t%=7 .plot_sprit|
00003d30  65 28 6d 61 7a 65 78 25  2c 6d 61 7a 65 79 25 2b  |e(mazex%,mazey%+|
00003d40  28 36 34 30 2d 32 35 36  29 2c 31 2c 31 2c 31 2c  |(640-256),1,1,1,|
00003d50  31 2c 22 72 6f 6f 66 31  22 2c 73 61 31 25 29 0d  |1,"roof1",sa1%).|
00003d60  02 0b 19 20 20 20 20 20  20 e7 63 6f 72 72 25 28  |...      .corr%(|
00003d70  36 2c 31 29 3d 31 20 8c  0d 02 0c 4c 20 20 20 20  |6,1)=1 ....L    |
00003d80  20 20 20 20 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |     .plot_sprit|
00003d90  65 5f 6d 61 73 6b 65 64  28 6d 61 7a 65 78 25 2b  |e_masked(mazex%+|
00003da0  32 34 32 2c 6d 61 7a 65  79 25 2b 32 34 30 2c 31  |242,mazey%+240,1|
00003db0  2c 31 2c 31 2c 31 2c 22  73 69 64 65 36 22 2c 73  |,1,1,1,"side6",s|
00003dc0  61 31 25 29 0d 02 0d 0b  20 20 20 20 20 20 cc 0d  |a1%)....      ..|
00003dd0  02 0e 49 20 20 20 20 20  20 20 20 20 f2 70 6c 6f  |..I         .plo|
00003de0  74 5f 73 70 72 69 74 65  28 6d 61 7a 65 78 25 2b  |t_sprite(mazex%+|
00003df0  32 35 32 2d 31 33 36 2c  6d 61 7a 65 79 25 2b 32  |252-136,mazey%+2|
00003e00  35 36 2c 31 2c 31 2c 31  2c 31 2c 22 77 61 6c 6c  |56,1,1,1,1,"wall|
00003e10  37 22 2c 73 61 31 25 29  0d 02 0f 0b 20 20 20 20  |7",sa1%)....    |
00003e20  20 20 cd 0d 02 10 19 20  20 20 20 20 20 e7 63 6f  |  .....      .co|
00003e30  72 72 25 28 36 2c 33 29  3d 31 20 8c 0d 02 11 37  |rr%(6,3)=1 ....7|
00003e40  20 20 20 20 20 20 20 20  20 c8 99 22 4f 53 5f 53  |         .."OS_S|
00003e50  70 72 69 74 65 4f 70 22  2c 26 31 32 46 2c 73 70  |priteOp",&12F,sp|
00003e60  72 69 74 65 5f 61 72 65  61 31 25 2c 22 73 69 64  |rite_area1%,"sid|
00003e70  65 36 22 0d 02 12 4c 20  20 20 20 20 20 20 20 20  |e6"...L         |
00003e80  f2 70 6c 6f 74 5f 73 70  72 69 74 65 5f 6d 61 73  |.plot_sprite_mas|
00003e90  6b 65 64 28 6d 61 7a 65  78 25 2b 33 38 36 2c 6d  |ked(mazex%+386,m|
00003ea0  61 7a 65 79 25 2b 32 34  30 2c 31 2c 31 2c 31 2c  |azey%+240,1,1,1,|
00003eb0  31 2c 22 73 69 64 65 36  22 2c 73 61 31 25 29 0d  |1,"side6",sa1%).|
00003ec0  02 13 37 20 20 20 20 20  20 20 20 20 c8 99 22 4f  |..7         .."O|
00003ed0  53 5f 53 70 72 69 74 65  4f 70 22 2c 26 31 32 46  |S_SpriteOp",&12F|
00003ee0  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 2c 22  |,sprite_area1%,"|
00003ef0  73 69 64 65 36 22 0d 02  14 0b 20 20 20 20 20 20  |side6"....      |
00003f00  cc 0d 02 15 49 20 20 20  20 20 20 20 20 20 f2 70  |....I         .p|
00003f10  6c 6f 74 5f 73 70 72 69  74 65 28 6d 61 7a 65 78  |lot_sprite(mazex|
00003f20  25 2b 32 35 32 2b 31 33  36 2c 6d 61 7a 65 79 25  |%+252+136,mazey%|
00003f30  2b 32 35 36 2c 31 2c 31  2c 31 2c 31 2c 22 77 61  |+256,1,1,1,1,"wa|
00003f40  6c 6c 37 22 2c 73 61 31  25 29 0d 02 16 0b 20 20  |ll7",sa1%)....  |
00003f50  20 20 20 20 cd 0d 02 17  08 20 20 20 cd 0d 02 18  |    .....   ....|
00003f60  04 0d 02 19 12 20 20 20  e7 63 6f 75 6e 74 25 3e  |.....   .count%>|
00003f70  35 20 8c 0d 02 1a 45 20  20 20 20 20 20 f2 70 6c  |5 ....E      .pl|
00003f80  6f 74 5f 73 70 72 69 74  65 28 6d 61 7a 65 78 25  |ot_sprite(mazex%|
00003f90  2c 6d 61 7a 65 79 25 2b  28 36 34 30 2d 32 34 34  |,mazey%+(640-244|
00003fa0  29 2c 31 2c 31 2c 31 2c  31 2c 22 66 6c 6f 6f 72  |),1,1,1,1,"floor|
00003fb0  35 22 2c 73 61 31 25 29  0d 02 1b 4e 20 20 20 20  |5",sa1%)...N    |
00003fc0  20 20 e7 63 6f 75 6e 74  25 3d 36 20 f2 70 6c 6f  |  .count%=6 .plo|
00003fd0  74 5f 73 70 72 69 74 65  28 6d 61 7a 65 78 25 2c  |t_sprite(mazex%,|
00003fe0  6d 61 7a 65 79 25 2b 28  36 34 30 2d 32 34 34 29  |mazey%+(640-244)|
00003ff0  2c 31 2c 31 2c 31 2c 31  2c 22 72 6f 6f 66 31 22  |,1,1,1,1,"roof1"|
00004000  2c 73 61 31 25 29 0d 02  1c 19 20 20 20 20 20 20  |,sa1%)....      |
00004010  e7 63 6f 72 72 25 28 35  2c 31 29 3d 31 20 8c 0d  |.corr%(5,1)=1 ..|
00004020  02 1d 4c 20 20 20 20 20  20 20 20 20 f2 70 6c 6f  |..L         .plo|
00004030  74 5f 73 70 72 69 74 65  5f 6d 61 73 6b 65 64 28  |t_sprite_masked(|
00004040  6d 61 7a 65 78 25 2b 32  32 38 2c 6d 61 7a 65 79  |mazex%+228,mazey|
00004050  25 2b 32 32 38 2c 31 2c  31 2c 31 2c 31 2c 22 73  |%+228,1,1,1,1,"s|
00004060  69 64 65 35 22 2c 73 61  31 25 29 0d 02 1e 51 20  |ide5",sa1%)...Q |
00004070  20 20 20 20 20 20 20 20  f4 20 50 52 4f 43 70 6c  |        . PROCpl|
00004080  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00004090  28 6d 61 7a 65 78 25 2b  32 32 38 2c 6d 61 7a 65  |(mazex%+228,maze|
000040a0  79 25 2b 32 32 38 2c 31  2c 31 2c 31 2c 31 2c 22  |y%+228,1,1,1,1,"|
000040b0  72 6f 6f 66 31 22 2c 73  61 31 25 29 0d 02 1f 0b  |roof1",sa1%)....|
000040c0  20 20 20 20 20 20 cc 0d  02 20 49 20 20 20 20 20  |      ... I     |
000040d0  20 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |    .plot_sprite|
000040e0  28 6d 61 7a 65 78 25 2b  32 34 30 2d 31 35 36 2c  |(mazex%+240-156,|
000040f0  6d 61 7a 65 79 25 2b 32  34 34 2c 31 2c 31 2c 31  |mazey%+244,1,1,1|
00004100  2c 31 2c 22 77 61 6c 6c  36 22 2c 73 61 31 25 29  |,1,"wall6",sa1%)|
00004110  0d 02 21 0b 20 20 20 20  20 20 cd 0d 02 22 19 20  |..!.      ...". |
00004120  20 20 20 20 20 e7 63 6f  72 72 25 28 35 2c 33 29  |     .corr%(5,3)|
00004130  3d 31 20 8c 0d 02 23 37  20 20 20 20 20 20 20 20  |=1 ...#7        |
00004140  20 c8 99 22 4f 53 5f 53  70 72 69 74 65 4f 70 22  | .."OS_SpriteOp"|
00004150  2c 26 31 32 46 2c 73 70  72 69 74 65 5f 61 72 65  |,&12F,sprite_are|
00004160  61 31 25 2c 22 73 69 64  65 35 22 0d 02 24 4c 20  |a1%,"side5"..$L |
00004170  20 20 20 20 20 20 20 20  f2 70 6c 6f 74 5f 73 70  |        .plot_sp|
00004180  72 69 74 65 5f 6d 61 73  6b 65 64 28 6d 61 7a 65  |rite_masked(maze|
00004190  78 25 2b 33 39 36 2c 6d  61 7a 65 79 25 2b 32 32  |x%+396,mazey%+22|
000041a0  38 2c 31 2c 31 2c 31 2c  31 2c 22 73 69 64 65 35  |8,1,1,1,1,"side5|
000041b0  22 2c 73 61 31 25 29 0d  02 25 37 20 20 20 20 20  |",sa1%)..%7     |
000041c0  20 20 20 20 c8 99 22 4f  53 5f 53 70 72 69 74 65  |    .."OS_Sprite|
000041d0  4f 70 22 2c 26 31 32 46  2c 73 70 72 69 74 65 5f  |Op",&12F,sprite_|
000041e0  61 72 65 61 31 25 2c 22  73 69 64 65 35 22 0d 02  |area1%,"side5"..|
000041f0  26 0b 20 20 20 20 20 20  cc 0d 02 27 49 20 20 20  |&.      ...'I   |
00004200  20 20 20 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |      .plot_spri|
00004210  74 65 28 6d 61 7a 65 78  25 2b 32 34 30 2b 31 35  |te(mazex%+240+15|
00004220  36 2c 6d 61 7a 65 79 25  2b 32 34 34 2c 31 2c 31  |6,mazey%+244,1,1|
00004230  2c 31 2c 31 2c 22 77 61  6c 6c 36 22 2c 73 61 31  |,1,1,"wall6",sa1|
00004240  25 29 0d 02 28 0b 20 20  20 20 20 20 cd 0d 02 29  |%)..(.      ...)|
00004250  08 20 20 20 cd 0d 02 2a  04 0d 02 2b 12 20 20 20  |.   ...*...+.   |
00004260  e7 63 6f 75 6e 74 25 3e  34 20 8c 0d 02 2c 45 20  |.count%>4 ...,E |
00004270  20 20 20 20 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |     .plot_sprit|
00004280  65 28 6d 61 7a 65 78 25  2c 6d 61 7a 65 79 25 2b  |e(mazex%,mazey%+|
00004290  28 36 34 30 2d 32 33 32  29 2c 31 2c 31 2c 31 2c  |(640-232),1,1,1,|
000042a0  31 2c 22 66 6c 6f 6f 72  34 22 2c 73 61 31 25 29  |1,"floor4",sa1%)|
000042b0  0d 02 2d 4e 20 20 20 20  20 20 e7 63 6f 75 6e 74  |..-N      .count|
000042c0  25 3d 35 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |%=5 .plot_sprite|
000042d0  28 6d 61 7a 65 78 25 2c  6d 61 7a 65 79 25 2b 28  |(mazex%,mazey%+(|
000042e0  36 34 30 2d 32 33 32 29  2c 31 2c 31 2c 31 2c 31  |640-232),1,1,1,1|
000042f0  2c 22 72 6f 6f 66 31 22  2c 73 61 31 25 29 0d 02  |,"roof1",sa1%)..|
00004300  2e 19 20 20 20 20 20 20  e7 63 6f 72 72 25 28 34  |..      .corr%(4|
00004310  2c 31 29 3d 31 20 8c 0d  02 2f 4c 20 20 20 20 20  |,1)=1 .../L     |
00004320  20 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |    .plot_sprite|
00004330  5f 6d 61 73 6b 65 64 28  6d 61 7a 65 78 25 2b 32  |_masked(mazex%+2|
00004340  31 32 2c 6d 61 7a 65 79  25 2b 32 30 38 2c 31 2c  |12,mazey%+208,1,|
00004350  31 2c 31 2c 31 2c 22 73  69 64 65 34 22 2c 73 61  |1,1,1,"side4",sa|
00004360  31 25 29 0d 02 30 0b 20  20 20 20 20 20 cc 0d 02  |1%)..0.      ...|
00004370  31 49 20 20 20 20 20 20  20 20 20 f2 70 6c 6f 74  |1I         .plot|
00004380  5f 73 70 72 69 74 65 28  6d 61 7a 65 78 25 2b 32  |_sprite(mazex%+2|
00004390  33 30 2d 31 38 30 2c 6d  61 7a 65 79 25 2b 32 33  |30-180,mazey%+23|
000043a0  32 2c 31 2c 31 2c 31 2c  31 2c 22 77 61 6c 6c 35  |2,1,1,1,1,"wall5|
000043b0  22 2c 73 61 31 25 29 0d  02 32 0b 20 20 20 20 20  |",sa1%)..2.     |
000043c0  20 cd 0d 02 33 19 20 20  20 20 20 20 e7 63 6f 72  | ...3.      .cor|
000043d0  72 25 28 34 2c 33 29 3d  31 20 8c 0d 02 34 37 20  |r%(4,3)=1 ...47 |
000043e0  20 20 20 20 20 20 20 20  c8 99 22 4f 53 5f 53 70  |        .."OS_Sp|
000043f0  72 69 74 65 4f 70 22 2c  26 31 32 46 2c 73 70 72  |riteOp",&12F,spr|
00004400  69 74 65 5f 61 72 65 61  31 25 2c 22 73 69 64 65  |ite_area1%,"side|
00004410  34 22 0d 02 35 4c 20 20  20 20 20 20 20 20 20 f2  |4"..5L         .|
00004420  70 6c 6f 74 5f 73 70 72  69 74 65 5f 6d 61 73 6b  |plot_sprite_mask|
00004430  65 64 28 6d 61 7a 65 78  25 2b 34 31 30 2c 6d 61  |ed(mazex%+410,ma|
00004440  7a 65 79 25 2b 32 30 38  2c 31 2c 31 2c 31 2c 31  |zey%+208,1,1,1,1|
00004450  2c 22 73 69 64 65 34 22  2c 73 61 31 25 29 0d 02  |,"side4",sa1%)..|
00004460  36 37 20 20 20 20 20 20  20 20 20 c8 99 22 4f 53  |67         .."OS|
00004470  5f 53 70 72 69 74 65 4f  70 22 2c 26 31 32 46 2c  |_SpriteOp",&12F,|
00004480  73 70 72 69 74 65 5f 61  72 65 61 31 25 2c 22 73  |sprite_area1%,"s|
00004490  69 64 65 34 22 0d 02 37  0b 20 20 20 20 20 20 cc  |ide4"..7.      .|
000044a0  0d 02 38 49 20 20 20 20  20 20 20 20 20 f2 70 6c  |..8I         .pl|
000044b0  6f 74 5f 73 70 72 69 74  65 28 6d 61 7a 65 78 25  |ot_sprite(mazex%|
000044c0  2b 32 33 30 2b 31 38 30  2c 6d 61 7a 65 79 25 2b  |+230+180,mazey%+|
000044d0  32 33 32 2c 31 2c 31 2c  31 2c 31 2c 22 77 61 6c  |232,1,1,1,1,"wal|
000044e0  6c 35 22 2c 73 61 31 25  29 0d 02 39 0b 20 20 20  |l5",sa1%)..9.   |
000044f0  20 20 20 cd 0d 02 3a 08  20 20 20 cd 0d 02 3b 04  |   ...:.   ...;.|
00004500  0d 02 3c 12 20 20 20 e7  63 6f 75 6e 74 25 3e 33  |..<.   .count%>3|
00004510  20 8c 0d 02 3d 45 20 20  20 20 20 20 f2 70 6c 6f  | ...=E      .plo|
00004520  74 5f 73 70 72 69 74 65  28 6d 61 7a 65 78 25 2c  |t_sprite(mazex%,|
00004530  6d 61 7a 65 79 25 2b 28  36 34 30 2d 32 31 32 29  |mazey%+(640-212)|
00004540  2c 31 2c 31 2c 31 2c 31  2c 22 66 6c 6f 6f 72 33  |,1,1,1,1,"floor3|
00004550  22 2c 73 61 31 25 29 0d  02 3e 4e 20 20 20 20 20  |",sa1%)..>N     |
00004560  20 e7 63 6f 75 6e 74 25  3d 34 20 f2 70 6c 6f 74  | .count%=4 .plot|
00004570  5f 73 70 72 69 74 65 28  6d 61 7a 65 78 25 2c 6d  |_sprite(mazex%,m|
00004580  61 7a 65 79 25 2b 28 36  34 30 2d 32 31 32 29 2c  |azey%+(640-212),|
00004590  31 2c 31 2c 31 2c 31 2c  22 72 6f 6f 66 31 22 2c  |1,1,1,1,"roof1",|
000045a0  73 61 31 25 29 0d 02 3f  19 20 20 20 20 20 20 e7  |sa1%)..?.      .|
000045b0  63 6f 72 72 25 28 33 2c  31 29 3d 31 20 8c 0d 02  |corr%(3,1)=1 ...|
000045c0  40 4c 20 20 20 20 20 20  20 20 20 f2 70 6c 6f 74  |@L         .plot|
000045d0  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 6d  |_sprite_masked(m|
000045e0  61 7a 65 78 25 2b 31 38  32 2c 6d 61 7a 65 79 25  |azex%+182,mazey%|
000045f0  2b 31 38 30 2c 31 2c 31  2c 31 2c 31 2c 22 73 69  |+180,1,1,1,1,"si|
00004600  64 65 33 22 2c 73 61 31  25 29 0d 02 41 0b 20 20  |de3",sa1%)..A.  |
00004610  20 20 20 20 cc 0d 02 42  49 20 20 20 20 20 20 20  |    ...BI       |
00004620  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 28 6d  |  .plot_sprite(m|
00004630  61 7a 65 78 25 2b 32 31  32 2d 32 31 36 2c 6d 61  |azex%+212-216,ma|
00004640  7a 65 79 25 2b 32 30 38  2c 31 2c 31 2c 31 2c 31  |zey%+208,1,1,1,1|
00004650  2c 22 77 61 6c 6c 34 22  2c 73 61 31 25 29 0d 02  |,"wall4",sa1%)..|
00004660  43 0b 20 20 20 20 20 20  cd 0d 02 44 19 20 20 20  |C.      ...D.   |
00004670  20 20 20 e7 63 6f 72 72  25 28 33 2c 33 29 3d 31  |   .corr%(3,3)=1|
00004680  20 8c 0d 02 45 37 20 20  20 20 20 20 20 20 20 c8  | ...E7         .|
00004690  99 22 4f 53 5f 53 70 72  69 74 65 4f 70 22 2c 26  |."OS_SpriteOp",&|
000046a0  31 32 46 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |12F,sprite_area1|
000046b0  25 2c 22 73 69 64 65 33  22 0d 02 46 4c 20 20 20  |%,"side3"..FL   |
000046c0  20 20 20 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |      .plot_spri|
000046d0  74 65 5f 6d 61 73 6b 65  64 28 6d 61 7a 65 78 25  |te_masked(mazex%|
000046e0  2b 34 32 38 2c 6d 61 7a  65 79 25 2b 31 38 30 2c  |+428,mazey%+180,|
000046f0  31 2c 31 2c 31 2c 31 2c  22 73 69 64 65 33 22 2c  |1,1,1,1,"side3",|
00004700  73 61 31 25 29 0d 02 47  37 20 20 20 20 20 20 20  |sa1%)..G7       |
00004710  20 20 c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |  .."OS_SpriteOp|
00004720  22 2c 26 31 32 46 2c 73  70 72 69 74 65 5f 61 72  |",&12F,sprite_ar|
00004730  65 61 31 25 2c 22 73 69  64 65 33 22 0d 02 48 0b  |ea1%,"side3"..H.|
00004740  20 20 20 20 20 20 cc 0d  02 49 49 20 20 20 20 20  |      ...II     |
00004750  20 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |    .plot_sprite|
00004760  28 6d 61 7a 65 78 25 2b  32 31 32 2b 32 31 36 2c  |(mazex%+212+216,|
00004770  6d 61 7a 65 79 25 2b 32  30 38 2c 31 2c 31 2c 31  |mazey%+208,1,1,1|
00004780  2c 31 2c 22 77 61 6c 6c  34 22 2c 73 61 31 25 29  |,1,"wall4",sa1%)|
00004790  0d 02 4a 0b 20 20 20 20  20 20 cd 0d 02 4b 08 20  |..J.      ...K. |
000047a0  20 20 cd 0d 02 4c 04 0d  02 4d 12 20 20 20 e7 63  |  ...L...M.   .c|
000047b0  6f 75 6e 74 25 3e 32 20  8c 0d 02 4e 45 20 20 20  |ount%>2 ...NE   |
000047c0  20 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 28  |   .plot_sprite(|
000047d0  6d 61 7a 65 78 25 2c 6d  61 7a 65 79 25 2b 28 36  |mazex%,mazey%+(6|
000047e0  34 30 2d 31 38 34 29 2c  31 2c 31 2c 31 2c 31 2c  |40-184),1,1,1,1,|
000047f0  22 66 6c 6f 6f 72 32 22  2c 73 61 31 25 29 0d 02  |"floor2",sa1%)..|
00004800  4f 4e 20 20 20 20 20 20  e7 63 6f 75 6e 74 25 3d  |ON      .count%=|
00004810  33 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 28 6d  |3 .plot_sprite(m|
00004820  61 7a 65 78 25 2c 6d 61  7a 65 79 25 2b 28 36 34  |azex%,mazey%+(64|
00004830  30 2d 31 38 34 29 2c 31  2c 31 2c 31 2c 31 2c 22  |0-184),1,1,1,1,"|
00004840  72 6f 6f 66 31 22 2c 73  61 31 25 29 0d 02 50 19  |roof1",sa1%)..P.|
00004850  20 20 20 20 20 20 e7 63  6f 72 72 25 28 32 2c 31  |      .corr%(2,1|
00004860  29 3d 31 20 8c 0d 02 51  4c 20 20 20 20 20 20 20  |)=1 ...QL       |
00004870  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |  .plot_sprite_m|
00004880  61 73 6b 65 64 28 6d 61  7a 65 78 25 2b 31 33 30  |asked(mazex%+130|
00004890  2c 6d 61 7a 65 79 25 2b  31 32 38 2c 31 2c 31 2c  |,mazey%+128,1,1,|
000048a0  31 2c 31 2c 22 73 69 64  65 32 22 2c 73 61 31 25  |1,1,"side2",sa1%|
000048b0  29 0d 02 52 0b 20 20 20  20 20 20 cc 0d 02 53 49  |)..R.      ...SI|
000048c0  20 20 20 20 20 20 20 20  20 f2 70 6c 6f 74 5f 73  |         .plot_s|
000048d0  70 72 69 74 65 28 6d 61  7a 65 78 25 2b 31 38 32  |prite(mazex%+182|
000048e0  2d 32 37 38 2c 6d 61 7a  65 79 25 2b 31 38 30 2c  |-278,mazey%+180,|
000048f0  31 2c 31 2c 31 2c 31 2c  22 77 61 6c 6c 33 22 2c  |1,1,1,1,"wall3",|
00004900  73 61 31 25 29 0d 02 54  0b 20 20 20 20 20 20 cd  |sa1%)..T.      .|
00004910  0d 02 55 19 20 20 20 20  20 20 e7 63 6f 72 72 25  |..U.      .corr%|
00004920  28 32 2c 33 29 3d 31 20  8c 0d 02 56 37 20 20 20  |(2,3)=1 ...V7   |
00004930  20 20 20 20 20 20 c8 99  22 4f 53 5f 53 70 72 69  |      .."OS_Spri|
00004940  74 65 4f 70 22 2c 26 31  32 46 2c 73 70 72 69 74  |teOp",&12F,sprit|
00004950  65 5f 61 72 65 61 31 25  2c 22 73 69 64 65 32 22  |e_area1%,"side2"|
00004960  0d 02 57 4c 20 20 20 20  20 20 20 20 20 f2 70 6c  |..WL         .pl|
00004970  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00004980  28 6d 61 7a 65 78 25 2b  34 35 38 2c 6d 61 7a 65  |(mazex%+458,maze|
00004990  79 25 2b 31 32 38 2c 31  2c 31 2c 31 2c 31 2c 22  |y%+128,1,1,1,1,"|
000049a0  73 69 64 65 32 22 2c 73  61 31 25 29 0d 02 58 37  |side2",sa1%)..X7|
000049b0  20 20 20 20 20 20 20 20  20 c8 99 22 4f 53 5f 53  |         .."OS_S|
000049c0  70 72 69 74 65 4f 70 22  2c 26 31 32 46 2c 73 70  |priteOp",&12F,sp|
000049d0  72 69 74 65 5f 61 72 65  61 31 25 2c 22 73 69 64  |rite_area1%,"sid|
000049e0  65 32 22 0d 02 59 0b 20  20 20 20 20 20 cc 0d 02  |e2"..Y.      ...|
000049f0  5a 49 20 20 20 20 20 20  20 20 20 f2 70 6c 6f 74  |ZI         .plot|
00004a00  5f 73 70 72 69 74 65 28  6d 61 7a 65 78 25 2b 31  |_sprite(mazex%+1|
00004a10  38 32 2b 32 37 38 2c 6d  61 7a 65 79 25 2b 31 38  |82+278,mazey%+18|
00004a20  30 2c 31 2c 31 2c 31 2c  31 2c 22 77 61 6c 6c 33  |0,1,1,1,1,"wall3|
00004a30  22 2c 73 61 31 25 29 0d  02 5b 0b 20 20 20 20 20  |",sa1%)..[.     |
00004a40  20 cd 0d 02 5c 08 20 20  20 cd 0d 02 5d 04 0d 02  | ...\.   ...]...|
00004a50  5e 12 20 20 20 e7 63 6f  75 6e 74 25 3e 31 20 8c  |^.   .count%>1 .|
00004a60  0d 02 5f 45 20 20 20 20  20 20 f2 70 6c 6f 74 5f  |.._E      .plot_|
00004a70  73 70 72 69 74 65 28 6d  61 7a 65 78 25 2c 6d 61  |sprite(mazex%,ma|
00004a80  7a 65 79 25 2b 28 36 34  30 2d 31 33 32 29 2c 31  |zey%+(640-132),1|
00004a90  2c 31 2c 31 2c 31 2c 22  66 6c 6f 6f 72 31 22 2c  |,1,1,1,"floor1",|
00004aa0  73 61 31 25 29 0d 02 60  4e 20 20 20 20 20 20 e7  |sa1%)..`N      .|
00004ab0  63 6f 75 6e 74 25 3d 32  20 f2 70 6c 6f 74 5f 73  |count%=2 .plot_s|
00004ac0  70 72 69 74 65 28 6d 61  7a 65 78 25 2c 6d 61 7a  |prite(mazex%,maz|
00004ad0  65 79 25 2b 28 36 34 30  2d 31 33 32 29 2c 31 2c  |ey%+(640-132),1,|
00004ae0  31 2c 31 2c 31 2c 22 72  6f 6f 66 31 22 2c 73 61  |1,1,1,"roof1",sa|
00004af0  31 25 29 0d 02 61 19 20  20 20 20 20 20 e7 63 6f  |1%)..a.      .co|
00004b00  72 72 25 28 31 2c 31 29  3d 31 20 8c 0d 02 62 48  |rr%(1,1)=1 ...bH|
00004b10  20 20 20 20 20 20 20 20  20 f2 70 6c 6f 74 5f 73  |         .plot_s|
00004b20  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 6d 61 7a  |prite_masked(maz|
00004b30  65 78 25 2b 30 2c 6d 61  7a 65 79 25 2b 30 2c 31  |ex%+0,mazey%+0,1|
00004b40  2c 31 2c 31 2c 31 2c 22  73 69 64 65 31 22 2c 73  |,1,1,1,"side1",s|
00004b50  61 31 25 29 0d 02 63 0b  20 20 20 20 20 20 cc 0d  |a1%)..c.      ..|
00004b60  02 64 49 20 20 20 20 20  20 20 20 20 f2 70 6c 6f  |.dI         .plo|
00004b70  74 5f 73 70 72 69 74 65  28 6d 61 7a 65 78 25 2b  |t_sprite(mazex%+|
00004b80  31 32 38 2d 33 38 34 2c  6d 61 7a 65 79 25 2b 31  |128-384,mazey%+1|
00004b90  32 38 2c 31 2c 31 2c 31  2c 31 2c 22 77 61 6c 6c  |28,1,1,1,1,"wall|
00004ba0  32 22 2c 73 61 31 25 29  0d 02 65 0b 20 20 20 20  |2",sa1%)..e.    |
00004bb0  20 20 cd 0d 02 66 19 20  20 20 20 20 20 e7 63 6f  |  ...f.      .co|
00004bc0  72 72 25 28 31 2c 33 29  3d 31 20 8c 0d 02 67 37  |rr%(1,3)=1 ...g7|
00004bd0  20 20 20 20 20 20 20 20  20 c8 99 22 4f 53 5f 53  |         .."OS_S|
00004be0  70 72 69 74 65 4f 70 22  2c 26 31 32 46 2c 73 70  |priteOp",&12F,sp|
00004bf0  72 69 74 65 5f 61 72 65  61 31 25 2c 22 73 69 64  |rite_area1%,"sid|
00004c00  65 31 22 0d 02 68 4a 20  20 20 20 20 20 20 20 20  |e1"..hJ         |
00004c10  f2 70 6c 6f 74 5f 73 70  72 69 74 65 5f 6d 61 73  |.plot_sprite_mas|
00004c20  6b 65 64 28 6d 61 7a 65  78 25 2b 35 31 30 2c 6d  |ked(mazex%+510,m|
00004c30  61 7a 65 79 25 2b 30 2c  31 2c 31 2c 31 2c 31 2c  |azey%+0,1,1,1,1,|
00004c40  22 73 69 64 65 31 22 2c  73 61 31 25 29 0d 02 69  |"side1",sa1%)..i|
00004c50  37 20 20 20 20 20 20 20  20 20 c8 99 22 4f 53 5f  |7         .."OS_|
00004c60  53 70 72 69 74 65 4f 70  22 2c 26 31 32 46 2c 73  |SpriteOp",&12F,s|
00004c70  70 72 69 74 65 5f 61 72  65 61 31 25 2c 22 73 69  |prite_area1%,"si|
00004c80  64 65 31 22 0d 02 6a 0b  20 20 20 20 20 20 cc 0d  |de1"..j.      ..|
00004c90  02 6b 49 20 20 20 20 20  20 20 20 20 f2 70 6c 6f  |.kI         .plo|
00004ca0  74 5f 73 70 72 69 74 65  28 6d 61 7a 65 78 25 2b  |t_sprite(mazex%+|
00004cb0  31 32 38 2b 33 38 34 2c  6d 61 7a 65 79 25 2b 31  |128+384,mazey%+1|
00004cc0  32 38 2c 31 2c 31 2c 31  2c 31 2c 22 77 61 6c 6c  |28,1,1,1,1,"wall|
00004cd0  32 22 2c 73 61 31 25 29  0d 02 6c 0b 20 20 20 20  |2",sa1%)..l.    |
00004ce0  20 20 cd 0d 02 6d 08 20  20 20 cd 0d 02 6e 04 0d  |  ...m.   ...n..|
00004cf0  02 6f 12 20 20 20 e7 63  6f 75 6e 74 25 3d 31 20  |.o.   .count%=1 |
00004d00  8c 0d 02 70 4e 20 20 20  20 20 20 e7 6e 65 77 65  |...pN      .newe|
00004d10  6e 64 25 3d 30 20 f2 70  6c 6f 74 5f 73 70 72 69  |nd%=0 .plot_spri|
00004d20  74 65 28 6d 61 7a 65 78  25 2d 36 34 2c 6d 61 7a  |te(mazex%-64,maz|
00004d30  65 79 25 2d 36 34 2c 32  2c 32 2b 56 25 2c 31 2c  |ey%-64,2,2+V%,1,|
00004d40  31 2c 22 77 61 6c 6c 32  22 2c 73 61 31 25 29 0d  |1,"wall2",sa1%).|
00004d50  02 71 4d 20 20 20 20 20  20 e7 6e 65 77 65 6e 64  |.qM      .newend|
00004d60  25 3d 31 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |%=1 .plot_sprite|
00004d70  28 6d 61 7a 65 78 25 2d  36 34 2c 6d 61 7a 65 79  |(mazex%-64,mazey|
00004d80  25 2d 36 34 2c 32 2c 32  2b 56 25 2c 31 2c 31 2c  |%-64,2,2+V%,1,1,|
00004d90  22 6f 75 74 32 22 2c 73  61 31 25 29 0d 02 72 4e  |"out2",sa1%)..rN|
00004da0  20 20 20 20 20 20 e7 6e  65 77 65 6e 64 25 3d 32  |      .newend%=2|
00004db0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 6d 61  | .plot_sprite(ma|
00004dc0  7a 65 78 25 2d 36 34 2c  6d 61 7a 65 79 25 2d 36  |zex%-64,mazey%-6|
00004dd0  34 2c 32 2c 32 2b 56 25  2c 31 2c 31 2c 22 64 6f  |4,2,2+V%,1,1,"do|
00004de0  6f 72 32 22 2c 73 61 31  25 29 0d 02 73 08 20 20  |or2",sa1%)..s.  |
00004df0  20 cd 0d 02 74 04 0d 02  75 12 20 20 20 e7 63 6f  | ...t...u.   .co|
00004e00  75 6e 74 25 3d 31 20 8c  0d 02 76 4e 20 20 20 20  |unt%=1 ...vN    |
00004e10  20 20 e7 6e 65 77 65 6e  64 25 3d 30 20 f2 70 6c  |  .newend%=0 .pl|
00004e20  6f 74 5f 73 70 72 69 74  65 28 6d 61 7a 65 78 25  |ot_sprite(mazex%|
00004e30  2d 36 34 2c 6d 61 7a 65  79 25 2d 36 34 2c 32 2c  |-64,mazey%-64,2,|
00004e40  32 2b 56 25 2c 31 2c 31  2c 22 77 61 6c 6c 32 22  |2+V%,1,1,"wall2"|
00004e50  2c 73 61 31 25 29 0d 02  77 4d 20 20 20 20 20 20  |,sa1%)..wM      |
00004e60  e7 6e 65 77 65 6e 64 25  3d 31 20 f2 70 6c 6f 74  |.newend%=1 .plot|
00004e70  5f 73 70 72 69 74 65 28  6d 61 7a 65 78 25 2d 36  |_sprite(mazex%-6|
00004e80  34 2c 6d 61 7a 65 79 25  2d 36 34 2c 32 2c 32 2b  |4,mazey%-64,2,2+|
00004e90  56 25 2c 31 2c 31 2c 22  6f 75 74 32 22 2c 73 61  |V%,1,1,"out2",sa|
00004ea0  31 25 29 0d 02 78 4e 20  20 20 20 20 20 e7 6e 65  |1%)..xN      .ne|
00004eb0  77 65 6e 64 25 3d 32 20  f2 70 6c 6f 74 5f 73 70  |wend%=2 .plot_sp|
00004ec0  72 69 74 65 28 6d 61 7a  65 78 25 2d 36 34 2c 6d  |rite(mazex%-64,m|
00004ed0  61 7a 65 79 25 2d 36 34  2c 32 2c 32 2b 56 25 2c  |azey%-64,2,2+V%,|
00004ee0  31 2c 31 2c 22 64 6f 6f  72 32 22 2c 73 61 31 25  |1,1,"door2",sa1%|
00004ef0  29 0d 02 79 08 20 20 20  cd 0d 02 7a 04 0d 02 7b  |)..y.   ...z...{|
00004f00  12 20 20 20 e7 63 6f 75  6e 74 25 3e 31 20 8c 0d  |.   .count%>1 ..|
00004f10  02 7c 48 20 20 20 20 20  e7 6d 61 7a 65 25 28 70  |.|H     .maze%(p|
00004f20  78 25 2b 6c 6f 6f 6b 5f  74 77 6f 78 25 2b 6c 6f  |x%+look_twox%+lo|
00004f30  6f 6b 5f 74 77 6f 78 25  2c 70 79 25 2b 6c 6f 6f  |ok_twox%,py%+loo|
00004f40  6b 5f 74 77 6f 79 25 2b  6c 6f 6f 6b 5f 74 77 6f  |k_twoy%+look_two|
00004f50  79 25 29 3d 32 20 8c 0d  02 7d 49 20 20 20 20 20  |y%)=2 ...}I     |
00004f60  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |  .plot_sprite_m|
00004f70  61 73 6b 65 64 28 6d 61  7a 65 78 25 2b 33 30 30  |asked(mazex%+300|
00004f80  2c 6d 61 7a 65 79 25 2b  34 33 36 2c 31 2c 31 2c  |,mazey%+436,1,1,|
00004f90  31 2c 31 2c 22 62 61 74  32 22 2c 73 61 31 25 29  |1,1,"bat2",sa1%)|
00004fa0  0d 02 7e 49 20 20 20 20  20 20 20 f2 70 6c 6f 74  |..~I       .plot|
00004fb0  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 6d  |_sprite_masked(m|
00004fc0  61 7a 65 78 25 2b 32 30  30 2c 6d 61 7a 65 79 25  |azex%+200,mazey%|
00004fd0  2b 34 33 36 2c 31 2c 31  2c 31 2c 31 2c 22 62 61  |+436,1,1,1,1,"ba|
00004fe0  74 32 22 2c 73 61 31 25  29 0d 02 7f 49 20 20 20  |t2",sa1%)...I   |
00004ff0  20 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |    .plot_sprite|
00005000  5f 6d 61 73 6b 65 64 28  6d 61 7a 65 78 25 2b 32  |_masked(mazex%+2|
00005010  33 30 2c 6d 61 7a 65 79  25 2b 34 34 30 2c 31 2c  |30,mazey%+440,1,|
00005020  31 2c 31 2c 31 2c 22 62  61 74 32 22 2c 73 61 31  |1,1,1,"bat2",sa1|
00005030  25 29 0d 02 80 49 20 20  20 20 20 20 20 f2 70 6c  |%)...I       .pl|
00005040  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00005050  28 6d 61 7a 65 78 25 2b  34 32 30 2c 6d 61 7a 65  |(mazex%+420,maze|
00005060  79 25 2b 34 33 36 2c 31  2c 31 2c 31 2c 31 2c 22  |y%+436,1,1,1,1,"|
00005070  62 61 74 32 22 2c 73 61  31 25 29 0d 02 81 0a 20  |bat2",sa1%).... |
00005080  20 20 20 20 cd 0d 02 82  08 20 20 20 cd 0d 02 83  |    .....   ....|
00005090  30 20 20 20 e7 6d 61 7a  65 25 28 70 78 25 2b 6c  |0   .maze%(px%+l|
000050a0  6f 6f 6b 5f 74 77 6f 78  25 2c 70 79 25 2b 6c 6f  |ook_twox%,py%+lo|
000050b0  6f 6b 5f 74 77 6f 79 25  29 3d 32 20 8c 0d 02 84  |ok_twoy%)=2 ....|
000050c0  47 20 20 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |G     .plot_spri|
000050d0  74 65 5f 6d 61 73 6b 65  64 28 6d 61 7a 65 78 25  |te_masked(mazex%|
000050e0  2b 32 36 30 2c 6d 61 7a  65 79 25 2b 34 32 36 2c  |+260,mazey%+426,|
000050f0  31 2c 31 2c 31 2c 31 2c  22 62 61 74 31 22 2c 73  |1,1,1,1,"bat1",s|
00005100  61 31 25 29 0d 02 85 47  20 20 20 20 20 f2 70 6c  |a1%)...G     .pl|
00005110  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00005120  28 6d 61 7a 65 78 25 2b  31 31 30 2c 6d 61 7a 65  |(mazex%+110,maze|
00005130  79 25 2b 34 32 36 2c 31  2c 31 2c 31 2c 31 2c 22  |y%+426,1,1,1,1,"|
00005140  62 61 74 31 22 2c 73 61  31 25 29 0d 02 86 47 20  |bat1",sa1%)...G |
00005150  20 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |    .plot_sprite|
00005160  5f 6d 61 73 6b 65 64 28  6d 61 7a 65 78 25 2b 31  |_masked(mazex%+1|
00005170  35 30 2c 6d 61 7a 65 79  25 2b 34 33 30 2c 31 2c  |50,mazey%+430,1,|
00005180  31 2c 31 2c 31 2c 22 62  61 74 31 22 2c 73 61 31  |1,1,1,"bat1",sa1|
00005190  25 29 0d 02 87 47 20 20  20 20 20 f2 70 6c 6f 74  |%)...G     .plot|
000051a0  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 6d  |_sprite_masked(m|
000051b0  61 7a 65 78 25 2b 34 36  30 2c 6d 61 7a 65 79 25  |azex%+460,mazey%|
000051c0  2b 34 32 36 2c 31 2c 31  2c 31 2c 31 2c 22 62 61  |+426,1,1,1,1,"ba|
000051d0  74 31 22 2c 73 61 31 25  29 0d 02 88 08 20 20 20  |t1",sa1%)....   |
000051e0  cd 0d 02 89 12 20 20 20  e7 63 6f 75 6e 74 25 3e  |.....   .count%>|
000051f0  31 20 8c 0d 02 8a 48 20  20 20 20 20 e7 6d 61 7a  |1 ....H     .maz|
00005200  65 25 28 70 78 25 2b 6c  6f 6f 6b 5f 74 77 6f 78  |e%(px%+look_twox|
00005210  25 2b 6c 6f 6f 6b 5f 74  77 6f 78 25 2c 70 79 25  |%+look_twox%,py%|
00005220  2b 6c 6f 6f 6b 5f 74 77  6f 79 25 2b 6c 6f 6f 6b  |+look_twoy%+look|
00005230  5f 74 77 6f 79 25 29 3d  31 20 8c 0d 02 8b 49 20  |_twoy%)=1 ....I |
00005240  20 20 20 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |      .plot_spri|
00005250  74 65 5f 6d 61 73 6b 65  64 28 6d 61 7a 65 78 25  |te_masked(mazex%|
00005260  2b 31 36 30 2c 6d 61 7a  65 79 25 2b 34 33 36 2c  |+160,mazey%+436,|
00005270  31 2c 31 2c 31 2c 31 2c  22 62 61 74 32 22 2c 73  |1,1,1,1,"bat2",s|
00005280  61 31 25 29 0d 02 8c 49  20 20 20 20 20 20 20 f2  |a1%)...I       .|
00005290  70 6c 6f 74 5f 73 70 72  69 74 65 5f 6d 61 73 6b  |plot_sprite_mask|
000052a0  65 64 28 6d 61 7a 65 78  25 2b 31 38 30 2c 6d 61  |ed(mazex%+180,ma|
000052b0  7a 65 79 25 2b 34 33 36  2c 31 2c 31 2c 31 2c 31  |zey%+436,1,1,1,1|
000052c0  2c 22 62 61 74 32 22 2c  73 61 31 25 29 0d 02 8d  |,"bat2",sa1%)...|
000052d0  49 20 20 20 20 20 20 20  f2 70 6c 6f 74 5f 73 70  |I       .plot_sp|
000052e0  72 69 74 65 5f 6d 61 73  6b 65 64 28 6d 61 7a 65  |rite_masked(maze|
000052f0  78 25 2b 32 31 30 2c 6d  61 7a 65 79 25 2b 34 34  |x%+210,mazey%+44|
00005300  30 2c 31 2c 31 2c 31 2c  31 2c 22 62 61 74 32 22  |0,1,1,1,1,"bat2"|
00005310  2c 73 61 31 25 29 0d 02  8e 49 20 20 20 20 20 20  |,sa1%)...I      |
00005320  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  | .plot_sprite_ma|
00005330  73 6b 65 64 28 6d 61 7a  65 78 25 2b 34 30 30 2c  |sked(mazex%+400,|
00005340  6d 61 7a 65 79 25 2b 34  33 36 2c 31 2c 31 2c 31  |mazey%+436,1,1,1|
00005350  2c 31 2c 22 62 61 74 32  22 2c 73 61 31 25 29 0d  |,1,"bat2",sa1%).|
00005360  02 8f 49 20 20 20 20 20  20 20 f2 70 6c 6f 74 5f  |..I       .plot_|
00005370  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 6d 61  |sprite_masked(ma|
00005380  7a 65 78 25 2b 34 32 30  2c 6d 61 7a 65 79 25 2b  |zex%+420,mazey%+|
00005390  34 33 36 2c 31 2c 31 2c  31 2c 31 2c 22 62 61 74  |436,1,1,1,1,"bat|
000053a0  32 22 2c 73 61 31 25 29  0d 02 90 0a 20 20 20 20  |2",sa1%)....    |
000053b0  20 cd 0d 02 91 08 20 20  20 cd 0d 02 92 30 20 20  | .....   ....0  |
000053c0  20 e7 6d 61 7a 65 25 28  70 78 25 2b 6c 6f 6f 6b  | .maze%(px%+look|
000053d0  5f 74 77 6f 78 25 2c 70  79 25 2b 6c 6f 6f 6b 5f  |_twox%,py%+look_|
000053e0  74 77 6f 79 25 29 3d 31  20 8c 0d 02 93 46 20 20  |twoy%)=1 ....F  |
000053f0  20 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |   .plot_sprite_|
00005400  6d 61 73 6b 65 64 28 6d  61 7a 65 78 25 2b 38 30  |masked(mazex%+80|
00005410  2c 6d 61 7a 65 79 25 2b  34 32 36 2c 31 2c 31 2c  |,mazey%+426,1,1,|
00005420  31 2c 31 2c 22 62 61 74  31 22 2c 73 61 31 25 29  |1,1,"bat1",sa1%)|
00005430  0d 02 94 47 20 20 20 20  20 f2 70 6c 6f 74 5f 73  |...G     .plot_s|
00005440  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 6d 61 7a  |prite_masked(maz|
00005450  65 78 25 2b 31 31 30 2c  6d 61 7a 65 79 25 2b 34  |ex%+110,mazey%+4|
00005460  32 36 2c 31 2c 31 2c 31  2c 31 2c 22 62 61 74 31  |26,1,1,1,1,"bat1|
00005470  22 2c 73 61 31 25 29 0d  02 95 47 20 20 20 20 20  |",sa1%)...G     |
00005480  f2 70 6c 6f 74 5f 73 70  72 69 74 65 5f 6d 61 73  |.plot_sprite_mas|
00005490  6b 65 64 28 6d 61 7a 65  78 25 2b 31 35 30 2c 6d  |ked(mazex%+150,m|
000054a0  61 7a 65 79 25 2b 34 33  30 2c 31 2c 31 2c 31 2c  |azey%+430,1,1,1,|
000054b0  31 2c 22 62 61 74 31 22  2c 73 61 31 25 29 0d 02  |1,"bat1",sa1%)..|
000054c0  96 47 20 20 20 20 20 f2  70 6c 6f 74 5f 73 70 72  |.G     .plot_spr|
000054d0  69 74 65 5f 6d 61 73 6b  65 64 28 6d 61 7a 65 78  |ite_masked(mazex|
000054e0  25 2b 34 33 30 2c 6d 61  7a 65 79 25 2b 34 32 36  |%+430,mazey%+426|
000054f0  2c 31 2c 31 2c 31 2c 31  2c 22 62 61 74 31 22 2c  |,1,1,1,1,"bat1",|
00005500  73 61 31 25 29 0d 02 97  47 20 20 20 20 20 f2 70  |sa1%)...G     .p|
00005510  6c 6f 74 5f 73 70 72 69  74 65 5f 6d 61 73 6b 65  |lot_sprite_maske|
00005520  64 28 6d 61 7a 65 78 25  2b 34 37 30 2c 6d 61 7a  |d(mazex%+470,maz|
00005530  65 79 25 2b 34 32 36 2c  31 2c 31 2c 31 2c 31 2c  |ey%+426,1,1,1,1,|
00005540  22 62 61 74 31 22 2c 73  61 31 25 29 0d 02 98 08  |"bat1",sa1%)....|
00005550  20 20 20 cd 0d 02 99 40  20 20 e3 66 25 3d 31 b8  |   ....@  .f%=1.|
00005560  36 3a c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |6:.."OS_SpriteOp|
00005570  22 2c 26 31 32 31 2c 73  70 72 69 74 65 5f 61 72  |",&121,sprite_ar|
00005580  65 61 31 25 2c 22 66 6c  6f 6f 72 22 2b c3 28 66  |ea1%,"floor"+.(f|
00005590  25 29 3a ed 0d 02 9a 05  e1 0d 02 9b 04 0d 02 9c  |%):.............|
000055a0  12 dd f2 73 65 74 5f 6d  61 7a 65 28 6d 24 29 0d  |...set_maze(m$).|
000055b0  02 9d 45 20 20 c8 99 22  4f 53 5f 53 70 72 69 74  |..E  .."OS_Sprit|
000055c0  65 4f 70 22 2c 26 31 32  38 2c 73 70 72 69 74 65  |eOp",&128,sprite|
000055d0  5f 61 72 65 61 31 25 2c  6d 24 20 b8 20 72 30 2c  |_area1%,m$ . r0,|
000055e0  72 31 2c 72 32 2c 77 69  64 74 68 25 2c 68 65 69  |r1,r2,width%,hei|
000055f0  67 68 74 25 0d 02 9e 16  20 20 e3 66 25 3d 30 20  |ght%....  .f%=0 |
00005600  b8 20 77 69 64 74 68 25  2d 31 0d 02 9f 1a 20 20  |. width%-1....  |
00005610  20 20 e3 66 66 25 3d 30  20 b8 20 68 65 69 67 68  |  .ff%=0 . heigh|
00005620  74 25 2d 31 0d 02 a0 4f  20 20 20 20 20 20 c8 99  |t%-1...O      ..|
00005630  22 4f 53 5f 53 70 72 69  74 65 4f 70 22 2c 26 31  |"OS_SpriteOp",&1|
00005640  32 39 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |29,sprite_area1%|
00005650  2c 6d 24 2c 66 25 2c 66  66 25 20 b8 20 72 30 2c  |,m$,f%,ff% . r0,|
00005660  72 31 2c 72 32 2c 72 33  2c 72 34 2c 63 6f 6c 6f  |r1,r2,r3,r4,colo|
00005670  75 72 25 0d 02 a1 1f 20  20 20 20 20 20 6d 61 7a  |ur%....      maz|
00005680  65 25 28 66 25 2c 66 66  25 29 3d 63 6f 6c 6f 75  |e%(f%,ff%)=colou|
00005690  72 25 0d 02 a2 09 20 20  20 20 ed 0d 02 a3 07 20  |r%....    ..... |
000056a0  20 ed 0d 02 a4 05 e1 0d  02 a5 04 0d 02 a6 10 dd  | ...............|
000056b0  f2 73 74 61 72 74 5f 67  61 6d 65 0d 02 a7 1e f2  |.start_game.....|
000056c0  6c 6f 61 64 5f 73 70 72  69 74 65 73 28 22 73 70  |load_sprites("sp|
000056d0  5f 73 74 61 72 74 32 22  29 0d 02 a8 2e f2 6c 6f  |_start2").....lo|
000056e0  61 64 5f 70 69 63 74 75  72 65 28 70 69 63 74 75  |ad_picture(pictu|
000056f0  72 65 31 25 2b 28 31 30  32 34 2a 31 35 29 2c 22  |re1%+(1024*15),"|
00005700  77 61 6c 6c 32 22 29 0d  02 a9 0c 2a 46 58 31 31  |wall2")....*FX11|
00005710  32 2c 32 0d 02 aa 08 fb  31 32 39 0d 02 ab 05 db  |2,2.....129.....|
00005720  0d 02 ac 14 e7 56 25 3d  30 20 f2 74 6f 70 5f 62  |.....V%=0 .top_b|
00005730  6c 61 6e 6b 0d 02 ad 21  41 25 3d 70 69 63 74 75  |lank...!A%=pictu|
00005740  72 65 31 25 2b 28 31 30  32 34 2a 31 35 29 3a d6  |re1%+(1024*15):.|
00005750  64 72 61 77 25 0d 02 ae  0e e3 66 25 3d 30 b8 38  |draw%.....f%=0.8|
00005760  20 88 32 0d 02 af 4c 20  20 ec 33 31 2d 66 25 2c  | .2...L  .31-f%,|
00005770  33 32 2d 66 25 3a df 31  32 34 39 2b 66 25 2c 33  |32-f%:.1249+f%,3|
00005780  32 2d 66 25 3a df 31 32  34 39 2b 66 25 2c 39 33  |2-f%:.1249+f%,93|
00005790  33 2b 66 25 3a df 33 31  2d 66 25 2c 39 33 33 2b  |3+f%:.31-f%,933+|
000057a0  66 25 3a df 33 31 2d 66  25 2c 33 32 2d 66 25 0d  |f%:.31-f%,32-f%.|
000057b0  02 b0 05 ed 0d 02 b1 19  f2 62 6f 78 28 32 30 30  |.........box(200|
000057c0  2c 37 30 30 2c 38 38 30  2c 32 30 30 29 0d 02 b2  |,700,880,200)...|
000057d0  10 66 61 64 65 24 3d 22  66 61 64 65 22 0d 02 b3  |.fade$="fade"...|
000057e0  35 20 f2 70 72 69 28 32  34 38 2c 38 32 30 2c 22  |5 .pri(248,820,"|
000057f0  59 6f 75 20 77 69 6c 6c  20 6e 65 65 64 20 74 6f  |You will need to|
00005800  20 66 69 78 20 63 6f 6d  70 6c 69 63 61 74 65 64  | fix complicated|
00005810  22 29 0d 02 b4 33 20 f2  70 72 69 28 32 34 38 2c  |")...3 .pri(248,|
00005820  37 35 30 2c 22 6d 61 63  68 69 6e 65 73 20 77 69  |750,"machines wi|
00005830  74 68 20 6e 6f 20 69 6e  73 74 72 75 63 74 69 6f  |th no instructio|
00005840  6e 73 2e 22 29 0d 02 b5  14 e7 56 25 3d 30 20 f2  |ns.").....V%=0 .|
00005850  74 6f 70 5f 62 6c 61 6e  6b 0d 02 b6 18 f2 66 61  |top_blank.....fa|
00005860  64 65 28 30 2c 39 36 30  2c 34 2c 30 2c 31 2c 31  |de(0,960,4,0,1,1|
00005870  29 0d 02 b7 08 fb 31 32  39 0d 02 b8 05 db 0d 02  |).....129.......|
00005880  b9 21 41 25 3d 70 69 63  74 75 72 65 31 25 2b 28  |.!A%=picture1%+(|
00005890  31 30 32 34 2a 31 35 29  3a d6 64 72 61 77 25 0d  |1024*15):.draw%.|
000058a0  02 ba 0e e3 66 25 3d 30  b8 38 20 88 32 0d 02 bb  |....f%=0.8 .2...|
000058b0  4c 20 20 ec 33 31 2d 66  25 2c 33 32 2d 66 25 3a  |L  .31-f%,32-f%:|
000058c0  df 31 32 34 39 2b 66 25  2c 33 32 2d 66 25 3a df  |.1249+f%,32-f%:.|
000058d0  31 32 34 39 2b 66 25 2c  39 33 33 2b 66 25 3a df  |1249+f%,933+f%:.|
000058e0  33 31 2d 66 25 2c 39 33  33 2b 66 25 3a df 33 31  |31-f%,933+f%:.31|
000058f0  2d 66 25 2c 33 32 2d 66  25 0d 02 bc 05 ed 0d 02  |-f%,32-f%.......|
00005900  bd 0c 2a 46 58 31 31 32  2c 31 0d 02 be 15 f2 73  |..*FX112,1.....s|
00005910  70 61 63 65 28 39 30 30  2c 39 2c 30 2c 30 29 0d  |pace(900,9,0,0).|
00005920  02 bf 2f 42 25 3d 73 63  72 65 65 6e 5f 74 77 6f  |../B%=screen_two|
00005930  25 3a 43 25 3d 73 63 72  65 65 6e 5f 6f 6e 65 25  |%:C%=screen_one%|
00005940  3a d6 73 61 76 65 5f 73  63 72 65 65 6e 25 0d 02  |:.save_screen%..|
00005950  c0 14 e7 56 25 3d 30 20  f2 74 6f 70 5f 62 6c 61  |...V%=0 .top_bla|
00005960  6e 6b 0d 02 c1 0f f2 70  61 75 73 65 28 31 30 30  |nk.....pause(100|
00005970  29 0d 02 c2 19 f2 62 6f  78 28 32 30 30 2c 37 30  |).....box(200,70|
00005980  30 2c 38 38 30 2c 32 30  30 29 0d 02 c3 37 f2 70  |0,880,200)...7.p|
00005990  72 69 28 32 33 38 2c 38  32 30 2c 22 54 68 69 73  |ri(238,820,"This|
000059a0  20 6d 61 63 68 69 6e 65  20 73 68 6f 75 6c 64 20  | machine should |
000059b0  66 69 6c 6c 20 61 20 63  75 70 20 77 69 74 68 22  |fill a cup with"|
000059c0  29 0d 02 c4 30 f2 70 72  69 28 32 33 38 2c 37 35  |)...0.pri(238,75|
000059d0  30 2c 22 6a 75 69 63 65  20 61 6e 64 20 74 68 65  |0,"juice and the|
000059e0  6e 20 70 75 74 20 61 20  6c 69 64 20 6f 6e 2e 22  |n put a lid on."|
000059f0  29 0d 02 c5 15 f2 73 70  61 63 65 28 39 30 30 2c  |).....space(900,|
00005a00  39 2c 30 2c 30 29 0d 02  c6 19 f2 62 6f 78 28 38  |9,0,0).....box(8|
00005a10  34 30 2c 34 38 30 2c 32  30 30 2c 32 30 30 29 0d  |40,480,200,200).|
00005a20  02 c7 3a f2 70 6c 6f 74  5f 73 70 72 69 74 65 28  |..:.plot_sprite(|
00005a30  38 37 30 2c 35 30 36 2c  31 2c 31 2c 31 2c 31 2c  |870,506,1,1,1,1,|
00005a40  22 65 78 70 6c 61 69 6e  31 22 2c 73 70 72 69 74  |"explain1",sprit|
00005a50  65 5f 61 72 65 61 31 25  29 0d 02 c8 0f f2 70 61  |e_area1%).....pa|
00005a60  75 73 65 28 32 30 30 29  0d 02 c9 3a f2 70 6c 6f  |use(200)...:.plo|
00005a70  74 5f 73 70 72 69 74 65  28 38 37 30 2c 35 30 36  |t_sprite(870,506|
00005a80  2c 31 2c 31 2c 31 2c 31  2c 22 65 78 70 6c 61 69  |,1,1,1,1,"explai|
00005a90  6e 32 22 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |n2",sprite_area1|
00005aa0  25 29 0d 02 ca 0f f2 70  61 75 73 65 28 32 30 30  |%).....pause(200|
00005ab0  29 0d 02 cb 3a f2 70 6c  6f 74 5f 73 70 72 69 74  |)...:.plot_sprit|
00005ac0  65 28 38 37 30 2c 35 30  36 2c 31 2c 31 2c 31 2c  |e(870,506,1,1,1,|
00005ad0  31 2c 22 65 78 70 6c 61  69 6e 33 22 2c 73 70 72  |1,"explain3",spr|
00005ae0  69 74 65 5f 61 72 65 61  31 25 29 0d 02 cc 0f f2  |ite_area1%).....|
00005af0  70 61 75 73 65 28 32 30  30 29 0d 02 cd 19 f2 62  |pause(200).....b|
00005b00  6f 78 28 32 30 30 2c 37  30 30 2c 38 38 30 2c 32  |ox(200,700,880,2|
00005b10  30 30 29 0d 02 ce 23 f2  70 72 69 28 34 34 38 2c  |00)...#.pri(448,|
00005b20  37 38 30 2c 22 48 61 76  65 20 61 20 74 72 79 20  |780,"Have a try |
00005b30  6e 6f 77 21 22 29 0d 02  cf 15 f2 73 70 61 63 65  |now!").....space|
00005b40  28 39 30 30 2c 39 2c 30  2c 30 29 0d 02 d0 05 e1  |(900,9,0,0).....|
00005b50  0d 02 d1 04 0d 02 d2 17  dd f2 74 65 6d 70 6c 65  |..........temple|
00005b60  5f 74 6f 70 28 73 69 74  65 25 29 0d 02 d3 10 66  |_top(site%)....f|
00005b70  61 64 65 24 3d 22 66 61  64 65 22 0d 02 d4 3f 70  |ade$="fade"...?p|
00005b80  61 72 24 28 31 29 3d 22  70 61 72 31 22 3a 70 61  |ar$(1)="par1":pa|
00005b90  72 24 28 32 29 3d 22 70  61 72 32 22 3a 70 61 72  |r$(2)="par2":par|
00005ba0  24 28 33 29 3d 22 70 61  72 31 22 3a 70 61 72 24  |$(3)="par1":par$|
00005bb0  28 34 29 3d 22 70 61 72  33 22 0d 02 d5 5d 68 65  |(4)="par3"...]he|
00005bc0  6c 69 25 28 31 29 3d 33  30 2b 36 38 3a 68 65 6c  |li%(1)=30+68:hel|
00005bd0  69 25 28 32 29 3d 34 30  2b 36 38 3a 68 65 6c 69  |i%(2)=40+68:heli|
00005be0  25 28 33 29 3d 34 38 2b  36 38 3a 68 65 6c 69 25  |%(3)=48+68:heli%|
00005bf0  28 34 29 3d 36 30 2b 36  38 3a 68 65 6c 69 25 28  |(4)=60+68:heli%(|
00005c00  35 29 3d 34 38 2b 36 38  3a 68 65 6c 69 25 28 36  |5)=48+68:heli%(6|
00005c10  29 3d 34 30 2b 36 38 0d  02 d6 22 e7 73 69 74 65  |)=40+68...".site|
00005c20  25 3d 31 20 f2 6c 6f 61  64 5f 73 70 72 69 74 65  |%=1 .load_sprite|
00005c30  73 28 22 6c 61 6e 64 22  29 0d 02 d7 0c 2a 66 78  |s("land")....*fx|
00005c40  31 31 33 2c 31 0d 02 d8  0c 2a 66 78 31 31 32 2c  |113,1....*fx112,|
00005c50  32 0d 02 d9 0a f2 63 6c  65 61 72 0d 02 da 35 e7  |2.....clear...5.|
00005c60  56 25 3d 30 20 f2 74 6f  70 5f 62 6c 61 6e 6b 3a  |V%=0 .top_blank:|
00005c70  ff 22 46 58 31 31 32 2c  31 22 3a f2 74 6f 70 5f  |."FX112,1":.top_|
00005c80  62 6c 61 6e 6b 3a ff 22  46 58 31 31 32 2c 32 22  |blank:."FX112,2"|
00005c90  0d 02 db 27 ef 32 34 2c  31 35 32 3b 31 32 30 3b  |...'.24,152;120;|
00005ca0  31 31 32 36 3b 39 32 36  3b 31 38 2c 30 2c 31 33  |1126;926;18,0,13|
00005cb0  31 2c 31 36 2c 32 36 0d  02 dc 3f e7 73 69 74 65  |1,16,26...?.site|
00005cc0  25 3d 31 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |%=1 .plot_sprite|
00005cd0  28 31 36 30 2c 31 32 38  2c 31 2c 31 2c 31 2c 31  |(160,128,1,1,1,1|
00005ce0  2c 22 4c 41 4e 44 22 2c  73 61 31 25 29 3a 6c 61  |,"LAND",sa1%):la|
00005cf0  6e 64 25 3d 34 30 0d 02  dd 18 f2 66 61 64 65 28  |nd%=40.....fade(|
00005d00  30 2c 39 36 30 2c 34 2c  30 2c 31 2c 31 29 0d 02  |0,960,4,0,1,1)..|
00005d10  de 18 f2 62 6f 78 28 31  30 30 2c 31 30 2c 31 30  |...box(100,10,10|
00005d20  38 30 2c 39 30 29 0d 02  df 38 f2 70 72 69 28 31  |80,90)...8.pri(1|
00005d30  35 30 2c 34 32 2c 22 59  6f 75 20 77 69 6c 6c 20  |50,42,"You will |
00005d40  6e 65 65 64 20 74 6f 20  76 69 73 69 74 20 72 65  |need to visit re|
00005d50  6d 6f 74 65 20 70 6c 61  63 65 73 2c 22 29 0d 02  |mote places,")..|
00005d60  e0 0c 2a 46 58 31 31 32  2c 31 0d 02 e1 18 f2 62  |..*FX112,1.....b|
00005d70  6f 78 28 31 30 30 2c 31  30 2c 31 30 38 30 2c 39  |ox(100,10,1080,9|
00005d80  30 29 0d 02 e2 38 f2 70  72 69 28 31 35 30 2c 34  |0)...8.pri(150,4|
00005d90  32 2c 22 59 6f 75 20 77  69 6c 6c 20 6e 65 65 64  |2,"You will need|
00005da0  20 74 6f 20 76 69 73 69  74 20 72 65 6d 6f 74 65  | to visit remote|
00005db0  20 70 6c 61 63 65 73 2c  22 29 0d 02 e3 19 ef 32  | places,").....2|
00005dc0  34 2c 31 36 30 3b 31 32  38 3b 31 31 31 38 3b 39  |4,160;128;1118;9|
00005dd0  32 32 3b 0d 02 e4 40 2a  52 4d 65 6e 73 75 72 65  |22;...@*RMensure|
00005de0  20 53 6d 68 6f 76 65 72  20 2a 52 4d 6c 6f 61 64  | Smhover *RMload|
00005df0  20 22 3c 43 72 79 73 74  61 6c 32 24 64 69 72 3e  | "<Crystal2$dir>|
00005e00  2e 50 54 30 2e 73 6f 75  6e 64 2e 53 6d 68 6f 76  |.PT0.sound.Smhov|
00005e10  65 72 22 0d 02 e5 1b 2a  63 68 61 6e 6e 65 6c 76  |er"....*channelv|
00005e20  6f 69 63 65 20 31 20 53  6d 68 6f 76 65 72 0d 02  |oice 1 Smhover..|
00005e30  e6 1d 61 6e 5f 78 25 3d  33 38 30 3a 61 6e 5f 79  |..an_x%=380:an_y|
00005e40  25 3d 39 31 32 3a 68 6f  25 3d 31 0d 02 e7 19 61  |%=912:ho%=1....a|
00005e50  6e 5f 78 32 25 3d 33 38  30 3a 61 6e 5f 79 32 25  |n_x2%=380:an_y2%|
00005e60  3d 39 30 38 0d 02 e8 18  73 65 6c 5f 73 70 72 69  |=908....sel_spri|
00005e70  74 65 24 3d 22 73 6c 69  64 65 31 22 0d 02 e9 19  |te$="slide1"....|
00005e80  73 65 6c 5f 73 70 72 69  74 65 32 24 3d 22 73 6c  |sel_sprite2$="sl|
00005e90  69 64 65 31 22 0d 02 ea  18 f2 73 74 61 72 74 5f  |ide1".....start_|
00005ea0  61 6e 69 6d 28 22 62 6c  61 6e 6b 22 29 0d 02 eb  |anim("blank")...|
00005eb0  16 f2 65 6e 64 5f 61 6e  69 6d 28 22 62 6c 61 6e  |..end_anim("blan|
00005ec0  6b 22 29 0d 02 ec 1a f2  73 74 61 72 74 5f 61 6e  |k").....start_an|
00005ed0  69 6d 32 28 22 62 6c 61  6e 6b 32 22 29 0d 02 ed  |im2("blank2")...|
00005ee0  13 e3 66 6c 79 25 3d 31  32 30 b8 31 20 88 2d 31  |..fly%=120.1 .-1|
00005ef0  0d 02 ee 0e 20 f2 73 74  5f 70 61 75 73 65 0d 02  |.... .st_pause..|
00005f00  ef 0d 20 2a 46 58 31 31  33 2c 31 0d 02 f0 0d 20  |.. *FX113,1.... |
00005f10  2a 46 58 31 31 32 2c 32  0d 02 f1 1e 20 e7 66 6c  |*FX112,2.... .fl|
00005f20  79 25 3e 6c 61 6e 64 25  20 61 6e 5f 79 25 3d 61  |y%>land% an_y%=a|
00005f30  6e 5f 79 25 2d 38 0d 02  f2 20 20 e7 66 6c 79 25  |n_y%-8...  .fly%|
00005f40  3d 6c 61 6e 64 25 2d 31  20 61 6e 5f 79 25 3d 61  |=land%-1 an_y%=a|
00005f50  6e 5f 79 25 2d 34 0d 02  f3 13 20 f2 61 6e 69 6d  |n_y%-4.... .anim|
00005f60  28 22 62 6c 61 6e 6b 22  29 0d 02 f4 4f 20 f2 70  |("blank")...O .p|
00005f70  6c 6f 74 5f 73 70 72 69  74 65 28 61 6e 5f 78 25  |lot_sprite(an_x%|
00005f80  2b 68 65 6c 69 25 28 68  6f 25 29 2c 61 6e 5f 79  |+heli%(ho%),an_y|
00005f90  25 2b 32 38 34 2c 31 2c  31 2c 31 2c 31 2c 22 6e  |%+284,1,1,1,1,"n|
00005fa0  62 22 2b c3 28 68 6f 25  29 2c 73 70 72 69 74 65  |b"+.(ho%),sprite|
00005fb0  5f 61 72 65 61 31 25 29  0d 02 f5 4f 20 e7 73 69  |_area1%)...O .si|
00005fc0  74 65 25 3d 31 20 f2 70  6c 6f 74 5f 73 70 72 69  |te%=1 .plot_spri|
00005fd0  74 65 5f 6d 61 73 6b 65  64 28 31 36 30 2b 32 30  |te_masked(160+20|
00005fe0  36 2c 31 32 38 2b 36 32  34 2c 31 2c 31 2c 31 2c  |6,128+624,1,1,1,|
00005ff0  31 2c 22 6c 65 61 66 22  2c 73 70 72 69 74 65 5f  |1,"leaf",sprite_|
00006000  61 72 65 61 31 25 29 0d  02 f6 1b 20 68 6f 25 3d  |area1%).... ho%=|
00006010  68 6f 25 2b 31 3a e7 68  6f 25 3d 37 3a 68 6f 25  |ho%+1:.ho%=7:ho%|
00006020  3d 31 0d 02 f7 14 20 f2  65 6e 5f 70 61 75 73 65  |=1.... .en_pause|
00006030  28 35 2d 5a 25 29 0d 02  f8 20 20 e7 66 6c 79 25  |(5-Z%)...  .fly%|
00006040  3c 6c 61 6e 64 25 20 f2  70 61 75 73 65 28 33 30  |<land% .pause(30|
00006050  2f 66 6c 79 25 29 0d 02  f9 0e 20 f2 73 74 5f 70  |/fly%).... .st_p|
00006060  61 75 73 65 0d 02 fa 0d  20 2a 46 58 31 31 33 2c  |ause.... *FX113,|
00006070  32 0d 02 fb 0d 20 2a 46  58 31 31 32 2c 31 0d 02  |2.... *FX112,1..|
00006080  fc 20 20 e7 66 6c 79 25  3e 6c 61 6e 64 25 20 61  |.  .fly%>land% a|
00006090  6e 5f 79 32 25 3d 61 6e  5f 79 32 25 2d 38 0d 02  |n_y2%=an_y2%-8..|
000060a0  fd 15 20 f2 61 6e 69 6d  32 28 22 62 6c 61 6e 6b  |.. .anim2("blank|
000060b0  32 22 29 0d 02 fe 14 20  d4 31 2c 2d 31 35 2c 26  |2").... .1,-15,&|
000060c0  34 30 30 30 2c 31 30 0d  02 ff 51 20 f2 70 6c 6f  |4000,10...Q .plo|
000060d0  74 5f 73 70 72 69 74 65  28 61 6e 5f 78 32 25 2b  |t_sprite(an_x2%+|
000060e0  68 65 6c 69 25 28 68 6f  25 29 2c 61 6e 5f 79 32  |heli%(ho%),an_y2|
000060f0  25 2b 32 38 34 2c 31 2c  31 2c 31 2c 31 2c 22 6e  |%+284,1,1,1,1,"n|
00006100  62 22 2b c3 28 68 6f 25  29 2c 73 70 72 69 74 65  |b"+.(ho%),sprite|
00006110  5f 61 72 65 61 31 25 29  0d 03 00 4f 20 e7 73 69  |_area1%)...O .si|
00006120  74 65 25 3d 31 20 f2 70  6c 6f 74 5f 73 70 72 69  |te%=1 .plot_spri|
00006130  74 65 5f 6d 61 73 6b 65  64 28 31 36 30 2b 32 30  |te_masked(160+20|
00006140  36 2c 31 32 38 2b 36 32  34 2c 31 2c 31 2c 31 2c  |6,128+624,1,1,1,|
00006150  31 2c 22 6c 65 61 66 22  2c 73 70 72 69 74 65 5f  |1,"leaf",sprite_|
00006160  61 72 65 61 31 25 29 0d  03 01 1b 20 68 6f 25 3d  |area1%).... ho%=|
00006170  68 6f 25 2b 31 3a e7 68  6f 25 3d 37 3a 68 6f 25  |ho%+1:.ho%=7:ho%|
00006180  3d 31 0d 03 02 14 20 f2  65 6e 5f 70 61 75 73 65  |=1.... .en_pause|
00006190  28 35 2d 5a 25 29 0d 03  03 20 20 e7 66 6c 79 25  |(5-Z%)...  .fly%|
000061a0  3c 6c 61 6e 64 25 20 f2  70 61 75 73 65 28 33 30  |<land% .pause(30|
000061b0  2f 66 6c 79 25 29 0d 03  04 05 ed 0d 03 05 0c 2a  |/fly%).........*|
000061c0  46 58 31 31 32 2c 31 0d  03 06 0c 2a 46 58 31 31  |FX112,1....*FX11|
000061d0  33 2c 31 0d 03 07 15 2a  63 68 61 6e 6e 65 6c 76  |3,1....*channelv|
000061e0  6f 69 63 65 20 31 20 31  0d 03 08 15 2a 63 68 61  |oice 1 1....*cha|
000061f0  6e 6e 65 6c 76 6f 69 63  65 20 32 20 32 0d 03 09  |nnelvoice 2 2...|
00006200  13 2a 52 4d 6b 69 6c 6c  20 53 6d 48 6f 76 65 72  |.*RMkill SmHover|
00006210  0d 03 0a 3a 2a 52 4d 65  6e 73 75 72 65 20 6a 75  |...:*RMensure ju|
00006220  6e 67 20 2a 52 4d 6c 6f  61 64 20 22 3c 43 72 79  |ng *RMload "<Cry|
00006230  73 74 61 6c 32 24 64 69  72 3e 2e 50 54 30 2e 73  |stal2$dir>.PT0.s|
00006240  6f 75 6e 64 2e 6a 75 6e  67 22 0d 03 0b 18 2a 63  |ound.jung"....*c|
00006250  68 61 6e 6e 65 6c 76 6f  69 63 65 20 32 20 6a 75  |hannelvoice 2 ju|
00006260  6e 67 0d 03 0c 0f 20 e7  73 69 74 65 25 3d 31 20  |ng.... .site%=1 |
00006270  8c 0d 03 0d 0b 20 20 f7  8d 54 52 43 0d 03 0e 0d  |.....  ..TRC....|
00006280  20 20 e3 66 25 3d 31 b8  35 0d 03 0f 22 20 20 f3  |  .f%=1.5..."  .|
00006290  70 61 72 72 6f 74 25 28  66 25 2c 31 29 2c 70 61  |parrot%(f%,1),pa|
000062a0  72 72 6f 74 25 28 66 25  2c 32 29 0d 03 10 18 20  |rrot%(f%,2).... |
000062b0  20 70 61 72 72 6f 74 25  28 66 25 2c 30 29 3d b3  | parrot%(f%,0)=.|
000062c0  28 34 29 0d 03 11 15 20  20 62 61 63 6b 24 28 66  |(4)....  back$(f|
000062d0  25 29 3d c3 28 66 25 29  0d 03 12 07 20 20 ed 0d  |%)=.(f%)....  ..|
000062e0  03 13 37 20 20 dc 20 34  33 30 2c 36 39 38 2c 35  |..7  . 430,698,5|
000062f0  30 35 2c 38 30 39 2c 35  38 33 2c 37 31 33 2c 36  |05,809,583,713,6|
00006300  30 37 2c 38 32 35 2c 34  30 36 2c 38 34 35 2c 35  |07,825,406,845,5|
00006310  34 34 2c 38 36 33 0d 03  14 10 20 20 73 6f 75 6e  |44,863....  soun|
00006320  64 5f 74 25 3d 91 0d 03  15 15 20 20 d4 32 2c 2d  |d_t%=.....  .2,-|
00006330  31 35 2c 26 32 35 30 30  2c 32 30 0d 03 16 0d 20  |15,&2500,20.... |
00006340  20 e3 66 25 3d 31 b8 35  0d 03 17 19 20 20 61 6e  | .f%=1.5....  an|
00006350  5f 78 25 3d 70 61 72 72  6f 74 25 28 66 25 2c 31  |_x%=parrot%(f%,1|
00006360  29 0d 03 18 19 20 20 61  6e 5f 79 25 3d 70 61 72  |)....  an_y%=par|
00006370  72 6f 74 25 28 66 25 2c  32 29 0d 03 19 25 20 20  |rot%(f%,2)...%  |
00006380  73 65 6c 5f 73 70 72 69  74 65 24 3d 70 61 72 24  |sel_sprite$=par$|
00006390  28 70 61 72 72 6f 74 25  28 66 25 2c 30 29 29 0d  |(parrot%(f%,0)).|
000063a0  03 1a 3f 20 20 c8 99 22  4f 53 5f 53 70 72 69 74  |..?  .."OS_Sprit|
000063b0  65 4f 70 22 2c 26 31 31  38 2c 73 70 72 69 74 65  |eOp",&118,sprite|
000063c0  5f 61 72 65 61 31 25 2c  73 65 6c 5f 73 70 72 69  |_area1%,sel_spri|
000063d0  74 65 24 20 b8 20 72 30  2c 72 31 2c 72 32 0d 03  |te$ . r0,r1,r2..|
000063e0  1b 3e 20 20 77 69 64 74  68 25 3d 28 21 28 72 32  |.>  width%=(!(r2|
000063f0  2b 31 36 29 2b 31 29 2a  31 36 3a 68 65 69 67 68  |+16)+1)*16:heigh|
00006400  74 25 3d 28 21 28 72 32  2b 32 30 29 2b 31 29 2a  |t%=(!(r2+20)+1)*|
00006410  28 34 2a 28 76 67 61 25  2b 31 29 29 0d 03 1c 5b  |(4*(vga%+1))...[|
00006420  20 20 c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |  .."OS_SpriteOp|
00006430  22 2c 26 31 31 30 2c 73  70 72 69 74 65 5f 61 72  |",&110,sprite_ar|
00006440  65 61 31 25 2c 62 61 63  6b 24 28 66 25 29 2c 30  |ea1%,back$(f%),0|
00006450  2c 61 6e 5f 78 25 2c 61  6e 5f 79 25 2c 61 6e 5f  |,an_x%,an_y%,an_|
00006460  78 25 2b 77 69 64 74 68  25 2c 61 6e 5f 79 25 2b  |x%+width%,an_y%+|
00006470  68 65 69 67 68 74 25 0d  03 1d 48 20 20 f2 70 6c  |height%...H  .pl|
00006480  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00006490  28 61 6e 5f 78 25 2c 61  6e 5f 79 25 2c 31 2c 31  |(an_x%,an_y%,1,1|
000064a0  2c 31 2c 31 2c 73 65 6c  5f 73 70 72 69 74 65 24  |,1,1,sel_sprite$|
000064b0  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
000064c0  03 1e 31 20 20 70 61 72  72 6f 74 5f 6f 25 28 66  |..1  parrot_o%(f|
000064d0  25 2c 31 29 3d 61 6e 5f  78 25 3a 70 61 72 72 6f  |%,1)=an_x%:parro|
000064e0  74 5f 6f 25 28 66 25 2c  32 29 3d 61 6e 5f 79 25  |t_o%(f%,2)=an_y%|
000064f0  0d 03 1f 07 20 20 ed 0d  03 20 07 20 20 f5 0d 03  |....  ... .  ...|
00006500  21 0f 20 20 f2 73 74 5f  70 61 75 73 65 0d 03 22  |!.  .st_pause.."|
00006510  30 20 20 e7 73 6f 75 6e  64 5f 74 25 2b 34 35 30  |0  .sound_t%+450|
00006520  3c 91 3a 73 6f 75 6e 64  5f 74 25 3d 91 3a d4 32  |<.:sound_t%=.:.2|
00006530  2c 2d 31 35 2c 26 32 35  30 30 2c 32 30 0d 03 23  |,-15,&2500,20..#|
00006540  0d 20 20 e3 66 25 3d 31  b8 35 0d 03 24 44 20 20  |.  .f%=1.5..$D  |
00006550  70 61 72 72 6f 74 25 28  66 25 2c 30 29 3d 70 61  |parrot%(f%,0)=pa|
00006560  72 72 6f 74 25 28 66 25  2c 30 29 2b 31 3a e7 70  |rrot%(f%,0)+1:.p|
00006570  61 72 72 6f 74 25 28 66  25 2c 30 29 3d 35 3a 70  |arrot%(f%,0)=5:p|
00006580  61 72 72 6f 74 25 28 66  25 2c 30 29 3d 31 0d 03  |arrot%(f%,0)=1..|
00006590  25 23 20 20 70 61 72 72  6f 74 25 28 66 25 2c 31  |%#  parrot%(f%,1|
000065a0  29 3d 70 61 72 72 6f 74  25 28 66 25 2c 31 29 2b  |)=parrot%(f%,1)+|
000065b0  38 0d 03 26 23 20 20 70  61 72 72 6f 74 25 28 66  |8..&#  parrot%(f|
000065c0  25 2c 32 29 3d 70 61 72  72 6f 74 25 28 66 25 2c  |%,2)=parrot%(f%,|
000065d0  32 29 2b 34 0d 03 27 19  20 20 61 6e 5f 78 25 3d  |2)+4..'.  an_x%=|
000065e0  70 61 72 72 6f 74 25 28  66 25 2c 31 29 0d 03 28  |parrot%(f%,1)..(|
000065f0  19 20 20 61 6e 5f 79 25  3d 70 61 72 72 6f 74 25  |.  an_y%=parrot%|
00006600  28 66 25 2c 32 29 0d 03  29 25 20 20 73 65 6c 5f  |(f%,2)..)%  sel_|
00006610  73 70 72 69 74 65 24 3d  70 61 72 24 28 70 61 72  |sprite$=par$(par|
00006620  72 6f 74 25 28 66 25 2c  30 29 29 0d 03 2a 5f 20  |rot%(f%,0))..*_ |
00006630  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  | .plot_sprite_ma|
00006640  73 6b 65 64 28 70 61 72  72 6f 74 5f 6f 25 28 66  |sked(parrot_o%(f|
00006650  25 2c 31 29 2c 70 61 72  72 6f 74 5f 6f 25 28 66  |%,1),parrot_o%(f|
00006660  25 2c 32 29 2c 31 2c 31  2c 31 2c 31 2b 76 67 61  |%,2),1,1,1,1+vga|
00006670  25 2c 62 61 63 6b 24 28  66 25 29 2c 73 70 72 69  |%,back$(f%),spri|
00006680  74 65 5f 61 72 65 61 31  25 29 0d 03 2b 5b 20 20  |te_area1%)..+[  |
00006690  c8 99 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |.."OS_SpriteOp",|
000066a0  26 31 31 30 2c 73 70 72  69 74 65 5f 61 72 65 61  |&110,sprite_area|
000066b0  31 25 2c 62 61 63 6b 24  28 66 25 29 2c 30 2c 61  |1%,back$(f%),0,a|
000066c0  6e 5f 78 25 2c 61 6e 5f  79 25 2c 61 6e 5f 78 25  |n_x%,an_y%,an_x%|
000066d0  2b 77 69 64 74 68 25 2c  61 6e 5f 79 25 2b 68 65  |+width%,an_y%+he|
000066e0  69 67 68 74 25 0d 03 2c  48 20 20 f2 70 6c 6f 74  |ight%..,H  .plot|
000066f0  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 61  |_sprite_masked(a|
00006700  6e 5f 78 25 2c 61 6e 5f  79 25 2c 31 2c 31 2c 31  |n_x%,an_y%,1,1,1|
00006710  2c 31 2c 73 65 6c 5f 73  70 72 69 74 65 24 2c 73  |,1,sel_sprite$,s|
00006720  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 03 2d  |prite_area1%)..-|
00006730  31 20 20 70 61 72 72 6f  74 5f 6f 25 28 66 25 2c  |1  parrot_o%(f%,|
00006740  31 29 3d 61 6e 5f 78 25  3a 70 61 72 72 6f 74 5f  |1)=an_x%:parrot_|
00006750  6f 25 28 66 25 2c 32 29  3d 61 6e 5f 79 25 0d 03  |o%(f%,2)=an_y%..|
00006760  2e 07 20 20 ed 0d 03 2f  13 20 20 f2 65 6e 5f 70  |..  .../.  .en_p|
00006770  61 75 73 65 28 31 30 29  0d 03 30 18 20 20 fd 20  |ause(10)..0.  . |
00006780  70 61 72 72 6f 74 25 28  31 2c 32 29 3e 39 34 30  |parrot%(1,2)>940|
00006790  0d 03 31 09 20 20 ef 32  36 0d 03 32 06 20 cd 0d  |..1.  .26..2. ..|
000067a0  03 33 07 ef 32 36 0d 03  34 13 d4 32 2c 2d 31 35  |.3..26..4..2,-15|
000067b0  2c 26 32 35 30 30 2c 32  30 0d 03 35 16 f2 73 70  |,&2500,20..5..sp|
000067c0  61 63 65 28 39 34 30 2c  33 32 2c 32 2c 30 29 0d  |ace(940,32,2,0).|
000067d0  03 36 18 f2 62 6f 78 28  31 30 30 2c 31 30 2c 31  |.6..box(100,10,1|
000067e0  30 38 30 2c 39 30 29 0d  03 37 0e f2 70 61 75 73  |080,90)..7..paus|
000067f0  65 28 35 30 29 0d 03 38  2b f2 70 72 69 28 31 35  |e(50)..8+.pri(15|
00006800  30 2c 34 32 2c 22 61 6e  64 20 65 78 70 6c 6f 72  |0,42,"and explor|
00006810  65 20 6f 6c 64 20 74 65  6d 70 6c 65 73 2e 22 29  |e old temples.")|
00006820  0d 03 39 16 f2 73 70 61  63 65 28 39 34 30 2c 33  |..9..space(940,3|
00006830  32 2c 32 2c 30 29 0d 03  3a 15 2a 63 68 61 6e 6e  |2,2,0)..:.*chann|
00006840  65 6c 76 6f 69 63 65 20  32 20 32 0d 03 3b 10 2a  |elvoice 2 2..;.*|
00006850  52 4d 4b 49 4c 4c 20 6a  75 6e 67 0d 03 3c 05 e1  |RMKILL jung..<..|
00006860  0d 03 3d 04 0d 03 3e 04  0d 03 3f 0f dd f2 6d 61  |..=...>...?...ma|
00006870  69 6e 5f 67 61 6d 65 0d  03 40 0c 2a 46 58 31 31  |in_game..@.*FX11|
00006880  32 2c 31 0d 03 41 0e f2  6d 61 69 6e 5f 69 6e 66  |2,1..A..main_inf|
00006890  6f 0d 03 42 3c 2a 52 4d  65 6e 73 75 72 65 20 6a  |o..B<*RMensure j|
000068a0  75 69 63 79 20 2a 52 4d  6c 6f 61 64 20 22 3c 43  |uicy *RMload "<C|
000068b0  72 79 73 74 61 6c 32 24  64 69 72 3e 2e 50 54 30  |rystal2$dir>.PT0|
000068c0  2e 73 6f 75 6e 64 2e 6a  75 69 63 79 22 0d 03 43  |.sound.juicy"..C|
000068d0  3e 2a 52 4d 65 6e 73 75  72 65 20 53 6d 62 75 7a  |>*RMensure Smbuz|
000068e0  7a 20 2a 52 4d 6c 6f 61  64 20 22 3c 43 72 79 73  |z *RMload "<Crys|
000068f0  74 61 6c 32 24 64 69 72  3e 2e 50 54 30 2e 73 6f  |tal2$dir>.PT0.so|
00006900  75 6e 64 2e 53 6d 62 75  7a 7a 22 0d 03 44 3a 2a  |und.Smbuzz"..D:*|
00006910  52 4d 65 6e 73 75 72 65  20 62 6f 6e 6b 20 2a 52  |RMensure bonk *R|
00006920  4d 6c 6f 61 64 20 22 3c  43 72 79 73 74 61 6c 32  |Mload "<Crystal2|
00006930  24 64 69 72 3e 2e 50 54  30 2e 73 6f 75 6e 64 2e  |$dir>.PT0.sound.|
00006940  62 6f 6e 6b 22 0d 03 45  19 2a 63 68 61 6e 6e 65  |bonk"..E.*channe|
00006950  6c 76 6f 69 63 65 20 31  20 6a 75 69 63 79 0d 03  |lvoice 1 juicy..|
00006960  46 1a 2a 63 68 61 6e 6e  65 6c 76 6f 69 63 65 20  |F.*channelvoice |
00006970  32 20 53 6d 62 75 7a 7a  0d 03 47 05 f5 0d 03 48  |2 Smbuzz..G....H|
00006980  13 20 20 f2 72 65 73 65  74 5f 63 6f 6e 76 65 79  |.  .reset_convey|
00006990  0d 03 49 28 20 20 6d 61  69 6e 5f 78 25 3d 36 34  |..I(  main_x%=64|
000069a0  3a 6d 61 69 6e 5f 79 25  3d 39 30 30 20 3a f4 20  |:main_y%=900 :. |
000069b0  6c 65 66 74 20 74 6f 70  0d 03 4a 17 20 20 63 6f  |left top..J.  co|
000069c0  6e 76 65 79 5f 78 25 3d  6d 61 69 6e 5f 78 25 0d  |nvey_x%=main_x%.|
000069d0  03 4b 15 20 20 64 72 69  70 5f 70 6f 69 6e 74 65  |.K.  drip_pointe|
000069e0  72 25 3d 31 0d 03 4c 15  20 20 6f 6c 64 5f 64 72  |r%=1..L.  old_dr|
000069f0  69 70 5f 70 74 72 25 3d  30 0d 03 4d 10 20 20 74  |ip_ptr%=0..M.  t|
00006a00  72 69 67 67 65 72 25 3d  30 0d 03 4e 0d 20 20 6d  |rigger%=0..N.  m|
00006a10  6f 76 65 25 3d 30 0d 03  4f 11 20 20 73 6f 75 6e  |ove%=0..O.  soun|
00006a20  64 63 6e 74 25 3d 91 0d  03 50 12 20 20 63 75 70  |dcnt%=...P.  cup|
00006a30  5f 63 6f 75 6e 74 25 3d  31 0d 03 51 19 20 20 62  |_count%=1..Q.  b|
00006a40  6f 74 74 6f 6d 5f 68 65  69 67 68 74 5f 6e 25 3d  |ottom_height_n%=|
00006a50  32 36 0d 03 52 12 20 20  f2 73 65 74 5f 64 72 69  |26..R.  .set_dri|
00006a60  70 5f 73 70 0d 03 53 0d  20 20 74 65 73 74 25 3d  |p_sp..S.  test%=|
00006a70  31 0d 03 54 13 20 20 64  69 73 70 6c 61 79 5f 78  |1..T.  display_x|
00006a80  25 3d 36 34 0d 03 55 14  20 20 64 69 73 70 6c 61  |%=64..U.  displa|
00006a90  79 5f 79 25 3d 37 30 30  0d 03 56 3c 20 20 63 75  |y_y%=700..V<  cu|
00006aa0  70 5f 72 65 6c 65 61 73  65 25 3d 30 20 20 20 20  |p_release%=0    |
00006ab0  3a f4 20 30 20 6f 66 66  20 31 20 77 61 6e 74 69  |:. 0 off 1 wanti|
00006ac0  6e 67 20 72 65 6c 65 61  73 65 20 32 20 66 61 6c  |ng release 2 fal|
00006ad0  6c 69 6e 67 0d 03 57 3c  20 20 6c 69 64 5f 72 65  |ling..W<  lid_re|
00006ae0  6c 65 61 73 65 25 3d 30  20 20 20 20 3a f4 20 30  |lease%=0    :. 0|
00006af0  20 6f 66 66 20 31 20 77  61 6e 74 69 6e 67 20 72  | off 1 wanting r|
00006b00  65 6c 65 61 73 65 20 32  20 66 61 6c 6c 69 6e 67  |elease 2 falling|
00006b10  0d 03 58 11 20 20 63 75  70 5f 64 72 6f 70 25 3d  |..X.  cup_drop%=|
00006b20  30 0d 03 59 11 20 20 6c  69 64 5f 64 72 6f 70 25  |0..Y.  lid_drop%|
00006b30  3d 30 0d 03 5a 15 20 20  61 6e 5f 63 6f 6e 5f 6d  |=0..Z.  an_con_m|
00006b40  6f 76 65 25 3d 34 38 0d  03 5b 11 20 20 63 6f 6e  |ove%=48..[.  con|
00006b50  5f 6d 6f 76 65 25 3d 30  0d 03 5c 11 20 20 6f 76  |_move%=0..\.  ov|
00006b60  65 72 6c 6f 61 64 25 3d  30 0d 03 5d 19 20 20 6f  |erload%=0..].  o|
00006b70  6b 5f 6c 69 64 25 3d 30  3a 6f 6b 5f 63 75 70 25  |k_lid%=0:ok_cup%|
00006b80  3d 30 0d 03 5e 0e 20 20  63 75 70 5f 74 25 3d 91  |=0..^.  cup_t%=.|
00006b90  0d 03 5f 0e 20 20 6c 69  64 5f 74 25 3d 91 0d 03  |.._.  lid_t%=...|
00006ba0  60 0f 20 20 6d 6f 76 65  5f 74 25 3d 91 0d 03 61  |`.  move_t%=...a|
00006bb0  0e 20 20 2a 46 58 31 31  32 2c 31 0d 03 62 0e 20  |.  *FX112,1..b. |
00006bc0  20 f2 64 69 73 70 6c 61  79 0d 03 63 0e 20 20 2a  | .display..c.  *|
00006bd0  46 58 31 31 32 2c 32 0d  03 64 07 20 20 db 0d 03  |FX112,2..d.  ...|
00006be0  65 0b 20 20 f2 67 72 69  64 0d 03 66 09 20 20 c8  |e.  .grid..f.  .|
00006bf0  97 ee 0d 03 67 17 20 20  61 74 74 65 6d 70 74 25  |....g.  attempt%|
00006c00  3d 30 3a 6f 6b 24 3d 22  22 0d 03 68 0f 20 20 f2  |=0:ok$=""..h.  .|
00006c10  6d 61 69 6e 5f 74 77 6f  0d 03 69 13 20 20 f2 6f  |main_two..i.  .o|
00006c20  75 74 5f 62 75 74 74 73  28 30 29 0d 03 6a 07 20  |ut_butts(0)..j. |
00006c30  20 f5 0d 03 6b 04 0d 03  6c 11 20 20 20 20 f2 73  | ...k...l.    .s|
00006c40  74 5f 70 61 75 73 65 0d  03 6d 3a 20 20 20 20 64  |t_pause..m:    d|
00006c50  72 69 70 25 28 30 2c 35  29 3d 64 72 69 70 25 28  |rip%(0,5)=drip%(|
00006c60  30 2c 35 29 2b 31 3a e7  64 72 69 70 25 28 30 2c  |0,5)+1:.drip%(0,|
00006c70  35 29 3d 33 20 64 72 69  70 25 28 30 2c 35 29 3d  |5)=3 drip%(0,5)=|
00006c80  31 0d 03 6e 10 20 20 20  20 2a 46 58 31 31 32 2c  |1..n.    *FX112,|
00006c90  31 0d 03 6f 27 20 20 20  20 f4 20 50 52 49 4e 54  |1..o'    . PRINT|
00006ca0  54 41 42 28 30 2c 30 29  3b 6f 6b 5f 63 75 70 25  |TAB(0,0);ok_cup%|
00006cb0  2c 6f 6b 5f 6c 69 64 25  0d 03 70 13 20 20 20 20  |,ok_lid%..p.    |
00006cc0  f2 6f 75 74 5f 73 74 61  74 75 73 0d 03 71 10 20  |.out_status..q. |
00006cd0  20 20 20 2a 46 58 31 31  32 2c 32 0d 03 72 16 20  |   *FX112,2..r. |
00006ce0  20 20 20 f2 6c 6f 6f 6b  5f 61 74 5f 77 69 72 65  |   .look_at_wire|
00006cf0  73 0d 03 73 5f 20 20 20  20 f2 6d 6f 76 65 5f 62  |s..s_    .move_b|
00006d00  6c 6f 63 6b 28 73 63 72  65 65 6e 5f 74 77 6f 25  |lock(screen_two%|
00006d10  2c 36 34 30 2c 61 6e 5f  63 6f 6e 5f 6d 6f 76 65  |,640,an_con_move|
00006d20  25 2c 73 63 72 65 65 6e  5f 74 77 6f 25 2c 6d 61  |%,screen_two%,ma|
00006d30  69 6e 5f 78 25 2c 34 38  2b 6d 61 69 6e 5f 79 25  |in_x%,48+main_y%|
00006d40  2d 28 36 34 2a 37 29 2c  31 34 34 2c 31 30 30 29  |-(64*7),144,100)|
00006d50  0d 03 74 10 20 20 20 20  f2 72 65 6c 65 61 73 65  |..t.    .release|
00006d60  0d 03 75 13 20 20 20 20  f2 73 74 61 72 74 5f 6d  |..u.    .start_m|
00006d70  6f 76 65 0d 03 76 0f 20  20 20 20 f2 63 6f 6e 76  |ove..v.    .conv|
00006d80  65 79 0d 03 77 13 20 20  20 20 f2 63 68 65 63 6b  |ey..w.    .check|
00006d90  5f 6d 61 69 6e 0d 03 78  17 20 20 20 20 f2 70 75  |_main..x.    .pu|
00006da0  74 5f 69 6e 5f 73 70 72  69 74 65 73 0d 03 79 14  |t_in_sprites..y.|
00006db0  20 20 20 20 f2 63 68 65  63 6b 5f 64 72 69 70 73  |    .check_drips|
00006dc0  0d 03 7a 12 20 20 20 20  f2 64 72 6f 70 5f 65 6e  |..z.    .drop_en|
00006dd0  64 73 0d 03 7b 6e 20 20  20 20 f2 6d 6f 76 65 5f  |ds..{n    .move_|
00006de0  62 6c 6f 63 6b 28 73 63  72 65 65 6e 5f 74 77 6f  |block(screen_two|
00006df0  25 2c 6d 61 69 6e 5f 78  25 2c 34 38 2b 6d 61 69  |%,main_x%,48+mai|
00006e00  6e 5f 79 25 2d 28 36 34  2a 37 29 2c 73 63 72 65  |n_y%-(64*7),scre|
00006e10  65 6e 5f 6f 6e 65 25 2c  64 69 73 70 6c 61 79 5f  |en_one%,display_|
00006e20  78 25 2c 34 38 2b 64 69  73 70 6c 61 79 5f 79 25  |x%,48+display_y%|
00006e30  2d 28 36 34 2a 37 29 2c  31 34 34 2c 31 30 30 29  |-(64*7),144,100)|
00006e40  0d 03 7c 10 20 20 20 20  2a 66 78 31 31 32 2c 31  |..|.    *fx112,1|
00006e50  0d 03 7d 15 20 20 20 20  f2 65 6e 5f 70 61 75 73  |..}.    .en_paus|
00006e60  65 28 32 30 29 0d 03 7e  20 20 20 fd 20 61 74 74  |e(20)..~   . att|
00006e70  65 6d 70 74 25 3d 31 20  84 20 6f 76 65 72 6c 6f  |empt%=1 . overlo|
00006e80  61 64 25 3d 31 0d 03 7f  11 e7 61 74 74 65 6d 70  |ad%=1.....attemp|
00006e90  74 25 3d 31 20 8c 0d 03  80 0f 20 20 20 2a 46 58  |t%=1 .....   *FX|
00006ea0  31 31 32 2c 32 0d 03 81  0b 20 20 20 fb 31 32 39  |112,2....   .129|
00006eb0  0d 03 82 08 20 20 20 db  0d 03 83 17 20 20 20 e7  |....   .....   .|
00006ec0  56 25 3d 30 20 f2 74 6f  70 5f 62 6c 61 6e 6b 0d  |V%=0 .top_blank.|
00006ed0  03 84 24 20 20 20 41 25  3d 70 69 63 74 75 72 65  |..$   A%=picture|
00006ee0  31 25 2b 28 31 30 32 34  2a 31 35 29 3a d6 64 72  |1%+(1024*15):.dr|
00006ef0  61 77 25 0d 03 85 11 20  20 20 e3 66 25 3d 30 b8  |aw%....   .f%=0.|
00006f00  38 20 88 32 0d 03 86 4e  20 20 20 20 ec 33 31 2d  |8 .2...N    .31-|
00006f10  66 25 2c 33 32 2d 66 25  3a df 31 32 34 39 2b 66  |f%,32-f%:.1249+f|
00006f20  25 2c 33 32 2d 66 25 3a  df 31 32 34 39 2b 66 25  |%,32-f%:.1249+f%|
00006f30  2c 39 33 33 2b 66 25 3a  df 33 31 2d 66 25 2c 39  |,933+f%:.31-f%,9|
00006f40  33 33 2b 66 25 3a df 33  31 2d 66 25 2c 33 32 2d  |33+f%:.31-f%,32-|
00006f50  66 25 0d 03 87 08 20 20  20 ed 0d 03 88 40 20 20  |f%....   ....@  |
00006f60  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |  .plot_sprite_m|
00006f70  61 73 6b 65 64 28 33 30  38 2c 31 30 30 2c 31 2c  |asked(308,100,1,|
00006f80  31 2c 31 2c 31 2c 22 62  6f 79 22 2c 73 70 72 69  |1,1,1,"boy",spri|
00006f90  74 65 5f 61 72 65 61 31  25 29 0d 03 89 41 20 20  |te_area1%)...A  |
00006fa0  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |  .plot_sprite_m|
00006fb0  61 73 6b 65 64 28 34 33  36 2c 31 30 30 2c 31 2c  |asked(436,100,1,|
00006fc0  31 2c 31 2c 31 2c 22 67  69 72 6c 22 2c 73 70 72  |1,1,1,"girl",spr|
00006fd0  69 74 65 5f 61 72 65 61  31 25 29 0d 03 8a 1c 20  |ite_area1%).... |
00006fe0  20 20 e3 66 66 25 3d 33  20 b8 20 63 6f 6e 76 65  |  .ff%=3 . conve|
00006ff0  79 25 28 39 2c 32 29 0d  03 8b 1e 20 20 20 20 73  |y%(9,2)....    s|
00007000  70 72 69 74 65 24 3d 63  6f 6e 76 65 79 24 28 39  |prite$=convey$(9|
00007010  2c 66 66 25 29 0d 03 8c  36 20 20 20 20 e7 73 70  |,ff%)...6    .sp|
00007020  72 69 74 65 24 3d 22 63  75 70 22 3a 73 70 72 69  |rite$="cup":spri|
00007030  74 65 24 3d 73 70 72 69  74 65 24 2b c3 28 63 6f  |te$=sprite$+.(co|
00007040  6e 76 65 79 25 28 39 2c  31 29 29 0d 03 8d 56 20  |nvey%(9,1))...V |
00007050  20 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |   .plot_sprite_|
00007060  6d 61 73 6b 65 64 28 35  31 30 2c 36 36 38 2d 28  |masked(510,668-(|
00007070  63 6f 6e 76 65 79 25 28  39 2c 66 66 25 29 2a 31  |convey%(9,ff%)*1|
00007080  36 29 2c 31 2c 31 2c 31  2c 31 2c 73 70 72 69 74  |6),1,1,1,1,sprit|
00007090  65 24 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |e$,sprite_area1%|
000070a0  29 0d 03 8e 08 20 20 20  ed 0d 03 8f 0f 20 20 20  |)....   .....   |
000070b0  6f 6b 24 3d 22 6e 6f 22  0d 03 90 18 20 20 20 e7  |ok$="no"....   .|
000070c0  63 6f 6e 76 65 79 25 28  39 2c 32 29 3d 34 20 8c  |convey%(9,2)=4 .|
000070d0  0d 03 91 3b 20 20 20 20  20 e7 63 6f 6e 76 65 79  |...;     .convey|
000070e0  24 28 39 2c 33 29 3d 22  63 75 70 36 22 20 80 20  |$(9,3)="cup6" . |
000070f0  63 6f 6e 76 65 79 24 28  39 2c 34 29 3d 22 6c 69  |convey$(9,4)="li|
00007100  64 22 20 6f 6b 24 3d 22  6f 6b 22 0d 03 92 3b 20  |d" ok$="ok"...; |
00007110  20 20 20 20 e7 63 6f 6e  76 65 79 24 28 39 2c 33  |    .convey$(9,3|
00007120  29 3d 22 63 75 70 35 22  20 80 20 63 6f 6e 76 65  |)="cup5" . conve|
00007130  79 24 28 39 2c 34 29 3d  22 6c 69 64 22 20 6f 6b  |y$(9,4)="lid" ok|
00007140  24 3d 22 6f 6b 22 0d 03  93 3c 20 20 20 20 20 e7  |$="ok"...<     .|
00007150  63 6f 6e 76 65 79 24 28  39 2c 33 29 3d 22 63 75  |convey$(9,3)="cu|
00007160  70 34 22 20 80 20 63 6f  6e 76 65 79 24 28 39 2c  |p4" . convey$(9,|
00007170  34 29 3d 22 6c 69 64 22  20 6f 6b 24 3d 22 6e 6f  |4)="lid" ok$="no|
00007180  74 22 0d 03 94 3c 20 20  20 20 20 e7 63 6f 6e 76  |t"...<     .conv|
00007190  65 79 24 28 39 2c 33 29  3d 22 63 75 70 33 22 20  |ey$(9,3)="cup3" |
000071a0  80 20 63 6f 6e 76 65 79  24 28 39 2c 34 29 3d 22  |. convey$(9,4)="|
000071b0  6c 69 64 22 20 6f 6b 24  3d 22 6e 6f 74 22 0d 03  |lid" ok$="not"..|
000071c0  95 3c 20 20 20 20 20 e7  63 6f 6e 76 65 79 24 28  |.<     .convey$(|
000071d0  39 2c 33 29 3d 22 63 75  70 32 22 20 80 20 63 6f  |9,3)="cup2" . co|
000071e0  6e 76 65 79 24 28 39 2c  34 29 3d 22 6c 69 64 22  |nvey$(9,4)="lid"|
000071f0  20 6f 6b 24 3d 22 6e 6f  74 22 0d 03 96 08 20 20  | ok$="not"....  |
00007200  20 cd 0d 03 97 1c 20 20  20 f2 62 6f 78 28 32 30  | .....   .box(20|
00007210  30 2c 37 30 30 2c 38 38  30 2c 32 30 30 29 0d 03  |0,700,880,200)..|
00007220  98 13 20 20 20 e7 20 6f  6b 24 3d 22 6e 6f 22 20  |..   . ok$="no" |
00007230  8c 0d 03 99 2d 20 20 20  20 20 f2 70 72 69 28 32  |....-     .pri(2|
00007240  31 38 2c 38 32 30 2c 22  54 68 69 73 20 69 73 20  |18,820,"This is |
00007250  6e 6f 74 20 63 6f 72 72  65 63 74 21 22 29 0d 03  |not correct!")..|
00007260  9a 33 20 20 20 20 20 f2  70 72 69 28 32 31 38 2c  |.3     .pri(218,|
00007270  37 35 30 2c 22 4c 6f 6f  6b 20 61 74 20 77 68 61  |750,"Look at wha|
00007280  74 20 69 74 20 73 68 6f  75 6c 64 20 62 65 2e 22  |t it should be."|
00007290  29 0d 03 9b 1e 20 20 20  20 20 f2 62 6f 78 28 38  |)....     .box(8|
000072a0  34 30 2c 34 38 30 2c 32  30 30 2c 32 30 30 29 0d  |40,480,200,200).|
000072b0  03 9c 33 20 20 20 20 20  c8 99 22 4f 53 5f 53 70  |..3     .."OS_Sp|
000072c0  72 69 74 65 4f 70 22 2c  26 31 32 31 2c 73 70 72  |riteOp",&121,spr|
000072d0  69 74 65 5f 61 72 65 61  31 25 2c 22 61 72 72 6f  |ite_area1%,"arro|
000072e0  77 22 0d 03 9d 3c 20 20  20 20 20 f2 70 6c 6f 74  |w"...<     .plot|
000072f0  5f 73 70 72 69 74 65 28  37 39 30 2c 37 32 36 2c  |_sprite(790,726,|
00007300  31 2c 31 2c 31 2c 31 2c  22 61 72 72 6f 77 22 2c  |1,1,1,1,"arrow",|
00007310  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 03  |sprite_area1%)..|
00007320  9e 3f 20 20 20 20 20 f2  70 6c 6f 74 5f 73 70 72  |.?     .plot_spr|
00007330  69 74 65 28 38 37 30 2c  35 30 36 2c 31 2c 31 2c  |ite(870,506,1,1,|
00007340  31 2c 31 2c 22 65 78 70  6c 61 69 6e 33 22 2c 73  |1,1,"explain3",s|
00007350  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 03 9f  |prite_area1%)...|
00007360  33 20 20 20 20 20 c8 99  22 4f 53 5f 53 70 72 69  |3     .."OS_Spri|
00007370  74 65 4f 70 22 2c 26 31  32 31 2c 73 70 72 69 74  |teOp",&121,sprit|
00007380  65 5f 61 72 65 61 31 25  2c 22 61 72 72 6f 77 22  |e_area1%,"arrow"|
00007390  0d 03 a0 08 20 20 20 cd  0d 03 a1 14 20 20 20 e7  |....   .....   .|
000073a0  20 6f 6b 24 3d 22 6e 6f  74 22 20 8c 0d 03 a2 35  | ok$="not" ....5|
000073b0  20 20 20 20 20 f2 70 72  69 28 32 31 38 2c 38 32  |     .pri(218,82|
000073c0  30 2c 22 54 68 65 72 65  20 69 73 20 6e 6f 74 20  |0,"There is not |
000073d0  65 6e 6f 75 67 68 20 64  72 69 6e 6b 20 69 6e 22  |enough drink in"|
000073e0  29 0d 03 a3 22 20 20 20  20 20 f2 70 72 69 28 32  |)..."     .pri(2|
000073f0  31 38 2c 37 35 30 2c 22  74 68 69 73 20 63 75 70  |18,750,"this cup|
00007400  2e 22 29 0d 03 a4 1e 20  20 20 20 20 f2 62 6f 78  |.")....     .box|
00007410  28 38 34 30 2c 34 38 30  2c 32 30 30 2c 32 30 30  |(840,480,200,200|
00007420  29 0d 03 a5 3f 20 20 20  20 20 f2 70 6c 6f 74 5f  |)...?     .plot_|
00007430  73 70 72 69 74 65 28 38  37 30 2c 35 30 36 2c 31  |sprite(870,506,1|
00007440  2c 31 2c 31 2c 31 2c 22  65 78 70 6c 61 69 6e 33  |,1,1,1,"explain3|
00007450  22 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 29  |",sprite_area1%)|
00007460  0d 03 a6 08 20 20 20 cd  0d 03 a7 13 20 20 20 e7  |....   .....   .|
00007470  20 6f 6b 24 3d 22 6f 6b  22 20 8c 0d 03 a8 23 20  | ok$="ok" ....# |
00007480  20 20 20 20 f2 70 72 69  28 32 32 38 2c 38 32 30  |    .pri(228,820|
00007490  2c 22 57 65 6c 6c 20 64  6f 6e 65 2e 22 29 0d 03  |,"Well done.")..|
000074a0  a9 36 20 20 20 20 20 f2  70 72 69 28 32 32 38 2c  |.6     .pri(228,|
000074b0  37 35 30 2c 22 54 68 65  20 6d 61 63 68 69 6e 65  |750,"The machine|
000074c0  20 68 61 73 20 6d 61 64  65 20 61 20 64 72 69 6e  | has made a drin|
000074d0  6b 2e 22 29 0d 03 aa 08  20 20 20 cd 0d 03 ab 32  |k.")....   ....2|
000074e0  20 20 20 42 25 3d 73 63  72 65 65 6e 5f 74 77 6f  |   B%=screen_two|
000074f0  25 3a 43 25 3d 73 63 72  65 65 6e 5f 6f 6e 65 25  |%:C%=screen_one%|
00007500  3a d6 73 61 76 65 5f 73  63 72 65 65 6e 25 0d 03  |:.save_screen%..|
00007510  ac 05 cd 0d 03 ad 1f e7  6f 76 65 72 6c 6f 61 64  |........overload|
00007520  25 3d 31 20 80 20 61 74  74 65 6d 70 74 25 3d 30  |%=1 . attempt%=0|
00007530  20 8c 0d 03 ae 0f 20 20  20 2a 66 78 31 31 32 2c  | .....   *fx112,|
00007540  31 0d 03 af 1c 20 20 20  f2 62 6f 78 28 32 30 30  |1....   .box(200|
00007550  2c 34 30 30 2c 38 38 30  2c 32 30 30 29 0d 03 b0  |,400,880,200)...|
00007560  39 20 20 20 f2 70 72 69  28 32 31 38 2c 35 32 30  |9   .pri(218,520|
00007570  2c 22 44 61 6e 67 65 72  21 20 44 6f 20 6e 6f 74  |,"Danger! Do not|
00007580  20 70 75 74 20 74 6f 6f  20 6d 75 63 68 20 6f 6e  | put too much on|
00007590  20 74 68 65 22 29 0d 03  b1 25 20 20 20 f2 70 72  | the")...%   .pr|
000075a0  69 28 32 31 38 2c 34 35  30 2c 22 63 6f 6e 76 65  |i(218,450,"conve|
000075b0  79 65 72 20 62 65 6c 74  2e 22 29 0d 03 b2 05 cd  |yer belt.").....|
000075c0  0d 03 b3 0d 20 2a 46 58  31 31 32 2c 31 0d 03 b4  |.... *FX112,1...|
000075d0  16 20 f2 73 70 61 63 65  28 39 30 30 2c 39 2c 30  |. .space(900,9,0|
000075e0  2c 30 29 0d 03 b5 11 20  f2 72 65 73 65 74 5f 64  |,0).... .reset_d|
000075f0  72 69 70 73 0d 03 b6 1f  20 e7 20 6f 6b 24 3c 3e  |rips.... . ok$<>|
00007600  22 6f 6b 22 20 f2 64 72  61 77 5f 69 6e 5f 77 69  |"ok" .draw_in_wi|
00007610  72 65 73 0d 03 b7 3c 20  e7 20 6f 6b 24 3c 3e 22  |res...< . ok$<>"|
00007620  6f 6b 22 20 42 25 3d 73  63 72 65 65 6e 5f 74 77  |ok" B%=screen_tw|
00007630  6f 25 3a 43 25 3d 73 63  72 65 65 6e 5f 6f 6e 65  |o%:C%=screen_one|
00007640  25 3a d6 73 61 76 65 5f  73 63 72 65 65 6e 25 0d  |%:.save_screen%.|
00007650  03 b8 09 20 fb 31 32 38  0d 03 b9 0e fd 20 6f 6b  |... .128..... ok|
00007660  24 3d 22 6f 6b 22 0d 03  ba 0c 2a 46 58 31 31 32  |$="ok"....*FX112|
00007670  2c 31 0d 03 bb 0c 2a 46  58 31 31 33 2c 31 0d 03  |,1....*FX113,1..|
00007680  bc 18 20 20 20 2a 63 68  61 6e 6e 65 6c 76 6f 69  |..   *channelvoi|
00007690  63 65 20 31 20 31 0d 03  bd 14 20 20 20 2a 52 4d  |ce 1 1....   *RM|
000076a0  6b 69 6c 6c 20 6a 75 69  63 79 0d 03 be 18 20 20  |kill juicy....  |
000076b0  20 2a 63 68 61 6e 6e 65  6c 76 6f 69 63 65 20 32  | *channelvoice 2|
000076c0  20 32 0d 03 bf 15 20 20  20 2a 52 4d 6b 69 6c 6c  | 2....   *RMkill|
000076d0  20 53 6d 62 75 7a 7a 0d  03 c0 13 20 20 20 2a 52  | Smbuzz....   *R|
000076e0  4d 6b 69 6c 6c 20 62 6f  6e 6b 0d 03 c1 05 e1 0d  |Mkill bonk......|
000076f0  03 c2 04 0d 03 c3 11 dd  f2 72 65 73 65 74 5f 64  |.........reset_d|
00007700  72 69 70 73 0d 03 c4 0b  e3 66 25 3d 30 b8 35 0d  |rips.....f%=0.5.|
00007710  03 c5 20 e3 66 66 25 3d  30 b8 35 3a 64 72 69 70  |.. .ff%=0.5:drip|
00007720  25 28 66 25 2c 66 66 25  29 3d 30 3a ed 3a ed 0d  |%(f%,ff%)=0:.:..|
00007730  03 c6 05 e1 0d 03 c7 04  0d 03 c8 13 dd f2 6c 6f  |..............lo|
00007740  6f 6b 5f 61 74 5f 77 69  72 65 73 0d 03 c9 53 e7  |ok_at_wires...S.|
00007750  6f 75 74 5f 63 69 72 25  28 39 2d 6f 75 74 5f 77  |out_cir%(9-out_w|
00007760  69 72 65 25 28 31 29 29  3d 31 20 80 20 63 75 70  |ire%(1))=1 . cup|
00007770  5f 72 65 6c 65 61 73 65  25 3d 30 20 80 20 6c 69  |_release%=0 . li|
00007780  64 5f 72 65 6c 65 61 73  65 25 3d 30 20 80 20 6d  |d_release%=0 . m|
00007790  6f 76 65 5f 74 25 2b 31  30 30 3c 91 20 8c 0d 03  |ove_t%+100<. ...|
000077a0  ca 1c 20 20 20 63 6f 6e  5f 6d 6f 76 65 25 3d 31  |..   con_move%=1|
000077b0  3a 6d 6f 76 65 5f 74 25  3d 91 0d 03 cb 05 cd 0d  |:move_t%=.......|
000077c0  03 cc 53 e7 6f 75 74 5f  63 69 72 25 28 39 2d 6f  |..S.out_cir%(9-o|
000077d0  75 74 5f 77 69 72 65 25  28 32 29 29 3d 31 20 80  |ut_wire%(2))=1 .|
000077e0  20 63 75 70 5f 72 65 6c  65 61 73 65 25 3d 30 20  | cup_release%=0 |
000077f0  80 20 6c 69 64 5f 72 65  6c 65 61 73 65 25 3d 30  |. lid_release%=0|
00007800  20 80 20 6d 6f 76 65 5f  74 25 2b 31 30 30 3c 91  | . move_t%+100<.|
00007810  20 8c 0d 03 cd 1d 20 20  20 63 6f 6e 5f 6d 6f 76  | .....   con_mov|
00007820  65 25 3d 2d 31 3a 6d 6f  76 65 5f 74 25 3d 91 0d  |e%=-1:move_t%=..|
00007830  03 ce 05 cd 0d 03 cf 57  e7 6f 75 74 5f 63 69 72  |.......W.out_cir|
00007840  25 28 39 2d 6f 75 74 5f  77 69 72 65 25 28 35 29  |%(9-out_wire%(5)|
00007850  29 3d 31 20 80 20 63 75  70 5f 72 65 6c 65 61 73  |)=1 . cup_releas|
00007860  65 25 3d 30 20 80 20 63  75 70 5f 74 25 2b 34 30  |e%=0 . cup_t%+40|
00007870  30 3c 91 20 80 20 6d 6f  76 65 25 3d 30 20 80 20  |0<. . move%=0 . |
00007880  6f 6b 5f 63 75 70 25 3d  30 20 8c 0d 03 d0 1e 20  |ok_cup%=0 ..... |
00007890  20 20 63 75 70 5f 72 65  6c 65 61 73 65 25 3d 31  |  cup_release%=1|
000078a0  3a 63 75 70 5f 74 25 3d  91 0d 03 d1 05 cd 0d 03  |:cup_t%=........|
000078b0  d2 30 e7 6f 75 74 5f 63  69 72 25 28 39 2d 6f 75  |.0.out_cir%(9-ou|
000078c0  74 5f 77 69 72 65 25 28  34 29 29 3d 31 20 80 20  |t_wire%(4))=1 . |
000078d0  64 72 69 70 25 28 30 2c  30 29 3d 30 20 8c 0d 03  |drip%(0,0)=0 ...|
000078e0  d3 12 20 20 20 f2 73 74  61 72 74 5f 6d 61 69 6e  |..   .start_main|
000078f0  0d 03 d4 05 cd 0d 03 d5  41 e7 6f 75 74 5f 63 69  |........A.out_ci|
00007900  72 25 28 39 2d 6f 75 74  5f 77 69 72 65 25 28 34  |r%(9-out_wire%(4|
00007910  29 29 3d 30 20 80 20 28  64 72 69 70 25 28 30 2c  |))=0 . (drip%(0,|
00007920  30 29 3d 31 20 84 20 64  72 69 70 25 28 30 2c 30  |0)=1 . drip%(0,0|
00007930  29 3d 32 29 20 8c 0d 03  d6 11 20 20 20 f2 73 74  |)=2) .....   .st|
00007940  6f 70 5f 6d 61 69 6e 0d  03 d7 05 cd 0d 03 d8 57  |op_main........W|
00007950  e7 6f 75 74 5f 63 69 72  25 28 39 2d 6f 75 74 5f  |.out_cir%(9-out_|
00007960  77 69 72 65 25 28 33 29  29 3d 31 20 80 20 6c 69  |wire%(3))=1 . li|
00007970  64 5f 72 65 6c 65 61 73  65 25 3d 30 20 80 20 6c  |d_release%=0 . l|
00007980  69 64 5f 74 25 2b 34 30  30 3c 91 20 80 20 6d 6f  |id_t%+400<. . mo|
00007990  76 65 25 3d 30 20 80 20  6f 6b 5f 6c 69 64 25 3d  |ve%=0 . ok_lid%=|
000079a0  30 20 8c 0d 03 d9 1e 20  20 20 6c 69 64 5f 72 65  |0 .....   lid_re|
000079b0  6c 65 61 73 65 25 3d 31  3a 6c 69 64 5f 74 25 3d  |lease%=1:lid_t%=|
000079c0  91 0d 03 da 05 cd 0d 03  db 3f e7 6f 75 74 5f 63  |.........?.out_c|
000079d0  69 72 25 28 39 2d 6f 75  74 5f 77 69 72 65 25 28  |ir%(9-out_wire%(|
000079e0  32 29 29 3d 31 20 80 20  20 6f 75 74 5f 63 69 72  |2))=1 .  out_cir|
000079f0  25 28 39 2d 6f 75 74 5f  77 69 72 65 25 28 31 29  |%(9-out_wire%(1)|
00007a00  29 3d 31 20 8c 0d 03 dc  0d 6d 6f 76 65 5f 74 25  |)=1 .....move_t%|
00007a10  3d 91 0d 03 dd 17 6f 6b  5f 6c 69 64 25 3d 30 3a  |=.....ok_lid%=0:|
00007a20  6f 6b 5f 63 75 70 25 3d  30 0d 03 de 05 cd 0d 03  |ok_cup%=0.......|
00007a30  df 3e e7 6f 75 74 5f 63  69 72 25 28 39 2d 6f 75  |.>.out_cir%(9-ou|
00007a40  74 5f 77 69 72 65 25 28  32 29 29 3d 30 20 80 20  |t_wire%(2))=0 . |
00007a50  6f 75 74 5f 63 69 72 25  28 39 2d 6f 75 74 5f 77  |out_cir%(9-out_w|
00007a60  69 72 65 25 28 31 29 29  3d 30 20 8c 0d 03 e0 17  |ire%(1))=0 .....|
00007a70  6f 6b 5f 6c 69 64 25 3d  30 3a 6f 6b 5f 63 75 70  |ok_lid%=0:ok_cup|
00007a80  25 3d 30 0d 03 e1 05 cd  0d 03 e2 04 0d 03 e3 05  |%=0.............|
00007a90  e1 0d 03 e4 04 0d 03 e5  14 dd f2 6f 75 74 5f 62  |...........out_b|
00007aa0  75 74 74 73 28 73 6f 25  29 0d 03 e6 10 74 6f 74  |utts(so%)....tot|
00007ab0  61 6c 5f 62 75 74 25 3d  38 0d 03 e7 16 e3 66 25  |al_but%=8.....f%|
00007ac0  3d 31 20 b8 20 74 6f 74  61 6c 5f 62 75 74 25 0d  |=1 . total_but%.|
00007ad0  03 e8 13 62 75 74 25 28  66 25 2c 30 29 3d 31 31  |...but%(f%,0)=11|
00007ae0  39 30 0d 03 e9 1e 62 75  74 25 28 66 25 2c 31 29  |90....but%(f%,1)|
00007af0  3d 37 37 30 2d 28 28 66  25 2d 31 29 2a 39 36 29  |=770-((f%-1)*96)|
00007b00  0d 03 ea 11 62 75 74 25  28 66 25 2c 32 29 3d 33  |....but%(f%,2)=3|
00007b10  35 0d 03 eb 11 62 75 74  25 28 66 25 2c 33 29 3d  |5....but%(f%,3)=|
00007b20  34 30 0d 03 ec 10 62 75  74 25 28 66 25 2c 34 29  |40....but%(f%,4)|
00007b30  3d 30 0d 03 ed 12 6f 75  74 5f 63 69 72 25 28 66  |=0....out_cir%(f|
00007b40  25 29 3d 30 0d 03 ee 05  ed 0d 03 ef 16 e3 66 25  |%)=0..........f%|
00007b50  3d 31 20 b8 20 74 6f 74  61 6c 5f 62 75 74 25 0d  |=1 . total_but%.|
00007b60  03 f0 55 20 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |..U   .plot_spri|
00007b70  74 65 28 62 75 74 25 28  66 25 2c 30 29 2c 62 75  |te(but%(f%,0),bu|
00007b80  74 25 28 66 25 2c 31 29  2c 31 2c 31 2c 31 2c 31  |t%(f%,1),1,1,1,1|
00007b90  2c 22 6f 6e 22 2b c3 28  6f 75 74 5f 63 69 72 25  |,"on"+.(out_cir%|
00007ba0  28 66 25 29 29 2c 73 70  72 69 74 65 5f 61 72 65  |(f%)),sprite_are|
00007bb0  61 31 25 29 0d 03 f1 19  20 20 20 e7 73 6f 25 3d  |a1%)....   .so%=|
00007bc0  31 20 3a f2 70 61 75 73  65 28 31 30 29 0d 03 f2  |1 :.pause(10)...|
00007bd0  05 ed 0d 03 f3 05 e1 0d  03 f4 04 0d 03 f5 04 0d  |................|
00007be0  03 f6 10 dd f2 6f 75 74  5f 73 74 61 74 75 73 0d  |.....out_status.|
00007bf0  03 f7 0a 73 65 6c 25 3d  30 0d 03 f8 11 c8 97 6d  |...sel%=0......m|
00007c00  78 25 2c 6d 79 25 2c 6d  63 25 0d 03 f9 1a e3 62  |x%,my%,mc%.....b|
00007c10  75 74 5f 6e 25 3d 31 20  b8 20 74 6f 74 61 6c 5f  |ut_n%=1 . total_|
00007c20  62 75 74 25 0d 03 fa 9a  20 20 20 e7 6d 78 25 3c  |but%....   .mx%<|
00007c30  62 75 74 25 28 62 75 74  5f 6e 25 2c 30 29 2b 62  |but%(but_n%,0)+b|
00007c40  75 74 25 28 62 75 74 5f  6e 25 2c 34 29 20 84 20  |ut%(but_n%,4) . |
00007c50  6d 78 25 3e 28 62 75 74  25 28 62 75 74 5f 6e 25  |mx%>(but%(but_n%|
00007c60  2c 30 29 2b 62 75 74 25  28 62 75 74 5f 6e 25 2c  |,0)+but%(but_n%,|
00007c70  32 29 29 2b 62 75 74 25  28 62 75 74 5f 6e 25 2c  |2))+but%(but_n%,|
00007c80  34 29 20 84 20 6d 79 25  3c 62 75 74 25 28 62 75  |4) . my%<but%(bu|
00007c90  74 5f 6e 25 2c 31 29 20  84 20 6d 79 25 3e 28 62  |t_n%,1) . my%>(b|
00007ca0  75 74 25 28 62 75 74 5f  6e 25 2c 31 29 2b 62 75  |ut%(but_n%,1)+bu|
00007cb0  74 25 28 62 75 74 5f 6e  25 2c 33 29 29 8c 0d 03  |t%(but_n%,3))...|
00007cc0  fb 08 20 20 20 cc 0d 03  fc 1c 20 20 20 20 20 20  |..   .....      |
00007cd0  e7 6d 63 25 3d 34 3a 73  65 6c 25 3d 62 75 74 5f  |.mc%=4:sel%=but_|
00007ce0  6e 25 0d 03 fd 08 20 20  20 cd 0d 03 fe 05 ed 0d  |n%....   .......|
00007cf0  03 ff 0d e7 73 65 6c 25  3d 30 20 e1 0d 04 00 1d  |....sel%=0 .....|
00007d00  20 20 20 2a 63 68 61 6e  6e 65 6c 76 6f 69 63 65  |   *channelvoice|
00007d10  20 32 20 53 6d 62 75 7a  7a 0d 04 01 11 20 20 20  | 2 Smbuzz....   |
00007d20  d4 32 2c 2d 31 35 2c 31  2c 31 0d 04 02 59 e7 6f  |.2,-15,1,1...Y.o|
00007d30  75 74 5f 63 69 72 25 28  73 65 6c 25 29 3d 30 3a  |ut_cir%(sel%)=0:|
00007d40  6f 75 74 5f 63 69 72 25  28 73 65 6c 25 29 3d 31  |out_cir%(sel%)=1|
00007d50  3a 62 75 74 25 28 73 65  6c 25 2c 34 29 3d 33 36  |:but%(sel%,4)=36|
00007d60  3a 20 8b 20 6f 75 74 5f  63 69 72 25 28 73 65 6c  |: . out_cir%(sel|
00007d70  25 29 3d 30 3a 62 75 74  25 28 73 65 6c 25 2c 34  |%)=0:but%(sel%,4|
00007d80  29 3d 30 0d 04 03 04 0d  04 04 58 f2 70 6c 6f 74  |)=0.......X.plot|
00007d90  5f 73 70 72 69 74 65 28  62 75 74 25 28 73 65 6c  |_sprite(but%(sel|
00007da0  25 2c 30 29 2c 62 75 74  25 28 73 65 6c 25 2c 31  |%,0),but%(sel%,1|
00007db0  29 2c 31 2c 31 2c 31 2c  31 2c 22 6f 6e 22 2b c3  |),1,1,1,1,"on"+.|
00007dc0  28 6f 75 74 5f 63 69 72  25 28 73 65 6c 25 29 29  |(out_cir%(sel%))|
00007dd0  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
00007de0  04 05 64 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |..d.plot_sprite_|
00007df0  6d 61 73 6b 65 64 28 62  75 74 25 28 73 65 6c 25  |masked(but%(sel%|
00007e00  2c 30 29 2d 31 32 32 2c  62 75 74 25 28 73 65 6c  |,0)-122,but%(sel|
00007e10  25 2c 31 29 2c 31 2c 31  2c 31 2c 31 2c 22 6c 65  |%,1),1,1,1,1,"le|
00007e20  64 22 2b c3 28 6f 75 74  5f 63 69 72 25 28 73 65  |d"+.(out_cir%(se|
00007e30  6c 25 29 29 2c 73 70 72  69 74 65 5f 61 72 65 61  |l%)),sprite_area|
00007e40  31 25 29 0d 04 06 05 e1  0d 04 07 04 0d 04 08 10  |1%).............|
00007e50  dd f2 73 74 61 72 74 5f  6d 6f 76 65 0d 04 09 1c  |..start_move....|
00007e60  e7 63 6f 6e 5f 6d 6f 76  65 25 3d 30 20 84 20 6d  |.con_move%=0 . m|
00007e70  6f 76 65 25 3e 30 3a e1  0d 04 0a 28 e7 63 75 70  |ove%>0:....(.cup|
00007e80  5f 72 65 6c 65 61 73 65  25 3c 3e 30 20 84 20 6c  |_release%<>0 . l|
00007e90  69 64 5f 72 65 6c 65 61  73 65 25 3c 3e 30 3a e1  |id_release%<>0:.|
00007ea0  0d 04 0b 0b 6d 6f 76 65  25 3d 31 0d 04 0c 17 6d  |....move%=1....m|
00007eb0  6f 76 65 5f 64 69 72 25  3d 63 6f 6e 5f 6d 6f 76  |ove_dir%=con_mov|
00007ec0  65 25 0d 04 0d 0f 6d 6f  76 65 5f 6e 75 6d 25 3d  |e%....move_num%=|
00007ed0  30 0d 04 0e 05 e1 0d 04  0f 04 0d 04 10 0f dd f2  |0...............|
00007ee0  64 72 6f 70 5f 65 6e 64  73 0d 04 11 17 20 20 e7  |drop_ends....  .|
00007ef0  63 6f 6e 76 65 79 25 28  31 2c 32 29 3e 30 20 8c  |convey%(1,2)>0 .|
00007f00  0d 04 12 1c 20 20 20 20  e3 66 25 3d 33 20 b8 20  |....    .f%=3 . |
00007f10  63 6f 6e 76 65 79 25 28  31 2c 32 29 0d 04 13 28  |convey%(1,2)...(|
00007f20  20 20 20 20 20 20 20 63  6f 6e 76 65 79 25 28 31  |       convey%(1|
00007f30  2c 66 25 29 3d 63 6f 6e  76 65 79 25 28 31 2c 66  |,f%)=convey%(1,f|
00007f40  25 29 2b 32 0d 04 14 09  20 20 20 20 ed 0d 04 15  |%)+2....    ....|
00007f50  1c 20 20 20 20 20 20 e7  63 6f 6e 76 65 79 25 28  |.      .convey%(|
00007f60  31 2c 33 29 3e 33 30 20  8c 0d 04 16 48 20 20 20  |1,3)>30 ....H   |
00007f70  20 20 20 20 20 20 63 6f  6e 76 65 79 25 28 31 2c  |      convey%(1,|
00007f80  30 29 3d 30 3a 63 6f 6e  76 65 79 25 28 31 2c 31  |0)=0:convey%(1,1|
00007f90  29 3d 30 3a 63 6f 6e 76  65 79 25 28 31 2c 32 29  |)=0:convey%(1,2)|
00007fa0  3d 30 3a 63 6f 6e 76 65  79 25 28 31 2c 33 29 3d  |=0:convey%(1,3)=|
00007fb0  30 0d 04 17 0b 20 20 20  20 20 20 cd 0d 04 18 07  |0....      .....|
00007fc0  20 20 cd 0d 04 19 17 20  20 e7 63 6f 6e 76 65 79  |  .....  .convey|
00007fd0  25 28 39 2c 32 29 3e 30  20 8c 0d 04 1a 1c 20 20  |%(9,2)>0 .....  |
00007fe0  20 20 e3 66 25 3d 33 20  b8 20 63 6f 6e 76 65 79  |  .f%=3 . convey|
00007ff0  25 28 39 2c 32 29 0d 04  1b 28 20 20 20 20 20 20  |%(9,2)...(      |
00008000  20 63 6f 6e 76 65 79 25  28 39 2c 66 25 29 3d 63  | convey%(9,f%)=c|
00008010  6f 6e 76 65 79 25 28 39  2c 66 25 29 2b 31 0d 04  |onvey%(9,f%)+1..|
00008020  1c 09 20 20 20 20 ed 0d  04 1d 1c 20 20 20 20 20  |..    .....     |
00008030  20 e7 63 6f 6e 76 65 79  25 28 39 2c 33 29 3e 32  | .convey%(9,3)>2|
00008040  35 20 8c 0d 04 1e 17 20  20 20 20 20 20 20 20 20  |5 .....         |
00008050  61 74 74 65 6d 70 74 25  3d 31 0d 04 1f 0b 20 20  |attempt%=1....  |
00008060  20 20 20 20 cd 0d 04 20  07 20 20 cd 0d 04 21 05  |    ... .  ...!.|
00008070  e1 0d 04 22 04 0d 04 23  0c dd f2 63 6f 6e 76 65  |..."...#...conve|
00008080  79 0d 04 24 0e e7 6d 6f  76 65 25 3d 30 3a e1 0d  |y..$..move%=0:..|
00008090  04 25 1a 2a 63 68 61 6e  6e 65 6c 76 6f 69 63 65  |.%.*channelvoice|
000080a0  20 32 20 53 6d 62 75 7a  7a 0d 04 26 13 d4 32 2c  | 2 Smbuzz..&..2,|
000080b0  2d 31 35 2c 26 32 30 30  30 2c 32 30 0d 04 27 30  |-15,&2000,20..'0|
000080c0  e7 6d 6f 76 65 5f 6e 75  6d 25 3c 34 20 84 20 28  |.move_num%<4 . (|
000080d0  6d 6f 76 65 5f 6e 75 6d  25 3e 34 20 80 20 6d 6f  |move_num%>4 . mo|
000080e0  76 65 5f 6e 75 6d 25 3c  38 29 20 8c 0d 04 28 27  |ve_num%<8) ...('|
000080f0  20 20 63 6f 6e 76 65 79  5f 78 25 3d 63 6f 6e 76  |  convey_x%=conv|
00008100  65 79 5f 78 25 2b 28 6d  6f 76 65 5f 64 69 72 25  |ey_x%+(move_dir%|
00008110  2a 38 29 0d 04 29 41 20  20 64 72 69 70 25 28 64  |*8)..)A  drip%(d|
00008120  72 69 70 5f 70 6f 69 6e  74 65 72 25 2c 31 29 3d  |rip_pointer%,1)=|
00008130  64 72 69 70 25 28 64 72  69 70 5f 70 6f 69 6e 74  |drip%(drip_point|
00008140  65 72 25 2c 31 29 2b 28  6d 6f 76 65 5f 64 69 72  |er%,1)+(move_dir|
00008150  25 2a 38 29 0d 04 2a 52  20 20 e7 6f 6c 64 5f 64  |%*8)..*R  .old_d|
00008160  72 69 70 5f 70 74 72 25  3e 30 20 64 72 69 70 25  |rip_ptr%>0 drip%|
00008170  28 6f 6c 64 5f 64 72 69  70 5f 70 74 72 25 2c 31  |(old_drip_ptr%,1|
00008180  29 3d 64 72 69 70 25 28  6f 6c 64 5f 64 72 69 70  |)=drip%(old_drip|
00008190  5f 70 74 72 25 2c 31 29  2b 28 6d 6f 76 65 5f 64  |_ptr%,1)+(move_d|
000081a0  69 72 25 2a 38 29 0d 04  2b 1b 20 20 6d 6f 76 65  |ir%*8)..+.  move|
000081b0  5f 6e 75 6d 25 3d 6d 6f  76 65 5f 6e 75 6d 25 2b  |_num%=move_num%+|
000081c0  31 0d 04 2c 3a 20 20 e7  61 6e 5f 63 6f 6e 5f 6d  |1..,:  .an_con_m|
000081d0  6f 76 65 25 3d 34 34 38  3a 61 6e 5f 63 6f 6e 5f  |ove%=448:an_con_|
000081e0  6d 6f 76 65 25 3d 34 38  20 8b 20 61 6e 5f 63 6f  |move%=48 . an_co|
000081f0  6e 5f 6d 6f 76 65 25 3d  34 34 38 0d 04 2d 05 cd  |n_move%=448..-..|
00008200  0d 04 2e 12 e7 6d 6f 76  65 5f 6e 75 6d 25 3d 34  |.....move_num%=4|
00008210  20 8c 0d 04 2f 30 20 20  20 e7 6f 6c 64 5f 64 72  | .../0   .old_dr|
00008220  69 70 5f 70 74 72 25 3e  30 3a 64 72 69 70 25 28  |ip_ptr%>0:drip%(|
00008230  6f 6c 64 5f 64 72 69 70  5f 70 74 72 25 2c 30 29  |old_drip_ptr%,0)|
00008240  3d 33 0d 04 30 11 20 20  20 74 72 69 67 67 65 72  |=3..0.   trigger|
00008250  25 3d 30 0d 04 31 16 20  20 20 e7 6d 6f 76 65 5f  |%=0..1.   .move_|
00008260  64 69 72 25 3d 2b 31 20  8c 0d 04 32 14 20 20 20  |dir%=+1 ...2.   |
00008270  20 20 20 e3 66 25 3d 39  b8 31 88 2d 31 0d 04 33  |   .f%=9.1.-1..3|
00008280  16 20 20 20 20 20 20 20  e3 66 66 25 3d 30 20 b8  |.       .ff%=0 .|
00008290  20 31 30 0d 04 34 2d 20  20 20 20 20 20 20 20 63  | 10..4-        c|
000082a0  6f 6e 76 65 79 25 28 66  25 2c 66 66 25 29 3d 63  |onvey%(f%,ff%)=c|
000082b0  6f 6e 76 65 79 25 28 66  25 2d 31 2c 66 66 25 29  |onvey%(f%-1,ff%)|
000082c0  0d 04 35 2d 20 20 20 20  20 20 20 20 63 6f 6e 76  |..5-        conv|
000082d0  65 79 24 28 66 25 2c 66  66 25 29 3d 63 6f 6e 76  |ey$(f%,ff%)=conv|
000082e0  65 79 24 28 66 25 2d 31  2c 66 66 25 29 0d 04 36  |ey$(f%-1,ff%)..6|
000082f0  0e 20 20 20 20 20 20 20  ed 3a ed 0d 04 37 21 20  |.       .:...7! |
00008300  20 20 20 20 20 20 63 6f  6e 76 65 79 5f 78 25 3d  |      convey_x%=|
00008310  63 6f 6e 76 65 79 5f 78  25 2d 35 36 0d 04 38 08  |convey_x%-56..8.|
00008320  20 20 20 cd 0d 04 39 16  20 20 20 e7 6d 6f 76 65  |   ...9.   .move|
00008330  5f 64 69 72 25 3d 2d 31  20 8c 0d 04 3a 13 20 20  |_dir%=-1 ...:.  |
00008340  20 20 20 20 e3 66 25 3d  30 b8 38 88 31 0d 04 3b  |    .f%=0.8.1..;|
00008350  16 20 20 20 20 20 20 20  e3 66 66 25 3d 30 20 b8  |.       .ff%=0 .|
00008360  20 31 30 0d 04 3c 2d 20  20 20 20 20 20 20 20 63  | 10..<-        c|
00008370  6f 6e 76 65 79 25 28 66  25 2c 66 66 25 29 3d 63  |onvey%(f%,ff%)=c|
00008380  6f 6e 76 65 79 25 28 66  25 2b 31 2c 66 66 25 29  |onvey%(f%+1,ff%)|
00008390  0d 04 3d 2d 20 20 20 20  20 20 20 20 63 6f 6e 76  |..=-        conv|
000083a0  65 79 24 28 66 25 2c 66  66 25 29 3d 63 6f 6e 76  |ey$(f%,ff%)=conv|
000083b0  65 79 24 28 66 25 2b 31  2c 66 66 25 29 0d 04 3e  |ey$(f%+1,ff%)..>|
000083c0  0e 20 20 20 20 20 20 20  ed 3a ed 0d 04 3f 21 20  |.       .:...?! |
000083d0  20 20 20 20 20 20 63 6f  6e 76 65 79 5f 78 25 3d  |      convey_x%=|
000083e0  63 6f 6e 76 65 79 5f 78  25 2b 35 36 0d 04 40 08  |convey_x%+56..@.|
000083f0  20 20 20 cd 0d 04 41 1c  20 20 20 6d 6f 76 65 5f  |   ...A.   move_|
00008400  6e 75 6d 25 3d 6d 6f 76  65 5f 6e 75 6d 25 2b 31  |num%=move_num%+1|
00008410  0d 04 42 16 20 20 20 e7  64 72 69 70 25 28 30 2c  |..B.   .drip%(0,|
00008420  30 29 3e 30 20 8c 0d 04  43 1a 20 20 20 20 20 e7  |0)>0 ...C.     .|
00008430  63 6f 6e 76 65 79 25 28  35 2c 32 29 3d 30 20 8c  |convey%(5,2)=0 .|
00008440  0d 04 44 12 20 20 20 20  20 20 64 72 6f 70 25 3d  |..D.      drop%=|
00008450  32 30 0d 04 45 0a 20 20  20 20 20 cc 0d 04 46 27  |20..E.     ...F'|
00008460  20 20 20 20 20 20 6c 61  73 74 25 3d 63 6f 6e 76  |      last%=conv|
00008470  65 79 25 28 35 2c 63 6f  6e 76 65 79 25 28 35 2c  |ey%(5,convey%(5,|
00008480  32 29 29 0d 04 47 27 20  20 20 20 20 20 6c 61 73  |2))..G'      las|
00008490  74 24 3d 63 6f 6e 76 65  79 24 28 35 2c 63 6f 6e  |t$=convey$(5,con|
000084a0  76 65 79 25 28 35 2c 32  29 29 0d 04 48 2b 20 20  |vey%(5,2))..H+  |
000084b0  20 20 20 20 e7 20 c0 6c  61 73 74 24 2c 33 29 3d  |    . .last$,3)=|
000084c0  22 63 75 70 22 20 61 64  64 25 3d 36 20 8b 20 61  |"cup" add%=6 . a|
000084d0  64 64 25 3d 31 0d 04 49  1a 20 20 20 20 20 20 64  |dd%=1..I.      d|
000084e0  72 6f 70 25 3d 6c 61 73  74 25 2d 61 64 64 25 0d  |rop%=last%-add%.|
000084f0  04 4a 0a 20 20 20 20 20  cd 0d 04 4b 24 20 20 20  |.J.     ...K$   |
00008500  20 20 20 e7 64 72 69 70  25 28 30 2c 30 29 3d 32  |   .drip%(0,0)=2|
00008510  20 64 72 69 70 25 28 30  2c 30 29 3d 31 0d 04 4c  | drip%(0,0)=1..L|
00008520  23 20 20 20 20 20 20 64  72 69 70 25 28 30 2c 31  |#      drip%(0,1|
00008530  29 3d 6d 61 69 6e 5f 78  25 2b 28 36 34 2a 34 29  |)=main_x%+(64*4)|
00008540  0d 04 4d 1c 20 20 20 20  20 20 64 72 69 70 25 28  |..M.      drip%(|
00008550  30 2c 32 29 3d 6d 61 69  6e 5f 79 25 0d 04 4e 27  |0,2)=main_y%..N'|
00008560  20 f4 20 20 20 20 20 20  64 72 69 70 25 28 30 2c  | .      drip%(0,|
00008570  33 29 3d 31 20 20 20 20  20 20 20 3a 52 45 4d 20  |3)=1       :REM |
00008580  74 6f 70 0d 04 4f 26 20  20 20 20 20 20 64 72 69  |top..O&      dri|
00008590  70 25 28 30 2c 34 29 3d  64 72 6f 70 25 20 20 20  |p%(0,4)=drop%   |
000085a0  3a f4 20 62 6f 74 74 6f  6d 0d 04 50 2a 20 20 20  |:. bottom..P*   |
000085b0  20 20 20 64 72 69 70 25  28 30 2c 35 29 3d 31 20  |   drip%(0,5)=1 |
000085c0  20 20 20 20 20 20 3a f4  20 73 65 74 20 6e 75 6d  |      :. set num|
000085d0  62 65 72 0d 04 51 08 20  20 20 cd 0d 04 52 05 cd  |ber..Q.   ...R..|
000085e0  0d 04 53 12 e7 6d 6f 76  65 5f 6e 75 6d 25 3d 38  |..S..move_num%=8|
000085f0  20 8c 0d 04 54 11 20 20  6d 6f 76 65 5f 6e 75 6d  | ...T.  move_num|
00008600  25 3d 30 0d 04 55 0d 20  20 6d 6f 76 65 25 3d 30  |%=0..U.  move%=0|
00008610  0d 04 56 11 20 20 63 6f  6e 5f 6d 6f 76 65 25 3d  |..V.  con_move%=|
00008620  30 0d 04 57 0f 20 20 6f  6b 5f 63 75 70 25 3d 30  |0..W.  ok_cup%=0|
00008630  0d 04 58 0f 20 20 6f 6b  5f 6c 69 64 25 3d 30 0d  |..X.  ok_lid%=0.|
00008640  04 59 05 cd 0d 04 5a 05  e1 0d 04 5b 04 0d 04 5c  |.Y....Z....[...\|
00008650  10 dd f2 73 74 61 72 74  5f 6d 61 69 6e 0d 04 5d  |...start_main..]|
00008660  21 64 72 69 70 25 28 30  2c 30 29 3d 31 20 20 20  |!drip%(0,0)=1   |
00008670  20 20 20 20 3a f4 20 69  6e 63 72 65 73 65 0d 04  |    :. increse..|
00008680  5e 1d 64 72 69 70 25 28  30 2c 31 29 3d 6d 61 69  |^.drip%(0,1)=mai|
00008690  6e 5f 78 25 2b 28 36 34  2a 34 29 0d 04 5f 16 64  |n_x%+(64*4).._.d|
000086a0  72 69 70 25 28 30 2c 32  29 3d 6d 61 69 6e 5f 79  |rip%(0,2)=main_y|
000086b0  25 0d 04 60 1d 64 72 69  70 25 28 30 2c 33 29 3d  |%..`.drip%(0,3)=|
000086c0  31 20 20 20 20 20 20 20  3a f4 20 74 6f 70 0d 04  |1       :. top..|
000086d0  61 20 64 72 69 70 25 28  30 2c 34 29 3d 31 20 20  |a drip%(0,4)=1  |
000086e0  20 20 20 20 20 3a f4 20  62 6f 74 74 6f 6d 0d 04  |     :. bottom..|
000086f0  62 24 64 72 69 70 25 28  30 2c 35 29 3d 31 20 20  |b$drip%(0,5)=1  |
00008700  20 20 20 20 20 3a f4 20  73 65 74 20 6e 75 6d 62  |     :. set numb|
00008710  65 72 0d 04 63 2e e7 20  6f 6c 64 5f 64 72 69 70  |er..c.. old_drip|
00008720  5f 70 74 72 25 3e 30 20  64 72 69 70 25 28 6f 6c  |_ptr%>0 drip%(ol|
00008730  64 5f 64 72 69 70 5f 70  74 72 25 2c 30 29 3d 33  |d_drip_ptr%,0)=3|
00008740  0d 04 64 05 e1 0d 04 65  04 0d 04 66 0f dd f2 73  |..d....e...f...s|
00008750  74 6f 70 5f 6d 61 69 6e  0d 04 67 10 64 72 69 70  |top_main..g.drip|
00008760  25 28 30 2c 30 29 3d 33  0d 04 68 05 e1 0d 04 69  |%(0,0)=3..h....i|
00008770  04 0d 04 6a 12 dd f2 72  65 73 65 74 5f 63 6f 6e  |...j...reset_con|
00008780  76 65 79 0d 04 6b 0b e3  66 25 3d 30 b8 39 0d 04  |vey..k..f%=0.9..|
00008790  6c 14 63 6f 6e 76 65 79  25 28 66 25 2c 30 29 3d  |l.convey%(f%,0)=|
000087a0  32 30 0d 04 6d 13 63 6f  6e 76 65 79 25 28 66 25  |20..m.convey%(f%|
000087b0  2c 31 29 3d 30 0d 04 6e  13 63 6f 6e 76 65 79 25  |,1)=0..n.convey%|
000087c0  28 66 25 2c 32 29 3d 30  0d 04 6f 05 ed 0d 04 70  |(f%,2)=0..o....p|
000087d0  13 f4 20 20 50 52 4f 43  70 75 74 5f 63 75 70 73  |..  PROCput_cups|
000087e0  0d 04 71 05 e1 0d 04 72  04 0d 04 73 0e dd f2 70  |..q....r...s...p|
000087f0  75 74 5f 63 75 70 73 0d  04 74 13 63 6f 6e 76 65  |ut_cups..t.conve|
00008800  79 25 28 31 2c 30 29 3d  31 39 0d 04 75 12 63 6f  |y%(1,0)=19..u.co|
00008810  6e 76 65 79 25 28 31 2c  31 29 3d 31 0d 04 76 12  |nvey%(1,1)=1..v.|
00008820  63 6f 6e 76 65 79 25 28  31 2c 32 29 3d 33 0d 04  |convey%(1,2)=3..|
00008830  77 13 63 6f 6e 76 65 79  25 28 31 2c 33 29 3d 32  |w.convey%(1,3)=2|
00008840  30 0d 04 78 17 63 6f 6e  76 65 79 24 28 31 2c 33  |0..x.convey$(1,3|
00008850  29 3d 22 63 75 70 33 22  0d 04 79 04 0d 04 7a 37  |)="cup3"..y...z7|
00008860  63 6f 6e 76 65 79 25 28  35 2c 30 29 3d 31 33 20  |convey%(5,0)=13 |
00008870  20 3a f4 20 75 6e 69 74  73 20 6f 66 20 31 36 6f  | :. units of 16o|
00008880  73 20 64 6f 77 6e 20 66  72 6f 6d 20 6d 61 69 6e  |s down from main|
00008890  5f 79 25 0d 04 7b 12 63  6f 6e 76 65 79 25 28 35  |_y%..{.convey%(5|
000088a0  2c 31 29 3d 31 0d 04 7c  4b 63 6f 6e 76 65 79 25  |,1)=1..|Kconvey%|
000088b0  28 35 2c 32 29 3d 34 20  20 20 3a f4 20 70 6f 73  |(5,2)=4   :. pos|
000088c0  69 74 69 6f 6e 20 6c 61  73 74 20 73 70 72 69 74  |ition last sprit|
000088d0  65 73 20 69 65 20 6e 75  6d 62 65 72 20 33 20 69  |es ie number 3 i|
000088e0  73 20 66 69 72 73 74 20  34 20 73 65 63 6f 6e 64  |s first 4 second|
000088f0  0d 04 7d 24 63 6f 6e 76  65 79 25 28 35 2c 33 29  |..}$convey%(5,3)|
00008900  3d 32 30 20 20 3a f4 20  66 69 72 73 74 20 73 70  |=20  :. first sp|
00008910  72 69 74 65 0d 04 7e 17  63 6f 6e 76 65 79 24 28  |rite..~.convey$(|
00008920  35 2c 33 29 3d 22 63 75  70 32 22 0d 04 7f 25 63  |5,3)="cup2"...%c|
00008930  6f 6e 76 65 79 25 28 35  2c 34 29 3d 31 34 20 20  |onvey%(5,4)=14  |
00008940  3a f4 20 73 65 63 6f 6e  64 20 73 70 72 69 74 65  |:. second sprite|
00008950  0d 04 80 16 63 6f 6e 76  65 79 24 28 35 2c 34 29  |....convey$(5,4)|
00008960  3d 22 63 75 70 22 0d 04  81 05 e1 0d 04 82 04 0d  |="cup"..........|
00008970  04 83 0d dd f2 72 65 6c  65 61 73 65 0d 04 84 2e  |.....release....|
00008980  20 20 e7 6d 6f 76 65 25  3c 3e 32 20 80 20 63 75  |  .move%<>2 . cu|
00008990  70 5f 72 65 6c 65 61 73  65 25 3d 31 20 80 20 6f  |p_release%=1 . o|
000089a0  6b 5f 63 75 70 25 3d 30  20 8c 0d 04 85 16 20 20  |k_cup%=0 .....  |
000089b0  20 20 63 75 70 5f 72 65  6c 65 61 73 65 25 3d 32  |  cup_release%=2|
000089c0  0d 04 86 11 20 20 20 20  6f 6b 5f 63 75 70 25 3d  |....    ok_cup%=|
000089d0  31 0d 04 87 19 20 20 20  20 e7 63 6f 6e 76 65 79  |1....    .convey|
000089e0  25 28 33 2c 32 29 3d 30  20 8c 0d 04 88 1e 20 20  |%(3,2)=0 .....  |
000089f0  20 20 2a 63 68 61 6e 6e  65 6c 76 6f 69 63 65 20  |  *channelvoice |
00008a00  32 20 53 6d 62 75 7a 7a  0d 04 89 16 20 20 20 20  |2 Smbuzz....    |
00008a10  d4 32 2c 2d 31 35 2c 26  32 30 30 30 2c 31 0d 04  |.2,-15,&2000,1..|
00008a20  8a 18 20 20 20 20 20 20  63 6f 6e 76 65 79 25 28  |..      convey%(|
00008a30  33 2c 32 29 3d 33 0d 04  8b 19 20 20 20 20 20 20  |3,2)=3....      |
00008a40  63 6f 6e 76 65 79 25 28  33 2c 33 29 3d 32 30 0d  |convey%(3,3)=20.|
00008a50  04 8c 16 20 20 20 20 20  20 63 75 70 5f 64 72 6f  |...      cup_dro|
00008a60  70 25 3d 32 30 0d 04 8d  09 20 20 20 20 cc 0d 04  |p%=20....    ...|
00008a70  8e 27 20 20 20 20 20 20  6c 61 73 74 25 3d 63 6f  |.'      last%=co|
00008a80  6e 76 65 79 25 28 33 2c  63 6f 6e 76 65 79 25 28  |nvey%(3,convey%(|
00008a90  33 2c 32 29 29 0d 04 8f  27 20 20 20 20 20 20 6c  |3,2))...'      l|
00008aa0  61 73 74 24 3d 63 6f 6e  76 65 79 24 28 33 2c 63  |ast$=convey$(3,c|
00008ab0  6f 6e 76 65 79 25 28 33  2c 32 29 29 0d 04 90 2b  |onvey%(3,2))...+|
00008ac0  20 20 20 20 20 20 e7 20  c0 6c 61 73 74 24 2c 33  |      . .last$,3|
00008ad0  29 3d 22 63 75 70 22 20  61 64 64 25 3d 36 20 8b  |)="cup" add%=6 .|
00008ae0  20 61 64 64 25 3d 31 0d  04 91 54 20 20 20 20 20  | add%=1...T     |
00008af0  20 e7 20 6c 61 73 74 24  3d 22 63 75 70 22 20 63  | . last$="cup" c|
00008b00  6f 6e 76 65 79 24 28 33  2c 63 6f 6e 76 65 79 25  |onvey$(3,convey%|
00008b10  28 33 2c 32 29 29 3d 22  63 75 70 22 2b c3 28 63  |(3,2))="cup"+.(c|
00008b20  6f 6e 76 65 79 25 28 33  2c 31 29 29 3a 63 6f 6e  |onvey%(3,1)):con|
00008b30  76 65 79 25 28 33 2c 31  29 3d 30 0d 04 92 1e 20  |vey%(3,1)=0.... |
00008b40  20 20 20 20 20 63 75 70  5f 64 72 6f 70 25 3d 6c  |     cup_drop%=l|
00008b50  61 73 74 25 2d 61 64 64  25 0d 04 93 23 20 20 20  |ast%-add%...#   |
00008b60  20 20 20 e7 63 75 70 5f  64 72 6f 70 25 3c 31 30  |   .cup_drop%<10|
00008b70  20 6f 76 65 72 6c 6f 61  64 25 3d 31 0d 04 94 25  | overload%=1...%|
00008b80  20 20 20 20 20 20 63 6f  6e 76 65 79 25 28 33 2c  |      convey%(3,|
00008b90  32 29 3d 63 6f 6e 76 65  79 25 28 33 2c 32 29 2b  |2)=convey%(3,2)+|
00008ba0  31 0d 04 95 25 20 20 20  20 20 20 e7 63 6f 6e 76  |1...%      .conv|
00008bb0  65 79 25 28 33 2c 32 29  3e 36 20 6f 76 65 72 6c  |ey%(3,2)>6 overl|
00008bc0  6f 61 64 25 3d 31 0d 04  96 09 20 20 20 20 cd 0d  |oad%=1....    ..|
00008bd0  04 97 3a 20 20 20 20 63  6f 6e 76 65 79 25 28 33  |..:    convey%(3|
00008be0  2c 30 29 3d 63 75 70 5f  64 72 6f 70 25 2d 31 20  |,0)=cup_drop%-1 |
00008bf0  20 20 20 20 3a f4 20 66  6c 75 69 64 20 67 6f 65  |    :. fluid goe|
00008c00  73 20 64 6f 77 6e 20 74  6f 0d 04 98 39 20 20 20  |s down to...9   |
00008c10  20 63 6f 6e 76 65 79 25  28 33 2c 63 6f 6e 76 65  | convey%(3,conve|
00008c20  79 25 28 33 2c 32 29 29  3d 34 20 20 20 20 3a f4  |y%(3,2))=4    :.|
00008c30  20 66 69 72 73 74 20 76  69 65 77 20 6f 66 20 63  | first view of c|
00008c40  75 70 0d 04 99 33 20 20  20 20 63 6f 6e 76 65 79  |up...3    convey|
00008c50  25 28 33 2c 31 29 3d 31  20 20 20 20 20 20 20 20  |%(3,1)=1        |
00008c60  20 20 20 20 20 20 20 3a  f4 20 63 75 70 20 6e 75  |       :. cup nu|
00008c70  6d 62 65 72 31 0d 04 9a  25 20 20 20 20 63 6f 6e  |mber1...%    con|
00008c80  76 65 79 24 28 33 2c 63  6f 6e 76 65 79 25 28 33  |vey$(3,convey%(3|
00008c90  2c 32 29 29 3d 22 63 75  70 22 0d 04 9b 07 20 20  |,2))="cup"....  |
00008ca0  cd 0d 04 9c 3b 20 20 e7  63 75 70 5f 72 65 6c 65  |....;  .cup_rele|
00008cb0  61 73 65 25 3d 32 20 80  20 63 75 70 5f 64 72 6f  |ase%=2 . cup_dro|
00008cc0  70 25 3d 63 6f 6e 76 65  79 25 28 33 2c 63 6f 6e  |p%=convey%(3,con|
00008cd0  76 65 79 25 28 33 2c 32  29 29 20 8c 0d 04 9d 1c  |vey%(3,2)) .....|
00008ce0  20 20 20 20 2a 63 68 61  6e 6e 65 6c 76 6f 69 63  |    *channelvoic|
00008cf0  65 20 32 20 62 6f 6e 6b  0d 04 9e 17 20 20 20 20  |e 2 bonk....    |
00008d00  d4 32 2c 2d 31 35 2c 26  33 30 30 30 2c 32 30 0d  |.2,-15,&3000,20.|
00008d10  04 9f 16 20 20 20 20 63  75 70 5f 72 65 6c 65 61  |...    cup_relea|
00008d20  73 65 25 3d 30 0d 04 a0  07 20 20 cd 0d 04 a1 04  |se%=0....  .....|
00008d30  0d 04 a2 17 20 20 e7 63  75 70 5f 72 65 6c 65 61  |....  .cup_relea|
00008d40  73 65 25 3d 32 20 8c 0d  04 a3 39 20 20 20 20 63  |se%=2 ....9    c|
00008d50  6f 6e 76 65 79 25 28 33  2c 63 6f 6e 76 65 79 25  |onvey%(3,convey%|
00008d60  28 33 2c 32 29 29 3d 63  6f 6e 76 65 79 25 28 33  |(3,2))=convey%(3|
00008d70  2c 63 6f 6e 76 65 79 25  28 33 2c 32 29 29 2b 31  |,convey%(3,2))+1|
00008d80  0d 04 a4 07 20 20 cd 0d  04 a5 04 0d 04 a6 2e 20  |....  ......... |
00008d90  20 e7 6d 6f 76 65 25 3c  3e 32 20 80 20 6c 69 64  | .move%<>2 . lid|
00008da0  5f 72 65 6c 65 61 73 65  25 3d 31 20 80 20 6f 6b  |_release%=1 . ok|
00008db0  5f 6c 69 64 25 3d 30 20  8c 0d 04 a7 16 20 20 20  |_lid%=0 .....   |
00008dc0  20 6c 69 64 5f 72 65 6c  65 61 73 65 25 3d 32 0d  | lid_release%=2.|
00008dd0  04 a8 11 20 20 20 20 6f  6b 5f 6c 69 64 25 3d 31  |...    ok_lid%=1|
00008de0  0d 04 a9 19 20 20 20 20  e7 63 6f 6e 76 65 79 25  |....    .convey%|
00008df0  28 37 2c 32 29 3d 30 20  8c 0d 04 aa 18 20 20 20  |(7,2)=0 .....   |
00008e00  20 20 20 63 6f 6e 76 65  79 25 28 37 2c 32 29 3d  |   convey%(7,2)=|
00008e10  33 0d 04 ab 19 20 20 20  20 20 20 63 6f 6e 76 65  |3....      conve|
00008e20  79 25 28 37 2c 33 29 3d  32 30 0d 04 ac 16 20 20  |y%(7,3)=20....  |
00008e30  20 20 20 20 6c 69 64 5f  64 72 6f 70 25 3d 32 30  |    lid_drop%=20|
00008e40  0d 04 ad 09 20 20 20 20  cc 0d 04 ae 27 20 20 20  |....    ....'   |
00008e50  20 20 20 6c 61 73 74 25  3d 63 6f 6e 76 65 79 25  |   last%=convey%|
00008e60  28 37 2c 63 6f 6e 76 65  79 25 28 37 2c 32 29 29  |(7,convey%(7,2))|
00008e70  0d 04 af 27 20 20 20 20  20 20 6c 61 73 74 24 3d  |...'      last$=|
00008e80  63 6f 6e 76 65 79 24 28  37 2c 63 6f 6e 76 65 79  |convey$(7,convey|
00008e90  25 28 37 2c 32 29 29 0d  04 b0 2b 20 20 20 20 20  |%(7,2))...+     |
00008ea0  20 e7 20 c0 6c 61 73 74  24 2c 33 29 3d 22 63 75  | . .last$,3)="cu|
00008eb0  70 22 20 61 64 64 25 3d  36 20 8b 20 61 64 64 25  |p" add%=6 . add%|
00008ec0  3d 31 0d 04 b1 54 20 20  20 20 20 20 e7 20 6c 61  |=1...T      . la|
00008ed0  73 74 24 3d 22 63 75 70  22 20 63 6f 6e 76 65 79  |st$="cup" convey|
00008ee0  24 28 37 2c 63 6f 6e 76  65 79 25 28 37 2c 32 29  |$(7,convey%(7,2)|
00008ef0  29 3d 22 63 75 70 22 2b  c3 28 63 6f 6e 76 65 79  |)="cup"+.(convey|
00008f00  25 28 37 2c 31 29 29 3a  63 6f 6e 76 65 79 25 28  |%(7,1)):convey%(|
00008f10  37 2c 31 29 3d 30 0d 04  b2 1e 20 20 20 20 20 20  |7,1)=0....      |
00008f20  6c 69 64 5f 64 72 6f 70  25 3d 6c 61 73 74 25 2d  |lid_drop%=last%-|
00008f30  61 64 64 25 0d 04 b3 23  20 20 20 20 20 20 e7 6c  |add%...#      .l|
00008f40  69 64 5f 64 72 6f 70 25  3c 31 30 20 6f 76 65 72  |id_drop%<10 over|
00008f50  6c 6f 61 64 25 3d 31 0d  04 b4 25 20 20 20 20 20  |load%=1...%     |
00008f60  20 63 6f 6e 76 65 79 25  28 37 2c 32 29 3d 63 6f  | convey%(7,2)=co|
00008f70  6e 76 65 79 25 28 37 2c  32 29 2b 31 0d 04 b5 25  |nvey%(7,2)+1...%|
00008f80  20 20 20 20 20 20 e7 63  6f 6e 76 65 79 25 28 37  |      .convey%(7|
00008f90  2c 32 29 3e 36 20 6f 76  65 72 6c 6f 61 64 25 3d  |,2)>6 overload%=|
00008fa0  31 0d 04 b6 09 20 20 20  20 cd 0d 04 b7 3a 20 20  |1....    ....:  |
00008fb0  20 20 63 6f 6e 76 65 79  25 28 37 2c 30 29 3d 6c  |  convey%(7,0)=l|
00008fc0  69 64 5f 64 72 6f 70 25  2d 31 20 20 20 20 20 3a  |id_drop%-1     :|
00008fd0  f4 20 66 6c 75 69 64 20  67 6f 65 73 20 64 6f 77  |. fluid goes dow|
00008fe0  6e 20 74 6f 0d 04 b8 39  20 20 20 20 63 6f 6e 76  |n to...9    conv|
00008ff0  65 79 25 28 37 2c 63 6f  6e 76 65 79 25 28 37 2c  |ey%(7,convey%(7,|
00009000  32 29 29 3d 34 20 20 20  20 3a f4 20 66 69 72 73  |2))=4    :. firs|
00009010  74 20 76 69 65 77 20 6f  66 20 63 75 70 0d 04 b9  |t view of cup...|
00009020  33 20 20 20 20 63 6f 6e  76 65 79 25 28 37 2c 31  |3    convey%(7,1|
00009030  29 3d 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |)=0             |
00009040  20 20 3a f4 20 63 75 70  20 6e 75 6d 62 65 72 31  |  :. cup number1|
00009050  0d 04 ba 25 20 20 20 20  63 6f 6e 76 65 79 24 28  |...%    convey$(|
00009060  37 2c 63 6f 6e 76 65 79  25 28 37 2c 32 29 29 3d  |7,convey%(7,2))=|
00009070  22 6c 69 64 22 0d 04 bb  04 0d 04 bc 07 20 20 cd  |"lid"........  .|
00009080  0d 04 bd 3b 20 20 e7 6c  69 64 5f 72 65 6c 65 61  |...;  .lid_relea|
00009090  73 65 25 3d 32 20 80 20  6c 69 64 5f 64 72 6f 70  |se%=2 . lid_drop|
000090a0  25 3d 63 6f 6e 76 65 79  25 28 37 2c 63 6f 6e 76  |%=convey%(7,conv|
000090b0  65 79 25 28 37 2c 32 29  29 20 8c 0d 04 be 16 20  |ey%(7,2)) ..... |
000090c0  20 20 20 6c 69 64 5f 72  65 6c 65 61 73 65 25 3d  |   lid_release%=|
000090d0  30 0d 04 bf 07 20 20 cd  0d 04 c0 04 0d 04 c1 17  |0....  .........|
000090e0  20 20 e7 6c 69 64 5f 72  65 6c 65 61 73 65 25 3d  |  .lid_release%=|
000090f0  32 20 8c 0d 04 c2 39 20  20 20 20 63 6f 6e 76 65  |2 ....9    conve|
00009100  79 25 28 37 2c 63 6f 6e  76 65 79 25 28 37 2c 32  |y%(7,convey%(7,2|
00009110  29 29 3d 63 6f 6e 76 65  79 25 28 37 2c 63 6f 6e  |))=convey%(7,con|
00009120  76 65 79 25 28 37 2c 32  29 29 2b 31 0d 04 c3 07  |vey%(7,2))+1....|
00009130  20 20 cd 0d 04 c4 04 0d  04 c5 05 e1 0d 04 c6 04  |  ..............|
00009140  0d 04 c7 0d dd f2 64 69  73 70 6c 61 79 0d 04 c8  |......display...|
00009150  56 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  |V.plot_sprite_ma|
00009160  73 6b 65 64 28 64 69 73  70 6c 61 79 5f 78 25 2b  |sked(display_x%+|
00009170  28 33 32 2a 33 29 2c 64  69 73 70 6c 61 79 5f 79  |(32*3),display_y|
00009180  25 2c 31 2c 31 2c 31 2c  31 2c 22 63 75 70 5f 6d  |%,1,1,1,1,"cup_m|
00009190  61 63 31 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |ac1",sprite_area|
000091a0  31 25 29 0d 04 c9 58 f2  70 6c 6f 74 5f 73 70 72  |1%)...X.plot_spr|
000091b0  69 74 65 5f 6d 61 73 6b  65 64 28 64 69 73 70 6c  |ite_masked(displ|
000091c0  61 79 5f 78 25 2b 28 33  32 2a 37 29 2c 64 69 73  |ay_x%+(32*7),dis|
000091d0  70 6c 61 79 5f 79 25 2c  31 2c 31 2c 31 2c 31 2c  |play_y%,1,1,1,1,|
000091e0  22 64 72 69 6e 6b 5f 6d  61 63 68 22 2c 73 70 72  |"drink_mach",spr|
000091f0  69 74 65 5f 61 72 65 61  31 25 29 0d 04 ca 57 f2  |ite_area1%)...W.|
00009200  70 6c 6f 74 5f 73 70 72  69 74 65 5f 6d 61 73 6b  |plot_sprite_mask|
00009210  65 64 28 64 69 73 70 6c  61 79 5f 78 25 2b 28 33  |ed(display_x%+(3|
00009220  32 2a 31 31 29 2c 64 69  73 70 6c 61 79 5f 79 25  |2*11),display_y%|
00009230  2c 31 2c 31 2c 31 2c 31  2c 22 6c 69 64 5f 6d 61  |,1,1,1,1,"lid_ma|
00009240  63 31 22 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |c1",sprite_area1|
00009250  25 29 0d 04 cb 05 e1 0d  04 cc 04 0d 04 cd 0a dd  |%)..............|
00009260  f2 67 72 69 64 0d 04 ce  3f f2 70 6c 6f 74 5f 73  |.grid...?.plot_s|
00009270  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 37 30 34  |prite_masked(704|
00009280  2c 34 38 2c 31 2c 31 2c  31 2c 31 2c 22 63 6f 6e  |,48,1,1,1,1,"con|
00009290  76 65 79 31 22 2c 73 70  72 69 74 65 5f 61 72 65  |vey1",sprite_are|
000092a0  61 31 25 29 0d 04 cf 40  f2 70 6c 6f 74 5f 73 70  |a1%)...@.plot_sp|
000092b0  72 69 74 65 5f 6d 61 73  6b 65 64 28 37 30 34 2c  |rite_masked(704,|
000092c0  34 34 38 2c 31 2c 31 2c  31 2c 31 2c 22 63 6f 6e  |448,1,1,1,1,"con|
000092d0  76 65 79 30 22 2c 73 70  72 69 74 65 5f 61 72 65  |vey0",sprite_are|
000092e0  61 31 25 29 0d 04 d0 05  e1 0d 04 d1 04 0d 04 d2  |a1%)............|
000092f0  14 dd f2 70 75 74 5f 69  6e 5f 73 70 72 69 74 65  |...put_in_sprite|
00009300  73 0d 04 d3 0d e3 66 66  66 25 3d 31 b8 39 0d 04  |s.....fff%=1.9..|
00009310  d4 1d 20 20 20 e7 63 6f  6e 76 65 79 25 28 66 66  |..   .convey%(ff|
00009320  66 25 2c 32 29 3d 30 20  ed 3a e1 0d 04 d5 1f 20  |f%,2)=0 .:..... |
00009330  20 20 e3 66 66 25 3d 33  20 b8 20 63 6f 6e 76 65  |  .ff%=3 . conve|
00009340  79 25 28 66 66 66 25 2c  32 29 0d 04 d6 21 20 20  |y%(fff%,2)...!  |
00009350  20 20 73 70 72 69 74 65  24 3d 63 6f 6e 76 65 79  |  sprite$=convey|
00009360  24 28 66 66 66 25 2c 66  66 25 29 0d 04 d7 39 20  |$(fff%,ff%)...9 |
00009370  20 20 20 e7 73 70 72 69  74 65 24 3d 22 63 75 70  |   .sprite$="cup|
00009380  22 3a 73 70 72 69 74 65  24 3d 73 70 72 69 74 65  |":sprite$=sprite|
00009390  24 2b c3 28 63 6f 6e 76  65 79 25 28 66 66 66 25  |$+.(convey%(fff%|
000093a0  2c 31 29 29 0d 04 d8 71  20 20 20 20 f2 70 6c 6f  |,1))...q    .plo|
000093b0  74 5f 73 70 72 69 74 65  5f 6d 61 73 6b 65 64 28  |t_sprite_masked(|
000093c0  63 6f 6e 76 65 79 5f 78  25 2b 28 28 66 66 66 25  |convey_x%+((fff%|
000093d0  2d 31 29 2a 36 34 29 2c  6d 61 69 6e 5f 79 25 2d  |-1)*64),main_y%-|
000093e0  28 63 6f 6e 76 65 79 25  28 66 66 66 25 2c 66 66  |(convey%(fff%,ff|
000093f0  25 29 2a 31 36 29 2c 31  2c 31 2c 31 2c 31 2c 73  |%)*16),1,1,1,1,s|
00009400  70 72 69 74 65 24 2c 73  70 72 69 74 65 5f 61 72  |prite$,sprite_ar|
00009410  65 61 31 25 29 0d 04 d9  08 20 20 20 ed 0d 04 da  |ea1%)....   ....|
00009420  05 ed 0d 04 db 05 e1 0d  04 dc 04 0d 04 dd 11 dd  |................|
00009430  f2 73 65 74 5f 64 72 69  70 5f 73 70 0d 04 de 09  |.set_drip_sp....|
00009440  f7 8d 64 60 44 0d 04 df  19 e3 66 25 3d 31 b8 33  |..d`D.....f%=1.3|
00009450  30 3a f3 64 72 69 70 24  28 66 25 29 3a ed 0d 04  |0:.drip$(f%):...|
00009460  e0 dd dc 20 64 72 69 70  36 2c 64 72 69 70 36 2c  |... drip6,drip6,|
00009470  64 72 69 70 36 2c 64 72  69 70 36 2c 64 72 69 70  |drip6,drip6,drip|
00009480  36 2c 64 72 69 70 36 2c  64 72 69 70 36 2c 64 72  |6,drip6,drip6,dr|
00009490  69 70 36 2c 64 72 69 70  36 2c 64 72 69 70 36 2c  |ip6,drip6,drip6,|
000094a0  64 72 69 70 36 2c 64 72  69 70 36 2c 64 72 69 70  |drip6,drip6,drip|
000094b0  36 2c 64 72 69 70 36 2c  64 72 69 70 36 2c 64 72  |6,drip6,drip6,dr|
000094c0  69 70 36 2c 64 72 69 70  36 2c 64 72 69 70 36 2c  |ip6,drip6,drip6,|
000094d0  64 72 69 70 36 2c 64 72  69 70 36 2c 64 72 69 70  |drip6,drip6,drip|
000094e0  36 2c 64 72 69 70 36 2c  64 72 69 70 36 2c 64 72  |6,drip6,drip6,dr|
000094f0  69 70 36 2c 64 72 69 70  36 2c 64 72 69 70 36 2c  |ip6,drip6,drip6,|
00009500  64 72 69 70 36 2c 64 72  69 70 36 2c 64 72 69 70  |drip6,drip6,drip|
00009510  36 2c 64 72 69 70 36 2c  64 72 69 70 36 2c 64 72  |6,drip6,drip6,dr|
00009520  69 70 36 2c 64 72 69 70  36 2c 64 72 69 70 36 2c  |ip6,drip6,drip6,|
00009530  64 72 69 70 36 2c 64 72  69 70 36 0d 04 e1 09 f7  |drip6,drip6.....|
00009540  8d 64 65 44 0d 04 e2 24  e3 66 25 3d 31 b8 35 3a  |.deD...$.f%=1.5:|
00009550  f3 73 64 72 69 70 24 28  66 25 29 2c 73 64 72 69  |.sdrip$(f%),sdri|
00009560  70 25 28 66 25 29 3a ed  0d 04 e3 31 e3 66 25 3d  |p%(f%):....1.f%=|
00009570  36 b8 33 30 3a 73 64 72  69 70 24 28 66 25 29 3d  |6.30:sdrip$(f%)=|
00009580  22 64 72 69 70 36 22 3a  73 64 72 69 70 25 28 66  |"drip6":sdrip%(f|
00009590  25 29 3d 66 25 2d 31 3a  ed 0d 04 e4 05 e1 0d 04  |%)=f%-1:........|
000095a0  e5 2d dc 20 64 72 69 70  31 2c 34 2c 64 72 69 70  |.-. drip1,4,drip|
000095b0  32 2c 34 2c 64 72 69 70  33 2c 34 2c 64 72 69 70  |2,4,drip3,4,drip|
000095c0  34 2c 34 2c 64 72 69 70  35 2c 34 0d 04 e6 05 e1  |4,4,drip5,4.....|
000095d0  0d 04 e7 04 0d 04 e8 10  dd f2 63 68 65 63 6b 5f  |..........check_|
000095e0  6d 61 69 6e 0d 04 e9 41  f4 20 50 52 49 4e 54 64  |main...A. PRINTd|
000095f0  72 69 70 25 28 30 2c 30  29 2c 64 72 69 70 25 28  |rip%(0,0),drip%(|
00009600  30 2c 33 29 2c 64 72 69  70 25 28 30 2c 34 29 2c  |0,3),drip%(0,4),|
00009610  64 72 69 70 25 28 30 2c  34 29 2d 64 72 69 70 25  |drip%(0,4)-drip%|
00009620  28 30 2c 33 29 0d 04 ea  16 f4 20 55 70 64 61 74  |(0,3)..... Updat|
00009630  65 20 6d 61 69 6e 20 64  61 74 61 0d 04 eb 13 e7  |e main data.....|
00009640  64 72 69 70 25 28 30 2c  30 29 3d 30 3a e1 0d 04  |drip%(0,0)=0:...|
00009650  ec 2f e7 73 6f 75 6e 64  63 6e 74 25 2b 34 30 3c  |./.soundcnt%+40<|
00009660  91 20 d4 31 2c 2d 31 35  2c 26 33 30 30 30 2c 31  |. .1,-15,&3000,1|
00009670  30 3a 73 6f 75 6e 64 63  6e 74 25 3d 91 0d 04 ed  |0:soundcnt%=....|
00009680  3e e7 28 64 72 69 70 25  28 30 2c 30 29 3d 31 20  |>.(drip%(0,0)=1 |
00009690  84 20 64 72 69 70 25 28  30 2c 30 29 3d 33 29 20  |. drip%(0,0)=3) |
000096a0  80 20 64 72 69 70 25 28  30 2c 34 29 3c 63 6f 6e  |. drip%(0,4)<con|
000096b0  76 65 79 25 28 35 2c 30  29 20 8c 0d 04 ee 21 20  |vey%(5,0) ....! |
000096c0  20 20 20 20 20 64 72 69  70 25 28 30 2c 34 29 3d  |     drip%(0,4)=|
000096d0  64 72 69 70 25 28 30 2c  34 29 2b 31 0d 04 ef 05  |drip%(0,4)+1....|
000096e0  cd 0d 04 f0 2d e7 64 72  69 70 25 28 30 2c 30 29  |....-.drip%(0,0)|
000096f0  3d 31 20 80 20 64 72 69  70 25 28 30 2c 34 29 3d  |=1 . drip%(0,4)=|
00009700  63 6f 6e 76 65 79 25 28  35 2c 30 29 20 8c 0d 04  |convey%(5,0) ...|
00009710  f1 16 20 20 20 20 20 20  64 72 69 70 25 28 30 2c  |..      drip%(0,|
00009720  30 29 3d 32 0d 04 f2 05  cd 0d 04 f3 44 e7 64 72  |0)=2........D.dr|
00009730  69 70 25 28 30 2c 34 29  3d 63 6f 6e 76 65 79 25  |ip%(0,4)=convey%|
00009740  28 35 2c 30 29 20 80 6d  6f 76 65 25 3c 3e 32 20  |(5,0) .move%<>2 |
00009750  80 74 72 69 67 67 65 72  25 3d 30 20 80 63 6f 6e  |.trigger%=0 .con|
00009760  76 65 79 25 28 35 2c 31  29 3d 30 20 8c 0d 04 f4  |vey%(5,1)=0 ....|
00009770  30 20 20 20 20 20 20 64  72 69 70 25 28 64 72 69  |0      drip%(dri|
00009780  70 5f 70 6f 69 6e 74 65  72 25 2c 30 29 3d 31 3a  |p_pointer%,0)=1:|
00009790  f4 20 20 73 74 61 72 74  20 66 6c 6f 77 0d 04 f5  |.  start flow...|
000097a0  31 20 20 20 20 20 20 64  72 69 70 25 28 64 72 69  |1      drip%(dri|
000097b0  70 5f 70 6f 69 6e 74 65  72 25 2c 31 29 3d 63 6f  |p_pointer%,1)=co|
000097c0  6e 76 65 79 5f 78 25 2b  28 36 34 2a 34 29 0d 04  |nvey_x%+(64*4)..|
000097d0  f6 38 20 20 20 20 20 20  64 72 69 70 25 28 64 72  |.8      drip%(dr|
000097e0  69 70 5f 70 6f 69 6e 74  65 72 25 2c 32 29 3d 6d  |ip_pointer%,2)=m|
000097f0  61 69 6e 5f 79 25 2d 28  31 36 2a 64 72 69 70 25  |ain_y%-(16*drip%|
00009800  28 30 2c 34 29 29 0d 04  f7 22 20 20 20 20 20 20  |(0,4))..."      |
00009810  64 72 69 70 25 28 64 72  69 70 5f 70 6f 69 6e 74  |drip%(drip_point|
00009820  65 72 25 2c 33 29 3d 31  0d 04 f8 22 20 20 20 20  |er%,3)=1..."    |
00009830  20 20 64 72 69 70 25 28  64 72 69 70 5f 70 6f 69  |  drip%(drip_poi|
00009840  6e 74 65 72 25 2c 34 29  3d 31 0d 04 f9 22 20 20  |nter%,4)=1..."  |
00009850  20 20 20 20 64 72 69 70  25 28 64 72 69 70 5f 70  |    drip%(drip_p|
00009860  6f 69 6e 74 65 72 25 2c  35 29 3d 31 0d 04 fa 25  |ointer%,5)=1...%|
00009870  20 20 20 20 20 20 6f 6c  64 5f 64 72 69 70 5f 70  |      old_drip_p|
00009880  74 72 25 3d 64 72 69 70  5f 70 6f 69 6e 74 65 72  |tr%=drip_pointer|
00009890  25 0d 04 fb 48 20 20 20  20 20 20 64 72 69 70 5f  |%...H      drip_|
000098a0  70 6f 69 6e 74 65 72 25  3d 64 72 69 70 5f 70 6f  |pointer%=drip_po|
000098b0  69 6e 74 65 72 25 2b 31  3a e7 64 72 69 70 5f 70  |inter%+1:.drip_p|
000098c0  6f 69 6e 74 65 72 25 3d  35 20 64 72 69 70 5f 70  |ointer%=5 drip_p|
000098d0  6f 69 6e 74 65 72 25 3d  31 0d 04 fc 14 20 20 20  |ointer%=1....   |
000098e0  20 20 20 74 72 69 67 67  65 72 25 3d 31 0d 04 fd  |   trigger%=1...|
000098f0  05 cd 0d 04 fe 47 e7 64  72 69 70 25 28 30 2c 34  |.....G.drip%(0,4|
00009900  29 3d 63 6f 6e 76 65 79  25 28 35 2c 30 29 20 80  |)=convey%(5,0) .|
00009910  6d 6f 76 65 25 3c 3e 32  20 80 63 6f 6e 76 65 79  |move%<>2 .convey|
00009920  25 28 35 2c 31 29 3e 30  20 80 20 64 72 69 70 25  |%(5,1)>0 . drip%|
00009930  28 30 2c 30 29 3e 30 20  8c 0d 04 ff 21 20 20 20  |(0,0)>0 ....!   |
00009940  20 20 20 63 75 70 5f 63  6f 75 6e 74 25 3d 63 75  |   cup_count%=cu|
00009950  70 5f 63 6f 75 6e 74 25  2b 31 0d 05 00 1d 20 20  |p_count%+1....  |
00009960  20 20 20 20 20 20 20 20  e7 63 75 70 5f 63 6f 75  |        .cup_cou|
00009970  6e 74 25 3e 38 20 8c 0d  05 01 1d 20 20 20 20 20  |nt%>8 .....     |
00009980  20 20 20 20 20 20 20 20  63 75 70 5f 63 6f 75 6e  |        cup_coun|
00009990  74 25 3d 31 0d 05 02 2c  20 20 20 20 20 20 20 20  |t%=1...,        |
000099a0  20 20 20 20 20 63 6f 6e  76 65 79 25 28 35 2c 30  |     convey%(5,0|
000099b0  29 3d 63 6f 6e 76 65 79  25 28 35 2c 30 29 2d 31  |)=convey%(5,0)-1|
000099c0  0d 05 03 2c 20 20 20 20  20 20 20 20 20 20 20 20  |...,            |
000099d0  20 63 6f 6e 76 65 79 25  28 35 2c 31 29 3d 63 6f  | convey%(5,1)=co|
000099e0  6e 76 65 79 25 28 35 2c  31 29 2b 31 0d 05 04 28  |nvey%(5,1)+1...(|
000099f0  20 20 20 20 20 20 20 20  20 20 20 20 20 64 72 69  |             dri|
00009a00  70 25 28 30 2c 34 29 3d  64 72 69 70 25 28 30 2c  |p%(0,4)=drip%(0,|
00009a10  34 29 2d 31 0d 05 05 22  20 20 20 20 20 20 20 20  |4)-1..."        |
00009a20  20 20 20 20 20 e7 63 6f  6e 76 65 79 25 28 35 2c  |     .convey%(5,|
00009a30  31 29 3d 36 20 8c 0d 05  06 23 20 20 20 20 20 20  |1)=6 ....#      |
00009a40  20 20 20 20 20 20 20 20  20 20 20 63 6f 6e 76 65  |           conve|
00009a50  79 25 28 35 2c 31 29 3d  30 0d 05 07 33 20 20 20  |y%(5,1)=0...3   |
00009a60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 63 6f  |              co|
00009a70  6e 76 65 79 24 28 35 2c  63 6f 6e 76 65 79 25 28  |nvey$(5,convey%(|
00009a80  35 2c 32 29 29 3d 22 63  75 70 36 22 0d 05 08 12  |5,2))="cup6"....|
00009a90  20 20 20 20 20 20 20 20  20 20 20 20 20 cd 0d 05  |             ...|
00009aa0  09 0f 20 20 20 20 20 20  20 20 20 20 cd 0d 05 0a  |..          ....|
00009ab0  05 cd 0d 05 0b 2b e7 64  72 69 70 25 28 30 2c 30  |.....+.drip%(0,0|
00009ac0  29 3d 33 20 80 20 64 72  69 70 25 28 30 2c 33 29  |)=3 . drip%(0,3)|
00009ad0  3c 64 72 69 70 25 28 30  2c 34 29 20 8c 0d 05 0c  |<drip%(0,4) ....|
00009ae0  21 20 20 20 20 20 20 64  72 69 70 25 28 30 2c 33  |!      drip%(0,3|
00009af0  29 3d 64 72 69 70 25 28  30 2c 33 29 2b 31 0d 05  |)=drip%(0,3)+1..|
00009b00  0d 05 cd 0d 05 0e 45 e7  64 72 69 70 25 28 30 2c  |......E.drip%(0,|
00009b10  30 29 3d 33 20 80 20 28  64 72 69 70 25 28 30 2c  |0)=3 . (drip%(0,|
00009b20  33 29 3e 64 72 69 70 25  28 30 2c 34 29 20 84 20  |3)>drip%(0,4) . |
00009b30  64 72 69 70 25 28 30 2c  33 29 3d 64 72 69 70 25  |drip%(0,3)=drip%|
00009b40  28 30 2c 34 29 29 20 8c  0d 05 0f 16 20 20 20 20  |(0,4)) .....    |
00009b50  20 20 64 72 69 70 25 28  30 2c 30 29 3d 30 0d 05  |  drip%(0,0)=0..|
00009b60  10 33 20 20 20 20 20 20  e7 6f 6c 64 5f 64 72 69  |.3      .old_dri|
00009b70  70 5f 70 74 72 25 3e 30  3a 64 72 69 70 25 28 6f  |p_ptr%>0:drip%(o|
00009b80  6c 64 5f 64 72 69 70 5f  70 74 72 25 2c 30 29 3d  |ld_drip_ptr%,0)=|
00009b90  33 0d 05 11 14 20 20 20  20 20 20 74 72 69 67 67  |3....      trigg|
00009ba0  65 72 25 3d 30 0d 05 12  05 cd 0d 05 13 1f e3 66  |er%=0..........f|
00009bb0  25 3d 64 72 69 70 25 28  30 2c 33 29 20 b8 20 64  |%=drip%(0,3) . d|
00009bc0  72 69 70 25 28 30 2c 34  29 0d 05 14 64 f2 70 6c  |rip%(0,4)...d.pl|
00009bd0  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
00009be0  28 64 72 69 70 25 28 30  2c 31 29 2c 64 72 69 70  |(drip%(0,1),drip|
00009bf0  25 28 30 2c 32 29 2d 28  66 25 2a 31 36 29 2c 31  |%(0,2)-(f%*16),1|
00009c00  2c 31 2c 31 2c 31 2c c3  28 64 72 69 70 25 28 30  |,1,1,1,.(drip%(0|
00009c10  2c 35 29 29 2b 64 72 69  70 24 28 66 25 29 2c 73  |,5))+drip$(f%),s|
00009c20  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 05 15  |prite_area1%)...|
00009c30  05 ed 0d 05 16 05 e1 0d  05 17 04 0d 05 18 11 dd  |................|
00009c40  f2 63 68 65 63 6b 5f 64  72 69 70 73 0d 05 19 0e  |.check_drips....|
00009c50  e3 66 66 25 3d 31 20 b8  20 34 0d 05 1a 17 e7 64  |.ff%=1 . 4.....d|
00009c60  72 69 70 25 28 66 66 25  2c 30 29 3d 30 3a ed 3a  |rip%(ff%,0)=0:.:|
00009c70  e1 0d 05 1b 48 e7 28 64  72 69 70 25 28 66 66 25  |....H.(drip%(ff%|
00009c80  2c 30 29 3d 31 20 84 20  64 72 69 70 25 28 66 66  |,0)=1 . drip%(ff|
00009c90  25 2c 30 29 3d 33 29 20  80 20 64 72 69 70 25 28  |%,0)=3) . drip%(|
00009ca0  66 66 25 2c 34 29 3c 62  6f 74 74 6f 6d 5f 68 65  |ff%,4)<bottom_he|
00009cb0  69 67 68 74 5f 6e 25 20  8c 0d 05 1c 25 20 20 20  |ight_n% ....%   |
00009cc0  20 20 20 64 72 69 70 25  28 66 66 25 2c 34 29 3d  |   drip%(ff%,4)=|
00009cd0  64 72 69 70 25 28 66 66  25 2c 34 29 2b 31 0d 05  |drip%(ff%,4)+1..|
00009ce0  1d 05 cd 0d 05 1e 35 e7  64 72 69 70 25 28 66 66  |......5.drip%(ff|
00009cf0  25 2c 30 29 3d 31 20 80  20 64 72 69 70 25 28 66  |%,0)=1 . drip%(f|
00009d00  66 25 2c 34 29 3d 62 6f  74 74 6f 6d 5f 68 65 69  |f%,4)=bottom_hei|
00009d10  67 68 74 5f 6e 25 20 8c  0d 05 1f 18 20 20 20 20  |ght_n% .....    |
00009d20  20 20 64 72 69 70 25 28  66 66 25 2c 30 29 3d 32  |  drip%(ff%,0)=2|
00009d30  0d 05 20 05 cd 0d 05 21  31 e7 64 72 69 70 25 28  |.. ....!1.drip%(|
00009d40  66 66 25 2c 30 29 3d 33  20 80 20 64 72 69 70 25  |ff%,0)=3 . drip%|
00009d50  28 66 66 25 2c 33 29 3c  64 72 69 70 25 28 66 66  |(ff%,3)<drip%(ff|
00009d60  25 2c 34 29 20 8c 0d 05  22 25 20 20 20 20 20 20  |%,4) ..."%      |
00009d70  64 72 69 70 25 28 66 66  25 2c 33 29 3d 64 72 69  |drip%(ff%,3)=dri|
00009d80  70 25 28 66 66 25 2c 33  29 2b 31 0d 05 23 05 cd  |p%(ff%,3)+1..#..|
00009d90  0d 05 24 31 e7 64 72 69  70 25 28 66 66 25 2c 30  |..$1.drip%(ff%,0|
00009da0  29 3d 33 20 80 20 64 72  69 70 25 28 66 66 25 2c  |)=3 . drip%(ff%,|
00009db0  33 29 3d 64 72 69 70 25  28 66 66 25 2c 34 29 20  |3)=drip%(ff%,4) |
00009dc0  8c 0d 05 25 18 20 20 20  20 20 20 64 72 69 70 25  |...%.      drip%|
00009dd0  28 66 66 25 2c 30 29 3d  30 0d 05 26 05 cd 0d 05  |(ff%,0)=0..&....|
00009de0  27 23 e3 66 25 3d 64 72  69 70 25 28 66 66 25 2c  |'#.f%=drip%(ff%,|
00009df0  33 29 20 b8 20 64 72 69  70 25 28 66 66 25 2c 34  |3) . drip%(ff%,4|
00009e00  29 0d 05 28 71 f2 70 6c  6f 74 5f 73 70 72 69 74  |)..(q.plot_sprit|
00009e10  65 5f 6d 61 73 6b 65 64  28 64 72 69 70 25 28 66  |e_masked(drip%(f|
00009e20  66 25 2c 31 29 2c 64 72  69 70 25 28 66 66 25 2c  |f%,1),drip%(ff%,|
00009e30  32 29 2d 28 73 64 72 69  70 25 28 66 25 29 2a 31  |2)-(sdrip%(f%)*1|
00009e40  36 29 2c 31 2c 31 2c 31  2c 31 2c c3 28 64 72 69  |6),1,1,1,1,.(dri|
00009e50  70 25 28 30 2c 35 29 29  2b 73 64 72 69 70 24 28  |p%(0,5))+sdrip$(|
00009e60  66 25 29 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |f%),sprite_area1|
00009e70  25 29 0d 05 29 05 ed 0d  05 2a 05 ed 0d 05 2b 04  |%)..)....*....+.|
00009e80  0d 05 2c 05 e1 0d 05 2d  04 0d 05 2e 04 0d 05 2f  |..,....-......./|
00009e90  0c dd f2 69 6e 74 72 6f  31 0d 05 30 0c 2a 46 58  |...intro1..0.*FX|
00009ea0  31 31 32 2c 32 0d 05 31  09 61 6e 25 3d 34 0d 05  |112,2..1.an%=4..|
00009eb0  32 0a 61 6e 6e 25 3d 35  0d 05 33 08 e6 30 2c 33  |2.ann%=5..3..0,3|
00009ec0  0d 05 34 0e e3 66 25 3d  30 b8 38 20 88 32 0d 05  |..4..f%=0.8 .2..|
00009ed0  35 4c 20 20 ec 33 31 2d  66 25 2c 33 32 2d 66 25  |5L  .31-f%,32-f%|
00009ee0  3a df 31 32 34 39 2b 66  25 2c 33 32 2d 66 25 3a  |:.1249+f%,32-f%:|
00009ef0  df 31 32 34 39 2b 66 25  2c 39 33 33 2b 66 25 3a  |.1249+f%,933+f%:|
00009f00  df 33 31 2d 66 25 2c 39  33 33 2b 66 25 3a df 33  |.31-f%,933+f%:.3|
00009f10  31 2d 66 25 2c 33 32 2d  66 25 0d 05 36 05 ed 0d  |1-f%,32-f%..6...|
00009f20  05 37 3a f2 70 6c 6f 74  5f 73 70 72 69 74 65 28  |.7:.plot_sprite(|
00009f30  31 30 30 2c 36 31 36 2c  31 2c 31 2c 31 2c 31 2c  |100,616,1,1,1,1,|
00009f40  22 72 22 2b c3 28 61 6e  25 29 2c 73 70 72 69 74  |"r"+.(an%),sprit|
00009f50  65 5f 61 72 65 61 31 25  29 0d 05 38 3b f2 70 6c  |e_area1%)..8;.pl|
00009f60  6f 74 5f 73 70 72 69 74  65 28 34 38 30 2c 36 31  |ot_sprite(480,61|
00009f70  36 2c 31 2c 31 2c 31 2c  31 2c 22 72 22 2b c3 28  |6,1,1,1,1,"r"+.(|
00009f80  61 6e 6e 25 29 2c 73 70  72 69 74 65 5f 61 72 65  |ann%),sprite_are|
00009f90  61 31 25 29 0d 05 39 3f  f2 70 6c 6f 74 5f 73 70  |a1%)..9?.plot_sp|
00009fa0  72 69 74 65 5f 6d 61 73  6b 65 64 28 38 30 30 2c  |rite_masked(800,|
00009fb0  37 33 32 2c 31 2c 31 2c  31 2c 31 2c 22 6b 6e 69  |732,1,1,1,1,"kni|
00009fc0  66 65 31 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |fe1",sprite_area|
00009fd0  31 25 29 0d 05 3a 37 f2  70 6c 6f 74 5f 73 70 72  |1%)..:7.plot_spr|
00009fe0  69 74 65 28 38 38 30 2c  37 35 33 2c 31 2c 31 2c  |ite(880,753,1,1,|
00009ff0  31 2c 31 2c 22 62 6c 6f  63 6b 22 2c 73 70 72 69  |1,1,"block",spri|
0000a000  74 65 5f 61 72 65 61 31  25 29 0d 05 3b 10 66 61  |te_area1%)..;.fa|
0000a010  64 65 24 3d 22 66 61 64  65 22 0d 05 3c 35 e7 56  |de$="fade"..<5.V|
0000a020  25 3d 30 20 f2 74 6f 70  5f 62 6c 61 6e 6b 3a ff  |%=0 .top_blank:.|
0000a030  22 46 58 31 31 32 2c 32  22 3a f2 74 6f 70 5f 62  |"FX112,2":.top_b|
0000a040  6c 61 6e 6b 3a ff 22 46  58 31 31 32 2c 31 22 0d  |lank:."FX112,1".|
0000a050  05 3d 18 f2 66 61 64 65  28 30 2c 39 36 30 2c 34  |.=..fade(0,960,4|
0000a060  2c 30 2c 31 2c 31 29 0d  05 3e 0b 61 6e 5f 74 25  |,0,1,1)..>.an_t%|
0000a070  3d 91 0d 05 3f 0c 2a 66  78 31 31 32 2c 31 0d 05  |=...?.*fx112,1..|
0000a080  40 17 f2 62 6f 78 28 34  30 2c 34 36 2c 31 32 30  |@..box(40,46,120|
0000a090  30 2c 39 34 29 0d 05 41  3c f2 70 72 69 28 37 30  |0,94)..A<.pri(70|
0000a0a0  2c 37 38 2c 22 50 72 6f  66 65 73 73 6f 72 20 52  |,78,"Professor R|
0000a0b0  6f 62 65 72 74 73 20 77  69 6c 6c 20 62 65 20 61  |oberts will be a|
0000a0c0  6c 6f 6e 67 20 76 65 72  79 20 73 6f 6f 6e 2e 22  |long very soon."|
0000a0d0  29 0d 05 42 17 f2 73 70  61 63 65 28 31 30 32 34  |)..B..space(1024|
0000a0e0  2c 36 32 2c 31 2c 30 29  0d 05 43 17 f2 62 6f 78  |,62,1,0)..C..box|
0000a0f0  28 34 30 2c 34 36 2c 31  32 30 30 2c 39 34 29 0d  |(40,46,1200,94).|
0000a100  05 44 0e f2 70 61 75 73  65 28 34 30 29 0d 05 45  |.D..pause(40)..E|
0000a110  35 f2 70 72 69 28 37 30  2c 37 38 2c 22 48 65 20  |5.pri(70,78,"He |
0000a120  69 73 20 6a 75 73 74 20  66 69 6e 69 73 68 69 6e  |is just finishin|
0000a130  67 20 61 6e 20 65 78 70  65 72 69 6d 65 6e 74 2e  |g an experiment.|
0000a140  22 29 0d 05 46 17 f2 73  70 61 63 65 28 31 30 32  |")..F..space(102|
0000a150  34 2c 36 32 2c 31 2c 30  29 0d 05 47 2f 42 25 3d  |4,62,1,0)..G/B%=|
0000a160  73 63 72 65 65 6e 5f 74  77 6f 25 3a 43 25 3d 73  |screen_two%:C%=s|
0000a170  63 72 65 65 6e 5f 6f 6e  65 25 3a d6 73 61 76 65  |creen_one%:.save|
0000a180  5f 73 63 72 65 65 6e 25  0d 05 48 0c 2a 66 78 31  |_screen%..H.*fx1|
0000a190  31 32 2c 32 0d 05 49 3a  2a 52 4d 65 6e 73 75 72  |12,2..I:*RMensur|
0000a1a0  65 20 70 75 66 66 20 2a  52 4d 6c 6f 61 64 20 22  |e puff *RMload "|
0000a1b0  3c 43 72 79 73 74 61 6c  32 24 64 69 72 3e 2e 50  |<Crystal2$dir>.P|
0000a1c0  54 30 2e 73 6f 75 6e 64  2e 70 75 66 66 22 0d 05  |T0.sound.puff"..|
0000a1d0  4a 40 2a 52 4d 65 6e 73  75 72 65 20 65 78 70 6c  |J@*RMensure expl|
0000a1e0  6f 64 65 20 2a 52 4d 6c  6f 61 64 20 22 3c 43 72  |ode *RMload "<Cr|
0000a1f0  79 73 74 61 6c 32 24 64  69 72 3e 2e 50 54 30 2e  |ystal2$dir>.PT0.|
0000a200  73 6f 75 6e 64 2e 65 78  70 6c 6f 64 65 22 0d 05  |sound.explode"..|
0000a210  4b 1b 2a 63 68 61 6e 6e  65 6c 76 6f 69 63 65 20  |K.*channelvoice |
0000a220  31 20 65 78 70 6c 6f 64  65 0d 05 4c 1b 2a 63 68  |1 explode..L.*ch|
0000a230  61 6e 6e 65 6c 76 6f 69  63 65 20 32 20 65 78 70  |annelvoice 2 exp|
0000a240  6c 6f 64 65 0d 05 4d 0d  f4 20 65 78 70 6c 6f 64  |lode..M.. explod|
0000a250  65 0d 05 4e 0c 2a 66 78  31 31 32 2c 31 0d 05 4f  |e..N.*fx112,1..O|
0000a260  0f 66 25 3d 31 3a 69 6e  63 25 3d 31 0d 05 50 12  |.f%=1:inc%=1..P.|
0000a270  d4 31 2c 2d 31 35 2c 26  32 30 30 30 2c 32 0d 05  |.1,-15,&2000,2..|
0000a280  51 05 f5 0d 05 52 0d f2  73 74 5f 70 61 75 73 65  |Q....R..st_pause|
0000a290  0d 05 53 18 e7 66 25 3d  32 20 d4 32 2c 2d 31 35  |..S..f%=2 .2,-15|
0000a2a0  2c 26 31 36 30 30 2c 32  0d 05 54 33 f2 70 6c 6f  |,&1600,2..T3.plo|
0000a2b0  74 5f 73 70 72 69 74 65  28 33 32 2c 31 38 38 2c  |t_sprite(32,188,|
0000a2c0  31 2c 31 2c 31 2c 31 2c  22 66 6c 61 73 68 22 2b  |1,1,1,1,"flash"+|
0000a2d0  c3 28 66 25 29 2c 73 61  31 25 29 0d 05 55 11 f2  |.(f%),sa1%)..U..|
0000a2e0  65 6e 5f 70 61 75 73 65  28 31 30 29 0d 05 56 0e  |en_pause(10)..V.|
0000a2f0  66 25 3d 66 25 2b 69 6e  63 25 0d 05 57 16 e7 66  |f%=f%+inc%..W..f|
0000a300  25 3d 35 20 69 6e 63 25  3d 2d 31 3a 66 25 3d 33  |%=5 inc%=-1:f%=3|
0000a310  0d 05 58 09 fd 66 25 3d  30 0d 05 59 2e f2 70 6c  |..X..f%=0..Y..pl|
0000a320  6f 74 5f 73 70 72 69 74  65 28 33 32 2c 31 38 38  |ot_sprite(32,188|
0000a330  2c 31 2c 31 2c 31 2c 31  2c 22 66 6c 61 73 68 35  |,1,1,1,1,"flash5|
0000a340  22 2c 73 61 31 25 29 0d  05 5a 37 20 20 20 f2 70  |",sa1%)..Z7   .p|
0000a350  6c 6f 74 5f 73 70 72 69  74 65 28 31 30 30 2c 36  |lot_sprite(100,6|
0000a360  31 36 2c 31 2c 31 2c 31  2c 31 2c 22 72 39 22 2c  |16,1,1,1,1,"r9",|
0000a370  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 05  |sprite_area1%)..|
0000a380  5b 37 20 20 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |[7   .plot_sprit|
0000a390  65 28 34 38 30 2c 36 31  36 2c 31 2c 31 2c 31 2c  |e(480,616,1,1,1,|
0000a3a0  31 2c 22 72 39 22 2c 73  70 72 69 74 65 5f 61 72  |1,"r9",sprite_ar|
0000a3b0  65 61 31 25 29 0d 05 5c  0e f2 70 61 75 73 65 28  |ea1%)..\..pause(|
0000a3c0  31 30 29 0d 05 5d 18 2a  63 68 61 6e 6e 65 6c 76  |10)..].*channelv|
0000a3d0  6f 69 63 65 20 31 20 70  75 66 66 0d 05 5e 16 20  |oice 1 puff..^. |
0000a3e0  20 20 d4 31 2c 2d 31 35  2c 26 32 30 30 30 2c 33  |  .1,-15,&2000,3|
0000a3f0  30 0d 05 5f 37 20 20 20  f2 70 6c 6f 74 5f 73 70  |0.._7   .plot_sp|
0000a400  72 69 74 65 28 32 31 30  2c 36 37 36 2c 31 2c 31  |rite(210,676,1,1|
0000a410  2c 31 2c 31 2c 22 73 31  22 2c 73 70 72 69 74 65  |,1,1,"s1",sprite|
0000a420  5f 61 72 65 61 31 25 29  0d 05 60 37 20 20 20 f2  |_area1%)..`7   .|
0000a430  70 6c 6f 74 5f 73 70 72  69 74 65 28 35 39 30 2c  |plot_sprite(590,|
0000a440  36 37 36 2c 31 2c 31 2c  31 2c 31 2c 22 73 31 22  |676,1,1,1,1,"s1"|
0000a450  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
0000a460  05 61 0e f2 70 61 75 73  65 28 34 30 29 0d 05 62  |.a..pause(40)..b|
0000a470  37 20 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |7   .plot_sprite|
0000a480  28 32 31 30 2c 36 37 36  2c 31 2c 31 2c 31 2c 31  |(210,676,1,1,1,1|
0000a490  2c 22 73 33 22 2c 73 70  72 69 74 65 5f 61 72 65  |,"s3",sprite_are|
0000a4a0  61 31 25 29 0d 05 63 37  20 20 20 f2 70 6c 6f 74  |a1%)..c7   .plot|
0000a4b0  5f 73 70 72 69 74 65 28  35 39 30 2c 36 37 36 2c  |_sprite(590,676,|
0000a4c0  31 2c 31 2c 31 2c 31 2c  22 73 33 22 2c 73 70 72  |1,1,1,1,"s3",spr|
0000a4d0  69 74 65 5f 61 72 65 61  31 25 29 0d 05 64 0e f2  |ite_area1%)..d..|
0000a4e0  70 61 75 73 65 28 34 30  29 0d 05 65 37 20 20 20  |pause(40)..e7   |
0000a4f0  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 32 31 30  |.plot_sprite(210|
0000a500  2c 36 37 36 2c 31 2c 31  2c 31 2c 31 2c 22 73 34  |,676,1,1,1,1,"s4|
0000a510  22 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 29  |",sprite_area1%)|
0000a520  0d 05 66 37 20 20 20 f2  70 6c 6f 74 5f 73 70 72  |..f7   .plot_spr|
0000a530  69 74 65 28 35 39 30 2c  36 37 36 2c 31 2c 31 2c  |ite(590,676,1,1,|
0000a540  31 2c 31 2c 22 73 34 22  2c 73 70 72 69 74 65 5f  |1,1,"s4",sprite_|
0000a550  61 72 65 61 31 25 29 0d  05 67 0e f2 70 61 75 73  |area1%)..g..paus|
0000a560  65 28 34 30 29 0d 05 68  37 20 20 20 f2 70 6c 6f  |e(40)..h7   .plo|
0000a570  74 5f 73 70 72 69 74 65  28 32 31 30 2c 36 37 36  |t_sprite(210,676|
0000a580  2c 31 2c 31 2c 31 2c 31  2c 22 73 35 22 2c 73 70  |,1,1,1,1,"s5",sp|
0000a590  72 69 74 65 5f 61 72 65  61 31 25 29 0d 05 69 37  |rite_area1%)..i7|
0000a5a0  20 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 28  |   .plot_sprite(|
0000a5b0  35 39 30 2c 36 37 36 2c  31 2c 31 2c 31 2c 31 2c  |590,676,1,1,1,1,|
0000a5c0  22 73 35 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |"s5",sprite_area|
0000a5d0  31 25 29 0d 05 6a 0e f2  70 61 75 73 65 28 34 30  |1%)..j..pause(40|
0000a5e0  29 0d 05 6b 37 20 20 20  f2 70 6c 6f 74 5f 73 70  |)..k7   .plot_sp|
0000a5f0  72 69 74 65 28 32 31 30  2c 36 37 36 2c 31 2c 31  |rite(210,676,1,1|
0000a600  2c 31 2c 31 2c 22 73 36  22 2c 73 70 72 69 74 65  |,1,1,"s6",sprite|
0000a610  5f 61 72 65 61 31 25 29  0d 05 6c 37 20 20 20 f2  |_area1%)..l7   .|
0000a620  70 6c 6f 74 5f 73 70 72  69 74 65 28 35 39 30 2c  |plot_sprite(590,|
0000a630  36 37 36 2c 31 2c 31 2c  31 2c 31 2c 22 73 36 22  |676,1,1,1,1,"s6"|
0000a640  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
0000a650  05 6d 0f f2 70 61 75 73  65 28 31 30 30 29 0d 05  |.m..pause(100)..|
0000a660  6e 2f 42 25 3d 73 63 72  65 65 6e 5f 6f 6e 65 25  |n/B%=screen_one%|
0000a670  3a 43 25 3d 73 63 72 65  65 6e 5f 74 77 6f 25 3a  |:C%=screen_two%:|
0000a680  d6 73 61 76 65 5f 73 63  72 65 65 6e 25 0d 05 6f  |.save_screen%..o|
0000a690  0f f2 70 61 75 73 65 28  31 30 30 29 0d 05 70 0f  |..pause(100)..p.|
0000a6a0  66 25 3d 31 3a 69 6e 63  25 3d 31 0d 05 71 1b 2a  |f%=1:inc%=1..q.*|
0000a6b0  63 68 61 6e 6e 65 6c 76  6f 69 63 65 20 31 20 65  |channelvoice 1 e|
0000a6c0  78 70 6c 6f 64 65 0d 05  72 3a 2a 52 4d 65 6e 73  |xplode..r:*RMens|
0000a6d0  75 72 65 20 64 6f 6f 72  20 2a 52 4d 6c 6f 61 64  |ure door *RMload|
0000a6e0  20 22 3c 43 72 79 73 74  61 6c 32 24 64 69 72 3e  | "<Crystal2$dir>|
0000a6f0  2e 50 54 30 2e 73 6f 75  6e 64 2e 64 6f 6f 72 22  |.PT0.sound.door"|
0000a700  0d 05 73 10 2a 52 6d 4b  69 6c 6c 20 70 75 66 66  |..s.*RmKill puff|
0000a710  0d 05 74 12 d4 31 2c 2d  31 35 2c 26 32 30 30 30  |..t..1,-15,&2000|
0000a720  2c 32 0d 05 75 05 f5 0d  05 76 0d f2 73 74 5f 70  |,2..u....v..st_p|
0000a730  61 75 73 65 0d 05 77 18  e7 66 25 3d 32 20 d4 32  |ause..w..f%=2 .2|
0000a740  2c 2d 31 35 2c 26 31 36  30 30 2c 32 0d 05 78 33  |,-15,&1600,2..x3|
0000a750  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 33 32 2c  |.plot_sprite(32,|
0000a760  31 38 38 2c 31 2c 31 2c  31 2c 31 2c 22 66 6c 61  |188,1,1,1,1,"fla|
0000a770  73 68 22 2b c3 28 66 25  29 2c 73 61 31 25 29 0d  |sh"+.(f%),sa1%).|
0000a780  05 79 11 f2 65 6e 5f 70  61 75 73 65 28 31 30 29  |.y..en_pause(10)|
0000a790  0d 05 7a 0e 66 25 3d 66  25 2b 69 6e 63 25 0d 05  |..z.f%=f%+inc%..|
0000a7a0  7b 16 e7 66 25 3d 35 20  69 6e 63 25 3d 2d 31 3a  |{..f%=5 inc%=-1:|
0000a7b0  66 25 3d 33 0d 05 7c 09  fd 66 25 3d 30 0d 05 7d  |f%=3..|..f%=0..}|
0000a7c0  2e f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 33 32  |..plot_sprite(32|
0000a7d0  2c 31 38 38 2c 31 2c 31  2c 31 2c 31 2c 22 66 6c  |,188,1,1,1,1,"fl|
0000a7e0  61 73 68 35 22 2c 73 61  31 25 29 0d 05 7e 0c 2a  |ash5",sa1%)..~.*|
0000a7f0  66 78 31 31 33 2c 31 0d  05 7f 0c 2a 66 78 31 31  |fx113,1....*fx11|
0000a800  32 2c 32 0d 05 80 18 2a  63 68 61 6e 6e 65 6c 76  |2,2....*channelv|
0000a810  6f 69 63 65 20 31 20 64  6f 6f 72 0d 05 81 13 d4  |oice 1 door.....|
0000a820  20 31 2c 2d 31 35 2c 26  31 36 30 30 2c 32 0d 05  | 1,-15,&1600,2..|
0000a830  82 39 f2 70 6c 6f 74 5f  73 70 72 69 74 65 28 38  |.9.plot_sprite(8|
0000a840  30 32 2c 35 34 34 2c 31  2c 31 2c 31 2c 31 2c 22  |02,544,1,1,1,1,"|
0000a850  62 6c 61 6e 6b 33 33 22  2c 73 70 72 69 74 65 5f  |blank33",sprite_|
0000a860  61 72 65 61 31 25 29 0d  05 83 37 f2 70 6c 6f 74  |area1%)...7.plot|
0000a870  5f 73 70 72 69 74 65 28  38 38 30 2c 37 35 33 2c  |_sprite(880,753,|
0000a880  31 2c 31 2c 31 2c 31 2c  22 62 6c 6f 63 6b 22 2c  |1,1,1,1,"block",|
0000a890  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 05  |sprite_area1%)..|
0000a8a0  84 3f f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |.?.plot_sprite_m|
0000a8b0  61 73 6b 65 64 28 38 31  38 2c 36 35 34 2c 31 2c  |asked(818,654,1,|
0000a8c0  31 2c 31 2c 31 2c 22 6b  6e 69 66 65 37 22 2c 73  |1,1,1,"knife7",s|
0000a8d0  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 05 85  |prite_area1%)...|
0000a8e0  2f 42 25 3d 73 63 72 65  65 6e 5f 74 77 6f 25 3a  |/B%=screen_two%:|
0000a8f0  43 25 3d 73 63 72 65 65  6e 5f 6f 6e 65 25 3a d6  |C%=screen_one%:.|
0000a900  73 61 76 65 5f 73 63 72  65 65 6e 25 0d 05 86 0e  |save_screen%....|
0000a910  f2 70 61 75 73 65 28 33  30 29 0d 05 87 39 f2 70  |.pause(30)...9.p|
0000a920  6c 6f 74 5f 73 70 72 69  74 65 28 38 30 32 2c 35  |lot_sprite(802,5|
0000a930  34 34 2c 31 2c 31 2c 31  2c 31 2c 22 62 6c 61 6e  |44,1,1,1,1,"blan|
0000a940  6b 33 33 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |k33",sprite_area|
0000a950  31 25 29 0d 05 88 37 f2  70 6c 6f 74 5f 73 70 72  |1%)...7.plot_spr|
0000a960  69 74 65 28 38 38 30 2c  37 35 33 2c 31 2c 31 2c  |ite(880,753,1,1,|
0000a970  31 2c 31 2c 22 62 6c 6f  63 6b 22 2c 73 70 72 69  |1,1,"block",spri|
0000a980  74 65 5f 61 72 65 61 31  25 29 0d 05 89 3f f2 70  |te_area1%)...?.p|
0000a990  6c 6f 74 5f 73 70 72 69  74 65 5f 6d 61 73 6b 65  |lot_sprite_maske|
0000a9a0  64 28 39 32 36 2c 35 35  38 2c 31 2c 31 2c 31 2c  |d(926,558,1,1,1,|
0000a9b0  31 2c 22 6b 6e 69 66 65  33 22 2c 73 70 72 69 74  |1,"knife3",sprit|
0000a9c0  65 5f 61 72 65 61 31 25  29 0d 05 8a 2f 42 25 3d  |e_area1%).../B%=|
0000a9d0  73 63 72 65 65 6e 5f 74  77 6f 25 3a 43 25 3d 73  |screen_two%:C%=s|
0000a9e0  63 72 65 65 6e 5f 6f 6e  65 25 3a d6 73 61 76 65  |creen_one%:.save|
0000a9f0  5f 73 63 72 65 65 6e 25  0d 05 8b 0e f2 70 61 75  |_screen%.....pau|
0000aa00  73 65 28 32 30 29 0d 05  8c 39 f2 70 6c 6f 74 5f  |se(20)...9.plot_|
0000aa10  73 70 72 69 74 65 28 38  30 32 2c 35 34 34 2c 31  |sprite(802,544,1|
0000aa20  2c 31 2c 31 2c 31 2c 22  62 6c 61 6e 6b 33 33 22  |,1,1,1,"blank33"|
0000aa30  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
0000aa40  05 8d 37 f2 70 6c 6f 74  5f 73 70 72 69 74 65 28  |..7.plot_sprite(|
0000aa50  38 38 30 2c 37 35 33 2c  31 2c 31 2c 31 2c 31 2c  |880,753,1,1,1,1,|
0000aa60  22 62 6c 6f 63 6b 22 2c  73 70 72 69 74 65 5f 61  |"block",sprite_a|
0000aa70  72 65 61 31 25 29 0d 05  8e 3f f2 70 6c 6f 74 5f  |rea1%)...?.plot_|
0000aa80  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 39 32  |sprite_masked(92|
0000aa90  36 2c 35 35 38 2c 31 2c  31 2c 31 2c 31 2c 22 6b  |6,558,1,1,1,1,"k|
0000aaa0  6e 69 66 65 33 22 2c 73  70 72 69 74 65 5f 61 72  |nife3",sprite_ar|
0000aab0  65 61 31 25 29 0d 05 8f  2f 42 25 3d 73 63 72 65  |ea1%).../B%=scre|
0000aac0  65 6e 5f 74 77 6f 25 3a  43 25 3d 73 63 72 65 65  |en_two%:C%=scree|
0000aad0  6e 5f 6f 6e 65 25 3a d6  73 61 76 65 5f 73 63 72  |n_one%:.save_scr|
0000aae0  65 65 6e 25 0d 05 90 0e  f2 70 61 75 73 65 28 31  |een%.....pause(1|
0000aaf0  30 29 0d 05 91 39 f2 70  6c 6f 74 5f 73 70 72 69  |0)...9.plot_spri|
0000ab00  74 65 28 38 30 32 2c 35  34 34 2c 31 2c 31 2c 31  |te(802,544,1,1,1|
0000ab10  2c 31 2c 22 62 6c 61 6e  6b 33 33 22 2c 73 70 72  |,1,"blank33",spr|
0000ab20  69 74 65 5f 61 72 65 61  31 25 29 0d 05 92 37 f2  |ite_area1%)...7.|
0000ab30  70 6c 6f 74 5f 73 70 72  69 74 65 28 38 38 30 2c  |plot_sprite(880,|
0000ab40  37 35 33 2c 31 2c 31 2c  31 2c 31 2c 22 62 6c 6f  |753,1,1,1,1,"blo|
0000ab50  63 6b 22 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |ck",sprite_area1|
0000ab60  25 29 0d 05 93 3f f2 70  6c 6f 74 5f 73 70 72 69  |%)...?.plot_spri|
0000ab70  74 65 5f 6d 61 73 6b 65  64 28 39 37 38 2c 35 34  |te_masked(978,54|
0000ab80  36 2c 31 2c 31 2c 31 2c  31 2c 22 6b 6e 69 66 65  |6,1,1,1,1,"knife|
0000ab90  39 22 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |9",sprite_area1%|
0000aba0  29 0d 05 94 2f 42 25 3d  73 63 72 65 65 6e 5f 74  |).../B%=screen_t|
0000abb0  77 6f 25 3a 43 25 3d 73  63 72 65 65 6e 5f 6f 6e  |wo%:C%=screen_on|
0000abc0  65 25 3a d6 73 61 76 65  5f 73 63 72 65 65 6e 25  |e%:.save_screen%|
0000abd0  0d 05 95 0e f2 70 61 75  73 65 28 35 30 29 0d 05  |.....pause(50)..|
0000abe0  96 10 2a 52 6d 4b 69 6c  6c 20 64 6f 6f 72 0d 05  |..*RmKill door..|
0000abf0  97 3c 2a 52 4d 65 6e 73  75 72 65 20 63 68 6f 70  |.<*RMensure chop|
0000ac00  31 20 2a 52 4d 6c 6f 61  64 20 22 3c 43 72 79 73  |1 *RMload "<Crys|
0000ac10  74 61 6c 32 24 64 69 72  3e 2e 50 54 30 2e 73 6f  |tal2$dir>.PT0.so|
0000ac20  75 6e 64 2e 63 68 6f 70  31 22 0d 05 98 3a 2a 52  |und.chop1"...:*R|
0000ac30  4d 65 6e 73 75 72 65 20  62 6f 6e 6b 20 2a 52 4d  |Mensure bonk *RM|
0000ac40  6c 6f 61 64 20 22 3c 43  72 79 73 74 61 6c 32 24  |load "<Crystal2$|
0000ac50  64 69 72 3e 2e 50 54 30  2e 73 6f 75 6e 64 2e 62  |dir>.PT0.sound.b|
0000ac60  6f 6e 6b 22 0d 05 99 0f  66 25 3d 31 3a 69 6e 63  |onk"....f%=1:inc|
0000ac70  25 3d 31 0d 05 9a 0c 2a  66 78 31 31 33 2c 31 0d  |%=1....*fx113,1.|
0000ac80  05 9b 0c 2a 66 78 31 31  32 2c 31 0d 05 9c 12 d4  |...*fx112,1.....|
0000ac90  31 2c 2d 31 35 2c 26 32  30 30 30 2c 32 0d 05 9d  |1,-15,&2000,2...|
0000aca0  05 f5 0d 05 9e 0d f2 73  74 5f 70 61 75 73 65 0d  |.......st_pause.|
0000acb0  05 9f 18 e7 66 25 3d 32  20 d4 32 2c 2d 31 35 2c  |....f%=2 .2,-15,|
0000acc0  26 31 36 30 30 2c 32 0d  05 a0 33 f2 70 6c 6f 74  |&1600,2...3.plot|
0000acd0  5f 73 70 72 69 74 65 28  33 32 2c 31 38 38 2c 31  |_sprite(32,188,1|
0000ace0  2c 31 2c 31 2c 31 2c 22  66 6c 61 73 68 22 2b c3  |,1,1,1,"flash"+.|
0000acf0  28 66 25 29 2c 73 61 31  25 29 0d 05 a1 11 f2 65  |(f%),sa1%).....e|
0000ad00  6e 5f 70 61 75 73 65 28  31 30 29 0d 05 a2 0e 66  |n_pause(10)....f|
0000ad10  25 3d 66 25 2b 69 6e 63  25 0d 05 a3 16 e7 66 25  |%=f%+inc%.....f%|
0000ad20  3d 35 20 69 6e 63 25 3d  2d 31 3a 66 25 3d 33 0d  |=5 inc%=-1:f%=3.|
0000ad30  05 a4 09 fd 66 25 3d 30  0d 05 a5 2e f2 70 6c 6f  |....f%=0.....plo|
0000ad40  74 5f 73 70 72 69 74 65  28 33 32 2c 31 38 38 2c  |t_sprite(32,188,|
0000ad50  31 2c 31 2c 31 2c 31 2c  22 66 6c 61 73 68 35 22  |1,1,1,1,"flash5"|
0000ad60  2c 73 61 31 25 29 0d 05  a6 2f 42 25 3d 73 63 72  |,sa1%).../B%=scr|
0000ad70  65 65 6e 5f 6f 6e 65 25  3a 43 25 3d 73 63 72 65  |een_one%:C%=scre|
0000ad80  65 6e 5f 74 77 6f 25 3a  d6 73 61 76 65 5f 73 63  |en_two%:.save_sc|
0000ad90  72 65 65 6e 25 0d 05 a7  15 61 6e 5f 78 25 3d 30  |reen%....an_x%=0|
0000ada0  3a 61 6e 5f 79 25 3d 33  37 32 0d 05 a8 17 61 6e  |:an_y%=372....an|
0000adb0  5f 78 32 25 3d 30 3a 61  6e 5f 79 32 25 3d 33 37  |_x2%=0:an_y2%=37|
0000adc0  32 0d 05 a9 0c 69 6e 63  78 25 3d 33 32 0d 05 aa  |2....incx%=32...|
0000add0  0b 69 6e 63 79 25 3d 34  0d 05 ab 14 73 65 6c 5f  |.incy%=4....sel_|
0000ade0  73 70 72 69 74 65 24 3d  22 70 32 22 0d 05 ac 15  |sprite$="p2"....|
0000adf0  73 65 6c 5f 73 70 72 69  74 65 32 24 3d 22 70 32  |sel_sprite2$="p2|
0000ae00  22 0d 05 ad 1d f4 20 56  44 55 32 34 2c 31 36 30  |"..... VDU24,160|
0000ae10  3b 31 32 38 3b 31 31 31  38 3b 39 31 38 3b 0d 05  |;128;1118;918;..|
0000ae20  ae 0c 2a 66 78 31 31 32  2c 32 0d 05 af 18 f2 73  |..*fx112,2.....s|
0000ae30  74 61 72 74 5f 61 6e 69  6d 28 22 62 6c 61 6e 6b  |tart_anim("blank|
0000ae40  22 29 0d 05 b0 0c 2a 66  78 31 31 32 2c 31 0d 05  |")....*fx112,1..|
0000ae50  b1 1a f2 73 74 61 72 74  5f 61 6e 69 6d 32 28 22  |...start_anim2("|
0000ae60  62 6c 61 6e 6b 32 22 29  0d 05 b2 19 2a 63 68 61  |blank2")....*cha|
0000ae70  6e 6e 65 6c 76 6f 69 63  65 20 31 20 63 68 6f 70  |nnelvoice 1 chop|
0000ae80  31 0d 05 b3 0e e3 66 6c  79 25 3d 30 b8 32 32 0d  |1.....fly%=0.22.|
0000ae90  05 b4 0e 20 f2 73 74 5f  70 61 75 73 65 0d 05 b5  |... .st_pause...|
0000aea0  11 20 61 6e 5f 78 25 3d  61 6e 5f 78 32 25 0d 05  |. an_x%=an_x2%..|
0000aeb0  b6 16 20 61 6e 5f 78 25  3d 61 6e 5f 78 25 2b 69  |.. an_x%=an_x%+i|
0000aec0  6e 63 78 25 0d 05 b7 11  20 61 6e 5f 79 25 3d 61  |ncx%.... an_y%=a|
0000aed0  6e 5f 79 32 25 0d 05 b8  16 20 61 6e 5f 79 25 3d  |n_y2%.... an_y%=|
0000aee0  61 6e 5f 79 25 2b 69 6e  63 79 25 0d 05 b9 1c e7  |an_y%+incy%.....|
0000aef0  66 6c 79 25 3d 33 20 69  6e 63 78 25 3d 32 34 3a  |fly%=3 incx%=24:|
0000af00  69 6e 63 79 25 3d 30 0d  05 ba 40 e7 66 6c 79 25  |incy%=0...@.fly%|
0000af10  3d 35 20 69 6e 63 78 25  3d 32 30 3a 69 6e 63 79  |=5 incx%=20:incy|
0000af20  25 3d 2d 34 3a 73 65 6c  5f 73 70 72 69 74 65 24  |%=-4:sel_sprite$|
0000af30  3d 22 70 32 22 3a 73 65  6c 5f 73 70 72 69 74 65  |="p2":sel_sprite|
0000af40  32 24 3d 22 70 32 22 0d  05 bb 15 e7 66 6c 79 25  |2$="p2".....fly%|
0000af50  3d 37 20 20 69 6e 63 79  25 3d 2d 38 0d 05 bc 15  |=7  incy%=-8....|
0000af60  e7 66 6c 79 25 3d 39 20  69 6e 63 79 25 3d 2d 31  |.fly%=9 incy%=-1|
0000af70  36 0d 05 bd 16 e7 66 6c  79 25 3d 31 31 20 69 6e  |6.....fly%=11 in|
0000af80  63 79 25 3d 2d 32 34 0d  05 be 4e e7 66 6c 79 25  |cy%=-24...N.fly%|
0000af90  3d 31 35 20 69 6e 63 78  25 3d 38 3a 69 6e 63 79  |=15 incx%=8:incy|
0000afa0  25 3d 30 3a 73 65 6c 5f  73 70 72 69 74 65 24 3d  |%=0:sel_sprite$=|
0000afb0  22 70 34 22 3a 73 65 6c  5f 73 70 72 69 74 65 32  |"p4":sel_sprite2|
0000afc0  24 3d 22 70 34 22 3a d4  31 2c 2d 31 35 2c 26 32  |$="p4":.1,-15,&2|
0000afd0  30 30 30 2c 32 0d 05 bf  0d 20 2a 46 58 31 31 33  |000,2.... *FX113|
0000afe0  2c 31 0d 05 c0 0d 20 2a  46 58 31 31 32 2c 32 0d  |,1.... *FX112,2.|
0000aff0  05 c1 0a 20 2a 46 58 31  39 0d 05 c2 13 20 f2 61  |... *FX19.... .a|
0000b000  6e 69 6d 28 22 62 6c 61  6e 6b 22 29 0d 05 c3 11  |nim("blank")....|
0000b010  20 f2 65 6e 5f 70 61 75  73 65 28 35 29 0d 05 c4  | .en_pause(5)...|
0000b020  0e 20 f2 73 74 5f 70 61  75 73 65 0d 05 c5 11 20  |. .st_pause.... |
0000b030  61 6e 5f 78 32 25 3d 61  6e 5f 78 25 0d 05 c6 18  |an_x2%=an_x%....|
0000b040  20 61 6e 5f 78 32 25 3d  61 6e 5f 78 32 25 2b 69  | an_x2%=an_x2%+i|
0000b050  6e 63 78 25 0d 05 c7 11  20 61 6e 5f 79 32 25 3d  |ncx%.... an_y2%=|
0000b060  61 6e 5f 79 25 0d 05 c8  18 20 61 6e 5f 79 32 25  |an_y%.... an_y2%|
0000b070  3d 61 6e 5f 79 32 25 2b  69 6e 63 79 25 0d 05 c9  |=an_y2%+incy%...|
0000b080  0d 20 2a 46 58 31 31 33  2c 32 0d 05 ca 0d 20 2a  |. *FX113,2.... *|
0000b090  46 58 31 31 32 2c 31 0d  05 cb 0a 20 2a 46 58 31  |FX112,1.... *FX1|
0000b0a0  39 0d 05 cc 15 20 f2 61  6e 69 6d 32 28 22 62 6c  |9.... .anim2("bl|
0000b0b0  61 6e 6b 32 22 29 0d 05  cd 11 20 f2 65 6e 5f 70  |ank2").... .en_p|
0000b0c0  61 75 73 65 28 35 29 0d  05 ce 05 ed 0d 05 cf 18  |ause(5).........|
0000b0d0  2a 63 68 61 6e 6e 65 6c  76 6f 69 63 65 20 32 20  |*channelvoice 2 |
0000b0e0  62 6f 6e 6b 0d 05 d0 0c  2a 46 58 31 31 33 2c 32  |bonk....*FX113,2|
0000b0f0  0d 05 d1 0c 2a 46 58 31  31 32 2c 31 0d 05 d2 39  |....*FX112,1...9|
0000b100  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 38 30 32  |.plot_sprite(802|
0000b110  2c 35 34 34 2c 31 2c 31  2c 31 2c 31 2c 22 62 6c  |,544,1,1,1,1,"bl|
0000b120  61 6e 6b 33 33 22 2c 73  70 72 69 74 65 5f 61 72  |ank33",sprite_ar|
0000b130  65 61 31 25 29 0d 05 d3  37 f2 70 6c 6f 74 5f 73  |ea1%)...7.plot_s|
0000b140  70 72 69 74 65 28 38 38  30 2c 37 35 33 2c 31 2c  |prite(880,753,1,|
0000b150  31 2c 31 2c 31 2c 22 62  6c 6f 63 6b 22 2c 73 70  |1,1,1,"block",sp|
0000b160  72 69 74 65 5f 61 72 65  61 31 25 29 0d 05 d4 2f  |rite_area1%).../|
0000b170  42 25 3d 73 63 72 65 65  6e 5f 6f 6e 65 25 3a 43  |B%=screen_one%:C|
0000b180  25 3d 73 63 72 65 65 6e  5f 74 77 6f 25 3a d6 73  |%=screen_two%:.s|
0000b190  61 76 65 5f 73 63 72 65  65 6e 25 0d 05 d5 17 61  |ave_screen%....a|
0000b1a0  6e 5f 78 25 3d 39 37 38  3a 61 6e 5f 79 25 3d 35  |n_x%=978:an_y%=5|
0000b1b0  34 36 0d 05 d6 19 61 6e  5f 78 32 25 3d 39 37 38  |46....an_x2%=978|
0000b1c0  3a 61 6e 5f 79 32 25 3d  35 34 36 0d 05 d7 0b 69  |:an_y2%=546....i|
0000b1d0  6e 63 78 25 3d 30 0d 05  d8 0c 69 6e 63 79 25 3d  |ncx%=0....incy%=|
0000b1e0  2d 36 0d 05 d9 18 73 65  6c 5f 73 70 72 69 74 65  |-6....sel_sprite|
0000b1f0  24 3d 22 6b 6e 69 66 65  39 22 0d 05 da 19 73 65  |$="knife9"....se|
0000b200  6c 5f 73 70 72 69 74 65  32 24 3d 22 6b 6e 69 66  |l_sprite2$="knif|
0000b210  65 39 22 0d 05 db 0c 2a  66 78 31 31 32 2c 32 0d  |e9"....*fx112,2.|
0000b220  05 dc 18 f2 73 74 61 72  74 5f 61 6e 69 6d 28 22  |....start_anim("|
0000b230  62 6c 61 6e 6b 22 29 0d  05 dd 0c 2a 66 78 31 31  |blank")....*fx11|
0000b240  32 2c 31 0d 05 de 1a f2  73 74 61 72 74 5f 61 6e  |2,1.....start_an|
0000b250  69 6d 32 28 22 62 6c 61  6e 6b 32 22 29 0d 05 df  |im2("blank2")...|
0000b260  0e e3 66 6c 79 25 3d 30  b8 31 35 0d 05 e0 0e 20  |..fly%=0.15.... |
0000b270  f2 73 74 5f 70 61 75 73  65 0d 05 e1 11 20 61 6e  |.st_pause.... an|
0000b280  5f 78 25 3d 61 6e 5f 78  32 25 0d 05 e2 16 20 61  |_x%=an_x2%.... a|
0000b290  6e 5f 78 25 3d 61 6e 5f  78 25 2b 69 6e 63 78 25  |n_x%=an_x%+incx%|
0000b2a0  0d 05 e3 11 20 61 6e 5f  79 25 3d 61 6e 5f 79 32  |.... an_y%=an_y2|
0000b2b0  25 0d 05 e4 16 20 61 6e  5f 79 25 3d 61 6e 5f 79  |%.... an_y%=an_y|
0000b2c0  25 2b 69 6e 63 79 25 0d  05 e5 14 e7 66 6c 79 25  |%+incy%.....fly%|
0000b2d0  3d 33 20 69 6e 63 79 25  3d 2d 36 0d 05 e6 14 e7  |=3 incy%=-6.....|
0000b2e0  66 6c 79 25 3d 35 20 69  6e 63 79 25 3d 2d 38 0d  |fly%=5 incy%=-8.|
0000b2f0  05 e7 15 e7 66 6c 79 25  3d 37 20 69 6e 63 79 25  |....fly%=7 incy%|
0000b300  3d 2d 31 32 0d 05 e8 15  e7 66 6c 79 25 3d 39 20  |=-12.....fly%=9 |
0000b310  69 6e 63 79 25 3d 2d 31  36 0d 05 e9 16 e7 66 6c  |incy%=-16.....fl|
0000b320  79 25 3d 31 31 20 69 6e  63 79 25 3d 2d 32 30 0d  |y%=11 incy%=-20.|
0000b330  05 ea 16 e7 66 6c 79 25  3d 31 33 20 69 6e 63 79  |....fly%=13 incy|
0000b340  25 3d 2d 32 34 0d 05 eb  0d 20 2a 46 58 31 31 33  |%=-24.... *FX113|
0000b350  2c 31 0d 05 ec 0d 20 2a  46 58 31 31 32 2c 32 0d  |,1.... *FX112,2.|
0000b360  05 ed 0a 20 2a 46 58 31  39 0d 05 ee 13 20 f2 61  |... *FX19.... .a|
0000b370  6e 69 6d 28 22 62 6c 61  6e 6b 22 29 0d 05 ef 3e  |nim("blank")...>|
0000b380  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  | .plot_sprite_ma|
0000b390  73 6b 65 64 28 39 36 34  2c 31 35 32 2c 31 2c 31  |sked(964,152,1,1|
0000b3a0  2c 31 2c 31 2c 22 4c 45  47 32 22 2c 73 70 72 69  |,1,1,"LEG2",spri|
0000b3b0  74 65 5f 61 72 65 61 31  25 29 0d 05 f0 11 20 f2  |te_area1%).... .|
0000b3c0  65 6e 5f 70 61 75 73 65  28 32 29 0d 05 f1 0e 20  |en_pause(2).... |
0000b3d0  f2 73 74 5f 70 61 75 73  65 0d 05 f2 11 20 61 6e  |.st_pause.... an|
0000b3e0  5f 78 32 25 3d 61 6e 5f  78 25 0d 05 f3 18 20 61  |_x2%=an_x%.... a|
0000b3f0  6e 5f 78 32 25 3d 61 6e  5f 78 32 25 2b 69 6e 63  |n_x2%=an_x2%+inc|
0000b400  78 25 0d 05 f4 11 20 61  6e 5f 79 32 25 3d 61 6e  |x%.... an_y2%=an|
0000b410  5f 79 25 0d 05 f5 18 20  61 6e 5f 79 32 25 3d 61  |_y%.... an_y2%=a|
0000b420  6e 5f 79 32 25 2b 69 6e  63 79 25 0d 05 f6 0d 20  |n_y2%+incy%.... |
0000b430  2a 46 58 31 31 33 2c 32  0d 05 f7 0d 20 2a 46 58  |*FX113,2.... *FX|
0000b440  31 31 32 2c 31 0d 05 f8  0a 20 2a 46 58 31 39 0d  |112,1.... *FX19.|
0000b450  05 f9 15 20 f2 61 6e 69  6d 32 28 22 62 6c 61 6e  |... .anim2("blan|
0000b460  6b 32 22 29 0d 05 fa 3e  20 f2 70 6c 6f 74 5f 73  |k2")...> .plot_s|
0000b470  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 39 36 34  |prite_masked(964|
0000b480  2c 31 35 32 2c 31 2c 31  2c 31 2c 31 2c 22 4c 45  |,152,1,1,1,1,"LE|
0000b490  47 32 22 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |G2",sprite_area1|
0000b4a0  25 29 0d 05 fb 11 20 f2  65 6e 5f 70 61 75 73 65  |%).... .en_pause|
0000b4b0  28 32 29 0d 05 fc 05 ed  0d 05 fd 12 d4 31 2c 2d  |(2)..........1,-|
0000b4c0  31 35 2c 26 32 30 30 30  2c 32 0d 05 fe 0d 20 2a  |15,&2000,2.... *|
0000b4d0  46 58 31 31 32 2c 32 0d  05 ff 0f f2 70 61 75 73  |FX112,2.....paus|
0000b4e0  65 28 31 30 30 29 0d 06  00 37 f2 70 6c 6f 74 5f  |e(100)...7.plot_|
0000b4f0  73 70 72 69 74 65 28 38  35 38 2c 33 32 30 2c 31  |sprite(858,320,1|
0000b500  2c 31 2c 31 2c 31 2c 22  48 45 41 44 31 22 2c 73  |,1,1,1,"HEAD1",s|
0000b510  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 06 01  |prite_area1%)...|
0000b520  0f f2 70 61 75 73 65 28  32 30 30 29 0d 06 02 39  |..pause(200)...9|
0000b530  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 38 30 32  |.plot_sprite(802|
0000b540  2c 37 36 31 2c 31 2c 31  2c 31 2c 31 2c 22 62 6c  |,761,1,1,1,1,"bl|
0000b550  6f 63 6b 63 6c 22 2c 73  70 72 69 74 65 5f 61 72  |ockcl",sprite_ar|
0000b560  65 61 31 25 29 0d 06 03  16 e3 66 25 3d 37 32 32  |ea1%).....f%=722|
0000b570  20 b8 20 34 31 38 20 88  2d 31 36 0d 06 04 0e 20  | . 418 .-16.... |
0000b580  f2 73 74 5f 70 61 75 73  65 0d 06 05 39 20 20 f2  |.st_pause...9  .|
0000b590  70 6c 6f 74 5f 73 70 72  69 74 65 28 38 38 30 2c  |plot_sprite(880,|
0000b5a0  66 25 2c 31 2c 31 2c 31  2c 31 2c 22 62 6c 6f 63  |f%,1,1,1,1,"bloc|
0000b5b0  6b 32 22 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |k2",sprite_area1|
0000b5c0  25 29 0d 06 06 11 20 f2  65 6e 5f 70 61 75 73 65  |%).... .en_pause|
0000b5d0  28 32 29 0d 06 07 05 ed  0d 06 08 12 d4 32 2c 2d  |(2)..........2,-|
0000b5e0  31 35 2c 26 32 30 30 30  2c 32 0d 06 09 37 f2 70  |15,&2000,2...7.p|
0000b5f0  6c 6f 74 5f 73 70 72 69  74 65 28 38 35 38 2c 33  |lot_sprite(858,3|
0000b600  32 30 2c 31 2c 31 2c 31  2c 31 2c 22 48 45 41 44  |20,1,1,1,1,"HEAD|
0000b610  32 22 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |2",sprite_area1%|
0000b620  29 0d 06 0a 2f 42 25 3d  73 63 72 65 65 6e 5f 74  |).../B%=screen_t|
0000b630  77 6f 25 3a 43 25 3d 73  63 72 65 65 6e 5f 6f 6e  |wo%:C%=screen_on|
0000b640  65 25 3a d6 73 61 76 65  5f 73 63 72 65 65 6e 25  |e%:.save_screen%|
0000b650  0d 06 0b 0e f2 70 61 75  73 65 28 35 30 29 0d 06  |.....pause(50)..|
0000b660  0c 15 2a 63 68 61 6e 6e  65 6c 76 6f 69 63 65 20  |..*channelvoice |
0000b670  31 20 31 0d 06 0d 15 2a  63 68 61 6e 6e 65 6c 76  |1 1....*channelv|
0000b680  6f 69 63 65 20 32 20 32  0d 06 0e 10 2a 52 4d 6b  |oice 2 2....*RMk|
0000b690  69 6c 6c 20 62 6f 6e 6b  0d 06 0f 11 2a 52 4d 6b  |ill bonk....*RMk|
0000b6a0  69 6c 6c 20 63 68 6f 70  31 0d 06 10 13 2a 52 4d  |ill chop1....*RM|
0000b6b0  6b 69 6c 6c 20 65 78 70  6c 6f 64 65 0d 06 11 0c  |kill explode....|
0000b6c0  2a 46 58 31 31 32 2c 31  0d 06 12 0c 2a 46 58 31  |*FX112,1....*FX1|
0000b6d0  31 33 2c 31 0d 06 13 20  20 62 75 74 62 6f 78 5f  |13,1...  butbox_|
0000b6e0  78 25 3d 31 30 38 3a 62  75 74 62 6f 78 5f 79 25  |x%=108:butbox_y%|
0000b6f0  3d 35 36 30 0d 06 14 2c  20 f2 62 6f 78 28 62 75  |=560..., .box(bu|
0000b700  74 62 6f 78 5f 78 25 2d  32 34 2c 62 75 74 62 6f  |tbox_x%-24,butbo|
0000b710  78 5f 79 25 2d 31 36 2c  36 35 30 2c 33 38 38 29  |x_y%-16,650,388)|
0000b720  0d 06 15 2f 20 f2 70 72  69 28 31 32 30 2c 38 37  |.../ .pri(120,87|
0000b730  30 2c 22 54 68 69 73 20  69 73 20 50 72 6f 66 65  |0,"This is Profe|
0000b740  73 73 6f 72 20 52 6f 62  65 72 74 73 2e 22 29 0d  |ssor Roberts.").|
0000b750  06 16 10 20 f2 70 61 75  73 65 28 31 30 30 29 0d  |... .pause(100).|
0000b760  06 17 2e 20 f2 70 72 69  28 31 32 30 2c 38 30 30  |... .pri(120,800|
0000b770  2c 22 48 65 20 69 73 20  67 6c 61 64 20 79 6f 75  |,"He is glad you|
0000b780  20 68 61 76 65 20 66 6f  75 6e 64 22 29 0d 06 18  | have found")...|
0000b790  2b 20 f2 70 72 69 28 31  32 30 2c 37 33 30 2c 22  |+ .pri(120,730,"|
0000b7a0  68 69 73 20 74 65 6d 70  6c 65 20 6c 61 62 6f 72  |his temple labor|
0000b7b0  61 74 6f 72 79 2e 22 29  0d 06 19 10 20 f2 70 61  |atory.").... .pa|
0000b7c0  75 73 65 28 31 30 30 29  0d 06 1a 2e 20 f2 70 72  |use(100).... .pr|
0000b7d0  69 28 31 32 30 2c 36 36  30 2c 22 54 68 65 20 6d  |i(120,660,"The m|
0000b7e0  65 65 74 69 6e 67 20 77  69 6c 6c 20 73 74 61 72  |eeting will star|
0000b7f0  74 20 69 6e 22 29 0d 06  1b 23 20 f2 70 72 69 28  |t in")...# .pri(|
0000b800  31 32 30 2c 35 39 30 2c  22 61 20 66 65 77 20 6d  |120,590,"a few m|
0000b810  69 6e 75 74 65 73 2e 22  29 0d 06 1c 16 20 f2 73  |inutes.").... .s|
0000b820  70 61 63 65 28 39 30 30  2c 39 2c 30 2c 30 29 0d  |pace(900,9,0,0).|
0000b830  06 1d 30 20 42 25 3d 73  63 72 65 65 6e 5f 74 77  |..0 B%=screen_tw|
0000b840  6f 25 3a 43 25 3d 73 63  72 65 65 6e 5f 6f 6e 65  |o%:C%=screen_one|
0000b850  25 3a d6 73 61 76 65 5f  73 63 72 65 65 6e 25 0d  |%:.save_screen%.|
0000b860  06 1e 1f 20 62 75 74 62  6f 78 5f 78 25 3d 38 38  |... butbox_x%=88|
0000b870  3a 62 75 74 62 6f 78 5f  79 25 3d 32 38 30 0d 06  |:butbox_y%=280..|
0000b880  1f 2c 20 f2 62 6f 78 28  62 75 74 62 6f 78 5f 78  |., .box(butbox_x|
0000b890  25 2d 32 34 2c 62 75 74  62 6f 78 5f 79 25 2d 31  |%-24,butbox_y%-1|
0000b8a0  36 2c 37 30 30 2c 32 38  30 29 0d 06 20 30 20 f2  |6,700,280).. 0 .|
0000b8b0  70 72 69 28 31 30 30 2c  34 36 30 2c 22 57 68 69  |pri(100,460,"Whi|
0000b8c0  6c 65 20 79 6f 75 20 61  72 65 20 77 61 69 74 69  |le you are waiti|
0000b8d0  6e 67 2c 20 20 79 6f 75  22 29 0d 06 21 2f 20 f2  |ng,  you")..!/ .|
0000b8e0  70 72 69 28 31 30 30 2c  33 39 30 2c 22 63 61 6e  |pri(100,390,"can|
0000b8f0  20 67 6f 20 75 70 73 74  61 69 72 73 20 66 6f 72  | go upstairs for|
0000b900  20 61 20 63 6f 6f 6c 22  29 0d 06 22 1b 20 f2 70  | a cool")..". .p|
0000b910  72 69 28 31 30 30 2c 33  32 30 2c 22 64 72 69 6e  |ri(100,320,"drin|
0000b920  6b 2e 22 29 0d 06 23 1e  f2 6c 6f 61 64 5f 73 70  |k.")..#..load_sp|
0000b930  72 69 74 65 73 28 22 73  70 5f 73 74 61 72 74 32  |rites("sp_start2|
0000b940  22 29 0d 06 24 2e f2 6c  6f 61 64 5f 70 69 63 74  |")..$..load_pict|
0000b950  75 72 65 28 70 69 63 74  75 72 65 31 25 2b 28 31  |ure(picture1%+(1|
0000b960  30 32 34 2a 31 35 29 2c  22 77 61 6c 6c 32 22 29  |024*15),"wall2")|
0000b970  0d 06 25 15 f2 73 70 61  63 65 28 39 30 30 2c 39  |..%..space(900,9|
0000b980  2c 31 2c 30 29 0d 06 26  0c 2a 46 58 31 31 32 2c  |,1,0)..&.*FX112,|
0000b990  32 0d 06 27 08 fb 31 32  39 0d 06 28 05 db 0d 06  |2..'..129..(....|
0000b9a0  29 14 e7 56 25 3d 30 20  f2 74 6f 70 5f 62 6c 61  |)..V%=0 .top_bla|
0000b9b0  6e 6b 0d 06 2a 21 41 25  3d 70 69 63 74 75 72 65  |nk..*!A%=picture|
0000b9c0  31 25 2b 28 31 30 32 34  2a 31 35 29 3a d6 64 72  |1%+(1024*15):.dr|
0000b9d0  61 77 25 0d 06 2b 0e e3  66 25 3d 30 b8 38 20 88  |aw%..+..f%=0.8 .|
0000b9e0  32 0d 06 2c 4c 20 20 ec  33 31 2d 66 25 2c 33 32  |2..,L  .31-f%,32|
0000b9f0  2d 66 25 3a df 31 32 34  39 2b 66 25 2c 33 32 2d  |-f%:.1249+f%,32-|
0000ba00  66 25 3a df 31 32 34 39  2b 66 25 2c 39 33 33 2b  |f%:.1249+f%,933+|
0000ba10  66 25 3a df 33 31 2d 66  25 2c 39 33 33 2b 66 25  |f%:.31-f%,933+f%|
0000ba20  3a df 33 31 2d 66 25 2c  33 32 2d 66 25 0d 06 2d  |:.31-f%,32-f%..-|
0000ba30  05 ed 0d 06 2e 19 f2 62  6f 78 28 32 30 30 2c 37  |.......box(200,7|
0000ba40  30 30 2c 38 38 30 2c 32  30 30 29 0d 06 2f 10 66  |00,880,200)../.f|
0000ba50  61 64 65 24 3d 22 66 61  64 65 22 0d 06 30 3c 20  |ade$="fade"..0< |
0000ba60  f2 70 72 69 28 32 31 38  2c 38 32 30 2c 22 54 68  |.pri(218,820,"Th|
0000ba70  69 73 20 69 73 20 74 68  65 20 70 72 6f 66 65 73  |is is the profes|
0000ba80  73 6f 72 27 73 20 64 72  69 6e 6b 73 20 6d 61 63  |sor's drinks mac|
0000ba90  68 69 6e 65 2e 22 29 0d  06 31 30 20 f2 70 72 69  |hine.")..10 .pri|
0000baa0  28 32 31 38 2c 37 35 30  2c 22 41 73 20 75 73 75  |(218,750,"As usu|
0000bab0  61 6c 2c 20 20 69 74 20  6e 65 65 64 73 20 66 69  |al,  it needs fi|
0000bac0  78 69 6e 67 2e 22 29 0d  06 32 14 e7 56 25 3d 30  |xing.")..2..V%=0|
0000bad0  20 f2 74 6f 70 5f 62 6c  61 6e 6b 0d 06 33 18 f2  | .top_blank..3..|
0000bae0  66 61 64 65 28 30 2c 39  36 30 2c 34 2c 30 2c 31  |fade(0,960,4,0,1|
0000baf0  2c 31 29 0d 06 34 08 fb  31 32 39 0d 06 35 05 db  |,1)..4..129..5..|
0000bb00  0d 06 36 21 41 25 3d 70  69 63 74 75 72 65 31 25  |..6!A%=picture1%|
0000bb10  2b 28 31 30 32 34 2a 31  35 29 3a d6 64 72 61 77  |+(1024*15):.draw|
0000bb20  25 0d 06 37 0e e3 66 25  3d 30 b8 38 20 88 32 0d  |%..7..f%=0.8 .2.|
0000bb30  06 38 4c 20 20 ec 33 31  2d 66 25 2c 33 32 2d 66  |.8L  .31-f%,32-f|
0000bb40  25 3a df 31 32 34 39 2b  66 25 2c 33 32 2d 66 25  |%:.1249+f%,32-f%|
0000bb50  3a df 31 32 34 39 2b 66  25 2c 39 33 33 2b 66 25  |:.1249+f%,933+f%|
0000bb60  3a df 33 31 2d 66 25 2c  39 33 33 2b 66 25 3a df  |:.31-f%,933+f%:.|
0000bb70  33 31 2d 66 25 2c 33 32  2d 66 25 0d 06 39 05 ed  |31-f%,32-f%..9..|
0000bb80  0d 06 3a 0c 2a 46 58 31  31 32 2c 31 0d 06 3b 15  |..:.*FX112,1..;.|
0000bb90  f2 73 70 61 63 65 28 39  30 30 2c 39 2c 30 2c 30  |.space(900,9,0,0|
0000bba0  29 0d 06 3c 2f 42 25 3d  73 63 72 65 65 6e 5f 74  |)..</B%=screen_t|
0000bbb0  77 6f 25 3a 43 25 3d 73  63 72 65 65 6e 5f 6f 6e  |wo%:C%=screen_on|
0000bbc0  65 25 3a d6 73 61 76 65  5f 73 63 72 65 65 6e 25  |e%:.save_screen%|
0000bbd0  0d 06 3d 14 e7 56 25 3d  30 20 f2 74 6f 70 5f 62  |..=..V%=0 .top_b|
0000bbe0  6c 61 6e 6b 0d 06 3e 0f  f2 70 61 75 73 65 28 31  |lank..>..pause(1|
0000bbf0  30 30 29 0d 06 3f 19 f2  62 6f 78 28 32 30 30 2c  |00)..?..box(200,|
0000bc00  37 30 30 2c 38 38 30 2c  32 30 30 29 0d 06 40 36  |700,880,200)..@6|
0000bc10  f2 70 72 69 28 32 33 38  2c 38 32 30 2c 22 54 68  |.pri(238,820,"Th|
0000bc20  65 20 6d 61 63 68 69 6e  65 20 73 68 6f 75 6c 64  |e machine should|
0000bc30  20 66 69 6c 6c 20 61 20  63 75 70 20 77 69 74 68  | fill a cup with|
0000bc40  22 29 0d 06 41 30 f2 70  72 69 28 32 33 38 2c 37  |")..A0.pri(238,7|
0000bc50  35 30 2c 22 6a 75 69 63  65 20 61 6e 64 20 74 68  |50,"juice and th|
0000bc60  65 6e 20 70 75 74 20 61  20 6c 69 64 20 6f 6e 2e  |en put a lid on.|
0000bc70  22 29 0d 06 42 15 f2 73  70 61 63 65 28 39 30 30  |")..B..space(900|
0000bc80  2c 39 2c 30 2c 30 29 0d  06 43 19 f2 62 6f 78 28  |,9,0,0)..C..box(|
0000bc90  38 34 30 2c 34 38 30 2c  32 30 30 2c 32 30 30 29  |840,480,200,200)|
0000bca0  0d 06 44 3a f2 70 6c 6f  74 5f 73 70 72 69 74 65  |..D:.plot_sprite|
0000bcb0  28 38 37 30 2c 35 30 36  2c 31 2c 31 2c 31 2c 31  |(870,506,1,1,1,1|
0000bcc0  2c 22 65 78 70 6c 61 69  6e 31 22 2c 73 70 72 69  |,"explain1",spri|
0000bcd0  74 65 5f 61 72 65 61 31  25 29 0d 06 45 0f f2 70  |te_area1%)..E..p|
0000bce0  61 75 73 65 28 32 30 30  29 0d 06 46 3a f2 70 6c  |ause(200)..F:.pl|
0000bcf0  6f 74 5f 73 70 72 69 74  65 28 38 37 30 2c 35 30  |ot_sprite(870,50|
0000bd00  36 2c 31 2c 31 2c 31 2c  31 2c 22 65 78 70 6c 61  |6,1,1,1,1,"expla|
0000bd10  69 6e 32 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |in2",sprite_area|
0000bd20  31 25 29 0d 06 47 0f f2  70 61 75 73 65 28 32 30  |1%)..G..pause(20|
0000bd30  30 29 0d 06 48 3a f2 70  6c 6f 74 5f 73 70 72 69  |0)..H:.plot_spri|
0000bd40  74 65 28 38 37 30 2c 35  30 36 2c 31 2c 31 2c 31  |te(870,506,1,1,1|
0000bd50  2c 31 2c 22 65 78 70 6c  61 69 6e 33 22 2c 73 70  |,1,"explain3",sp|
0000bd60  72 69 74 65 5f 61 72 65  61 31 25 29 0d 06 49 0f  |rite_area1%)..I.|
0000bd70  f2 70 61 75 73 65 28 32  30 30 29 0d 06 4a 19 f2  |.pause(200)..J..|
0000bd80  62 6f 78 28 32 30 30 2c  37 30 30 2c 38 38 30 2c  |box(200,700,880,|
0000bd90  32 30 30 29 0d 06 4b 2e  f2 70 72 69 28 33 32 38  |200)..K..pri(328|
0000bda0  2c 37 38 30 2c 22 54 68  65 72 65 20 61 72 65 20  |,780,"There are |
0000bdb0  6e 6f 20 69 6e 73 74 72  75 63 74 69 6f 6e 73 21  |no instructions!|
0000bdc0  22 29 0d 06 4c 15 f2 73  70 61 63 65 28 39 30 30  |")..L..space(900|
0000bdd0  2c 39 2c 30 2c 30 29 0d  06 4d 05 e1 0d 06 4e 04  |,9,0,0)..M....N.|
0000bde0  0d 06 4f 13 dd f2 64 72  61 77 5f 69 6e 5f 77 69  |..O...draw_in_wi|
0000bdf0  72 65 73 0d 06 50 0c 2a  46 58 31 31 32 2c 32 0d  |res..P.*FX112,2.|
0000be00  06 51 08 fb 31 32 38 0d  06 52 05 db 0d 06 53 14  |.Q..128..R....S.|
0000be10  e7 56 25 3d 30 20 f2 74  6f 70 5f 62 6c 61 6e 6b  |.V%=0 .top_blank|
0000be20  0d 06 54 20 20 20 62 75  74 62 6f 78 5f 78 25 3d  |..T   butbox_x%=|
0000be30  31 30 30 3a 62 75 74 62  6f 78 5f 79 25 3d 32 34  |100:butbox_y%=24|
0000be40  0d 06 55 1c 20 20 77 69  72 65 5f 78 25 3d 38 33  |..U.  wire_x%=83|
0000be50  36 3a 77 69 72 65 5f 79  25 3d 36 34 0d 06 56 18  |6:wire_y%=64..V.|
0000be60  20 20 73 61 31 25 3d 73  70 72 69 74 65 5f 61 72  |  sa1%=sprite_ar|
0000be70  65 61 31 25 0d 06 57 13  20 20 64 69 73 70 6c 61  |ea1%..W.  displa|
0000be80  79 5f 78 25 3d 36 34 0d  06 58 14 20 20 64 69 73  |y_x%=64..X.  dis|
0000be90  70 6c 61 79 5f 79 25 3d  37 30 30 0d 06 59 2e f2  |play_y%=700..Y..|
0000bea0  64 72 61 77 5f 6f 75 74  70 75 74 5f 62 61 73 65  |draw_output_base|
0000beb0  28 77 69 72 65 5f 78 25  2b 28 31 36 2a 31 33 29  |(wire_x%+(16*13)|
0000bec0  2c 77 69 72 65 5f 79 25  29 0d 06 5a 2b f2 62 6f  |,wire_y%)..Z+.bo|
0000bed0  78 28 62 75 74 62 6f 78  5f 78 25 2d 32 34 2c 62  |x(butbox_x%-24,b|
0000bee0  75 74 62 6f 78 5f 79 25  2d 31 36 2c 36 35 30 2c  |utbox_y%-16,650,|
0000bef0  31 38 30 29 0d 06 5b 11  20 20 f2 73 65 74 5f 6f  |180)..[.  .set_o|
0000bf00  75 74 70 75 74 0d 06 5c  0e 20 20 f2 64 69 73 70  |utput..\.  .disp|
0000bf10  6c 61 79 0d 06 5d 19 20  20 41 25 3d 70 69 63 74  |lay..].  A%=pict|
0000bf20  75 72 65 31 25 3a d6 64  72 61 77 25 0d 06 5e 05  |ure1%:.draw%..^.|
0000bf30  e1 0d 06 5f 04 0d 06 60  0b dd f2 67 61 6d 65 31  |..._...`...game1|
0000bf40  0d 06 61 3c 2a 52 4d 65  6e 73 75 72 65 20 63 6c  |..a<*RMensure cl|
0000bf50  69 63 6b 20 2a 52 4d 6c  6f 61 64 20 22 3c 43 72  |ick *RMload "<Cr|
0000bf60  79 73 74 61 6c 32 24 64  69 72 3e 2e 50 54 30 2e  |ystal2$dir>.PT0.|
0000bf70  73 6f 75 6e 64 2e 63 6c  69 63 6b 22 0d 06 62 19  |sound.click"..b.|
0000bf80  2a 63 68 61 6e 6e 65 6c  76 6f 69 63 65 20 31 20  |*channelvoice 1 |
0000bf90  63 6c 69 63 6b 0d 06 63  27 f2 6c 6f 61 64 5f 70  |click..c'.load_p|
0000bfa0  69 63 74 75 72 65 28 70  69 63 74 75 72 65 31 25  |icture(picture1%|
0000bfb0  2c 22 77 69 72 65 5f 62  61 63 22 29 0d 06 64 12  |,"wire_bac")..d.|
0000bfc0  f2 64 72 61 77 5f 69 6e  5f 77 69 72 65 73 0d 06  |.draw_in_wires..|
0000bfd0  65 0f f2 66 69 72 73 74  5f 69 6e 66 6f 0d 06 66  |e..first_info..f|
0000bfe0  10 66 61 64 65 24 3d 22  66 61 64 65 22 0d 06 67  |.fade$="fade"..g|
0000bff0  0c 2a 46 58 31 31 32 2c  31 0d 06 68 18 f2 66 61  |.*FX112,1..h..fa|
0000c000  64 65 28 30 2c 39 36 30  2c 34 2c 30 2c 31 2c 31  |de(0,960,4,0,1,1|
0000c010  29 0d 06 69 15 f2 73 70  61 63 65 28 37 36 30 2c  |)..i..space(760,|
0000c020  39 2c 30 2c 30 29 0d 06  6a 10 f2 73 65 63 6f 6e  |9,0,0)..j..secon|
0000c030  64 5f 69 6e 66 6f 0d 06  6b 15 f2 73 70 61 63 65  |d_info..k..space|
0000c040  28 37 36 30 2c 39 2c 30  2c 30 29 0d 06 6c 11 20  |(760,9,0,0)..l. |
0000c050  20 66 69 6e 69 73 68 65  64 25 3d 30 0d 06 6d 07  | finished%=0..m.|
0000c060  20 20 f5 0d 06 6e 13 20  20 20 20 f2 73 65 74 5f  |  ...n.    .set_|
0000c070  6f 75 74 70 75 74 0d 06  6f 10 20 20 20 20 2a 46  |output..o.    *F|
0000c080  58 31 31 32 2c 31 0d 06  70 0e 20 20 20 20 f2 69  |X112,1..p.    .i|
0000c090  6e 66 6f 31 0d 06 71 13  20 20 20 20 f2 67 65 74  |nfo1..q.    .get|
0000c0a0  5f 61 5f 77 69 72 65 0d  06 72 17 20 20 20 20 77  |_a_wire..r.    w|
0000c0b0  69 72 65 25 3d 67 6f 74  5f 77 69 72 65 25 0d 06  |ire%=got_wire%..|
0000c0c0  73 1d 20 20 20 20 f2 73  65 74 5f 77 69 72 65 5f  |s.    .set_wire_|
0000c0d0  61 6e 69 6d 28 77 69 72  65 25 29 0d 06 74 19 20  |anim(wire%)..t. |
0000c0e0  20 20 20 f2 61 6e 69 6d  5f 77 69 72 65 28 77 69  |   .anim_wire(wi|
0000c0f0  72 65 25 29 0d 06 75 17  20 20 fd a4 61 6c 6c 5f  |re%)..u.  ..all_|
0000c100  63 6f 6e 6e 65 63 74 65  64 3d 31 0d 06 76 15 2a  |connected=1..v.*|
0000c110  63 68 61 6e 6e 65 6c 76  6f 69 63 65 20 31 20 31  |channelvoice 1 1|
0000c120  0d 06 77 11 2a 52 4d 6b  69 6c 6c 20 63 6c 69 63  |..w.*RMkill clic|
0000c130  6b 0d 06 78 05 e1 0d 06  79 04 0d 06 7a 16 dd f2  |k..x....y...z...|
0000c140  61 6e 69 6d 5f 77 69 72  65 28 77 69 72 65 25 29  |anim_wire(wire%)|
0000c150  0d 06 7b 0e 20 20 2a 46  58 31 31 32 2c 31 0d 06  |..{.  *FX112,1..|
0000c160  7c 0a 65 6e 64 25 3d 30  0d 06 7d 2b f2 62 6f 78  ||.end%=0..}+.box|
0000c170  28 62 75 74 62 6f 78 5f  78 25 2d 32 34 2c 62 75  |(butbox_x%-24,bu|
0000c180  74 62 6f 78 5f 79 25 2d  31 36 2c 36 35 30 2c 31  |tbox_y%-16,650,1|
0000c190  38 30 29 0d 06 7e 05 f5  0d 06 7f 0e 20 20 2a 46  |80)..~......  *F|
0000c1a0  58 31 31 32 2c 31 0d 06  80 18 20 20 f2 64 65 66  |X112,1....  .def|
0000c1b0  69 6e 65 5f 62 75 74 74  6f 6e 73 28 32 29 0d 06  |ine_buttons(2)..|
0000c1c0  81 2b 20 20 f2 73 65 74  5f 70 6f 73 5f 62 75 74  |.+  .set_pos_but|
0000c1d0  74 6f 6e 73 28 62 75 74  62 6f 78 5f 78 25 2c 62  |tons(butbox_x%,b|
0000c1e0  75 74 62 6f 78 5f 79 25  29 0d 06 82 10 20 20 f2  |utbox_y%)....  .|
0000c1f0  70 61 75 73 65 28 31 30  29 0d 06 83 1c 20 20 f5  |pause(10)....  .|
0000c200  3a c8 97 6d 78 25 2c 6d  79 25 2c 6d 63 25 3a fd  |:..mx%,my%,mc%:.|
0000c210  6d 63 25 3d 30 0d 06 84  21 20 20 e3 6d 73 78 66  |mc%=0...!  .msxf|
0000c220  25 3d 31 b8 31 30 3a c8  97 6d 78 25 2c 6d 79 25  |%=1.10:..mx%,my%|
0000c230  2c 6d 63 25 3a ed 0d 06  85 16 20 20 f2 73 65 74  |,mc%:.....  .set|
0000c240  5f 6e 65 77 5f 62 75 74  74 6f 6e 73 0d 06 86 09  |_new_buttons....|
0000c250  20 20 c8 97 ee 0d 06 87  07 20 20 f5 0d 06 88 1d  |  .......  .....|
0000c260  20 20 f2 63 68 65 63 6b  5f 62 75 74 74 6f 6e 73  |  .check_buttons|
0000c270  28 61 6e 5f 6e 75 6d 25  29 0d 06 89 12 20 20 fd  |(an_num%)....  .|
0000c280  73 65 6c 65 63 74 65 64  25 3e 30 0d 06 8a 0e 20  |selected%>0.... |
0000c290  20 2a 46 58 31 31 32 2c  32 0d 06 8b 14 20 20 e7  | *FX112,2....  .|
0000c2a0  73 65 6c 65 63 74 65 64  25 3d 36 20 8c 0d 06 8c  |selected%=6 ....|
0000c2b0  0e 20 20 20 20 65 6e 64  25 3d 31 0d 06 8d 4d 20  |.    end%=1...M |
0000c2c0  20 20 20 f2 6d 6f 76 65  5f 62 6c 6f 63 6b 28 73  |   .move_block(s|
0000c2d0  63 72 65 65 6e 5f 74 77  6f 25 2c 30 2c 77 69 72  |creen_two%,0,wir|
0000c2e0  65 5f 79 25 2c 73 63 72  65 65 6e 5f 74 77 6f 25  |e_y%,screen_two%|
0000c2f0  2c 77 69 72 65 5f 78 25  2c 77 69 72 65 5f 79 25  |,wire_x%,wire_y%|
0000c300  2c 38 38 2c 32 31 36 29  0d 06 8e 19 20 20 20 20  |,88,216)....    |
0000c310  f2 66 69 6e 64 5f 77 69  72 65 28 77 69 72 65 25  |.find_wire(wire%|
0000c320  29 0d 06 8f 2a 20 20 20  20 f2 64 72 61 77 5f 77  |)...*    .draw_w|
0000c330  69 72 65 28 61 63 31 25  2c 68 65 69 67 68 74 25  |ire(ac1%,height%|
0000c340  2c 61 63 32 25 2c 65 6e  64 24 29 0d 06 90 53 20  |,ac2%,end$)...S |
0000c350  20 20 20 f2 6d 6f 76 65  5f 62 6c 6f 63 6b 28 73  |   .move_block(s|
0000c360  63 72 65 65 6e 5f 74 77  6f 25 2c 77 69 72 65 5f  |creen_two%,wire_|
0000c370  78 25 2c 77 69 72 65 5f  79 25 2c 73 63 72 65 65  |x%,wire_y%,scree|
0000c380  6e 5f 6f 6e 65 25 2c 77  69 72 65 5f 78 25 2c 77  |n_one%,wire_x%,w|
0000c390  69 72 65 5f 79 25 2c 38  38 2c 32 31 36 29 0d 06  |ire_y%,88,216)..|
0000c3a0  91 07 20 20 cd 0d 06 92  2e 20 20 e7 73 65 6c 65  |..  .....  .sele|
0000c3b0  63 74 65 64 25 3d 37 20  65 6e 64 25 3d 32 3a f4  |cted%=7 end%=2:.|
0000c3c0  20 63 68 65 63 6b 20 66  69 6e 61 6c 20 65 6e 64  | check final end|
0000c3d0  69 6e 67 0d 06 93 14 20  20 e7 73 65 6c 65 63 74  |ing....  .select|
0000c3e0  65 64 25 3d 35 20 8c 0d  06 94 18 20 20 20 20 63  |ed%=5 .....    c|
0000c3f0  6f 6e 6e 65 63 74 25 3d  a4 70 6c 75 67 6f 6b 0d  |onnect%=.plugok.|
0000c400  06 95 15 20 20 20 20 e7  63 6f 6e 6e 65 63 74 25  |...    .connect%|
0000c410  3e 30 20 8c 0d 06 96 19  20 20 20 20 20 20 d4 31  |>0 .....      .1|
0000c420  2c 2d 31 35 2c 26 32 38  30 30 2c 33 30 0d 06 97  |,-15,&2800,30...|
0000c430  22 20 20 20 20 20 20 e7  69 6e 25 3d 31 20 68 65  |"      .in%=1 he|
0000c440  69 67 68 74 25 3d 68 65  69 67 68 74 25 2d 31 0d  |ight%=height%-1.|
0000c450  06 98 18 20 20 20 20 20  20 65 6e 64 24 3d 22 63  |...      end$="c|
0000c460  6f 6e 5f 69 6e 31 22 0d  06 99 4f 20 20 20 20 20  |on_in1"...O     |
0000c470  20 f2 6d 6f 76 65 5f 62  6c 6f 63 6b 28 73 63 72  | .move_block(scr|
0000c480  65 65 6e 5f 74 77 6f 25  2c 30 2c 77 69 72 65 5f  |een_two%,0,wire_|
0000c490  79 25 2c 73 63 72 65 65  6e 5f 74 77 6f 25 2c 77  |y%,screen_two%,w|
0000c4a0  69 72 65 5f 78 25 2c 77  69 72 65 5f 79 25 2c 38  |ire_x%,wire_y%,8|
0000c4b0  38 2c 32 31 36 29 0d 06  9a 27 20 20 20 20 20 20  |8,216)...'      |
0000c4c0  73 74 5f 77 69 72 65 5f  78 25 3d 77 78 25 3a 73  |st_wire_x%=wx%:s|
0000c4d0  74 5f 77 69 72 65 5f 79  25 3d 77 79 25 0d 06 9b  |t_wire_y%=wy%...|
0000c4e0  2c 20 20 20 20 20 20 f2  64 72 61 77 5f 77 69 72  |,      .draw_wir|
0000c4f0  65 28 61 63 31 25 2c 68  65 69 67 68 74 25 2c 61  |e(ac1%,height%,a|
0000c500  63 32 25 2c 65 6e 64 24  29 0d 06 9c 55 20 20 20  |c2%,end$)...U   |
0000c510  20 20 20 f2 6d 6f 76 65  5f 62 6c 6f 63 6b 28 73  |   .move_block(s|
0000c520  63 72 65 65 6e 5f 74 77  6f 25 2c 77 69 72 65 5f  |creen_two%,wire_|
0000c530  78 25 2c 77 69 72 65 5f  79 25 2c 73 63 72 65 65  |x%,wire_y%,scree|
0000c540  6e 5f 6f 6e 65 25 2c 77  69 72 65 5f 78 25 2c 77  |n_one%,wire_x%,w|
0000c550  69 72 65 5f 79 25 2c 38  38 2c 32 31 36 29 0d 06  |ire_y%,88,216)..|
0000c560  9d 1b 20 20 20 20 20 20  68 65 69 67 68 74 25 3d  |..      height%=|
0000c570  68 65 69 67 68 74 25 2d  31 0d 06 9e 18 20 20 20  |height%-1....   |
0000c580  20 20 20 65 6e 64 24 3d  22 63 6f 6e 5f 69 6e 33  |   end$="con_in3|
0000c590  22 0d 06 9f 23 20 20 20  20 20 20 6f 75 74 5f 77  |"...#      out_w|
0000c5a0  69 72 65 25 28 77 69 72  65 25 29 3d 63 6f 6e 6e  |ire%(wire%)=conn|
0000c5b0  65 63 74 25 0d 06 a0 10  20 20 20 20 20 20 65 6e  |ect%....      en|
0000c5c0  64 25 3d 31 0d 06 a1 14  20 20 20 20 20 20 f2 70  |d%=1....      .p|
0000c5d0  61 75 73 65 28 33 30 29  0d 06 a2 09 20 20 20 20  |ause(30)....    |
0000c5e0  cd 0d 06 a3 07 20 20 cd  0d 06 a4 3d 20 20 e7 73  |.....  ....=  .s|
0000c5f0  65 6c 65 63 74 65 64 25  3d 31 20 80 20 28 77 69  |elected%=1 . (wi|
0000c600  72 65 25 2d 31 29 2a 35  2b 68 65 69 67 68 74 25  |re%-1)*5+height%|
0000c610  3c 32 36 3a 68 65 69 67  68 74 25 3d 68 65 69 67  |<26:height%=heig|
0000c620  68 74 25 2b 31 0d 06 a5  2d 20 20 e7 73 65 6c 65  |ht%+1...-  .sele|
0000c630  63 74 65 64 25 3d 32 20  80 20 61 63 31 25 2b 61  |cted%=2 . ac1%+a|
0000c640  63 32 25 3c 31 36 20 61  63 32 25 3d 61 63 32 25  |c2%<16 ac2%=ac2%|
0000c650  2b 31 0d 06 a6 3d 20 20  e7 73 65 6c 65 63 74 65  |+1...=  .selecte|
0000c660  64 25 3d 33 20 80 20 28  77 69 72 65 25 2d 31 29  |d%=3 . (wire%-1)|
0000c670  2a 35 2b 68 65 69 67 68  74 25 3e 33 20 3a 68 65  |*5+height%>3 :he|
0000c680  69 67 68 74 25 3d 68 65  69 67 68 74 25 2d 31 0d  |ight%=height%-1.|
0000c690  06 a7 27 20 20 e7 73 65  6c 65 63 74 65 64 25 3d  |..'  .selected%=|
0000c6a0  34 20 80 20 61 63 32 25  3e 31 20 61 63 32 25 3d  |4 . ac2%>1 ac2%=|
0000c6b0  61 63 32 25 2d 31 0d 06  a8 4b 20 20 f2 6d 6f 76  |ac2%-1...K  .mov|
0000c6c0  65 5f 62 6c 6f 63 6b 28  73 63 72 65 65 6e 5f 74  |e_block(screen_t|
0000c6d0  77 6f 25 2c 30 2c 77 69  72 65 5f 79 25 2c 73 63  |wo%,0,wire_y%,sc|
0000c6e0  72 65 65 6e 5f 74 77 6f  25 2c 77 69 72 65 5f 78  |reen_two%,wire_x|
0000c6f0  25 2c 77 69 72 65 5f 79  25 2c 38 38 2c 32 31 36  |%,wire_y%,88,216|
0000c700  29 0d 06 a9 23 20 20 73  74 5f 77 69 72 65 5f 78  |)...#  st_wire_x|
0000c710  25 3d 77 78 25 3a 73 74  5f 77 69 72 65 5f 79 25  |%=wx%:st_wire_y%|
0000c720  3d 77 79 25 0d 06 aa 28  20 20 f2 64 72 61 77 5f  |=wy%...(  .draw_|
0000c730  77 69 72 65 28 61 63 31  25 2c 68 65 69 67 68 74  |wire(ac1%,height|
0000c740  25 2c 61 63 32 25 2c 65  6e 64 24 29 0d 06 ab 51  |%,ac2%,end$)...Q|
0000c750  20 20 f2 6d 6f 76 65 5f  62 6c 6f 63 6b 28 73 63  |  .move_block(sc|
0000c760  72 65 65 6e 5f 74 77 6f  25 2c 77 69 72 65 5f 78  |reen_two%,wire_x|
0000c770  25 2c 77 69 72 65 5f 79  25 2c 73 63 72 65 65 6e  |%,wire_y%,screen|
0000c780  5f 6f 6e 65 25 2c 77 69  72 65 5f 78 25 2c 77 69  |_one%,wire_x%,wi|
0000c790  72 65 5f 79 25 2c 38 38  2c 32 31 36 29 0d 06 ac  |re_y%,88,216)...|
0000c7a0  0c fd 20 65 6e 64 25 3d  31 0d 06 ad 05 e1 0d 06  |.. end%=1.......|
0000c7b0  ae 04 0d 06 af 0c dd a4  70 6c 75 67 6f 6b 0d 06  |........plugok..|
0000c7c0  b0 16 20 20 e7 61 63 31  25 2b 61 63 32 25 3c 31  |..  .ac1%+ac2%<1|
0000c7d0  36 3a 3d 30 0d 06 b1 1e  20 20 70 6f 73 25 3d 28  |6:=0....  pos%=(|
0000c7e0  77 69 72 65 25 2d 31 29  2a 35 2b 68 65 69 67 68  |wire%-1)*5+heigh|
0000c7f0  74 25 0d 06 b2 0b 20 20  69 6e 25 3d 31 0d 06 b3  |t%....  in%=1...|
0000c800  0b 20 20 f7 8d 74 7c 46  0d 06 b4 07 20 20 f5 0d  |.  ..t|F....  ..|
0000c810  06 b5 14 20 20 69 6e 25  3d 28 69 6e 25 2a 2d 31  |...  in%=(in%*-1|
0000c820  29 2b 31 0d 06 b6 11 20  20 f3 63 6f 6e 25 2c 72  |)+1....  .con%,r|
0000c830  65 61 64 25 0d 06 b7 1b  20 20 fd 70 6f 73 25 3d  |ead%....  .pos%=|
0000c840  72 65 61 64 25 20 84 20  72 65 61 64 25 3d 30 0d  |read% . read%=0.|
0000c850  06 b8 11 20 20 e7 72 65  61 64 25 3d 30 3a 3d 30  |...  .read%=0:=0|
0000c860  0d 06 b9 6b 20 20 e7 6f  75 74 5f 77 69 72 65 25  |...k  .out_wire%|
0000c870  28 31 29 3d 63 6f 6e 25  20 84 20 6f 75 74 5f 77  |(1)=con% . out_w|
0000c880  69 72 65 25 28 32 29 3d  63 6f 6e 25 20 84 20 6f  |ire%(2)=con% . o|
0000c890  75 74 5f 77 69 72 65 25  28 33 29 3d 63 6f 6e 25  |ut_wire%(3)=con%|
0000c8a0  20 84 20 6f 75 74 5f 77  69 72 65 25 28 34 29 3d  | . out_wire%(4)=|
0000c8b0  63 6f 6e 25 20 84 20 6f  75 74 5f 77 69 72 65 25  |con% . out_wire%|
0000c8c0  28 35 29 3d 63 6f 6e 25  3a 3d 30 0d 06 ba 0b 20  |(5)=con%:=0.... |
0000c8d0  20 3d 63 6f 6e 25 0d 06  bb 04 0d 06 bc 55 dc 20  | =con%.......U. |
0000c8e0  31 2c 34 2c 31 2c 35 2c  32 2c 37 2c 32 2c 38 2c  |1,4,1,5,2,7,2,8,|
0000c8f0  33 2c 31 30 2c 33 2c 31  31 2c 34 2c 31 33 2c 34  |3,10,3,11,4,13,4|
0000c900  2c 31 34 2c 35 2c 31 36  2c 35 2c 31 37 2c 36 2c  |,14,5,16,5,17,6,|
0000c910  31 39 2c 36 2c 32 30 2c  37 2c 32 32 2c 37 2c 32  |19,6,20,7,22,7,2|
0000c920  33 2c 38 2c 32 35 2c 38  2c 32 36 2c 30 2c 30 0d  |3,8,25,8,26,0,0.|
0000c930  06 bd 04 0d 06 be 1a dd  f2 73 65 74 5f 77 69 72  |.........set_wir|
0000c940  65 5f 61 6e 69 6d 28 77  69 72 65 25 29 0d 06 bf  |e_anim(wire%)...|
0000c950  0c 2a 66 78 31 31 32 2c  32 0d 06 c0 0c e6 30 2c  |.*fx112,2.....0,|
0000c960  31 32 38 3a db 0d 06 c1  30 20 20 f2 64 72 61 77  |128:....0  .draw|
0000c970  5f 6f 75 74 70 75 74 5f  62 61 73 65 28 77 69 72  |_output_base(wir|
0000c980  65 5f 78 25 2b 28 31 36  2a 31 33 29 2c 77 69 72  |e_x%+(16*13),wir|
0000c990  65 5f 79 25 29 0d 06 c2  0d 20 20 e3 77 25 3d 31  |e_y%)....  .w%=1|
0000c9a0  b8 35 0d 06 c3 1f 20 20  e7 77 69 72 65 25 3c 3e  |.5....  .wire%<>|
0000c9b0  77 25 20 f2 66 69 6e 64  5f 77 69 72 65 28 77 25  |w% .find_wire(w%|
0000c9c0  29 0d 06 c4 33 20 20 e7  77 69 72 65 25 3c 3e 77  |)...3  .wire%<>w|
0000c9d0  25 20 f2 64 72 61 77 5f  77 69 72 65 28 61 63 31  |% .draw_wire(ac1|
0000c9e0  25 2c 68 65 69 67 68 74  25 2c 61 63 32 25 2c 65  |%,height%,ac2%,e|
0000c9f0  6e 64 24 29 0d 06 c5 07  20 20 ed 0d 06 c6 17 20  |nd$)....  ..... |
0000ca00  20 f2 66 69 6e 64 5f 77  69 72 65 28 77 69 72 65  | .find_wire(wire|
0000ca10  25 29 0d 06 c7 23 20 20  77 78 25 3d 73 74 5f 77  |%)...#  wx%=st_w|
0000ca20  69 72 65 5f 78 25 3a 77  79 25 3d 73 74 5f 77 69  |ire_x%:wy%=st_wi|
0000ca30  72 65 5f 79 25 0d 06 c8  4b 20 20 f2 6d 6f 76 65  |re_y%...K  .move|
0000ca40  5f 62 6c 6f 63 6b 28 73  63 72 65 65 6e 5f 74 77  |_block(screen_tw|
0000ca50  6f 25 2c 77 69 72 65 5f  78 25 2c 77 69 72 65 5f  |o%,wire_x%,wire_|
0000ca60  79 25 2c 73 63 72 65 65  6e 5f 74 77 6f 25 2c 30  |y%,screen_two%,0|
0000ca70  2c 77 69 72 65 5f 79 25  2c 38 38 2c 32 31 36 29  |,wire_y%,88,216)|
0000ca80  0d 06 c9 04 0d 06 ca 11  20 20 e7 6f 6c 64 5f 77  |........  .old_w|
0000ca90  25 3d 31 20 8c 0d 06 cb  2a 20 20 20 20 20 20 65  |%=1 ....*      e|
0000caa0  6e 64 24 3d 22 63 6f 6e  5f 69 6e 31 22 3a 68 65  |nd$="con_in1":he|
0000cab0  69 67 68 74 25 3d 68 65  69 67 68 74 25 2b 31 0d  |ight%=height%+1.|
0000cac0  06 cc 4f 20 20 20 20 20  20 f2 6d 6f 76 65 5f 62  |..O      .move_b|
0000cad0  6c 6f 63 6b 28 73 63 72  65 65 6e 5f 74 77 6f 25  |lock(screen_two%|
0000cae0  2c 30 2c 77 69 72 65 5f  79 25 2c 73 63 72 65 65  |,0,wire_y%,scree|
0000caf0  6e 5f 74 77 6f 25 2c 77  69 72 65 5f 78 25 2c 77  |n_two%,wire_x%,w|
0000cb00  69 72 65 5f 79 25 2c 38  38 2c 32 31 36 29 0d 06  |ire_y%,88,216)..|
0000cb10  cd 27 20 20 20 20 20 20  73 74 5f 77 69 72 65 5f  |.'      st_wire_|
0000cb20  78 25 3d 77 78 25 3a 73  74 5f 77 69 72 65 5f 79  |x%=wx%:st_wire_y|
0000cb30  25 3d 77 79 25 0d 06 ce  2c 20 20 20 20 20 20 f2  |%=wy%...,      .|
0000cb40  64 72 61 77 5f 77 69 72  65 28 61 63 31 25 2c 68  |draw_wire(ac1%,h|
0000cb50  65 69 67 68 74 25 2c 61  63 32 25 2c 65 6e 64 24  |eight%,ac2%,end$|
0000cb60  29 0d 06 cf 55 20 20 20  20 20 20 f2 6d 6f 76 65  |)...U      .move|
0000cb70  5f 62 6c 6f 63 6b 28 73  63 72 65 65 6e 5f 74 77  |_block(screen_tw|
0000cb80  6f 25 2c 77 69 72 65 5f  78 25 2c 77 69 72 65 5f  |o%,wire_x%,wire_|
0000cb90  79 25 2c 73 63 72 65 65  6e 5f 6f 6e 65 25 2c 77  |y%,screen_one%,w|
0000cba0  69 72 65 5f 78 25 2c 77  69 72 65 5f 79 25 2c 38  |ire_x%,wire_y%,8|
0000cbb0  38 2c 32 31 36 29 0d 06  d0 14 20 20 20 20 20 20  |8,216)....      |
0000cbc0  65 6e 64 24 3d 22 63 6f  6e 22 0d 06 d1 1c 20 20  |end$="con"....  |
0000cbd0  20 20 20 20 6f 75 74 5f  77 69 72 65 25 28 77 69  |    out_wire%(wi|
0000cbe0  72 65 25 29 3d 30 0d 06  d2 14 20 20 20 20 20 20  |re%)=0....      |
0000cbf0  f2 70 61 75 73 65 28 35  30 29 0d 06 d3 27 20 20  |.pause(50)...'  |
0000cc00  20 20 20 20 73 74 5f 77  69 72 65 5f 78 25 3d 77  |    st_wire_x%=w|
0000cc10  78 25 3a 73 74 5f 77 69  72 65 5f 79 25 3d 77 79  |x%:st_wire_y%=wy|
0000cc20  25 0d 06 d4 1b 20 20 20  20 20 20 68 65 69 67 68  |%....      heigh|
0000cc30  74 25 3d 68 65 69 67 68  74 25 2b 31 0d 06 d5 07  |t%=height%+1....|
0000cc40  20 20 cc 0d 06 d6 15 20  20 20 20 20 20 61 63 32  |  .....      ac2|
0000cc50  25 3d 61 63 32 25 2b 32  0d 06 d7 07 20 20 cd 0d  |%=ac2%+2....  ..|
0000cc60  06 d8 4b 20 20 f2 6d 6f  76 65 5f 62 6c 6f 63 6b  |..K  .move_block|
0000cc70  28 73 63 72 65 65 6e 5f  74 77 6f 25 2c 30 2c 77  |(screen_two%,0,w|
0000cc80  69 72 65 5f 79 25 2c 73  63 72 65 65 6e 5f 74 77  |ire_y%,screen_tw|
0000cc90  6f 25 2c 77 69 72 65 5f  78 25 2c 77 69 72 65 5f  |o%,wire_x%,wire_|
0000cca0  79 25 2c 38 38 2c 32 31  36 29 0d 06 d9 28 20 20  |y%,88,216)...(  |
0000ccb0  f2 64 72 61 77 5f 77 69  72 65 28 61 63 31 25 2c  |.draw_wire(ac1%,|
0000ccc0  68 65 69 67 68 74 25 2c  61 63 32 25 2c 65 6e 64  |height%,ac2%,end|
0000ccd0  24 29 0d 06 da 04 0d 06  db 51 20 20 f2 6d 6f 76  |$).......Q  .mov|
0000cce0  65 5f 62 6c 6f 63 6b 28  73 63 72 65 65 6e 5f 74  |e_block(screen_t|
0000ccf0  77 6f 25 2c 77 69 72 65  5f 78 25 2c 77 69 72 65  |wo%,wire_x%,wire|
0000cd00  5f 79 25 2c 73 63 72 65  65 6e 5f 6f 6e 65 25 2c  |_y%,screen_one%,|
0000cd10  77 69 72 65 5f 78 25 2c  77 69 72 65 5f 79 25 2c  |wire_x%,wire_y%,|
0000cd20  38 38 2c 32 31 36 29 0d  06 dc 04 0d 06 dd 05 e1  |88,216).........|
0000cd30  0d 06 de 04 0d 06 df 10  dd f2 67 65 74 5f 61 5f  |..........get_a_|
0000cd40  77 69 72 65 0d 06 e0 0f  67 6f 74 5f 77 69 72 65  |wire....got_wire|
0000cd50  25 3d 30 0d 06 e1 0c 6f  6c 64 5f 77 25 3d 30 0d  |%=0....old_w%=0.|
0000cd60  06 e2 08 c8 97 20 ee 0d  06 e3 07 20 20 f5 0d 06  |..... .....  ...|
0000cd70  e4 1e 20 20 20 f5 3a c8  97 6d 78 25 2c 6d 79 25  |..   .:..mx%,my%|
0000cd80  2c 6d 63 25 3a fd 20 6d  63 25 3e 30 0d 06 e5 2a  |,mc%:. mc%>0...*|
0000cd90  20 20 20 e7 6d 63 25 3d  34 20 67 6f 74 5f 77 69  |   .mc%=4 got_wi|
0000cda0  72 65 25 3d a4 6e 65 77  5f 77 69 72 65 28 6d 78  |re%=.new_wire(mx|
0000cdb0  25 2c 6d 79 25 29 0d 06  e6 38 20 20 20 e7 6d 63  |%,my%)...8   .mc|
0000cdc0  25 3d 34 20 80 20 67 6f  74 5f 77 69 72 65 25 3d  |%=4 . got_wire%=|
0000cdd0  30 3a 67 6f 74 5f 77 69  72 65 25 3d a4 6f 6c 64  |0:got_wire%=.old|
0000cde0  5f 77 69 72 65 28 6d 78  25 2c 6d 79 25 29 0d 06  |_wire(mx%,my%)..|
0000cdf0  e7 12 20 20 fd 67 6f 74  5f 77 69 72 65 25 3e 30  |..  .got_wire%>0|
0000ce00  0d 06 e8 05 e1 0d 06 e9  04 0d 06 ea 17 dd a4 6e  |...............n|
0000ce10  65 77 5f 77 69 72 65 28  6d 78 25 2c 6d 79 25 29  |ew_wire(mx%,my%)|
0000ce20  0d 06 eb 0d 20 6f 6c 64  5f 77 25 3d 30 0d 06 ec  |.... old_w%=0...|
0000ce30  2a 20 f4 20 69 73 20 6d  6f 75 73 65 20 63 6c 69  |* . is mouse cli|
0000ce40  63 6b 20 69 6e 20 74 68  65 20 63 6f 72 72 65 63  |ck in the correc|
0000ce50  74 20 78 20 70 6f 73 0d  06 ed 1a 20 e7 6d 78 25  |t x pos.... .mx%|
0000ce60  3e 77 69 72 65 5f 78 25  2b 32 30 30 20 8c 20 3d  |>wire_x%+200 . =|
0000ce70  30 0d 06 ee 24 20 70 6f  73 5f 77 69 72 65 25 3d  |0...$ pos_wire%=|
0000ce80  28 28 6d 79 25 2d 77 69  72 65 5f 79 25 29 2f 31  |((my%-wire_y%)/1|
0000ce90  36 30 29 2b 31 0d 06 ef  2e 20 e7 6f 75 74 5f 77  |60)+1.... .out_w|
0000cea0  69 72 65 25 28 70 6f 73  5f 77 69 72 65 25 29 3d  |ire%(pos_wire%)=|
0000ceb0  30 20 8c 20 3d 70 6f 73  5f 77 69 72 65 25 20 8b  |0 . =pos_wire% .|
0000cec0  20 3d 30 0d 06 f0 04 0d  06 f1 17 dd a4 6f 6c 64  | =0..........old|
0000ced0  5f 77 69 72 65 28 6d 78  25 2c 6d 79 25 29 0d 06  |_wire(mx%,my%)..|
0000cee0  f2 14 20 6f 6c 64 5f 77  25 3d 31 3a 72 65 73 25  |.. old_w%=1:res%|
0000cef0  3d 30 0d 06 f3 2a 20 e7  6d 78 25 3c 77 69 72 65  |=0...* .mx%<wire|
0000cf00  5f 78 25 2b 32 37 30 20  84 20 6d 78 25 3e 77 69  |_x%+270 . mx%>wi|
0000cf10  72 65 5f 78 25 2b 33 34  30 20 3d 30 0d 06 f4 25  |re_x%+340 =0...%|
0000cf20  20 70 6f 73 5f 77 69 72  65 25 3d 28 28 28 6d 79  | pos_wire%=(((my|
0000cf30  25 2d 77 69 72 65 5f 79  25 29 29 2f 39 36 29 2b  |%-wire_y%))/96)+|
0000cf40  31 0d 06 f5 0c 20 e3 67  25 3d 31 b8 35 0d 06 f6  |1.... .g%=1.5...|
0000cf50  25 20 e7 6f 75 74 5f 77  69 72 65 25 28 67 25 29  |% .out_wire%(g%)|
0000cf60  3d 70 6f 73 5f 77 69 72  65 25 3a 72 65 73 25 3d  |=pos_wire%:res%=|
0000cf70  67 25 0d 06 f7 06 20 ed  0d 06 f8 0a 20 3d 72 65  |g%.... ..... =re|
0000cf80  73 25 0d 06 f9 04 0d 06  fa 13 dd a4 61 6c 6c 5f  |s%..........all_|
0000cf90  63 6f 6e 6e 65 63 74 65  64 0d 06 fb 0b 20 61 6c  |connected.... al|
0000cfa0  6c 25 3d 31 0d 06 fc 0e  20 e3 66 25 3d 31 20 b8  |l%=1.... .f%=1 .|
0000cfb0  20 35 0d 06 fd 1c 20 e7  6f 75 74 5f 77 69 72 65  | 5.... .out_wire|
0000cfc0  25 28 66 25 29 3d 30 20  61 6c 6c 25 3d 30 0d 06  |%(f%)=0 all%=0..|
0000cfd0  fe 06 20 ed 0d 06 ff 0a  20 3d 61 6c 6c 25 0d 07  |.. ..... =all%..|
0000cfe0  00 04 0d 07 01 25 dd f2  64 72 61 77 5f 6f 75 74  |.....%..draw_out|
0000cff0  70 75 74 5f 62 61 73 65  28 6f 75 74 5f 78 25 2c  |put_base(out_x%,|
0000d000  6f 75 74 5f 79 25 29 0d  07 02 04 0d 07 03 3a f2  |out_y%).......:.|
0000d010  70 6c 6f 74 5f 73 70 72  69 74 65 28 6f 75 74 5f  |plot_sprite(out_|
0000d020  78 25 2d 32 32 2c 6f 75  74 5f 79 25 2d 36 34 2c  |x%-22,out_y%-64,|
0000d030  31 2c 31 2c 31 2c 31 2c  22 62 61 73 65 32 22 2c  |1,1,1,1,"base2",|
0000d040  73 61 31 25 29 0d 07 04  0d 6f 75 74 5f 6e 75 25  |sa1%)....out_nu%|
0000d050  3d 38 0d 07 05 17 20 20  e3 66 25 3d 33 32 20 b8  |=8....  .f%=32 .|
0000d060  20 37 38 30 20 88 20 39  36 0d 07 06 47 20 20 f2  | 780 . 96...G  .|
0000d070  70 6c 6f 74 5f 73 70 72  69 74 65 5f 6d 61 73 6b  |plot_sprite_mask|
0000d080  65 64 28 6f 75 74 5f 78  25 2b 36 34 2c 6f 75 74  |ed(out_x%+64,out|
0000d090  5f 79 25 2b 66 25 2c 31  2c 31 2c 31 2c 31 2c 22  |_y%+f%,1,1,1,1,"|
0000d0a0  6f 75 74 5f 68 6f 6c 65  73 22 2c 73 61 31 25 29  |out_holes",sa1%)|
0000d0b0  0d 07 07 45 20 20 f2 70  6c 6f 74 5f 73 70 72 69  |...E  .plot_spri|
0000d0c0  74 65 5f 6d 61 73 6b 65  64 28 6f 75 74 5f 78 25  |te_masked(out_x%|
0000d0d0  2b 34 2c 6f 75 74 5f 79  25 2b 66 25 2c 31 2c 31  |+4,out_y%+f%,1,1|
0000d0e0  2c 31 2c 31 2c c3 28 6f  75 74 5f 6e 75 25 29 2c  |,1,1,.(out_nu%),|
0000d0f0  73 61 31 25 29 0d 07 08  42 20 20 f2 70 6c 6f 74  |sa1%)...B  .plot|
0000d100  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 6f  |_sprite_masked(o|
0000d110  75 74 5f 78 25 2b 32 34  2c 6f 75 74 5f 79 25 2b  |ut_x%+24,out_y%+|
0000d120  66 25 2c 31 2c 31 2c 31  2c 31 2c 22 6c 65 64 30  |f%,1,1,1,1,"led0|
0000d130  22 2c 73 61 31 25 29 0d  07 09 17 20 20 6f 75 74  |",sa1%)....  out|
0000d140  5f 6e 75 25 3d 6f 75 74  5f 6e 75 25 2d 31 0d 07  |_nu%=out_nu%-1..|
0000d150  0a 07 20 20 ed 0d 07 0b  05 e1 0d 07 0c 04 0d 07  |..  ............|
0000d160  0d 10 dd f2 66 69 72 73  74 5f 69 6e 66 6f 0d 07  |....first_info..|
0000d170  0e 2b f2 62 6f 78 28 62  75 74 62 6f 78 5f 78 25  |.+.box(butbox_x%|
0000d180  2d 32 34 2c 62 75 74 62  6f 78 5f 79 25 2d 31 36  |-24,butbox_y%-16|
0000d190  2c 36 35 30 2c 31 38 30  29 0d 07 0f 3f f2 70 72  |,650,180)...?.pr|
0000d1a0  69 28 62 75 74 62 6f 78  5f 78 25 2d 38 2c 62 75  |i(butbox_x%-8,bu|
0000d1b0  74 62 6f 78 5f 79 25 2b  31 30 32 2c 22 54 68 69  |tbox_y%+102,"Thi|
0000d1c0  73 20 69 73 20 74 68 65  20 69 6e 73 69 64 65 20  |s is the inside |
0000d1d0  6f 66 20 74 68 65 22 29  0d 07 10 34 f2 70 72 69  |of the")...4.pri|
0000d1e0  28 62 75 74 62 6f 78 5f  78 25 2d 38 2c 62 75 74  |(butbox_x%-8,but|
0000d1f0  62 6f 78 5f 79 25 2b 33  32 2c 22 64 72 69 6e 6b  |box_y%+32,"drink|
0000d200  73 20 6d 61 63 68 69 6e  65 2e 22 29 0d 07 11 05  |s machine.")....|
0000d210  e1 0d 07 12 04 0d 07 13  0f dd f2 6d 61 69 6e 5f  |...........main_|
0000d220  69 6e 66 6f 0d 07 14 2b  f2 62 6f 78 28 62 75 74  |info...+.box(but|
0000d230  62 6f 78 5f 78 25 2d 32  34 2c 62 75 74 62 6f 78  |box_x%-24,butbox|
0000d240  5f 79 25 2d 31 36 2c 36  35 30 2c 31 38 30 29 0d  |_y%-16,650,180).|
0000d250  07 15 40 f2 70 72 69 28  62 75 74 62 6f 78 5f 78  |..@.pri(butbox_x|
0000d260  25 2b 33 30 2c 62 75 74  62 6f 78 5f 79 25 2b 31  |%+30,butbox_y%+1|
0000d270  30 32 2c 22 54 68 65 72  65 20 69 73 20 61 20 73  |02,"There is a s|
0000d280  77 69 74 63 68 20 6e 65  78 74 20 74 6f 22 29 0d  |witch next to").|
0000d290  07 16 32 f2 70 72 69 28  62 75 74 62 6f 78 5f 78  |..2.pri(butbox_x|
0000d2a0  25 2b 33 30 2c 62 75 74  62 6f 78 5f 79 25 2b 33  |%+30,butbox_y%+3|
0000d2b0  32 2c 22 65 61 63 68 20  6f 75 74 70 75 74 2e 22  |2,"each output."|
0000d2c0  29 0d 07 17 0f f2 70 61  75 73 65 28 31 30 30 29  |).....pause(100)|
0000d2d0  0d 07 18 11 f2 6f 75 74  5f 62 75 74 74 73 28 31  |.....out_butts(1|
0000d2e0  29 0d 07 19 15 f2 73 70  61 63 65 28 37 36 30 2c  |).....space(760,|
0000d2f0  39 2c 30 2c 30 29 0d 07  1a 0e f2 70 61 75 73 65  |9,0,0).....pause|
0000d300  28 31 30 29 0d 07 1b 2b  f2 62 6f 78 28 62 75 74  |(10)...+.box(but|
0000d310  62 6f 78 5f 78 25 2d 32  34 2c 62 75 74 62 6f 78  |box_x%-24,butbox|
0000d320  5f 79 25 2d 31 36 2c 36  35 30 2c 31 38 30 29 0d  |_y%-16,650,180).|
0000d330  07 1c 40 f2 70 72 69 28  62 75 74 62 6f 78 5f 78  |..@.pri(butbox_x|
0000d340  25 2d 31 32 2c 62 75 74  62 6f 78 5f 79 25 2b 31  |%-12,butbox_y%+1|
0000d350  30 32 2c 22 59 6f 75 20  6d 75 73 74 20 74 75 72  |02,"You must tur|
0000d360  6e 20 74 68 65 20 6f 75  74 70 75 74 73 22 29 0d  |n the outputs").|
0000d370  07 1d 43 f2 70 72 69 28  62 75 74 62 6f 78 5f 78  |..C.pri(butbox_x|
0000d380  25 2d 31 32 2c 62 75 74  62 6f 78 5f 79 25 2b 33  |%-12,butbox_y%+3|
0000d390  32 2c 22 6f 6e 20 61 6e  64 20 6f 66 66 20 74 6f  |2,"on and off to|
0000d3a0  20 6d 61 6b 65 20 74 68  65 20 64 72 69 6e 6b 2e  | make the drink.|
0000d3b0  22 29 0d 07 1e 15 f2 73  70 61 63 65 28 37 36 30  |").....space(760|
0000d3c0  2c 39 2c 30 2c 30 29 0d  07 1f 05 e1 0d 07 20 04  |,9,0,0)....... .|
0000d3d0  0d 07 21 0e dd f2 6d 61  69 6e 5f 74 77 6f 0d 07  |..!...main_two..|
0000d3e0  22 0c 2a 46 58 31 31 32  2c 31 0d 07 23 2b f2 62  |".*FX112,1..#+.b|
0000d3f0  6f 78 28 62 75 74 62 6f  78 5f 78 25 2d 32 34 2c  |ox(butbox_x%-24,|
0000d400  62 75 74 62 6f 78 5f 79  25 2d 31 36 2c 36 35 30  |butbox_y%-16,650|
0000d410  2c 31 38 30 29 0d 07 24  35 f2 70 72 69 28 62 75  |,180)..$5.pri(bu|
0000d420  74 62 6f 78 5f 78 25 2d  38 2c 62 75 74 62 6f 78  |tbox_x%-8,butbox|
0000d430  5f 79 25 2b 31 30 32 2c  22 4d 6f 76 65 20 79 6f  |_y%+102,"Move yo|
0000d440  75 72 20 64 72 69 6e 6b  22 29 0d 07 25 37 f2 70  |ur drink")..%7.p|
0000d450  72 69 28 62 75 74 62 6f  78 5f 78 25 2d 38 2c 62  |ri(butbox_x%-8,b|
0000d460  75 74 62 6f 78 5f 79 25  2b 33 32 2c 22 74 6f 20  |utbox_y%+32,"to |
0000d470  74 68 65 20 44 52 49 4e  4b 20 73 69 67 6e 2e 22  |the DRINK sign."|
0000d480  29 0d 07 26 39 f2 70 6c  6f 74 5f 73 70 72 69 74  |)..&9.plot_sprit|
0000d490  65 28 35 35 30 2c 32 34  2c 31 2c 31 2c 31 2c 31  |e(550,24,1,1,1,1|
0000d4a0  2c 22 65 78 70 6c 61 69  6e 33 22 2c 73 70 72 69  |,"explain3",spri|
0000d4b0  74 65 5f 61 72 65 61 31  25 29 0d 07 27 15 f2 73  |te_area1%)..'..s|
0000d4c0  70 61 63 65 28 37 36 30  2c 39 2c 30 2c 30 29 0d  |pace(760,9,0,0).|
0000d4d0  07 28 2b f2 62 6f 78 28  62 75 74 62 6f 78 5f 78  |.(+.box(butbox_x|
0000d4e0  25 2d 32 34 2c 62 75 74  62 6f 78 5f 79 25 2d 31  |%-24,butbox_y%-1|
0000d4f0  36 2c 36 35 30 2c 31 38  30 29 0d 07 29 36 f2 70  |6,650,180)..)6.p|
0000d500  72 69 28 62 75 74 62 6f  78 5f 78 25 2d 38 2c 62  |ri(butbox_x%-8,b|
0000d510  75 74 62 6f 78 5f 79 25  2b 31 30 32 2c 22 54 75  |utbox_y%+102,"Tu|
0000d520  72 6e 20 74 68 65 20 6f  75 74 70 75 74 73 22 29  |rn the outputs")|
0000d530  0d 07 2a 30 f2 70 72 69  28 62 75 74 62 6f 78 5f  |..*0.pri(butbox_|
0000d540  78 25 2d 38 2c 62 75 74  62 6f 78 5f 79 25 2b 33  |x%-8,butbox_y%+3|
0000d550  32 2c 22 4f 4e 20 61 6e  64 20 4f 46 46 2e 22 29  |2,"ON and OFF.")|
0000d560  0d 07 2b 36 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |..+6.plot_sprite|
0000d570  28 35 35 30 2c 32 34 2c  31 2c 31 2c 31 2c 31 2c  |(550,24,1,1,1,1,|
0000d580  22 61 72 72 6f 77 22 2c  73 70 72 69 74 65 5f 61  |"arrow",sprite_a|
0000d590  72 65 61 31 25 29 0d 07  2c 05 e1 0d 07 2d 04 0d  |rea1%)..,....-..|
0000d5a0  07 2e 11 dd f2 73 65 63  6f 6e 64 5f 69 6e 66 6f  |.....second_info|
0000d5b0  0d 07 2f 2b f2 62 6f 78  28 62 75 74 62 6f 78 5f  |../+.box(butbox_|
0000d5c0  78 25 2d 32 34 2c 62 75  74 62 6f 78 5f 79 25 2d  |x%-24,butbox_y%-|
0000d5d0  31 36 2c 36 35 30 2c 31  38 30 29 0d 07 30 3c f2  |16,650,180)..0<.|
0000d5e0  70 72 69 28 62 75 74 62  6f 78 5f 78 25 2d 38 2c  |pri(butbox_x%-8,|
0000d5f0  62 75 74 62 6f 78 5f 79  25 2b 31 30 32 2c 22 46  |butbox_y%+102,"F|
0000d600  69 72 73 74 20 79 6f 75  20 77 69 6c 6c 20 6e 65  |irst you will ne|
0000d610  65 64 20 74 6f 22 29 0d  07 31 3e f2 70 72 69 28  |ed to")..1>.pri(|
0000d620  62 75 74 62 6f 78 5f 78  25 2d 38 2c 62 75 74 62  |butbox_x%-8,butb|
0000d630  6f 78 5f 79 25 2b 33 32  2c 22 63 6f 6e 6e 65 63  |ox_y%+32,"connec|
0000d640  74 20 61 6c 6c 20 6f 66  20 74 68 65 20 77 69 72  |t all of the wir|
0000d650  65 73 2e 22 29 0d 07 32  05 e1 0d 07 33 04 0d 07  |es.")..2....3...|
0000d660  34 04 0d 07 35 04 0d 07  36 0b dd f2 69 6e 66 6f  |4...5...6...info|
0000d670  31 0d 07 37 2b f2 62 6f  78 28 62 75 74 62 6f 78  |1..7+.box(butbox|
0000d680  5f 78 25 2d 32 34 2c 62  75 74 62 6f 78 5f 79 25  |_x%-24,butbox_y%|
0000d690  2d 31 36 2c 36 35 30 2c  31 38 30 29 0d 07 38 42  |-16,650,180)..8B|
0000d6a0  f2 70 72 69 28 62 75 74  62 6f 78 5f 78 25 2b 33  |.pri(butbox_x%+3|
0000d6b0  30 2c 62 75 74 62 6f 78  5f 79 25 2b 31 30 30 2c  |0,butbox_y%+100,|
0000d6c0  22 43 6c 69 63 6b 20 6f  6e 20 74 68 65 20 65 6e  |"Click on the en|
0000d6d0  64 20 6f 66 20 61 20 77  69 72 65 2e 22 29 0d 07  |d of a wire.")..|
0000d6e0  39 36 f2 70 6c 6f 74 5f  73 70 72 69 74 65 28 35  |96.plot_sprite(5|
0000d6f0  35 30 2c 32 34 2c 31 2c  31 2c 31 2c 31 2c 22 61  |50,24,1,1,1,1,"a|
0000d700  72 72 6f 77 22 2c 73 70  72 69 74 65 5f 61 72 65  |rrow",sprite_are|
0000d710  61 31 25 29 0d 07 3a 05  e1 0d 07 3b 04 0d 07 3c  |a1%)..:....;...<|
0000d720  04 0d 07 3d 10 dd f2 73  65 74 5f 6f 75 74 70 75  |...=...set_outpu|
0000d730  74 0d 07 3e 10 20 20 e3  77 69 72 65 25 3d 31 b8  |t..>.  .wire%=1.|
0000d740  35 0d 07 3f 17 20 20 f2  66 69 6e 64 5f 77 69 72  |5..?.  .find_wir|
0000d750  65 28 77 69 72 65 25 29  0d 07 40 28 20 20 f2 64  |e(wire%)..@(  .d|
0000d760  72 61 77 5f 77 69 72 65  28 61 63 31 25 2c 68 65  |raw_wire(ac1%,he|
0000d770  69 67 68 74 25 2c 61 63  32 25 2c 65 6e 64 24 29  |ight%,ac2%,end$)|
0000d780  0d 07 41 07 20 20 ed 0d  07 42 05 e1 0d 07 43 04  |..A.  ...B....C.|
0000d790  0d 07 44 16 dd f2 66 69  6e 64 5f 77 69 72 65 28  |..D...find_wire(|
0000d7a0  77 69 72 65 25 29 0d 07  45 2b f4 20 66 69 6e 64  |wire%)..E+. find|
0000d7b0  20 73 74 61 72 74 20 61  6e 64 20 65 6e 64 20 70  | start and end p|
0000d7c0  6f 73 69 74 69 6f 6e 73  20 6f 66 20 77 69 72 65  |ositions of wire|
0000d7d0  73 0d 07 46 3b 20 20 e7  77 69 72 65 25 3d 31 20  |s..F;  .wire%=1 |
0000d7e0  73 74 5f 77 69 72 65 5f  78 25 3d 77 69 72 65 5f  |st_wire_x%=wire_|
0000d7f0  78 25 3a 73 74 5f 77 69  72 65 5f 79 25 3d 77 69  |x%:st_wire_y%=wi|
0000d800  72 65 5f 79 25 3a f7 20  8d 74 45 47 0d 07 47 3f  |re_y%:. .tEG..G?|
0000d810  20 20 e7 77 69 72 65 25  3d 32 20 73 74 5f 77 69  |  .wire%=2 st_wi|
0000d820  72 65 5f 78 25 3d 77 69  72 65 5f 78 25 3a 73 74  |re_x%=wire_x%:st|
0000d830  5f 77 69 72 65 5f 79 25  3d 77 69 72 65 5f 79 25  |_wire_y%=wire_y%|
0000d840  2b 31 36 30 3a f7 20 8d  74 46 47 0d 07 48 3f 20  |+160:. .tFG..H? |
0000d850  20 e7 77 69 72 65 25 3d  33 20 73 74 5f 77 69 72  | .wire%=3 st_wir|
0000d860  65 5f 78 25 3d 77 69 72  65 5f 78 25 3a 73 74 5f  |e_x%=wire_x%:st_|
0000d870  77 69 72 65 5f 79 25 3d  77 69 72 65 5f 79 25 2b  |wire_y%=wire_y%+|
0000d880  33 32 30 3a f7 20 8d 74  47 47 0d 07 49 3f 20 20  |320:. .tGG..I?  |
0000d890  e7 77 69 72 65 25 3d 34  20 73 74 5f 77 69 72 65  |.wire%=4 st_wire|
0000d8a0  5f 78 25 3d 77 69 72 65  5f 78 25 3a 73 74 5f 77  |_x%=wire_x%:st_w|
0000d8b0  69 72 65 5f 79 25 3d 77  69 72 65 5f 79 25 2b 34  |ire_y%=wire_y%+4|
0000d8c0  38 30 3a f7 20 8d 74 48  47 0d 07 4a 3f 20 20 e7  |80:. .tHG..J?  .|
0000d8d0  77 69 72 65 25 3d 35 20  73 74 5f 77 69 72 65 5f  |wire%=5 st_wire_|
0000d8e0  78 25 3d 77 69 72 65 5f  78 25 3a 73 74 5f 77 69  |x%=wire_x%:st_wi|
0000d8f0  72 65 5f 79 25 3d 77 69  72 65 5f 79 25 2b 36 34  |re_y%=wire_y%+64|
0000d900  30 3a f7 20 8d 74 49 47  0d 07 4b 3c e3 74 79 70  |0:. .tIG..K<.typ|
0000d910  65 25 3d 30 20 b8 20 6f  75 74 5f 77 69 72 65 25  |e%=0 . out_wire%|
0000d920  28 77 69 72 65 25 29 3a  f4 20 66 69 6e 64 20 64  |(wire%):. find d|
0000d930  61 74 61 20 74 6f 20 64  72 61 77 20 77 69 72 65  |ata to draw wire|
0000d940  20 69 6e 2e 0d 07 4c 17  f3 20 61 63 31 25 2c 68  | in...L.. ac1%,h|
0000d950  65 69 67 68 74 25 2c 61  63 32 25 0d 07 4d 05 ed  |eight%,ac2%..M..|
0000d960  0d 07 4e 33 e7 6f 75 74  5f 77 69 72 65 25 28 77  |..N3.out_wire%(w|
0000d970  69 72 65 25 29 3d 30 20  65 6e 64 24 3d 22 63 6f  |ire%)=0 end$="co|
0000d980  6e 22 20 8b 20 65 6e 64  24 3d 22 63 6f 6e 5f 69  |n" . end$="con_i|
0000d990  6e 33 22 0d 07 4f 05 e1  0d 07 50 04 0d 07 51 04  |n3"..O....P...Q.|
0000d9a0  0d 07 52 27 dd f2 64 72  61 77 5f 77 69 72 65 28  |..R'..draw_wire(|
0000d9b0  61 63 31 25 2c 68 65 69  67 68 74 25 2c 61 63 32  |ac1%,height%,ac2|
0000d9c0  25 2c 65 6e 64 24 29 0d  07 53 15 f4 20 61 63 72  |%,end$)..S.. acr|
0000d9d0  6f 73 73 20 77 69 72 65  20 6f 6e 65 0d 07 54 10  |oss wire one..T.|
0000d9e0  e3 66 25 3d 31 20 b8 20  61 63 31 25 0d 07 55 40  |.f%=1 . ac1%..U@|
0000d9f0  f2 70 6c 6f 74 5f 73 70  72 69 74 65 5f 6d 61 73  |.plot_sprite_mas|
0000da00  6b 65 64 28 73 74 5f 77  69 72 65 5f 78 25 2c 73  |ked(st_wire_x%,s|
0000da10  74 5f 77 69 72 65 5f 79  25 2c 31 2c 31 2c 31 2c  |t_wire_y%,1,1,1,|
0000da20  31 2c 22 77 31 22 2c 73  61 31 25 29 0d 07 56 1c  |1,"w1",sa1%)..V.|
0000da30  73 74 5f 77 69 72 65 5f  78 25 3d 73 74 5f 77 69  |st_wire_x%=st_wi|
0000da40  72 65 5f 78 25 2b 31 36  0d 07 57 05 ed 0d 07 58  |re_x%+16..W....X|
0000da50  10 f4 20 75 70 20 6f 72  20 64 6f 77 6e 0d 07 59  |.. up or down..Y|
0000da60  10 e7 68 65 69 67 68 74  25 3d 31 20 8c 0d 07 5a  |..height%=1 ...Z|
0000da70  42 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |B  .plot_sprite_|
0000da80  6d 61 73 6b 65 64 28 73  74 5f 77 69 72 65 5f 78  |masked(st_wire_x|
0000da90  25 2c 73 74 5f 77 69 72  65 5f 79 25 2c 31 2c 31  |%,st_wire_y%,1,1|
0000daa0  2c 31 2c 31 2c 22 77 35  22 2c 73 61 31 25 29 0d  |,1,1,"w5",sa1%).|
0000dab0  07 5b 1e 20 20 73 74 5f  77 69 72 65 5f 79 25 3d  |.[.  st_wire_y%=|
0000dac0  73 74 5f 77 69 72 65 5f  79 25 2b 33 32 0d 07 5c  |st_wire_y%+32..\|
0000dad0  42 20 20 f2 70 6c 6f 74  5f 73 70 72 69 74 65 5f  |B  .plot_sprite_|
0000dae0  6d 61 73 6b 65 64 28 73  74 5f 77 69 72 65 5f 78  |masked(st_wire_x|
0000daf0  25 2c 73 74 5f 77 69 72  65 5f 79 25 2c 31 2c 31  |%,st_wire_y%,1,1|
0000db00  2c 31 2c 31 2c 22 77 32  22 2c 73 61 31 25 29 0d  |,1,1,"w2",sa1%).|
0000db10  07 5d 05 cd 0d 07 5e 11  e7 68 65 69 67 68 74 25  |.]....^..height%|
0000db20  3d 2d 31 20 8c 0d 07 5f  42 20 20 f2 70 6c 6f 74  |=-1 ..._B  .plot|
0000db30  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 73  |_sprite_masked(s|
0000db40  74 5f 77 69 72 65 5f 78  25 2c 73 74 5f 77 69 72  |t_wire_x%,st_wir|
0000db50  65 5f 79 25 2c 31 2c 31  2c 31 2c 31 2c 22 77 36  |e_y%,1,1,1,1,"w6|
0000db60  22 2c 73 61 31 25 29 0d  07 60 1e 20 20 73 74 5f  |",sa1%)..`.  st_|
0000db70  77 69 72 65 5f 79 25 3d  73 74 5f 77 69 72 65 5f  |wire_y%=st_wire_|
0000db80  79 25 2d 33 32 0d 07 61  42 20 20 f2 70 6c 6f 74  |y%-32..aB  .plot|
0000db90  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 73  |_sprite_masked(s|
0000dba0  74 5f 77 69 72 65 5f 78  25 2c 73 74 5f 77 69 72  |t_wire_x%,st_wir|
0000dbb0  65 5f 79 25 2c 31 2c 31  2c 31 2c 31 2c 22 77 33  |e_y%,1,1,1,1,"w3|
0000dbc0  22 2c 73 61 31 25 29 0d  07 62 05 cd 0d 07 63 10  |",sa1%)..b....c.|
0000dbd0  e7 68 65 69 67 68 74 25  3d 30 20 8c 0d 07 64 42  |.height%=0 ...dB|
0000dbe0  20 20 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |  .plot_sprite_m|
0000dbf0  61 73 6b 65 64 28 73 74  5f 77 69 72 65 5f 78 25  |asked(st_wire_x%|
0000dc00  2c 73 74 5f 77 69 72 65  5f 79 25 2c 31 2c 31 2c  |,st_wire_y%,1,1,|
0000dc10  31 2c 31 2c 22 77 31 22  2c 73 61 31 25 29 0d 07  |1,1,"w1",sa1%)..|
0000dc20  65 05 cd 0d 07 66 10 e7  68 65 69 67 68 74 25 3e  |e....f..height%>|
0000dc30  31 20 8c 0d 07 67 42 20  20 f2 70 6c 6f 74 5f 73  |1 ...gB  .plot_s|
0000dc40  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 73 74 5f  |prite_masked(st_|
0000dc50  77 69 72 65 5f 78 25 2c  73 74 5f 77 69 72 65 5f  |wire_x%,st_wire_|
0000dc60  79 25 2c 31 2c 31 2c 31  2c 31 2c 22 77 35 22 2c  |y%,1,1,1,1,"w5",|
0000dc70  73 61 31 25 29 0d 07 68  15 20 20 76 65 72 74 25  |sa1%)..h.  vert%|
0000dc80  3d 68 65 69 67 68 74 25  2d 31 0d 07 69 13 20 20  |=height%-1..i.  |
0000dc90  e3 66 25 3d 31 20 b8 20  76 65 72 74 25 0d 07 6a  |.f%=1 . vert%..j|
0000dca0  1e 20 20 73 74 5f 77 69  72 65 5f 79 25 3d 73 74  |.  st_wire_y%=st|
0000dcb0  5f 77 69 72 65 5f 79 25  2b 33 32 0d 07 6b 42 20  |_wire_y%+32..kB |
0000dcc0  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  | .plot_sprite_ma|
0000dcd0  73 6b 65 64 28 73 74 5f  77 69 72 65 5f 78 25 2c  |sked(st_wire_x%,|
0000dce0  73 74 5f 77 69 72 65 5f  79 25 2c 31 2c 31 2c 31  |st_wire_y%,1,1,1|
0000dcf0  2c 31 2c 22 77 34 22 2c  73 61 31 25 29 0d 07 6c  |,1,"w4",sa1%)..l|
0000dd00  07 20 20 ed 0d 07 6d 1e  20 20 73 74 5f 77 69 72  |.  ...m.  st_wir|
0000dd10  65 5f 79 25 3d 73 74 5f  77 69 72 65 5f 79 25 2b  |e_y%=st_wire_y%+|
0000dd20  33 32 0d 07 6e 42 20 20  f2 70 6c 6f 74 5f 73 70  |32..nB  .plot_sp|
0000dd30  72 69 74 65 5f 6d 61 73  6b 65 64 28 73 74 5f 77  |rite_masked(st_w|
0000dd40  69 72 65 5f 78 25 2c 73  74 5f 77 69 72 65 5f 79  |ire_x%,st_wire_y|
0000dd50  25 2c 31 2c 31 2c 31 2c  31 2c 22 77 32 22 2c 73  |%,1,1,1,1,"w2",s|
0000dd60  61 31 25 29 0d 07 6f 05  cd 0d 07 70 11 e7 68 65  |a1%)..o....p..he|
0000dd70  69 67 68 74 25 3c 2d 31  20 8c 0d 07 71 42 20 20  |ight%<-1 ...qB  |
0000dd80  f2 70 6c 6f 74 5f 73 70  72 69 74 65 5f 6d 61 73  |.plot_sprite_mas|
0000dd90  6b 65 64 28 73 74 5f 77  69 72 65 5f 78 25 2c 73  |ked(st_wire_x%,s|
0000dda0  74 5f 77 69 72 65 5f 79  25 2c 31 2c 31 2c 31 2c  |t_wire_y%,1,1,1,|
0000ddb0  31 2c 22 77 36 22 2c 73  61 31 25 29 0d 07 72 1a  |1,"w6",sa1%)..r.|
0000ddc0  20 20 76 65 72 74 25 3d  28 68 65 69 67 68 74 25  |  vert%=(height%|
0000ddd0  2a 2d 31 29 2d 31 0d 07  73 13 20 20 e3 66 25 3d  |*-1)-1..s.  .f%=|
0000dde0  31 20 b8 20 76 65 72 74  25 0d 07 74 1e 20 20 73  |1 . vert%..t.  s|
0000ddf0  74 5f 77 69 72 65 5f 79  25 3d 73 74 5f 77 69 72  |t_wire_y%=st_wir|
0000de00  65 5f 79 25 2d 33 32 0d  07 75 42 20 20 f2 70 6c  |e_y%-32..uB  .pl|
0000de10  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
0000de20  28 73 74 5f 77 69 72 65  5f 78 25 2c 73 74 5f 77  |(st_wire_x%,st_w|
0000de30  69 72 65 5f 79 25 2c 31  2c 31 2c 31 2c 31 2c 22  |ire_y%,1,1,1,1,"|
0000de40  77 34 22 2c 73 61 31 25  29 0d 07 76 07 20 20 ed  |w4",sa1%)..v.  .|
0000de50  0d 07 77 1e 20 20 73 74  5f 77 69 72 65 5f 79 25  |..w.  st_wire_y%|
0000de60  3d 73 74 5f 77 69 72 65  5f 79 25 2d 33 32 0d 07  |=st_wire_y%-32..|
0000de70  78 42 20 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |xB  .plot_sprite|
0000de80  5f 6d 61 73 6b 65 64 28  73 74 5f 77 69 72 65 5f  |_masked(st_wire_|
0000de90  78 25 2c 73 74 5f 77 69  72 65 5f 79 25 2c 31 2c  |x%,st_wire_y%,1,|
0000dea0  31 2c 31 2c 31 2c 22 77  33 22 2c 73 61 31 25 29  |1,1,1,"w3",sa1%)|
0000deb0  0d 07 79 05 cd 0d 07 7a  1c 73 74 5f 77 69 72 65  |..y....z.st_wire|
0000dec0  5f 78 25 3d 73 74 5f 77  69 72 65 5f 78 25 2b 31  |_x%=st_wire_x%+1|
0000ded0  36 0d 07 7b 10 e3 66 25  3d 31 20 b8 20 61 63 32  |6..{..f%=1 . ac2|
0000dee0  25 0d 07 7c 40 f2 70 6c  6f 74 5f 73 70 72 69 74  |%..|@.plot_sprit|
0000def0  65 5f 6d 61 73 6b 65 64  28 73 74 5f 77 69 72 65  |e_masked(st_wire|
0000df00  5f 78 25 2c 73 74 5f 77  69 72 65 5f 79 25 2c 31  |_x%,st_wire_y%,1|
0000df10  2c 31 2c 31 2c 31 2c 22  77 31 22 2c 73 61 31 25  |,1,1,1,"w1",sa1%|
0000df20  29 0d 07 7d 1c 73 74 5f  77 69 72 65 5f 78 25 3d  |)..}.st_wire_x%=|
0000df30  73 74 5f 77 69 72 65 5f  78 25 2b 31 36 0d 07 7e  |st_wire_x%+16..~|
0000df40  05 ed 0d 07 7f 25 64 6f  77 6e 25 3d 39 36 3a e7  |.....%down%=96:.|
0000df50  65 6e 64 24 3d 22 63 6f  6e 5f 69 6e 33 22 3a 64  |end$="con_in3":d|
0000df60  6f 77 6e 25 3d 36 34 0d  07 80 46 f2 70 6c 6f 74  |own%=64...F.plot|
0000df70  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 73  |_sprite_masked(s|
0000df80  74 5f 77 69 72 65 5f 78  25 2c 73 74 5f 77 69 72  |t_wire_x%,st_wir|
0000df90  65 5f 79 25 2d 64 6f 77  6e 25 2c 31 2c 31 2c 31  |e_y%-down%,1,1,1|
0000dfa0  2c 31 2c 65 6e 64 24 2c  73 61 31 25 29 0d 07 81  |,1,end$,sa1%)...|
0000dfb0  05 e1 0d 07 82 04 0d 07  83 33 f4 20 61 63 72 6f  |.........3. acro|
0000dfc0  73 73 3f 20 75 70 2f 64  6f 77 6e 3f 20 75 70 3f  |ss? up/down? up?|
0000dfd0  20 6c 65 66 74 2f 72 69  67 68 74 3f 20 61 63 72  | left/right? acr|
0000dfe0  6f 73 73 3f 20 65 6e 64  3f 0d 07 84 04 0d 07 85  |oss? end?.......|
0000dff0  48 dc 20 35 2c 33 2c 31  2c 35 2c 33 2c 31 31 2c  |H. 5,3,1,5,3,11,|
0000e000  35 2c 36 2c 31 31 2c 35  2c 39 2c 31 31 2c 35 2c  |5,6,11,5,9,11,5,|
0000e010  31 32 2c 31 31 2c 35 2c  31 35 2c 31 31 2c 35 2c  |12,11,5,15,11,5,|
0000e020  31 38 2c 31 31 2c 35 2c  32 31 2c 31 31 2c 35 2c  |18,11,5,21,11,5,|
0000e030  32 34 2c 31 31 0d 07 86  48 dc 20 34 2c 33 2c 32  |24,11...H. 4,3,2|
0000e040  2c 34 2c 2d 32 2c 31 32  2c 34 2c 31 2c 31 32 2c  |,4,-2,12,4,1,12,|
0000e050  34 2c 34 2c 31 32 2c 34  2c 37 2c 31 32 2c 34 2c  |4,4,12,4,7,12,4,|
0000e060  31 30 2c 31 32 2c 34 2c  31 33 2c 31 32 2c 34 2c  |10,12,4,13,12,4,|
0000e070  31 36 2c 31 32 2c 34 2c  31 39 2c 31 32 0d 07 87  |16,12,4,19,12...|
0000e080  48 dc 20 33 2c 33 2c 33  2c 33 2c 2d 37 2c 31 33  |H. 3,3,3,3,-7,13|
0000e090  2c 33 2c 2d 34 2c 31 33  2c 33 2c 2d 31 2c 31 33  |,3,-4,13,3,-1,13|
0000e0a0  2c 33 2c 32 2c 31 33 2c  33 2c 35 2c 31 33 2c 33  |,3,2,13,3,5,13,3|
0000e0b0  2c 38 2c 31 33 2c 33 2c  31 31 2c 31 33 2c 33 2c  |,8,13,3,11,13,3,|
0000e0c0  31 34 2c 31 33 0d 07 88  48 dc 20 32 2c 33 2c 34  |14,13...H. 2,3,4|
0000e0d0  2c 32 2c 2d 31 32 2c 31  34 2c 32 2c 2d 39 2c 31  |,2,-12,14,2,-9,1|
0000e0e0  34 2c 32 2c 2d 36 2c 31  34 2c 32 2c 2d 33 2c 31  |4,2,-6,14,2,-3,1|
0000e0f0  34 2c 32 2c 30 2c 31 34  2c 32 2c 33 2c 31 34 2c  |4,2,0,14,2,3,14,|
0000e100  32 2c 36 2c 31 34 2c 32  2c 39 2c 31 34 0d 07 89  |2,6,14,2,9,14...|
0000e110  4c dc 20 31 2c 33 2c 35  2c 31 2c 2d 31 37 2c 31  |L. 1,3,5,1,-17,1|
0000e120  35 2c 31 2c 2d 31 34 2c  31 35 2c 31 2c 2d 31 31  |5,1,-14,15,1,-11|
0000e130  2c 31 35 2c 31 2c 2d 38  2c 31 35 2c 31 2c 2d 35  |,15,1,-8,15,1,-5|
0000e140  2c 31 35 2c 31 2c 2d 32  2c 31 35 2c 31 2c 31 2c  |,15,1,-2,15,1,1,|
0000e150  31 35 2c 31 2c 34 2c 31  35 0d 07 8a 04 0d 07 8b  |15,1,4,15.......|
0000e160  04 0d 07 8c 13 dd f2 6a  75 6e 67 6c 65 28 78 25  |.......jungle(x%|
0000e170  2c 79 25 29 0d 07 8d 0b  20 20 c8 91 30 2c 30 0d  |,y%)....  ..0,0.|
0000e180  07 8e 0e 20 20 61 6e 5f  70 25 3d 33 30 0d 07 8f  |...  an_p%=30...|
0000e190  3d 20 20 20 2a 52 4d 65  6e 73 75 72 65 20 6a 75  |=   *RMensure ju|
0000e1a0  6e 67 20 2a 52 4d 6c 6f  61 64 20 22 3c 43 72 79  |ng *RMload "<Cry|
0000e1b0  73 74 61 6c 32 24 64 69  72 3e 2e 50 54 30 2e 73  |stal2$dir>.PT0.s|
0000e1c0  6f 75 6e 64 2e 6a 75 6e  67 22 0d 07 90 1b 20 20  |ound.jung"....  |
0000e1d0  20 2a 63 68 61 6e 6e 65  6c 76 6f 69 63 65 20 31  | *channelvoice 1|
0000e1e0  20 6a 75 6e 67 0d 07 91  0c 2a 46 58 31 31 32 2c  | jung....*FX112,|
0000e1f0  32 0d 07 92 12 41 25 3d  31 32 30 2a 28 56 25 2b  |2....A%=120*(V%+|
0000e200  31 29 3a 0d 07 93 51 42  25 3d 73 63 72 65 65 6e  |1):...QB%=screen|
0000e210  5f 74 77 6f 25 2b 28 31  2d 56 25 29 2a 28 33 32  |_two%+(1-V%)*(32|
0000e220  30 2a 31 36 29 3a 43 25  3d 26 30 31 30 31 30 31  |0*16):C%=&010101|
0000e230  30 31 3a 44 25 3d 26 31  30 31 30 31 30 31 30 3a  |01:D%=&10101010:|
0000e240  45 25 3d 33 32 30 3a d6  66 69 6c 6c 5f 73 63 72  |E%=320:.fill_scr|
0000e250  65 65 6e 25 0d 07 94 31  ef 32 34 2c 78 25 2b 31  |een%...1.24,x%+1|
0000e260  36 3b 79 25 2b 33 32 3b  78 25 2b 31 30 30 34 3b  |6;y%+32;x%+1004;|
0000e270  79 25 2b 39 31 38 3b 31  38 2c 30 2c 31 33 31 2c  |y%+918;18,0,131,|
0000e280  31 36 2c 32 36 0d 07 95  3c f4 20 63 72 65 61 74  |16,26...<. creat|
0000e290  65 20 61 6e 64 20 73 74  6f 72 65 20 62 61 63 6b  |e and store back|
0000e2a0  20 73 70 72 69 74 65 20  66 6f 72 20 66 69 72 73  | sprite for firs|
0000e2b0  74 20 70 6c 61 6e 74 20  61 6e 69 6d 61 74 69 6f  |t plant animatio|
0000e2c0  6e 0d 07 96 1b e7 5a 25  3e 32 20 6d 6f 76 65 25  |n.....Z%>2 move%|
0000e2d0  3d 32 20 8b 20 6d 6f 76  65 25 3d 31 0d 07 97 49  |=2 . move%=1...I|
0000e2e0  73 69 64 65 78 25 28 30  29 3d 78 25 2b 32 30 30  |sidex%(0)=x%+200|
0000e2f0  3a 73 69 64 65 79 25 28  30 29 3d 79 25 2b 32 30  |:sidey%(0)=y%+20|
0000e300  30 3a 73 70 24 28 30 29  3d 22 74 65 6d 70 6c 65  |0:sp$(0)="temple|
0000e310  32 22 3a 64 69 25 28 30  29 3d 30 3a 69 6e 63 25  |2":di%(0)=0:inc%|
0000e320  28 30 29 3d 30 0d 07 98  43 73 69 64 65 78 25 28  |(0)=0...Csidex%(|
0000e330  31 29 3d 78 25 2b 32 34  30 3a 73 69 64 65 79 25  |1)=x%+240:sidey%|
0000e340  28 31 29 3d 79 25 3a 73  70 24 28 31 29 3d 22 6e  |(1)=y%:sp$(1)="n|
0000e350  65 77 70 38 22 3a 64 69  25 28 31 29 3d 30 3a 69  |ewp8":di%(1)=0:i|
0000e360  6e 63 25 28 31 29 3d 30  0d 07 99 4c 73 69 64 65  |nc%(1)=0...Lside|
0000e370  78 25 28 32 29 3d 78 25  2b 33 32 3a 73 69 64 65  |x%(2)=x%+32:side|
0000e380  79 25 28 32 29 3d 79 25  2b 33 32 3a 73 70 24 28  |y%(2)=y%+32:sp$(|
0000e390  32 29 3d 22 6e 65 77 70  38 22 3a 64 69 25 28 32  |2)="newp8":di%(2|
0000e3a0  29 3d 30 3a 69 6e 63 25  28 32 29 3d 2d 34 2a 6d  |)=0:inc%(2)=-4*m|
0000e3b0  6f 76 65 25 0d 07 9a 4c  73 69 64 65 78 25 28 33  |ove%...Lsidex%(3|
0000e3c0  29 3d 78 25 2b 34 34 30  3a 73 69 64 65 79 25 28  |)=x%+440:sidey%(|
0000e3d0  33 29 3d 79 25 2b 33 32  3a 73 70 24 28 33 29 3d  |3)=y%+32:sp$(3)=|
0000e3e0  22 6e 65 77 70 36 22 3a  64 69 25 28 33 29 3d 31  |"newp6":di%(3)=1|
0000e3f0  3a 69 6e 63 25 28 33 29  3d 34 2a 6d 6f 76 65 25  |:inc%(3)=4*move%|
0000e400  0d 07 9b 4d 73 69 64 65  78 25 28 34 29 3d 78 25  |...Msidex%(4)=x%|
0000e410  2b 34 34 30 3a 73 69 64  65 79 25 28 34 29 3d 79  |+440:sidey%(4)=y|
0000e420  25 2b 33 30 30 3a 73 70  24 28 34 29 3d 22 6e 65  |%+300:sp$(4)="ne|
0000e430  77 70 38 22 3a 64 69 25  28 34 29 3d 31 3a 69 6e  |wp8":di%(4)=1:in|
0000e440  63 25 28 34 29 3d 38 2a  6d 6f 76 65 25 0d 07 9c  |c%(4)=8*move%...|
0000e450  4d 73 69 64 65 78 25 28  35 29 3d 78 25 2b 33 32  |Msidex%(5)=x%+32|
0000e460  3a 73 69 64 65 79 25 28  35 29 3d 79 25 2b 33 34  |:sidey%(5)=y%+34|
0000e470  30 3a 73 70 24 28 35 29  3d 22 6e 65 77 70 36 22  |0:sp$(5)="newp6"|
0000e480  3a 64 69 25 28 35 29 3d  30 3a 69 6e 63 25 28 35  |:di%(5)=0:inc%(5|
0000e490  29 3d 2d 38 2a 6d 6f 76  65 25 0d 07 9d 46 73 69  |)=-8*move%...Fsi|
0000e4a0  64 65 78 25 28 36 29 3d  78 25 2b 33 30 30 3a 73  |dex%(6)=x%+300:s|
0000e4b0  69 64 65 79 25 28 36 29  3d 79 25 2b 30 3a 73 70  |idey%(6)=y%+0:sp|
0000e4c0  24 28 36 29 3d 22 70 6c  61 6e 74 31 22 3a 64 69  |$(6)="plant1":di|
0000e4d0  25 28 36 29 3d 30 3a 69  6e 63 25 28 36 29 3d 30  |%(6)=0:inc%(6)=0|
0000e4e0  0d 07 9e 46 73 69 64 65  78 25 28 37 29 3d 78 25  |...Fsidex%(7)=x%|
0000e4f0  2b 34 32 30 3a 73 69 64  65 79 25 28 37 29 3d 79  |+420:sidey%(7)=y|
0000e500  25 2d 33 32 3a 73 70 24  28 37 29 3d 22 6c 65 61  |%-32:sp$(7)="lea|
0000e510  66 32 22 3a 64 69 25 28  37 29 3d 30 3a 69 6e 63  |f2":di%(7)=0:inc|
0000e520  25 28 37 29 3d 30 0d 07  9f 47 73 69 64 65 78 25  |%(7)=0...Gsidex%|
0000e530  28 38 29 3d 78 25 2b 31  30 30 3a 73 69 64 65 79  |(8)=x%+100:sidey|
0000e540  25 28 38 29 3d 79 25 2d  34 30 3a 73 70 24 28 38  |%(8)=y%-40:sp$(8|
0000e550  29 3d 22 70 6c 61 6e 74  31 22 3a 64 69 25 28 38  |)="plant1":di%(8|
0000e560  29 3d 30 3a 69 6e 63 25  28 38 29 3d 30 0d 07 a0  |)=0:inc%(8)=0...|
0000e570  0e 20 20 2a 46 58 31 31  32 2c 32 0d 07 a1 43 20  |.  *FX112,2...C |
0000e580  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 78 25  | .plot_sprite(x%|
0000e590  2b 33 32 2c 79 25 2b 34  38 2b 28 38 38 2a 34 29  |+32,y%+48+(88*4)|
0000e5a0  2c 31 2c 31 2c 31 2c 31  2c 22 6e 65 77 70 22 2c  |,1,1,1,1,"newp",|
0000e5b0  73 70 72 69 74 65 5f 61  72 65 61 32 25 29 0d 07  |sprite_area2%)..|
0000e5c0  a2 22 ef 32 34 2c 33 32  3b 32 30 30 3b 39 32 32  |.".24,32;200;922|
0000e5d0  3b 34 30 30 3b 31 38 2c  30 2c 31 34 33 2c 31 36  |;400;18,0,143,16|
0000e5e0  0d 07 a3 22 ef 32 34 2c  78 25 2b 33 32 3b 79 25  |...".24,x%+32;y%|
0000e5f0  2b 34 38 3b 78 25 2b 39  39 32 3b 79 25 2b 38 39  |+48;x%+992;y%+89|
0000e600  30 3b 0d 07 a4 0b 62 61  73 65 25 3d 38 0d 07 a5  |0;....base%=8...|
0000e610  11 e3 66 25 3d 30 20 b8  20 62 61 73 65 25 0d 07  |..f%=0 . base%..|
0000e620  a6 24 20 20 e7 20 64 69  25 28 66 25 29 3d 31 20  |.$  . di%(f%)=1 |
0000e630  f2 66 6c 69 70 5f 68 6f  72 28 73 70 24 28 66 25  |.flip_hor(sp$(f%|
0000e640  29 29 0d 07 a7 4e 20 20  f2 70 6c 6f 74 5f 73 70  |))...N  .plot_sp|
0000e650  72 69 74 65 5f 6d 61 73  6b 65 64 28 73 69 64 65  |rite_masked(side|
0000e660  78 25 28 66 25 29 2c 73  69 64 65 79 25 28 66 25  |x%(f%),sidey%(f%|
0000e670  29 2c 31 2c 31 2c 31 2c  31 2c 73 70 24 28 66 25  |),1,1,1,1,sp$(f%|
0000e680  29 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 29  |),sprite_area1%)|
0000e690  0d 07 a8 5c 20 20 e7 20  66 25 3d 36 20 f2 70 6c  |...\  . f%=6 .pl|
0000e6a0  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
0000e6b0  28 73 69 64 65 78 25 28  66 25 29 2b 32 38 36 2c  |(sidex%(f%)+286,|
0000e6c0  73 69 64 65 79 25 28 66  25 29 2d 34 2c 31 2c 31  |sidey%(f%)-4,1,1|
0000e6d0  2c 31 2c 31 2c 22 70 6c  61 6e 74 32 22 2c 73 70  |,1,1,"plant2",sp|
0000e6e0  72 69 74 65 5f 61 72 65  61 31 25 29 0d 07 a9 24  |rite_area1%)...$|
0000e6f0  20 20 e7 20 64 69 25 28  66 25 29 3d 31 20 f2 66  |  . di%(f%)=1 .f|
0000e700  6c 69 70 5f 68 6f 72 28  73 70 24 28 66 25 29 29  |lip_hor(sp$(f%))|
0000e710  0d 07 aa 05 ed 0d 07 ab  3f c8 99 22 4f 53 5f 53  |........?.."OS_S|
0000e720  70 72 69 74 65 4f 70 22  2c 26 31 31 30 2c 73 70  |priteOp",&110,sp|
0000e730  72 69 74 65 5f 61 72 65  61 32 25 2c 22 62 6c 61  |rite_area2%,"bla|
0000e740  6e 6b 22 2c 30 2c 33 30  30 2c 33 32 2c 37 30 30  |nk",0,300,32,700|
0000e750  2c 35 30 30 0d 07 ac 3f  f2 70 6c 6f 74 5f 73 70  |,500...?.plot_sp|
0000e760  72 69 74 65 5f 6d 61 73  6b 65 64 28 33 38 34 2c  |rite_masked(384,|
0000e770  2d 34 34 2c 31 2c 31 2c  31 2c 31 2c 22 70 6c 61  |-44,1,1,1,1,"pla|
0000e780  6e 74 32 22 2c 73 70 72  69 74 65 5f 61 72 65 61  |nt2",sprite_area|
0000e790  31 25 29 0d 07 ad 04 0d  07 ae 25 66 72 78 31 25  |1%).......%frx1%|
0000e7a0  3d 34 38 36 3a 66 72 79  31 25 3d 31 35 32 3a 62  |=486:fry1%=152:b|
0000e7b0  6c 31 24 3d 22 62 6c 61  6e 6b 31 22 0d 07 af 24  |l1$="blank1"...$|
0000e7c0  66 72 78 32 25 3d 33 35  30 3a 66 72 79 32 25 3d  |frx2%=350:fry2%=|
0000e7d0  34 38 3a 62 6c 32 24 3d  22 62 6c 61 6e 6b 32 22  |48:bl2$="blank2"|
0000e7e0  0d 07 b0 04 0d 07 b1 2c  61 6e 5f 78 25 3d 66 72  |.......,an_x%=fr|
0000e7f0  78 31 25 3a 61 6e 5f 79  25 3d 66 72 79 31 25 3a  |x1%:an_y%=fry1%:|
0000e800  73 65 6c 5f 73 70 72 69  74 65 24 3d 22 66 31 22  |sel_sprite$="f1"|
0000e810  0d 07 b2 15 f2 73 74 61  72 74 5f 61 6e 69 6d 28  |.....start_anim(|
0000e820  62 6c 31 24 29 0d 07 b3  2d 61 6e 5f 78 25 3d 66  |bl1$)...-an_x%=f|
0000e830  72 78 32 25 3a 61 6e 5f  79 25 3d 66 72 79 32 25  |rx2%:an_y%=fry2%|
0000e840  3a 73 65 6c 5f 73 70 72  69 74 65 24 3d 22 66 66  |:sel_sprite$="ff|
0000e850  31 22 0d 07 b4 15 f2 73  74 61 72 74 5f 61 6e 69  |1".....start_ani|
0000e860  6d 28 62 6c 32 24 29 0d  07 b5 0c 2a 46 58 31 31  |m(bl2$)....*FX11|
0000e870  32 2c 31 0d 07 b6 14 f4  20 50 52 4f 43 70 61 75  |2,1..... PROCpau|
0000e880  73 65 28 31 30 30 29 0d  07 b7 10 66 61 64 65 24  |se(100)....fade$|
0000e890  3d 22 66 61 64 65 22 0d  07 b8 3c f4 20 49 46 54  |="fade"...<. IFT|
0000e8a0  25 3d 32 20 54 48 45 4e  20 54 25 3d 31 3a 50 52  |%=2 THEN T%=1:PR|
0000e8b0  4f 43 70 61 75 73 65 28  31 30 30 29 3a 49 46 20  |OCpause(100):IF |
0000e8c0  59 25 3d 31 3a 50 52 4f  43 70 61 75 73 65 28 32  |Y%=1:PROCpause(2|
0000e8d0  30 30 29 0d 07 b9 35 e7  56 25 3d 30 20 f2 74 6f  |00)...5.V%=0 .to|
0000e8e0  70 5f 62 6c 61 6e 6b 3a  ff 22 46 58 31 31 32 2c  |p_blank:."FX112,|
0000e8f0  32 22 3a f2 74 6f 70 5f  62 6c 61 6e 6b 3a ff 22  |2":.top_blank:."|
0000e900  46 58 31 31 32 2c 31 22  0d 07 ba 18 f2 66 61 64  |FX112,1".....fad|
0000e910  65 28 30 2c 39 36 30 2c  34 2c 30 2c 31 2c 31 29  |e(0,960,4,0,1,1)|
0000e920  0d 07 bb 19 e7 55 25 3d  30 20 d4 31 2c 2d 31 35  |.....U%=0 .1,-15|
0000e930  2c 26 32 35 30 30 2c 32  30 0d 07 bc 0e 73 6f 75  |,&2500,20....sou|
0000e940  6e 64 5f 74 25 3d 91 0d  07 bd 0f f2 70 61 75 73  |nd_t%=......paus|
0000e950  65 28 32 30 30 29 0d 07  be 07 ef 32 36 0d 07 bf  |e(200).....26...|
0000e960  19 f2 62 6f 78 28 38 34  30 2c 34 33 30 2c 34 30  |..box(840,430,40|
0000e970  30 2c 33 36 30 29 0d 07  c0 24 f2 70 72 69 28 38  |0,360)...$.pri(8|
0000e980  36 38 2c 37 32 30 2c 22  59 6f 75 20 61 72 65 20  |68,720,"You are |
0000e990  61 74 20 61 20 74 6f 70  22 29 0d 07 c1 23 f2 70  |at a top")...#.p|
0000e9a0  72 69 28 38 36 38 2c 36  36 30 2c 22 73 65 63 72  |ri(868,660,"secr|
0000e9b0  65 74 20 6c 6f 63 61 74  69 6f 6e 22 29 0d 07 c2  |et location")...|
0000e9c0  1f f2 70 72 69 28 38 36  38 2c 36 30 30 2c 22 68  |..pri(868,600,"h|
0000e9d0  69 64 64 65 6e 20 64 65  65 70 22 29 0d 07 c3 23  |idden deep")...#|
0000e9e0  f2 70 72 69 28 38 36 38  2c 35 34 30 2c 22 69 6e  |.pri(868,540,"in|
0000e9f0  73 69 64 65 20 74 68 65  20 72 61 69 6e 22 29 0d  |side the rain").|
0000ea00  07 c4 1b f2 70 72 69 28  38 36 38 2c 34 38 30 2c  |....pri(868,480,|
0000ea10  22 66 6f 72 65 73 74 2e  22 29 0d 07 c5 17 f2 73  |"forest.").....s|
0000ea20  70 61 63 65 28 31 30 32  34 2c 33 32 2c 32 2c 30  |pace(1024,32,2,0|
0000ea30  29 0d 07 c6 2f 42 25 3d  73 63 72 65 65 6e 5f 74  |).../B%=screen_t|
0000ea40  77 6f 25 3a 43 25 3d 73  63 72 65 65 6e 5f 6f 6e  |wo%:C%=screen_on|
0000ea50  65 25 3a d6 73 61 76 65  5f 73 63 72 65 65 6e 25  |e%:.save_screen%|
0000ea60  0d 07 c7 0b e7 55 25 3d  30 20 8c 0d 07 c8 05 cd  |.....U%=0 ......|
0000ea70  0d 07 c9 3c 2a 52 4d 65  6e 73 75 72 65 20 63 68  |...<*RMensure ch|
0000ea80  6f 70 31 20 2a 52 4d 6c  6f 61 64 20 22 3c 43 72  |op1 *RMload "<Cr|
0000ea90  79 73 74 61 6c 32 24 64  69 72 3e 2e 50 54 30 2e  |ystal2$dir>.PT0.|
0000eaa0  73 6f 75 6e 64 2e 63 68  6f 70 31 22 0d 07 ca 19  |sound.chop1"....|
0000eab0  2a 63 68 61 6e 6e 65 6c  76 6f 69 63 65 20 32 20  |*channelvoice 2 |
0000eac0  63 68 6f 70 31 0d 07 cb  0c 2a 46 58 31 31 32 2c  |chop1....*FX112,|
0000ead0  32 0d 07 cc 22 ef 32 34  2c 78 25 2b 33 32 3b 79  |2...".24,x%+32;y|
0000eae0  25 2b 34 38 3b 78 25 2b  39 39 32 3b 79 25 2b 38  |%+48;x%+992;y%+8|
0000eaf0  39 30 3b 0d 07 cd 0e f2  70 61 75 73 65 28 32 30  |90;.....pause(20|
0000eb00  29 0d 07 ce 2e 61 6e 5f  78 78 25 3d 66 72 78 31  |)....an_xx%=frx1|
0000eb10  25 3a 61 6e 5f 79 79 25  3d 66 72 79 31 25 3a 73  |%:an_yy%=fry1%:s|
0000eb20  65 6c 5f 73 70 72 69 74  65 24 3d 22 66 31 22 0d  |el_sprite$="f1".|
0000eb30  07 cf 2c f2 66 72 6f 67  5f 61 6e 69 6d 28 31 2c  |..,.frog_anim(1,|
0000eb40  66 72 78 31 25 2c 66 72  79 31 25 2c 38 2c 38 2c  |frx1%,fry1%,8,8,|
0000eb50  38 2c 34 2c 32 2c 62 6c  31 24 29 0d 07 d0 0e f2  |8,4,2,bl1$).....|
0000eb60  70 61 75 73 65 28 34 30  29 0d 07 d1 2c f2 66 72  |pause(40)...,.fr|
0000eb70  6f 67 5f 61 6e 69 6d 28  31 2c 66 72 78 31 25 2c  |og_anim(1,frx1%,|
0000eb80  66 72 79 31 25 2c 38 2c  36 2c 38 2c 34 2c 32 2c  |fry1%,8,6,8,4,2,|
0000eb90  62 6c 31 24 29 0d 07 d2  2e 61 6e 5f 78 78 25 3d  |bl1$)....an_xx%=|
0000eba0  66 72 78 32 25 3a 61 6e  5f 79 79 25 3d 66 72 79  |frx2%:an_yy%=fry|
0000ebb0  32 25 3a 73 65 6c 5f 73  70 72 69 74 65 24 3d 22  |2%:sel_sprite$="|
0000ebc0  66 32 22 0d 07 d3 2f f2  66 72 6f 67 5f 61 6e 69  |f2".../.frog_ani|
0000ebd0  6d 28 32 2c 66 72 78 32  25 2c 66 72 79 32 25 2c  |m(2,frx2%,fry2%,|
0000ebe0  2d 38 2c 31 32 2c 31 32  2c 34 2c 34 2c 62 6c 32  |-8,12,12,4,4,bl2|
0000ebf0  24 29 0d 07 d4 0e f2 70  61 75 73 65 28 34 30 29  |$).....pause(40)|
0000ec00  0d 07 d5 2d f2 66 72 6f  67 5f 61 6e 69 6d 28 32  |...-.frog_anim(2|
0000ec10  2c 66 72 78 32 25 2c 66  72 79 32 25 2c 2d 38 2c  |,frx2%,fry2%,-8,|
0000ec20  34 2c 32 2c 32 2c 32 2c  62 6c 32 24 29 0d 07 d6  |4,2,2,2,bl2$)...|
0000ec30  2e 61 6e 5f 78 78 25 3d  66 72 78 31 25 3a 61 6e  |.an_xx%=frx1%:an|
0000ec40  5f 79 79 25 3d 66 72 79  31 25 3a 73 65 6c 5f 73  |_yy%=fry1%:sel_s|
0000ec50  70 72 69 74 65 24 3d 22  66 31 22 0d 07 d7 0e f2  |prite$="f1".....|
0000ec60  70 61 75 73 65 28 34 30  29 0d 07 d8 2c f2 66 72  |pause(40)...,.fr|
0000ec70  6f 67 5f 61 6e 69 6d 28  31 2c 66 72 78 31 25 2c  |og_anim(1,frx1%,|
0000ec80  66 72 79 31 25 2c 38 2c  38 2c 38 2c 34 2c 32 2c  |fry1%,8,8,8,4,2,|
0000ec90  62 6c 31 24 29 0d 07 d9  2e 61 6e 5f 78 78 25 3d  |bl1$)....an_xx%=|
0000eca0  66 72 78 32 25 3a 61 6e  5f 79 79 25 3d 66 72 79  |frx2%:an_yy%=fry|
0000ecb0  32 25 3a 73 65 6c 5f 73  70 72 69 74 65 24 3d 22  |2%:sel_sprite$="|
0000ecc0  66 32 22 0d 07 da 0e f2  70 61 75 73 65 28 34 30  |f2".....pause(40|
0000ecd0  29 0d 07 db 2f f2 66 72  6f 67 5f 61 6e 69 6d 28  |).../.frog_anim(|
0000ece0  32 2c 66 72 78 32 25 2c  66 72 79 32 25 2c 2d 38  |2,frx2%,fry2%,-8|
0000ecf0  2c 31 30 2c 31 30 2c 32  2c 32 2c 62 6c 32 24 29  |,10,10,2,2,bl2$)|
0000ed00  0d 07 dc 0f f2 70 61 75  73 65 28 31 30 30 29 0d  |.....pause(100).|
0000ed10  07 dd 1a 6b 78 25 3d 34  34 30 3a 6b 79 25 3d 33  |...kx%=440:ky%=3|
0000ed20  32 3a 6c 79 25 3d 2d 34  34 0d 07 de 0b e3 66 25  |2:ly%=-44.....f%|
0000ed30  3d 31 b8 39 0d 07 df 0d  f2 73 74 5f 70 61 75 73  |=1.9.....st_paus|
0000ed40  65 0d 07 e0 39 f2 70 6c  6f 74 5f 73 70 72 69 74  |e...9.plot_sprit|
0000ed50  65 28 33 30 30 2c 33 32  2c 31 2c 31 2c 31 2c 31  |e(300,32,1,1,1,1|
0000ed60  2b 56 25 2c 22 62 6c 61  6e 6b 22 2c 73 70 72 69  |+V%,"blank",spri|
0000ed70  74 65 5f 61 72 65 61 32  25 29 0d 07 e1 3f f2 70  |te_area2%)...?.p|
0000ed80  6c 6f 74 5f 73 70 72 69  74 65 5f 6d 61 73 6b 65  |lot_sprite_maske|
0000ed90  64 28 33 38 34 2c 6c 79  25 2c 31 2c 31 2c 31 2c  |d(384,ly%,1,1,1,|
0000eda0  31 2c 22 70 6c 61 6e 74  32 22 2c 73 70 72 69 74  |1,"plant2",sprit|
0000edb0  65 5f 61 72 65 61 31 25  29 0d 07 e2 3e f2 70 6c  |e_area1%)...>.pl|
0000edc0  6f 74 5f 73 70 72 69 74  65 5f 6d 61 73 6b 65 64  |ot_sprite_masked|
0000edd0  28 6b 78 25 2c 6b 79 25  2c 31 2c 31 2c 31 2c 31  |(kx%,ky%,1,1,1,1|
0000ede0  2c 22 6b 6e 69 66 65 22  2c 73 70 72 69 74 65 5f  |,"knife",sprite_|
0000edf0  61 72 65 61 31 25 29 0d  07 e3 49 f2 70 6c 6f 74  |area1%)...I.plot|
0000ee00  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 73  |_sprite_masked(s|
0000ee10  69 64 65 78 25 28 38 29  2c 73 69 64 65 79 25 28  |idex%(8),sidey%(|
0000ee20  38 29 2c 31 2c 31 2c 31  2c 31 2c 73 70 24 28 38  |8),1,1,1,1,sp$(8|
0000ee30  29 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 29  |),sprite_area1%)|
0000ee40  0d 07 e4 2f 42 25 3d 73  63 72 65 65 6e 5f 74 77  |.../B%=screen_tw|
0000ee50  6f 25 3a 43 25 3d 73 63  72 65 65 6e 5f 6f 6e 65  |o%:C%=screen_one|
0000ee60  25 3a d6 73 61 76 65 5f  73 63 72 65 65 6e 25 0d  |%:.save_screen%.|
0000ee70  07 e5 22 e7 6c 79 25 3e  2d 37 30 20 6b 78 25 3d  |..".ly%>-70 kx%=|
0000ee80  6b 78 25 2d 34 30 3a 6b  79 25 3d 6b 79 25 2d 34  |kx%-40:ky%=ky%-4|
0000ee90  30 0d 07 e6 17 e7 6b 79  25 3c 2d 34 38 20 6c 79  |0.....ky%<-48 ly|
0000eea0  25 3d 6c 79 25 2d 34 30  0d 07 e7 19 e7 66 25 3d  |%=ly%-40.....f%=|
0000eeb0  34 20 d4 32 2c 2d 31 35  2c 26 34 30 30 30 2c 26  |4 .2,-15,&4000,&|
0000eec0  33 0d 07 e8 19 e7 5a 25  3c 34 20 f2 65 6e 5f 70  |3.....Z%<4 .en_p|
0000eed0  61 75 73 65 28 36 2d 5a  25 29 0d 07 e9 05 ed 0d  |ause(6-Z%)......|
0000eee0  07 ea 0b 62 61 73 65 25  3d 35 0d 07 eb 11 e3 66  |...base%=5.....f|
0000eef0  25 3d 30 20 b8 20 62 61  73 65 25 0d 07 ec 24 20  |%=0 . base%...$ |
0000ef00  20 e7 20 64 69 25 28 66  25 29 3d 31 20 f2 66 6c  | . di%(f%)=1 .fl|
0000ef10  69 70 5f 68 6f 72 28 73  70 24 28 66 25 29 29 0d  |ip_hor(sp$(f%)).|
0000ef20  07 ed 4e 20 20 f2 70 6c  6f 74 5f 73 70 72 69 74  |..N  .plot_sprit|
0000ef30  65 5f 6d 61 73 6b 65 64  28 73 69 64 65 78 25 28  |e_masked(sidex%(|
0000ef40  66 25 29 2c 73 69 64 65  79 25 28 66 25 29 2c 31  |f%),sidey%(f%),1|
0000ef50  2c 31 2c 31 2c 31 2c 73  70 24 28 66 25 29 2c 73  |,1,1,1,sp$(f%),s|
0000ef60  70 72 69 74 65 5f 61 72  65 61 31 25 29 0d 07 ee  |prite_area1%)...|
0000ef70  24 20 20 e7 20 64 69 25  28 66 25 29 3d 31 20 f2  |$  . di%(f%)=1 .|
0000ef80  66 6c 69 70 5f 68 6f 72  28 73 70 24 28 66 25 29  |flip_hor(sp$(f%)|
0000ef90  29 0d 07 ef 05 ed 0d 07  f0 3f c8 99 22 4f 53 5f  |)........?.."OS_|
0000efa0  53 70 72 69 74 65 4f 70  22 2c 26 31 31 30 2c 73  |SpriteOp",&110,s|
0000efb0  70 72 69 74 65 5f 61 72  65 61 32 25 2c 22 62 6c  |prite_area2%,"bl|
0000efc0  61 6e 6b 22 2c 30 2c 33  30 30 2c 33 32 2c 39 30  |ank",0,300,32,90|
0000efd0  30 2c 35 30 30 0d 07 f1  0b 62 61 73 65 25 3d 38  |0,500....base%=8|
0000efe0  0d 07 f2 09 79 70 25 3d  30 0d 07 f3 16 f2 66 6c  |....yp%=0.....fl|
0000eff0  69 70 5f 68 6f 72 28 22  6b 6e 69 66 65 22 29 0d  |ip_hor("knife").|
0000f000  07 f4 0f e3 66 66 25 3d  31 20 b8 20 31 38 0d 07  |....ff%=1 . 18..|
0000f010  f5 0d f2 73 74 5f 70 61  75 73 65 0d 07 f6 39 f2  |...st_pause...9.|
0000f020  70 6c 6f 74 5f 73 70 72  69 74 65 28 33 30 30 2c  |plot_sprite(300,|
0000f030  33 32 2c 31 2c 31 2c 31  2c 31 2b 56 25 2c 22 62  |32,1,1,1,1+V%,"b|
0000f040  6c 61 6e 6b 22 2c 73 70  72 69 74 65 5f 61 72 65  |lank",sprite_are|
0000f050  61 32 25 29 0d 07 f7 11  e3 66 25 3d 36 20 b8 20  |a2%).....f%=6 . |
0000f060  62 61 73 65 25 0d 07 f8  52 20 20 f2 70 6c 6f 74  |base%...R  .plot|
0000f070  5f 73 70 72 69 74 65 5f  6d 61 73 6b 65 64 28 73  |_sprite_masked(s|
0000f080  69 64 65 78 25 28 66 25  29 2c 73 69 64 65 79 25  |idex%(f%),sidey%|
0000f090  28 66 25 29 2d 79 70 25  2c 31 2c 31 2c 31 2c 31  |(f%)-yp%,1,1,1,1|
0000f0a0  2c 73 70 24 28 66 25 29  2c 73 70 72 69 74 65 5f  |,sp$(f%),sprite_|
0000f0b0  61 72 65 61 31 25 29 0d  07 f9 62 20 20 e7 20 66  |area1%)...b  . f|
0000f0c0  25 3d 36 20 f2 70 6c 6f  74 5f 73 70 72 69 74 65  |%=6 .plot_sprite|
0000f0d0  5f 6d 61 73 6b 65 64 28  73 69 64 65 78 25 28 66  |_masked(sidex%(f|
0000f0e0  25 29 2b 32 38 36 2c 73  69 64 65 79 25 28 66 25  |%)+286,sidey%(f%|
0000f0f0  29 2d 28 34 2b 79 70 25  29 2c 31 2c 31 2c 31 2c  |)-(4+yp%),1,1,1,|
0000f100  31 2c 22 70 6c 61 6e 74  32 22 2c 73 70 72 69 74  |1,"plant2",sprit|
0000f110  65 5f 61 72 65 61 31 25  29 0d 07 fa 05 ed 0d 07  |e_area1%).......|
0000f120  fb 41 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |.A.plot_sprite_m|
0000f130  61 73 6b 65 64 28 35 30  30 2c 33 32 2d 79 70 25  |asked(500,32-yp%|
0000f140  2c 31 2c 31 2c 31 2c 31  2c 22 6b 6e 69 66 65 22  |,1,1,1,1,"knife"|
0000f150  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
0000f160  07 fc 1a e7 66 66 25 3d  33 20 d4 32 2c 2d 31 35  |....ff%=3 .2,-15|
0000f170  2c 26 33 30 30 30 2c 31  30 0d 07 fd 2f 42 25 3d  |,&3000,10.../B%=|
0000f180  73 63 72 65 65 6e 5f 74  77 6f 25 3a 43 25 3d 73  |screen_two%:C%=s|
0000f190  63 72 65 65 6e 5f 6f 6e  65 25 3a d6 73 61 76 65  |creen_one%:.save|
0000f1a0  5f 73 63 72 65 65 6e 25  0d 07 fe 0e 79 70 25 3d  |_screen%....yp%=|
0000f1b0  79 70 25 2b 32 30 0d 07  ff 13 f2 65 6e 5f 70 61  |yp%+20.....en_pa|
0000f1c0  75 73 65 28 35 2d 5a 25  29 0d 08 00 05 ed 0d 08  |use(5-Z%).......|
0000f1d0  01 0b 62 61 73 65 25 3d  35 0d 08 02 0c 6c 6f 6f  |..base%=5....loo|
0000f1e0  70 25 3d 32 30 0d 08 03  12 e7 5a 25 3e 32 20 6c  |p%=20.....Z%>2 l|
0000f1f0  6f 6f 70 25 3d 31 30 0d  08 04 12 e3 66 66 25 3d  |oop%=10.....ff%=|
0000f200  30 20 b8 20 6c 6f 6f 70  25 0d 08 05 1f e7 66 66  |0 . loop%.....ff|
0000f210  25 20 83 20 36 3d 30 20  20 d4 31 2c 2d 31 33 2c  |% . 6=0  .1,-13,|
0000f220  26 32 35 30 30 2c 31 30  0d 08 06 19 73 69 64 65  |&2500,10....side|
0000f230  79 25 28 31 29 3d 73 69  64 65 79 25 28 31 29 2d  |y%(1)=sidey%(1)-|
0000f240  34 0d 08 07 19 73 69 64  65 79 25 28 30 29 3d 73  |4....sidey%(0)=s|
0000f250  69 64 65 79 25 28 30 29  2b 34 0d 08 08 0d f2 73  |idey%(0)+4.....s|
0000f260  74 5f 70 61 75 73 65 0d  08 09 0c 2a 46 58 31 31  |t_pause....*FX11|
0000f270  32 2c 32 0d 08 0a 43 20  20 f2 70 6c 6f 74 5f 73  |2,2...C  .plot_s|
0000f280  70 72 69 74 65 28 78 25  2b 33 32 2c 79 25 2b 34  |prite(x%+32,y%+4|
0000f290  38 2b 28 38 38 2a 34 29  2c 31 2c 31 2c 31 2c 31  |8+(88*4),1,1,1,1|
0000f2a0  2c 22 6e 65 77 70 22 2c  73 70 72 69 74 65 5f 61  |,"newp",sprite_a|
0000f2b0  72 65 61 32 25 29 0d 08  0b 22 ef 32 34 2c 33 32  |rea2%)...".24,32|
0000f2c0  3b 32 30 30 3b 39 32 32  3b 34 30 30 3b 31 38 2c  |;200;922;400;18,|
0000f2d0  30 2c 31 34 33 2c 31 36  0d 08 0c 22 ef 32 34 2c  |0,143,16...".24,|
0000f2e0  78 25 2b 33 32 3b 79 25  2b 34 38 3b 78 25 2b 39  |x%+32;y%+48;x%+9|
0000f2f0  39 32 3b 79 25 2b 38 39  30 3b 0d 08 0d 11 e3 66  |92;y%+890;.....f|
0000f300  25 3d 30 20 b8 20 62 61  73 65 25 0d 08 0e 24 20  |%=0 . base%...$ |
0000f310  20 73 69 64 65 78 25 28  66 25 29 3d 73 69 64 65  | sidex%(f%)=side|
0000f320  78 25 28 66 25 29 2b 69  6e 63 25 28 66 25 29 0d  |x%(f%)+inc%(f%).|
0000f330  08 0f 24 20 20 e7 20 64  69 25 28 66 25 29 3d 31  |..$  . di%(f%)=1|
0000f340  20 f2 66 6c 69 70 5f 68  6f 72 28 73 70 24 28 66  | .flip_hor(sp$(f|
0000f350  25 29 29 0d 08 10 4e 20  20 f2 70 6c 6f 74 5f 73  |%))...N  .plot_s|
0000f360  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 73 69 64  |prite_masked(sid|
0000f370  65 78 25 28 66 25 29 2c  73 69 64 65 79 25 28 66  |ex%(f%),sidey%(f|
0000f380  25 29 2c 31 2c 31 2c 31  2c 31 2c 73 70 24 28 66  |%),1,1,1,1,sp$(f|
0000f390  25 29 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |%),sprite_area1%|
0000f3a0  29 0d 08 11 24 20 20 e7  20 64 69 25 28 66 25 29  |)...$  . di%(f%)|
0000f3b0  3d 31 20 f2 66 6c 69 70  5f 68 6f 72 28 73 70 24  |=1 .flip_hor(sp$|
0000f3c0  28 66 25 29 29 0d 08 12  05 ed 0d 08 13 0c 2a 46  |(f%)).........*F|
0000f3d0  58 31 31 33 2c 32 0d 08  14 1b e7 20 5a 25 3c 34  |X113,2..... Z%<4|
0000f3e0  20 f2 65 6e 5f 70 61 75  73 65 28 61 6e 5f 70 25  | .en_pause(an_p%|
0000f3f0  29 0d 08 15 0d f2 73 74  5f 70 61 75 73 65 0d 08  |).....st_pause..|
0000f400  16 0c 2a 46 58 31 31 32  2c 31 0d 08 17 43 20 20  |..*FX112,1...C  |
0000f410  f2 70 6c 6f 74 5f 73 70  72 69 74 65 28 78 25 2b  |.plot_sprite(x%+|
0000f420  33 32 2c 79 25 2b 34 38  2b 28 38 38 2a 34 29 2c  |32,y%+48+(88*4),|
0000f430  31 2c 31 2c 31 2c 31 2c  22 6e 65 77 70 22 2c 73  |1,1,1,1,"newp",s|
0000f440  70 72 69 74 65 5f 61 72  65 61 32 25 29 0d 08 18  |prite_area2%)...|
0000f450  22 ef 32 34 2c 33 32 3b  32 30 30 3b 39 32 32 3b  |".24,32;200;922;|
0000f460  34 30 30 3b 31 38 2c 30  2c 31 34 33 2c 31 36 0d  |400;18,0,143,16.|
0000f470  08 19 22 ef 32 34 2c 78  25 2b 33 32 3b 79 25 2b  |..".24,x%+32;y%+|
0000f480  34 38 3b 78 25 2b 39 39  32 3b 79 25 2b 38 39 30  |48;x%+992;y%+890|
0000f490  3b 0d 08 1a 11 e3 66 25  3d 30 20 b8 20 62 61 73  |;.....f%=0 . bas|
0000f4a0  65 25 0d 08 1b 24 20 20  73 69 64 65 78 25 28 66  |e%...$  sidex%(f|
0000f4b0  25 29 3d 73 69 64 65 78  25 28 66 25 29 2b 69 6e  |%)=sidex%(f%)+in|
0000f4c0  63 25 28 66 25 29 0d 08  1c 2a 20 20 e7 20 66 25  |c%(f%)...*  . f%|
0000f4d0  3e 30 20 73 69 64 65 79  25 28 66 25 29 3d 73 69  |>0 sidey%(f%)=si|
0000f4e0  64 65 79 25 28 66 25 29  2d 34 2a 6d 6f 76 65 25  |dey%(f%)-4*move%|
0000f4f0  0d 08 1d 24 20 20 e7 20  64 69 25 28 66 25 29 3d  |...$  . di%(f%)=|
0000f500  31 20 f2 66 6c 69 70 5f  68 6f 72 28 73 70 24 28  |1 .flip_hor(sp$(|
0000f510  66 25 29 29 0d 08 1e 4e  20 20 f2 70 6c 6f 74 5f  |f%))...N  .plot_|
0000f520  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 73 69  |sprite_masked(si|
0000f530  64 65 78 25 28 66 25 29  2c 73 69 64 65 79 25 28  |dex%(f%),sidey%(|
0000f540  66 25 29 2c 31 2c 31 2c  31 2c 31 2c 73 70 24 28  |f%),1,1,1,1,sp$(|
0000f550  66 25 29 2c 73 70 72 69  74 65 5f 61 72 65 61 31  |f%),sprite_area1|
0000f560  25 29 0d 08 1f 24 20 20  e7 20 64 69 25 28 66 25  |%)...$  . di%(f%|
0000f570  29 3d 31 20 f2 66 6c 69  70 5f 68 6f 72 28 73 70  |)=1 .flip_hor(sp|
0000f580  24 28 66 25 29 29 0d 08  20 05 ed 0d 08 21 0c 2a  |$(f%)).. ....!.*|
0000f590  46 58 31 31 33 2c 31 0d  08 22 1b e7 20 5a 25 3c  |FX113,1..".. Z%<|
0000f5a0  34 20 f2 65 6e 5f 70 61  75 73 65 28 61 6e 5f 70  |4 .en_pause(an_p|
0000f5b0  25 29 0d 08 23 05 ed 0d  08 24 09 20 20 ef 32 36  |%)..#....$.  .26|
0000f5c0  0d 08 25 2f 43 25 3d 73  63 72 65 65 6e 5f 74 77  |..%/C%=screen_tw|
0000f5d0  6f 25 3a 42 25 3d 73 63  72 65 65 6e 5f 6f 6e 65  |o%:B%=screen_one|
0000f5e0  25 3a d6 73 61 76 65 5f  73 63 72 65 65 6e 25 0d  |%:.save_screen%.|
0000f5f0  08 26 07 ef 32 36 0d 08  27 19 f2 62 6f 78 28 38  |.&..26..'..box(8|
0000f600  34 30 2c 35 30 30 2c 34  30 30 2c 32 33 30 29 0d  |40,500,400,230).|
0000f610  08 28 20 f2 70 72 69 28  38 36 30 2c 36 36 30 2c  |.( .pri(860,660,|
0000f620  22 59 6f 75 20 61 72 65  20 68 65 72 65 22 29 0d  |"You are here").|
0000f630  08 29 24 f2 70 72 69 28  38 36 30 2c 36 30 30 2c  |.)$.pri(860,600,|
0000f640  22 66 6f 72 20 61 6e 20  69 6d 70 6f 72 74 61 6e  |"for an importan|
0000f650  74 22 29 0d 08 2a 1c f2  70 72 69 28 38 36 30 2c  |t")..*..pri(860,|
0000f660  35 34 30 2c 22 6d 65 65  74 69 6e 67 2e 22 29 0d  |540,"meeting.").|
0000f670  08 2b 17 f2 73 70 61 63  65 28 31 30 32 34 2c 33  |.+..space(1024,3|
0000f680  32 2c 30 2c 30 29 0d 08  2c 2f 42 25 3d 73 63 72  |2,0,0)..,/B%=scr|
0000f690  65 65 6e 5f 74 77 6f 25  3a 43 25 3d 73 63 72 65  |een_two%:C%=scre|
0000f6a0  65 6e 5f 6f 6e 65 25 3a  d6 73 61 76 65 5f 73 63  |en_one%:.save_sc|
0000f6b0  72 65 65 6e 25 0d 08 2d  0f f2 70 61 75 73 65 28  |reen%..-..pause(|
0000f6c0  31 30 30 29 0d 08 2e 19  f2 62 6f 78 28 38 34 30  |100).....box(840|
0000f6d0  2c 35 36 30 2c 34 30 30  2c 31 37 30 29 0d 08 2f  |,560,400,170)../|
0000f6e0  1f f2 70 72 69 28 38 37  32 2c 36 36 30 2c 22 59  |..pri(872,660,"Y|
0000f6f0  6f 75 20 6d 75 73 74 20  67 6f 22 29 0d 08 30 1b  |ou must go")..0.|
0000f700  f2 70 72 69 28 38 37 32  2c 36 30 30 2c 22 69 6e  |.pri(872,600,"in|
0000f710  73 69 64 65 2e 22 29 0d  08 31 24 f2 6c 6f 61 64  |side.")..1$.load|
0000f720  5f 70 69 63 74 75 72 65  28 70 69 63 74 75 72 65  |_picture(picture|
0000f730  31 25 2c 22 77 61 6c 6c  31 22 29 0d 08 32 1d f2  |1%,"wall1")..2..|
0000f740  6c 6f 61 64 5f 73 70 72  69 74 65 73 28 22 65 6e  |load_sprites("en|
0000f750  74 72 61 6e 63 65 22 29  0d 08 33 17 f2 73 70 61  |trance")..3..spa|
0000f760  63 65 28 31 30 32 34 2c  33 32 2c 30 2c 30 29 0d  |ce(1024,32,0,0).|
0000f770  08 34 15 2a 63 68 61 6e  6e 65 6c 76 6f 69 63 65  |.4.*channelvoice|
0000f780  20 31 20 31 0d 08 35 15  2a 63 68 61 6e 6e 65 6c  | 1 1..5.*channel|
0000f790  76 6f 69 63 65 20 32 20  32 0d 08 36 11 2a 52 4d  |voice 2 2..6.*RM|
0000f7a0  6b 69 6c 6c 20 63 68 6f  70 31 0d 08 37 10 2a 52  |kill chop1..7.*R|
0000f7b0  4d 4b 49 4c 4c 20 6a 75  6e 67 0d 08 38 0c 2a 46  |MKILL jung..8.*F|
0000f7c0  58 31 31 32 2c 32 0d 08  39 13 ef 31 38 2c 30 2c  |X112,2..9..18,0,|
0000f7d0  31 32 39 2c 32 36 2c 31  36 0d 08 3a 18 41 25 3d  |129,26,16..:.A%=|
0000f7e0  70 69 63 74 75 72 65 31  25 3a d6 20 64 72 61 77  |picture1%:. draw|
0000f7f0  25 0d 08 3b 05 e1 0d 08  3c 04 0d 08 3d 3e dd f2  |%..;....<...=>..|
0000f800  66 72 6f 67 5f 61 6e 69  6d 28 66 72 6f 67 25 2c  |frog_anim(frog%,|
0000f810  61 6e 5f 78 25 2c 61 6e  5f 79 25 2c 69 6e 63 25  |an_x%,an_y%,inc%|
0000f820  2c 68 31 25 2c 68 32 25  2c 64 31 25 2c 64 32 25  |,h1%,h2%,d1%,d2%|
0000f830  2c 62 6c 61 6e 6b 24 29  0d 08 3e 2d f4 20 68 31  |,blank$)..>-. h1|
0000f840  25 3d 68 31 25 2f 32 3a  68 32 25 3d 68 32 25 2f  |%=h1%/2:h2%=h2%/|
0000f850  32 3a 64 32 25 3d 64 32  25 2f 32 3a 64 31 25 3d  |2:d2%=d2%/2:d1%=|
0000f860  64 31 25 2f 32 0d 08 3f  24 e7 66 72 6f 67 25 3d  |d1%/2..?$.frog%=|
0000f870  31 20 66 72 6f 67 31 24  3d 22 66 31 22 3a 66 72  |1 frog1$="f1":fr|
0000f880  6f 67 32 24 3d 22 66 32  22 0d 08 40 26 e7 66 72  |og2$="f2"..@&.fr|
0000f890  6f 67 25 3d 32 20 66 72  6f 67 31 24 3d 22 66 66  |og%=2 frog1$="ff|
0000f8a0  31 22 3a 66 72 6f 67 32  24 3d 22 66 66 32 22 0d  |1":frog2$="ff2".|
0000f8b0  08 41 16 73 65 6c 5f 73  70 72 69 74 65 24 3d 66  |.A.sel_sprite$=f|
0000f8c0  72 6f 67 32 24 0d 08 42  11 e7 5a 25 3d 31 20 61  |rog2$..B..Z%=1 a|
0000f8d0  6e 5f 70 25 3d 33 0d 08  43 11 e7 5a 25 3d 32 20  |n_p%=3..C..Z%=2 |
0000f8e0  61 6e 5f 70 25 3d 32 0d  08 44 11 e7 5a 25 3e 32  |an_p%=2..D..Z%>2|
0000f8f0  20 61 6e 5f 70 25 3d 31  0d 08 45 0f e3 66 25 3d  | an_p%=1..E..f%=|
0000f900  31 20 b8 20 68 31 25 0d  08 46 0d f2 73 74 5f 70  |1 . h1%..F..st_p|
0000f910  61 75 73 65 0d 08 47 14  61 6e 5f 78 25 3d 61 6e  |ause..G.an_x%=an|
0000f920  5f 78 25 2b 69 6e 63 25  0d 08 48 11 61 6e 5f 79  |_x%+inc%..H.an_y|
0000f930  25 3d 61 6e 5f 79 25 2b  38 0d 08 49 11 f2 61 6e  |%=an_y%+8..I..an|
0000f940  69 6d 28 62 6c 61 6e 6b  24 29 0d 08 4a 52 f2 6d  |im(blank$)..JR.m|
0000f950  6f 76 65 5f 62 6c 6f 63  6b 28 73 63 72 65 65 6e  |ove_block(screen|
0000f960  5f 74 77 6f 25 2c 61 6e  5f 78 25 2d 31 36 2c 61  |_two%,an_x%-16,a|
0000f970  6e 5f 79 25 2d 31 36 2c  73 63 72 65 65 6e 5f 6f  |n_y%-16,screen_o|
0000f980  6e 65 25 2c 61 6e 5f 78  25 2d 31 36 2c 61 6e 5f  |ne%,an_x%-16,an_|
0000f990  79 25 2d 31 36 2c 34 34  2c 34 30 29 0d 08 4b 14  |y%-16,44,40)..K.|
0000f9a0  f2 65 6e 5f 70 61 75 73  65 28 61 6e 5f 70 25 29  |.en_pause(an_p%)|
0000f9b0  0d 08 4c 05 ed 0d 08 4d  0f e3 66 25 3d 31 20 b8  |..L....M..f%=1 .|
0000f9c0  20 68 32 25 0d 08 4e 0d  f2 73 74 5f 70 61 75 73  | h2%..N..st_paus|
0000f9d0  65 0d 08 4f 14 61 6e 5f  78 25 3d 61 6e 5f 78 25  |e..O.an_x%=an_x%|
0000f9e0  2b 69 6e 63 25 0d 08 50  11 61 6e 5f 79 25 3d 61  |+inc%..P.an_y%=a|
0000f9f0  6e 5f 79 25 2b 34 0d 08  51 11 f2 61 6e 69 6d 28  |n_y%+4..Q..anim(|
0000fa00  62 6c 61 6e 6b 24 29 0d  08 52 52 f2 6d 6f 76 65  |blank$)..RR.move|
0000fa10  5f 62 6c 6f 63 6b 28 73  63 72 65 65 6e 5f 74 77  |_block(screen_tw|
0000fa20  6f 25 2c 61 6e 5f 78 25  2d 31 36 2c 61 6e 5f 79  |o%,an_x%-16,an_y|
0000fa30  25 2d 31 36 2c 73 63 72  65 65 6e 5f 6f 6e 65 25  |%-16,screen_one%|
0000fa40  2c 61 6e 5f 78 25 2d 31  36 2c 61 6e 5f 79 25 2d  |,an_x%-16,an_y%-|
0000fa50  31 36 2c 34 34 2c 34 30  29 0d 08 53 14 f2 65 6e  |16,44,40)..S..en|
0000fa60  5f 70 61 75 73 65 28 61  6e 5f 70 25 29 0d 08 54  |_pause(an_p%)..T|
0000fa70  05 ed 0d 08 55 16 73 65  6c 5f 73 70 72 69 74 65  |....U.sel_sprite|
0000fa80  24 3d 66 72 6f 67 31 24  0d 08 56 0f e3 66 25 3d  |$=frog1$..V..f%=|
0000fa90  31 20 b8 20 64 31 25 0d  08 57 0d f2 73 74 5f 70  |1 . d1%..W..st_p|
0000faa0  61 75 73 65 0d 08 58 14  61 6e 5f 78 25 3d 61 6e  |ause..X.an_x%=an|
0000fab0  5f 78 25 2b 69 6e 63 25  0d 08 59 11 61 6e 5f 79  |_x%+inc%..Y.an_y|
0000fac0  25 3d 61 6e 5f 79 25 2d  34 0d 08 5a 11 f2 61 6e  |%=an_y%-4..Z..an|
0000fad0  69 6d 28 62 6c 61 6e 6b  24 29 0d 08 5b 52 f2 6d  |im(blank$)..[R.m|
0000fae0  6f 76 65 5f 62 6c 6f 63  6b 28 73 63 72 65 65 6e  |ove_block(screen|
0000faf0  5f 74 77 6f 25 2c 61 6e  5f 78 25 2d 31 36 2c 61  |_two%,an_x%-16,a|
0000fb00  6e 5f 79 25 2d 31 36 2c  73 63 72 65 65 6e 5f 6f  |n_y%-16,screen_o|
0000fb10  6e 65 25 2c 61 6e 5f 78  25 2d 31 36 2c 61 6e 5f  |ne%,an_x%-16,an_|
0000fb20  79 25 2d 31 36 2c 34 34  2c 34 30 29 0d 08 5c 14  |y%-16,44,40)..\.|
0000fb30  f2 65 6e 5f 70 61 75 73  65 28 61 6e 5f 70 25 29  |.en_pause(an_p%)|
0000fb40  0d 08 5d 05 ed 0d 08 5e  0f e3 66 25 3d 31 20 b8  |..]....^..f%=1 .|
0000fb50  20 64 31 25 0d 08 5f 0d  f2 73 74 5f 70 61 75 73  | d1%.._..st_paus|
0000fb60  65 0d 08 60 14 61 6e 5f  78 25 3d 61 6e 5f 78 25  |e..`.an_x%=an_x%|
0000fb70  2b 69 6e 63 25 0d 08 61  11 61 6e 5f 79 25 3d 61  |+inc%..a.an_y%=a|
0000fb80  6e 5f 79 25 2d 38 0d 08  62 11 f2 61 6e 69 6d 28  |n_y%-8..b..anim(|
0000fb90  62 6c 61 6e 6b 24 29 0d  08 63 52 f2 6d 6f 76 65  |blank$)..cR.move|
0000fba0  5f 62 6c 6f 63 6b 28 73  63 72 65 65 6e 5f 74 77  |_block(screen_tw|
0000fbb0  6f 25 2c 61 6e 5f 78 25  2d 31 36 2c 61 6e 5f 79  |o%,an_x%-16,an_y|
0000fbc0  25 2d 31 36 2c 73 63 72  65 65 6e 5f 6f 6e 65 25  |%-16,screen_one%|
0000fbd0  2c 61 6e 5f 78 25 2d 31  36 2c 61 6e 5f 79 25 2d  |,an_x%-16,an_y%-|
0000fbe0  31 36 2c 34 34 2c 34 30  29 0d 08 64 14 f2 65 6e  |16,44,40)..d..en|
0000fbf0  5f 70 61 75 73 65 28 61  6e 5f 70 25 29 0d 08 65  |_pause(an_p%)..e|
0000fc00  05 ed 0d 08 66 24 e7 66  72 6f 67 25 3d 31 20 66  |....f$.frog%=1 f|
0000fc10  72 78 31 25 3d 61 6e 5f  78 25 3a 66 72 79 31 25  |rx1%=an_x%:fry1%|
0000fc20  3d 61 6e 5f 79 25 0d 08  67 24 e7 66 72 6f 67 25  |=an_y%..g$.frog%|
0000fc30  3d 32 20 66 72 78 32 25  3d 61 6e 5f 78 25 3a 66  |=2 frx2%=an_x%:f|
0000fc40  72 79 32 25 3d 61 6e 5f  79 25 0d 08 68 05 e1 0d  |ry2%=an_y%..h...|
0000fc50  08 69 04 0d 08 6a 04 0d  08 6b 1c dd f2 73 65 74  |.i...j...k...set|
0000fc60  5f 70 6f 73 5f 62 75 74  74 6f 6e 73 28 78 25 2c  |_pos_buttons(x%,|
0000fc70  79 25 29 0d 08 6c 15 e3  66 25 3d 31 b8 20 74 6f  |y%)..l..f%=1. to|
0000fc80  74 61 6c 5f 62 75 74 25  0d 08 6d 1c 62 75 74 25  |tal_but%..m.but%|
0000fc90  28 66 25 2c 30 29 3d 62  75 74 25 28 66 25 2c 30  |(f%,0)=but%(f%,0|
0000fca0  29 2b 78 25 0d 08 6e 1c  62 75 74 25 28 66 25 2c  |)+x%..n.but%(f%,|
0000fcb0  31 29 3d 62 75 74 25 28  66 25 2c 31 29 2b 79 25  |1)=but%(f%,1)+y%|
0000fcc0  0d 08 6f 05 ed 0d 08 70  05 e1 0d 08 71 04 0d 08  |..o....p....q...|
0000fcd0  72 04 0d 08 73 1a dd f2  64 65 66 69 6e 65 5f 62  |r...s...define_b|
0000fce0  75 74 74 6f 6e 73 28 73  65 74 25 29 0d 08 74 1e  |uttons(set%)..t.|
0000fcf0  e7 73 65 74 25 3d 31 3a  74 6f 74 61 6c 5f 62 75  |.set%=1:total_bu|
0000fd00  74 25 3d 31 3a f7 8d 44  7e 48 0d 08 75 1e e7 73  |t%=1:..D~H..u..s|
0000fd10  65 74 25 3d 32 3a 74 6f  74 61 6c 5f 62 75 74 25  |et%=2:total_but%|
0000fd20  3d 36 3a f7 8d 74 44 48  0d 08 76 1e e7 73 65 74  |=6:..tDH..v..set|
0000fd30  25 3d 33 3a 74 6f 74 61  6c 5f 62 75 74 25 3d 31  |%=3:total_but%=1|
0000fd40  3a f7 8d 74 40 48 0d 08  77 1e e7 73 65 74 25 3d  |:..t@H..w..set%=|
0000fd50  34 3a 74 6f 74 61 6c 5f  62 75 74 25 3d 32 3a f7  |4:total_but%=2:.|
0000fd60  8d 74 41 48 0d 08 78 1e  e7 73 65 74 25 3d 35 3a  |.tAH..x..set%=5:|
0000fd70  74 6f 74 61 6c 5f 62 75  74 25 3d 31 3a f7 8d 74  |total_but%=1:..t|
0000fd80  42 48 0d 08 79 1e e7 73  65 74 25 3d 36 3a 74 6f  |BH..y..set%=6:to|
0000fd90  74 61 6c 5f 62 75 74 25  3d 33 3a f7 8d 44 7f 48  |tal_but%=3:..D.H|
0000fda0  0d 08 7a 1d e3 62 75 74  5f 6e 75 6d 62 65 72 25  |..z..but_number%|
0000fdb0  3d 31 b8 74 6f 74 61 6c  5f 62 75 74 25 0d 08 7b  |=1.total_but%..{|
0000fdc0  7a f3 62 75 74 25 28 62  75 74 5f 6e 75 6d 62 65  |z.but%(but_numbe|
0000fdd0  72 25 2c 30 29 2c 62 75  74 25 28 62 75 74 5f 6e  |r%,0),but%(but_n|
0000fde0  75 6d 62 65 72 25 2c 31  29 2c 62 75 74 25 28 62  |umber%,1),but%(b|
0000fdf0  75 74 5f 6e 75 6d 62 65  72 25 2c 32 29 2c 62 75  |ut_number%,2),bu|
0000fe00  74 25 28 62 75 74 5f 6e  75 6d 62 65 72 25 2c 33  |t%(but_number%,3|
0000fe10  29 2c 62 75 74 25 28 62  75 74 5f 6e 75 6d 62 65  |),but%(but_numbe|
0000fe20  72 25 2c 34 29 2c 62 75  74 24 28 62 75 74 5f 6e  |r%,4),but$(but_n|
0000fe30  75 6d 62 65 72 25 29 0d  08 7c 05 ed 0d 08 7d 05  |umber%)..|....}.|
0000fe40  e1 0d 08 7e 1c dc 20 31  30 30 2c 31 30 30 2c 32  |...~.. 100,100,2|
0000fe50  30 30 2c 34 30 2c 32 2c  47 6f 20 6f 6e 0d 08 7f  |00,40,2,Go on...|
0000fe60  60 dc 20 37 36 30 2c 39  30 30 2c 32 30 30 2c 34  |`. 760,900,200,4|
0000fe70  30 2c 32 2c 22 4c 65 66  74 20 74 75 72 6e 22 2c  |0,2,"Left turn",|
0000fe80  39 38 30 2c 39 30 30 2c  32 30 30 2c 34 30 2c 32  |980,900,200,40,2|
0000fe90  2c 22 52 69 67 68 74 20  74 75 72 6e 22 2c 37 36  |,"Right turn",76|
0000fea0  30 2c 38 34 32 2c 34 32  30 2c 34 30 2c 32 2c 22  |0,842,420,40,2,"|
0000feb0  4d 6f 76 65 20 66 6f 72  77 61 72 64 22 0d 08 80  |Move forward"...|
0000fec0  29 dc 20 38 30 30 2c 33  36 2c 34 30 30 2c 34 30  |). 800,36,400,40|
0000fed0  2c 32 2c 22 52 65 74 75  72 6e 20 74 6f 20 44 65  |,2,"Return to De|
0000fee0  73 6b 74 6f 70 22 0d 08  81 54 dc 20 31 30 30 2c  |sktop"...T. 100,|
0000fef0  38 2c 35 31 32 2c 34 30  2c 32 2c 22 4c 6f 6f 6b  |8,512,40,2,"Look|
0000ff00  20 74 68 72 6f 75 67 68  20 74 68 65 20 6f 70 65  | through the ope|
0000ff10  6e 69 6e 67 22 2c 36 34  30 2c 38 2c 35 31 32 2c  |ning",640,8,512,|
0000ff20  34 30 2c 32 2c 22 4c 6f  6f 6b 20 72 6f 75 6e 64  |40,2,"Look round|
0000ff30  20 74 68 65 20 62 61 63  6b 22 0d 08 82 1b dc 20  | the back"..... |
0000ff40  31 30 37 30 2c 31 36 2c  32 30 30 2c 31 37 30 2c  |1070,16,200,170,|
0000ff50  33 2c 22 20 22 0d 08 83  04 0d 08 84 ae dc 20 39  |3," "......... 9|
0000ff60  36 2c 31 30 36 2c 31 36  30 2c 34 30 2c 32 2c 55  |6,106,160,40,2,U|
0000ff70  70 2c 31 38 32 2c 35 32  2c 31 36 30 2c 34 30 2c  |p,182,52,160,40,|
0000ff80  32 2c 52 69 67 68 74 2c  39 36 2c 30 2c 31 36 30  |2,Right,96,0,160|
0000ff90  2c 34 30 2c 32 2c 44 6f  77 6e 2c 31 30 2c 35 32  |,40,2,Down,10,52|
0000ffa0  2c 31 36 30 2c 34 30 2c  32 2c 4c 65 66 74 2c 33  |,160,40,2,Left,3|
0000ffb0  35 32 2c 31 30 36 2c 32  34 30 2c 34 30 2c 32 2c  |52,106,240,40,2,|
0000ffc0  43 6f 6e 6e 65 63 74 20  77 69 72 65 73 2c 33 35  |Connect wires,35|
0000ffd0  32 2c 35 32 2c 32 34 30  2c 34 30 2c 32 2c 4c 65  |2,52,240,40,2,Le|
0000ffe0  61 76 65 20 77 69 72 65  73 2c 33 35 32 2c 30 2c  |ave wires,352,0,|
0000fff0  32 34 30 2c 34 30 2c 32  2c 41 6c 6c 20 63 6f 6e  |240,40,2,All con|
00010000  6e 65 63 74 65 64 21 0d  08 85 04 0d 08 86 15 dd  |nected!.........|
00010010  f2 73 65 74 5f 6e 65 77  5f 62 75 74 74 6f 6e 73  |.set_new_buttons|
00010020  0d 08 87 18 e3 62 75 74  5f 6e 25 3d 31 b8 74 6f  |.....but_n%=1.to|
00010030  74 61 6c 5f 62 75 74 25  0d 08 88 32 e7 62 75 74  |tal_but%...2.but|
00010040  25 28 62 75 74 5f 6e 25  2c 34 29 3d 30 20 84 20  |%(but_n%,4)=0 . |
00010050  62 75 74 25 28 62 75 74  5f 6e 25 2c 34 29 3d 33  |but%(but_n%,4)=3|
00010060  3a 63 6f 6c 6f 75 72 25  3d 30 0d 08 89 20 e7 62  |:colour%=0... .b|
00010070  75 74 25 28 62 75 74 5f  6e 25 2c 34 29 3d 31 20  |ut%(but_n%,4)=1 |
00010080  3a 63 6f 6c 6f 75 72 25  3d 31 0d 08 8a 20 e7 62  |:colour%=1... .b|
00010090  75 74 25 28 62 75 74 5f  6e 25 2c 34 29 3d 32 20  |ut%(but_n%,4)=2 |
000100a0  3a 63 6f 6c 6f 75 72 25  3d 33 0d 08 8b 62 e7 20  |:colour%=3...b. |
000100b0  63 6f 6c 6f 75 72 25 3e  30 3a f2 62 75 74 5f 73  |colour%>0:.but_s|
000100c0  75 72 72 6f 75 6e 64 28  62 75 74 25 28 62 75 74  |urround(but%(but|
000100d0  5f 6e 25 2c 30 29 2c 62  75 74 25 28 62 75 74 5f  |_n%,0),but%(but_|
000100e0  6e 25 2c 31 29 2c 62 75  74 25 28 62 75 74 5f 6e  |n%,1),but%(but_n|
000100f0  25 2c 32 29 2c 62 75 74  25 28 62 75 74 5f 6e 25  |%,2),but%(but_n%|
00010100  2c 33 29 2c 63 6f 6c 6f  75 72 25 29 0d 08 8c 71  |,3),colour%)...q|
00010110  e7 20 63 6f 6c 6f 75 72  25 3e 30 3a f2 62 75 74  |. colour%>0:.but|
00010120  5f 63 65 6e 74 72 65 28  62 75 74 25 28 62 75 74  |_centre(but%(but|
00010130  5f 6e 25 2c 30 29 2c 62  75 74 25 28 62 75 74 5f  |_n%,0),but%(but_|
00010140  6e 25 2c 31 29 2c 62 75  74 25 28 62 75 74 5f 6e  |n%,1),but%(but_n|
00010150  25 2c 32 29 2c 62 75 74  25 28 62 75 74 5f 6e 25  |%,2),but%(but_n%|
00010160  2c 33 29 2c 31 32 38 2c  63 6f 6c 6f 75 72 25 2c  |,3),128,colour%,|
00010170  62 75 74 24 28 62 75 74  5f 6e 25 29 29 0d 08 8d  |but$(but_n%))...|
00010180  07 ef 32 36 0d 08 8e 05  ed 0d 08 8f 05 e1 0d 08  |..26............|
00010190  90 04 0d 08 91 2a dd f2  62 75 74 5f 73 75 72 72  |.....*..but_surr|
000101a0  6f 75 6e 64 28 62 78 25  2c 62 79 25 2c 62 78 78  |ound(bx%,by%,bxx|
000101b0  25 2c 62 79 79 25 2c 63  6f 6c 25 29 0d 08 92 0b  |%,byy%,col%)....|
000101c0  e6 30 2c 63 6f 6c 25 0d  08 93 78 ec 62 78 25 2c  |.0,col%...x.bx%,|
000101d0  62 79 25 3a f0 31 2c 62  78 78 25 2c 30 3a f0 31  |by%:.1,bxx%,0:.1|
000101e0  2c 30 2c 28 62 79 79 25  2b 34 29 3a f0 31 2c 2d  |,0,(byy%+4):.1,-|
000101f0  32 2c 30 3a f0 31 2c 30  2c 2d 28 62 79 79 25 2b  |2,0:.1,0,-(byy%+|
00010200  34 29 3a f0 30 2c 32 2c  28 62 79 79 25 2b 34 29  |4):.0,2,(byy%+4)|
00010210  3a f0 31 2c 2d 62 78 78  25 2c 30 3a f0 31 2c 30  |:.1,-bxx%,0:.1,0|
00010220  2c 2d 28 62 79 79 25 2b  34 29 3a f0 31 2c 32 2c  |,-(byy%+4):.1,2,|
00010230  30 3a f0 31 2c 30 2c 28  62 79 79 25 2b 34 29 0d  |0:.1,0,(byy%+4).|
00010240  08 94 48 e7 76 67 61 25  3d 31 20 ec 62 78 25 2c  |..H.vga%=1 .bx%,|
00010250  62 79 25 2d 32 3a f0 31  2c 62 78 78 25 2c 30 3a  |by%-2:.1,bxx%,0:|
00010260  f0 31 2c 30 2c 28 62 79  79 25 2b 38 29 3a f0 31  |.1,0,(byy%+8):.1|
00010270  2c 2d 62 78 78 25 2c 30  3a f0 31 2c 30 2c 2d 28  |,-bxx%,0:.1,0,-(|
00010280  62 79 79 25 2b 38 29 0d  08 95 05 e1 0d 08 96 04  |byy%+8).........|
00010290  0d 08 97 34 dd f2 62 75  74 5f 63 65 6e 74 72 65  |...4..but_centre|
000102a0  28 62 78 25 2c 62 79 25  2c 62 78 78 25 2c 62 79  |(bx%,by%,bxx%,by|
000102b0  79 25 2c 62 63 6f 6c 25  2c 63 6f 6c 25 2c 74 65  |y%,bcol%,col%,te|
000102c0  78 74 24 29 0d 08 98 14  e6 30 2c 62 63 6f 6c 25  |xt$).....0,bcol%|
000102d0  3a e6 30 2c 63 6f 6c 25  0d 08 99 21 e7 56 25 3d  |:.0,col%...!.V%=|
000102e0  31 20 63 6f 72 72 65 63  74 25 3d 32 20 8b 20 63  |1 correct%=2 . c|
000102f0  6f 72 72 65 63 74 25 3d  30 0d 08 9a 41 ef 32 34  |orrect%=0...A.24|
00010300  2c 62 78 25 2b 34 3b 62  79 25 2b 34 2d 63 6f 72  |,bx%+4;by%+4-cor|
00010310  72 65 63 74 25 3b 62 78  25 2b 62 78 78 25 2d 34  |rect%;bx%+bxx%-4|
00010320  3b 62 79 25 2b 62 79 79  25 2b 63 6f 72 72 65 63  |;by%+byy%+correc|
00010330  74 25 3b 31 36 2c 32 36  2c 35 0d 08 9b 27 6c 65  |t%;16,26,5...'le|
00010340  66 74 5f 6d 61 72 67 69  6e 25 3d 28 62 78 78 25  |ft_margin%=(bxx%|
00010350  2d 28 a9 28 74 65 78 74  24 29 2a 31 36 29 29 2f  |-(.(text$)*16))/|
00010360  32 0d 08 9c 23 ec 62 78  25 2b 6c 65 66 74 5f 6d  |2...#.bx%+left_m|
00010370  61 72 67 69 6e 25 2c 62  79 25 2b 33 36 3a f1 74  |argin%,by%+36:.t|
00010380  65 78 74 24 0d 08 9d 06  ef 34 0d 08 9e 05 e1 0d  |ext$.....4......|
00010390  08 9f 04 0d 08 a0 1c dd  f2 63 68 65 63 6b 5f 62  |.........check_b|
000103a0  75 74 74 6f 6e 73 28 61  6e 5f 6e 75 6d 25 29 0d  |uttons(an_num%).|
000103b0  08 a1 0f 73 65 6c 65 63  74 65 64 25 3d 30 0d 08  |...selected%=0..|
000103c0  a2 11 c8 97 6d 78 25 2c  6d 79 25 2c 6d 63 25 0d  |....mx%,my%,mc%.|
000103d0  08 a3 0c 63 62 25 3d a6  28 31 29 0d 08 a4 20 f4  |...cb%=.(1)... .|
000103e0  20 49 46 63 62 25 3d 31  36 20 63 62 25 3d 30 3a  | IFcb%=16 cb%=0:|
000103f0  50 52 4f 43 70 72 69 6e  74 65 72 0d 08 a5 27 f4  |PROCprinter...'.|
00010400  20 49 46 63 62 25 3d 31  39 20 63 62 25 3d 30 3a  | IFcb%=19 cb%=0:|
00010410  50 52 4f 43 73 63 72 65  65 6e 5f 73 61 76 65 28  |PROCscreen_save(|
00010420  31 29 0d 08 a6 1a e3 62  75 74 5f 6e 25 3d 31 20  |1).....but_n%=1 |
00010430  b8 20 74 6f 74 61 6c 5f  62 75 74 25 0d 08 a7 19  |. total_but%....|
00010440  e7 62 75 74 25 28 62 75  74 5f 6e 25 2c 34 29 3c  |.but%(but_n%,4)<|
00010450  32 3a ed 3a e1 0d 08 a8  79 e7 6d 78 25 3c 62 75  |2:.:....y.mx%<bu|
00010460  74 25 28 62 75 74 5f 6e  25 2c 30 29 20 84 20 6d  |t%(but_n%,0) . m|
00010470  78 25 3e 28 62 75 74 25  28 62 75 74 5f 6e 25 2c  |x%>(but%(but_n%,|
00010480  30 29 2b 62 75 74 25 28  62 75 74 5f 6e 25 2c 32  |0)+but%(but_n%,2|
00010490  29 29 20 84 20 6d 79 25  3c 62 75 74 25 28 62 75  |)) . my%<but%(bu|
000104a0  74 5f 6e 25 2c 31 29 20  84 20 6d 79 25 3e 28 62  |t_n%,1) . my%>(b|
000104b0  75 74 25 28 62 75 74 5f  6e 25 2c 31 29 2b 62 75  |ut%(but_n%,1)+bu|
000104c0  74 25 28 62 75 74 5f 6e  25 2c 33 29 29 8c 0d 08  |t%(but_n%,3))...|
000104d0  a9 9d 20 20 20 e7 b0 62  75 74 25 28 62 75 74 5f  |..   ..but%(but_|
000104e0  6e 25 2c 30 29 2b 36 2c  62 75 74 25 28 62 75 74  |n%,0)+6,but%(but|
000104f0  5f 6e 25 2c 31 29 2b 38  29 3d 31 33 20 80 20 62  |_n%,1)+8)=13 . b|
00010500  75 74 25 28 62 75 74 5f  6e 25 2c 34 29 3c 33 3a  |ut%(but_n%,4)<3:|
00010510  f2 62 75 74 5f 63 65 6e  74 72 65 28 62 75 74 25  |.but_centre(but%|
00010520  28 62 75 74 5f 6e 25 2c  30 29 2c 62 75 74 25 28  |(but_n%,0),but%(|
00010530  62 75 74 5f 6e 25 2c 31  29 2c 62 75 74 25 28 62  |but_n%,1),but%(b|
00010540  75 74 5f 6e 25 2c 32 29  2c 62 75 74 25 28 62 75  |ut_n%,2),but%(bu|
00010550  74 5f 6e 25 2c 33 29 2c  31 32 38 2c 33 2c 62 75  |t_n%,3),128,3,bu|
00010560  74 24 28 62 75 74 5f 6e  25 29 29 0d 08 aa 05 cc  |t$(but_n%)).....|
00010570  0d 08 ab 9c 20 20 20 e7  b0 62 75 74 25 28 62 75  |....   ..but%(bu|
00010580  74 5f 6e 25 2c 30 29 2b  36 2c 62 75 74 25 28 62  |t_n%,0)+6,but%(b|
00010590  75 74 5f 6e 25 2c 31 29  2b 34 29 3d 30 20 80 20  |ut_n%,1)+4)=0 . |
000105a0  62 75 74 25 28 62 75 74  5f 6e 25 2c 34 29 3c 33  |but%(but_n%,4)<3|
000105b0  3a f2 62 75 74 5f 63 65  6e 74 72 65 28 62 75 74  |:.but_centre(but|
000105c0  25 28 62 75 74 5f 6e 25  2c 30 29 2c 62 75 74 25  |%(but_n%,0),but%|
000105d0  28 62 75 74 5f 6e 25 2c  31 29 2c 62 75 74 25 28  |(but_n%,1),but%(|
000105e0  62 75 74 5f 6e 25 2c 32  29 2c 62 75 74 25 28 62  |but_n%,2),but%(b|
000105f0  75 74 5f 6e 25 2c 33 29  2c 31 34 31 2c 33 2c 62  |ut_n%,3),141,3,b|
00010600  75 74 24 28 62 75 74 5f  6e 25 29 29 0d 08 ac 1e  |ut$(but_n%))....|
00010610  20 20 20 e7 6d 63 25 3d  34 3a 73 65 6c 65 63 74  |   .mc%=4:select|
00010620  65 64 25 3d 62 75 74 5f  6e 25 0d 08 ad 05 cd 0d  |ed%=but_n%......|
00010630  08 ae 20 e7 61 6e 5f 6e  75 6d 25 3e 30 3a f2 73  |.. .an_num%>0:.s|
00010640  70 5f 61 6e 69 6d 28 61  6e 5f 6e 75 6d 25 29 0d  |p_anim(an_num%).|
00010650  08 af 05 ed 0d 08 b0 05  e1 0d 08 b1 04 0d 08 b2  |................|
00010660  16 dd f2 73 70 5f 61 6e  69 6d 28 61 6e 5f 6e 75  |...sp_anim(an_nu|
00010670  6d 25 29 0d 08 b3 10 e7  61 6e 5f 6e 75 6d 25 3d  |m%).....an_num%=|
00010680  31 20 8c 0d 08 b4 12 20  e7 61 6e 5f 74 25 2b 32  |1 ..... .an_t%+2|
00010690  30 3c 91 20 8c 0d 08 b5  0e 20 20 2a 46 58 31 31  |0<. .....  *FX11|
000106a0  32 2c 31 0d 08 b6 3c 20  20 f2 70 6c 6f 74 5f 73  |2,1...<  .plot_s|
000106b0  70 72 69 74 65 28 31 30  30 2c 36 31 36 2c 31 2c  |prite(100,616,1,|
000106c0  31 2c 31 2c 31 2c 22 72  22 2b c3 28 61 6e 25 29  |1,1,1,"r"+.(an%)|
000106d0  2c 73 70 72 69 74 65 5f  61 72 65 61 31 25 29 0d  |,sprite_area1%).|
000106e0  08 b7 1c 20 20 61 6e 25  3d 61 6e 25 2b 31 3a e7  |...  an%=an%+1:.|
000106f0  20 61 6e 25 3d 37 61 6e  25 3d 34 0d 08 b8 3d 20  | an%=7an%=4...= |
00010700  20 f2 70 6c 6f 74 5f 73  70 72 69 74 65 28 34 38  | .plot_sprite(48|
00010710  30 2c 36 31 36 2c 31 2c  31 2c 31 2c 31 2c 22 72  |0,616,1,1,1,1,"r|
00010720  22 2b c3 28 61 6e 6e 25  29 2c 73 70 72 69 74 65  |"+.(ann%),sprite|
00010730  5f 61 72 65 61 31 25 29  0d 08 b9 20 20 20 61 6e  |_area1%)...   an|
00010740  6e 25 3d 61 6e 6e 25 2b  31 3a e7 20 61 6e 6e 25  |n%=ann%+1:. ann%|
00010750  3d 37 61 6e 6e 25 3d 34  0d 08 ba 0d 20 20 61 6e  |=7ann%=4....  an|
00010760  5f 74 25 3d 91 0d 08 bb  06 20 cd 0d 08 bc 05 cd  |_t%=..... ......|
00010770  0d 08 bd 10 e7 61 6e 5f  6e 75 6d 25 3d 32 20 8c  |.....an_num%=2 .|
00010780  0d 08 be 30 20 20 e7 73  6f 75 6e 64 5f 74 25 2b  |...0  .sound_t%+|
00010790  34 30 30 3c 91 3a d4 32  2c 2d 31 35 2c 26 32 35  |400<.:.2,-15,&25|
000107a0  30 30 2c 32 30 3a 73 6f  75 6e 64 5f 74 25 3d 91  |00,20:sound_t%=.|
000107b0  0d 08 bf 05 cd 0d 08 c0  05 e1 0d 08 c1 04 0d 08  |................|
000107c0  c2 12 dd f2 63 68 65 63  6b 5f 61 6e 5f 6e 75 6d  |....check_an_num|
000107d0  0d 08 c3 09 f7 8d 54 53  49 0d 08 c4 0c 67 6f 5f  |......TSI....go_|
000107e0  61 6e 25 3d 30 0d 08 c5  14 e3 63 61 6e 25 3d 31  |an%=0.....can%=1|
000107f0  b8 20 61 6e 5f 6e 75 6d  25 0d 08 c6 53 e3 63 61  |. an_num%...S.ca|
00010800  6e 6e 25 3d 31 b8 33 3a  f3 61 6e 78 25 28 63 61  |nn%=1.3:.anx%(ca|
00010810  6e 6e 25 29 2c 61 6e 79  25 28 63 61 6e 6e 25 29  |nn%),any%(cann%)|
00010820  2c 61 6e 78 78 25 28 63  61 6e 6e 25 29 2c 61 6e  |,anxx%(cann%),an|
00010830  79 79 25 28 63 61 6e 6e  25 29 2c 61 6e 5f 74 79  |yy%(cann%),an_ty|
00010840  70 65 25 28 63 61 6e 6e  25 29 3a ed 0d 08 c7 05  |pe%(cann%):.....|
00010850  ed 0d 08 c8 4f e7 6d 78  25 3c 61 6e 78 78 25 28  |....O.mx%<anxx%(|
00010860  31 29 20 80 20 6d 78 25  3e 61 6e 78 25 28 31 29  |1) . mx%>anx%(1)|
00010870  20 80 20 6d 79 25 3c 61  6e 79 79 25 28 31 29 20  | . my%<anyy%(1) |
00010880  80 20 6d 79 25 3e 61 6e  79 25 28 31 29 3a 67 6f  |. my%>any%(1):go|
00010890  5f 61 6e 25 3d 61 6e 5f  74 79 70 65 25 28 31 29  |_an%=an_type%(1)|
000108a0  0d 08 c9 4f e7 6d 78 25  3c 61 6e 78 78 25 28 32  |...O.mx%<anxx%(2|
000108b0  29 20 80 20 6d 78 25 3e  61 6e 78 25 28 32 29 20  |) . mx%>anx%(2) |
000108c0  80 20 6d 79 25 3c 61 6e  79 79 25 28 32 29 20 80  |. my%<anyy%(2) .|
000108d0  20 6d 79 25 3e 61 6e 79  25 28 32 29 3a 67 6f 5f  | my%>any%(2):go_|
000108e0  61 6e 25 3d 61 6e 5f 74  79 70 65 25 28 32 29 0d  |an%=an_type%(2).|
000108f0  08 ca 4f e7 6d 78 25 3c  61 6e 78 78 25 28 33 29  |..O.mx%<anxx%(3)|
00010900  20 80 20 6d 78 25 3e 61  6e 78 25 28 33 29 20 80  | . mx%>anx%(3) .|
00010910  20 6d 79 25 3c 61 6e 79  79 25 28 33 29 20 80 20  | my%<anyy%(3) . |
00010920  6d 79 25 3e 61 6e 79 25  28 33 29 3a 67 6f 5f 61  |my%>any%(3):go_a|
00010930  6e 25 3d 61 6e 5f 74 79  70 65 25 28 33 29 0d 08  |n%=an_type%(3)..|
00010940  cb 1a e7 67 6f 5f 61 6e  25 3d 31 20 f2 62 6f 75  |...go_an%=1 .bou|
00010950  6e 63 65 5f 62 61 6c 6c  0d 08 cc 14 e7 67 6f 5f  |nce_ball.....go_|
00010960  61 6e 25 3d 32 20 f2 73  77 65 65 70 0d 08 cd 1e  |an%=2 .sweep....|
00010970  e7 67 6f 5f 61 6e 25 3e  30 20 f2 73 65 74 5f 6e  |.go_an%>0 .set_n|
00010980  65 77 5f 62 75 74 74 6f  6e 73 0d 08 ce 05 e1 0d  |ew_buttons......|
00010990  08 cf 04 0d 08 d0 17 dd  f2 66 6c 69 70 5f 68 6f  |.........flip_ho|
000109a0  72 28 73 70 72 69 74 65  24 29 0d 08 d1 2e c8 99  |r(sprite$)......|
000109b0  22 4f 53 5f 53 70 72 69  74 65 4f 70 22 2c 26 31  |"OS_SpriteOp",&1|
000109c0  32 46 2c 73 70 72 69 74  65 5f 61 72 65 61 31 25  |2F,sprite_area1%|
000109d0  2c 73 70 72 69 74 65 24  0d 08 d2 05 e1 0d 08 d3  |,sprite$........|
000109e0  04 0d 08 d4 18 dd f2 73  74 61 72 74 5f 61 6e 69  |.......start_ani|
000109f0  6d 28 62 6c 61 6e 6b 24  29 0d 08 d5 3d c8 99 22  |m(blank$)...=.."|
00010a00  4f 53 5f 53 70 72 69 74  65 4f 70 22 2c 26 31 31  |OS_SpriteOp",&11|
00010a10  38 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 2c  |8,sprite_area1%,|
00010a20  73 65 6c 5f 73 70 72 69  74 65 24 20 b8 20 72 30  |sel_sprite$ . r0|
00010a30  2c 72 31 2c 72 32 0d 08  d6 3c 77 69 64 74 68 25  |,r1,r2...<width%|
00010a40  3d 28 21 28 72 32 2b 31  36 29 2b 31 29 2a 31 36  |=(!(r2+16)+1)*16|
00010a50  3a 68 65 69 67 68 74 25  3d 28 21 28 72 32 2b 32  |:height%=(!(r2+2|
00010a60  30 29 2b 31 29 2a 28 34  2a 28 76 67 61 25 2b 31  |0)+1)*(4*(vga%+1|
00010a70  29 29 0d 08 d7 56 c8 99  22 4f 53 5f 53 70 72 69  |))...V.."OS_Spri|
00010a80  74 65 4f 70 22 2c 26 31  31 30 2c 73 70 72 69 74  |teOp",&110,sprit|
00010a90  65 5f 61 72 65 61 31 25  2c 62 6c 61 6e 6b 24 2c  |e_area1%,blank$,|
00010aa0  30 2c 61 6e 5f 78 25 2c  61 6e 5f 79 25 2c 61 6e  |0,an_x%,an_y%,an|
00010ab0  5f 78 25 2b 77 69 64 74  68 25 2c 61 6e 5f 79 25  |_x%+width%,an_y%|
00010ac0  2b 68 65 69 67 68 74 25  0d 08 d8 46 f2 70 6c 6f  |+height%...F.plo|
00010ad0  74 5f 73 70 72 69 74 65  5f 6d 61 73 6b 65 64 28  |t_sprite_masked(|
00010ae0  61 6e 5f 78 25 2c 61 6e  5f 79 25 2c 31 2c 31 2c  |an_x%,an_y%,1,1,|
00010af0  31 2c 31 2c 73 65 6c 5f  73 70 72 69 74 65 24 2c  |1,1,sel_sprite$,|
00010b00  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 08  |sprite_area1%)..|
00010b10  d9 1d 61 6e 5f 78 78 25  3d 61 6e 5f 78 25 3a 61  |..an_xx%=an_x%:a|
00010b20  6e 5f 79 79 25 3d 61 6e  5f 79 25 0d 08 da 05 e1  |n_yy%=an_y%.....|
00010b30  0d 08 db 04 0d 08 dc 12  dd f2 61 6e 69 6d 28 62  |..........anim(b|
00010b40  6c 61 6e 6b 24 29 0d 08  dd 48 f2 70 6c 6f 74 5f  |lank$)...H.plot_|
00010b50  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 61 6e  |sprite_masked(an|
00010b60  5f 78 78 25 2c 61 6e 5f  79 79 25 2c 31 2c 31 2c  |_xx%,an_yy%,1,1,|
00010b70  31 2c 31 2b 76 67 61 25  2c 62 6c 61 6e 6b 24 2c  |1,1+vga%,blank$,|
00010b80  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 08  |sprite_area1%)..|
00010b90  de 56 c8 99 22 4f 53 5f  53 70 72 69 74 65 4f 70  |.V.."OS_SpriteOp|
00010ba0  22 2c 26 31 31 30 2c 73  70 72 69 74 65 5f 61 72  |",&110,sprite_ar|
00010bb0  65 61 31 25 2c 62 6c 61  6e 6b 24 2c 30 2c 61 6e  |ea1%,blank$,0,an|
00010bc0  5f 78 25 2c 61 6e 5f 79  25 2c 61 6e 5f 78 25 2b  |_x%,an_y%,an_x%+|
00010bd0  77 69 64 74 68 25 2c 61  6e 5f 79 25 2b 68 65 69  |width%,an_y%+hei|
00010be0  67 68 74 25 0d 08 df 46  f2 70 6c 6f 74 5f 73 70  |ght%...F.plot_sp|
00010bf0  72 69 74 65 5f 6d 61 73  6b 65 64 28 61 6e 5f 78  |rite_masked(an_x|
00010c00  25 2c 61 6e 5f 79 25 2c  31 2c 31 2c 31 2c 31 2c  |%,an_y%,1,1,1,1,|
00010c10  73 65 6c 5f 73 70 72 69  74 65 24 2c 73 70 72 69  |sel_sprite$,spri|
00010c20  74 65 5f 61 72 65 61 31  25 29 0d 08 e0 1d 61 6e  |te_area1%)....an|
00010c30  5f 78 78 25 3d 61 6e 5f  78 25 3a 61 6e 5f 79 79  |_xx%=an_x%:an_yy|
00010c40  25 3d 61 6e 5f 79 25 0d  08 e1 05 e1 0d 08 e2 04  |%=an_y%.........|
00010c50  0d 08 e3 16 dd f2 65 6e  64 5f 61 6e 69 6d 28 62  |......end_anim(b|
00010c60  6c 61 6e 6b 24 29 0d 08  e4 48 f2 70 6c 6f 74 5f  |lank$)...H.plot_|
00010c70  73 70 72 69 74 65 5f 6d  61 73 6b 65 64 28 61 6e  |sprite_masked(an|
00010c80  5f 78 78 25 2c 61 6e 5f  79 79 25 2c 31 2c 31 2c  |_xx%,an_yy%,1,1,|
00010c90  31 2c 31 2b 76 67 61 25  2c 62 6c 61 6e 6b 24 2c  |1,1+vga%,blank$,|
00010ca0  73 70 72 69 74 65 5f 61  72 65 61 31 25 29 0d 08  |sprite_area1%)..|
00010cb0  e5 05 e1 0d 08 e6 04 0d  08 e7 04 0d 08 e8 1a dd  |................|
00010cc0  f2 73 74 61 72 74 5f 61  6e 69 6d 32 28 62 6c 61  |.start_anim2(bla|
00010cd0  6e 6b 32 24 29 0d 08 e9  3e c8 99 22 4f 53 5f 53  |nk2$)...>.."OS_S|
00010ce0  70 72 69 74 65 4f 70 22  2c 26 31 31 38 2c 73 70  |priteOp",&118,sp|
00010cf0  72 69 74 65 5f 61 72 65  61 31 25 2c 73 65 6c 5f  |rite_area1%,sel_|
00010d00  73 70 72 69 74 65 32 24  20 b8 20 72 30 2c 72 31  |sprite2$ . r0,r1|
00010d10  2c 72 32 0d 08 ea 3e 77  69 64 74 68 32 25 3d 28  |,r2...>width2%=(|
00010d20  21 28 72 32 2b 31 36 29  2b 31 29 2a 31 36 3a 68  |!(r2+16)+1)*16:h|
00010d30  65 69 67 68 74 32 25 3d  28 21 28 72 32 2b 32 30  |eight2%=(!(r2+20|
00010d40  29 2b 31 29 2a 28 34 2a  28 76 67 61 25 2b 31 29  |)+1)*(4*(vga%+1)|
00010d50  29 0d 08 eb 5d c8 99 22  4f 53 5f 53 70 72 69 74  |)...].."OS_Sprit|
00010d60  65 4f 70 22 2c 26 31 31  30 2c 73 70 72 69 74 65  |eOp",&110,sprite|
00010d70  5f 61 72 65 61 31 25 2c  62 6c 61 6e 6b 32 24 2c  |_area1%,blank2$,|
00010d80  30 2c 61 6e 5f 78 32 25  2c 61 6e 5f 79 32 25 2c  |0,an_x2%,an_y2%,|
00010d90  61 6e 5f 78 32 25 2b 77  69 64 74 68 32 25 2c 61  |an_x2%+width2%,a|
00010da0  6e 5f 79 32 25 2b 68 65  69 67 68 74 32 25 0d 08  |n_y2%+height2%..|
00010db0  ec 49 f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |.I.plot_sprite_m|
00010dc0  61 73 6b 65 64 28 61 6e  5f 78 32 25 2c 61 6e 5f  |asked(an_x2%,an_|
00010dd0  79 32 25 2c 31 2c 31 2c  31 2c 31 2c 73 65 6c 5f  |y2%,1,1,1,1,sel_|
00010de0  73 70 72 69 74 65 32 24  2c 73 70 72 69 74 65 5f  |sprite2$,sprite_|
00010df0  61 72 65 61 31 25 29 0d  08 ed 21 61 6e 5f 78 78  |area1%)...!an_xx|
00010e00  32 25 3d 61 6e 5f 78 32  25 3a 61 6e 5f 79 79 32  |2%=an_x2%:an_yy2|
00010e10  25 3d 61 6e 5f 79 32 25  0d 08 ee 05 e1 0d 08 ef  |%=an_y2%........|
00010e20  04 0d 08 f0 14 dd f2 61  6e 69 6d 32 28 62 6c 61  |.......anim2(bla|
00010e30  6e 6b 32 24 29 0d 08 f1  4b f2 70 6c 6f 74 5f 73  |nk2$)...K.plot_s|
00010e40  70 72 69 74 65 5f 6d 61  73 6b 65 64 28 61 6e 5f  |prite_masked(an_|
00010e50  78 78 32 25 2c 61 6e 5f  79 79 32 25 2c 31 2c 31  |xx2%,an_yy2%,1,1|
00010e60  2c 31 2c 31 2b 76 67 61  25 2c 62 6c 61 6e 6b 32  |,1,1+vga%,blank2|
00010e70  24 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 29  |$,sprite_area1%)|
00010e80  0d 08 f2 5d c8 99 22 4f  53 5f 53 70 72 69 74 65  |...].."OS_Sprite|
00010e90  4f 70 22 2c 26 31 31 30  2c 73 70 72 69 74 65 5f  |Op",&110,sprite_|
00010ea0  61 72 65 61 31 25 2c 62  6c 61 6e 6b 32 24 2c 30  |area1%,blank2$,0|
00010eb0  2c 61 6e 5f 78 32 25 2c  61 6e 5f 79 32 25 2c 61  |,an_x2%,an_y2%,a|
00010ec0  6e 5f 78 32 25 2b 77 69  64 74 68 32 25 2c 61 6e  |n_x2%+width2%,an|
00010ed0  5f 79 32 25 2b 68 65 69  67 68 74 32 25 0d 08 f3  |_y2%+height2%...|
00010ee0  49 f2 70 6c 6f 74 5f 73  70 72 69 74 65 5f 6d 61  |I.plot_sprite_ma|
00010ef0  73 6b 65 64 28 61 6e 5f  78 32 25 2c 61 6e 5f 79  |sked(an_x2%,an_y|
00010f00  32 25 2c 31 2c 31 2c 31  2c 31 2c 73 65 6c 5f 73  |2%,1,1,1,1,sel_s|
00010f10  70 72 69 74 65 32 24 2c  73 70 72 69 74 65 5f 61  |prite2$,sprite_a|
00010f20  72 65 61 31 25 29 0d 08  f4 21 61 6e 5f 78 78 32  |rea1%)...!an_xx2|
00010f30  25 3d 61 6e 5f 78 32 25  3a 61 6e 5f 79 79 32 25  |%=an_x2%:an_yy2%|
00010f40  3d 61 6e 5f 79 32 25 0d  08 f5 05 e1 0d 08 f6 04  |=an_y2%.........|
00010f50  0d 08 f7 18 dd f2 65 6e  64 5f 61 6e 69 6d 32 28  |......end_anim2(|
00010f60  62 6c 61 6e 6b 32 24 29  0d 08 f8 4b f2 70 6c 6f  |blank2$)...K.plo|
00010f70  74 5f 73 70 72 69 74 65  5f 6d 61 73 6b 65 64 28  |t_sprite_masked(|
00010f80  61 6e 5f 78 78 32 25 2c  61 6e 5f 79 79 32 25 2c  |an_xx2%,an_yy2%,|
00010f90  31 2c 31 2c 31 2c 31 2b  76 67 61 25 2c 62 6c 61  |1,1,1,1+vga%,bla|
00010fa0  6e 6b 32 24 2c 73 70 72  69 74 65 5f 61 72 65 61  |nk2$,sprite_area|
00010fb0  31 25 29 0d 08 f9 05 e1  0d 08 fa 04 0d 08 fb 14  |1%).............|
00010fc0  dd f2 61 6e 69 6d 32 31  28 62 6c 61 6e 6b 24 29  |..anim21(blank$)|
00010fd0  0d 08 fc 0e ff 22 46 58  31 31 32 2c 31 22 0d 08  |....."FX112,1"..|
00010fe0  fd 4b f2 70 6c 6f 74 5f  73 70 72 69 74 65 5f 6d  |.K.plot_sprite_m|
00010ff0  61 73 6b 65 64 28 61 6e  5f 78 78 31 25 2c 61 6e  |asked(an_xx1%,an|
00011000  5f 79 79 31 25 2c 31 2c  31 2c 31 2c 31 2b 76 67  |_yy1%,1,1,1,1+vg|
00011010  61 25 2c 62 6c 61 6e 6b  31 24 2c 73 70 72 69 74  |a%,blank1$,sprit|
00011020  65 5f 61 72 65 61 31 25  29 0d 08 fe 5b c8 99 22  |e_area1%)...[.."|
00011030  4f 53 5f 53 70 72 69 74  65 4f 70 22 2c 26 31 31  |OS_SpriteOp",&11|
00011040  30 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 2c  |0,sprite_area1%,|
00011050  62 6c 61 6e 6b 31 24 2c  30 2c 61 6e 5f 78 31 25  |blank1$,0,an_x1%|
00011060  2c 61 6e 5f 79 31 25 2c  61 6e 5f 78 31 25 2b 77  |,an_y1%,an_x1%+w|
00011070  69 64 74 68 25 2c 61 6e  5f 79 31 25 2b 68 65 69  |idth%,an_y1%+hei|
00011080  67 68 74 25 0d 08 ff 48  f2 70 6c 6f 74 5f 73 70  |ght%...H.plot_sp|
00011090  72 69 74 65 5f 6d 61 73  6b 65 64 28 61 6e 5f 78  |rite_masked(an_x|
000110a0  31 25 2c 61 6e 5f 79 31  25 2c 31 2c 31 2c 31 2c  |1%,an_y1%,1,1,1,|
000110b0  31 2c 73 65 6c 5f 73 70  72 69 74 65 24 2c 73 70  |1,sel_sprite$,sp|
000110c0  72 69 74 65 5f 61 72 65  61 31 25 29 0d 09 00 21  |rite_area1%)...!|
000110d0  61 6e 5f 78 78 31 25 3d  61 6e 5f 78 31 25 3a 61  |an_xx1%=an_x1%:a|
000110e0  6e 5f 79 79 31 25 3d 61  6e 5f 79 31 25 0d 09 01  |n_yy1%=an_y1%...|
000110f0  05 e1 0d 09 02 04 0d 09  03 13 dd f2 70 72 69 28  |............pri(|
00011100  78 25 2c 79 25 2c 61 24  29 0d 09 04 3a c8 99 22  |x%,y%,a$)...:.."|
00011110  46 6f 6e 74 5f 46 69 6e  64 46 6f 6e 74 22 2c 2c  |Font_FindFont",,|
00011120  22 54 41 42 4c 4f 49 44  2e 4d 65 64 69 75 6d 22  |"TABLOID.Medium"|
00011130  2c 33 32 30 2c 33 36 30  2c 30 2c 30 20 b8 20 68  |,320,360,0,0 . h|
00011140  61 6e 25 0d 09 05 23 c8  99 22 46 6f 6e 74 5f 53  |an%...#.."Font_S|
00011150  65 74 46 6f 6e 74 43 6f  6c 6f 75 72 73 22 2c 30  |etFontColours",0|
00011160  2c 30 2c 31 2c 32 0d 09  06 14 ef 30 2c 30 2c 30  |,0,1,2.....0,0,0|
00011170  2c 30 2c 30 2c 30 2c 30  2c 30 0d 09 07 1f c8 99  |,0,0,0,0,0......|
00011180  22 46 6f 6e 74 5f 50 61  69 6e 74 22 2c 2c 61 24  |"Font_Paint",,a$|
00011190  2c 31 36 2c 78 25 2c 79  25 0d 09 08 1a c8 99 22  |,16,x%,y%......"|
000111a0  46 6f 6e 74 5f 4c 6f 73  65 46 6f 6e 74 22 2c 68  |Font_LoseFont",h|
000111b0  61 6e 25 0d 09 09 05 e1  0d 09 0a 04 0d 09 0b 14  |an%.............|
000111c0  dd f2 70 72 69 32 28 78  25 2c 79 25 2c 61 24 29  |..pri2(x%,y%,a$)|
000111d0  0d 09 0c 3b c8 99 22 46  6f 6e 74 5f 46 69 6e 64  |...;.."Font_Find|
000111e0  46 6f 6e 74 22 2c 2c 22  54 41 42 4c 4f 49 44 2e  |Font",,"TABLOID.|
000111f0  4d 65 64 69 75 6d 22 2c  32 32 30 2c 32 36 30 2c  |Medium",220,260,|
00011200  30 2c 30 20 b8 20 68 61  6e 64 25 0d 09 0d 23 c8  |0,0 . hand%...#.|
00011210  99 22 46 6f 6e 74 5f 53  65 74 46 6f 6e 74 43 6f  |."Font_SetFontCo|
00011220  6c 6f 75 72 73 22 2c 30  2c 30 2c 31 2c 32 0d 09  |lours",0,0,1,2..|
00011230  0e 14 ef 30 2c 30 2c 30  2c 30 2c 30 2c 30 2c 30  |...0,0,0,0,0,0,0|
00011240  2c 30 0d 09 0f 1f c8 99  22 46 6f 6e 74 5f 50 61  |,0......"Font_Pa|
00011250  69 6e 74 22 2c 2c 61 24  2c 31 36 2c 78 25 2c 79  |int",,a$,16,x%,y|
00011260  25 0d 09 10 1b c8 99 22  46 6f 6e 74 5f 4c 6f 73  |%......"Font_Los|
00011270  65 46 6f 6e 74 22 2c 68  61 6e 64 25 0d 09 11 05  |eFont",hand%....|
00011280  e1 0d 09 12 04 0d 09 13  2b dc 32 35 36 2c 34 2c  |........+.256,4,|
00011290  31 32 36 30 2c 34 38 30  2c 31 2c 20 30 2c 30 2c  |1260,480,1, 0,0,|
000112a0  30 2c 30 2c 30 2c 20 30  2c 30 2c 30 2c 30 2c 30  |0,0,0, 0,0,0,0,0|
000112b0  0d 09 14 33 dc 32 35 36  2c 34 2c 31 32 36 30 2c  |...3.256,4,1260,|
000112c0  34 30 30 2c 31 2c 20 34  2c 34 38 30 2c 31 30 30  |400,1, 4,480,100|
000112d0  30 2c 31 30 30 30 2c 32  2c 20 30 2c 30 2c 30 2c  |0,1000,2, 0,0,0,|
000112e0  30 2c 30 0d 09 15 04 0d  09 16 20 dd f2 73 70 61  |0,0....... ..spa|
000112f0  63 65 28 73 78 25 2c 73  79 25 2c 61 6e 5f 6e 75  |ce(sx%,sy%,an_nu|
00011300  6d 25 2c 70 61 25 29 0d  09 17 0f f2 70 61 75 73  |m%,pa%).....paus|
00011310  65 28 70 61 25 29 0d 09  18 0b 2a 66 78 32 31 2c  |e(pa%)....*fx21,|
00011320  39 0d 09 19 16 f2 64 65  66 69 6e 65 5f 62 75 74  |9.....define_but|
00011330  74 6f 6e 73 28 31 29 0d  09 1a 32 62 75 74 25 28  |tons(1)...2but%(|
00011340  31 2c 30 29 3d 73 78 25  3a 62 75 74 25 28 31 2c  |1,0)=sx%:but%(1,|
00011350  31 29 3d 73 79 25 3a 61  6e 5f 74 25 3d 91 3a 73  |1)=sy%:an_t%=.:s|
00011360  6f 75 6e 64 5f 74 25 3d  91 0d 09 1b 4e c8 99 22  |ound_t%=....N.."|
00011370  4f 53 5f 53 70 72 69 74  65 4f 70 22 2c 26 31 31  |OS_SpriteOp",&11|
00011380  30 2c 73 70 72 69 74 65  5f 61 72 65 61 31 25 2c  |0,sprite_area1%,|
00011390  22 73 70 61 63 65 5f 61  72 65 61 22 2c 30 2c 73  |"space_area",0,s|
000113a0  78 25 2c 73 79 25 2d 34  2c 73 78 25 2b 32 30 30  |x%,sy%-4,sx%+200|
000113b0  2c 73 79 25 2b 34 38 0d  09 1c 0e f2 70 61 75 73  |,sy%+48.....paus|
000113c0  65 28 31 30 29 0d 09 1d  1a f5 3a c8 97 6d 78 25  |e(10).....:..mx%|
000113d0  2c 6d 79 25 2c 6d 63 25  3a fd 6d 63 25 3d 30 0d  |,my%,mc%:.mc%=0.|
000113e0  09 1e 1f e3 6d 73 78 66  25 3d 31 b8 31 30 3a c8  |....msxf%=1.10:.|
000113f0  97 6d 78 25 2c 6d 79 25  2c 6d 63 25 3a ed 0d 09  |.mx%,my%,mc%:...|
00011400  1f 14 f2 73 65 74 5f 6e  65 77 5f 62 75 74 74 6f  |...set_new_butto|
00011410  6e 73 0d 09 20 07 c8 97  ee 0d 09 21 05 f5 0d 09  |ns.. ......!....|
00011420  22 1b f2 63 68 65 63 6b  5f 62 75 74 74 6f 6e 73  |"..check_buttons|
00011430  28 61 6e 5f 6e 75 6d 25  29 0d 09 23 10 fd 73 65  |(an_num%)..#..se|
00011440  6c 65 63 74 65 64 25 3e  30 0d 09 24 41 f2 70 6c  |lected%>0..$A.pl|
00011450  6f 74 5f 73 70 72 69 74  65 28 73 78 25 2c 73 79  |ot_sprite(sx%,sy|
00011460  25 2d 34 2c 31 2c 31 2c  31 2c 31 2b 56 25 2c 22  |%-4,1,1,1,1+V%,"|
00011470  73 70 61 63 65 5f 61 72  65 61 22 2c 73 70 72 69  |space_area",spri|
00011480  74 65 5f 61 72 65 61 31  25 29 0d 09 25 0d 61 6d  |te_area1%)..%.am|
00011490  5f 6e 75 6d 25 3d 30 0d  09 26 0e f2 70 61 75 73  |_num%=0..&..paus|
000114a0  65 28 33 30 29 0d 09 27  05 e1 0d 09 28 04 0d 09  |e(30)..'....(...|
000114b0  29 1c dd f2 62 6f 78 28  62 78 25 2c 62 79 25 2c  |)...box(bx%,by%,|
000114c0  62 78 78 25 2c 62 79 79  25 29 0d 09 2a 1f 62 78  |bxx%,byy%)..*.bx|
000114d0  78 25 3d 62 78 25 2b 62  78 78 25 3a 62 79 79 25  |x%=bx%+bxx%:byy%|
000114e0  3d 62 79 25 2b 62 79 79  25 0d 09 2b 25 ef 32 34  |=by%+byy%..+%.24|
000114f0  2c 62 78 25 3b 62 79 25  3b 62 78 78 25 3b 62 79  |,bx%;by%;bxx%;by|
00011500  79 25 3b 31 38 2c 30 2c  31 33 30 2c 31 36 0d 09  |y%;18,0,130,16..|
00011510  2c 2d ef 32 34 2c 62 78  25 2b 34 3b 62 79 25 2b  |,-.24,bx%+4;by%+|
00011520  34 3b 62 78 78 25 2d 34  3b 62 79 79 25 2d 34 3b  |4;bxx%-4;byy%-4;|
00011530  31 38 2c 30 2c 31 32 39  2c 31 36 0d 09 2d 30 ef  |18,0,129,16..-0.|
00011540  32 34 2c 62 78 25 2b 38  3b 62 79 25 2b 38 3b 62  |24,bx%+8;by%+8;b|
00011550  78 78 25 2d 38 3b 62 79  79 25 2d 38 3b 31 38 2c  |xx%-8;byy%-8;18,|
00011560  30 2c 31 32 38 2c 31 36  2c 32 36 0d 09 2e 2f e6  |0,128,16,26.../.|
00011570  30 2c 33 3a ec 20 62 78  25 2b 34 2c 62 79 25 3a  |0,3:. bx%+4,by%:|
00011580  f0 35 2c 62 78 78 25 2c  62 79 25 3a f0 35 2c 62  |.5,bxx%,by%:.5,b|
00011590  78 78 25 2c 62 79 79 25  2d 34 0d 09 2f 32 ec 20  |xx%,byy%-4../2. |
000115a0  62 78 25 2b 34 2c 62 79  25 2b 32 3a f0 35 2c 62  |bx%+4,by%+2:.5,b|
000115b0  78 78 25 2d 32 2c 62 79  25 2b 32 3a f0 35 2c 62  |xx%-2,by%+2:.5,b|
000115c0  78 78 25 2d 32 2c 62 79  79 25 2d 34 0d 09 30 37  |xx%-2,byy%-4..07|
000115d0  e6 30 2c 32 3a ec 20 62  78 25 2b 38 2c 62 79 25  |.0,2:. bx%+8,by%|
000115e0  2b 34 3a f0 35 2c 62 78  78 25 2d 34 2c 62 79 25  |+4:.5,bxx%-4,by%|
000115f0  2b 34 3a f0 35 2c 62 78  78 25 2d 34 2c 62 79 79  |+4:.5,bxx%-4,byy|
00011600  25 2d 38 0d 09 31 32 ec  20 62 78 25 2b 38 2c 62  |%-8..12. bx%+8,b|
00011610  79 25 2b 36 3a f0 35 2c  62 78 78 25 2d 36 2c 62  |y%+6:.5,bxx%-6,b|
*
00011630  79 79 25 2d 38 0d 09 32  05 e1 0d 09 33 04 0d 09  |yy%-8..2....3...|
00011640  34 28 dd f2 62 6f 78 5f  65 63 66 28 63 6f 6c 31  |4(..box_ecf(col1|
00011650  25 2c 63 6f 6c 32 25 2c  78 25 2c 79 25 2c 78 78  |%,col2%,x%,y%,xx|
00011660  25 2c 79 79 25 29 0d 09  35 12 f4 20 73 63 72 65  |%,yy%)..5.. scre|
00011670  65 6e 20 73 74 61 72 74  0d 09 36 1d 20 e7 56 25  |en start..6. .V%|
00011680  3d 30 20 6d 75 6c 25 3d  38 30 3a 8b 20 6d 75 6c  |=0 mul%=80:. mul|
00011690  25 3d 31 36 30 0d 09 37  30 20 42 25 3d 73 63 72  |%=160..70 B%=scr|
000116a0  65 65 6e 5f 6f 6e 65 25  2b 28 28 39 36 30 2d 28  |een_one%+((960-(|
000116b0  79 25 2b 79 79 25 29 29  2a 6d 75 6c 25 2b 28 78  |y%+yy%))*mul%+(x|
000116c0  25 2f 34 29 29 0d 09 38  0c f4 20 61 63 72 6f 73  |%/4))..8.. acros|
000116d0  73 0d 09 39 11 20 45 25  3d 28 78 78 25 20 81 20  |s..9. E%=(xx% . |
000116e0  34 29 0d 09 3a 12 20 45  25 3d 28 45 25 20 81 20  |4)..:. E%=(E% . |
000116f0  34 29 2a 34 0d 09 3b 0a  f4 20 64 6f 77 6e 0d 09  |4)*4..;.. down..|
00011700  3c 0d 20 41 25 3d 79 79  25 2f 38 0d 09 3d 24 f2  |<. A%=yy%/8..=$.|
00011710  63 6c 65 61 72 5f 65 63  66 28 63 6f 6c 31 25 2c  |clear_ecf(col1%,|
00011720  63 6f 6c 32 25 2c 42 25  2c 45 25 2c 41 25 29 0d  |col2%,B%,E%,A%).|
00011730  09 3e 05 e1 0d 09 3f 04  0d 09 40 1f dd f2 63 6c  |.>....?...@...cl|
00011740  65 61 72 5f 65 63 66 28  43 25 2c 44 25 2c 42 25  |ear_ecf(C%,D%,B%|
00011750  2c 45 25 2c 41 25 29 0d  09 41 15 20 f4 20 43 25  |,E%,A%)..A. . C%|
00011760  2c 44 25 20 20 63 6f 6c  6f 75 72 73 0d 09 42 26  |,D%  colours..B&|
00011770  20 f4 20 41 25 2a 28 56  25 2b 31 29 20 31 2f 32  | . A%*(V%+1) 1/2|
00011780  20 53 63 72 65 65 6e 20  6c 69 6e 65 73 20 64 6f  | Screen lines do|
00011790  77 6e 0d 09 43 25 20 f4  20 42 25 3d 73 63 72 65  |wn..C% . B%=scre|
000117a0  65 6e 5f 6f 6e 65 25 20  6f 72 20 73 63 72 65 65  |en_one% or scree|
000117b0  6e 20 73 74 61 72 74 0d  09 44 16 20 f4 20 45 25  |n start..D. . E%|
000117c0  3d 6c 69 6e 65 73 20 61  63 72 6f 73 73 0d 09 45  |=lines across..E|
000117d0  11 e7 56 25 3d 31 20 41  25 3d 41 25 2a 32 0d 09  |..V%=1 A%=A%*2..|
000117e0  46 11 d6 66 69 6c 6c 5f  73 63 72 65 65 6e 25 0d  |F..fill_screen%.|
000117f0  09 47 05 e1 0d 09 48 04  0d 09 49 0b dd f2 63 6c  |.G....H...I...cl|
00011800  65 61 72 0d 09 4a 23 ef  32 34 2c 30 3b 30 3b 31  |ear..J#.24,0;0;1|
00011810  32 37 38 3b 39 35 36 3b  31 38 2c 30 2c 31 32 39  |278;956;18,0,129|
00011820  2c 31 36 2c 32 36 0d 09  4b 05 e1 0d 09 4c 04 0d  |,16,26..K....L..|
00011830  09 4d 0f dd f2 74 6f 70  5f 62 6c 61 6e 6b 0d 09  |.M...top_blank..|
00011840  4e 26 ef 32 34 2c 30 3b  39 36 30 3b 31 32 37 38  |N&.24,0;960;1278|
00011850  3b 31 30 32 30 3b 31 38  2c 30 2c 31 33 31 2c 31  |;1020;18,0,131,1|
00011860  36 2c 32 36 0d 09 4f 05  e1 0d 09 50 04 0d 09 51  |6,26..O....P...Q|
00011870  2c dd f2 70 73 6d 28 78  25 2c 79 25 2c 78 6d 25  |,..psm(x%,y%,xm%|
00011880  2c 79 6d 25 2c 78 64 25  2c 79 64 25 2c 6e 61 6d  |,ym%,xd%,yd%,nam|
00011890  65 24 2c 61 72 65 61 25  29 0d 09 52 13 21 28 73  |e$,area%)..R.!(s|
000118a0  63 61 6c 65 25 2b 30 29  3d 78 6d 25 0d 09 53 1a  |cale%+0)=xm%..S.|
000118b0  21 28 73 63 61 6c 65 25  2b 34 29 3d 79 6d 25 2a  |!(scale%+4)=ym%*|
000118c0  28 56 25 2b 31 29 0d 09  54 13 21 28 73 63 61 6c  |(V%+1)..T.!(scal|
000118d0  65 25 2b 38 29 3d 78 64  25 0d 09 55 14 21 28 73  |e%+8)=xd%..U.!(s|
000118e0  63 61 6c 65 25 2b 31 32  29 3d 79 64 25 0d 09 56  |cale%+12)=yd%..V|
000118f0  3d c8 99 22 4f 53 5f 53  70 72 69 74 65 4f 70 22  |=.."OS_SpriteOp"|
00011900  2c 26 31 33 34 2c 73 70  72 69 74 65 5f 61 72 65  |,&134,sprite_are|
00011910  61 31 25 2c 6e 61 6d 65  24 2c 78 25 2c 79 25 2c  |a1%,name$,x%,y%,|
00011920  38 2c 73 63 61 6c 65 25  2c 30 0d 09 57 05 e1 0d  |8,scale%,0..W...|
00011930  09 58 04 0d 09 59 5d dd  f2 6d 6f 76 65 5f 62 6c  |.X...Y]..move_bl|
00011940  6f 63 6b 28 66 72 6f 6d  5f 73 63 72 65 65 6e 25  |ock(from_screen%|
00011950  2c 66 72 6f 6d 5f 78 25  2c 66 72 6f 6d 5f 79 25  |,from_x%,from_y%|
00011960  2c 74 6f 5f 73 63 72 65  65 6e 25 2c 74 6f 5f 78  |,to_screen%,to_x|
00011970  25 2c 74 6f 5f 79 25 2c  62 79 74 65 73 5f 61 63  |%,to_y%,bytes_ac|
00011980  72 6f 73 73 25 2c 73 63  61 6e 73 5f 75 70 25 29  |ross%,scans_up%)|
00011990  0d 09 5a 1b e7 62 79 74  65 73 5f 61 63 72 6f 73  |..Z..bytes_acros|
000119a0  73 25 20 83 20 34 3c 3e  30 20 fa 0d 09 5b 2a 41  |s% . 4<>0 ...[*A|
000119b0  25 3d 66 72 6f 6d 5f 73  63 72 65 65 6e 25 2b a4  |%=from_screen%+.|
000119c0  63 61 6c 63 28 66 72 6f  6d 5f 78 25 2c 66 72 6f  |calc(from_x%,fro|
000119d0  6d 5f 79 25 29 0d 09 5c  24 42 25 3d 74 6f 5f 73  |m_y%)..\$B%=to_s|
000119e0  63 72 65 65 6e 25 2b a4  63 61 6c 63 28 74 6f 5f  |creen%+.calc(to_|
000119f0  78 25 2c 74 6f 5f 79 25  29 0d 09 5d 14 43 25 3d  |x%,to_y%)..].C%=|
00011a00  62 79 74 65 73 5f 61 63  72 6f 73 73 25 0d 09 5e  |bytes_across%..^|
00011a10  1b 44 25 3d 28 73 63 61  6e 73 5f 75 70 25 2a 28  |.D%=(scans_up%*(|
00011a20  56 25 2b 31 29 29 2d 31  0d 09 5f 13 20 20 d6 20  |V%+1))-1.._.  . |
00011a30  6d 6f 76 65 5f 62 6c 6f  63 6b 25 0d 09 60 05 e1  |move_block%..`..|
00011a40  0d 09 61 04 0d 09 62 11  dd a4 63 61 6c 63 28 78  |..a...b...calc(x|
00011a50  25 2c 79 25 29 0d 09 63  12 78 25 3d 78 25 2b 28  |%,y%)..c.x%=x%+(|
00011a60  78 25 20 83 20 34 29 0d  09 64 2b 74 6f 70 5f 6c  |x% . 4)..d+top_l|
00011a70  69 6e 65 73 25 3d 30 3a  e7 20 76 67 61 25 3d 30  |ines%=0:. vga%=0|
00011a80  20 74 6f 70 5f 6c 69 6e  65 73 25 3d 33 32 30 2a  | top_lines%=320*|
00011a90  31 36 0d 09 65 2d 3d 74  6f 70 5f 6c 69 6e 65 73  |16..e-=top_lines|
00011aa0  25 2b 28 78 25 2f 34 29  2b 28 28 39 35 36 2d 79  |%+(x%/4)+((956-y|
00011ab0  25 29 2a 38 30 29 2a 28  76 67 61 25 2b 31 29 0d  |%)*80)*(vga%+1).|
00011ac0  09 66 3f dd f2 74 65 78  74 5f 62 6f 78 28 73 74  |.f?..text_box(st|
00011ad0  5f 78 25 2c 73 74 5f 79  25 2c 6c 65 6e 67 74 68  |_x%,st_y%,length|
00011ae0  25 2c 68 65 69 67 68 74  25 2c 6a 75 73 74 5f 74  |%,height%,just_t|
00011af0  79 70 65 25 2c 61 24 2c  62 24 2c 63 24 29 0d 09  |ype%,a$,b$,c$)..|
00011b00  67 26 f2 62 6f 78 32 28  73 74 5f 78 25 2c 73 74  |g&.box2(st_x%,st|
00011b10  5f 79 25 2c 6c 65 6e 67  74 68 25 2c 68 65 69 67  |_y%,length%,heig|
00011b20  68 74 25 29 0d 09 68 20  66 5f 77 69 64 74 68 31  |ht%)..h f_width1|
00011b30  25 3d a4 66 6f 6e 74 5f  73 74 72 69 6e 67 5f 77  |%=.font_string_w|
00011b40  28 61 24 29 0d 09 69 20  66 5f 77 69 64 74 68 32  |(a$)..i f_width2|
00011b50  25 3d a4 66 6f 6e 74 5f  73 74 72 69 6e 67 5f 77  |%=.font_string_w|
00011b60  28 62 24 29 0d 09 6a 20  66 5f 77 69 64 74 68 33  |(b$)..j f_width3|
00011b70  25 3d a4 66 6f 6e 74 5f  73 74 72 69 6e 67 5f 77  |%=.font_string_w|
00011b80  28 63 24 29 0d 09 6b 40  66 5f 68 65 69 67 68 74  |(c$)..k@f_height|
00011b90  25 3d 37 30 3a f4 20 46  4e 66 6f 6e 74 5f 73 74  |%=70:. FNfont_st|
00011ba0  72 69 6e 67 5f 77 28 61  24 29 3a 52 45 4d 20 61  |ring_w(a$):REM a|
00011bb0  6c 6c 20 68 65 69 67 68  74 73 20 74 68 65 20 73  |ll heights the s|
00011bc0  61 6d 65 3f 0d 09 6c 2c  6c 69 6e 65 73 25 3d 33  |ame?..l,lines%=3|
00011bd0  3a e7 63 24 3d 22 22 3a  6c 69 6e 65 73 25 3d 32  |:.c$="":lines%=2|
00011be0  3a e7 62 24 3d 22 22 3a  6c 69 6e 65 73 25 3d 31  |:.b$="":lines%=1|
00011bf0  0d 09 6d 2e 78 70 6f 73  31 25 3d 73 74 5f 78 25  |..m.xpos1%=st_x%|
00011c00  2b 28 28 6c 65 6e 67 74  68 25 2d 28 66 5f 77 69  |+((length%-(f_wi|
00011c10  64 74 68 31 25 2f 34 30  30 29 29 2f 32 29 0d 09  |dth1%/400))/2)..|
00011c20  6e 2e 78 70 6f 73 32 25  3d 73 74 5f 78 25 2b 28  |n.xpos2%=st_x%+(|
00011c30  28 6c 65 6e 67 74 68 25  2d 28 66 5f 77 69 64 74  |(length%-(f_widt|
00011c40  68 32 25 2f 34 30 30 29  29 2f 32 29 0d 09 6f 2e  |h2%/400))/2)..o.|
00011c50  78 70 6f 73 33 25 3d 73  74 5f 78 25 2b 28 28 6c  |xpos3%=st_x%+((l|
00011c60  65 6e 67 74 68 25 2d 28  66 5f 77 69 64 74 68 33  |ength%-(f_width3|
00011c70  25 2f 34 30 30 29 29 2f  32 29 0d 09 70 34 f4 20  |%/400))/2)..p4. |
00011c80  62 6f 78 5f 74 79 70 65  25 3d 31 20 63 65 6e 74  |box_type%=1 cent|
00011c90  72 65 64 20 62 6f 78 5f  74 79 70 65 25 3d 32 20  |red box_type%=2 |
00011ca0  6c 65 66 74 20 6a 75 73  74 69 66 69 65 64 0d 09  |left justified..|
00011cb0  71 13 e7 6a 75 73 74 5f  74 79 70 65 25 3d 32 20  |q..just_type%=2 |
00011cc0  8c 0d 09 72 32 20 20 e7  78 70 6f 73 31 25 3c 78  |...r2  .xpos1%<x|
00011cd0  70 6f 73 32 25 20 78 70  6f 73 32 25 3d 78 70 6f  |pos2% xpos2%=xpo|
00011ce0  73 31 25 20 8b 20 78 70  6f 73 31 25 3d 78 70 6f  |s1% . xpos1%=xpo|
00011cf0  73 32 25 0d 09 73 32 20  20 e7 78 70 6f 73 32 25  |s2%..s2  .xpos2%|
00011d00  3c 78 70 6f 73 33 25 20  78 70 6f 73 33 25 3d 78  |<xpos3% xpos3%=x|
00011d10  70 6f 73 32 25 20 8b 20  78 70 6f 73 32 25 3d 78  |pos2% . xpos2%=x|
00011d20  70 6f 73 33 25 0d 09 74  32 20 20 e7 78 70 6f 73  |pos3%..t2  .xpos|
00011d30  33 25 3c 78 70 6f 73 31  25 20 78 70 6f 73 31 25  |3%<xpos1% xpos1%|
00011d40  3d 78 70 6f 73 33 25 20  8b 20 78 70 6f 73 33 25  |=xpos3% . xpos3%|
00011d50  3d 78 70 6f 73 31 25 0d  09 75 05 cd 0d 09 76 54  |=xpos1%..u....vT|
00011d60  79 70 6f 73 31 25 3d 28  73 74 5f 79 25 2d 28 66  |ypos1%=(st_y%-(f|
00011d70  5f 68 65 69 67 68 74 25  2f 36 29 2a 34 29 2b 28  |_height%/6)*4)+(|
00011d80  68 65 69 67 68 74 25 2d  28 6c 69 6e 65 73 25 2a  |height%-(lines%*|
00011d90  66 5f 68 65 69 67 68 74  25 29 29 2f 32 2b 28 6c  |f_height%))/2+(l|
00011da0  69 6e 65 73 25 2a 66 5f  68 65 69 67 68 74 25 29  |ines%*f_height%)|
00011db0  0d 09 77 1b 79 70 6f 73  32 25 3d 79 70 6f 73 31  |..w.ypos2%=ypos1|
00011dc0  25 2d 66 5f 68 65 69 67  68 74 25 0d 09 78 1b 79  |%-f_height%..x.y|
00011dd0  70 6f 73 33 25 3d 79 70  6f 73 32 25 2d 66 5f 68  |pos3%=ypos2%-f_h|
00011de0  65 69 67 68 74 25 0d 09  79 1a f2 70 72 69 28 78  |eight%..y..pri(x|
00011df0  70 6f 73 31 25 2c 79 70  6f 73 31 25 2c 61 24 29  |pos1%,ypos1%,a$)|
00011e00  0d 09 7a 24 e7 6c 69 6e  65 73 25 3e 31 20 f2 70  |..z$.lines%>1 .p|
00011e10  72 69 28 78 70 6f 73 32  25 2c 79 70 6f 73 32 25  |ri(xpos2%,ypos2%|
00011e20  2c 62 24 29 0d 09 7b 24  e7 6c 69 6e 65 73 25 3e  |,b$)..{$.lines%>|
00011e30  32 20 f2 70 72 69 28 78  70 6f 73 33 25 2c 79 70  |2 .pri(xpos3%,yp|
00011e40  6f 73 33 25 2c 63 24 29  0d 09 7c 05 e1 0d 09 7d  |os3%,c$)..|....}|
00011e50  04 0d 09 7e 1c dd a4 66  6f 6e 74 5f 73 74 72 69  |...~...font_stri|
00011e60  6e 67 5f 77 28 73 74 72  69 6e 67 24 29 0d 09 7f  |ng_w(string$)...|
00011e70  16 20 20 24 73 74 72 69  6e 67 25 3d 73 74 72 69  |.  $string%=stri|
00011e80  6e 67 24 0d 09 80 3c 20  20 c8 99 22 46 6f 6e 74  |ng$...<  .."Font|
00011e90  5f 46 69 6e 64 46 6f 6e  74 22 2c 2c 22 54 41 42  |_FindFont",,"TAB|
00011ea0  4c 4f 49 44 2e 4d 65 64  69 75 6d 22 2c 33 32 30  |LOID.Medium",320|
00011eb0  2c 33 36 30 2c 30 2c 30  20 b8 20 68 61 6e 25 0d  |,360,0,0 . han%.|
00011ec0  09 81 49 20 20 c8 99 22  46 6f 6e 74 5f 53 74 72  |..I  .."Font_Str|
00011ed0  69 6e 67 57 69 64 74 68  22 2c 30 2c 73 74 72 69  |ingWidth",0,stri|
00011ee0  6e 67 25 2c 36 30 30 30  30 30 2c 34 38 30 30 30  |ng%,600000,48000|
00011ef0  30 2c 2d 31 2c 38 30 20  b8 20 72 30 2c 72 31 2c  |0,-1,80 . r0,r1,|
00011f00  66 5f 77 69 64 74 68 25  0d 09 82 1c 20 20 c8 99  |f_width%....  ..|
00011f10  22 46 6f 6e 74 5f 4c 6f  73 65 46 6f 6e 74 22 2c  |"Font_LoseFont",|
00011f20  68 61 6e 25 0d 09 83 0d  3d 66 5f 77 69 64 74 68  |han%....=f_width|
00011f30  25 0d 09 84 04 0d 09 85  1c dd a4 66 6f 6e 74 5f  |%..........font_|
00011f40  73 74 72 69 6e 67 5f 68  28 73 74 72 69 6e 67 24  |string_h(string$|
00011f50  29 0d 09 86 16 20 20 24  73 74 72 69 6e 67 25 3d  |)....  $string%=|
00011f60  73 74 72 69 6e 67 24 0d  09 87 3c 20 20 c8 99 22  |string$...<  .."|
00011f70  46 6f 6e 74 5f 46 69 6e  64 46 6f 6e 74 22 2c 2c  |Font_FindFont",,|
00011f80  22 54 41 42 4c 4f 49 44  2e 4d 65 64 69 75 6d 22  |"TABLOID.Medium"|
00011f90  2c 33 32 30 2c 33 36 30  2c 30 2c 30 20 b8 20 68  |,320,360,0,0 . h|
00011fa0  61 6e 25 0d 09 88 4c 20  20 c8 99 22 46 6f 6e 74  |an%...L  .."Font|
00011fb0  5f 53 74 72 69 6e 67 57  69 64 74 68 22 2c 30 2c  |_StringWidth",0,|
00011fc0  73 74 72 69 6e 67 25 2c  36 30 30 30 30 30 2c 34  |string%,600000,4|
00011fd0  38 30 30 30 30 2c 2d 31  2c 38 30 20 b8 20 72 30  |80000,-1,80 . r0|
00011fe0  2c 72 31 2c 72 32 2c 66  5f 68 65 69 67 68 74 0d  |,r1,r2,f_height.|
00011ff0  09 89 1c 20 20 c8 99 22  46 6f 6e 74 5f 4c 6f 73  |...  .."Font_Los|
00012000  65 46 6f 6e 74 22 2c 68  61 6e 25 0d 09 8a 0e 3d  |eFont",han%....=|
00012010  66 5f 68 65 69 67 68 74  25 0d 09 8b 04 0d 09 8c  |f_height%.......|
00012020  1d dd f2 62 6f 78 32 28  62 78 25 2c 62 79 25 2c  |...box2(bx%,by%,|
00012030  62 78 78 25 2c 62 79 79  25 29 0d 09 8d 1f 62 78  |bxx%,byy%)....bx|
00012040  78 25 3d 62 78 25 2b 62  78 78 25 3a 62 79 79 25  |x%=bx%+bxx%:byy%|
00012050  3d 62 79 25 2b 62 79 79  25 0d 09 8e 2d ef 32 34  |=by%+byy%...-.24|
00012060  2c 62 78 25 2d 34 3b 62  79 25 2d 34 3b 62 78 78  |,bx%-4;by%-4;bxx|
00012070  25 2b 34 3b 62 79 79 25  2b 34 3b 31 38 2c 30 2c  |%+4;byy%+4;18,0,|
00012080  31 33 31 2c 31 36 0d 09  8f 28 ef 32 34 2c 62 78  |131,16...(.24,bx|
00012090  25 3b 62 79 25 3b 62 78  78 25 3b 62 79 79 25 3b  |%;by%;bxx%;byy%;|
000120a0  31 38 2c 30 2c 31 32 38  2c 31 36 2c 32 36 0d 09  |18,0,128,16,26..|
000120b0  90 05 e1 0d 09 91 04 0d  09 92 04 0d ff           |.............|
000120bd