STAKÿÿÿÿ   :$/R¸ `�€€€€ßHT=20R°V ¨ È €€ˆ"ˆ"ˆˆ""ˆˆ""ˆª"ªˆª"ªÌª3ªÌª3ªîª»ªîª»ªî»»îî»»îÿ»ÿîÿ»ÿîÿ»ÿÿÿ»ÿÿ€ @ÿÿÿÿÿÿÿÿˆ"ˆ"ˆ"ˆ""Dˆ"DˆÄ€ hC0&±0ØÀ �ªªªªˆ"U"ˆ"U"ˆU"UˆU"UwÝwÝwÝwÝ€ªUªUªUªU„H0 ‚D9D‚ˆ"AˆA"€€A>ã"Œt"˜¾€ˆëˆ€%È2‰d$L’¢œA¾*Éë@  €@ ª€ˆ€ÿ€€€€€€€"Á€ÿ€€€ÿøt"G�"q¿¿¿°°°°ÿ¾]¢A€úõúõ P P À—€`on openStack start using stack "LaboratoryToolbox" end openStack°°°°°° Browser Home Stack Version 1.0 ©Copyright 1989,1990 by Apple Computer, Inc. All Rights Reserved THE MESSAGE HANDLERS USED IN THIS SCRIPT: startUp,getHomeInfo,resume,help,hyperTalk,nav c,b,s,mw,vw,se,ss,xy,disallowInterruption,allowInterruption setUserLevelFive,restoreUserLevel,searchScript,checkForMissingFonts THE FUNCTION HANDLERS USED IN THIS SCRIPT: checkHCFont XCMD'S USED BY THIS SCRIPT: FontExists XFCN Form: FontExists(IT‚€h 8[ A“1×!LD%�p `œÛˆ‰"ˆ@B÷ HŠ!Ð$�zî""<"Bà `Á ÑND# ©@ ˜J"‘Aˆ]Mò‘B™?Ñ´MÆfEPÁ C" ©T¹ Ó?×dPf¶?‰‰Å„ê¸ @@M @ ($  €‚0@BB ,€€€…@@�K3€`D "P@` @@€�>Š @ˆt6@ P’"2@†(  P@A� G0Â�B-`� € „ƒ…hƒ@b@!aBHÈ)€!<° @„“ d&‚Ð  ‚ @A" )äP@€‚„"0��C@F € ( Á›P` C€2 @�61€d PAGEYR¸ ÿ /:é ‚ Õ@`" 0$$@ ‘ƒ H`P0 1†@a �€!B‚hÁ€qAE™! !@ €`H@É€10à’@‹D`È1ä„ Z"d@"† �@82 À"‰@ J  @ ‚0” `š€ ‚‚“@AP@ØG„€"@@à”@�™ŠtsÌb.ôçí/^Å8eœBÀ#e‚�5`29-ðR1Ã* ž‘A7‹×zq0°ÒPC SM`ÅŠ 3¡ad‰¨_Á­!Y¢RH¹]Aq`ÈK‰Œ2H -ÁàS§�à!†øÑ$;ŒÉîÀ0  T� $@@d×B,‰“qÜ.g€IP,ME ”ó¶@§¡œ SÚ `ôˆT� XÅHޏ+  %A$$�xA‚1€ˆÈ È� ´¢ !Q` C�)�@Lª@` €@ €(@� PåA" @À™ d… �DD¤  €)v Q@ 80c€É!˜P !€u€`B€@ ¢@P`€  dÀDŠIH@XD„ ' Á X@ ˆ€ˆ *„P`C@�€Aš@ €A#EAŠ @˜ @@ˆ@€%“ € X €ìŒ @ €H €BIR  $€€B@Ѐ H‚@€ # €  X @ € èÌ@@ €@‚€@À€  P€€‚@À€ H‚@€!¦ E0J@ƒ¢E$¿Þj[°0 SÄ!Œx�³X±(€EàÂ@*p˜¬Kœª ,ÐirEÑžRP#•&`^ !vN7ƒ’#AÎÍ-D•ƒ,˜ \P#Ðr €pâ@‚++¡ _8y!è „kÆêø%İ"¢P§�Ž•BH@CD Š ’jOª‡€�ACÇ)Í:Ä! K dc½É›‡ŽBhOŒ×8Ì­†FÈ\Dd €â h Å‚$ X0 €#(À!…P"¡T¨ @`B0€€h¢�A`[6Œ U1 ,@‘ª"BDDÈ L„�€DDÀ ¬ @‘¡($2!"c€ÌD�¡�$� !€ÀPÂHà�€ @§BE�€ @@à H$‚˜ABÀ4M #Q «¡$œOZPÐ0!ˆÐø¹P·„ ]@@‚P �,‹@\$d ¨C€PœH@ Æ E‹‚E�Å!‚!AT ™ ƉLÈI\âø6O S§�à!†øÑ$;ŒÉîÀ0  T� $@@d×B,‰“qÜ.g€IP,ME ”ó¶@§¡œ SÚ `ôˆT� XÅHޏã PÓpŽjL˜Gp¾²b‚"dŠd9¡Áx°ˆC�£I3°-ar3Á UF’m¥ó( À©Žá={…vW5„!+£‹ýeh‡¢*2Ä<wÉHˆ�ü „@BKGD :5´@BKGD5´ :`BKGD/ý :5´&&^Title@BMAP/ý € € €CARD/ÞXf : ~¾hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp >í(þe  ImportCardon mousedown if the optionkey is down then edit script of target exit mousedown end if choose browse tool go to card "HelpDefinition" doMenu "Paste Card" put the short name of this card into scratch go card "Index" put scratch & Return after cd field "index" end mousedown ,!T'ëÕ indexon mouseDown -- go to the card associated with the click select the clickLine put the value of the clickLine into cardName wait until the mouse is up if the mouseLoc is not within rect of me then select empty exit mouseDown end if go card cardName end mouseDown Ôígþ§€ Create Cardon mouseUp ask "What is the topic of the new card?" if cd field "index" is empty then put it into cd field "index" else if the last character of cd field "index" is not return then put return after cd field "index" end if put return & it after last line of cd field "index" end if go to card "HelpDefinition" doMenu "copy card" doMenu "paste card" set the name of this card to it put it into card field "title" end mouseUpz O-sw  GoToolboxon mouseUp go card "Home" of Stack "LaboratoryToolbox" in new window end mouseUpRESu€ Overviewon mouseUp go card "Overview" end mouseUpd Ucu€ Supported Deviceson mouseUp go card "SupportedDevices" end mouseUpd esu€ Toolbox Externalson mouseUp go card "ToolboxExternals" end mouseUpf uƒu€ Planned Extensionson mouseUp go card "PlannedExtensions" end mouseUpV ÏOòw è Add a Stacks Menuon mouseUp doStacksMenu end mouseUp" ÷Á .ÿû¥Aaps EVS-900 Controller Array Math Bload Bsave Credits Derivative DTCapture XCMD EVS-900 Controller Filelen GetIntegerElement HPLC Digitizer Listoid Movedata NewIntegerArray Overview PeakAnalysis PlannedExtensions Plot PICT S4 Meter Average S4 Meter Data Retrieval S4 Meter General Info S4 Meter Header S4 Meter Log Rate S4 Meter Start Time SetIntegerElement Statistics SupportedDevices Tabloid Textoid ToolboxExternals ÿó Version 1.0§Indexon openCard sort cd field "index" if line 1 of cd field "index" is empty then delete line 1 of cd field "index" end if if the last character of cd field "index" is not return then put return after cd field "index" end if end openCard  BMAPÞ € € P¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=‹0AŸkH€<ÿÀ#0À 0/fz5 0À#óÀ Š  5€Ã!fâ0á8@á %èkü Ááðàgð8"øÁð€?‹ n(ks€‡=Áç8Î8yï`"Á<áÃÇ 0gý¼j^À�†ÿÁÅì7ø�" þÁü'a¿Í‹ 0/þjjs@~K ±Áç4ÎXe�P0"Á,2’Ã&ž Š0p¸wZ@3B@�h01g˜à$( �0âw%p€á˜% €$@�!f) 34€h‰ yÁÃ�†Á 00`20 Á 0àa€Ã>Š %èJ'bÁ„p %Á€a‹ n(yü½ ÿ‡ûÁ Ò,?Ø�2ÌöÁìH?áþÍ ‰0\¼áá=0_Àjáá>0/xá á=0…áá>!gáá=!záðá>!<áàá= â> ;Öâ=‹ n(oð~€"ð`á0gÕ¼_À€20@"àá0/þn>0f5àÀáŠ0p¼sá á01c˜áá0âáA€øÀáQ6`ÃÁ8Ùä@‹![Á?à?à;/R½‡ôÀ‰ á`À`q†Á€àÀŒf>Š %Èá3@Á  Kàá"ÀCÈ0(?¼á!ð4 î0áÂá(0‹0w?±át pá0AÿûáQX0€Á (B  €0/ jáQNàÆ€Áp8L ÜÀŠÂ0f1bA;à‰4F,‘ ‰!áá= áá> ;Þá= p> á>Š0,=¼â0ÃÖâ0p¼wá#€á‹0Aßïc9Áð>pÀá Š0âc#"à]H@âc…"¥€âF"€â0<&>â %€'?‰â Kè7 €â‹0g‘!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„`CARD*cXf : æ hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøHelp DefinitionHelpDefinition`BMAPc € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ CARDS[¬Xf : „8hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n title" . Z F  \#t@ gobackon mouseUp go back end mouseUpÿùTopic: ÿøHPLC Digitizerÿ÷€VV ]� ™¹ ¾Ê Ú& 1� ”² ·Í Øý m w This card emulates a scrolling strip chart recorder using GWI TurboDriver Digitize function operating in extended mode with inner loop interrupts. It can be used with MacADIOS II, MacADIOS II SE, and MacADIOS II Jr hardware. Interrupt tasks operate in the background and when in progress, do not move windows or exit the application. SLOT: The NuBus slot which contains the MacADIOS board. GWI Code: 1= 2= Bank: Channels Sample Interval: This is the sample rate in 1/60 second intervals (set between 2 and 60). Error Code: Refers to GWI MacADIOS Error Codes Dig 0 = No Error Dig 420 = Sample interval set too low Disk: Disk to save data file to. File: File name to save. Array Size: Number of points to be digitized. Digitize: Starts scrolling strip chart recorder mode to run for designated Array Size at the Sample Interval. Save File: Performs XFCN BSAVE, saves data as filename/Ch0 on specified disk. HPLC Digitizer`BMAP[¬ € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ$ CARD Xf9Mà!2&^TitleJ@S<< prevon mouseUp doMenu "prev" end mouseUpJUh@° nexton mouseUp doMenu "Next" end mouseUpLj}@ firston mouseUp go card "Index" end mouseUp( "/6~ CurHMS( 9/M~ CurCtr( P/d~ CurFrm* � £Y TargetHMS*¦ ºY TargetCtr*½ ÑY TargetFrm(ý¹}Status&âºù[ cmd1¬äYö€€ do iton mouseUp set visible of card field "MessageBox" to true wait 3 seconds set visible of card field "messagebox" to false end mouseUp °g,w~€ GetCounteron mouseUp set visible of card field "getcounter" to true wait 3 seconds set visible of card field "getcounter" to false end mouseUp¬�Z¤€€ GoToon mouseUp set visible of card field "Hr:M:S GoTo" to true wait 3 seconds set visible of card field "Hr:M:S GoTo" to false end mouseUp®¦Zº€€ GoToon mouseUp set visible of card field "counter goto" to true wait 3 seconds set visible of card field "counter goto" to false end mouseUpª½ZÑ€€ GoToon mouseUp set visible of card field "Frame goto" to true wait 3 seconds set visible of card field "frame goto" to false end mouseUp(o{& Channel&� — frame(!‹š—° Volume&"^Title„%„-‡¥ Pop-up NoteFld 36on enterInField hide me send "hideShowPopUp" to card button id 36 end enterInField¢&/Ee€ Reseton mouseUp set visible of card field "reset" to true wait 3 seconds set visible of card field "reset" to false end mouseUp „'…EŸÍ Pop-up NoteFld 38on enterInField hide me send "hideShowPopUp" to card button id 38 end enterInFieldž(F[e€ Playon mouseUp set visible of card field "play" to true wait 3 seconds set visible of card field "play" to false end mouseUp„)„[µÍ Pop-up NoteFld 40on enterInField hide me send "hideShowPopUp" to card button id 40 end enterInField„+„,p†8 Pop-up NoteFld 42on enterInField hide me send "hideShowPopUp" to card button id 42 end enterInField„-„Brœ: Pop-up NoteFld 44on enterInField hide me send "hideShowPopUp" to card button id 44 end enterInField„/„Cp�8 Pop-up NoteFld 46on enterInField hide me send "hideShowPopUp" to card button id 46 end enterInField„1…-‡Í Pop-up NoteFld 48on enterInField hide me send "hideShowPopUp" to card button id 48 end enterInFieldž2]re€ Stopon mouseUp set visible of card field "stop" to true wait 3 seconds set visible of card field "stop" to false end mouseUp„3„rÌÍ Pop-up NoteFld 50on enterInField hide me send "hideShowPopUp" to card button id 50 end enterInField 4t‰f€ Pauseon mouseUp set visible of card field "pause" to true wait 3 seconds set visible of card field "pause" to false end mouseUp„5„‰ãÎ Pop-up NoteFld 52on enterInField hide me send "hideShowPopUp" to card button id 52 end enterInField´6EpYÛ€ Dither Frameon mouseUp set visible of card field "ditherframe" to true wait 3 seconds set visible of card field "ditherframe" to false end mouseUp„7„Yp³8 Pop-up NoteFld 54on enterInField hide me send "hideShowPopUp" to card button id 54 end enterInField„9„ˆtâ< Pop-up NoteFld 56on enterInField hide me send "hideShowPopUp" to card button id 56 end enterInFieldt:…� — Get Counteron mouseUp set visible of card field "get counter" to false end mouseUpv;…� — Hr:M:STargeton mouseUp set visible of card field "Hr:M:STarget" to false end mouseUpx<…� — CounterTargeton mouseUp set visible of card field "countertarget" to false end mouseUpt=…� — FrameTargeton mouseUp set visible of card field "FrameTarget" to false end mouseUpr>…� — MessageBoxon mouseUp set visible of card field "MessageBox" to false end mouseUpr?…� — EVS900initon mouseUp set visible of card field "EVS900Init" to false end mouseUph@…� — Reseton mouseUp set visible of card field "Reset" to false end mouseUpfA…� — Playon mouseUp set visible of card field "Play" to false end mouseUpfB…� — Stopon mouseUp set visible of card field "Stop" to false end mouseUphC…� — Pauseon mouseUp set visible of card field "Pause" to false end mouseUptD…� — OpensmallTVon mouseUp set visible of card field "opensmallTV" to false end mouseUpxE…� — closeTVwindowon mouseUp set visible of card field "closeTVwindow" to false end mouseUppF…� — GrabFrameon mouseUp set visible of card field "grabframe" to false end mouseUp~GZsŠ®€+ü Go Backon mouseUp go card "Color EVS-900 Controller" of stack "LaboratoryToolbox" end mouseUp®H0mDØ€ Grab Frameon mouseUp set visible of card field "grabframe" to true wait 3 seconds set visible of card field "grabframe" to false end mouseUp,I…� — ditherframe,J…� — getcounter,K…� — Hr:M:S GoTo.L…� — counter goto,M…� — frame gotoHandler:Handler: ÿÿEVS-900 Controllerÿí VCRcmd mplayÿö 00:00:00ÿõ0ÿñ900ÿó 00:00:30ÿò43ÿ᥀ For Help: Click on a button. A description of what that button does will appear in this box. Click on this box and the description will disappear. ÿÞ Handler:ÿô0ÿÛ,initializes serial port to EVS900 tape deckÿÑ ÿÆ”€ Get Counter: Updates Hr:M:S, Counter, and Frame values to current settings from the tape deck. Displays those values in "Current" fields. ÿÅ�€ Hr:M:S GoTo: Locates and pauses the tape at user defined Hour, Minute, Second tape values. Displays target values in Target fields.ÿÄ8Locates and pauses tape at user defined counter value. ÿÃ4Locates and pauses tape at user defined frame valueÿÂD€ Message box: Command-line interface for Hypertalk commandsÿÏ(€Initializes the EVS900 tape deck ÿÙ7€Rewinds the tape and resets counter value to zeroÿÁ=€ EVS900 Init: Initializes port to EVS900 tape deck ÿÀ9€ Reset: Rewinds tape and resets counter to zero.ÿ¿-€ Play: Puts tape deck into play modeÿ¾-€ Stop: Puts tape deck into stop modeÿ½0€ Pause: Puts tape deck into pause mode.ÿ¼D€ Open Small TV: Opens and displays Aaps color video screen.ÿ»:€ Close TV Window: Closes Aaps color video screen.ÿºR€ Grab Frame: Grabs current frame and stores a pixel map on the clipboard.ÿ·I€ Dither frame: Dithers current frame and displays in card windowÿ¶^€ Get Counter: Displays current Hr:M:S, counter, and frame value of the tapes positionÿµD€ Hr:M:S GoTo: Sets tape to user defined Hr:M:S target valueÿ´F€ Counter GoTo: Sets tape to user defined counter target valueÿ³B€ Frame GoTo: Sets tape to user defined frame target valueEVS-900 Controllerfunction tvOpen global tvControl if tvControl is empty or item 1 of tvControl is 0 then return false else return true end tvOpen on closeCard if tvOpen() then send "mouseUp" to card button "Close TV Window" end closeCard on openCard -- other scripts, including the tvOpen function use the emptiness -- of tvControl as a test to see if the tv is read to use. global tvControl put "" into tvControl end openCard on screenTest global tvControl, testTuple, testTemplate, hasLargeScreen -- item 11 of the tvControl variable is 1 if the Aapps Video -- Professional daughterboard is there to allow for the big -- screen. -- if the item is empty, then the window hasn't been opened, so -- this script opens it just long enough to check for the big screen. if item 11 of tvControl is empty then -- prep our 'private' globals for the test put "0,0,,testTemplate,1,0," into testTuple put "window,,0,0,0,0,0,0,0,0,,,,end" into testTemplate microTV "testTuple" if the result is empty then -- no error message from the XCMD if item 11 of testTuple is 1 then put true into hasLargeScreen else put false into hasLargeScreen microTVPoll -- needed to clear activate/deactivate events mtvClose "testTuple" else -- scream for help answer "There are no MicroTV cards in this system that this stack can use." with "OK" put false into hasLargeScreen end if else if item 11 of tvControl is 0 then put false into hasLargeScreen else put true into hasLargeScreen end screenTest àBMAP  € €Ìm„ ¿‚‚�â&â&8â&0`â&âgU¶’´èâgg<ÓâèâH†0…â !âV`3âv ?žqóHª‚á~D€ @D á~Ç€ Á âÌ âA… â ZÀ áo‚rÀÊÄ áo‚€Ž âAÀt â2À€ âAÀ(Ì á~ÇøcÁ ­‚áBáá.ááÆ` á.ƒáâ`"ª´é+@ â`£Ìâí>@ â20 …á.€# á~à 0 á~ÁÅGóO ­‚â�ââ…ââP´’Õ â`$å;€©€ â@$1°Ì â0 â"€ â$€ â`ðó?Ìø€ ¿‚â1€ â™ â1�€ …âS$´„—@âSN原@â#l0 âD âCÀ™ â4˜ âb<ÏñŠ@âb$M‘�@â â â$ ©‚áz‰€ˆáz�‚á/˜áM á\´€ázå�”3ˆáz0á\€è0á=€áá\€P1˜áz�ðǃ„­‚á„áá*áá*ŒÀáá*áálEUiÒV€á{G™ÅÚ|€á>`…á$ áz†`ázƒŠ�æž>¬‚á�ááâá…ááá\´’Õ ál$å;€©€áL$1°Ìáá<áá"€â €álðó?Ìø€¿‚¿‚‚â'ðâ'â' â âw3mŽlxâw†32 âw!" âw?" âw  " âw 11" âwðÛŽs¤�á~‡€x á~Œ á~ án á~l€ á~þ0…‰ø á~ „‰ á~ Ñ á~ Q á~ „aŒ á~‡pŽ#�ð ­�á|áá.†áá.@ á@ áÁ<ÌØñÍ€ á~ÆDdFf á~‚DDD$ á~‚DDGä á~‚DDD á~‚ÆLDF$ áoüx6æ3Î ­�âþâB…â@âPDØãf âP|a1™3 âPD@! âP@Añ? âP@B âP@C11 âPàáÛ™ž ¿�¢�â%ÿ€ â%ˆ€ â…âel|sÀâU&0‰™âU ‰ âU> ‰ùâUB qâUf �‰âe;p|ðÀâ„â'â'âð£�áz8àáz 0áz ájááj °áázøÂ$Càáz‚$@0"<áv€D"áw€D"!0áv‚„F0"!ávÂ8ŽCÀ"!â ¢…""â "<â ¨�á*ðáá*áá*áááázó3cÇ6áz‘˜áz �áz �áz  áz 1�ázñàÛ˜Ï8¬�á+üáá„á…á€áá\‰±ÆÌá\øÂc2fá\ˆ€""Bá\€ƒâ"~á\€„""@á\€†b"bákÁ÷3< CARDV4WnXf : æbhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøListoidÿõF€ Listoid 1.6 by FrŽdŽric RINALDI and the faithfull help of Beno”t WIDEMANN for WDEF and CDEF resources DESCRIPTION ------------ Listoid XCMD displays a list in a windoid. SYNTAX ------- Listoid [,[,][,][,] [,][]] PARAMETERS ------------ Only first param is needed. Order of params 3 to 7 doesn't matter, since the XCMD is able to recognize them. WName is a string giving the windoid name. Many windoids can be opened by using different names. List is a return or comma delimited string that will be displayed. Listoid provides an automatic separator recognition. WStyle is a string defining the window style. Allowed styles are : plain, zoom, roundRect, rect, shadow, windoid, windoidZoom, bigWindoid, bigWindoidZoom, Rinaldoid, RinaldoidZoom (Rinaldoid is the same as windoid, except that it displays the window title). All window styles are floating, except plain, zoom and roundRect. A windoid or Rinaldoid style window will have small scrollbars, while other styles will use standard size. Default is RinaldoidZoom if Rinaldoid WDEF resource is present, windoidZoom if not found. will be a point or a rect, and will define position and/or size of the windoid. Coordinated are card-relative. If omitted, windoid will appear with standard size at "0,10". defines the selection mode (no selection, one at a time, may but adjacent, many disjoint). Default is ONE. is an integer or a comma separated list of integers. It defines the selected line(s) when the windoid appears. Default is 1, but 0 can be used to have no selection at start. is the name of font and its size to use. Default is Geneva 10. Using "!" and "?" as parameter will return an online help (resp. copyright and syntax). USING ----- Listoid is stand alone, no linked resource is needed. Meanwhile, this stack contains a WDEF and a CDEF resource that are recognized by the XCMD if present. The WDEF allows to have an enhanced windoid-type window displaying title, while the CDEF is useful to get nice-looking scroll arrows for small scroll bars. So, these resources are optional, and for aesthetic purpose only. If you copy them, their ID can be set to any value but don't change their name. HINT : If you use a rect ot shadow style window, placing it on a card can simulate a smart HyperCard list field. If no rectangle param is used, the size of the window will be set accordingly to the longest string contained in the list. Clicking on item(s) in the windoid sends a "ListoidSelect" message followed by the clicked word(s) and the Listoid name.. This message can be trapped using a handler : on ListoidSelect What,Where if Where is "MyList" and What is ... end ListoidSelect NOTE : in order to avoid HyperCard's confusion, existing quotes in What param are automatically changed to single quote. When a windoid is opened, the "openListoid" message is sent, followed by the windoid name. This allows to define window properties before it is shown, since the message can be trapped using a handler : on openListoid Which if Which is "MyWindow" then... end openListoid When a windoid is close, the "closeListoid" message is sent, followed by the windoid name. This message can be trapped using a handler : on closeListoid Which if Which is "MyWindow" then... end closeListoid HINT : the card script contains a "on ControlKey" handler that allows selection of first matching item when typing a key in conjunction with control key. Moreover, while holding the control key down, the arrow keys allow to move in the list, return or enter to simulate a double-clic. It is now possible to send any string to search for to the window using : Òsend "string" to window Ó If the string is found, it will be highlighted int the list. Look for "on controlKey" handler in the card script, type Control+Key to try it. Like any XWindow, Listoid has properties that can be get and set thru HyperTalk. Òproperties of window "Infoid"Ó will return an item list of all allowed properties : ¥ loc : windoid's position according to card ¥ visible : windoid's visibility ¥ text : windoid's text ¥ rect : windoid's position and size according to card ¥ selectedLine : line number(s) selected ¥ selectionMode : selection mode (NO|ONE|CON|DIS) If an error occurs, external can return : "Error : Unrecognized parameter" "Error : Missing window name" "Error : Duplicate window name" "Error : Empty parameter" "Error : Unable to create XWindow" "Error : XWindows not implemented" HISTORY -------- 1.6 : ¥ Added arrow key moving and validation 1.5 : ¥ changed inContent cursor 1.4 : ¥ Added window style parameter ¥ Added "openListoid" message ¥ Added searching capabilities ¥ Added quote filter for ListoidSelect message parameters ¥ Fixed rect/globalRect property to not show window if invisible ¥ Added support of Rinaldoid WDEF and CDEF 1.3 : ¥ Added font name and size parameter 1.1 : ¥ Window title is now displayed ¥ Added window name parameter ¥ Window name is passed along with ListoidSelect message. ¥ Added closeListoid message -------------------------------------------------------------------- This (these) external(s) is (are) FreeWare,allowing unlimited use in any non-commercial stack. You just need in this case to mention the author's name and copyright in your stack. Any commercial use must be licensed and aknowledged by the author. © F. Rinaldi - 1989,1990 AppleLink: RINALDI1 CalvaCom : FR10 Compuserve : 71170,2111Listoid`BMAPWn € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ& CARDT1UOXf : æ#ôhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøTextoidÿõ#×€æ2=h|ÅÈÓý“�ñö ð ô l Ô£ø‡Þ7?ÒÙmf’”žš  #&)HKøûÁÄãæ ! $ > A p s Textoid 2.0 by FrŽdŽric RINALDI and the faithfull help of Beno”t WIDEMANN for WDEF and CDEF resources DESCRIPTION Textoid XCMD displays a text windoid. SYNTAX Textoid [,[,][,] [,] [,][,] [,] [,] [,] ] PARAMETERS Only first param is needed. Order of params 3 to 10 doesn't matter, since the XCMD is able to recognize them. WName is a string giving the windoid name. Many windoids can be opened by using different names. Text is the text that will be displayed in the windoid. WStyle is a string defining the window style. Allowed styles are : plain, zoom, roundRect, rect, shadow, windoid, windoidZoom, bigWindoid, bigWindoidZoom, Rinaldoid, RinaldoidZoom (Rinaldoid is the same as windoid, except that it displays the window title). All window styles are floating, except plain, zoom and roundRect. A windoid or Rinaldoid style window will have small scrollbars, while other styles will use standard size. Default is RinaldoidZoom if Rinaldoid WDEF resource is present, windoidZoom if not found. Color is a one or two items string giving the foreground and background color. For each item, allowed values are the standard colors (black, white, blue, red, yellow, cyan, magenta, green), or a three word string corresponding to red, green and blue values (100 5624 28652). will be a point or a rect, and will define position and/or size of the windoid. Coordinated are card-relative. If omitted, windoid will appear with standard size at "0,10". Wrap is a boolean to wrap (true) or not (false) the text in the windoid. Defazult is true. FName is a string giving the font that will be used. Default is Geneva. FSize is a string giving the font size that will be used. Default is 9. FStyle is an item(s) string giving the font style(s) that will be used (plain, bold, italic, outline, underline, shadow, condense, extend). Default is Plain. FAlign is a string giving the text alignment that will be used (left,right, center). Default is left. Using "!" and "?" as parameter will return an online help (resp. copyright and syntax). USING Textoid is stand alone, no linked resource is needed. Meanwhile, this stack contains a WDEF and a CDEF resource that are recognized by the XCMD if present. The WDEF allows to have an enhanced windoid-type window displaying title, while the CDEF is useful to get nice-looking scroll arrows for small scroll bars. So, these resources are optional, and for aesthetic purpose only. If you copy them, their ID can be set to any value but don't change their name. Each window can contain up to 32000 chars. Hint : If you use a rect ot shadow style window, placing it on a card can simulate a smart double-scroll HyperCard field. If no rectangle param is used, the size of the window will be set accordingly to the font. With multiple screens configuration, the windoid will be zoomed on the screen that it lays on. Version 1.1 adds hyperText feature : clicking on a word in the window sends a "ClicInText" message followed by the clicked word, windoid name, start and end char being clicked. If the clicked word exceeds 200 chars, its last char will be "É" to notify the overflow. This message can be trapped using a handler : on clicInText What,Where,Start,Stop if Where is "Test1" and What is ... end clicInText When a windoid is opened, the "openTextoid" message is sent, followed by the windoid name. This allows to define window properties before it is shown, since the message can be trapped using a handler : on openTextoid Which if Which is "MyWindow" then... end openTextoid When a windoid is closed, the "closeTextoid" message is sent, followed by the windoid name. This message can be trapped using a handler : on closeTextoid Which if Which is "MyWindow" then... end closeTextoid Relase 1.5 allows now full editing of the text with Cut, Copy, Paste and Erase. One new property, lockText, allows to lock/unlock the content. When a window is created, its text is locked. Like for a field, the content must be locked to accept mouseDown events (thus HyperText). If unlocked, the insertion point will be set at the clickLoc. Shortcut : Command-Click locks the text Option-Click unlocks the text Command-A selects the whole text (if unlocked) Caution : Undo is not supported to minimize the needed RAM. Finally, the selectedText property allows to select any part of the text. When using Òset selectedText of window "MyWindow" to "X,Y"Ó, the window is brought to the front, the text is automatically unlocked, scrolled to show the insertion point, and you are ready to type in it. You can also get the selectedText when the window is closed using : on closeTextoid Which get selectedText of window Which put char (item 1 of it) to (item 2 of it) of Text of window Which end closeTextoid Hint : the insertion point will be placed at the end of the text by using : set selectedText of window MyWindow to 32000 PROPERTIES Like any XWindow, Textoid has properties that can be get and set thru HyperTalk. Òproperties of window "Textoid"Ó will return an item list of all allowed properties : ¥ loc : windoid's position according to card ¥ visible : windoid's visibility ¥ text : windoid's text ¥ rect : windoid's position and size according to card ¥ textFont : windoid's font ¥ textSize : windoid's font size ¥ globalLoc : windoid's position according to screen ¥ globalRect : windoid's position and size according to screen ¥ textAlign : windoid's text alignment (left,right,center) ¥ textStyle : windoid's text style (bold, italic, outline, underline, shadow, condense, extend) ¥ hScroll : horizontal scroll value (in pixels) ¥ vScroll : vertical scroll value (in lines) ¥ zoom : zoomed state (in, out) ¥ foreColor : text color (black, white, blue, red, yellow, cyan, magenta, green) or (red green blue) ¥ backColor : back color (black, white, blue, red, yellow, cyan, magenta, green) or (red green blue) ¥ lockText : text locking (true or false) ¥ selectedText: current selection (Start[,Stop]) ERRORS If an error occurs, external can return : "Error : Missing window name" "Error : Text cannot exceed 32000 chars" "Error : Unrecognized parameter" "Error : Duplicate window name" "Error : Empty parameter" "Error : Window rect defined twice" "Error : Window loc defined twice" "Error : Text wrap defined twice" "Error : Font size defined twice" "Error : Font name defined twice" "Error : Font style defined twice" "Error : Font alignment defined twice" "Error : Bad text style" "Error : Unable to create XWindow" "Error : XWindows not implemented" VERSIONS HISTORY 2.0 : ¥ enhanced window show/hide handling while switching under MultiFinder ¥ selection restored when activating non-floating windows ¥ text font, size and style can now be set using menus ¥ window ordering now correct when zooming in/out ¥ fixed random bug coming from bad controlHandle ¥ window clipboard now transferred only if not empty ¥ fixed hypertext bug when clicking on last word ¥ idle sent to card window even while editing windoid's text ¥ added start and stop char passed along with ClicInText message 1.9 : ¥ changed inContent cursor 1.8 : ¥ Added window style parameter ¥ Added "openTextoid" message ¥ Fixed rect/globalRect property to not show window if invisible ¥ Added support of Rinaldoid WDEF and CDEF 1.6 : ¥ Window title is displayed ¥ All RBG values available for color ¥ Added "closeTextoid" message when closing window ¥ Fixed minor bugs ¥ Added "selectedText" property ¥ Added command-A shortcut 1.5 : ¥ full text editing added. 1.4 : ¥Êfixed a bug arising on CPUs with no Color QuickDraw 1.3 : ¥ Added color support 1.2 : ¥ fixed word hilighting with wrapping word 1.1 : ¥ fixed visual minor bugs (color GrowBox, multi-screen grow frame) ¥ added hyperText capabilities ¥ added properties : globalLoc,globalRect,textAlign,textStyle,hScroll, vScroll,zoom -------------------------------------------------------------------- This (these) external(s) is (are) FreeWare,allowing unlimited use in any non-commercial stack. You just need in this case to mention the author's name and copyright in your stack. Any commercial use must be licensed and aknowledged by the author. © F. Rinaldi - 1989,1990 AppleLink: RINALDI1 CalvaCom : FR10 Compuserve : 71170,2111Textoid`BMAPUO € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ CARDP­Q•Xf : æjhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøTabloidÿõN€¦/:ey|‡ßå{…   k q Ž ó ô ú?”"yz€öEOpvåôõûis‰‘� Tabloid 1.1 by FrŽdŽric RINALDI DESCRIPTION Tabloid XCMD displays a spreadsheet like XWindoid, with multiple cells and columns. SYNTAX Tabloid [,[,[,][,] [,][,][,][,]] PARAMETERS Only first param is needed. Order of params 3 to 7 doesn't matter, since the XCMD is able to recognize them. WName is a string giving the windoid name. Many windoids can be opened by using different names. List is a comma/return delimited string that will be displayed. Line separator is return, column is comma. WStyle is a string defining the window style. Allowed styles are : plain, zoom, roundRect, rect, shadow, windoid, windoidZoom, bigWindoid, bigWindoidZoom, Rinaldoid, RinaldoidZoom (Rinaldoid is the same as windoid, except that it displays the window title). All window styles are floating, except plain, zoom and roundRect. A windoid or Rinaldoid style window will have small scrollbars, while other styles will use standard size. Default is RinaldoidZoom if Rinaldoid WDEF resource is present, windoidZoom if not found. will be a point or a rect, and will define position and/or size of the windoid. Coordinated are card-relative. If omitted, windoid will appear with standard size at "0,10". defines the selection mode (no selection, one at a time, may but adjacent, many disjoint). Default is ONE. comma separated list of cell coordinates. Each cell coordinate is a string of two integers separated by space, giving line and column number of the cell ("_[...,_]"). It defines the selected cells(s) when the windoid appears. Default is "1 1", but "0 0" can be used to have no selection at start. is the name of font and its size to use. Default is Geneva 10. is the text alignment in the cells (left, center, right). Default is "left". is a boolean telling if the cells must be framed or not. Default is true, but frame appears only if Tabloid LDEF is present in resource fork. Using "!" and "?" as parameter will return an online help (resp. copyright and syntax). USING Tabloid is stand alone, no linked resource is needed. Meanwhile, this stack contains a LDEF, WDEF and CDEF resources that are recognized by the XCMD if present. The LDEF allows to have framed cells like in a spreadsheet, vertical centering of text in cells and text alignmenet. The WDEF allows to have an enhanced windoid-type window displaying title, while the CDEF is useful to get nice-looking scroll arrows for small scroll bars. So, these resources are optional, and for aesthetic purpose only. If you copy them, their ID can be set to any value but don't change their name. HINT : If you use a rect ot shadow style window, placing it on a card can simulate a smart HyperCard spreadsheet field. If no rectangle param is used, the size of the window will be set according to maximum number of lines and columns contained in the list. The cells have all the same size which is automatically calculated according to the longest contained string. Clicking on cells(s) in the windoid sends a "TabloidSelect" message followed by the clicked word(s) and the Tabloid name. This message can be trapped using a handler : on TabloidSelect What,Where if Where is "MyList" and What is ... end TabloidSelect NOTE : in order to avoid HyperCard's confusion, existing quotes in What param are automatically changed to single quote. When a windoid is opened, the "openTabloid" message is sent, followed by the windoid name. This allows to define window properties before it is shown, since the message can be trapped using a handler : on openTabloid Which if Which is "MyWindow" then... end openTabloid When a windoid is close, the "closeTabloid" message is sent, followed by the windoid name. This message can be trapped using a handler : on closeTabloid Which if Which is "MyWindow" then... end closeTabloid HINT : the card script contains a "on ControlKey" handler that allows selection of first matching cell when typing a key in conjunction with control key. Moreover, while holding the control key down, the arrow keys allow to move in the list, return or enter to simulate a double-clic. It is possible to send any string to search for to the window using : send "string" to window If the string is found, it will be highlighted int the window. Look for "on controlKey" handler in the card script, type Control+Key to try it. The lockText property define the behaviour of the window. Default value is TRUE, meaning that a click on a cell selects it. When cursor is over window, holding Option key (or having lockText set to FALSE) allows to change cell size by dragging or edit their content. The cursor's shape tells exactly what can be done. One in editing mode, cell is framed and moving around is possible using Tab or Return key with or without Shift key (validation). To exit editing, type Enter (validation) or Escape key (cancelling), or click in any other cell. Setting properties involving cell size also resizes the window to keep previously visible cell still visible. PROPERTIES Like any XWindow, Tabloid has properties that can be get and set thru HyperTalk. Òproperties of window "name"Ó will return an item list of all allowed properties : ¥ loc : windoid's position according to card ¥ visible : windoid's visibility ¥ text : windoid's text ¥ rect : windoid's position and size according to card ¥ selectedCell : cell(s) currently selected ¥ selectionMode : selection mode (NO|ONE|CON|DIS) ¥ frame : cell frame (true|false) ¥ columnWidth : width of columns in pixels ¥ rowHeight : height of rows in pixels ¥ lockText : locking/unlocking cells ¥ textFont : font name ¥ textSize : font size ¥ textAlign : font alignment ERRORS If an error occurs, Tabloid can return : "Error : Missing window name" "Error : Duplicate window name" "Error : Empty parameter" "Error : Bad Font size" "Error : Unknown font name" "Error : Unrecognized parameter #xx" "Error : Unable to create XWindow" "Error : XWindows not implemented" "Error : Couldn't create list" VERSION HISTORY 1.1 : ¥ Added properties columnWidth, rowHeight, lockText, textFont, textSize & textAlign ¥ Updated LDEF resource (1.1) ¥ Added editing feature ¥ Added cell sizing ¥ Fixed window update ¥ fixed window visible state when switching under MultiFinder -------------------------------------------------------------------- This (these) external(s) is (are) FreeWare,allowing unlimited use in any non-commercial stack. You just need in this case to mention the author's name and copyright in your stack. Any commercial use must be licensed and aknowledged by the author. © F. Rinaldi - 1989,1990,1991 AppleLink: RINALDI1 Calvacom : FR10 Compuserve : 71170,2111Tabloid`BMAPQ• € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ@CARDNìO“Xf : àhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp" +V V ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøDTCapture XCMDÿõÛ€À ÅN X- 7DTCapture is an XCMD to activate and acquire PICT images from the Data Translation QuickCapture 8-bit frame grabber board. The XCMD can operate the QuickCapture board in one of three modes. Focus Mode generates a continuous display which is centered on the current monitor. The height and width and input channel can be specified. SaveAsFile Mode captures a frame and saves it as a PICT2 file with creator type IMAG. IMAG is the creator specification for PICT files clickable from the disktop by the image analysis programs NIH Image and ColorImage. SaveAsClip Mode captures a frame and saves it to the Clipboard. The images are saved as type 2 PICT images. Calling Syntax: DTCapture [] must be: Focus -Focus video channel . SaveAsFile -Grab Image and save as PICT file SaveAsClip - save as a PICT to the ClipBoard must be: The input channel of the QuickCapture frame grabber. This parameter must between 0 and 3 must be: The Height of the image to be created in pixels. This parameter must between 1 and 479. must be: The Width of the image to be created in pixels. This parameter must between 1 and 639. may be: The File Specification of the file to be created with the SaveAsFile command. This parameter is optional and can be passed from HyperTalk. If it is omitted, SFPut file will be evoked to prompt for an output file specification. DTCapture XCMD`BMAPO“ € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ@CARDL&M7Xf : æ þhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøToolbox Externalsÿõ ×�“ ­L X¤ ®< D8 EÀÎéô^ m  ´× é )T aÁ Úñ òg pÖ Ý$ .‡ ‘ä ë1 8� ”    $ � � ² ¶ í ð . 1 } ˆ æ û G ` ê õ G N … �The Laboratory Toolbox includes a variety of XCMD's and XFCN's some of which we have created and others which we have acquired from other stacks. Device XCMD's Digitize: This XCMD is the HyperTalk interface to the MacAdios Digitize Driver. Digitize supports multi-channel acquisition and real-time display of acquired waveforms DTCapture: This XCMD controlls the Data Translation QuickCapture frame Grabber board. microTV: This XCMD is the HyperTalk interface to the Aaps MicroTV driver. It supports all of the Apps Frame grabber boards. It is copyrighted by Aapps SCSIio: This XCMD is the HyperTalk interface to the MacAdios SCSIio Driver. SCSIio supports multi- channel acquisition and real-time display of acquired waveforms from the MacAdios SCSI Devices as well as control of the MacAdios Function Generator. Array XCMD's These XCMD's create, dispose and allow access to the array structures maintained by the GW Instruments analog interfaces. Integer Arrays contain analog data while Zero Arrays are parameter blocks which are utilized in SCSI and Extended mode calls to the devices. The calls are: NewIntegerArray Returns a pointer of an array of specified size. DisposeIntegerArray Deallocates storage for an array. GetIntegerElement Returns the value of an element of an array. SetIntegerElement Sets the value of an element of an array. NewZeroArray Creates a parameter block for communication with SCSI devices and operation in extended mode. Analog Data Manipulation These XCMD's and XFCN's support the GW Instruments DataManipulation library. They require the library to be present on the disk to function. BLoad: This XFCN controls reading a binary analog disk file to CPU memory and returns a Pointer to the file. BSave: This XCMD writes an analog array to disk as a GWI Type 2 binary file. FileLen: This XFCN reports the size of a binary analog disk file so it can be acquired with BLoad MoveData: This XCMD copies the contents of one array to another; i.e. it duplicates arrays. Deriv: This XCMD takes the derivative of one array and stores it in another Integ: This XCMD integrates regions of an analog array for peak analysis and/or filtering. Peaks: This XCMD generates an analog array where the peaks of an input array are segmented from the original waveform. VideoTape Control OpenVidPort This command opens the serial port for communication with a Sony LANC or control-S device. CloseVidPort This command opens the serial port TxL This XCMD transmits a command to a Sony LANC device. TxS This XCMD transmits a command to a Sony control-S device. RxL This XFCN returns counter and status information from a Sony LANC device. SearchV11L This command performs a search for a particular time or counter value on a Sony LANC device. Serial Port Control ConfigureSPort CloseSPort SendSPort RecvUpTo breakSPort setSPortBufferSize Resource XCMD's & XFCN's These commands allow access to the resource fork of files and the clipboard CreateRes OpenRes CloseRes GetRes PutRes GetScrap PutScrap Animation These commands allow the generation of animations on the screen from PICS files. numPICs This XFCN returns the number of PICTs in a PICS file showPICs This XCMD displays a PICS animation at a specified speed. ToolboxExternals`BMAPM7 € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿFREEFree Object Xf : æÆhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøPlannedExtensionsÿõ €.B P´ »ç ð  ) 1The following new features are planned for the Laboratory Toolbox: Instruments Sony Pro Mavica Recorder/Player Sony Mavica Camera Sharp JX-100 Color Scanner Farallon MacRecorder Viewers Electronic Still video disk image Catalog Handlers Sony ProMavica Controller Sony Mavica Camera Controller Editors Pixel Map and PICS dithering algorithm to support type 1 PICT's PlannedExtensions`BMAPK‘ € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿÀCARDH�I)Xf : æˆhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøSupportedDevicesÿõb€" C U½ Ïõ Frame Grabbers Data Translation QuickCapture Aaps DigiVideo Color Analog Interfaces GW Instruments MacAdiosII GW Instruments 8A/D SCSI Interface GW Instruments FG SCSI Function Generator Digital Interfaces GW Instruments 8DI/O SCSI Interface Serial Line Devices InterOceans S4 Current Meter Virtual Terminal EmulationSupportedDevices`BMAPI) € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ `CARD3§7ñXf : ®nhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextd  çY€ Toolbox Structureon mouseUp go card "Toolbox Structure" end mouseUpd ç'Y€ Project Structureon mouseUp go card "Project Structure" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿø OverviewÿõP€¦ '8/@‹ ’÷ þ L R’ ˜° ¼ #v …5 N– ·Ç :G €� žŸ« +What is the LaboratoryToolbox? The LaboratoryToolbox is a Hypercard Stack which originated as a tool for teaching laboratory computing. It implements an object oriented "Laboratory Notebook" structure for the acquisition and management of sensor based data within a laboratory environment. The LaboratoryToolbox Stack is organized to support hypothesis testing. The home stack spawns Project stacks which organize the information and data objects which support the test of a hypothesis. Each Project Stack can spawn Experiment cards which organize the information and a set of Trial cards of a particular method for testing the hypothesis. Each Trial card organizes a set of Data Objects which support or trash the particular method of testing the hypothesis. An Extensible Data Dictionary The LaboratoryToolbox only operates on Data Objects which have been defined in a Data Dictionary. Each Data Type defined in the Dictionary is either supported by the Instruments, Viewers, Handlers and Editors of the Stack or by applications accessable from the stack. An Experimental Database Laboratory Toolbox operates within the framework of a set of Project Stacks. The Project stack consists of a Project Card, A Chronology Card, A PathList card, a set of Experiment Cards and for each Experiment Card a set of Trial Cards. As Data Objects are added to each trial they utilize or add to paths in the PathList card An Extensible Set of Instruments Instrument cards implement a set of virtual instruments which perform data acquisition functions. An Extensible Set of Handlers Handler cards control serial line peripherals, VCR's and CamCorders. An Extensible Set of Viewers Viewer cards support display and review of table, analog and image data as well as videotapes. An Extensible Set of Editors Editor Cards support display and alteraton of acquired analog and table data as well as some signal processing and statistical operations.Overview`BMAP7ñ € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ`CARD8ŒFXf :â0P dw@ firston mouseUp go card "Overview" end mouseUp(¸w theTextj…Zµ~€ÿÿÁà Printon mouseUp doMenu "Print Card" print cd field "theText" end mouseUpÿþ,€&9 G– ©ø  ¤ ¸The Laboratory Toolbox stack is organized into 4 levels: Toolbox Home: The toolbox Home Card is the "root" of all utilities, interfaces and projects. Toolbox Utilities: The Toolbox Utilities do the actual acquisiton and operations on Data Objects. Toolbox Interfaces: The Toolbox Interfaces integrate the data processing functions of the Toolbox Utilities with the data base management functions of the Project Stacks. Project Trial Cards: The creation of Data Objects occurs at the level of the Project Trial Cards. Toolbox Structure BMAPF €qD±qH„�®…& Á†fffŽ@&à&F Ê#oÀqÈ?ÿ?å ¿�º�©……†…ÿÿÿáQ?ÿÿÿÿÁÿÿÿÿÿÿÿüáá á…áQ'ü`"ááQ$D "ááQ @ "á…ŠáSððaB<Ùƒ€ááBëèÁ}Søú¿Ï@á‹ábúø_}B¾�ËÀáŠá$€áá$Àááb":BD@ááB¢úúžÁ_e ¾¢+Àá‰á á…áQ?ÿÿÿÿÁÿÿÿÿÿÿÿüáQŽÄááQDDDááQ@@@ááqìLìqÀáqDDDŠ@áaDDDûááŒÁ†fffÀ @â%@‹Œ31@€&€Šqp*ª*¹À≀&€£…Œ@() (I À‰@()@ (I@€…Š+p(836Á€ +T(("6� €€á9@€/á lÁ=l͘9±g€rl9ÉÇ6xeã`àlðT‡cÍžÁ^yh‹|õyodõA^®ðÁáÒñà=]àco«¼‹NÁ}h‰Ü½9o€r½AW¦øeòrà/MðTk龊x3xsÀxÝ�ð$à2à€<àârp�ÀœPâTxÀðâTH ârª"º•õ®p≠ ¢…Œ)@@,‰)€@,¢…Š&?À0#ðÿHÇÀ&/¢ # èC¾ˆEE@€P€u€@ "4ˆ&@@Á=¸qc†lqÃc€u°ó`ã|à†Ãƒ‡–8Ü8€Áytéo=\Cég@Áå£êñÒô 2‡�_ÁVtºô>ž€xH�ˆ3�€"�Â� „À ˆ€H$H8xð4ð€5àÁL€xx ‹70D3 Àc €LR@€Šw@@ �C�€Á€ 2„ÁH€HDQv/åxááA@D€sH ’H€á‰ÂÇ„xñ€ãŽvà?¸vð@á@ᢅ@á@ጠáAW¦øeòrà/MðTk龊x3`CARD9âGXf :â.P dw@ firston mouseUp go card "Overview" end mouseUp(Ž| theTextj\YŒ}€ÿÿÁà Printon mouseUp doMenu "Print Card" print cd field "theText" end mouseUpÿþ*€N %W cñ !&=E�‡¢ ¬» ÊW eEach Laboratory Toolbox Project stack organizes the data which tests a hypothesis The Project Card defines the hypothesis to be tested and provides paths to the different Experiment Cards, the DataObject Chronology, and the PathList. Each Experiment Card contains the hypothesis testing Goals and documentation of Methods for achieving the Goals as well as a list of the different Trials for the experiment Each Trail Card organizes a definition of the particular treatment of the trial, a journal of the events and data manipulation which have occurred on the data objects and a list of the Data Objects, their Creation dates, data definition and a path to their current media location. The Chronology Card contains an annotated chronological list of the creation dates and modification dates of all data objects associated with the project. The Path List Card maintains a table of the paths to the media locations of the different data objects and their associated path numbers.Project StructureÀBMAPG € �ój,D� …> ¦…á †§… 9H@¢…A3AáAÿÿÿÁÿÿÿÿÿÿÿàád?ÿÿÿÿÿÁÿÿÿÿÿÿü á + á +"€ áŠTü`"G@@áT¸@" € á$á@ááUö<ÇXáVððaB<Ùƒ€c®ú�^XáUëè}ÁSøú¿ÏCüRD‰áU"Á.øD"ƒü%€á$€&Àá$À5DHáe":BD@c(¾ ×8á‰d ááã¼<ÁCxæg„@ á +@ á…ŠTÿÿÿÿÁÿÿÿÿÿÿÿøÀá‰á ááAÿÿÿÁÿÿÿÿÿÿÿàáá€á¥…Œá‰£…Œ „ ‰ )@…Š(ð.0Àá(à*~ €U€€ !k@*À€+€)&ÁáͲflYàÁ6<Ø<Ãüà8Å5Á׫£ÿ=^[ÀÁ.ú¼ú§´ cÎ,01ë8ÂáÁ"Bˆ ÁD D@Àr�,x#ËI!@ÀBÀC@ I@àBà@6Á€#ÀI 2 2 Á€DDG†>#à8æQÁåê*ˆ¯Q9à_Á¨¨¾¢¾«çáB‰8 G"Á�ÌûÃ@Šá/ s�ÌûÃâ`á$Üá$˜Œ „ ‰¢…Š(ÿÁÿÿÿýÿÿÿþቅŠ8ÿÿÁÿÿÿÿÿÿýÀá ‰@…Š)?ÿÁÿÿÿÿÿÿÿ¼á ‰( ©…( ( …(à …Š)ÿÁÿÿÿÿÿÿÿøá ‰£…Š8?ÿÿÁÿÿûÿÿÿÿþá ‰ ¢…Š*üÀâZ¸€â*ââ[l8€âKètâŒ0Ba†lበBA|Gá  RA„@€á  RAÌH€á  BãŽrïá  á £…8?ÿÿÁÿÿÿÿÿÿÿþá ⢅(ÿÁÿÿÿÿÿÿÿþáá…8ÿÿÁÿÿÿÿÿÿÿÀá @á …8?ÿÁÿÿÿÿÿÿÿüá ( á ©…( á ( á …(àá  á …)?ÿÁÿÿÿÿÿÿÿüá ¿�¿�¹�â ³…y Caps Multi-S@CARD ¡Xf : à hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp" +V V ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿø Plot PICTÿõë€Draws a PICT resource from the in the current stack or any file on any mounted volume. May specify the PICT by name or ID. PICT #0 is used if neither is specified. The PICT will be within the boundaries of the current card or over top of EVERYTHING in the specified rectangle. Calling Syntax: PlotPICT , , , , <ÒNoClippingÓ>, <ÒnoDialogÓ:errorGlobal> the name of the PICT resource the number of the PICT resource the path to the file containing the PICT. the current stack is used if filename is specified. the rect into which the PICT will be drawn (in global coordinates). <ÒNoClippingÓ> if the literal string ÒNoClippingÓ is passed the pict will be drawn overtop of EVERYTHING (window, windoids, menubar, etc). The XCMD ÒRedrawDesktopÓ (contained in this stack) can be used to cleanup after this XCMD. It will force a redraw of all windows and the desktop, getting rid of all traces of the PICT. Plot PICT`BMAP¡ € € ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿÀCARDDÓEþXf5´ Phö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX vú$ S€ Backon mouseUp go to card "S4 Current Meter" of stack "LaboratoryToolbox" end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿýLThe InterOceans Systems Model S4 Current Meter is intended for measurement and recording of horizontal water currents. Initialization and data retrieval are accomplished using the S4 control stack in conjunction with an RS232C connector via the phone port modem. This is then connected through an InterOcean Model S110 Interface Unit to the output connector on the S4. There are two cards in this stack: the card which you were previously viewing is used to program or initialize the S4 current meter, while the card following it is used in data retrieval from the S4 current meter.S4 Meter General Info BMAPEþ €",] €0€�á8BááB â$ ±…0⣅0âá) ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ=‹ n(Rð8ü7p€$à5pÀ2àgÁý¼8'0%0050`b ŠÁÃÖ ` V€#P #(B& 0p¸w 01g˜BÀ' %€ PâtãœùŸâ`RÄÇÇ0ñÂÎ&æ< Ÿƒà9ÀÀR Á€‚Ä".‘’`  ¤Ë¤@é&ˆú' ŽEÐ(#$Ï Qf0TÇ‘C@ÃPPð4EÀ0P„ÄP`ËD@R0Á€ " Á  %è3!äeÀÀ (€ ‹ n(B!äÀÁà00 7 €3° Š0,=¼Rä524H‹ /þÁj+ä "X@"@ÁX5ÁE  l#S s{Å¡ødøZR$o’ `QD›âÛä€Çé –‘úH?å®-ä¶ $Ÿ£‰0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„H`5H‘<8ð"! RA€CARDB÷CèXf5´ &hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX pú$ S€ Backon mouseUp go to card "S4Retrieve" of stack "LaboratoryToolbox" end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý"€ t{"Data Dump By pressing this button you begin the data transfer process from the S4 current meter to the field labeled "Raw Data from the S4 Current Meter." The header information will appear at the top of the file, followed by the current/direction data which will appear in 6 byte words coded in hexdecimal. This data will need to be converted into ASCII characters. Decoder By pressing this button the hexdecimal coded data is converted into readable speed and current data which is then read into the field labeled as such. Write to File By pressing this button the current and directional data described above can be exported to a text file. This text file can then be opened in other Macintosh programs such as Excel or Statview for subsequent analysis. S4 Meter Data Retrieval€BMAPCè €",Þ €8ð�(…(áá&€/¯…(áá5€…" á ¶¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= "ÿ$ðgpƒÀ€á>Š %è2|À# ÈÀS@‚@á KÀ@2 â0,=¼3 €4Àá0ÃÖ€â‹0s{¡Sƒñ3ðÁ(>&çÃçŽüCàðá0AßïS88ÁøcnÆ3ŽRþ08á0/fzSé3èÁP¦—üŠúCøèáŠD``ÁP€Œá!fCàà>Bàø#àá‹0zÁ&``(€2Y˜áŠ %è€ á‹ n(cÁ  Á°€ °HC xá gýü~ÅÄµÄ ß‘-ð±qH‚MòCÐá‰0_Àjá á>0/xá á=0…á á>!gá á=!záá>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„¶Ûm¶Ûm¶Ûm¶Ûm¶Ûm¶Ûm¶Ûm¶Ûm¶Û CARD@MA9Xf5´¬hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX pú$ S€ Backon mouseUp go to card "S4Program" of stack "LaboratoryToolbox" end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpÿý€*; <Oa� Ÿà íImmediate Logging To start the S4 logging immediately type L into this field. Delayed Start Time To start the S4 at a predetermined time, type OL[MMDDYY/HHMM]. For example to start logging at 11:31 PM on May 31, 1965 type OL053165/2331.S4 Meter Start Time@BMAPA9 €",Þ €D¼� @@ á@ $€€®…!á  á0 … áÀ €?¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>‹0gý¼"à#ÿTÁàÀá Š0ÃÖ" Ð3Î0CA á0p¸w"!â01g˜B0â0ââ2ÏÁÇ9€sœp|Bðøá‹!{R€ãp"1®Á¸Æá 0z2äÏÁ¤¹€B[hÿBüôá Š %èS�€€#Aá KÀ4@€|"ðá0,=¼2"üá0ÃÖ@á‹0s{¡BP€%aB„<á 0AßïÂò×…€ÌJA¾A&ù!èá ‰!gáá=!záá>!<áá= áá> ;Öáá= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„àCARD>Š?åXf5´ ¬Ðhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX pü$ S€ Backon mouseUp go to card "S4Program" of stack "LaboratoryToolbox" end mouseUpL  dw@ firston mouseUp go card "Index" end mouseUpÿýÌ€&C E¬¾ø ù— Continuous Logging To put the S4 into continuous logging mode type PC into this field. In this mode the S4 will continue to log until its data storage area becomes full. Duty Cycle Logging An ON/OFF period for the S4 can be implemented by typing P[days on],[HH on][MM on]/[days in cycle],[HH in cycle][MM in cycle]. For example, to have the S4 turn on and log data for one minute every ten minutes, type P0,0001/0,0010.S4 Meter Log Rate`BMAP?å €"-Þ €X¼� á0 á05@ !@@ H ( á €á!€€©…0á…á @áP( …á!€ ( % ¢…¨„¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=‹0/þj"€ÿD€á 0s{¡$c€Cá Š01g˜€â0âââ‹!{Á<‡âcàBÀ;àá 0zdÆ3à„pÁ0ü `pá Š %èeER`@Á(üP@á KÀCÀá0,=¼uR€Àà"Àá‹0/þju€ŒÀ0á Š0p¸w3.á‹0AßïÁE!€B@ Bðá 0/fzÂùú/À‘k‰mð ›ä‡ á ‰!z% Àá>!<%`@á= &`Àá> ;Ö&1€á= p><á>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„xâX =0…âCARD<°=ÄXf5´ ¬øhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX pú! P€ Backon mouseUp go to card "S4Program" of stack "LaboratoryToolbox" end mouseUpL  dw@ firston mouseUp go card "Index" end mouseUpÿýô€ [ _The number of half-second samples to be averaged and stored internally as one word of current data is set within this field. In this field the number may range from 1 (store every half-second sample) to 65535 (average for ~9hrs. and store one word of current data). Example: To average samples for 10 minute before storing a word of data enter 1200 into this field. ( Two half-seconds samples, times 60 seconds to the minute, times 10 minute average period; 2(60)10 = 1200 ) S4 Meter Average€BMAP=Ä €"+Þ €$� á…á!ᯅ!ᤅ!áPa¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ=‹ n(?à€G€á0gý¼"a€`ÀGáŠ0ÃÖ¡â0p¸w* â01g˜€â‹0/fz ŸŽqÇ|ðQãŸ߃àøBÀ;àáŠrœHË$òÂè"®‘E�tü  '�á‹!{ÿÂIm¤zü)"¿ÒßOÑþBð#ÐáŠ0Bƒ"Áà£@á %è#4ðÁô Pø"Àá‹ n(#‚3% ÁôVÀ3ð0áŠ0,=¼w 2À€á‹0/þj"B‰C„Á ,X@ 2ÂBðá0s{¡rÿ®)ô–Âø( ,o’.%û| ›ä‡ á‰0…)á>Š0âá áááFá (በ'€(à<á> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„= â> ;þâ= p>â>0CARD:é;ÅY5´ ¬hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2óX pü$ S€ Backon mouseUp go to card "S4Program" of stack "LaboratoryToolbox" end mouseUpL  dw@ firston mouseUp go card "Index" end mouseUpÿýü The header provides an area of 15 bytes for the user to enter a string of ASCII characters into the memory, such as the location of deployment. Any character over the maximum length of 15 will be lost without affecting the execution of the command.S4 Meter HeaderàBMAP;Å € €˜¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>‹!{á{À8ð8 ‰ á`ÁÀ88p>Š %è2€ÿH€4 €@‹ n("#c€G Á€`€ Š0,=¼áa@€@0ÃÖá=@Á>ð3€0p¸wá+ Á€Ù™ÆÌÄ‹0AßïÂÃð|Ž`9�Ç7ãœpBÀ;àB¼€Á €ÿ€ü ‰1gÃÿ b8ÇÆàc±Œûtq®¸ÿ cpB?ƒÁ#1�Æ 0=Š"ÃüR!D¡à‘T˜ô@i üP@"8A3„!f#Á`  @2€ÀA%$rø0cÃà€D À$À%�æbHÀþ %èdõ€à4 @ %ð( KÀ%K€2€'æR0@0,=¼c!D$ SQà@Dà€cˆ À @ÃÖà ‰ô伓é�$/ˆ‰ÊA ‰ô‡@"A@EAÀÚ‰0/x-0Cþ~Áø ø>�ðx=0…-á>!g-0á=!z- `á>!<-À<á= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿ CARD102 Y : pÔhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp &$ötitle" -$H¬ ñ*T€ See Scripton mouseUp go to card "Aaps EVS-900 Controller" in stack "LaboratoryToolbox" in a new window --edit the cardscript end mouseUp b -JZz€aª More Helpon mouseUp go card "EVS-900 ControllerHelp" end mouseUpL  dw@ firston mouseUp go card "Index" end mouseUpÿøAaps EVS-900 Controllerÿ÷´ This software controls a Sony EVS-900 8mm tape deck via the serial modem port and allows video display and frame grabbing via an Aaps DigiVideo color board. The reset, play, stop, and pause buttons allow control of the tape and video display. The get counter and go to buttons allow the user to find target values. The grab frame and dither frame buttons allow grabbing and dithering of video frames. Aaps EVS-900 ControllerÀBMAP2  €+(Kr €\ �1À€(€1À0�4 C$ % ⦅¨�"â0ââ â§�Àâ%@â0HPátF ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„$ CARD0˜Y9Mà!2&^TitleJ@S<< prevon mouseUp doMenu "prev" end mouseUpJUh@° nexton mouseUp doMenu "Next" end mouseUpLj}@ firston mouseUp go card "Index" end mouseUp( "/6~ CurHMS( 9/M~ CurCtr( P/d~ CurFrm* � £Y TargetHMS*¦ ºY TargetCtr*½ ÑY TargetFrm(ý¹}Status&âºù[ cmd1¬äYö€€ do iton mouseUp set visible of card field "MessageBox" to true wait 3 seconds set visible of card field "messagebox" to false end mouseUp °g,w~€ GetCounteron mouseUp set visible of card field "getcounter" to true wait 3 seconds set visible of card field "getcounter" to false end mouseUp¬�Z¤€€ GoToon mouseUp set visible of card field "Hr:M:S GoTo" to true wait 3 seconds set visible of card field "Hr:M:S GoTo" to false end mouseUp®¦Zº€€ GoToon mouseUp set visible of card field "counter goto" to true wait 3 seconds set visible of card field "counter goto" to false end mouseUpª½ZÑ€€ GoToon mouseUp set visible of card field "Frame goto" to true wait 3 seconds set visible of card field "frame goto" to false end mouseUp(o{& Channel&� — frame(!‹š—° Volume&"^Title„%„-‡¥ Pop-up NoteFld 36on enterInField hide me send "hideShowPopUp" to card button id 36 end enterInField¢&/Ee€ Reseton mouseUp set visible of card field "reset" to true wait 3 seconds set visible of card field "reset" to false end mouseUp „'…EŸÍ Pop-up NoteFld 38on enterInField hide me send "hideShowPopUp" to card button id 38 end enterInFieldž(F[e€ Playon mouseUp set visible of card field "play" to true wait 3 seconds set visible of card field "play" to false end mouseUp„)„[µÍ Pop-up NoteFld 40on enterInField hide me send "hideShowPopUp" to card button id 40 end enterInField„+„,p†8 Pop-up NoteFld 42on enterInField hide me send "hideShowPopUp" to card button id 42 end enterInField„-„Brœ: Pop-up NoteFld 44on enterInField hide me send "hideShowPopUp" to card button id 44 end enterInField„/„Cp�8 Pop-up NoteFld 46on enterInField hide me send "hideShowPopUp" to card button id 46 end enterInField„1…-‡Í Pop-up NoteFld 48on enterInField hide me send "hideShowPopUp" to card button id 48 end enterInFieldž2]re€ Stopon mouseUp set visible of card field "stop" to true wait 3 seconds set visible of card field "stop" to false end mouseUp„3„rÌÍ Pop-up NoteFld 50on enterInField hide me send "hideShowPopUp" to card button id 50 end enterInField 4t‰f€ Pauseon mouseUp set visible of card field "pause" to true wait 3 seconds set visible of card field "pause" to false end mouseUp„5„‰ãÎ Pop-up NoteFld 52on enterInField hide me send "hideShowPopUp" to card button id 52 end enterInField´6EpYÛ€ Dither Frameon mouseUp set visible of card field "ditherframe" to true wait 3 seconds set visible of card field "ditherframe" to false end mouseUp„7„Yp³8 Pop-up NoteFld 54on enterInField hide me send "hideShowPopUp" to card button id 54 end enterInField„9„ˆtâ< Pop-up NoteFld 56on enterInField hide me send "hideShowPopUp" to card button id 56 end enterInFieldt:…� — Get Counteron mouseUp set visible of card field "get counter" to false end mouseUpv;…� — Hr:M:STargeton mouseUp set visible of card field "Hr:M:STarget" to false end mouseUpx<…� — CounterTargeton mouseUp set visible of card field "countertarget" to false end mouseUpt=…� — FrameTargeton mouseUp set visible of card field "FrameTarget" to false end mouseUpr>…� — MessageBoxon mouseUp set visible of card field "MessageBox" to false end mouseUpr?…� — EVS900initon mouseUp set visible of card field "EVS900Init" to false end mouseUph@…� — Reseton mouseUp set visible of card field "Reset" to false end mouseUpfA…� — Playon mouseUp set visible of card field "Play" to false end mouseUpfB…� — Stopon mouseUp set visible of card field "Stop" to false end mouseUphC…� — Pauseon mouseUp set visible of card field "Pause" to false end mouseUptD…� — OpensmallTVon mouseUp set visible of card field "opensmallTV" to false end mouseUpxE…� — closeTVwindowon mouseUp set visible of card field "closeTVwindow" to false end mouseUppF…� — GrabFrameon mouseUp set visible of card field "grabframe" to false end mouseUp~GZsŠ®€+ü Go Backon mouseUp go card "Color EVS-900 Controller" of stack "LaboratoryToolbox" end mouseUp®H0mDØ€ Grab Frameon mouseUp set visible of card field "grabframe" to true wait 3 seconds set visible of card field "grabframe" to false end mouseUp,I…� — ditherframe,J…� — getcounter,K…� — Hr:M:S GoTo.L…� — counter goto,M…� — frame gotoHandler:Handler: ÿÿEVS-900 Controllerÿí VCRcmd mplayÿö 00:00:00ÿõ0ÿñ900ÿó 00:00:30ÿò43ÿ᥀ For Help: Click on a button. A description of what that button does will appear in this box. Click on this box and the description will disappear. ÿÞ Handler:ÿô0ÿÛ,initializes serial port to EVS900 tape deckÿÑ ÿÆ”€ Get Counter: Updates Hr:M:S, Counter, and Frame values to current settings from the tape deck. Displays those values in "Current" fields. ÿÅ�€ Hr:M:S GoTo: Locates and pauses the tape at user defined Hour, Minute, Second tape values. Displays target values in Target fields.ÿÄ8Locates and pauses tape at user defined counter value. ÿÃ4Locates and pauses tape at user defined frame valueÿÂD€ Message box: Command-line interface for Hypertalk commandsÿÏ(€Initializes the EVS900 tape deck ÿÙ7€Rewinds the tape and resets counter value to zeroÿÁ=€ EVS900 Init: Initializes port to EVS900 tape deck ÿÀ9€ Reset: Rewinds tape and resets counter to zero.ÿ¿-€ Play: Puts tape deck into play modeÿ¾-€ Stop: Puts tape deck into stop modeÿ½0€ Pause: Puts tape deck into pause mode.ÿ¼D€ Open Small TV: Opens and displays Aaps color video screen.ÿ»:€ Close TV Window: Closes Aaps color video screen.ÿºR€ Grab Frame: Grabs current frame and stores a pixel map on the clipboard.ÿ·I€ Dither frame: Dithers current frame and displays in card windowÿ¶^€ Get Counter: Displays current Hr:M:S, counter, and frame value of the tapes positionÿµD€ Hr:M:S GoTo: Sets tape to user defined Hr:M:S target valueÿ´F€ Counter GoTo: Sets tape to user defined counter target valueÿ³B€ Frame GoTo: Sets tape to user defined frame target valueEVS-900 ControllerHelpfunction tvOpen global tvControl if tvControl is empty or item 1 of tvControl is 0 then return false else return true end tvOpen on closeCard if tvOpen() then send "mouseUp" to card button "Close TV Window" end closeCard on openCard -- other scripts, including the tvOpen function use the emptiness -- of tvControl as a test to see if the tv is read to use. global tvControl put "" into tvControl end openCard on screenTest global tvControl, testTuple, testTemplate, hasLargeScreen -- item 11 of the tvControl variable is 1 if the Aapps Video -- Professional daughterboard is there to allow for the big -- screen. -- if the item is empty, then the window hasn't been opened, so -- this script opens it just long enough to check for the big screen. if item 11 of tvControl is empty then -- prep our 'private' globals for the test put "0,0,,testTemplate,1,0," into testTuple put "window,,0,0,0,0,0,0,0,0,,,,end" into testTemplate microTV "testTuple" if the result is empty then -- no error message from the XCMD if item 11 of testTuple is 1 then put true into hasLargeScreen else put false into hasLargeScreen microTVPoll -- needed to clear activate/deactivate events mtvClose "testTuple" else -- scream for help answer "There are no MicroTV cards in this system that this stack can use." with "OK" put false into hasLargeScreen end if else if item 11 of tvControl is 0 then put false into hasLargeScreen else put true into hasLargeScreen end screenTest àBMAP0˜ € €Ìm„ ¿‚‚�â&â&8â&0`â&âgU¶’´èâgg<ÓâèâH†0…â !âV`3âv ?žqóHª‚á~D€ @D á~Ç€ Á âÌ âA… â ZÀ áo‚rÀÊÄ áo‚€Ž âAÀt â2À€ âAÀ(Ì á~ÇøcÁ ­‚áBáá.ááÆ` á.ƒáâ`"ª´é+@ â`£Ìâí>@ â20 …á.€# á~à 0 á~ÁÅGóO ­‚â�ââ…ââP´’Õ â`$å;€©€ â@$1°Ì â0 â"€ â$€ â`ðó?Ìø€ ¿‚â1€ â™ â1�€ …âS$´„—@âSN原@â#l0 âD âCÀ™ â4˜ âb<ÏñŠ@âb$M‘�@â â â$ ©‚áz‰€ˆáz�‚á/˜áM á\´€ázå�”3ˆáz0á\€è0á=€áá\€P1˜áz�ðǃ„­‚á„áá*áá*ŒÀáá*áálEUiÒV€á{G™ÅÚ|€á>`…á$ áz†`ázƒŠ�æž>¬‚á�ááâá…ááá\´’Õ ál$å;€©€áL$1°Ìáá<áá"€â €álðó?Ìø€¿‚¿‚‚â'ðâ'â' â âw3mŽlxâw†32 âw!" âw?" âw  " âw 11" âwðÛŽs¤�á~‡€x á~Œ á~ án á~l€ á~þ0…‰ø á~ „‰ á~ Ñ á~ Q á~ „aŒ á~‡pŽ#�ð ­�á|áá.†áá.@ á@ áÁ<ÌØñÍ€ á~ÆDdFf á~‚DDD$ á~‚DDGä á~‚DDD á~‚ÆLDF$ áoüx6æ3Î ­�âþâB…â@âPDØãf âP|a1™3 âPD@! âP@Añ? âP@B âP@C11 âPàáÛ™ž ¿�¢�â%ÿ€ â%ˆ€ â…âel|sÀâU&0‰™âU ‰ âU> ‰ùâUB qâUf �‰âe;p|ðÀâ„â'â'âð£�áz8àáz 0áz ájááj °áázøÂ$Càáz‚$@0"<áv€D"áw€D"!0áv‚„F0"!ávÂ8ŽCÀ"!â ¢…""â "<â ¨�á*ðáá*áá*áááázó3cÇ6áz‘˜áz �áz �áz  áz 1�ázñàÛ˜Ï8¬�á+üáá„á…á€áá\‰±ÆÌá\øÂc2fá\ˆ€""Bá\€ƒâ"~á\€„""@á\€†b"bákÁ÷3<ÀCARD-Á.z@Y :̲hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp p2 X texton mouseUp if the clickText is "Bload" then go to card "Bload" end mouseUp¨ï,R€ See Scripton mouseUp go to card "derive" in stack "LaboratoryToolbox" in a new window edit the script of button "derive" end mouseUp D0Y¿{€ Backon mouseUp go back end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý­€‚‡ ˆ 4Filelen XFCN returns the length of a file, written onto a disk, in bytes. This XFCN is mainly designed to work in conjunction of Bload to facilitate retreiving of files and enabling the creation of arrays to hold the said files. The call syntax for the XFCN is: put Filelen Diskname, Filename, Er into xxxx where: Diskname=the name of disk containing the file Filename=name of the file to be measured. Paths to folders are to specified here with the convention :foldername:filename. Er=error array xxxx=container to store the length Note that an integer occupies two bytes of storage, whereas a single precision value occupies four bytes of space. Filelen@BMAP.z € €ô¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>‹sÁ{¡ð8pBÀÏøÁ?Ž€ðxpá AÁßï 03À†ÁÀÆ`00á Š0âY¡€@�áH€€á!fiSB@á0b'|øç34|¾á %èÁºtŒ€.t Àºyá‹ n(2ÄÁÿþ–€.à°3ÿ=á0gý¼sEŠ :tXÁEDáŠ0ÃÖ4|ø5€ |á‹0s{¡R be€4á Š01g˜4@€5@3@á‹0/fzCaÂb€`À BaáŠb¤ŸÂI>�AI€ßÊ�HŸHtá‰!<á#€á= á$€á> ;Öá$€á= p>á$€á>0\¼á#Àá=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„UUUUUUUàCARD+,š@Y :.`hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp À3V texton mouseup if the clickText is "NewIntegerArray" then go to card "NewIntegerArray" else if the clickText is "Filelen" then go to card "Filelen" end mouseUpºå,H€ See Scripton mouseUp go to card "Load and Save arrays" in stack "LaboratoryToolbox" in a new window edit the script of button "load array" end mouseUp D0YÀy€ Backon mouseUp go back end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý\€*ª¹ëò7 ^c d1 Bload is an XCMD for reading a file from disk to an array. Prior to calling Bload, the user must create an array of proper dimensions to hold the data by using the XCMD NewIntegerArray. This can be achieved by first calling the XFCN Filelen, which reports the length of the file on disk. The call syntax is: BLoad disk, file, array, size, Er where disk=the name of th disk containing the file file=the name of the file to be read array=the pointer to the array to contain the string size=the length of the file in bytes (from Filelen) er=the error array Bload BMAP,š € €਄Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=‹p/þjáÀb�ÀÁüpÁ�üðxpá Š`p¸w‘cGú@Á‰ó�H@á01g˜@u¡Š á0â€áxS á!fRPáø>;|¾á‹@zÁð1b." SÀÆÇአ%èbð)¢YÀEDá KÀC(0:"0á0,=¼$ð|á‹0/þj$0Reà€á Š0p¸w3@á‹0AßïR( (�¢Á‹@BaáÃ/fzù/ÒâüAÂÏøQD‰û�I¾Hzá‰!zá#€á>!<á#€á= á$€á> ;Öá$€á= p>á$Àá>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„`CARD)v*·@Y :œzhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "2 X ¸ð,S€ See Scripton mouseUp go to card "Load and Save arrays"in stack "LaboratoryToolbox" in a new window edit the script of button "Save Array" end mouseUp ,0X New Button&0YÀy€ BackL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿýv€F Bsave XCMD saves an array to disk. The call syntax for this XCMD is: BSave diskname, outfilename, inputarray, ftype, size, er where: diskname=name of target disk outfilename=a name for the file inputarray=pointer for the array to be saved ftype=the GW Instruments code for the storage type size=the length of the array to be saved er=error code returnedBsave@BMAP*· € €訄Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=‹`/þj€T�ƒøàÁøàðàá `s{¡1ÀT� `Á À``á ŠP1g˜ÁCá0âáx¦ (áÁfAãóÇ>;ø|á‹@zÁÆ29‚c\"0S?�ŒŽáŠ %èrÀ2 "€X?€Šˆá KÀs¡aF€t" `á0,=¼Rãà>øá‹0/þjRv`¬Á€Ê(Àá Š0p¸w@ 3€á‹0AßïR¦A X°Á�… €BÂáÃ/fzOãõÄXß…Ÿð¢‰ö “|�ôá‰!záá>!<áá= áá> ;Öáá= p>á$€á>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„UUUUUUUUUUUUUUUUU@CARD'(Ë@Y : °Bhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "? Y ªô*W€ See Scripton mouseUp go to card "bload" in stack "LaboratoryToolbox" in a new window edit the script of button "load file" end mouseUp R0YÂy€ Backon mouseUp global Origin go back end mouseUp"&)l L dw@ firston mouseUp go card "Index" end mouseUpV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý=€” º¿ ÀNewIntegerArray XCMD creates a new integer array of a specified length, returning a pointer to the created array. The call syntax of this XCMD is: put NewIntegerArray (Size) into xxxx where size is the length of the array to be created and xxxx the container to store the pointer to the array.NewIntegerArrayàBMAP(Ë € €ˆ¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=‹`AŸkÀp"€Á Ç8ÿÀá`/fzÀ Á `c0`ðáŠ2 € Á  @€@ÀáAf%€@áPHáÁ1!@À á %è" Âùæpâcàø>9�CŸ7çŽá‹ n(B4ŒÆÂ p1Ÿc�A»tsà"¡€áŠp,=¼ŠB@*Á“"‡˜ xô@á@ÃÖÁ ­`"€Á€@€ÂŒ Sápp¸wø$âÁ”>?ÐÀ@áp1g˜€þTùh?€S XQ.á0âB@€ZÀrp `(  áRBT |�€Á@° (�`Pá‹Q{AƒÃ|’ mñ~ß$ &D‹ˆ°,ÿ…HŸ°á‰ *@á> ;þ*@á= p>*€á>0\¼)Œá=0_Àjøá>0/xâ=0…â>!gâ=!zâ>!<â=Áàðàâ> ;ÖBÀ``â= p>BÀ``â>Á\¼À``â=Á_ÀnÀ``â>Š0p¼s3ø|â‹AÁßë?�ŒŽâ0/bzBþzâŠâ!Føâ‰ RÀccâ> ;ÞRÀc€câ= p>RÀaÂcâ>‹cÁß¼ “|�ôâ‰0_à~â>0/> â=0…â>!gâ=!~$€â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÕÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿCARD%“&i@Y :”hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "= Y °!æ<I€ See Scripton mouseUp go to card "statistics" in stack "LaboratoryToolbox" in a new window edit the script of button "statistics" end mouseUp ,=W New Button&0YÀy€ BackL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý€l •GetIntegerElement retrieves a value of an element from an integer array. The call syntax for this XCMD is: GetIntegerElement (Inputarray, Element) where inputarray is the name of the integer array and element is the index of the element one wishes to retrieve.GetIntegerElementàBMAP&i € < €ˆ�á â €†´…á ·…¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>‹wÁw!àà6û€ÁñÀ?ðá`AŸk00À6 €ÁÀ <áŠÁâP  Á†( 02 @@Qf€ÁL@P00#ø˜Â8˜ø>Ž`Ç8àøçá %èSt˜d™tY×H�à ¤e‘tŒ“¸"(`á KÀŠbЊ¤È¡ÁáàPÓ@Šá0,=¼ú#€" b‚è"ÀápÃÖ ÈøÁø¥€Àøá‹ps{¡ ÈÁÿ`0Á”P €áŠp1g˜€4€\"€‹p/fzXBÂCÂC,Á ÂR ,áŠb7ñ>YÃ$‚Y>@“é òIô‚ >�Kù@'ø‰!)A€â= *À€â> ;þ*Á€â= p>câ>0\¼>â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>q<x<8â= B0â> ;ÖB0â= p>B0â>Á\¼0â=Š0ÃÒ3>ßâ‹ sÁ¡àcã€â0AßëC�€âŠ0â€â>â!F#?€â‰ R0àÁâ> ;ÞR0p˜Æâ= p>Rx0X¼Àâ=0_à~Àâ>0/> Àâ=0…Àâ>!g$àâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿ@CARD#$q@Y :²2hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "A W °#ã>F€ See Scripton mouseUp go to card "statisitics" in stack "LaboratoryToolbox" in a new window edit the script of button "statistics" end mouseUp ,? V New ButtonD0YÅx€ Backon mouseUp go back end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý-€h –SetIntegerElement sets an element of a given array to a given value. The call syntax for this XCMD is: SetIntegerElement (Inputarray, Element, Value) where Inputarray is the name of the array, element the index of the element to be changed, and value the value the element is to store.SetIntegerElement BMAP$q €"? €œ� á@·…á@·…¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=ŠràÀ&÷Áã€à‹Á{ 0€& Á01€0xáŠÁ @@Á P @ ` %耀  KÀ Á˜€ `Ã,=¼ñ0q1ð|ÀŽqÁñÎ&á‹ /þÃjƒ¸ϱ�ÃÀƺã×p"PÀáŠpp¸w a I‘CÃÀ¡¦�4á`1g˜”2"@ Á Ð")€á0â"AðCñJb €ð áRüSü´ÀRàüR(€!fD¸"‹pzU„C„†XÁ@, „RX0 8በ;þBÁøsÃÏqøž÷�Ïqù㎠Ä<À= p>ƒâ>0\¼(�â=0_Àj(ƒâ>0/xÆâ=0…|â>!gâ=!zâ>!<â= â> ;Öâ= p>B€â>Á\¼â=Á_Ànâ>Á/|â=Á…â>Š0âCÀ;àâÁü  '�â‹![Cð#Ð≠b30â> ;Þbó0â= p>b0â>Š0(?¼â0áÂCàâ‹ w?Á± ›ä‡ â‰0…â>!gâ=!~â>!â= <â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿÿÿÿÿÿÿõ`CARD!¦"8@Y :ÂFhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp v9X texton mouseUp if the clickText is "Movedata" then go to card "Movedata" end mouseUp¶ò,U€ See Scripton mouseUp go to card "array math" in stack "LaboratoryToolbox" in a new window edit the script of button "perform operation" end mouseUp &0YÀz€ BackL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿýB€^ "[ _© ­á ä1 2i –à Çá ò +z ~™¡Arithmetic manipulations are: sub2 subtracts the corresponding elements of the two arrays. div2 divides the members of array1 with the corresponding elements of array2. add2 adds the corresponding elements of the two arrays. mul multiplies the members of array1 with the corresponding elements of array2. They share the call syntax, which in general form is: (XXXX) array1, array2, lowerbd, upperbd, type where XXXX is any of the operations array1 and array2 are the two arrays to be operated on lowerbd and upperbd the boundaries within which the operation is to be done (endpoints inclusive) type the type of data contained in the arrays (type=0 denotes integer data, type­0 single precision data). The operation is performed, and the resulting array is loaded into array1, the original contents of which are hence lost. In order to preserve the original array, use the XCMD Movedata to copy the array to another segment in memory prior to analysis Array Math BMAP"8 € €ب„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=‹0/þj€4€bàðxpá 0s{¡À4€b``00á Š01g˜H@ â`â â( `â‹q{PçÍÁù〠`~&3|¾á ‰ "0ÂnÝÁ0˜Gk€ðÆ1Çá>Š %èR(=DÁÀEDá KÀBà Á0£)€ á,Á=¼ôð||á0ÃÖtÀV°á`p¸w =@á01g˜e�, $D!á‹`/fz( ‘"â,Š$¸–�@�I¾Hzá ‰!z*€á>!<*€á=  *€á> ;Ö&À*€á= p>&€*Àá>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ÿÿÿ CARDrš@Y :Fhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp Ì2 X on mouseUp if the clickText is "NewIntegerArray" then go to card "NewIntegerArray" if the clickText is "SetIntegerElement" then go to card "SetIntegerElement" end mouseUp°è*K€ See Scripton mouseUp go to card "statistics" in stack "LaboratoryToolbox" in a new window edit the script of button "statistics" end mouseUp &0YÂy€ BackL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿýB€ D^mÉÚThe syntax for calling Stat is: stat inputarray, upperbd, stats Stat calculates statistics of a waveform from Array(0) to Array(upperbd), inclusive. The results are stored in array stats. Results obtained, and their locations are as follow: stats(0)=average value of waveform. stats(1)=minimum value of waveform. stats(2)=maximum value of waveform. stats(3)=index of first member greater than the high threshold. stats(4)=index of first member less than the low threshold. Prior to calling stats, the user must create an array at least 5 elements by using NewIntegerArray, and load high and low threshold values into stats(3) and stats(4), respectively, by using SetIntegerElement. If no point is greater than the preloaded value, a value of -1 is returned for stats(3). The same applies to stats(4) and low threshold. The average value is liable to overflow in cases where upper bound exceeds 65,535. Another restriction is the maximum array index of 32,767 that can be returned in stats(3) or stats(4). Statistics BMAPš € $*¡ €È�€@…¥�µ…¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þ"øHá=‹ n(" `B áŠ0,=¼Á@@â0ÃÖc€ƒ`â0p¸wâ‹`AßïÁ3ñ7&áððB€wÀá @/fzÂà81€cøÀ8àá `ÿùÁ3é4?&ƒóðBàG á Š!fäÁ`€ á0Rà'"p"€á %è"Á€€È"àá KÀW  á‹`gý¼Á 2‹ B, àá @/þjÂüµÄ´Ÿ––ñø 7É@á ‰0/x0á=0…0á>!g0á=!z0á>!<xá= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„UUUUUUUUàCARDâÉY :î hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ¨õ)X€ See Scripton mouseUp go to card "derive" in stack "LaboratoryToolbox" in a new window edit the script of button "derive" end mouseUp "0 W p/V backon mouseUp Go to stack "LaboratoryToolDang" Go to card "derive" end mouseUpD0YÁz€ Backon mouseUp go back end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿü›€Î 'Derive calculates the difference between adjacent array elements. This analysis is conducted for elements between upper bound and lower bound, endpoints inclusive. The syntax for calling derive is deriv inputarray, outputarray, lowerbd, upperbd, type where type is a parameter assigning the data to be integer (type=0) or single precision data (type­0).Derivative BMAPÉ € €Ȩ„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ=‹ n(2ÿ€I<á 0gý¼"ÁàÀC á Š0ÃÖ"€@â0p¸wÀƒâ01g˜@â‹0/fz#@øÁçÞ;ñ7xçÀBï€á ŠÂt‰)É4H« ð.€ž@á‹!{#þÁ—+é4H¯ðB?À�@á Š0Á 0`(Ð@á %èø"à"Àá‹ n($Áf`€0Àá Š0,=¼#@€@á‹0/þj#âÂÁÁ BX@Àá `s{¡?Âc|‘"ÅÄ´‹à$o’€á ‰0…á`á>!gá`á=!zá`á>!<á`á= áðá> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ CARD ¬â@Y : Ôöhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp "1 X ¤ê*M€ See Scripton mouseUp go to card "Peak" in stack "LaboratoryToolbox" in a new window edit the script of button "peak" end mouseUp x0 X New Buttonon mouseDown go to stack "LaboratoryToolDang" go to card "Peak" end mouseDown&0YÀy€ BackL  dw@ firston mouseUp go card "Index" end mouseUpV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿüñ€% LW a® ¹ Peak uses an XFCN to scan a given array for peaks. Every point in the array, except for those exceeding the set threshold, are set to zero. A peak in the array is confined by the first point exceeding the threshold, and the first point to fall below it. The syntax to call peak is Peak inputarray, upperbound, threshold - where upperbound is the index of the array element of the upper limit of this analysis, and inputarray the array to be analyzed. PeakAnalysis`BMAPâ €!bz €ô�@áá·…¿�¨�â* ¯…¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ=‹ n("à2ppDx<8á `gý¼ p20 0bÀ0á Š0ÃÖ@â0p¸wÀá01g˜â‹0/fzbðü€5ÁpüŽyÃÀ2>ßáŠBRèr€Èr‹õ à]<€áQfáÁˆb� ˆÁ `à"€"á „ >Œ@€á %ècðøÿÁ@ø8 À>á‹ n(T ˜ ÿÁ@˜YÜà"€á Š0,=¼B�€ 4€ €á0ÃÖR„H@SH±€ 3�€á‹Ãs{¡ùqKb€™qH°ý'àH$ß$=á‰0…@Àá>!g@Àá=!z€Àá>!<Àá= 'àá> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„@àCARD4M¬@Y :ÚÆhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp €2 X on mouseUp if the clickText is "NewIntegerArray" then go to card "NewIntegerArray" end mouseUpÄô+W€ See Scripton mouseUp go to card "arithmetic manipulations" in stack "LaboratoryToolbox" in a new window edit the script of button "perform operation" end mouseUp &0YÀy€ BackL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý€Q o0?Movedata duplicates data stored in the memory. The call syntax for this XCMD is: Movedata Array1, Array2, Words where: Array1=the pointer to the segment to be duplicated Array2=the pointer to area receiving the copied segment Words=the length of the sement in words Movedata is useful when dealing with XFCN's which write their results over arrays fed in. Movedata can be used to duplicate the original array for further analyses. The user must, prior to calling Movedata, create a new array in the memory, equal in length to the original one, by using NewIntegerArray. Also, remember that an integer occupies one word, whereas a single precision element occupies two words. Movedata`BMAP¬ €!.æ €¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>‹ps{¡ààC ÇÁ8ÿÀ€ápAßï À`C `cÁ0`ðáŠ`â'@Á  @€@Àá€@áQf Á1!@À á0ÁóÇ>ƒñ3ðJÀ;àበ;þ ÄÂcâ8Â8Á€a0`ÿ cpá=Š KÀÁ"¨‚  hüP@á ,=Á¼LF€R`` Sá0ÃÖf>àà@'Àá‹0s{¡¸B¬€Á``Q@.0áŠ01g˜4   á‹0/fzrPX°¨�Á  (°`pBðáŠ2Ã"øO—”ä´äoåHŸà ‰ô‡@á‰!<áá= áá> ;Öáá= p>áá>0\¼á<á=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„ªªªªªªªªÀCARD6OÉ@Y :ʲhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp p2 X texton mouseUp if the clickText is "Bload" then go to card "Bload" end mouseUp¦ì+O€ See Scripton mouseUp go to card "bload" in stack "LaboratoryToolbox" in a new window edit the script of button "derive" end mouseUp D0YÀy€ Backon mouseUp go back end mouseUpL dw@ firston mouseUp go card "Index" end mouseUpVÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿý­€‚‡ ˆ 4Filelen XFCN returns the length of a file, written onto a disk, in bytes. This XFCN is mainly designed to work in conjunction of Bload to facilitate retreiving of files and enabling the creation of arrays to hold the said files. The call syntax for the XFCN is: put Filelen Diskname, Filename, Er into xxxx where: Diskname=the name of disk containing the file Filename=name of the file to be measured. Paths to folders are to specified here with the convention :foldername:filename. Er=error array xxxx=container to store the length Note that an integer occupies two bytes of storage, whereas a single precision value occupies four bytes of space. Filelen@BMAPÉ € €ô¨„Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>‹sÁ{¡ð8pBÀÏøÁ?Ž€ðxpá AÁßï 03À†ÁÀÆ`00á Š0âY¡€@�áH€€á!fiSB@á0b'|øç34|¾á %èÁºtŒ€.t Àºyá‹ n(2ÄÁÿþ–€.à°3ÿ=á0gý¼sEŠ :tXÁEDáŠ0ÃÖ4|ø5€ |á‹0s{¡R be€4á Š01g˜4@€5@3@á‹0/fzCaÂb€`À BaáŠb¤ŸÂI>�AI€ßÊ�HŸHtá‰!<á#€á= á$€á> ;Öá$€á= p>á$€á>0\¼á#Àá=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!>â>!â= â> ;žâ= p~â>0X¼â=0_~â>0/ð âXÿÿÿý0�â~!çâý!>â"¾!â"= â("> ;ÞâY = p>âY(>0\¼âXð0=0_ÀjâX(ð`>0/xâXðÀ=0…âX(€>!gâX=!zâX(>!<âX = âY(> ?–âY0 = p~âY(aþ>0X<âXÁÿ=0_€îâX(�þ>0/xâX =0…âX(>!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„UUUUUUU CARDã«Y : °hö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)Î title" j*§ " .is " làr " ¨ð " ñC Ù L dw@ firston mouseUp go card "Index" end mouseUpÿùTopic: ÿøCreditsÿ÷‡€ SfInstructor: Dr. Joseph Ayers Internet Address: lobster@nuhub.acs.northeastern.edu Teaching Assistant: Jan Witting ÿöÓ€; ZThis stack is the product of a class project in the course Biological Laboratory Computing The Department of Biology and Marine Science Center Northeastern University, East Point, Nahant, MA 01908ÿõl€  Students: Traci Garofalo Sal Genovese Don Girouard Sarah Jordan Karen Lee Ted Maney Joe Stebbins ÿô‰€ Special Thanks to: Steve McCabe, GW Instruments, Inc. Mark Abbate, Abbate Video Consultants Kelly Martin, Data Translation, Incÿó2Northeastern University, 1990 All Rights ReservedCredits @BMAP« € 1 €�T�áᦆá. #@¿�¿�¿�¿�¿�¿�¸�á ¢…$ á@¯…$á@ ⣅$PâÀ⢅0â$€â¢…`â⢅Àâ$0⢅#€â$ `⢅#⢅`â@á 騄Œ €?â‰!k€âú7â} â: ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;žâ= p~â>0X¼â=0_~â>0/ð â=0�â>!çâ=!>â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0\¼â=0_À~â>0/8 â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0X¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;â= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0\¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= pþâ>0X<â=0_€îâ>0/xâ=0…â>!gâ=!zâ>!â= â> ;þâ= p>â>0X¼â=0_Àjâ>0/xâ=0…â>!gâ=!zâ>!<â= â> ;Öâ= p>â>0\¼â=0_Ànâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;Þâ= p>â>0X¼â=0_à~â>0/> â=0…â>!gâ=!~â>!â= â> ;Þâ= p>â>0\¼â=0_Àjâ>0/|â=0…â>!gâ=!zâ>!<â= â> ;–â= p~â>0\<â=‹p/þî Á€`ã€"ð2`s! B€ AU!€@�2ˆŠ01g˜á"á‹ /fÁz0ÆÜ0Àrf8#ŽlsÂ`¦ØØp1Ps`Øp ŠbåøyàÃ>=Dpgß^úà<¯ü¼àyQêð¼à‹Á[`$ì8 r/DX¤QNŠÂ`¡Äœ° Qzpœð Š0¢Õ|Uê‰ ¢ò ‰0\<> =0_€î á>0/x á=0…pá>agÿàâ=a>ÿàâ>aÿàâ= 2ÿðâ> ;ž2ÿðâ= p~Bƒø~â>ÁX¼ðüâ=Á_~ðüâ>Š0pðsâXÿÿÿË`Aÿ â@‰qç>àøâýŠÙâ'C!"â(ƒ‰ B~áøâ("> ;ÞB|ÁðâS =Š Kà€âT0‹0gݼ‚âE ð<p/þj€BâEðxÁs{¡„(@â&ðŠ01g˜âX0 ñ@0ââX0€RâT0‹b[D â$Š0<âX0 !€âY0(‰ p~3ÿÀâS(aþ>Š0(q<@âS0 0�ÒâX0@‹0ww!@âFÁóŠ01g˜âX0‰!câ( =!{â((>!7>â(0}!kÀâ(8`þŒ €?âŠâ@â­„+(ÄÈ+›4 Y6“NÃOD½•¬i¨M€€STBL Èÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿ    ÿÿ €@g/Nºú: nÿö P-h`FTBL ¨ChicagoPalatinohGenevaºTimesMonacoZ@PRNT� î.@ hV €�_Õ �N­ÂHm¤’Hm¥’Hnÿ?<N­ÂAìþÄCîÿp? ÙQÈÿüB§N­"Â)_ÿÄ` n,HNújN­ Â(_N^.ŸNuBKGDNVþ„Hç8B.B-Ô?B§/Nºüz+_í>g`6p-@ÿÄ/NºýHnþ„Hzúæ/N­R/.ÿÄN­ªBg/Nºû>_Hnþ„N­jOîþdLßøN^ _PONÐNVÿöHç&nB.J­ðVÀJgX·íðVÁÀgNr²mǤWÁJft´mǤW‚Àg4r2-ˆ2Àˆ€ PRSTÕHHÚ(ÿáÿâùFG(üHHÚ(d' �@f me is empty then delet CARDJ]K‘Xf : æèhö\o on mouseUp visual effect wipe right slowly doMenu "prev" end mouseUp fm} on mouseUp visual effect wipe left slowly doMenu "next" end mouseUp ( )f Header& h)n titleL  dw@ firston mouseUp go card "Index" end mouseUp( +V theTextV ÁWñ{€ÿÿÁà Printon mouseUp print cd field "theText" end mouseUpÿùTopic: ÿøPlannedExtensionsÿõ€.B PÖ Ý + ,K SThe following new features are planned for the Laboratory Toolbox: Instruments Sony Pro Mavica Recorder/Player Sony Mavica Camera Sharp JX-100 Color Scanner Farallon MacRecorder DataTranslation ColorCapture Card Viewers Electronic Still video disk image Catalog Handlers Sony ProMavica Controller Sony Mavica Camera Controller Editors Pixel Map and PICS dithering algorithm to support type 1 PICT's PlannedExtensions`FREEFree Object çç((I!H!i!ih!f%G)'))-K9¯F2R¶Zø__Yczk{o|k}k~gc[WFt1Ï%kèÇǧ¦¦ ¦¦¦ ¦ §¦¥¦¦¦¦¦¦¥¦†… … † ¥£¤…f©+1ÏF“W_Z_Z_Y_[_[_ZW9W[[[;_;[8VöJt:-�%K!*ÇÆ¥¥¥¥¥¥…¤……„ „„„¤¥¥¥¥ ¥„ £ „„„ „……„ … …… … …†eeee d eddded d dd d de………… „ „ d ccd d cc d c c d d d d D D d e E d d E E DD D Dd e e d eee e e e ee e d d e ee…†Ç %l-Ž5Î5ï9ð>>>>1>1>1>2BRBRBRBRBqBrBsBsBsBsBsBsBtBtFsFsBtFsBsBtBtBsBsBtBs>t:“:‘:Ž>�%‹H D! 1®::5ð22661î-­%‹HçÆç%J-®:BSF“J´J´J“F“F“F”F³F³F´J´J´JÔNÕNÕRöR÷R÷RöR÷R÷R÷R÷SSSSSWSS8S8S7S8S8W7S7S7W8W7S8W8W7W7W8W8W7WXW8W7WWWWW7WWWWW7W7WX[X[X[X[x[X[X[X[Y[Z[y[y[y_x_x_z_Z[YW9W9[9[[_|[}[{WzS8OSW7_XcxcxcygycXcYc9c9_9__[[<[%)„ B#D†$¨) 1ŒAîRqcsywºw·s–o4kfÏfÎjÎnínîrÎnÎj¬flfJb)^)^)^*^)b b ]éZ ]é^ ^^ b b+bKjŒn­rí{{wosw{Uxš¼¼{¿{¿s¿k¾gœg™gxg9VÕFP9í5¬5«5Ë9Ì9Ì9Ì9Ì9Ì5Ê5Ê5©5ˆ5ˆ5‰9ª9ª9ª9«9Š9Š5ª9Š9Š9ª9ª=ËAËEìEíAÌ=ª9Š5I1H-(-(-G1G1H1I5I5j9Œ=¬=íB-NNV�bÓksYoZkZo[o~oŸo¿g½cšW7J²:.1ì-Ì1Ì-Ë)«%Š%i!h!H!HH(''&çæ''''HH!H!i!i!h!f!F%F)(-j9ÎJSVÖ[_9c8gyk{o{o|k]k^c{[J”9ð)k)èÇÆ¦¥¥¥¥¥¥¦¦¥¥¦¥¥¥¥¥¥†††‡ § ¥ ¥…gË%N9óN¶[:_[c[cZc;c<_;[:[Zù[[;[;[8R÷F”:-�%K!*æÆ¥¦¦¥¥¦…¥ ¥…„ ¤ ¥ ¥¤ÅŤ£¤£ £ ƒ ƒƒ ƒ ƒ„ƒ „„„„…„„„„„ „ „d c d dd d d e d „ …„ „„„ƒ ƒ ƒ ƒ ‚ ƒ b bb c cbc c c c d c c c d d dedneJulyAugust SeptemberOctoberNovemberDecemberÿ, , NuŽasdfhgzxcvbqweryt123465=97-80]ou[ip lj'k;\,/nm. `.*+/- TAILÿÿÿÿNu Šr det slutÉ