Home » Archimedes archive » Micro User » MU 1990-11.adf » ArcLight » !Projector/!RunImage
!Projector/!RunImage
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 » Micro User » MU 1990-11.adf » ArcLight |
Filename: | !Projector/!RunImage |
Read OK: | ✔ |
File size: | 2AB3 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM>$.!Projector.!RunImage 20REM (C) Tony Cheal/Ace Computing Jan 1990 Version 1.08 30REM This program may be freely distributed, BUT its contents are Copyright 40REM Should be with version 1.00 Euclid or EuclidX or above 50REM Plays back a film in Ace Film format using either the full 60REM blown Euclid Module or the Public Domain EuclidX 70 80REMONERRORERROREXT ERR,REPORT$+" "+STR$ERL 90SYS"OS_SWINumberFromString",,"OS_SpriteOp" TO SO% 100SYS"OS_SWINumberFromString",,"Euclid_Expand" TO EX% 110DIMMV%20,TK%4:P%=MV%:SCRAP%=FALSE:BBC%=FALSE 120[OPT2:LDR 3,[0],#4:STR 3,[1],#4:SUBS 2,2,#4:BNE MV%:MOVS PC,14:] 130DIMTIT%1000:TT%=TIT%:DIMB%1000:KS%=52:WT%=950 140SYS"Wimp_Initialise",200,&4B534154,"Ace Film Player" TO V% 150B%!0=-1:B%!4=0:B%!8=0:B%!12=68:B%!16=90:B%!20=%10OR3<<12 160$(B%+24)="!projector":SYS"Wimp_CreateIcon",,B%TOZ% 170SYS"Wimp_OpenTemplate",,"<Obey$Dir>.Templates" 180DIMQ%1000,R%4:!R%=0:C%=Q% 190G%=FNTemp("ProgInfo"):H%=FNTemp("FilmInfo"):FS%=FNTemp("FullMode") 200SYS"Wimp_CloseTemplate" 210DIMSPR%128:!SPR%=128:SPR%!4=0:SPR%!8=16:SPR%!12=16 220SYSSO%,&10F,SPR%,"C",,32,8,8:MO%=FALSE 230MI%=FNMVar(MODE,9)ORFNMVar(MODE,4)<<8ORFNMVar(MODE,5)<<16 240 250DIMMENU%1000:V%=MENU% 260VDU23,&90,&10,&38,&7C,&FE,&7C,&10,&38,&00:ACE$=CHR$&90 270PROCMenuT("Projector") 280INF%=V%:PROCMenuE("Info",0):INF%!4=G% 290RO%=V%:PROCMenuE("Roll",0) 300PROCMenuE("Quit",&80) 310 320DIMFMENU%1000:V%=FMENU% 330PROCMenuT(" Projector ") 340MISC%=V%:PROCMenuE("Misc",0) 350FR%=V%:PROCMenuE("Freeze",0) 360REV%=V%:PROCMenuE("Reverse",0) 370YOYO%=V%:PROCMenuE("Yo-yo",0) 380PROCMenuE("First frame",0) 390PROCMenuE("Last frame",0) 400INF%=V%:PROCMenuE("Full screen",0):INF%!4=FS% 410MD%=V%:PROCMenuE("Set Mode",&80) 420 430MISC%!4=V%:PROCMenuT(" Misc ") 440INF%=V%:PROCMenuE("Info",0):INF%!4=G% 450INF%=V%:PROCMenuE("File",0):INF%!4=H% 460PROCMenuE("New View",&80) 470 480EN%=HIMEM:FC%=2:WM%=MODE:LO%=TRUE:END=END+&1000:MT%=HIMEM:REPEATRC%=1 490SYS"OS_GetEnv" TO E$:I%=INSTR(E$,"-quit") 500I%=INSTR(E$,"""",I%+1):I%=INSTR(E$,"""",I%+1):E$=MID$(E$,I%+1) 510WHILELEFT$(E$,1)=" ":E$=MID$(E$,2):ENDWHILE 520WHILEE$<>STRING$(LENE$," ") 530I%=INSTR(E$+" "," "):F$=LEFT$(E$,I%-1) 540E$=MID$(E$,I%+1):WHILELEFT$(E$,1)=" ":E$=MID$(E$,2):ENDWHILE 550IFLO%ELSEK%=!R%:WHILEK%:!B%=K%!20:PROCWhich(!B%):PROCClose:K%=!R%:ENDWHILE 560IFLEFT$(F$,1)="-"THEN 570 CASEMID$(F$,2,1)OF 580 WHEN"r","R":PROCRoll(RC%,FC%):END 590 WHEN"f","F":FC%=VALMID$(F$,3) 600 WHEN"l","L":K%=!R% 610 IFK%:PROCWhich(K%!20):PROCFull(RC%,FC%):IFI%=27:SYS"Wimp_SetMode",WM%:END 620 IFLO%LO%=FALSE:SYS"Wimp_SlotSize",EN%-&8000,-1 630 WHEN"c","C":RC%=VALMID$(F$,3) 640 ENDCASE 650ELSE 660 PROCLoadAFilm(F$) 670 IFLO%ELSEK%=!R%:IFK%:PROCWhich(K%!20):PROCFull(RC%,FC%):IFI%=27:SYS"Wimp_SetMode",WM%:END 680ENDIF 690ENDWHILE 700IFLO%ELSEK%=!R%:WHILEK%:!B%=K%!20:PROCWhich(!B%):PROCClose:K%=!R%:ENDWHILE 710UNTILLO% 720ONERROR:PROCError 730REPEAT 740SYS"Wimp_Poll",,B% TO A% 750CASEA%OF 760WHEN0:K%=!R% 770WHILEK%:M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:W%=K%!20:CT%=K%!44 780IFK%!24THEN 790IFK%!32ELSEF%=M%+M%!16:IFDPTR%=F%+!F%:K%!28=TRUE 800IFK%!28PROCNextFrame ELSEPROCLastFrame 810IFK%!32ELSEIF!DPTR%=0:K%!28=FALSE 820ENDIF:K%=!K%:ENDWHILE 830WHEN1:PROCWhich(!B%):PROCRedraw 840WHEN2:PROCWhich(!B%):PROCOpen 850WHEN3:PROCWhich(!B%):PROCClose 860WHEN6 870 CASEB%!12OF 880 WHENFS%:IFB%!8AND7THEN 890 SYS"Wimp_CloseWindow",,B%+12 900 WM%=MODE:J%=2:PROCFull(0,J%):SYS"Wimp_SetMode",WM% 910 IFB%!8AND1PROCPopup(MEN%)ELSEPROCPopup(-1) 920 ENDIF 930 WHEN-2:IFB%!16=Z%MX%=B%!0-80:MY%=230 940 PROCSelect(RO%,!R%=0):PROCPopup(MENU%) 950 OTHERWISE:PROCWhich(B%!12):PROCButton 960 ENDCASE 970WHEN9:PROCMenus 980WHEN17,18 990 CASEB%!16OF 1000 WHEN0:SYS"Wimp_CloseDown":END 1010 WHEN1:IFB%!40=&D6ATHEN 1020 !B%=60:B%!12=B%!8:B%!16=2:B%!36=-1:$(B%+44)="<Wimp$Scrap>"+CHR$0 1030 SYS"Wimp_SendMessage",17,B%,B%!4:SCRAP%=B%!8 1040 ENDIF 1050 WHEN3,5:IFB%!40=&D6ATHEN 1060 F$=FNZS(B%+44):IFSCRAP%:SCRAP%=SCRAP%=B%!12 1070 B%!12=B%!8:B%!16=4:SYS"Wimp_SendMessage",17,B%,B%!4 1080 PROCLoadAFilm(F$):IFSCRAP%:SCRAP%=FALSE:SYS"OS_File",6,F$ 1090 ENDIF 1100 WHEN9,&400C1:K%=!R%:WHILEK%:!(K%!44)=!(K%!4+28):K%=!K%:ENDWHILE 1110 MI%=FNMVar(MODE,9)ORFNMVar(MODE,4)<<8ORFNMVar(MODE,5)<<16 1120 ENDCASE 1130ENDCASE 1140UNTIL0 1150 1160DEFPROCClose 1170L%=K%!36:N%=L%:WHILEN%!40:L%=N%:N%=N%!40:ENDWHILE 1180IFK%!40THEN 1190FORI%=12TO32STEP4:SWAPK%!I%,N%!I%:NEXT 1200IFK%!16>0K%!16-=N%!8-K%!8 1210IFN%!16>0N%!16-=K%!8-N%!8 1220SYSSO%,&13C,S%,"X"TO R0,R1,R2,R3:SYSSO%,&122,N%!8,"X",,,3 1230SYSSO%,&13C,N%!8,"X":SYSSO%,&122,S%,"X",,,3 1240SYSSO%,&13C,S%,"X":SYSSO%,&122,N%!8,"X",,,3:SYSSO%,R0,R1,R2,R3 1250PROCWhich(!B%) 1260ENDIF 1270L%!40=0:SYS"Wimp_CloseWindow",,B%:SYS"Wimp_DeleteWindow",,B% 1280IFK%!36<>K%:M%=S% 1290!I%=!K%:E%=K%+KS%:L%=E%-M% 1300IFE%<MT%THEN 1310J%=R%:I%=!J%:WHILEI% 1320PROCAdjust(!J%) 1330PROCAdjust(I%!4):PROCAdjust(I%!8):PROCAdjust(I%!12):PROCAdjust(I%!16) 1340PROCAdjust(I%!36):PROCAdjust(I%!40):PROCAdjust(I%!44) 1350J%=I%:I%=!J% 1360ENDWHILE 1370PROCMove(M%+L%,M%,MT%-(M%+L%)) 1380ENDIF 1390MT%-=L%:IFLO%SYS"Wimp_SlotSize",MT%-&8000,-1 1400ENDPROC 1410 1420DEFPROCAdjust(RETURN P%):IFP%>M%:P%-=L% 1430ENDPROC 1440 1450DEFPROCOpen:SYS"Wimp_OpenWindow",,B%:ENDPROC 1460 1470DEFPROCRedraw 1480SYS"Wimp_RedrawWindow",,B% TO F% 1490WHILEF%:X%=B%!4-B%!20:Y%=B%!16-B%!24:PROCRedrawSprite 1500SYS"Wimp_GetRectangle",,B% TO F%:ENDWHILE 1510ENDPROC 1520 1530DEFPROCButton 1540CASEB%!8OF 1550WHEN1:PROCLastFrame 1560WHEN2:PROCTick(FR%,K%!24):PROCTick(REV%,K%!28):PROCTick(YOYO%,K%!32) 1570PROCSelect(MD%,MODE=M%!28):MX%=B%!0-80:MY%=B%!4 1580PROCSetI(H%,0,STR$M%!28):PROCSetI(H%,1,STR$!M%):PROCSetI(H%,2,"No") 1590IF(M%!36AND3)=0PROCSetI(H%,3,"No")ELSEPROCSetI(H%,3,"Yes") 1600PROCSetI(H%,4,STR$M%!20):PROCSetI(H%,5,STR$M%!24) 1610PROCPopup(FMENU%):MW%=W% 1620WHEN4:PROCNextFrame 1630ENDCASE 1640ENDPROC 1650 1660DEFPROCMenus 1670CASEMEN%OF 1680WHENMENU%:CASE!B%OF 1690 WHEN1:PROCRoll(1,2) 1700 WHEN2:SYS"Wimp_CloseDown":END 1710 ENDCASE 1720WHENFMENU%:PROCWhich(MW%):CASE!B%OF 1730 WHEN0:CASEB%!4OF 1740 WHEN2:Q%=K%:WHILEQ%!40:Q%=Q%!40:ENDWHILE:PROCSetFilm 1750 K%!36=Q%!36:Q%!40=K% 1760 ENDCASE 1770 WHEN1:K%!24=NOTK%!24 1780 WHEN2:K%!28=NOTK%!28 1790 WHEN3:K%!32=NOTK%!32 1800 WHEN4:DPTR%=M%+M%!16:SCR%=0:PROCNextFrame:K%!28=TRUE 1810 WHEN5:DPTR%=M%+M%!16:SCR%=0:PROCNewFrame:PROCLastFrame:K%!28=FALSE 1820 WHEN6:WM%=MODE:J%=2:PROCFull(0,J%):SYS"Wimp_SetMode",WM% 1830 WHEN7:SYS"Wimp_SetMode",M%!28 1840 ENDCASE 1850 PROCTick(FR%,K%!24):PROCTick(REV%,K%!28):PROCTick(YOYO%,K%!32) 1860 PROCSelect(MD%,MODE=M%!28) 1870ENDCASE 1880SYS"Wimp_GetPointerInfo",,B%:IFB%!8AND1:PROCPopup(MEN%)ELSEPROCPopup(-1) 1890ENDPROC 1900 1910DEFPROCWindow(T$,B%!28,!B%,B%!4,B%!8,B%!12,B%!40,B%!44,B%!48,B%!52) 1920T$=ACE$+" "+T$+" "+ACE$:T%=TT%:TT%+=LENT$+1 1930IFTT%>TIT%+1000:TT%=TIT%:T%=TT% 1940B%!72=T%:B%!76=-1:B%!80=LENT$:$T%=T$ 1950B%!16=(!B%-B%!8)DIV2:B%!20=(B%!12-B%!4)DIV2:B%!24=-1 1960B%!32=&01070207:B%!36=&000C0103 1970B%!56=%100001001:B%!60=2<<12:B%!64=0:B%!68=&10001:B%!84=0 1980SYS"Wimp_CreateWindow",,B% TO W% 1990!B%=W%:SYS"Wimp_GetWindowState",,B%:SYS"Wimp_OpenWindow",,B% 2000ENDPROC 2010 2020DEFPROCNextFrame:PROCNewFrame 2030B%!4=-3E4:B%!8=-3E4:B%!12=3E4:B%!16=3E4:!B%=W% 2040SYS"Wimp_UpdateWindow",,B% TO F% 2050WHILEF%:X%=B%!4-B%!20:Y%=B%!16-B%!24:PROCRedrawSprite 2060SYS"Wimp_GetRectangle",,B% TO F%:ENDWHILE 2070ENDPROC 2080 2090DEFPROCLastFrame 2100IFDPTR%<>M%+M%!16THEN 2110DPTR%-=DPTR%!-4 2120IF(M%!36AND3)=0THEN 2130 IFDPTR%=M%+M%!16:WHILE!DPTR%:DPTR%+=!DPTR%:ENDWHILE 2140 DPTR%-=DPTR%!-4:PROCNextFrame 2150ELSE 2160 IFDPTR%=M%+M%!16THEN 2170 DPTR%+=!DPTR%:SYS"Hourglass_On":WHILE!(DPTR%+!DPTR%) 2180 PROCNewFrame:ENDWHILE:SYS"Hourglass_Off":PROCNextFrame 2190 ELSE 2200 PROCNextFrame:K%!12=DPTR%-DPTR%!-4:IFK%!12=M%+M%!16:K%!16=0 2210 ENDIF 2220ENDIF 2230ENDIF 2240ENDPROC 2250 2260DEFPROCNewFrame 2270IF!DPTR%=0:DPTR%=M%+M%!16:SCR%=0 2280SYSSO%,&13C,S%,"X"TO R0,R1,R2,R3 2290SYSEX%,M%!32,DPTR%,SCR%,M%!40 TO ,DPTR%,SCR% 2300IF(M%!36AND3)=0SCR%=0 2310SYSSO%,R0,R1,R2,R3 2320K%!12=DPTR%:K%!16=SCR% 2330ENDPROC 2340 2350DEFPROCMakeSprite 2360XR%=FNMVar(M%!28,4):YR%=FNMVar(M%!28,5):LB%=FNMVar(M%!28,10) 2370SS%=(((M%!20>>XR%)*(M%!24>>YR%)>>3-LB%)+1000)ANDNOT3 2380S%=FNAlloc(SS%):!S%=SS%:S%!4=0:S%!8=16:S%!12=16:SYSSO%,&109,S% 2390SYSSO%,&10F,S%,"X",0,M%!20>>XR%,M%!24>>YR%,M%!28 2400ENDPROC 2410 2420DEFPROCRedrawSprite 2430IF!CT%<>MODE:PROCTable 2440IFMI%=K%!48THEN 2450 SYSSO%,&122,S%,"X",X%,Y% 2460ELSE 2470 SYSSO%,&134,S%,"X",X%,Y%,0,0,CT%+4 2480ENDIF 2490ENDPROC 2500 2510DEFPROCLoadFilm(F$) 2520SYS"OS_File",5,F$ TO O%,,T%,,L%:IFO%<>1ERROR1,"Can't find film '"+F$+"'" 2530M%=FNAlloc(L%):SYS"OS_File",&FF,F$,M%:CT%=FNAlloc(260) 2540ENDPROC 2550 2560DEFPROCLoadAFilm(E$) 2570PROCLoadFilm(E$):PROCSetFilm 2580ENDPROC 2590 2600DEFPROCSetFilm:PROCMakeSprite 2610IFWT%-M%!24<180:WT%=950 2620PROCWindow($(M%+4),%1111,300,WT%-M%!24,M%!20+300,WT%,0,0,M%!20,M%!24) 2630WT%-=48:DPTR%=M%+M%!16:SCR%=0:CM%=M%!28:K%=FNAlloc(KS%) 2640PROCNextFrame:!K%=!R%:!R%=K%:K%!4=M%:K%!8=S%:K%!20=W% 2650K%!24=TRUE:K%!28=TRUE:K%!32=TRUE:K%!36=K%:K%!40=0:K%!44=CT%:!CT%=M%!28 2660K%!48=FNMVar(M%!28,9)ORFNMVar(M%!28,4)<<8ORFNMVar(M%!28,5)<<16 2670ENDPROC 2680 2690DEFFNTemp(T$):SYS"Wimp_LoadTemplate",,B%,C%,Q%+1000,-1,T$TO,,C% 2700SYS"Wimp_CreateWindow",,B%TOT%:=T% 2710 2720DEFPROCMenuT(T$) 2730$V%=LEFT$(T$,11):V%!16=16*(LEN$V%+1) 2740V%!20=44:V%!12=&00070207:V%!24=0:V%+=28 2750ENDPROC 2760 2770DEFPROCMenuE(T$,F%) 2780$(V%+12)=LEFT$(T$,11):!V%=F%:V%!4=-1:V%!8=1OR%111<<24:V%+=24 2790ENDPROC 2800 2810DEFPROCTick(T%,F%):IFF%:!T%=!T%ANDNOT1ELSE!T%=!T%OR1 2820ENDPROC 2830DEFPROCSelect(T%,F%):IFF%:T%!8=T%!8OR1<<22ELSET%!8=T%!8ANDNOT(1<<22) 2840ENDPROC 2850DEFFNZS(I%)LOCALA$:REPEATA$+=CHR$?I%:I%+=1:UNTIL?I%=0:=A$ 2860 2870DEFFNAlloc(L%):LOCALE%:IFLO%E%=MT%+L%-&8000 ELSEE%=-1 2880SYS"Wimp_SlotSize",E%,-1TOT%:T%+=&8000 2890IFT%<MT%+L%ERROR1,"Insufficient memory" 2900MT%+=L%:=MT%-L% 2910 2920DEFPROCWhich(T%):W%=T%:J%=R%:K%=!J% 2930WHILEK%:IFW%=K%!20:M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:CT%=K%!44:I%=J% 2940J%=K%:K%=!J%:ENDWHILE:K%=!I% 2950ENDPROC 2960 2970DEFPROCMove(A%,B%,C%):CALLMV%:ENDPROC 2980 2990DEFPROCPopup(N%):SYS"Wimp_CreateMenu",,N%,MX%,MY%:MEN%=N%:ENDPROC 3000 3010DEFPROCSetI(W%,I%,S$):LOCALF%:!B%=W%:SYS"Wimp_GetWindowInfo",,B% 3020IFI%>=0:I%=B%+112+I%*32:F%=I%-4ELSEI%=B%+76:F%=B%+60 3030IF!F%AND1<<8:$!I%=LEFT$(S$,I%!8-1)ELSE$I%=LEFT$(S$,11) 3040ENDPROC 3050 3060DEFPROCRoll(RC%,U%):IFRC%<=0:RC%=1 3070WM%=MODE:REPEAT:I%=0:FK%=0:WHILEFK%<>!R%ANDI%<>27 3080K%=!R%:WHILE!K%<>FK%:K%=!K%:ENDWHILE:FK%=K% 3090M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:W%=K%!20:CT%=K%!44 3100PROCFull(RC%,U%):K%=!K%:ENDWHILE 3110UNTILI%=27:SYS"Wimp_SetMode",WM% 3120ENDPROC 3130 3140DEFPROCFull(RL%,RETURN W%):LOCALJ%:LOCALERROR 3150FW%=M%!20:FH%=M%!24:FM%=M%!28:FW2%=FW%DIV2ANDNOT3:FH2%=FH%DIV2ANDNOT3 3160T%=TRUE:LOCALERROR:ONERRORLOCAL:RESTOREERROR:T%=FALSE 3170IFT%MODEFM%+128:RESTOREERROR ELSEMODEFM% 3180ONERRORLOCAL:RESTOREERROR:SYS"Wimp_SetMode",WM%:ERROR ERR,REPORT$ 3190IFMODE<>FM%ERROR1,"Mode for film not available" 3200IFFNMVar(MODE,9)=2THEN 3210E%=B%+100:SYS"Wimp_ReadPalette",,E% 3220FORI%=0TO15:VDU19,I%,16,E%?1,E%?2,E%?3:E%+=4:NEXT 3230ENDIF 3240OFF:E%=1:PROCF:CLS:PROCF:CLS:F%=RL%>0:IFMO%MOUSEON2 3250VDU24,640-FW2%;512-FH2%;640-FW2%+FW%-1;512-FH2%+FH%-1; 3260D%=M%+M%!16:C%=0:c%=-1:CM%=FM%:PROCE:PROCF 3270REPEATREPEAT 3280I%=INKEY0:SYS6,&B0:PROCR:REPEATSYS6,&B0,,255TO,T%:UNTILT%<257-W% 3290UNTILI%=27OR(RL%AND!D%=0):RL%-=1:UNTILRL%<=0ORI%=27 3300RESTOREERROR 3310ENDPROC 3320 3330DEFPROCR:IFMO%PROCC 3340IFF%ELSEIFI%<0I%=GET 3350IFI%<32ANDNOTBBC%PROCE:PROCF 3360IFI%<0ANDF%:ENDPROC 3370SYS6,15:IFBBC%ANDI%<>2I%=ASC"+" 3380IFI%=2:BBC%=NOTBBC%:F%=FALSE:I%=ASC"F":IFBBC%VDU7 3390IFI%=32:F%=NOTF%:ENDPROC 3400IFI%=13:F%=FALSE:ENDPROC 3410CASECHR$I%OF 3420WHEN"F","f":D%=M%+M%!16:C%=0:c%=-1:PROCE:PROCF:ENDPROC 3430WHEN"L","l","s","S" 3440IF(M%!36AND3)=0THEN 3450 IF!D%WHILE!(D%+!D%):D%+=!D%:c%+=1:ENDWHILE:PROCE:PROCF 3460ELSE 3470 IF!D%:WHILE!D%:PROCE:ENDWHILE:PROCF 3480ENDIF 3490IFCHR$I%="s"ORCHR$I%="S":RL%=-1 3500ENDPROC 3510WHEN"C","c":IFMO%:MOUSEOFF ELSEMOUSEON2 3520MO%=NOTMO%:ENDPROC 3530WHEN"0","1","2","3","4","5","6","7","8","9":W%=VALCHR$I%:ENDPROC 3540WHEN"+":IF!D%PROCE:PROCF 3550F%=FALSE:ENDPROC 3560WHEN"-":IFD%=M%+M%!16:ENDPROC 3570IFD%>M%+M%!16D%-=D%!-4:c%-=1 3580IF(M%!36AND3)<>0ELSEIFD%>M%+M%!16D%-=D%!-4:c%-=1:ELSE:ENDPROC 3590IFD%=M%+M%!16:C%=0:c%=-1 3600PROCE:PROCF:F%=FALSE 3610IF(M%!36AND3)=0ELSED%-=D%!-4:c%-=1:IFD%=M%+M%!16:C%=0:c%=-1 3620ENDPROC 3630WHENCHR$27:ENDPROC 3640ENDCASE 3650VDU7:ENDPROC 3660 3670DEFPROCF:SYS6,&71,E%:E%=3-E%:SYS6,&70,E%:ENDPROC 3680DEFPROCE:IF!D%=0:D%=M%+M%!16:C%=0:c%=-1 3690c%+=1:SYSEX%,M%!32,D%,C%,M%!40 TO ,D%,C% 3700IF(M%!36AND3)=0C%=0 3710ENDPROC 3720 3730DEFPROCC:SYSSO%,&13C,SPR%,"C"TO R0,R1,R2,R3:CLS 3740COLOUR2:COLOUR129:PRINT;c%;:SYSSO%,R0,R1,R2,R3:SYSSO%,&124,SPR%,"C",2 3750ENDPROC 3760 3770DEFPROCTable 3780IFFNMVar(M%!28,9)=2:SYS"Wimp_ReadPalette",,B%+100:E%=B%+100ELSEE%=0 3790SYS"ColourTrans_SelectTable",M%!28,E%,-1,-1,CT%+4:!CT%=MODE 3800ENDPROC 3810 3820DEFPROCError 3830!B%=ERR:$(B%+4)=REPORT$:V%=2:SYS"XWimp_ReportError",B%,%11,"Projector"TOV% 3840IFV%=2:END 3850ENDPROC 3860 3870DEFFNMVar(N%,V%):SYS"OS_ReadModeVariable",N%,V%TO,,V%:=V%
�>$.!Projector.!RunImage 8� (C) Tony Cheal/Ace Computing Jan 1990 Version 1.08 L� This program may be freely distributed, BUT its contents are Copyright (<� Should be with version 1.00 Euclid or EuclidX or above 2@� Plays back a film in Ace Film format using either the full <6� blown Euclid Module or the Public Domain EuclidX F P,�ONERRORERROREXT ERR,REPORT$+" "+STR$ERL Z3ș"OS_SWINumberFromString",,"OS_SpriteOp" � SO% d5ș"OS_SWINumberFromString",,"Euclid_Expand" � EX% n&�MV%20,TK%4:P%=MV%:SCRAP%=�:BBC%=� xD[OPT2:LDR 3,[0],#4:STR 3,[1],#4:SUBS 2,2,#4:BNE MV%:MOVS PC,14:] �-�TIT%1000:TT%=TIT%:�B%1000:KS%=52:WT%=950 �<ș"Wimp_Initialise",200,&4B534154,"Ace Film Player" � V% �;B%!0=-1:B%!4=0:B%!8=0:B%!12=68:B%!16=90:B%!20=%10�3<<12 �4$(B%+24)="!projector":ș"Wimp_CreateIcon",,B%�Z% �1ș"Wimp_OpenTemplate",,"<Obey$Dir>.Templates" ��Q%1000,R%4:!R%=0:C%=Q% �CG%=�Temp("ProgInfo"):H%=�Temp("FilmInfo"):FS%=�Temp("FullMode") �ș"Wimp_CloseTemplate" �4�SPR%128:!SPR%=128:SPR%!4=0:SPR%!8=16:SPR%!12=16 �%șSO%,&10F,SPR%,"C",,32,8,8:MO%=� �/MI%=�MVar(�,9)��MVar(�,4)<<8��MVar(�,5)<<16 � ��MENU%1000:V%=MENU% 5�23,&90,&10,&38,&7C,&FE,&7C,&10,&38,&00:ACE$=�&90 �MenuT("Projector") &INF%=V%:�MenuE("Info",0):INF%!4=G% "RO%=V%:�MenuE("Roll",0) ,�MenuE("Quit",&80) 6 @�FMENU%1000:V%=FMENU% J�MenuT(" Projector ") TMISC%=V%:�MenuE("Misc",0) ^FR%=V%:�MenuE("Freeze",0) hREV%=V%:�MenuE("Reverse",0) rYOYO%=V%:�MenuE("Yo-yo",0) |�MenuE("First frame",0) ��MenuE("Last frame",0) �.INF%=V%:�MenuE("Full screen",0):INF%!4=FS% �!MD%=V%:�MenuE("Set Mode",&80) � �!MISC%!4=V%:�MenuT(" Misc ") �&INF%=V%:�MenuE("Info",0):INF%!4=G% �&INF%=V%:�MenuE("File",0):INF%!4=H% ��MenuE("New View",&80) � �2EN%=�:FC%=2:WM%=�:LO%=�:�=�+&1000:MT%=�:�RC%=1 �&ș"OS_GetEnv" � E$:I%=�E$,"-quit") �4I%=�E$,"""",I%+1):I%=�E$,"""",I%+1):E$=�E$,I%+1) �ȕ�E$,1)=" ":E$=�E$,2):� ȕE$<>ĩE$," ") I%=�E$+" "," "):F$=�E$,I%-1) )E$=�E$,I%+1):ȕ�E$,1)=" ":E$=�E$,2):� &:�LO%�K%=!R%:ȕK%:!B%=K%!20:�Which(!B%):�Close:K%=!R%:� 0�F$,1)="-"� : Ȏ�F$,2,1)� D �"r","R":�Roll(RC%,FC%):� N �"f","F":FC%=��F$,3) X �"l","L":K%=!R% bC �K%:�Which(K%!20):�Full(RC%,FC%):�I%=27:ș"Wimp_SetMode",WM%:� l/ �LO%LO%=�:ș"Wimp_SlotSize",EN%-&8000,-1 v �"c","C":RC%=��F$,3) � � �� � �LoadAFilm(F$) �Q �LO%�K%=!R%:�K%:�Which(K%!20):�Full(RC%,FC%):�I%=27:ș"Wimp_SetMode",WM%:� �� �� �:�LO%�K%=!R%:ȕK%:!B%=K%!20:�Which(!B%):�Close:K%=!R%:� ��LO% � �:�Error �� �ș"Wimp_Poll",,B% � A% � ȎA%� � �0:K%=!R% BȕK%:M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:W%=K%!20:CT%=K%!44 �K%!24� ,�K%!32�F%=M%+M%!16:�DPTR%=F%+!F%:K%!28=� �K%!28�NextFrame ��LastFrame *�K%!32��!DPTR%=0:K%!28=� 4�:K%=!K%:� >�1:�Which(!B%):�Redraw H�2:�Which(!B%):�Open R�3:�Which(!B%):�Close \�6 f ȎB%!12� p �FS%:�B%!8�7� z" ș"Wimp_CloseWindow",,B%+12 �2 WM%=�:J%=2:�Full(0,J%):ș"Wimp_SetMode",WM% �% �B%!8�1�Popup(MEN%)��Popup(-1) � � �' �-2:�B%!16=Z%MX%=B%!0-80:MY%=230 �* �Select(RO%,!R%=0):�Popup(MENU%) � :�Which(B%!12):�Button � � � �9:�Menus � �17,18 � ȎB%!16� � �0:ș"Wimp_CloseDown":� � �1:�B%!40=&D6A� �G !B%=60:B%!12=B%!8:B%!16=2:B%!36=-1:$(B%+44)="<Wimp$Scrap>"+�0 5 ș"Wimp_SendMessage",17,B%,B%!4:SCRAP%=B%!8 � �3,5:�B%!40=&D6A� $6 F$=�ZS(B%+44):�SCRAP%:SCRAP%=SCRAP%=B%!12 .? B%!12=B%!8:B%!16=4:ș"Wimp_SendMessage",17,B%,B%!4 8= �LoadAFilm(F$):�SCRAP%:SCRAP%=�:ș"OS_File",6,F$ B � L9 �9,&400C1:K%=!R%:ȕK%:!(K%!44)=!(K%!4+28):K%=!K%:� V5 MI%=�MVar(�,9)��MVar(�,4)<<8��MVar(�,5)<<16 ` � j� t�0 ~ ���Close �+L%=K%!36:N%=L%:ȕN%!40:L%=N%:N%=N%!40:� ��K%!40� ��I%=12�32�4:ȔK%!I%,N%!I%:� ��K%!16>0K%!16-=N%!8-K%!8 ��N%!16>0N%!16-=K%!8-N%!8 �:șSO%,&13C,S%,"X"� R0,R1,R2,R3:șSO%,&122,N%!8,"X",,,3 �-șSO%,&13C,N%!8,"X":șSO%,&122,S%,"X",,,3 �?șSO%,&13C,S%,"X":șSO%,&122,N%!8,"X",,,3:șSO%,R0,R1,R2,R3 ��Which(!B%) �� �>L%!40=0:ș"Wimp_CloseWindow",,B%:ș"Wimp_DeleteWindow",,B% �K%!36<>K%:M%=S% !I%=!K%:E%=K%+KS%:L%=E%-M% �E%<MT%� J%=R%:I%=!J%:ȕI% (�Adjust(!J%) 2=�Adjust(I%!4):�Adjust(I%!8):�Adjust(I%!12):�Adjust(I%!16) <0�Adjust(I%!36):�Adjust(I%!40):�Adjust(I%!44) FJ%=I%:I%=!J% P� Z�Move(M%+L%,M%,MT%-(M%+L%)) d� n.MT%-=L%:�LO%ș"Wimp_SlotSize",MT%-&8000,-1 x� � � ��Adjust(� P%):�P%>M%:P%-=L% �� � �$��Open:ș"Wimp_OpenWindow",,B%:� � ���Redraw �"ș"Wimp_RedrawWindow",,B% � F% �3ȕF%:X%=B%!4-B%!20:Y%=B%!16-B%!24:�RedrawSprite �$ș"Wimp_GetRectangle",,B% � F%:� �� � ���Button ȎB%!8� �1:�LastFrame <�2:�Tick(FR%,K%!24):�Tick(REV%,K%!28):�Tick(YOYO%,K%!32) "-�Select(MD%,�=M%!28):MX%=B%!0-80:MY%=B%!4 ,8�SetI(H%,0,�M%!28):�SetI(H%,1,�!M%):�SetI(H%,2,"No") 62�(M%!36�3)=0�SetI(H%,3,"No")��SetI(H%,3,"Yes") @)�SetI(H%,4,�M%!20):�SetI(H%,5,�M%!24) J�Popup(FMENU%):MW%=W% T�4:�NextFrame ^� h� r |��Menus �ȎMEN%� ��MENU%:Ȏ!B%� � �1:�Roll(1,2) � �2:ș"Wimp_CloseDown":� � � ��FMENU%:�Which(MW%):Ȏ!B%� � �0:ȎB%!4� �. �2:Q%=K%:ȕQ%!40:Q%=Q%!40:�:�SetFilm � K%!36=Q%!36:Q%!40=K% � � � �1:K%!24=�K%!24 � �2:K%!28=�K%!28 � �3:K%!32=�K%!32 2 �4:DPTR%=M%+M%!16:SCR%=0:�NextFrame:K%!28=� < �5:DPTR%=M%+M%!16:SCR%=0:�NewFrame:�LastFrame:K%!28=� 5 �6:WM%=�:J%=2:�Full(0,J%):ș"Wimp_SetMode",WM% & �7:ș"Wimp_SetMode",M%!28 0 � :< �Tick(FR%,K%!24):�Tick(REV%,K%!28):�Tick(YOYO%,K%!32) D �Select(MD%,�=M%!28) N� X?ș"Wimp_GetPointerInfo",,B%:�B%!8�1:�Popup(MEN%)��Popup(-1) b� l vB��Window(T$,B%!28,!B%,B%!4,B%!8,B%!12,B%!40,B%!44,B%!48,B%!52) �-T$=ACE$+" "+T$+" "+ACE$:T%=TT%:TT%+=�T$+1 �"�TT%>TIT%+1000:TT%=TIT%:T%=TT% �&B%!72=T%:B%!76=-1:B%!80=�T$:$T%=T$ �4B%!16=(!B%-B%!8)�2:B%!20=(B%!12-B%!4)�2:B%!24=-1 �#B%!32=&01070207:B%!36=&000C0103 �=B%!56=%100001001:B%!60=2<<12:B%!64=0:B%!68=&10001:B%!84=0 �"ș"Wimp_CreateWindow",,B% � W% �>!B%=W%:ș"Wimp_GetWindowState",,B%:ș"Wimp_OpenWindow",,B% �� � ���NextFrame:�NewFrame �2B%!4=-3E4:B%!8=-3E4:B%!12=3E4:B%!16=3E4:!B%=W% �"ș"Wimp_UpdateWindow",,B% � F% 3ȕF%:X%=B%!4-B%!20:Y%=B%!16-B%!24:�RedrawSprite $ș"Wimp_GetRectangle",,B% � F%:� � *��LastFrame 4�DPTR%<>M%+M%!16� >DPTR%-=DPTR%!-4 H�(M%!36�3)=0� R. �DPTR%=M%+M%!16:ȕ!DPTR%:DPTR%+=!DPTR%:� \ DPTR%-=DPTR%!-4:�NextFrame f� p �DPTR%=M%+M%!16� z6 DPTR%+=!DPTR%:ș"Hourglass_On":ȕ!(DPTR%+!DPTR%) �. �NewFrame:�:ș"Hourglass_Off":�NextFrame � � �= �NextFrame:K%!12=DPTR%-DPTR%!-4:�K%!12=M%+M%!16:K%!16=0 � � �� �� �� � ���NewFrame �#�!DPTR%=0:DPTR%=M%+M%!16:SCR%=0 �"șSO%,&13C,S%,"X"� R0,R1,R2,R3 �.șEX%,M%!32,DPTR%,SCR%,M%!40 � ,DPTR%,SCR% ��(M%!36�3)=0SCR%=0 șSO%,R0,R1,R2,R3 K%!12=DPTR%:K%!16=SCR% � $ .��MakeSprite 8=XR%=�MVar(M%!28,4):YR%=�MVar(M%!28,5):LB%=�MVar(M%!28,10) B4SS%=(((M%!20>>XR%)*(M%!24>>YR%)>>3-LB%)+1000)��3 L@S%=�Alloc(SS%):!S%=SS%:S%!4=0:S%!8=16:S%!12=16:șSO%,&109,S% V3șSO%,&10F,S%,"X",0,M%!20>>XR%,M%!24>>YR%,M%!28 `� j t��RedrawSprite ~�!CT%<>�:�Table ��MI%=K%!48� � șSO%,&122,S%,"X",X%,Y% �� �( șSO%,&134,S%,"X",X%,Y%,0,0,CT%+4 �� �� � ���LoadFilm(F$) �Eș"OS_File",5,F$ � O%,,T%,,L%:�O%<>1�1,"Can't find film '"+F$+"'" �7M%=�Alloc(L%):ș"OS_File",&FF,F$,M%:CT%=�Alloc(260) �� � ��LoadAFilm(E$) �LoadFilm(E$):�SetFilm � (��SetFilm:�MakeSprite 2�WT%-M%!24<180:WT%=950 <F�Window($(M%+4),%1111,300,WT%-M%!24,M%!20+300,WT%,0,0,M%!20,M%!24) F:WT%-=48:DPTR%=M%+M%!16:SCR%=0:CM%=M%!28:K%=�Alloc(KS%) P6�NextFrame:!K%=!R%:!R%=K%:K%!4=M%:K%!8=S%:K%!20=W% ZAK%!24=�:K%!28=�:K%!32=�:K%!36=K%:K%!40=0:K%!44=CT%:!CT%=M%!28 d=K%!48=�MVar(M%!28,9)��MVar(M%!28,4)<<8��MVar(M%!28,5)<<16 n� x �>ݤTemp(T$):ș"Wimp_LoadTemplate",,B%,C%,Q%+1000,-1,T$�,,C% �$ș"Wimp_CreateWindow",,B%�T%:=T% � ���MenuT(T$) �!$V%=�T$,11):V%!16=16*(�$V%+1) �+V%!20=44:V%!12=&00070207:V%!24=0:V%+=28 �� � ���MenuE(T$,F%) �:$(V%+12)=�T$,11):!V%=F%:V%!4=-1:V%!8=1�%111<<24:V%+=24 �� � �*��Tick(T%,F%):�F%:!T%=!T%��1�!T%=!T%�1 � :��Select(T%,F%):�F%:T%!8=T%!8�1<<22�T%!8=T%!8��(1<<22) � "*ݤZS(I%)�A$:�A$+=�?I%:I%+=1:�?I%=0:=A$ , 6.ݤAlloc(L%):�E%:�LO%E%=MT%+L%-&8000 �E%=-1 @(ș"Wimp_SlotSize",E%,-1�T%:T%+=&8000 J&�T%<MT%+L%�1,"Insufficient memory" TMT%+=L%:=MT%-L% ^ h"��Which(T%):W%=T%:J%=R%:K%=!J% rIȕK%:�W%=K%!20:M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:CT%=K%!44:I%=J% |J%=K%:K%=!J%:�:K%=!I% �� � ���Move(A%,B%,C%):�MV%:� � �9��Popup(N%):ș"Wimp_CreateMenu",,N%,MX%,MY%:MEN%=N%:� � �:��SetI(W%,I%,S$):�F%:!B%=W%:ș"Wimp_GetWindowInfo",,B% �4�I%>=0:I%=B%+112+I%*32:F%=I%-4�I%=B%+76:F%=B%+60 �*�!F%�1<<8:$!I%=�S$,I%!8-1)�$I%=�S$,11) �� � � ��Roll(RC%,U%):�RC%<=0:RC%=1 �(WM%=�:�:I%=0:FK%=0:ȕFK%<>!R%�I%<>27 %K%=!R%:ȕ!K%<>FK%:K%=!K%:�:FK%=K% =M%=K%!4:S%=K%!8:DPTR%=K%!12:SCR%=K%!16:W%=K%!20:CT%=K%!44 �Full(RC%,U%):K%=!K%:� &�I%=27:ș"Wimp_SetMode",WM% 0� : D��Full(RL%,� W%):�J%:� N=FW%=M%!20:FH%=M%!24:FM%=M%!28:FW2%=FW%�2��3:FH2%=FH%�2��3 XT%=�:�:��:��:T%=� b�T%�FM%+128:�� ��FM% l&��:��:ș"Wimp_SetMode",WM%:� �,�$ v+��<>FM%�1,"Mode for film not available" ��MVar(�,9)=2� �&E%=B%+100:ș"Wimp_ReadPalette",,E% �-�I%=0�15:�19,I%,16,E%?1,E%?2,E%?3:E%+=4:� �� �&�:E%=1:�F:�:�F:�:F%=RL%>0:�MO%ȗ�2 �8�24,640-FW2%;512-FH2%;640-FW2%+FW%-1;512-FH2%+FH%-1; �(D%=M%+M%!16:C%=0:c%=-1:CM%=FM%:�E:�F ��� �1I%=�0:ș6,&B0:�R:�ș6,&B0,,255�,T%:�T%<257-W% �+�I%=27�(RL%�!D%=0):RL%-=1:�RL%<=0�I%=27 ��� �� � ��R:�MO%�C �F%��I%<0I%=� �I%<32��BBC%�E:�F �I%<0�F%:� *ș6,15:�BBC%�I%<>2I%=�"+" 4)�I%=2:BBC%=�BBC%:F%=�:I%=�"F":�BBC%�7 >�I%=32:F%=�F%:� H�I%=13:F%=�:� R Ȏ�I%� \+�"F","f":D%=M%+M%!16:C%=0:c%=-1:�E:�F:� f�"L","l","s","S" p�(M%!36�3)=0� z, �!D%ȕ!(D%+!D%):D%+=!D%:c%+=1:�:�E:�F �� � �!D%:ȕ!D%:�E:�:�F �� ��I%="s"��I%="S":RL%=-1 �� ��"C","c":�MO%:ȗ� �ȗ�2 �MO%=�MO%:� �6�"0","1","2","3","4","5","6","7","8","9":W%=��I%:� ��"+":�!D%�E:�F � F%=�:� ��"-":�D%=M%+M%!16:� ��D%>M%+M%!16D%-=D%!-4:c%-=1 �1�(M%!36�3)<>0��D%>M%+M%!16D%-=D%!-4:c%-=1:�:� �D%=M%+M%!16:C%=0:c%=-1 �E:�F:F%=� 8�(M%!36�3)=0�D%-=D%!-4:c%-=1:�D%=M%+M%!16:C%=0:c%=-1 $� . ɽ27:� 8� B�7:� L V'��F:ș6,&71,E%:E%=3-E%:ș6,&70,E%:� `%��E:�!D%=0:D%=M%+M%!16:C%=0:c%=-1 j*c%+=1:șEX%,M%!32,D%,C%,M%!40 � ,D%,C% t�(M%!36�3)=0C%=0 ~� � �*��C:șSO%,&13C,SPR%,"C"� R0,R1,R2,R3:� �9�2:�129:�;c%;:șSO%,R0,R1,R2,R3:șSO%,&124,SPR%,"C",2 �� � ���Table �A�MVar(M%!28,9)=2:ș"Wimp_ReadPalette",,B%+100:E%=B%+100�E%=0 �;ș"ColourTrans_SelectTable",M%!28,E%,-1,-1,CT%+4:!CT%=� �� � ���Error �E!B%=�:$(B%+4)=�$:V%=2:ș"XWimp_ReportError",B%,%11,"Projector"�V% �V%=2:� � 8ݤMVar(N%,V%):ș"OS_ReadModeVariable",N%,V%�,,V%:=V% �
00000000 0d 00 0a 1c f4 3e 24 2e 21 50 72 6f 6a 65 63 74 |.....>$.!Project| 00000010 6f 72 2e 21 52 75 6e 49 6d 61 67 65 0d 00 14 38 |or.!RunImage...8| 00000020 f4 20 28 43 29 20 54 6f 6e 79 20 43 68 65 61 6c |. (C) Tony Cheal| 00000030 2f 41 63 65 20 43 6f 6d 70 75 74 69 6e 67 20 4a |/Ace Computing J| 00000040 61 6e 20 31 39 39 30 20 56 65 72 73 69 6f 6e 20 |an 1990 Version | 00000050 31 2e 30 38 0d 00 1e 4c f4 20 54 68 69 73 20 70 |1.08...L. This p| 00000060 72 6f 67 72 61 6d 20 6d 61 79 20 62 65 20 66 72 |rogram may be fr| 00000070 65 65 6c 79 20 64 69 73 74 72 69 62 75 74 65 64 |eely distributed| 00000080 2c 20 42 55 54 20 69 74 73 20 63 6f 6e 74 65 6e |, BUT its conten| 00000090 74 73 20 61 72 65 20 43 6f 70 79 72 69 67 68 74 |ts are Copyright| 000000a0 0d 00 28 3c f4 20 53 68 6f 75 6c 64 20 62 65 20 |..(<. Should be | 000000b0 77 69 74 68 20 76 65 72 73 69 6f 6e 20 31 2e 30 |with version 1.0| 000000c0 30 20 45 75 63 6c 69 64 20 6f 72 20 45 75 63 6c |0 Euclid or Eucl| 000000d0 69 64 58 20 6f 72 20 61 62 6f 76 65 0d 00 32 40 |idX or above..2@| 000000e0 f4 20 50 6c 61 79 73 20 62 61 63 6b 20 61 20 66 |. Plays back a f| 000000f0 69 6c 6d 20 69 6e 20 41 63 65 20 46 69 6c 6d 20 |ilm in Ace Film | 00000100 66 6f 72 6d 61 74 20 75 73 69 6e 67 20 65 69 74 |format using eit| 00000110 68 65 72 20 74 68 65 20 66 75 6c 6c 0d 00 3c 36 |her the full..<6| 00000120 f4 20 62 6c 6f 77 6e 20 45 75 63 6c 69 64 20 4d |. blown Euclid M| 00000130 6f 64 75 6c 65 20 6f 72 20 74 68 65 20 50 75 62 |odule or the Pub| 00000140 6c 69 63 20 44 6f 6d 61 69 6e 20 45 75 63 6c 69 |lic Domain Eucli| 00000150 64 58 0d 00 46 04 0d 00 50 2c f4 4f 4e 45 52 52 |dX..F...P,.ONERR| 00000160 4f 52 45 52 52 4f 52 45 58 54 20 45 52 52 2c 52 |ORERROREXT ERR,R| 00000170 45 50 4f 52 54 24 2b 22 20 22 2b 53 54 52 24 45 |EPORT$+" "+STR$E| 00000180 52 4c 0d 00 5a 33 c8 99 22 4f 53 5f 53 57 49 4e |RL..Z3.."OS_SWIN| 00000190 75 6d 62 65 72 46 72 6f 6d 53 74 72 69 6e 67 22 |umberFromString"| 000001a0 2c 2c 22 4f 53 5f 53 70 72 69 74 65 4f 70 22 20 |,,"OS_SpriteOp" | 000001b0 b8 20 53 4f 25 0d 00 64 35 c8 99 22 4f 53 5f 53 |. SO%..d5.."OS_S| 000001c0 57 49 4e 75 6d 62 65 72 46 72 6f 6d 53 74 72 69 |WINumberFromStri| 000001d0 6e 67 22 2c 2c 22 45 75 63 6c 69 64 5f 45 78 70 |ng",,"Euclid_Exp| 000001e0 61 6e 64 22 20 b8 20 45 58 25 0d 00 6e 26 de 4d |and" . EX%..n&.M| 000001f0 56 25 32 30 2c 54 4b 25 34 3a 50 25 3d 4d 56 25 |V%20,TK%4:P%=MV%| 00000200 3a 53 43 52 41 50 25 3d a3 3a 42 42 43 25 3d a3 |:SCRAP%=.:BBC%=.| 00000210 0d 00 78 44 5b 4f 50 54 32 3a 4c 44 52 20 33 2c |..xD[OPT2:LDR 3,| 00000220 5b 30 5d 2c 23 34 3a 53 54 52 20 33 2c 5b 31 5d |[0],#4:STR 3,[1]| 00000230 2c 23 34 3a 53 55 42 53 20 32 2c 32 2c 23 34 3a |,#4:SUBS 2,2,#4:| 00000240 42 4e 45 20 4d 56 25 3a 4d 4f 56 53 20 50 43 2c |BNE MV%:MOVS PC,| 00000250 31 34 3a 5d 0d 00 82 2d de 54 49 54 25 31 30 30 |14:]...-.TIT%100| 00000260 30 3a 54 54 25 3d 54 49 54 25 3a de 42 25 31 30 |0:TT%=TIT%:.B%10| 00000270 30 30 3a 4b 53 25 3d 35 32 3a 57 54 25 3d 39 35 |00:KS%=52:WT%=95| 00000280 30 0d 00 8c 3c c8 99 22 57 69 6d 70 5f 49 6e 69 |0...<.."Wimp_Ini| 00000290 74 69 61 6c 69 73 65 22 2c 32 30 30 2c 26 34 42 |tialise",200,&4B| 000002a0 35 33 34 31 35 34 2c 22 41 63 65 20 46 69 6c 6d |534154,"Ace Film| 000002b0 20 50 6c 61 79 65 72 22 20 b8 20 56 25 0d 00 96 | Player" . V%...| 000002c0 3b 42 25 21 30 3d 2d 31 3a 42 25 21 34 3d 30 3a |;B%!0=-1:B%!4=0:| 000002d0 42 25 21 38 3d 30 3a 42 25 21 31 32 3d 36 38 3a |B%!8=0:B%!12=68:| 000002e0 42 25 21 31 36 3d 39 30 3a 42 25 21 32 30 3d 25 |B%!16=90:B%!20=%| 000002f0 31 30 84 33 3c 3c 31 32 0d 00 a0 34 24 28 42 25 |10.3<<12...4$(B%| 00000300 2b 32 34 29 3d 22 21 70 72 6f 6a 65 63 74 6f 72 |+24)="!projector| 00000310 22 3a c8 99 22 57 69 6d 70 5f 43 72 65 61 74 65 |":.."Wimp_Create| 00000320 49 63 6f 6e 22 2c 2c 42 25 b8 5a 25 0d 00 aa 31 |Icon",,B%.Z%...1| 00000330 c8 99 22 57 69 6d 70 5f 4f 70 65 6e 54 65 6d 70 |.."Wimp_OpenTemp| 00000340 6c 61 74 65 22 2c 2c 22 3c 4f 62 65 79 24 44 69 |late",,"<Obey$Di| 00000350 72 3e 2e 54 65 6d 70 6c 61 74 65 73 22 0d 00 b4 |r>.Templates"...| 00000360 1b de 51 25 31 30 30 30 2c 52 25 34 3a 21 52 25 |..Q%1000,R%4:!R%| 00000370 3d 30 3a 43 25 3d 51 25 0d 00 be 43 47 25 3d a4 |=0:C%=Q%...CG%=.| 00000380 54 65 6d 70 28 22 50 72 6f 67 49 6e 66 6f 22 29 |Temp("ProgInfo")| 00000390 3a 48 25 3d a4 54 65 6d 70 28 22 46 69 6c 6d 49 |:H%=.Temp("FilmI| 000003a0 6e 66 6f 22 29 3a 46 53 25 3d a4 54 65 6d 70 28 |nfo"):FS%=.Temp(| 000003b0 22 46 75 6c 6c 4d 6f 64 65 22 29 0d 00 c8 1a c8 |"FullMode").....| 000003c0 99 22 57 69 6d 70 5f 43 6c 6f 73 65 54 65 6d 70 |."Wimp_CloseTemp| 000003d0 6c 61 74 65 22 0d 00 d2 34 de 53 50 52 25 31 32 |late"...4.SPR%12| 000003e0 38 3a 21 53 50 52 25 3d 31 32 38 3a 53 50 52 25 |8:!SPR%=128:SPR%| 000003f0 21 34 3d 30 3a 53 50 52 25 21 38 3d 31 36 3a 53 |!4=0:SPR%!8=16:S| 00000400 50 52 25 21 31 32 3d 31 36 0d 00 dc 25 c8 99 53 |PR%!12=16...%..S| 00000410 4f 25 2c 26 31 30 46 2c 53 50 52 25 2c 22 43 22 |O%,&10F,SPR%,"C"| 00000420 2c 2c 33 32 2c 38 2c 38 3a 4d 4f 25 3d a3 0d 00 |,,32,8,8:MO%=...| 00000430 e6 2f 4d 49 25 3d a4 4d 56 61 72 28 eb 2c 39 29 |./MI%=.MVar(.,9)| 00000440 84 a4 4d 56 61 72 28 eb 2c 34 29 3c 3c 38 84 a4 |..MVar(.,4)<<8..| 00000450 4d 56 61 72 28 eb 2c 35 29 3c 3c 31 36 0d 00 f0 |MVar(.,5)<<16...| 00000460 04 0d 00 fa 17 de 4d 45 4e 55 25 31 30 30 30 3a |......MENU%1000:| 00000470 56 25 3d 4d 45 4e 55 25 0d 01 04 35 ef 32 33 2c |V%=MENU%...5.23,| 00000480 26 39 30 2c 26 31 30 2c 26 33 38 2c 26 37 43 2c |&90,&10,&38,&7C,| 00000490 26 46 45 2c 26 37 43 2c 26 31 30 2c 26 33 38 2c |&FE,&7C,&10,&38,| 000004a0 26 30 30 3a 41 43 45 24 3d bd 26 39 30 0d 01 0e |&00:ACE$=.&90...| 000004b0 17 f2 4d 65 6e 75 54 28 22 50 72 6f 6a 65 63 74 |..MenuT("Project| 000004c0 6f 72 22 29 0d 01 18 26 49 4e 46 25 3d 56 25 3a |or")...&INF%=V%:| 000004d0 f2 4d 65 6e 75 45 28 22 49 6e 66 6f 22 2c 30 29 |.MenuE("Info",0)| 000004e0 3a 49 4e 46 25 21 34 3d 47 25 0d 01 22 1b 52 4f |:INF%!4=G%..".RO| 000004f0 25 3d 56 25 3a f2 4d 65 6e 75 45 28 22 52 6f 6c |%=V%:.MenuE("Rol| 00000500 6c 22 2c 30 29 0d 01 2c 16 f2 4d 65 6e 75 45 28 |l",0)..,..MenuE(| 00000510 22 51 75 69 74 22 2c 26 38 30 29 0d 01 36 04 0d |"Quit",&80)..6..| 00000520 01 40 19 de 46 4d 45 4e 55 25 31 30 30 30 3a 56 |.@..FMENU%1000:V| 00000530 25 3d 46 4d 45 4e 55 25 0d 01 4a 19 f2 4d 65 6e |%=FMENU%..J..Men| 00000540 75 54 28 22 20 50 72 6f 6a 65 63 74 6f 72 20 22 |uT(" Projector "| 00000550 29 0d 01 54 1d 4d 49 53 43 25 3d 56 25 3a f2 4d |)..T.MISC%=V%:.M| 00000560 65 6e 75 45 28 22 4d 69 73 63 22 2c 30 29 0d 01 |enuE("Misc",0)..| 00000570 5e 1d 46 52 25 3d 56 25 3a f2 4d 65 6e 75 45 28 |^.FR%=V%:.MenuE(| 00000580 22 46 72 65 65 7a 65 22 2c 30 29 0d 01 68 1f 52 |"Freeze",0)..h.R| 00000590 45 56 25 3d 56 25 3a f2 4d 65 6e 75 45 28 22 52 |EV%=V%:.MenuE("R| 000005a0 65 76 65 72 73 65 22 2c 30 29 0d 01 72 1e 59 4f |everse",0)..r.YO| 000005b0 59 4f 25 3d 56 25 3a f2 4d 65 6e 75 45 28 22 59 |YO%=V%:.MenuE("Y| 000005c0 6f 2d 79 6f 22 2c 30 29 0d 01 7c 1b f2 4d 65 6e |o-yo",0)..|..Men| 000005d0 75 45 28 22 46 69 72 73 74 20 66 72 61 6d 65 22 |uE("First frame"| 000005e0 2c 30 29 0d 01 86 1a f2 4d 65 6e 75 45 28 22 4c |,0).....MenuE("L| 000005f0 61 73 74 20 66 72 61 6d 65 22 2c 30 29 0d 01 90 |ast frame",0)...| 00000600 2e 49 4e 46 25 3d 56 25 3a f2 4d 65 6e 75 45 28 |.INF%=V%:.MenuE(| 00000610 22 46 75 6c 6c 20 73 63 72 65 65 6e 22 2c 30 29 |"Full screen",0)| 00000620 3a 49 4e 46 25 21 34 3d 46 53 25 0d 01 9a 21 4d |:INF%!4=FS%...!M| 00000630 44 25 3d 56 25 3a f2 4d 65 6e 75 45 28 22 53 65 |D%=V%:.MenuE("Se| 00000640 74 20 4d 6f 64 65 22 2c 26 38 30 29 0d 01 a4 04 |t Mode",&80)....| 00000650 0d 01 ae 21 4d 49 53 43 25 21 34 3d 56 25 3a f2 |...!MISC%!4=V%:.| 00000660 4d 65 6e 75 54 28 22 20 20 4d 69 73 63 20 20 22 |MenuT(" Misc "| 00000670 29 0d 01 b8 26 49 4e 46 25 3d 56 25 3a f2 4d 65 |)...&INF%=V%:.Me| 00000680 6e 75 45 28 22 49 6e 66 6f 22 2c 30 29 3a 49 4e |nuE("Info",0):IN| 00000690 46 25 21 34 3d 47 25 0d 01 c2 26 49 4e 46 25 3d |F%!4=G%...&INF%=| 000006a0 56 25 3a f2 4d 65 6e 75 45 28 22 46 69 6c 65 22 |V%:.MenuE("File"| 000006b0 2c 30 29 3a 49 4e 46 25 21 34 3d 48 25 0d 01 cc |,0):INF%!4=H%...| 000006c0 1a f2 4d 65 6e 75 45 28 22 4e 65 77 20 56 69 65 |..MenuE("New Vie| 000006d0 77 22 2c 26 38 30 29 0d 01 d6 04 0d 01 e0 32 45 |w",&80).......2E| 000006e0 4e 25 3d 93 3a 46 43 25 3d 32 3a 57 4d 25 3d eb |N%=.:FC%=2:WM%=.| 000006f0 3a 4c 4f 25 3d b9 3a e0 3d e0 2b 26 31 30 30 30 |:LO%=.:.=.+&1000| 00000700 3a 4d 54 25 3d 93 3a f5 52 43 25 3d 31 0d 01 ea |:MT%=.:.RC%=1...| 00000710 26 c8 99 22 4f 53 5f 47 65 74 45 6e 76 22 20 b8 |&.."OS_GetEnv" .| 00000720 20 45 24 3a 49 25 3d a7 45 24 2c 22 2d 71 75 69 | E$:I%=.E$,"-qui| 00000730 74 22 29 0d 01 f4 34 49 25 3d a7 45 24 2c 22 22 |t")...4I%=.E$,""| 00000740 22 22 2c 49 25 2b 31 29 3a 49 25 3d a7 45 24 2c |"",I%+1):I%=.E$,| 00000750 22 22 22 22 2c 49 25 2b 31 29 3a 45 24 3d c1 45 |"""",I%+1):E$=.E| 00000760 24 2c 49 25 2b 31 29 0d 01 fe 1c c8 95 c0 45 24 |$,I%+1).......E$| 00000770 2c 31 29 3d 22 20 22 3a 45 24 3d c1 45 24 2c 32 |,1)=" ":E$=.E$,2| 00000780 29 3a ce 0d 02 08 13 c8 95 45 24 3c 3e c4 a9 45 |):.......E$<>..E| 00000790 24 2c 22 20 22 29 0d 02 12 20 49 25 3d a7 45 24 |$," ")... I%=.E$| 000007a0 2b 22 20 22 2c 22 20 22 29 3a 46 24 3d c0 45 24 |+" "," "):F$=.E$| 000007b0 2c 49 25 2d 31 29 0d 02 1c 29 45 24 3d c1 45 24 |,I%-1)...)E$=.E$| 000007c0 2c 49 25 2b 31 29 3a c8 95 c0 45 24 2c 31 29 3d |,I%+1):...E$,1)=| 000007d0 22 20 22 3a 45 24 3d c1 45 24 2c 32 29 3a ce 0d |" ":E$=.E$,2):..| 000007e0 02 26 3a e7 4c 4f 25 8b 4b 25 3d 21 52 25 3a c8 |.&:.LO%.K%=!R%:.| 000007f0 95 4b 25 3a 21 42 25 3d 4b 25 21 32 30 3a f2 57 |.K%:!B%=K%!20:.W| 00000800 68 69 63 68 28 21 42 25 29 3a f2 43 6c 6f 73 65 |hich(!B%):.Close| 00000810 3a 4b 25 3d 21 52 25 3a ce 0d 02 30 10 e7 c0 46 |:K%=!R%:...0...F| 00000820 24 2c 31 29 3d 22 2d 22 8c 0d 02 3a 12 20 20 20 |$,1)="-"...:. | 00000830 c8 8e c1 46 24 2c 32 2c 31 29 ca 0d 02 44 20 20 |...F$,2,1)...D | 00000840 20 20 c9 22 72 22 2c 22 52 22 3a f2 52 6f 6c 6c | ."r","R":.Roll| 00000850 28 52 43 25 2c 46 43 25 29 3a e0 0d 02 4e 1b 20 |(RC%,FC%):...N. | 00000860 20 20 c9 22 66 22 2c 22 46 22 3a 46 43 25 3d bb | ."f","F":FC%=.| 00000870 c1 46 24 2c 33 29 0d 02 58 16 20 20 20 c9 22 6c |.F$,3)..X. ."l| 00000880 22 2c 22 4c 22 3a 4b 25 3d 21 52 25 0d 02 62 43 |","L":K%=!R%..bC| 00000890 20 e7 4b 25 3a f2 57 68 69 63 68 28 4b 25 21 32 | .K%:.Which(K%!2| 000008a0 30 29 3a f2 46 75 6c 6c 28 52 43 25 2c 46 43 25 |0):.Full(RC%,FC%| 000008b0 29 3a e7 49 25 3d 32 37 3a c8 99 22 57 69 6d 70 |):.I%=27:.."Wimp| 000008c0 5f 53 65 74 4d 6f 64 65 22 2c 57 4d 25 3a e0 0d |_SetMode",WM%:..| 000008d0 02 6c 2f 20 20 20 e7 4c 4f 25 4c 4f 25 3d a3 3a |.l/ .LO%LO%=.:| 000008e0 c8 99 22 57 69 6d 70 5f 53 6c 6f 74 53 69 7a 65 |.."Wimp_SlotSize| 000008f0 22 2c 45 4e 25 2d 26 38 30 30 30 2c 2d 31 0d 02 |",EN%-&8000,-1..| 00000900 76 1b 20 20 20 c9 22 63 22 2c 22 43 22 3a 52 43 |v. ."c","C":RC| 00000910 25 3d bb c1 46 24 2c 33 29 0d 02 80 08 20 20 20 |%=..F$,3).... | 00000920 cb 0d 02 8a 05 cc 0d 02 94 15 20 20 20 f2 4c 6f |.......... .Lo| 00000930 61 64 41 46 69 6c 6d 28 46 24 29 0d 02 9e 51 20 |adAFilm(F$)...Q | 00000940 20 20 e7 4c 4f 25 8b 4b 25 3d 21 52 25 3a e7 4b | .LO%.K%=!R%:.K| 00000950 25 3a f2 57 68 69 63 68 28 4b 25 21 32 30 29 3a |%:.Which(K%!20):| 00000960 f2 46 75 6c 6c 28 52 43 25 2c 46 43 25 29 3a e7 |.Full(RC%,FC%):.| 00000970 49 25 3d 32 37 3a c8 99 22 57 69 6d 70 5f 53 65 |I%=27:.."Wimp_Se| 00000980 74 4d 6f 64 65 22 2c 57 4d 25 3a e0 0d 02 a8 05 |tMode",WM%:.....| 00000990 cd 0d 02 b2 05 ce 0d 02 bc 3a e7 4c 4f 25 8b 4b |.........:.LO%.K| 000009a0 25 3d 21 52 25 3a c8 95 4b 25 3a 21 42 25 3d 4b |%=!R%:..K%:!B%=K| 000009b0 25 21 32 30 3a f2 57 68 69 63 68 28 21 42 25 29 |%!20:.Which(!B%)| 000009c0 3a f2 43 6c 6f 73 65 3a 4b 25 3d 21 52 25 3a ce |:.Close:K%=!R%:.| 000009d0 0d 02 c6 08 fd 4c 4f 25 0d 02 d0 0d ee 85 3a f2 |.....LO%......:.| 000009e0 45 72 72 6f 72 0d 02 da 05 f5 0d 02 e4 1a c8 99 |Error...........| 000009f0 22 57 69 6d 70 5f 50 6f 6c 6c 22 2c 2c 42 25 20 |"Wimp_Poll",,B% | 00000a00 b8 20 41 25 0d 02 ee 09 c8 8e 41 25 ca 0d 02 f8 |. A%......A%....| 00000a10 0d c9 30 3a 4b 25 3d 21 52 25 0d 03 02 42 c8 95 |..0:K%=!R%...B..| 00000a20 4b 25 3a 4d 25 3d 4b 25 21 34 3a 53 25 3d 4b 25 |K%:M%=K%!4:S%=K%| 00000a30 21 38 3a 44 50 54 52 25 3d 4b 25 21 31 32 3a 53 |!8:DPTR%=K%!12:S| 00000a40 43 52 25 3d 4b 25 21 31 36 3a 57 25 3d 4b 25 21 |CR%=K%!16:W%=K%!| 00000a50 32 30 3a 43 54 25 3d 4b 25 21 34 34 0d 03 0c 0b |20:CT%=K%!44....| 00000a60 e7 4b 25 21 32 34 8c 0d 03 16 2c e7 4b 25 21 33 |.K%!24....,.K%!3| 00000a70 32 8b 46 25 3d 4d 25 2b 4d 25 21 31 36 3a e7 44 |2.F%=M%+M%!16:.D| 00000a80 50 54 52 25 3d 46 25 2b 21 46 25 3a 4b 25 21 32 |PTR%=F%+!F%:K%!2| 00000a90 38 3d b9 0d 03 20 20 e7 4b 25 21 32 38 f2 4e 65 |8=... .K%!28.Ne| 00000aa0 78 74 46 72 61 6d 65 20 8b f2 4c 61 73 74 46 72 |xtFrame ..LastFr| 00000ab0 61 6d 65 0d 03 2a 1c e7 4b 25 21 33 32 8b e7 21 |ame..*..K%!32..!| 00000ac0 44 50 54 52 25 3d 30 3a 4b 25 21 32 38 3d a3 0d |DPTR%=0:K%!28=..| 00000ad0 03 34 0e cd 3a 4b 25 3d 21 4b 25 3a ce 0d 03 3e |.4..:K%=!K%:...>| 00000ae0 1a c9 31 3a f2 57 68 69 63 68 28 21 42 25 29 3a |..1:.Which(!B%):| 00000af0 f2 52 65 64 72 61 77 0d 03 48 18 c9 32 3a f2 57 |.Redraw..H..2:.W| 00000b00 68 69 63 68 28 21 42 25 29 3a f2 4f 70 65 6e 0d |hich(!B%):.Open.| 00000b10 03 52 19 c9 33 3a f2 57 68 69 63 68 28 21 42 25 |.R..3:.Which(!B%| 00000b20 29 3a f2 43 6c 6f 73 65 0d 03 5c 06 c9 36 0d 03 |):.Close..\..6..| 00000b30 66 0f 20 20 20 c8 8e 42 25 21 31 32 ca 0d 03 70 |f. ..B%!12...p| 00000b40 14 20 20 20 c9 46 53 25 3a e7 42 25 21 38 80 37 |. .FS%:.B%!8.7| 00000b50 8c 0d 03 7a 22 20 20 20 c8 99 22 57 69 6d 70 5f |...z" .."Wimp_| 00000b60 43 6c 6f 73 65 57 69 6e 64 6f 77 22 2c 2c 42 25 |CloseWindow",,B%| 00000b70 2b 31 32 0d 03 84 32 20 20 20 57 4d 25 3d eb 3a |+12...2 WM%=.:| 00000b80 4a 25 3d 32 3a f2 46 75 6c 6c 28 30 2c 4a 25 29 |J%=2:.Full(0,J%)| 00000b90 3a c8 99 22 57 69 6d 70 5f 53 65 74 4d 6f 64 65 |:.."Wimp_SetMode| 00000ba0 22 2c 57 4d 25 0d 03 8e 25 20 20 20 e7 42 25 21 |",WM%...% .B%!| 00000bb0 38 80 31 f2 50 6f 70 75 70 28 4d 45 4e 25 29 8b |8.1.Popup(MEN%).| 00000bc0 f2 50 6f 70 75 70 28 2d 31 29 0d 03 98 08 20 20 |.Popup(-1).... | 00000bd0 20 cd 0d 03 a2 27 20 20 20 c9 2d 32 3a e7 42 25 | ....' .-2:.B%| 00000be0 21 31 36 3d 5a 25 4d 58 25 3d 42 25 21 30 2d 38 |!16=Z%MX%=B%!0-8| 00000bf0 30 3a 4d 59 25 3d 32 33 30 0d 03 ac 2a 20 20 20 |0:MY%=230...* | 00000c00 20 20 20 f2 53 65 6c 65 63 74 28 52 4f 25 2c 21 | .Select(RO%,!| 00000c10 52 25 3d 30 29 3a f2 50 6f 70 75 70 28 4d 45 4e |R%=0):.Popup(MEN| 00000c20 55 25 29 0d 03 b6 1e 20 20 20 7f 3a f2 57 68 69 |U%).... .:.Whi| 00000c30 63 68 28 42 25 21 31 32 29 3a f2 42 75 74 74 6f |ch(B%!12):.Butto| 00000c40 6e 0d 03 c0 08 20 20 20 cb 0d 03 ca 0d c9 39 3a |n.... ......9:| 00000c50 f2 4d 65 6e 75 73 0d 03 d4 0a c9 31 37 2c 31 38 |.Menus.....17,18| 00000c60 0d 03 de 0f 20 20 20 c8 8e 42 25 21 31 36 ca 0d |.... ..B%!16..| 00000c70 03 e8 1e 20 20 20 c9 30 3a c8 99 22 57 69 6d 70 |... .0:.."Wimp| 00000c80 5f 43 6c 6f 73 65 44 6f 77 6e 22 3a e0 0d 03 f2 |_CloseDown":....| 00000c90 16 20 20 20 c9 31 3a e7 42 25 21 34 30 3d 26 44 |. .1:.B%!40=&D| 00000ca0 36 41 8c 0d 03 fc 47 20 20 20 20 20 20 21 42 25 |6A....G !B%| 00000cb0 3d 36 30 3a 42 25 21 31 32 3d 42 25 21 38 3a 42 |=60:B%!12=B%!8:B| 00000cc0 25 21 31 36 3d 32 3a 42 25 21 33 36 3d 2d 31 3a |%!16=2:B%!36=-1:| 00000cd0 24 28 42 25 2b 34 34 29 3d 22 3c 57 69 6d 70 24 |$(B%+44)="<Wimp$| 00000ce0 53 63 72 61 70 3e 22 2b bd 30 0d 04 06 35 20 20 |Scrap>"+.0...5 | 00000cf0 20 20 20 20 c8 99 22 57 69 6d 70 5f 53 65 6e 64 | .."Wimp_Send| 00000d00 4d 65 73 73 61 67 65 22 2c 31 37 2c 42 25 2c 42 |Message",17,B%,B| 00000d10 25 21 34 3a 53 43 52 41 50 25 3d 42 25 21 38 0d |%!4:SCRAP%=B%!8.| 00000d20 04 10 0b 20 20 20 20 20 20 cd 0d 04 1a 18 20 20 |... ..... | 00000d30 20 c9 33 2c 35 3a e7 42 25 21 34 30 3d 26 44 36 | .3,5:.B%!40=&D6| 00000d40 41 8c 0d 04 24 36 20 20 20 20 20 20 20 20 20 46 |A...$6 F| 00000d50 24 3d a4 5a 53 28 42 25 2b 34 34 29 3a e7 53 43 |$=.ZS(B%+44):.SC| 00000d60 52 41 50 25 3a 53 43 52 41 50 25 3d 53 43 52 41 |RAP%:SCRAP%=SCRA| 00000d70 50 25 3d 42 25 21 31 32 0d 04 2e 3f 20 20 20 20 |P%=B%!12...? | 00000d80 20 20 20 20 20 42 25 21 31 32 3d 42 25 21 38 3a | B%!12=B%!8:| 00000d90 42 25 21 31 36 3d 34 3a c8 99 22 57 69 6d 70 5f |B%!16=4:.."Wimp_| 00000da0 53 65 6e 64 4d 65 73 73 61 67 65 22 2c 31 37 2c |SendMessage",17,| 00000db0 42 25 2c 42 25 21 34 0d 04 38 3d 20 20 20 20 20 |B%,B%!4..8= | 00000dc0 20 20 20 20 f2 4c 6f 61 64 41 46 69 6c 6d 28 46 | .LoadAFilm(F| 00000dd0 24 29 3a e7 53 43 52 41 50 25 3a 53 43 52 41 50 |$):.SCRAP%:SCRAP| 00000de0 25 3d a3 3a c8 99 22 4f 53 5f 46 69 6c 65 22 2c |%=.:.."OS_File",| 00000df0 36 2c 46 24 0d 04 42 0b 20 20 20 20 20 20 cd 0d |6,F$..B. ..| 00000e00 04 4c 39 20 20 20 c9 39 2c 26 34 30 30 43 31 3a |.L9 .9,&400C1:| 00000e10 4b 25 3d 21 52 25 3a c8 95 4b 25 3a 21 28 4b 25 |K%=!R%:..K%:!(K%| 00000e20 21 34 34 29 3d 21 28 4b 25 21 34 2b 32 38 29 3a |!44)=!(K%!4+28):| 00000e30 4b 25 3d 21 4b 25 3a ce 0d 04 56 35 20 20 20 20 |K%=!K%:...V5 | 00000e40 20 20 4d 49 25 3d a4 4d 56 61 72 28 eb 2c 39 29 | MI%=.MVar(.,9)| 00000e50 84 a4 4d 56 61 72 28 eb 2c 34 29 3c 3c 38 84 a4 |..MVar(.,4)<<8..| 00000e60 4d 56 61 72 28 eb 2c 35 29 3c 3c 31 36 0d 04 60 |MVar(.,5)<<16..`| 00000e70 08 20 20 20 cb 0d 04 6a 05 cb 0d 04 74 06 fd 30 |. ...j....t..0| 00000e80 0d 04 7e 04 0d 04 88 0b dd f2 43 6c 6f 73 65 0d |..~.......Close.| 00000e90 04 92 2b 4c 25 3d 4b 25 21 33 36 3a 4e 25 3d 4c |..+L%=K%!36:N%=L| 00000ea0 25 3a c8 95 4e 25 21 34 30 3a 4c 25 3d 4e 25 3a |%:..N%!40:L%=N%:| 00000eb0 4e 25 3d 4e 25 21 34 30 3a ce 0d 04 9c 0b e7 4b |N%=N%!40:......K| 00000ec0 25 21 34 30 8c 0d 04 a6 1f e3 49 25 3d 31 32 b8 |%!40......I%=12.| 00000ed0 33 32 88 34 3a c8 94 4b 25 21 49 25 2c 4e 25 21 |32.4:..K%!I%,N%!| 00000ee0 49 25 3a ed 0d 04 b0 1c e7 4b 25 21 31 36 3e 30 |I%:......K%!16>0| 00000ef0 4b 25 21 31 36 2d 3d 4e 25 21 38 2d 4b 25 21 38 |K%!16-=N%!8-K%!8| 00000f00 0d 04 ba 1c e7 4e 25 21 31 36 3e 30 4e 25 21 31 |.....N%!16>0N%!1| 00000f10 36 2d 3d 4b 25 21 38 2d 4e 25 21 38 0d 04 c4 3a |6-=K%!8-N%!8...:| 00000f20 c8 99 53 4f 25 2c 26 31 33 43 2c 53 25 2c 22 58 |..SO%,&13C,S%,"X| 00000f30 22 b8 20 52 30 2c 52 31 2c 52 32 2c 52 33 3a c8 |". R0,R1,R2,R3:.| 00000f40 99 53 4f 25 2c 26 31 32 32 2c 4e 25 21 38 2c 22 |.SO%,&122,N%!8,"| 00000f50 58 22 2c 2c 2c 33 0d 04 ce 2d c8 99 53 4f 25 2c |X",,,3...-..SO%,| 00000f60 26 31 33 43 2c 4e 25 21 38 2c 22 58 22 3a c8 99 |&13C,N%!8,"X":..| 00000f70 53 4f 25 2c 26 31 32 32 2c 53 25 2c 22 58 22 2c |SO%,&122,S%,"X",| 00000f80 2c 2c 33 0d 04 d8 3f c8 99 53 4f 25 2c 26 31 33 |,,3...?..SO%,&13| 00000f90 43 2c 53 25 2c 22 58 22 3a c8 99 53 4f 25 2c 26 |C,S%,"X":..SO%,&| 00000fa0 31 32 32 2c 4e 25 21 38 2c 22 58 22 2c 2c 2c 33 |122,N%!8,"X",,,3| 00000fb0 3a c8 99 53 4f 25 2c 52 30 2c 52 31 2c 52 32 2c |:..SO%,R0,R1,R2,| 00000fc0 52 33 0d 04 e2 0f f2 57 68 69 63 68 28 21 42 25 |R3.....Which(!B%| 00000fd0 29 0d 04 ec 05 cd 0d 04 f6 3e 4c 25 21 34 30 3d |)........>L%!40=| 00000fe0 30 3a c8 99 22 57 69 6d 70 5f 43 6c 6f 73 65 57 |0:.."Wimp_CloseW| 00000ff0 69 6e 64 6f 77 22 2c 2c 42 25 3a c8 99 22 57 69 |indow",,B%:.."Wi| 00001000 6d 70 5f 44 65 6c 65 74 65 57 69 6e 64 6f 77 22 |mp_DeleteWindow"| 00001010 2c 2c 42 25 0d 05 00 14 e7 4b 25 21 33 36 3c 3e |,,B%.....K%!36<>| 00001020 4b 25 3a 4d 25 3d 53 25 0d 05 0a 1e 21 49 25 3d |K%:M%=S%....!I%=| 00001030 21 4b 25 3a 45 25 3d 4b 25 2b 4b 53 25 3a 4c 25 |!K%:E%=K%+KS%:L%| 00001040 3d 45 25 2d 4d 25 0d 05 14 0c e7 45 25 3c 4d 54 |=E%-M%.....E%<MT| 00001050 25 8c 0d 05 1e 15 4a 25 3d 52 25 3a 49 25 3d 21 |%.....J%=R%:I%=!| 00001060 4a 25 3a c8 95 49 25 0d 05 28 10 f2 41 64 6a 75 |J%:..I%..(..Adju| 00001070 73 74 28 21 4a 25 29 0d 05 32 3d f2 41 64 6a 75 |st(!J%)..2=.Adju| 00001080 73 74 28 49 25 21 34 29 3a f2 41 64 6a 75 73 74 |st(I%!4):.Adjust| 00001090 28 49 25 21 38 29 3a f2 41 64 6a 75 73 74 28 49 |(I%!8):.Adjust(I| 000010a0 25 21 31 32 29 3a f2 41 64 6a 75 73 74 28 49 25 |%!12):.Adjust(I%| 000010b0 21 31 36 29 0d 05 3c 30 f2 41 64 6a 75 73 74 28 |!16)..<0.Adjust(| 000010c0 49 25 21 33 36 29 3a f2 41 64 6a 75 73 74 28 49 |I%!36):.Adjust(I| 000010d0 25 21 34 30 29 3a f2 41 64 6a 75 73 74 28 49 25 |%!40):.Adjust(I%| 000010e0 21 34 34 29 0d 05 46 10 4a 25 3d 49 25 3a 49 25 |!44)..F.J%=I%:I%| 000010f0 3d 21 4a 25 0d 05 50 05 ce 0d 05 5a 1f f2 4d 6f |=!J%..P....Z..Mo| 00001100 76 65 28 4d 25 2b 4c 25 2c 4d 25 2c 4d 54 25 2d |ve(M%+L%,M%,MT%-| 00001110 28 4d 25 2b 4c 25 29 29 0d 05 64 05 cd 0d 05 6e |(M%+L%))..d....n| 00001120 2e 4d 54 25 2d 3d 4c 25 3a e7 4c 4f 25 c8 99 22 |.MT%-=L%:.LO%.."| 00001130 57 69 6d 70 5f 53 6c 6f 74 53 69 7a 65 22 2c 4d |Wimp_SlotSize",M| 00001140 54 25 2d 26 38 30 30 30 2c 2d 31 0d 05 78 05 e1 |T%-&8000,-1..x..| 00001150 0d 05 82 04 0d 05 8c 20 dd f2 41 64 6a 75 73 74 |....... ..Adjust| 00001160 28 f8 20 50 25 29 3a e7 50 25 3e 4d 25 3a 50 25 |(. P%):.P%>M%:P%| 00001170 2d 3d 4c 25 0d 05 96 05 e1 0d 05 a0 04 0d 05 aa |-=L%............| 00001180 24 dd f2 4f 70 65 6e 3a c8 99 22 57 69 6d 70 5f |$..Open:.."Wimp_| 00001190 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c 42 25 3a |OpenWindow",,B%:| 000011a0 e1 0d 05 b4 04 0d 05 be 0c dd f2 52 65 64 72 61 |...........Redra| 000011b0 77 0d 05 c8 22 c8 99 22 57 69 6d 70 5f 52 65 64 |w...".."Wimp_Red| 000011c0 72 61 77 57 69 6e 64 6f 77 22 2c 2c 42 25 20 b8 |rawWindow",,B% .| 000011d0 20 46 25 0d 05 d2 33 c8 95 46 25 3a 58 25 3d 42 | F%...3..F%:X%=B| 000011e0 25 21 34 2d 42 25 21 32 30 3a 59 25 3d 42 25 21 |%!4-B%!20:Y%=B%!| 000011f0 31 36 2d 42 25 21 32 34 3a f2 52 65 64 72 61 77 |16-B%!24:.Redraw| 00001200 53 70 72 69 74 65 0d 05 dc 24 c8 99 22 57 69 6d |Sprite...$.."Wim| 00001210 70 5f 47 65 74 52 65 63 74 61 6e 67 6c 65 22 2c |p_GetRectangle",| 00001220 2c 42 25 20 b8 20 46 25 3a ce 0d 05 e6 05 e1 0d |,B% . F%:.......| 00001230 05 f0 04 0d 05 fa 0c dd f2 42 75 74 74 6f 6e 0d |.........Button.| 00001240 06 04 0b c8 8e 42 25 21 38 ca 0d 06 0e 11 c9 31 |.....B%!8......1| 00001250 3a f2 4c 61 73 74 46 72 61 6d 65 0d 06 18 3c c9 |:.LastFrame...<.| 00001260 32 3a f2 54 69 63 6b 28 46 52 25 2c 4b 25 21 32 |2:.Tick(FR%,K%!2| 00001270 34 29 3a f2 54 69 63 6b 28 52 45 56 25 2c 4b 25 |4):.Tick(REV%,K%| 00001280 21 32 38 29 3a f2 54 69 63 6b 28 59 4f 59 4f 25 |!28):.Tick(YOYO%| 00001290 2c 4b 25 21 33 32 29 0d 06 22 2d f2 53 65 6c 65 |,K%!32).."-.Sele| 000012a0 63 74 28 4d 44 25 2c eb 3d 4d 25 21 32 38 29 3a |ct(MD%,.=M%!28):| 000012b0 4d 58 25 3d 42 25 21 30 2d 38 30 3a 4d 59 25 3d |MX%=B%!0-80:MY%=| 000012c0 42 25 21 34 0d 06 2c 38 f2 53 65 74 49 28 48 25 |B%!4..,8.SetI(H%| 000012d0 2c 30 2c c3 4d 25 21 32 38 29 3a f2 53 65 74 49 |,0,.M%!28):.SetI| 000012e0 28 48 25 2c 31 2c c3 21 4d 25 29 3a f2 53 65 74 |(H%,1,.!M%):.Set| 000012f0 49 28 48 25 2c 32 2c 22 4e 6f 22 29 0d 06 36 32 |I(H%,2,"No")..62| 00001300 e7 28 4d 25 21 33 36 80 33 29 3d 30 f2 53 65 74 |.(M%!36.3)=0.Set| 00001310 49 28 48 25 2c 33 2c 22 4e 6f 22 29 8b f2 53 65 |I(H%,3,"No")..Se| 00001320 74 49 28 48 25 2c 33 2c 22 59 65 73 22 29 0d 06 |tI(H%,3,"Yes")..| 00001330 40 29 f2 53 65 74 49 28 48 25 2c 34 2c c3 4d 25 |@).SetI(H%,4,.M%| 00001340 21 32 30 29 3a f2 53 65 74 49 28 48 25 2c 35 2c |!20):.SetI(H%,5,| 00001350 c3 4d 25 21 32 34 29 0d 06 4a 19 f2 50 6f 70 75 |.M%!24)..J..Popu| 00001360 70 28 46 4d 45 4e 55 25 29 3a 4d 57 25 3d 57 25 |p(FMENU%):MW%=W%| 00001370 0d 06 54 11 c9 34 3a f2 4e 65 78 74 46 72 61 6d |..T..4:.NextFram| 00001380 65 0d 06 5e 05 cb 0d 06 68 05 e1 0d 06 72 04 0d |e..^....h....r..| 00001390 06 7c 0b dd f2 4d 65 6e 75 73 0d 06 86 0b c8 8e |.|...Menus......| 000013a0 4d 45 4e 25 ca 0d 06 90 11 c9 4d 45 4e 55 25 3a |MEN%......MENU%:| 000013b0 c8 8e 21 42 25 ca 0d 06 9a 14 20 20 20 c9 31 3a |..!B%..... .1:| 000013c0 f2 52 6f 6c 6c 28 31 2c 32 29 0d 06 a4 1e 20 20 |.Roll(1,2).... | 000013d0 20 c9 32 3a c8 99 22 57 69 6d 70 5f 43 6c 6f 73 | .2:.."Wimp_Clos| 000013e0 65 44 6f 77 6e 22 3a e0 0d 06 ae 08 20 20 20 cb |eDown":..... .| 000013f0 0d 06 b8 1e c9 46 4d 45 4e 55 25 3a f2 57 68 69 |.....FMENU%:.Whi| 00001400 63 68 28 4d 57 25 29 3a c8 8e 21 42 25 ca 0d 06 |ch(MW%):..!B%...| 00001410 c2 11 20 20 20 c9 30 3a c8 8e 42 25 21 34 ca 0d |.. .0:..B%!4..| 00001420 06 cc 2e 20 20 20 20 20 20 c9 32 3a 51 25 3d 4b |... .2:Q%=K| 00001430 25 3a c8 95 51 25 21 34 30 3a 51 25 3d 51 25 21 |%:..Q%!40:Q%=Q%!| 00001440 34 30 3a ce 3a f2 53 65 74 46 69 6c 6d 0d 06 d6 |40:.:.SetFilm...| 00001450 1e 20 20 20 20 20 20 4b 25 21 33 36 3d 51 25 21 |. K%!36=Q%!| 00001460 33 36 3a 51 25 21 34 30 3d 4b 25 0d 06 e0 0b 20 |36:Q%!40=K%.... | 00001470 20 20 20 20 20 cb 0d 06 ea 16 20 20 20 c9 31 3a | ..... .1:| 00001480 4b 25 21 32 34 3d ac 4b 25 21 32 34 0d 06 f4 16 |K%!24=.K%!24....| 00001490 20 20 20 c9 32 3a 4b 25 21 32 38 3d ac 4b 25 21 | .2:K%!28=.K%!| 000014a0 32 38 0d 06 fe 16 20 20 20 c9 33 3a 4b 25 21 33 |28.... .3:K%!3| 000014b0 32 3d ac 4b 25 21 33 32 0d 07 08 32 20 20 20 c9 |2=.K%!32...2 .| 000014c0 34 3a 44 50 54 52 25 3d 4d 25 2b 4d 25 21 31 36 |4:DPTR%=M%+M%!16| 000014d0 3a 53 43 52 25 3d 30 3a f2 4e 65 78 74 46 72 61 |:SCR%=0:.NextFra| 000014e0 6d 65 3a 4b 25 21 32 38 3d b9 0d 07 12 3c 20 20 |me:K%!28=....< | 000014f0 20 c9 35 3a 44 50 54 52 25 3d 4d 25 2b 4d 25 21 | .5:DPTR%=M%+M%!| 00001500 31 36 3a 53 43 52 25 3d 30 3a f2 4e 65 77 46 72 |16:SCR%=0:.NewFr| 00001510 61 6d 65 3a f2 4c 61 73 74 46 72 61 6d 65 3a 4b |ame:.LastFrame:K| 00001520 25 21 32 38 3d a3 0d 07 1c 35 20 20 20 c9 36 3a |%!28=....5 .6:| 00001530 57 4d 25 3d eb 3a 4a 25 3d 32 3a f2 46 75 6c 6c |WM%=.:J%=2:.Full| 00001540 28 30 2c 4a 25 29 3a c8 99 22 57 69 6d 70 5f 53 |(0,J%):.."Wimp_S| 00001550 65 74 4d 6f 64 65 22 2c 57 4d 25 0d 07 26 20 20 |etMode",WM%..& | 00001560 20 20 c9 37 3a c8 99 22 57 69 6d 70 5f 53 65 74 | .7:.."Wimp_Set| 00001570 4d 6f 64 65 22 2c 4d 25 21 32 38 0d 07 30 08 20 |Mode",M%!28..0. | 00001580 20 20 cb 0d 07 3a 3c 20 20 20 f2 54 69 63 6b 28 | ...:< .Tick(| 00001590 46 52 25 2c 4b 25 21 32 34 29 3a f2 54 69 63 6b |FR%,K%!24):.Tick| 000015a0 28 52 45 56 25 2c 4b 25 21 32 38 29 3a f2 54 69 |(REV%,K%!28):.Ti| 000015b0 63 6b 28 59 4f 59 4f 25 2c 4b 25 21 33 32 29 0d |ck(YOYO%,K%!32).| 000015c0 07 44 1b 20 20 20 f2 53 65 6c 65 63 74 28 4d 44 |.D. .Select(MD| 000015d0 25 2c eb 3d 4d 25 21 32 38 29 0d 07 4e 05 cb 0d |%,.=M%!28)..N...| 000015e0 07 58 3f c8 99 22 57 69 6d 70 5f 47 65 74 50 6f |.X?.."Wimp_GetPo| 000015f0 69 6e 74 65 72 49 6e 66 6f 22 2c 2c 42 25 3a e7 |interInfo",,B%:.| 00001600 42 25 21 38 80 31 3a f2 50 6f 70 75 70 28 4d 45 |B%!8.1:.Popup(ME| 00001610 4e 25 29 8b f2 50 6f 70 75 70 28 2d 31 29 0d 07 |N%)..Popup(-1)..| 00001620 62 05 e1 0d 07 6c 04 0d 07 76 42 dd f2 57 69 6e |b....l...vB..Win| 00001630 64 6f 77 28 54 24 2c 42 25 21 32 38 2c 21 42 25 |dow(T$,B%!28,!B%| 00001640 2c 42 25 21 34 2c 42 25 21 38 2c 42 25 21 31 32 |,B%!4,B%!8,B%!12| 00001650 2c 42 25 21 34 30 2c 42 25 21 34 34 2c 42 25 21 |,B%!40,B%!44,B%!| 00001660 34 38 2c 42 25 21 35 32 29 0d 07 80 2d 54 24 3d |48,B%!52)...-T$=| 00001670 41 43 45 24 2b 22 20 22 2b 54 24 2b 22 20 22 2b |ACE$+" "+T$+" "+| 00001680 41 43 45 24 3a 54 25 3d 54 54 25 3a 54 54 25 2b |ACE$:T%=TT%:TT%+| 00001690 3d a9 54 24 2b 31 0d 07 8a 22 e7 54 54 25 3e 54 |=.T$+1...".TT%>T| 000016a0 49 54 25 2b 31 30 30 30 3a 54 54 25 3d 54 49 54 |IT%+1000:TT%=TIT| 000016b0 25 3a 54 25 3d 54 54 25 0d 07 94 26 42 25 21 37 |%:T%=TT%...&B%!7| 000016c0 32 3d 54 25 3a 42 25 21 37 36 3d 2d 31 3a 42 25 |2=T%:B%!76=-1:B%| 000016d0 21 38 30 3d a9 54 24 3a 24 54 25 3d 54 24 0d 07 |!80=.T$:$T%=T$..| 000016e0 9e 34 42 25 21 31 36 3d 28 21 42 25 2d 42 25 21 |.4B%!16=(!B%-B%!| 000016f0 38 29 81 32 3a 42 25 21 32 30 3d 28 42 25 21 31 |8).2:B%!20=(B%!1| 00001700 32 2d 42 25 21 34 29 81 32 3a 42 25 21 32 34 3d |2-B%!4).2:B%!24=| 00001710 2d 31 0d 07 a8 23 42 25 21 33 32 3d 26 30 31 30 |-1...#B%!32=&010| 00001720 37 30 32 30 37 3a 42 25 21 33 36 3d 26 30 30 30 |70207:B%!36=&000| 00001730 43 30 31 30 33 0d 07 b2 3d 42 25 21 35 36 3d 25 |C0103...=B%!56=%| 00001740 31 30 30 30 30 31 30 30 31 3a 42 25 21 36 30 3d |100001001:B%!60=| 00001750 32 3c 3c 31 32 3a 42 25 21 36 34 3d 30 3a 42 25 |2<<12:B%!64=0:B%| 00001760 21 36 38 3d 26 31 30 30 30 31 3a 42 25 21 38 34 |!68=&10001:B%!84| 00001770 3d 30 0d 07 bc 22 c8 99 22 57 69 6d 70 5f 43 72 |=0...".."Wimp_Cr| 00001780 65 61 74 65 57 69 6e 64 6f 77 22 2c 2c 42 25 20 |eateWindow",,B% | 00001790 b8 20 57 25 0d 07 c6 3e 21 42 25 3d 57 25 3a c8 |. W%...>!B%=W%:.| 000017a0 99 22 57 69 6d 70 5f 47 65 74 57 69 6e 64 6f 77 |."Wimp_GetWindow| 000017b0 53 74 61 74 65 22 2c 2c 42 25 3a c8 99 22 57 69 |State",,B%:.."Wi| 000017c0 6d 70 5f 4f 70 65 6e 57 69 6e 64 6f 77 22 2c 2c |mp_OpenWindow",,| 000017d0 42 25 0d 07 d0 05 e1 0d 07 da 04 0d 07 e4 19 dd |B%..............| 000017e0 f2 4e 65 78 74 46 72 61 6d 65 3a f2 4e 65 77 46 |.NextFrame:.NewF| 000017f0 72 61 6d 65 0d 07 ee 32 42 25 21 34 3d 2d 33 45 |rame...2B%!4=-3E| 00001800 34 3a 42 25 21 38 3d 2d 33 45 34 3a 42 25 21 31 |4:B%!8=-3E4:B%!1| 00001810 32 3d 33 45 34 3a 42 25 21 31 36 3d 33 45 34 3a |2=3E4:B%!16=3E4:| 00001820 21 42 25 3d 57 25 0d 07 f8 22 c8 99 22 57 69 6d |!B%=W%...".."Wim| 00001830 70 5f 55 70 64 61 74 65 57 69 6e 64 6f 77 22 2c |p_UpdateWindow",| 00001840 2c 42 25 20 b8 20 46 25 0d 08 02 33 c8 95 46 25 |,B% . F%...3..F%| 00001850 3a 58 25 3d 42 25 21 34 2d 42 25 21 32 30 3a 59 |:X%=B%!4-B%!20:Y| 00001860 25 3d 42 25 21 31 36 2d 42 25 21 32 34 3a f2 52 |%=B%!16-B%!24:.R| 00001870 65 64 72 61 77 53 70 72 69 74 65 0d 08 0c 24 c8 |edrawSprite...$.| 00001880 99 22 57 69 6d 70 5f 47 65 74 52 65 63 74 61 6e |."Wimp_GetRectan| 00001890 67 6c 65 22 2c 2c 42 25 20 b8 20 46 25 3a ce 0d |gle",,B% . F%:..| 000018a0 08 16 05 e1 0d 08 20 04 0d 08 2a 0f dd f2 4c 61 |...... ...*...La| 000018b0 73 74 46 72 61 6d 65 0d 08 34 15 e7 44 50 54 52 |stFrame..4..DPTR| 000018c0 25 3c 3e 4d 25 2b 4d 25 21 31 36 8c 0d 08 3e 13 |%<>M%+M%!16...>.| 000018d0 44 50 54 52 25 2d 3d 44 50 54 52 25 21 2d 34 0d |DPTR%-=DPTR%!-4.| 000018e0 08 48 11 e7 28 4d 25 21 33 36 80 33 29 3d 30 8c |.H..(M%!36.3)=0.| 000018f0 0d 08 52 2e 20 20 e7 44 50 54 52 25 3d 4d 25 2b |..R. .DPTR%=M%+| 00001900 4d 25 21 31 36 3a c8 95 21 44 50 54 52 25 3a 44 |M%!16:..!DPTR%:D| 00001910 50 54 52 25 2b 3d 21 44 50 54 52 25 3a ce 0d 08 |PTR%+=!DPTR%:...| 00001920 5c 20 20 20 44 50 54 52 25 2d 3d 44 50 54 52 25 |\ DPTR%-=DPTR%| 00001930 21 2d 34 3a f2 4e 65 78 74 46 72 61 6d 65 0d 08 |!-4:.NextFrame..| 00001940 66 05 cc 0d 08 70 16 20 20 e7 44 50 54 52 25 3d |f....p. .DPTR%=| 00001950 4d 25 2b 4d 25 21 31 36 8c 0d 08 7a 36 20 20 44 |M%+M%!16...z6 D| 00001960 50 54 52 25 2b 3d 21 44 50 54 52 25 3a c8 99 22 |PTR%+=!DPTR%:.."| 00001970 48 6f 75 72 67 6c 61 73 73 5f 4f 6e 22 3a c8 95 |Hourglass_On":..| 00001980 21 28 44 50 54 52 25 2b 21 44 50 54 52 25 29 0d |!(DPTR%+!DPTR%).| 00001990 08 84 2e 20 20 f2 4e 65 77 46 72 61 6d 65 3a ce |... .NewFrame:.| 000019a0 3a c8 99 22 48 6f 75 72 67 6c 61 73 73 5f 4f 66 |:.."Hourglass_Of| 000019b0 66 22 3a f2 4e 65 78 74 46 72 61 6d 65 0d 08 8e |f":.NextFrame...| 000019c0 07 20 20 cc 0d 08 98 3d 20 20 f2 4e 65 78 74 46 |. ....= .NextF| 000019d0 72 61 6d 65 3a 4b 25 21 31 32 3d 44 50 54 52 25 |rame:K%!12=DPTR%| 000019e0 2d 44 50 54 52 25 21 2d 34 3a e7 4b 25 21 31 32 |-DPTR%!-4:.K%!12| 000019f0 3d 4d 25 2b 4d 25 21 31 36 3a 4b 25 21 31 36 3d |=M%+M%!16:K%!16=| 00001a00 30 0d 08 a2 07 20 20 cd 0d 08 ac 05 cd 0d 08 b6 |0.... .........| 00001a10 05 cd 0d 08 c0 05 e1 0d 08 ca 04 0d 08 d4 0e dd |................| 00001a20 f2 4e 65 77 46 72 61 6d 65 0d 08 de 23 e7 21 44 |.NewFrame...#.!D| 00001a30 50 54 52 25 3d 30 3a 44 50 54 52 25 3d 4d 25 2b |PTR%=0:DPTR%=M%+| 00001a40 4d 25 21 31 36 3a 53 43 52 25 3d 30 0d 08 e8 22 |M%!16:SCR%=0..."| 00001a50 c8 99 53 4f 25 2c 26 31 33 43 2c 53 25 2c 22 58 |..SO%,&13C,S%,"X| 00001a60 22 b8 20 52 30 2c 52 31 2c 52 32 2c 52 33 0d 08 |". R0,R1,R2,R3..| 00001a70 f2 2e c8 99 45 58 25 2c 4d 25 21 33 32 2c 44 50 |....EX%,M%!32,DP| 00001a80 54 52 25 2c 53 43 52 25 2c 4d 25 21 34 30 20 b8 |TR%,SCR%,M%!40 .| 00001a90 20 2c 44 50 54 52 25 2c 53 43 52 25 0d 08 fc 16 | ,DPTR%,SCR%....| 00001aa0 e7 28 4d 25 21 33 36 80 33 29 3d 30 53 43 52 25 |.(M%!36.3)=0SCR%| 00001ab0 3d 30 0d 09 06 15 c8 99 53 4f 25 2c 52 30 2c 52 |=0......SO%,R0,R| 00001ac0 31 2c 52 32 2c 52 33 0d 09 10 1a 4b 25 21 31 32 |1,R2,R3....K%!12| 00001ad0 3d 44 50 54 52 25 3a 4b 25 21 31 36 3d 53 43 52 |=DPTR%:K%!16=SCR| 00001ae0 25 0d 09 1a 05 e1 0d 09 24 04 0d 09 2e 10 dd f2 |%.......$.......| 00001af0 4d 61 6b 65 53 70 72 69 74 65 0d 09 38 3d 58 52 |MakeSprite..8=XR| 00001b00 25 3d a4 4d 56 61 72 28 4d 25 21 32 38 2c 34 29 |%=.MVar(M%!28,4)| 00001b10 3a 59 52 25 3d a4 4d 56 61 72 28 4d 25 21 32 38 |:YR%=.MVar(M%!28| 00001b20 2c 35 29 3a 4c 42 25 3d a4 4d 56 61 72 28 4d 25 |,5):LB%=.MVar(M%| 00001b30 21 32 38 2c 31 30 29 0d 09 42 34 53 53 25 3d 28 |!28,10)..B4SS%=(| 00001b40 28 28 4d 25 21 32 30 3e 3e 58 52 25 29 2a 28 4d |((M%!20>>XR%)*(M| 00001b50 25 21 32 34 3e 3e 59 52 25 29 3e 3e 33 2d 4c 42 |%!24>>YR%)>>3-LB| 00001b60 25 29 2b 31 30 30 30 29 80 ac 33 0d 09 4c 40 53 |%)+1000)..3..L@S| 00001b70 25 3d a4 41 6c 6c 6f 63 28 53 53 25 29 3a 21 53 |%=.Alloc(SS%):!S| 00001b80 25 3d 53 53 25 3a 53 25 21 34 3d 30 3a 53 25 21 |%=SS%:S%!4=0:S%!| 00001b90 38 3d 31 36 3a 53 25 21 31 32 3d 31 36 3a c8 99 |8=16:S%!12=16:..| 00001ba0 53 4f 25 2c 26 31 30 39 2c 53 25 0d 09 56 33 c8 |SO%,&109,S%..V3.| 00001bb0 99 53 4f 25 2c 26 31 30 46 2c 53 25 2c 22 58 22 |.SO%,&10F,S%,"X"| 00001bc0 2c 30 2c 4d 25 21 32 30 3e 3e 58 52 25 2c 4d 25 |,0,M%!20>>XR%,M%| 00001bd0 21 32 34 3e 3e 59 52 25 2c 4d 25 21 32 38 0d 09 |!24>>YR%,M%!28..| 00001be0 60 05 e1 0d 09 6a 04 0d 09 74 12 dd f2 52 65 64 |`....j...t...Red| 00001bf0 72 61 77 53 70 72 69 74 65 0d 09 7e 13 e7 21 43 |rawSprite..~..!C| 00001c00 54 25 3c 3e eb 3a f2 54 61 62 6c 65 0d 09 88 0f |T%<>.:.Table....| 00001c10 e7 4d 49 25 3d 4b 25 21 34 38 8c 0d 09 92 1e 20 |.MI%=K%!48..... | 00001c20 20 20 c8 99 53 4f 25 2c 26 31 32 32 2c 53 25 2c | ..SO%,&122,S%,| 00001c30 22 58 22 2c 58 25 2c 59 25 0d 09 9c 05 cc 0d 09 |"X",X%,Y%.......| 00001c40 a6 28 20 20 20 c8 99 53 4f 25 2c 26 31 33 34 2c |.( ..SO%,&134,| 00001c50 53 25 2c 22 58 22 2c 58 25 2c 59 25 2c 30 2c 30 |S%,"X",X%,Y%,0,0| 00001c60 2c 43 54 25 2b 34 0d 09 b0 05 cd 0d 09 ba 05 e1 |,CT%+4..........| 00001c70 0d 09 c4 04 0d 09 ce 12 dd f2 4c 6f 61 64 46 69 |..........LoadFi| 00001c80 6c 6d 28 46 24 29 0d 09 d8 45 c8 99 22 4f 53 5f |lm(F$)...E.."OS_| 00001c90 46 69 6c 65 22 2c 35 2c 46 24 20 b8 20 4f 25 2c |File",5,F$ . O%,| 00001ca0 2c 54 25 2c 2c 4c 25 3a e7 4f 25 3c 3e 31 85 31 |,T%,,L%:.O%<>1.1| 00001cb0 2c 22 43 61 6e 27 74 20 66 69 6e 64 20 66 69 6c |,"Can't find fil| 00001cc0 6d 20 27 22 2b 46 24 2b 22 27 22 0d 09 e2 37 4d |m '"+F$+"'"...7M| 00001cd0 25 3d a4 41 6c 6c 6f 63 28 4c 25 29 3a c8 99 22 |%=.Alloc(L%):.."| 00001ce0 4f 53 5f 46 69 6c 65 22 2c 26 46 46 2c 46 24 2c |OS_File",&FF,F$,| 00001cf0 4d 25 3a 43 54 25 3d a4 41 6c 6c 6f 63 28 32 36 |M%:CT%=.Alloc(26| 00001d00 30 29 0d 09 ec 05 e1 0d 09 f6 04 0d 0a 00 13 dd |0)..............| 00001d10 f2 4c 6f 61 64 41 46 69 6c 6d 28 45 24 29 0d 0a |.LoadAFilm(E$)..| 00001d20 0a 1a f2 4c 6f 61 64 46 69 6c 6d 28 45 24 29 3a |...LoadFilm(E$):| 00001d30 f2 53 65 74 46 69 6c 6d 0d 0a 14 05 e1 0d 0a 1e |.SetFilm........| 00001d40 04 0d 0a 28 19 dd f2 53 65 74 46 69 6c 6d 3a f2 |...(...SetFilm:.| 00001d50 4d 61 6b 65 53 70 72 69 74 65 0d 0a 32 1a e7 57 |MakeSprite..2..W| 00001d60 54 25 2d 4d 25 21 32 34 3c 31 38 30 3a 57 54 25 |T%-M%!24<180:WT%| 00001d70 3d 39 35 30 0d 0a 3c 46 f2 57 69 6e 64 6f 77 28 |=950..<F.Window(| 00001d80 24 28 4d 25 2b 34 29 2c 25 31 31 31 31 2c 33 30 |$(M%+4),%1111,30| 00001d90 30 2c 57 54 25 2d 4d 25 21 32 34 2c 4d 25 21 32 |0,WT%-M%!24,M%!2| 00001da0 30 2b 33 30 30 2c 57 54 25 2c 30 2c 30 2c 4d 25 |0+300,WT%,0,0,M%| 00001db0 21 32 30 2c 4d 25 21 32 34 29 0d 0a 46 3a 57 54 |!20,M%!24)..F:WT| 00001dc0 25 2d 3d 34 38 3a 44 50 54 52 25 3d 4d 25 2b 4d |%-=48:DPTR%=M%+M| 00001dd0 25 21 31 36 3a 53 43 52 25 3d 30 3a 43 4d 25 3d |%!16:SCR%=0:CM%=| 00001de0 4d 25 21 32 38 3a 4b 25 3d a4 41 6c 6c 6f 63 28 |M%!28:K%=.Alloc(| 00001df0 4b 53 25 29 0d 0a 50 36 f2 4e 65 78 74 46 72 61 |KS%)..P6.NextFra| 00001e00 6d 65 3a 21 4b 25 3d 21 52 25 3a 21 52 25 3d 4b |me:!K%=!R%:!R%=K| 00001e10 25 3a 4b 25 21 34 3d 4d 25 3a 4b 25 21 38 3d 53 |%:K%!4=M%:K%!8=S| 00001e20 25 3a 4b 25 21 32 30 3d 57 25 0d 0a 5a 41 4b 25 |%:K%!20=W%..ZAK%| 00001e30 21 32 34 3d b9 3a 4b 25 21 32 38 3d b9 3a 4b 25 |!24=.:K%!28=.:K%| 00001e40 21 33 32 3d b9 3a 4b 25 21 33 36 3d 4b 25 3a 4b |!32=.:K%!36=K%:K| 00001e50 25 21 34 30 3d 30 3a 4b 25 21 34 34 3d 43 54 25 |%!40=0:K%!44=CT%| 00001e60 3a 21 43 54 25 3d 4d 25 21 32 38 0d 0a 64 3d 4b |:!CT%=M%!28..d=K| 00001e70 25 21 34 38 3d a4 4d 56 61 72 28 4d 25 21 32 38 |%!48=.MVar(M%!28| 00001e80 2c 39 29 84 a4 4d 56 61 72 28 4d 25 21 32 38 2c |,9)..MVar(M%!28,| 00001e90 34 29 3c 3c 38 84 a4 4d 56 61 72 28 4d 25 21 32 |4)<<8..MVar(M%!2| 00001ea0 38 2c 35 29 3c 3c 31 36 0d 0a 6e 05 e1 0d 0a 78 |8,5)<<16..n....x| 00001eb0 04 0d 0a 82 3e dd a4 54 65 6d 70 28 54 24 29 3a |....>..Temp(T$):| 00001ec0 c8 99 22 57 69 6d 70 5f 4c 6f 61 64 54 65 6d 70 |.."Wimp_LoadTemp| 00001ed0 6c 61 74 65 22 2c 2c 42 25 2c 43 25 2c 51 25 2b |late",,B%,C%,Q%+| 00001ee0 31 30 30 30 2c 2d 31 2c 54 24 b8 2c 2c 43 25 0d |1000,-1,T$.,,C%.| 00001ef0 0a 8c 24 c8 99 22 57 69 6d 70 5f 43 72 65 61 74 |..$.."Wimp_Creat| 00001f00 65 57 69 6e 64 6f 77 22 2c 2c 42 25 b8 54 25 3a |eWindow",,B%.T%:| 00001f10 3d 54 25 0d 0a 96 04 0d 0a a0 0f dd f2 4d 65 6e |=T%..........Men| 00001f20 75 54 28 54 24 29 0d 0a aa 21 24 56 25 3d c0 54 |uT(T$)...!$V%=.T| 00001f30 24 2c 31 31 29 3a 56 25 21 31 36 3d 31 36 2a 28 |$,11):V%!16=16*(| 00001f40 a9 24 56 25 2b 31 29 0d 0a b4 2b 56 25 21 32 30 |.$V%+1)...+V%!20| 00001f50 3d 34 34 3a 56 25 21 31 32 3d 26 30 30 30 37 30 |=44:V%!12=&00070| 00001f60 32 30 37 3a 56 25 21 32 34 3d 30 3a 56 25 2b 3d |207:V%!24=0:V%+=| 00001f70 32 38 0d 0a be 05 e1 0d 0a c8 04 0d 0a d2 12 dd |28..............| 00001f80 f2 4d 65 6e 75 45 28 54 24 2c 46 25 29 0d 0a dc |.MenuE(T$,F%)...| 00001f90 3a 24 28 56 25 2b 31 32 29 3d c0 54 24 2c 31 31 |:$(V%+12)=.T$,11| 00001fa0 29 3a 21 56 25 3d 46 25 3a 56 25 21 34 3d 2d 31 |):!V%=F%:V%!4=-1| 00001fb0 3a 56 25 21 38 3d 31 84 25 31 31 31 3c 3c 32 34 |:V%!8=1.%111<<24| 00001fc0 3a 56 25 2b 3d 32 34 0d 0a e6 05 e1 0d 0a f0 04 |:V%+=24.........| 00001fd0 0d 0a fa 2a dd f2 54 69 63 6b 28 54 25 2c 46 25 |...*..Tick(T%,F%| 00001fe0 29 3a e7 46 25 3a 21 54 25 3d 21 54 25 80 ac 31 |):.F%:!T%=!T%..1| 00001ff0 8b 21 54 25 3d 21 54 25 84 31 0d 0b 04 05 e1 0d |.!T%=!T%.1......| 00002000 0b 0e 3a dd f2 53 65 6c 65 63 74 28 54 25 2c 46 |..:..Select(T%,F| 00002010 25 29 3a e7 46 25 3a 54 25 21 38 3d 54 25 21 38 |%):.F%:T%!8=T%!8| 00002020 84 31 3c 3c 32 32 8b 54 25 21 38 3d 54 25 21 38 |.1<<22.T%!8=T%!8| 00002030 80 ac 28 31 3c 3c 32 32 29 0d 0b 18 05 e1 0d 0b |..(1<<22).......| 00002040 22 2a dd a4 5a 53 28 49 25 29 ea 41 24 3a f5 41 |"*..ZS(I%).A$:.A| 00002050 24 2b 3d bd 3f 49 25 3a 49 25 2b 3d 31 3a fd 3f |$+=.?I%:I%+=1:.?| 00002060 49 25 3d 30 3a 3d 41 24 0d 0b 2c 04 0d 0b 36 2e |I%=0:=A$..,...6.| 00002070 dd a4 41 6c 6c 6f 63 28 4c 25 29 3a ea 45 25 3a |..Alloc(L%):.E%:| 00002080 e7 4c 4f 25 45 25 3d 4d 54 25 2b 4c 25 2d 26 38 |.LO%E%=MT%+L%-&8| 00002090 30 30 30 20 8b 45 25 3d 2d 31 0d 0b 40 28 c8 99 |000 .E%=-1..@(..| 000020a0 22 57 69 6d 70 5f 53 6c 6f 74 53 69 7a 65 22 2c |"Wimp_SlotSize",| 000020b0 45 25 2c 2d 31 b8 54 25 3a 54 25 2b 3d 26 38 30 |E%,-1.T%:T%+=&80| 000020c0 30 30 0d 0b 4a 26 e7 54 25 3c 4d 54 25 2b 4c 25 |00..J&.T%<MT%+L%| 000020d0 85 31 2c 22 49 6e 73 75 66 66 69 63 69 65 6e 74 |.1,"Insufficient| 000020e0 20 6d 65 6d 6f 72 79 22 0d 0b 54 13 4d 54 25 2b | memory"..T.MT%+| 000020f0 3d 4c 25 3a 3d 4d 54 25 2d 4c 25 0d 0b 5e 04 0d |=L%:=MT%-L%..^..| 00002100 0b 68 22 dd f2 57 68 69 63 68 28 54 25 29 3a 57 |.h"..Which(T%):W| 00002110 25 3d 54 25 3a 4a 25 3d 52 25 3a 4b 25 3d 21 4a |%=T%:J%=R%:K%=!J| 00002120 25 0d 0b 72 49 c8 95 4b 25 3a e7 57 25 3d 4b 25 |%..rI..K%:.W%=K%| 00002130 21 32 30 3a 4d 25 3d 4b 25 21 34 3a 53 25 3d 4b |!20:M%=K%!4:S%=K| 00002140 25 21 38 3a 44 50 54 52 25 3d 4b 25 21 31 32 3a |%!8:DPTR%=K%!12:| 00002150 53 43 52 25 3d 4b 25 21 31 36 3a 43 54 25 3d 4b |SCR%=K%!16:CT%=K| 00002160 25 21 34 34 3a 49 25 3d 4a 25 0d 0b 7c 19 4a 25 |%!44:I%=J%..|.J%| 00002170 3d 4b 25 3a 4b 25 3d 21 4a 25 3a ce 3a 4b 25 3d |=K%:K%=!J%:.:K%=| 00002180 21 49 25 0d 0b 86 05 e1 0d 0b 90 04 0d 0b 9a 1b |!I%.............| 00002190 dd f2 4d 6f 76 65 28 41 25 2c 42 25 2c 43 25 29 |..Move(A%,B%,C%)| 000021a0 3a d6 4d 56 25 3a e1 0d 0b a4 04 0d 0b ae 39 dd |:.MV%:........9.| 000021b0 f2 50 6f 70 75 70 28 4e 25 29 3a c8 99 22 57 69 |.Popup(N%):.."Wi| 000021c0 6d 70 5f 43 72 65 61 74 65 4d 65 6e 75 22 2c 2c |mp_CreateMenu",,| 000021d0 4e 25 2c 4d 58 25 2c 4d 59 25 3a 4d 45 4e 25 3d |N%,MX%,MY%:MEN%=| 000021e0 4e 25 3a e1 0d 0b b8 04 0d 0b c2 3a dd f2 53 65 |N%:........:..Se| 000021f0 74 49 28 57 25 2c 49 25 2c 53 24 29 3a ea 46 25 |tI(W%,I%,S$):.F%| 00002200 3a 21 42 25 3d 57 25 3a c8 99 22 57 69 6d 70 5f |:!B%=W%:.."Wimp_| 00002210 47 65 74 57 69 6e 64 6f 77 49 6e 66 6f 22 2c 2c |GetWindowInfo",,| 00002220 42 25 0d 0b cc 34 e7 49 25 3e 3d 30 3a 49 25 3d |B%...4.I%>=0:I%=| 00002230 42 25 2b 31 31 32 2b 49 25 2a 33 32 3a 46 25 3d |B%+112+I%*32:F%=| 00002240 49 25 2d 34 8b 49 25 3d 42 25 2b 37 36 3a 46 25 |I%-4.I%=B%+76:F%| 00002250 3d 42 25 2b 36 30 0d 0b d6 2a e7 21 46 25 80 31 |=B%+60...*.!F%.1| 00002260 3c 3c 38 3a 24 21 49 25 3d c0 53 24 2c 49 25 21 |<<8:$!I%=.S$,I%!| 00002270 38 2d 31 29 8b 24 49 25 3d c0 53 24 2c 31 31 29 |8-1).$I%=.S$,11)| 00002280 0d 0b e0 05 e1 0d 0b ea 04 0d 0b f4 20 dd f2 52 |............ ..R| 00002290 6f 6c 6c 28 52 43 25 2c 55 25 29 3a e7 52 43 25 |oll(RC%,U%):.RC%| 000022a0 3c 3d 30 3a 52 43 25 3d 31 0d 0b fe 28 57 4d 25 |<=0:RC%=1...(WM%| 000022b0 3d eb 3a f5 3a 49 25 3d 30 3a 46 4b 25 3d 30 3a |=.:.:I%=0:FK%=0:| 000022c0 c8 95 46 4b 25 3c 3e 21 52 25 80 49 25 3c 3e 32 |..FK%<>!R%.I%<>2| 000022d0 37 0d 0c 08 25 4b 25 3d 21 52 25 3a c8 95 21 4b |7...%K%=!R%:..!K| 000022e0 25 3c 3e 46 4b 25 3a 4b 25 3d 21 4b 25 3a ce 3a |%<>FK%:K%=!K%:.:| 000022f0 46 4b 25 3d 4b 25 0d 0c 12 3d 4d 25 3d 4b 25 21 |FK%=K%...=M%=K%!| 00002300 34 3a 53 25 3d 4b 25 21 38 3a 44 50 54 52 25 3d |4:S%=K%!8:DPTR%=| 00002310 4b 25 21 31 32 3a 53 43 52 25 3d 4b 25 21 31 36 |K%!12:SCR%=K%!16| 00002320 3a 57 25 3d 4b 25 21 32 30 3a 43 54 25 3d 4b 25 |:W%=K%!20:CT%=K%| 00002330 21 34 34 0d 0c 1c 1a f2 46 75 6c 6c 28 52 43 25 |!44.....Full(RC%| 00002340 2c 55 25 29 3a 4b 25 3d 21 4b 25 3a ce 0d 0c 26 |,U%):K%=!K%:...&| 00002350 1f fd 49 25 3d 32 37 3a c8 99 22 57 69 6d 70 5f |..I%=27:.."Wimp_| 00002360 53 65 74 4d 6f 64 65 22 2c 57 4d 25 0d 0c 30 05 |SetMode",WM%..0.| 00002370 e1 0d 0c 3a 04 0d 0c 44 1b dd f2 46 75 6c 6c 28 |...:...D...Full(| 00002380 52 4c 25 2c f8 20 57 25 29 3a ea 4a 25 3a ea 85 |RL%,. W%):.J%:..| 00002390 0d 0c 4e 3d 46 57 25 3d 4d 25 21 32 30 3a 46 48 |..N=FW%=M%!20:FH| 000023a0 25 3d 4d 25 21 32 34 3a 46 4d 25 3d 4d 25 21 32 |%=M%!24:FM%=M%!2| 000023b0 38 3a 46 57 32 25 3d 46 57 25 81 32 80 ac 33 3a |8:FW2%=FW%.2..3:| 000023c0 46 48 32 25 3d 46 48 25 81 32 80 ac 33 0d 0c 58 |FH2%=FH%.2..3..X| 000023d0 17 54 25 3d b9 3a ea 85 3a ee 85 ea 3a f7 85 3a |.T%=.:..:...:..:| 000023e0 54 25 3d a3 0d 0c 62 18 e7 54 25 eb 46 4d 25 2b |T%=...b..T%.FM%+| 000023f0 31 32 38 3a f7 85 20 8b eb 46 4d 25 0d 0c 6c 26 |128:.. ..FM%..l&| 00002400 ee 85 ea 3a f7 85 3a c8 99 22 57 69 6d 70 5f 53 |...:..:.."Wimp_S| 00002410 65 74 4d 6f 64 65 22 2c 57 4d 25 3a 85 20 9f 2c |etMode",WM%:. .,| 00002420 f6 24 0d 0c 76 2b e7 eb 3c 3e 46 4d 25 85 31 2c |.$..v+..<>FM%.1,| 00002430 22 4d 6f 64 65 20 66 6f 72 20 66 69 6c 6d 20 6e |"Mode for film n| 00002440 6f 74 20 61 76 61 69 6c 61 62 6c 65 22 0d 0c 80 |ot available"...| 00002450 12 e7 a4 4d 56 61 72 28 eb 2c 39 29 3d 32 8c 0d |...MVar(.,9)=2..| 00002460 0c 8a 26 45 25 3d 42 25 2b 31 30 30 3a c8 99 22 |..&E%=B%+100:.."| 00002470 57 69 6d 70 5f 52 65 61 64 50 61 6c 65 74 74 65 |Wimp_ReadPalette| 00002480 22 2c 2c 45 25 0d 0c 94 2d e3 49 25 3d 30 b8 31 |",,E%...-.I%=0.1| 00002490 35 3a ef 31 39 2c 49 25 2c 31 36 2c 45 25 3f 31 |5:.19,I%,16,E%?1| 000024a0 2c 45 25 3f 32 2c 45 25 3f 33 3a 45 25 2b 3d 34 |,E%?2,E%?3:E%+=4| 000024b0 3a ed 0d 0c 9e 05 cd 0d 0c a8 26 87 3a 45 25 3d |:.........&.:E%=| 000024c0 31 3a f2 46 3a db 3a f2 46 3a db 3a 46 25 3d 52 |1:.F:.:.F:.:F%=R| 000024d0 4c 25 3e 30 3a e7 4d 4f 25 c8 97 ee 32 0d 0c b2 |L%>0:.MO%...2...| 000024e0 38 ef 32 34 2c 36 34 30 2d 46 57 32 25 3b 35 31 |8.24,640-FW2%;51| 000024f0 32 2d 46 48 32 25 3b 36 34 30 2d 46 57 32 25 2b |2-FH2%;640-FW2%+| 00002500 46 57 25 2d 31 3b 35 31 32 2d 46 48 32 25 2b 46 |FW%-1;512-FH2%+F| 00002510 48 25 2d 31 3b 0d 0c bc 28 44 25 3d 4d 25 2b 4d |H%-1;...(D%=M%+M| 00002520 25 21 31 36 3a 43 25 3d 30 3a 63 25 3d 2d 31 3a |%!16:C%=0:c%=-1:| 00002530 43 4d 25 3d 46 4d 25 3a f2 45 3a f2 46 0d 0c c6 |CM%=FM%:.E:.F...| 00002540 06 f5 f5 0d 0c d0 31 49 25 3d a6 30 3a c8 99 36 |......1I%=.0:..6| 00002550 2c 26 42 30 3a f2 52 3a f5 c8 99 36 2c 26 42 30 |,&B0:.R:...6,&B0| 00002560 2c 2c 32 35 35 b8 2c 54 25 3a fd 54 25 3c 32 35 |,,255.,T%:.T%<25| 00002570 37 2d 57 25 0d 0c da 2b fd 49 25 3d 32 37 84 28 |7-W%...+.I%=27.(| 00002580 52 4c 25 80 21 44 25 3d 30 29 3a 52 4c 25 2d 3d |RL%.!D%=0):RL%-=| 00002590 31 3a fd 52 4c 25 3c 3d 30 84 49 25 3d 32 37 0d |1:.RL%<=0.I%=27.| 000025a0 0c e4 06 f7 85 0d 0c ee 05 e1 0d 0c f8 04 0d 0d |................| 000025b0 02 0e dd f2 52 3a e7 4d 4f 25 f2 43 0d 0d 0c 11 |....R:.MO%.C....| 000025c0 e7 46 25 8b e7 49 25 3c 30 49 25 3d a5 0d 0d 16 |.F%..I%<0I%=....| 000025d0 15 e7 49 25 3c 33 32 80 ac 42 42 43 25 f2 45 3a |..I%<32..BBC%.E:| 000025e0 f2 46 0d 0d 20 0e e7 49 25 3c 30 80 46 25 3a e1 |.F.. ..I%<0.F%:.| 000025f0 0d 0d 2a 1d c8 99 36 2c 31 35 3a e7 42 42 43 25 |..*...6,15:.BBC%| 00002600 80 49 25 3c 3e 32 49 25 3d 97 22 2b 22 0d 0d 34 |.I%<>2I%=."+"..4| 00002610 29 e7 49 25 3d 32 3a 42 42 43 25 3d ac 42 42 43 |).I%=2:BBC%=.BBC| 00002620 25 3a 46 25 3d a3 3a 49 25 3d 97 22 46 22 3a e7 |%:F%=.:I%=."F":.| 00002630 42 42 43 25 ef 37 0d 0d 3e 13 e7 49 25 3d 33 32 |BBC%.7..>..I%=32| 00002640 3a 46 25 3d ac 46 25 3a e1 0d 0d 48 11 e7 49 25 |:F%=.F%:...H..I%| 00002650 3d 31 33 3a 46 25 3d a3 3a e1 0d 0d 52 0a c8 8e |=13:F%=.:...R...| 00002660 bd 49 25 ca 0d 0d 5c 2b c9 22 46 22 2c 22 66 22 |.I%...\+."F","f"| 00002670 3a 44 25 3d 4d 25 2b 4d 25 21 31 36 3a 43 25 3d |:D%=M%+M%!16:C%=| 00002680 30 3a 63 25 3d 2d 31 3a f2 45 3a f2 46 3a e1 0d |0:c%=-1:.E:.F:..| 00002690 0d 66 14 c9 22 4c 22 2c 22 6c 22 2c 22 73 22 2c |.f.."L","l","s",| 000026a0 22 53 22 0d 0d 70 11 e7 28 4d 25 21 33 36 80 33 |"S"..p..(M%!36.3| 000026b0 29 3d 30 8c 0d 0d 7a 2c 20 20 20 e7 21 44 25 c8 |)=0...z, .!D%.| 000026c0 95 21 28 44 25 2b 21 44 25 29 3a 44 25 2b 3d 21 |.!(D%+!D%):D%+=!| 000026d0 44 25 3a 63 25 2b 3d 31 3a ce 3a f2 45 3a f2 46 |D%:c%+=1:.:.E:.F| 000026e0 0d 0d 84 05 cc 0d 0d 8e 19 20 20 20 e7 21 44 25 |......... .!D%| 000026f0 3a c8 95 21 44 25 3a f2 45 3a ce 3a f2 46 0d 0d |:..!D%:.E:.:.F..| 00002700 98 05 cd 0d 0d a2 1b e7 bd 49 25 3d 22 73 22 84 |.........I%="s".| 00002710 bd 49 25 3d 22 53 22 3a 52 4c 25 3d 2d 31 0d 0d |.I%="S":RL%=-1..| 00002720 ac 05 e1 0d 0d b6 1b c9 22 43 22 2c 22 63 22 3a |........"C","c":| 00002730 e7 4d 4f 25 3a c8 97 87 20 8b c8 97 ee 32 0d 0d |.MO%:... ....2..| 00002740 c0 0e 4d 4f 25 3d ac 4d 4f 25 3a e1 0d 0d ca 36 |..MO%=.MO%:....6| 00002750 c9 22 30 22 2c 22 31 22 2c 22 32 22 2c 22 33 22 |."0","1","2","3"| 00002760 2c 22 34 22 2c 22 35 22 2c 22 36 22 2c 22 37 22 |,"4","5","6","7"| 00002770 2c 22 38 22 2c 22 39 22 3a 57 25 3d bb bd 49 25 |,"8","9":W%=..I%| 00002780 3a e1 0d 0d d4 12 c9 22 2b 22 3a e7 21 44 25 f2 |:......"+":.!D%.| 00002790 45 3a f2 46 0d 0d de 0a 46 25 3d a3 3a e1 0d 0d |E:.F....F%=.:...| 000027a0 e8 17 c9 22 2d 22 3a e7 44 25 3d 4d 25 2b 4d 25 |..."-":.D%=M%+M%| 000027b0 21 31 36 3a e1 0d 0d f2 1f e7 44 25 3e 4d 25 2b |!16:......D%>M%+| 000027c0 4d 25 21 31 36 44 25 2d 3d 44 25 21 2d 34 3a 63 |M%!16D%-=D%!-4:c| 000027d0 25 2d 3d 31 0d 0d fc 31 e7 28 4d 25 21 33 36 80 |%-=1...1.(M%!36.| 000027e0 33 29 3c 3e 30 8b e7 44 25 3e 4d 25 2b 4d 25 21 |3)<>0..D%>M%+M%!| 000027f0 31 36 44 25 2d 3d 44 25 21 2d 34 3a 63 25 2d 3d |16D%-=D%!-4:c%-=| 00002800 31 3a 8b 3a e1 0d 0e 06 1b e7 44 25 3d 4d 25 2b |1:.:......D%=M%+| 00002810 4d 25 21 31 36 3a 43 25 3d 30 3a 63 25 3d 2d 31 |M%!16:C%=0:c%=-1| 00002820 0d 0e 10 0e f2 45 3a f2 46 3a 46 25 3d a3 0d 0e |.....E:.F:F%=...| 00002830 1a 38 e7 28 4d 25 21 33 36 80 33 29 3d 30 8b 44 |.8.(M%!36.3)=0.D| 00002840 25 2d 3d 44 25 21 2d 34 3a 63 25 2d 3d 31 3a e7 |%-=D%!-4:c%-=1:.| 00002850 44 25 3d 4d 25 2b 4d 25 21 31 36 3a 43 25 3d 30 |D%=M%+M%!16:C%=0| 00002860 3a 63 25 3d 2d 31 0d 0e 24 05 e1 0d 0e 2e 0a c9 |:c%=-1..$.......| 00002870 bd 32 37 3a e1 0d 0e 38 05 cb 0d 0e 42 08 ef 37 |.27:...8....B..7| 00002880 3a e1 0d 0e 4c 04 0d 0e 56 27 dd f2 46 3a c8 99 |:...L...V'..F:..| 00002890 36 2c 26 37 31 2c 45 25 3a 45 25 3d 33 2d 45 25 |6,&71,E%:E%=3-E%| 000028a0 3a c8 99 36 2c 26 37 30 2c 45 25 3a e1 0d 0e 60 |:..6,&70,E%:...`| 000028b0 25 dd f2 45 3a e7 21 44 25 3d 30 3a 44 25 3d 4d |%..E:.!D%=0:D%=M| 000028c0 25 2b 4d 25 21 31 36 3a 43 25 3d 30 3a 63 25 3d |%+M%!16:C%=0:c%=| 000028d0 2d 31 0d 0e 6a 2a 63 25 2b 3d 31 3a c8 99 45 58 |-1..j*c%+=1:..EX| 000028e0 25 2c 4d 25 21 33 32 2c 44 25 2c 43 25 2c 4d 25 |%,M%!32,D%,C%,M%| 000028f0 21 34 30 20 b8 20 2c 44 25 2c 43 25 0d 0e 74 14 |!40 . ,D%,C%..t.| 00002900 e7 28 4d 25 21 33 36 80 33 29 3d 30 43 25 3d 30 |.(M%!36.3)=0C%=0| 00002910 0d 0e 7e 05 e1 0d 0e 88 04 0d 0e 92 2a dd f2 43 |..~.........*..C| 00002920 3a c8 99 53 4f 25 2c 26 31 33 43 2c 53 50 52 25 |:..SO%,&13C,SPR%| 00002930 2c 22 43 22 b8 20 52 30 2c 52 31 2c 52 32 2c 52 |,"C". R0,R1,R2,R| 00002940 33 3a db 0d 0e 9c 39 fb 32 3a fb 31 32 39 3a f1 |3:....9.2:.129:.| 00002950 3b 63 25 3b 3a c8 99 53 4f 25 2c 52 30 2c 52 31 |;c%;:..SO%,R0,R1| 00002960 2c 52 32 2c 52 33 3a c8 99 53 4f 25 2c 26 31 32 |,R2,R3:..SO%,&12| 00002970 34 2c 53 50 52 25 2c 22 43 22 2c 32 0d 0e a6 05 |4,SPR%,"C",2....| 00002980 e1 0d 0e b0 04 0d 0e ba 0b dd f2 54 61 62 6c 65 |...........Table| 00002990 0d 0e c4 41 e7 a4 4d 56 61 72 28 4d 25 21 32 38 |...A..MVar(M%!28| 000029a0 2c 39 29 3d 32 3a c8 99 22 57 69 6d 70 5f 52 65 |,9)=2:.."Wimp_Re| 000029b0 61 64 50 61 6c 65 74 74 65 22 2c 2c 42 25 2b 31 |adPalette",,B%+1| 000029c0 30 30 3a 45 25 3d 42 25 2b 31 30 30 8b 45 25 3d |00:E%=B%+100.E%=| 000029d0 30 0d 0e ce 3b c8 99 22 43 6f 6c 6f 75 72 54 72 |0...;.."ColourTr| 000029e0 61 6e 73 5f 53 65 6c 65 63 74 54 61 62 6c 65 22 |ans_SelectTable"| 000029f0 2c 4d 25 21 32 38 2c 45 25 2c 2d 31 2c 2d 31 2c |,M%!28,E%,-1,-1,| 00002a00 43 54 25 2b 34 3a 21 43 54 25 3d eb 0d 0e d8 05 |CT%+4:!CT%=.....| 00002a10 e1 0d 0e e2 04 0d 0e ec 0b dd f2 45 72 72 6f 72 |...........Error| 00002a20 0d 0e f6 45 21 42 25 3d 9f 3a 24 28 42 25 2b 34 |...E!B%=.:$(B%+4| 00002a30 29 3d f6 24 3a 56 25 3d 32 3a c8 99 22 58 57 69 |)=.$:V%=2:.."XWi| 00002a40 6d 70 5f 52 65 70 6f 72 74 45 72 72 6f 72 22 2c |mp_ReportError",| 00002a50 42 25 2c 25 31 31 2c 22 50 72 6f 6a 65 63 74 6f |B%,%11,"Projecto| 00002a60 72 22 b8 56 25 0d 0f 00 0b e7 56 25 3d 32 3a e0 |r".V%.....V%=2:.| 00002a70 0d 0f 0a 05 e1 0d 0f 14 04 0d 0f 1e 38 dd a4 4d |............8..M| 00002a80 56 61 72 28 4e 25 2c 56 25 29 3a c8 99 22 4f 53 |Var(N%,V%):.."OS| 00002a90 5f 52 65 61 64 4d 6f 64 65 56 61 72 69 61 62 6c |_ReadModeVariabl| 00002aa0 65 22 2c 4e 25 2c 56 25 b8 2c 2c 56 25 3a 3d 56 |e",N%,V%.,,V%:=V| 00002ab0 25 0d ff |%..| 00002ab3