Home » Archimedes archive » Archimedes World » AW-1993-03.adf » AWMar93 » !AWMar93/Goodies/Diary/!Diary/92
!AWMar93/Goodies/Diary/!Diary/92
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 » Archimedes World » AW-1993-03.adf » AWMar93 |
Filename: | !AWMar93/Goodies/Diary/!Diary/92 |
Read OK: | ✔ |
File size: | 9A08 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
on � % 1 i '$(i_flags%+28+12+24 14)="Fg colour" �'$ i_flags%+28+12+24*15 ="Bg colour" �4�fla s%�&02�$(i_flags%+28 12+24*14)="EOR colou " �4�flags%�&20�$(i flags%+28+12+24*15)= EOR colour" ��flag %�&40� �i_flags%?( 8+11+24*14)=7 �i_f ags%?(28+11+24*15)=7 �+�shade(i_flags%,1 ):�shade(i_flags%,15 �� �5i_flags%?(2 +11+24*14)=�foreback (flags%>>24)�&F) �5 _flags%?(28+11+24*15 =�foreback((flags%>> 8)�&F) �� !�enco emenu(i_esg%) !�i_ sg% !"�tick(i_esg%, flags%>>16)�&0F) ! i_button% !*%�tick(i button%,(flags%>>12) &0F) !4�w_general% >$�currentwindow%=-1 =�:� deleted! !H'$mb wident%=wident$(curr ntwindow%) !R�getcu i !\7�flags%�&800000 currenticon%=-1:� ha been deleted! !f�c rrenticon%<>-1� !p?$ w_general%!(28+24*1+ 2)+�"Amend icon ")=" "+�currenticon% !zA$ w_general%!(28+24*2+ 2)+�"Renumber ")=" "+û$mb_renumber% !� �encodemenu(i_flags% !��encodemenu(i_bu ton%) !�1�$(w_genera %!(28+24*1+12)+�"Ame d icon ")="" !�0$(w_ eneral%!(28+24*2+12) �"Renumber ")="" ! #�I%=1�4:�shade(w_ge eral%,I%):� !�� !� encodemenu(w_flags%) !�($mb_workarea0%=�( %!44)+","+�(q%!48) ! ($mb_workarea1%=�(q% 52)+","+�(q%!56) !� mb_minx%=�(q%!72�&FF F) !�$mb_miny%=�(q% 72>>16) !�(mwx0%=q%! 0:mwy0%=q%!24+(q%!8- %!16) !�(mwx1%=q%!20 (q%!12-q%!4):mwy1%=q !24 "�encodepalmen (-1) "I%=w_colours +28 ":�J%=q%+36�q%+ 2:I%?11=(?J%<<4)�unc lour%(?J%):I%+=24:� $ �w_flags% ".!q%=h ndle%(currentwindow% "8ș"Wimp_GetWindo Info",,q% "B�I%=0�7 "L%�q%!32�(1<<I%)��t ck(w_flags%,I%) "V� "`#�q%!32�(3<<8)��ti k(w_flags%,8) "j3�q% 32�(1<<10)��tick(w_f ags%,9):� real colou s "t3�q%!32�(1<<11)� tick(w_flags%,10):� ack window "~1�q%!32 (1<<12)��tick(w_flag %,11):� grab keys "� �encodemenu(t_flags% "��currenticon%=-1 "�'flags%=q%!64:�en odemenu(i_button%) " ��shade(w_flags%,12 "�� "� �I%=14�20 " -�q%!32�(1<<(I%+24-1 ))��tick(w_flags%,I% "�� "��q%!32�&800 0000� "��tick(w_fla s%,13) "��shade(w_f ags%,0) "��shade(w_ lags%,2) # �shade(w flags%,3) # �shade( _flags%,7) #� ##� %=14�20:�shade(w_fla s%,I%):� #(� #2 �t_ lags% #<0q%!60=q%!60 &24:� must be filled with border #F;�enco eicon(t_flags%,6,q%! 0,q%+76,tb_text%,tb_ prite%) #P$tb_buffe size%=�L% #Z!�q%!60� 100��tick(t_flags%,7 #d!�q%!60�&200��tic (t_flags%,8) #n�w_s roll% #x�getcurw #� �flags%�&100��tick(w scroll%,0) #�#�flags �&200��tick(w_scroll ,1) #��m_sprite% #� s$=spriten$(currents rite%) #�?�undoname$ >s$�undoscreen%<>edi buffer%��shade(m_spr te%,0) #�$�getsprite y(currentsprite%,0,0 #�%�sprcolour%=16�� ick(m_sprite%,2) #� hasmask%� #��shade( _sprite%,3) #���sha e(m_sprite%,2) #��s ade(m_sprite%,4) #� #�c%=currentsprite $1$sprbuff%=�sprxs ale%(c%)+"x"+�sprysc le%(c%) $�encodepa menu(sprcolour%) $ m_spritelist% $"*$mb crsprite%="":$mb_spr tef%=spritef$ $,ifl gs%=&400000 $6%�icon <>-1��geti(handle%,i on%�1) $@�iflags%�& 00000� $J�shade(m_s ritelist%,3) $T�sha e(m_spritelist%,4) $ � $h-renamesprite$= iconstring(iflags%,i ata%) $r$mb_rnsprit %=renamesprite$ $|� $�5ș"Wimp_WhichIcon ,spritelist%,q%,&200 01,&200001 $�#�!q%=- ��shade(m_spritelist ,2) $�+�!q%=-1�q%!4= 1��shade(m_spritelis %,1) $�� $�=� $� ���shade(mh%,I%) $� mh%!(28+8+24*I%)=mh% (28+8+24*I%)�&400000 � $� $���tick(mh%, %) $�'mh%!(28+24*I%) mh%!(28+24*I%)�&01:� $� $���select(h%,i ) %G!q%=h%:q%!4=i%: %!8=&200000:q%!12=&2 0000:ș"Wimp_SetIcon tate",,q% %� % % ��deselect(h%,i%) % A!q%=h%:q%!4=i%:q%!8 0:q%!12=&200000:ș"W mp_SetIconState",,q% %:� %D %N<��encode con(iconmenu%,nmenu% flags%,q%,itext%,isp ite%) %X"�i_font%<0� shade(iconmenu%,6) % $itext%="":$isprite ="" %l.�flags%�&01�$ text%=�iconstring(fl gs%,q%) %v6�(flags%� 03)=&02�$isprite%=�i onstring(flags%,q%) �3�flags%�&100�L%=q% 8�L%=12:� returned t caller %�I%=iconme u%+28:J%=1 %�*�item% 0�nmenu%:�flags%�J%� I%=!I%�&01 %�I%+=24 J%+=J%:� %�� %� %� ��decodemenu(menuhan le%,menus%) %�Ȏmen handle%� %��mainmen % %�Ȏ!menus%� %�� :� info box %��1:�g tpointer %��checkid nt($mb_wident%,"") & 5�createwindow(mouse %-100,mousey%+16,$mb wident%) &6� WH N 1:PROCspriteinfo:P OCfront(spritelist%) &B� WHEN 2:PROC ncodepal(0,15):PROCf ont(palette%):PROCht al & %�2:�loadtempla es($mb_templates%) & !�3:�checkfull($mb_t mplates%) &4$�savete plates($mb_templates ,�) &>�4:�finish:� H� &R�w_general% & Ȏ!menus%� &f�0:�g tcurw &p%mx%=mmousex -bx%:my%=mmousey%-by &zix%=default%!96- efault%!88 &� iy%=de ault%!100-default%!9 &�?q%!4=mx%-ix%/2:q !8=my%-iy%/2:q%!12=q !4+ix%:q%!16=q%!8+iy &�-�I%=0�12�4:q%!(2 +I%)=default%!(104+I ):� &�(ș"Wimp_Creat Icon",,q%�currentico % &�2ș"Wimp_ForceRe raw",!q%,q%!4,q%!8,q !12,q%!16 &��1:�get uri &��deleteicon(! %,q%!4) &�X�decodeic n(menus%+4,q%+24,q%+ 8,ib_text%,ib_sprite ,ib_buffersize%,$ib_ alidation%) &�Lcurre ticon%=�cricon(!q%,q !8,q%!12,q%!16,q%!20 q%!24,q%!28,q%!32,q% 36) &��2:renumber%= $mb_renumber% &�4�re umber(currentwindow% currenticon%,renumbe %) &�0�renumber%<999 �$mb_renumber%=�(ren mber%+1) &��3:�getc ri '�flags%�&100� +B%=�workspace(q%!3 ):$B%=text$:q%!28=B% '=�q%!32>0�B%=�work pace(�$(q%!32)+1):$B =$(q%!32):q%!32=B% ' � '.*x0%=q%!8:y0%=q !12:x1%=q%!16:y1%=q% 20 '8Ȏmenus%!4� 'B �-1:copyx%=16:copyy% -16 'L�0:copyx%=x0% x1%:copyy%=0 'V�1:c pyx%=x1%-x0%:copyy%= '`�2:copyx%=0:copy %=y1%-y0% 'j�3:copy %=0:copyy%=y0%-y1% ' � '~3x0%+=copyx%:y0 +=copyy%:x1%+=copyx% y1%+=copyy% '�Ecurre ticon%=�cricon(!q%,x %,y0%,x1%,y1%,q%!24, %!28,q%!32,q%!36) '� �4:h%=handle%(curren window%) '��geti(h% currenticon%) '�8old %=iflags%:o0%=idata% 0:o1%=idata%!4:o2%=i ata%!8 '� �deleteico (h%,currenticon%) '� Ȏmenus%!4� '��0:ix %-=dx%:ix1%-=dx% '� 1:ix0%+=dx%:ix1%+=dx '��2:iy0%+=dy%:iy1 +=dy% '��3:iy0%-=dy :iy1%-=dy% '�� '�Bc rrenticon%=�cricon(h ,ix0%,iy0%,ix1%,iy1% oldf%,o0%,o1%,o2%) ( 8�5:�deleteicon(hand e%(currentwindow%),c rrenticon%) ( %�6:�d codemenu(w_flags%,me us%+4) ("�7:�menus% 4<>-1�menus%!8<>-1� !q%=handle%(curren window%) ((ș"Wimp_ etWindowInfo",,q% (2 q%?(36+menus%!4)=men s%!8 (<curw%=curren window% (F"�crwindow q%+4,wident$(curw%)) (P�deletewindow(cur %) (Z� (d#�8:�setwo karea(currentwindow% (n7�9:�checkident($ b_wident%,wident$(cu rentwindow%)) (x'wid nt$(currentwindow%)= mb_wident% (�7�10:�d letewindow(currentwi dow%):currentwindow% -1 (�� (� �w_flags% (��!menus%=-1�� (� q%=handle%(currentwindow%) (�ș"Wimp_GetWindowInfo",,q% (�Ȏ!menus%� (��0:�decodetitle(1) (��1:q%!32=q%!32�&02 (��2:q%!32=q%!32�&04 (��3:q%!32=q%!32�&08 (��4:q%!32=q%!32�&10 (��5:q%!32=q%!32�&20 )�6:q%!32=q%!32�&40 )�7 q%!32=q%!32�&80 )� :q%!32=q%!32��&300 ) Ȏmenus%!4� ),�0:q !32=q%!32�&100 )6�1 q%!32=q%!32�&200 )@ arry's Birthday 2=q% 32�&400 )^�10:q%!32 q%!32�&800 )h�11:q% 32=q%!32�&1000 )r*�1 :�menus%!4<>-1�q%!64 (menus%!4)<<12 )|�1 :q%!32=q%!32�&800000 0 )�4�14,15,17,18,19 20:q%!32=q%!32�(1<<( 0+!menus%)) )��16:� ecodetitle(1<<26) )� � )�curw%=currentwi dow% )�"�crwindow(q% 4,wident$(curw%)) )� �deletewindow(curw%) )��m_sprite% )�Ȏ! enus%� )��0:�undo(c rrentsprite%) )��1: menus%!4<>-1� )�spr olour%=menus%!4 )�)� nhtpal:palcolour%=sp colour%:�htpal )�� �2:sprcolour%=16 * @�3:ș"OS_SpriteOp", 11D,spritearea%,spri en$(currentsprite%) !�updatesprite(curr ntsprite%) *&@�4:ș" S_SpriteOp",&11E,spr tearea%,spriten$(cur entsprite%) *0!�upda esprite(currentsprit %) *:;�5,6,7,8:�adju tsize(currentsprite% !menus%-5,menus%!4) D�9:�flipx(currents rite%) *N�10:�flipy currentsprite%) *X� *b�m_spritelist% *l Ȏ!menus%� *v�0:�$m _crsprite%<>""� *�9� "XOS_SpriteOp",&128, pritearea%,mb_crspri e%�R0%;f% *�(�(f%�1) 0��1,"Sprite already exists" *�;ș"OS_Spr teOp",&10F,spriteare %,mb_crsprite%,0,16, ,12 *��spriteinfo * � *��1: *�m%=menu %!4:�m%<0�m%=0 *�9ș Wimp_WhichIcon",spri elist%,q%+&80,&20000 ,&200001 *�A�geti(sp itelist%,q%!&80):mas er$=�iconstring(ifla s%,idata%) *��7 *� %=q%+&84:ȕ!I%<>-1 * <�geti(spritelist%,! %):text$=�iconstring iflags%,idata%) *�5� "OS_SpriteOp",&123,s ritearea%,master$,te t$,m% +I%+=4:� + 7 +�spriteinfo + 2:�getpointer +*2�di logue(dial_delete%,m usex%-100,mousey%+20 +4%�3:�$mb_rnsprite <>renamesprite$� +>? �"OS_SpriteOp",&11B, pritearea%,renamespr te$,mb_rnsprite% +H spriteinfo +R� +\%� :�$mb_rnsprite%<>ren mesprite$� +f?ș"OS_ priteOp",&11A,sprite rea%,renamesprite$,m _rnsprite% +p�sprit info +z� +�-�5:�loa sprites($mb_spritef% :�spriteinfo +�$�6:� PROCcheckfull($mb_sp itef%) +�(� PROCsave prites($mb_spritef%, RUE) +�.�7:�mergespr tes($mb_spritef%):�s riteinfo +�� +�� + � +� +�"��loadspri es(f$)� LOCAL I%,f$ �'ș"OS_SpriteOp",&1 A,spritearea%,f$ +�# f$<>"<Wimp$Scrap>"�s ritef$=f$ +��redraw indows +�� , ,� savesprites(f$,safe% ,'ș"OS_SpriteOp", 10C,spritearea%,f$ , �safe%�� ,.spritef =f$ ,8#�$spritef%<>� pfname(spritef$)� ,B $spritef%=�spfname(s ritef$) ,L,!q%=sprit list%:ș"Wimp_CloseW ndow",,q% ,V�front( pritelist%) ,`� ,j ,t ,~��mergesprit s(f$) ,�'ș"OS_Sprit Op",&10B,spritearea% f$ ,��redrawwindows ,�� ,� ,���redraw indows ,��I% ,� �I% 0�nh% ,�G�handle%(I% >nh%�ș"Wimp_ForceRe raw",handle%(I%),-1E ,-1E8,1E8,1E8 ,�� , � ,� ,�ݤfiletype f$) - �f%,type% - �"OS_File",17,f$�typ %,,f% -�type%<>1�= 2 -&�(f%>>>20)=&FFF =(f%>>>8)�&FFF�=-1 - -2��decodetitle(b t%) -<Ȏmenus%!4� - �-1:q%!32=q%!32�bit -P:q%!32=q%!32�bi % -Z� -d<�menus%!4= �menus%!4=9:� bodge or 'right-justified' bit -n7�menus%!4=7�m nus%!4=8:� bodge for 'indirected' bit -xK decodeicon(menus%+4, %+60,q%+76,tb_text%, b_sprite%,tb_buffers ze%,"") -�� -� -� �setxy(�x%,�y%,a$,se $) -�x%=�a$:y%=��a$ �a$,sep$)+1) -�� -� -���setwork(q%,v%) -�"!q%=�$v%:q%!4=�$( %+�$v%,",")) -�� -� -���setworkarea(cu w%) -��h% -�h%=han le%(curw%) .�setwo k(q%,mb_workarea0%) �setwork(q%+8,mb_w rkarea1%) .ș"Wimp SetExtent",h%,q% .", in%=(�$mb_minx%�&FFF )�(�$mb_miny%<<16) . %!q%=h%:ș"Wimp_GetW ndowInfo",,q% .6�q% 72<>min%� .@9q%!72=m n%:ș"Wimp_CreateWin ow",,q%+4�handle%(cu w%) .J.!q%=handle%(c rw%):ș"Wimp_OpenWin ow",,q% .T$!q%=h%:ș Wimp_DeleteWindow",, % .^� .h� .r .|� godeletesprites .�?I =q%+&40:ș"Wimp_Whic Icon",spritelist%,I% &200001,&200001 .�! %=spritelist% .� ȕ! %<>-1 .�&q%!4=!I%:ș Wimp_GetIconState",, % .�*ș"OS_SpriteOp" &119,spritearea%,q%+ 8 .�I%+=4:� .��spr teinfo .�� .� .�J� decodeicon(menus%,fp r%,qptr%,mb_text%,mb sprite%,mb_buffersiz %,v$) .�Ȏ!menus%� ��0:oldf%=!fptr% .� Ȏmenus%!4� /�-1:! ptr%=!fptr%�&01 /9� IF!fptr%A D&01THEN!fptr%=!fptr ANDNOT&02 /:!fptr =!fptr%�&01 /&%�(old %�&01)=0�!fptr%=!fpt %��&02 /0� /:/�puti onstring(oldf%,fptr% qptr%,$mb_text%) /D 1:oldf%=!fptr% /NȎ enus%!4� /X�-1:!fpt %=!fptr%�&02 /b9� IF!fptr%AND& 2THEN!fptr%=!fptr%AN NOT&01 /l:!fptr%=( fptr%��&03)�&02 /v� /�+�!fptr%�&01�A$=$m _text%�A$=$mb_sprite /�(�puticonstring(o df%,fptr%,qptr%,A$) ��2:!fptr%=!fptr%�& 4 /��3:!fptr%=!fptr �&08 /��4:!fptr%=!f tr%�&10 /��5:!fptr% !fptr%�&20 /�C�6:ș" imp_DecodeMenu",,i_f nt%,menus%+4,�100," )�,,,fontname$ /�0�m nus%!4<>-1�menus%!8= �fontname$+=" point" /��fontname$=""� /� !fptr%=!fptr%��&40 / fptr%?3=&D7 /��!fp r%=!fptr%�&40 /���f ntname$,5)="point"� I%=�fontname$ 0"� %=I%-1:��fontname$,I ,1)="." 0psiz%=��f ntname$,I%+1) 0 fon name$=�fontname$,I%- ) 0* �psiz%=12 04� >&fptr%?3=�findfont( ontname$,psiz%) 0H� 0R�7:!fptr%=!fptr%� 80 0\(�8:�!fptr%�&10 �B$=$!qptr%�B$=$qptr 0f6�menus%!4=-1�!fp r%=!fptr%�&100�!fptr =!fptr%�&100 0p�!fp r%�&100� 0zqptr%!8= $mb_buffersize% 0�5! ptr%=�workspace(qptr !8):$!qptr%=�B$,qptr !8-1) 0��v$=""� 0� ptr%!4=-1 0���(!fpt %�&03)=&02� 0�qptr% 4=spritearea% 0�,�qp r%!4=�workspace(�v$+ ):$(qptr%!4)=v$ 0�� 0�� 0��$qptr%=�B$, 1) 0�� 0��(!fptr%� 103)=&102� 0�!�qptr% 4>1�!fptr%=!fptr%��& 2 0�� 1�9:!fptr%= fptr%�&200 1�10:!f tr%=!fptr%�&400 1� 1:!fptr%=!fptr%�&800 1$+�12:!fptr%=�field !fptr%,12,4,menus%!4 1.+�13:!fptr%=�fiel (!fptr%,16,5,menus%! ) 18+�14:!fptr%=�fie d(!fptr%,24,4,menus% 4) 1B+�15:!fptr%=�fi ld(!fptr%,28,4,menus !4) 1L� 1V� 1` 1j ݤfield(flg%,b0%,nb% i%) 1t6�i%<>-1�=flg% �(((1<<nb%)-1)<<b0%) (i%<<b0%)�=flg% 1~ �)��puticonstring(ol f%,fptr%,qptr%,A$) 1 �oldf%�&100� 1�1�(! ptr%�&03)=&02�qptr%! =-1:� no sprite area 1��A$<qptr%!8� 1�# !qptr%=A$:!fptr%=!fp r%�&100:� 1�� 1� �� A$<12� 1�#$qptr%=A$: fptr%=!fptr%��&100:� 1�� 1�� 1�!fptr%= fptr%�&100 1�*!qptr% �workspace(�A$+1):qp r%!8=�A$+1 2 $!qptr =A$ 2 C�(oldf%�&100) 0�qptr%!4=-1:� keep ld validation string if any 2� 2 2(R -------------------- -------------------- -------------------- -------------- 22 2 !��renumber(curw%,cu i%,newi%) 2F �M%,N% P!q%=handle%(curw%) 2Zș"Wimp_GetWindow nfo",,q% 2d/�q%!88<= ewi%��1,"Icon number out of range" 2nM%= %+4+88+32*curi% 2xN =q%+4+88+32*newi% 2� �I%=0�28�4:ȔM%!I%,N !I%:� 2�I%=q%!88 2� ȕI%>0 2�7�q%!(4+88+ 2*(I%-1)+16)�(1<<23) I%-=1:q%!88=I%�I%=0 �� 2�"�crwindow(q%+ ,wident$(curw%)) 2� deletewindow(curw%) �� 2� 2�R--------- -------------------- ----------------------------------------------- 2� 2���dialogue(handle%,mx%,my%) 2��getw(handle%) 39�open(handle%,mx%,my% y0%-y1%,mx%+x1%-x0%, y%,0,0,-1) 37ș"Wim _SetCaretPosition",h ndle%,-1,0,0,&300000 ,0 3�getw(handle%) 3""ȗȓx0%,y0%,x1%-x %,y1%-y0%+40 3,dial gue%=handle% 36� 3@ 3JR---------------- -------------------- -------------------- ------------------- T 3^��standardwind w(brx%,bry%) 3h*�I%= �84�4:q%!I%=default% I%:�:q%!84=0 3rq%!6 =spritearea% 3|'I%=q !8-q%!0:q%!0=brx%:q% 8=q%!0+I% 3�*I%=q%!4 q%!12:q%!12=bry%:q%! =q%!12+I% 3�� 3� 3 L!q%=brx%:q%!4=bry%- 00:q%!8=brx%+200:q%! 2=bry%:q%!16=0:q%!20 0:q%!24=-1 3� q%!28= 1F 3�7q%?32=`tfcol:q ?33=`tbcol:q%?34=`wf ol:q%?35=`wbcol 3�.q ?36=4:q%?37=`tbcol:q ?38=`tbcol2:q%?39=0 �*q%!40=0:q%!44=-102 :q%!48=1280:q%!52=0 �#q%!56=&0000003D:q% 60=&00003000 3�q%!6 =spritearea%:q%!68=0 3�$(q%+72)="<Untitl d>" 3�q%!84=0 3�� 4%��createwindow brx%,bry%,wident$) 4 �standardwindow(brx ,bry%) 4&�crwindow( %,wident$) 40� 4: D��crwindow(q%,wide t$) 4N%ș"Wimp_Creat Window",,q%�handle% XAm%=handleSP%:handl SP%=handle%(handleSP ):handle%(m%)=handle 4b!q%=handle% 4l� "Wimp_GetWindowState ,,q% 4vș"Wimp_Open indow",,q% 4�)curren window%=m%:wident$(m )=wident$ 4�current con%=-1 4��highligh (m%) 4�� 4� 4�ݤw ichwindow(handle%) 4 �I% 4��handle%=-1� -1 4�handle%(nh%+1) handle% 4�%I%=-1:�I% =1:�handle%(I%)=hand e% 4��I%>nh%�=-1�=I 4� 4�ݤwhichsprit (handle%) 5�handle =-1�=-1 5spritew%( s%+1)=handle% 5&I%= 1:�I%+=1:�spritew%(I )=handle% 5 �I%>ns% =-1�=I% 5* 54��del tewindow(I%) 5>!q%= andle%(I%) 5H&handle (I%)=handleSP%:handl SP%=I% 5Rș"Wimp_De eteWindow",,q% 5\wi ent$(I%)="" 5f� 5p 5z��deletesprite(I% 5�0�((paint_drag%>> 6)�&7FFF)=I%�paint_d ag%=-1 5��i% 5��sp SP2%=I%� 5�sprSP2%= sprite%(I%) 5�.�i%=s rSP2%:�i1%=i%:i%=nsp ite%(i%):�i%=I% 5�n prite%(i1%)=nsprite% i%) 5�� 5�/�seti(sp itelist%,spritei%(I% �1,0,&600000) 5�!q% spritew%(I%) 5�!spri ew%(I%)=sprSP%:sprSP =I% 5�ș"Wimp_Delet Window",,q% 5�� 5� 6 ��getcurw 6!q%= andle%(currentwindow ) 6ș"Wimp_GetWind wState",,q% 6$�info q%+4) 6.� 68 6B �� etcuri 6L!q%=handle (currentwindow%) 6V %!4=currenticon% 6` �"Wimp_GetIconState" ,q% 6j.cx0%=q%!8:cy0 =q%!12:cx1%=q%!16:cy %=q%!20 6tflags%=q% 24 6~.�flags%�&100�t xt$=$(q%!28)�text$=$ q%+28) 6�D�(flags%�& 03)=&103�sprite$=�ge command(q%!32,"S")�s rite$=text$ 6�� 6� 6�ݤgetcommand(v%,c ) 6��v%<=0�="" 6�� % 6�!I%=�";"+$v%,";" c$):�I%=0�="" 6�$=�$ v%+I%),�$(v%+I%)+";" ";")-1) 6� 6� c$=�$ 6� 6�ݤiconstring flg%,p%) 7 �i%,i$ 7 8�flg%�&100�i$=$!p%� %=p%?12:p%?12=13:i$= p%:p%?12=i% 7=i$ 7 7(��getpointer 72 ș"Wimp_GetPointerIn o",,q% 7<*mousex%=!q :mousey%=q%!4:button %=q%!8 7Fhandle%=q% 12:icon%=q%!16 7P� Z 7dR-------------- -------------------- -------------------- -------------------- 7n 7x��errorbox(e r%,err$,erl%) 7��ed toff("") 7�!Err%=err :Err$=err$:Erl%=erl% 7�/�inerror%��-1��er ordisplay(err%,err$, rl%) 7�inerror%=� 7 .ș"Wimp_DragBox",,- :dragtype%=0:pdrag%= 1 7�$�dialogue%<>-1� close(dialogue%) 7� version%>120� 7��er buf%255 7�6!errbuf%= rr%:$(errbuf%+4)=err :?(errbuf%+4+��$)=0 �+ș"Wimp_ReportErro ",errbuf%,1,"FormEd" 7���4:�err$; 7��er %<>0��" at line ";er % 7�� 8-ș"Wimp_F rceRedraw",-1,-1E8,- E8,1E8,1E8 8� 8i error%=� 8"� 8, 86 � /// old errorbox h ndling /// 8@�I%=1� 8J3!q%=errorbox%:q% 4=I%:ș"Wimp_GetIcon tate",,q% 8Terrorad r%(I%)=q%!28:� 8^ �I =1�4:?erroraddr%(I%) 13:� 8hmenu$=err$:I =1:J%=0:i%=0 8r�w$= par(" ") 8|;�J%>0�J% 1+�w$>19�I%+=1:J%=0: I%>4��1,"Error too b g":� 8��J%>0�w$=" " w$ 8�#$(erroraddr%(I )+J%)=w$:J%+=�w$ 8� w$=""�w$=" " 8� �dia ogue(errorbox%,300,6 0) 8�� 8� 8�"��err rdisplay(err%,err$,e l%) 8� 8��versi n%>120� 8��errbuf%2 5 8�6!errbuf%=err%:$ errbuf%+4)=err$:?(er buf%+4+��$)=0 8�+ș" imp_ReportError",err uf%,2,"FormEd" 8��� :�err$; 9�erl%<>0� " at line ";erl% 9 9�finish 9&� 90 9:��finish 9D �I%=0 255 9N?ȕfontcounts% I%>0:ș"Font_LoseFon ",I%:fontcounts%?I%- 1:� 9X� 9b�bodgeit � 9l-�I%=1�8:ș"OS_B te",I%+220,oldfx%(I% ,0:� 9vș"OS_Byte", 19,oldfx219%,0 9��� "Wimp_CloseDown" 9� 9�)�version%<120��4 26,30,17,&8F,17,0,12 9�� 9� 9�� *FX 22 1 9�(� OSCLI"Key 9 IST "+STR$erl%+"|K|M 9�� *FX 15 1 9�#� F erl%<>0 THEN *FX 1 8 0 137 9� � END 9� 9�R----------------- -------------------- -------------------- ------------------ 9 :ݤworkspace(L%) ::�curbuff%+L%>buff r%+maxbuf%��1,"No mo e buffer space" :c rbuff%+=L%:=curbuff% L% : :*R---------- -------------------- -------------------- -------------------- ---- :4 :>ݤfindfo t(f$,p) :H�f% :R*ș Font_FindFont",,f$,p 16,p*16,0,0�f% :\fo tcounts%?f%+=1 :f6�f ntcounts%?f%>=255��1 "Internal font table full" :p=f% :z :�R -------------------- -------------------- -------------------- -------------- :� : ��spriteinfo :��I% :�7I%=q%+4:ș"Wimp_W ichIcon",spritelist% I%,&800000,0 :�Aȕ!I <>-1:I%!-4=spritelis %:ș"Wimp_DeleteIcon ,,I%-4:I%+=4:� :�9i% sprSP2%:ȕi%<>-1:spr tei%(i%)=-1:i%=nspri e%(i%):� :�,!q%=spri elist%:ș"Wimp_Close indow",,q% :� $sprit f%=�spfname(spritef$ :�1ș"OS_SpriteOp", 108,spritearea%�,,,n prites% :�?maxspwidt %=scrx1%-80:curx%=0: ury%=0:maxw%=0:maxh% 0:ix%=0 :��nsprites >0� :��I%=1�nsprite % ;�readsprite(I%) ;Eflags%=&1701A429: ext$=$spritename%:�g tminxy(flags%,text$, ext$) ;,�minx%>spw% spwx%=minx%+32�spwx% spw%+32 ;$+�curx%+sp x%>maxspwidth%��line fsprites ;.spwx%(ix )=spwx% ;82�-32-sph% miny%-8<maxh%�maxh%= 32-sph%-miny%-8 ;BCs w%(ix%)=spw%:sph%(ix )=sph%:minx%(ix%)=mi x%:miny%(ix%)=miny% Lspname$(ix%)=$spri ename% ;Vcurx%+=spw %(ix%):ix%+=1 ;`� ; �lineofsprites ;t� ;~'!q%=0:q%!4=cury%: %!8=maxw%:q%!12=0 ;� ș"Wimp_SetExtent",s ritelist%,q% ;��fro t(spritelist%) ;�i% sprSP2%:ȕi%<>-1 ;� 2%=nsprite%(i%) ;�� lose(spritew%(i%)) ; .�spritei%(i%)>=0��o ensprite(spritei%(i% ) ;�i%=i2%:� ;�5ș" imp_ForceRedraw",spr telist%,0,-30000,300 0,0 ;�� ;� ;�ݤsp name(sp$) ;�<�sp$>s flen%-2�="'..."+�sp$ spflen%-5)+"'"�="'"+ p$+"'" <