| |
|
| |
| |
|
¢Á ºñÇàÀåºñ ¸Å´º¾ó ÀÔ´Ï´Ù. |
| |
|
| |
| >>
Control
Manager Scripting [ÄÁÆ®·Ñ ¸Å´ÏÀú ½ºÅ©¸³Æ®Çϱâ,CMS ÇÁ·Î±×·¡¹Ö °¡À̵å) |
Introduction [¼·Ð]
ÄÁÆ®·Ñ·¯ ÇÁ·Î±×·¡¹ÖÀÇ ´ëºÎºÐÀº GUI µµ±¸¸¦ ÀÌ¿ëÇØ¼ ÇÒ ¼ö ÀÖÁö¸¸, GUI·Î Á÷Á¢ ¸¸µé ¼ö ¾ø´Â ±â´ÉÀ»
¸¸µé Çʿ䰡 ÀÖÀ» ¶§µµ ÀÖ½À´Ï´Ù. Control Manager´Â ±×·± ÇÊ¿äÇÑ ±â´ÉÀ» »ç¿ëÀÚ°¡ ¸¸µé ¼ö
ÀÖµµ·Ï ÇØÁÖ´Â CMS¶ó°í ÇÏ´Â ¶Ù¾î³ ÅØ½ºÆ® ½ºÅ©¸³Æ® µµ±¸¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
´ÙÀ½ÀÇ ÀåµéÀº CMSÀÇ ±âº», CMS Script Editor(CMS ½ºÅ©¸³Æ® ÆíÁý±â)ÀÇ »ç¿ë¹ý,
CMS ½ºÅ©¸³Æ® ¾ð¾îÀÇ ¿©·¯ ºÎºÐ, ±×¸®°í °£´ÜÇÑ ¿¹Á¦µéÀ» ´Ù·ì´Ï´Ù. ½ºÅ©¸³Æ®¸¦ Á÷Á¢ ¸¸µé¾îº¸±â Àü¿¡
ÀÌ ÀåÀ» ¿Ïº®È÷ Àо¾Æ¾ß ÇÕ´Ï´Ù.
CMS ½ºÅ©¸³Æ®´Â ´ëü·Î ¹è¿ì±â ½±±ä ÇÏÁö¸¸, ¡°Á÷°üÀû¡±À¸·Î ¾Ë¾Æ¼ ¾µ ¼ö´Â ¾ø½À´Ï´Ù. Á»´õ ³ªÀº
ÀÛ¾÷À» ÇÏ·Á¸é ¿©·¯ ±â´É°ú ¿¹Á¦µéÀ» °øºÎÇϽʽÿÀ.
CMS Basics [CMSÀÇ ±âÃÊ]
CMS´Â ÄÁÆ®·Ñ·¯¿¡ ÀÖ´Â ÄÁÆ®·ÑµéÀ» Á÷Á¢ Á¦¾îÇÏ´Â ±â´ÉÀ» ÇÕ´Ï´Ù. CMS´Â ½ºÅ©¸³Æ®ÀÇ ¸í·É¾î¿¡ µû¸¥
°ªÀ» ó¸®ÇÏ¿©, ¡°CMS Controls¡±¶ó°í ÇÏ´Â ¸ðÀÇ ÄÁÆ®·ÑÀÇ Æ¯¼öÇÑ ¼³Á¤À¸·Î 󸮵Ǵ °á°ú¸¦ Á¦°øÇÕ´Ï´Ù.
´Ù¸¥ ½ÇÁ¦ÀÇ ÀåÄ¡µé°ú ¸¶Âù°¡Áö·Î ¡°Add¡± ¹öưÀ¸·Î CMS Controls¸¦ ¸Ê¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
CMS Controls´Â Map Wizard¸¦ ÀÌ¿ëÇÒ ¶§ ½ºÅ©¸³Æ® µµ±¸¸¦ »ç¿ëÇÒ °ÍÀ̶ó°í ¼±ÅÃÇϸé ÀÚµ¿À¸·Î
¸Ê¿¡ Ãß°¡µÇ±âµµ ÇÕ´Ï´Ù.
CMS¸¦ »ç¿ëÇÒ ¶§ÀÇ ½Ã½ºÅÛ ¼³Á¤Àº Mapped Mode¸¦ ÀÌ¿ëÇÒ ¶§¿Í °ÅÀÇ ºñ½ÁÇÕ´Ï´Ù.:

´Ù¸¥ Á¡Àº ¿À¸¥ÂÊ ¾Æ·¡¿¡ CMS Script¿Í CMS Controls°¡ ±×·ÁÁ® ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.
°³³äÀûÀ¸·Î´Â, USB ÀåÄ¡¿¡¼ ÀåÄ¡ »ý¼º µ¥ÀÌÅÍ(device-generated
data; ºÓÀº »öÀ¸·Î Ç¥½Ã)¸¦ Á÷Á¢ ¹Þ¾Æ¼ CMS ½ºÅ©¸³Æ®·Î ³Ñ°ÜÁÝ´Ï´Ù. µ¥ÀÌÅÍ´Â ½ºÅ©¸³Æ®¿¡ µé¾îÀÖ´Â
Áö½Ã ¸ñ·Ï¿¡ µû¶ó¼ ó¸®µÇ¾î ½ºÅ©¸³Æ® »ý¼º µ¥ÀÌÅÍ(script-generated data; ÆÄ¶õ »öÀ¸·Î
Ç¥½Ã)¸¦ »êÃâÇÕ´Ï´Ù.
½ºÅ©¸³Æ® »ý¼º µ¥ÀÌÅÍ´Â ¡°CMS Controls¡¯¶ó°í ÇÏ´Â ¸ðÀÇ ÀåÄ¡·Î ÀüÇØÁý´Ï´Ù. CMS Controls´Â
½ÇÁ¦ÀÇ USB Àåġó·³ ¹öư°ú ÃàÀÇ °ªÀ» »êÃâÇÕ´Ï´Ù.
ÀÌ µ¥ÀÌÅÍ´Â USB ÀåÄ¡ÀÇ Ãà°ú ¹öưµéó·³ ¸Ê¿¡¼
ÇÁ·Î±×·¡¹ÖÇØ¼ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
The
CMS Controls [CMS ÄÁÆ®·Ñ]
CMS Controls´Â 64Ãà°ú 128 ¹öưÀ¸·Î µÇ¾îÀÖ½À´Ï´Ù. À̸¦ ¸Ê¿¡ Ãß°¡Çϸé, ´Ù¸¥ ÄÁÆ®·Ñ·¯µé¿¡
¾²ÀÌ´Â Device Tab°ú ¶È°°ÀÌ µ¿ÀÛÇÏ´Â Device TabÀÌ Selection Pane¿¡ ³ªÅ¸³³´Ï´Ù.
Selection PaneÀº ´ÙÀ½°ú °°ÀÌ º¸ÀÔ´Ï´Ù:

ÀÌ CMS Controls´Â Selection paneÀÇ ´Ù¸¥ ÄÁÆ®·Ñ·¯µé°ú µ¿ÀÏÇÏ°Ô ÀÛµ¿ÇÕ´Ï´Ù.
128°³ÀÇ ¹öư°ú 64Ãà °¢°¢À» ³ªÅ¸³»´Â ÁöÁ¡µéÀÌ ÀÖ½À´Ï´Ù.
¸¶¿ì½º¸¦ ±× À§·Î °¡Á®°¡¸é ±× ÁöÁ¡ÀÌ ¾î´À ¹öưÀ̳ª ÃàÀÎÁö¸¦ Ç¥½ÃÇØÁÖ´Â ÆË¾÷ ¶óº§ÀÌ ³ªÅ¸³³´Ï´Ù. ¶óº§ÀÌ
º¸ÀÏ ¶§ ¸¶¿ì½º¸¦ Ŭ¸¯Çϸé ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖµµ·Ï ±× ÃàÀ̳ª ¹öưÀÌ ¼±Åõ˴ϴÙ.
Programming
the CMS Controls [CMS ÄÁÆ®·ÑÀÇ ÇÁ·Î±×·¡¹Ö]
ÀÌ Ãà°ú ¹öưµéÀ» ÇÁ·Î±×·¡¹ÖÇÏ´Â ¹æ¹ýÀº ½ÇÁ¦ ÀåÄ¡µéÀ» ÇÁ·Î±×·¡¹Ö ÇÏ´Â °Í°ú ¶È°°½À´Ï´Ù.
Direct Mode·Î ÀÛµ¿Çϵµ·Ï ¼³Á¤ÇÏ¿© Control Manager DeviceÀÇ ÃàÀ̳ª ¹öưÀ¸·Î
ÁöÁ¤ÇÒ ¼öµµ ÀÖ°í, Programmed Mode·Î ¼³Á¤ÇÏ¿© ۰ªÀ» Àü¼ÛÇϵµ·Ï ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. Dialog
Pane¿¡¼´Â ½ÇÁ¦ÀÇ ÀåÄ¡¿¡¼¿Í °°Àº ´ëÈâÀÌ ¾²ÀÔ´Ï´Ù.
CMS Controls¿Í ½ÇÁ¦ ÀåÄ¡¿ÍÀÇ ´Ù¸¥ Á¡Àº, CMS Controls¿¡¼´Â CMS ½ºÅ©¸³Æ® ÆÄÀÏÀ»
ÅëÇØ¼ ¹öư°ú ÃàÀÇ °ªÀ» Á¤ÀÇÇÑ´Ù´Â °ÍÀÔ´Ï´Ù. CMS´Â ½ÇÁ¦ ÀåÄ¡ÀÇ ¸ðµç ¹öư°ú ÃàµéÀ» Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù.
CMS ½ºÅ©¸³Æ®¿¡¼ Á¤ÀÇÇÑ ´ë·Î µ¥ÀÌÅͰ¡ Á¶Çյǰųª ¼öÁ¤µÇ¾î CMS ControlsÀÇ Ãâ·Â°ªÀ¸·Î »êÃâµË´Ï´Ù.
GUI´Â CMS Controls°¡ Windows¿¡¼ Ȱ¼ºÈµÇ°Å³ª ۰ªÀ» º¸³»°Ô²û ÇÒ ¼ö ÀÖµµ·Ï CMS
Controls¸¦ Control Manager DeviceÀÇ Ãà°ú ¹öư¿¡ ÁöÁ¤Çϴµ¥ ¾²ÀÔ´Ï´Ù.
CMS Controls´Â ±âº»ÀûÀ¸·Î ´Ù¸¥ ½ÇÁ¦ÀÇ CH ÀåÄ¡µé°ú ¶È°°ÀÌ ÇÁ·Î±×·¥ÇÒ ¼ö ÀÖ´Â ÇϳªÀÇ Å«
¡°ÀÚÀÛ¡± Á¶À̽ºÆ½ÀÔ´Ï´Ù.
Using the CMS Script Editor [CMS
½ºÅ©¸³Æ® ÆíÁý±âÀÇ ÀÌ¿ë]
CMS Script Editor´Â ¸Ê¿¡ ºÎ¼ÓµÈ CMS ½ºÅ©¸³Æ® ÆÄÀÏÀ» ¾²°í ¼öÁ¤Çϴµ¥ ¾²ÀÔ´Ï´Ù.
¿¡µðÅ͸¦ ÀÌ¿ëÇϱâ Àü¿¡, CMS ÇÁ·Î±×·¡¹Ö °¡À̵åÀÇ Á¤º¸µéÀ» Å͵æÇØ¾ß ÇÕ´Ï´Ù. ¹è¿ì±â°¡ ¾î·ÆÁö´Â ¾ÊÁö¸¸,
±âº»ÀûÀÎ ÇÁ·Î±×·¡¹ÖÀÇ °³³ä°ú »ç¿ë ±â´Éµé¿¡ ´ëÇÑ Áö½ÄÀÌ ÇÊ¿äÇÕ´Ï´Ù.
½ºÅ©¸³Æ® ÆÄÀÏÀº Ç×»ó ¸Ê ÆÄÀϰú ¿¬°èµË´Ï´Ù. ¸ÊÀ» ºÒ·¯¿À°í ÀúÀåÇϸé ÀÚµ¿À¸·Î ÇÔ²² ºÒ·¯Áö°í ÀúÀåµË´Ï´Ù.
½ºÅ©¸³Æ® ÆÄÀÏÀº ¸Ê ÆÄÀϰú °°Àº À̸§À» °¡ÁöÁö¸¸ È®ÀåÀÚ´Â .CMS·Î ´Ù¸¨´Ï´Ù.
±âº»ÀûÀ¸·Î À̰ÍÀº ±âº»ÀûÀ¸·Î Åõ°ú¼ºÀ» ¶ì¸ç, Script Editor¿¡ ÇÁ·Î±×·¡¹ÖÀÌ µÇ¾îÀÖÁö ¾ÊÀ¸¸é
¸Ê ±× ÀÚü·Î´Â ¾Æ¹« ±â´Éµµ ÇÏÁö ¾Ê½À´Ï´Ù.
¿¡µðÅ͸¦ ¿¸é ´ÙÀ½ ±×¸²ÀÌ ³ªÅ¸³³´Ï´Ù:

CMS Editor ȸéÀº ±âº»ÀûÀ¸·Î ³× ºÎºÐÀ¸·Î ±¸¼ºµË´Ï´Ù.
¸Ç À§ÂÊ¿¡´Â ¿¡µðÅÍÀÇ ÀÛ¾÷À» Á¦¾îÇÏ´Â ¿©·¯ ¹öưµéÀÌ ÀÖ´Â Åø¹Ù°¡ ÀÖ½À´Ï´Ù.
±× ¾Æ·¡´Â ½ºÅ©¸³Æ® ÆÄÀÏÀ» ÀÔ·ÂÇÏ´Â ¿¡µðÅÍ È¸éÀÌ ÀÖ½À´Ï´Ù.
¿¡µðÅÍ È¸éÀÇ ¾Æ·¡ÂÊ¿¡´Â ½ºÅ©¸³Æ® ±¸¹®À» Å×½ºÆ®ÇÒ ¶§ ³ªÅ¸³ª´Â ¿¡·¯ ¹Ú½º°¡ ÀÖ½À´Ï´Ù.
¸¶Áö¸·À¸·Î, µ¥ÀÌÅÍÀÇ ¸Ç ¾Æ·¡¿¡´Â ÅØ½ºÆ® Ä¿¼ÀÇ À§Ä¡¸¦ º¸¿©ÁÖ´Â status bar°¡ ÀÖ½À´Ï´Ù.
Editor
Tool Bar [ÆíÁý±â Åø¹Ù]
Editor Tool Bar¿¡´Â ¿¡µðÅÍÀÇ ÀÛµ¿À» Á¦¾îÇÏ´Â ¿©´ü °³ÀÇ ¹öưÀÌ ÀÖ½À´Ï´Ù.
Clear Script
¡°Clear Script¡±´Â ½ºÅ©¸³Æ® ÆÄÀÏ¿¡ ÀÖ´Â ¸ðµç ÇÁ·Î±×·¡¹ÖÀ» Áö¿ó´Ï´Ù. ´ÙÀ½ ±×¸²Ã³·³ »ý°å½À´Ï´Ù:
½ºÅ©¸³Æ®´Â ±âº» SCRIPT¿¡¼ ENDSCRIPT »óÅ·Π¹Ù²ò´Ï´Ù.
Check Script
¡°Check Script¡± ¹öưÀº ÇöÀç ¿¡µðÅÍ¿¡ ÀÖ´Â ½ºÅ©¸³Æ®ÀÇ ¿¡·¯¸¦ Å×½ºÆ®Çϴµ¥ ¾²ÀÔ´Ï´Ù. ´ÙÀ½°ú
°°Àº ¾ÆÀÌÄÜÀÔ´Ï´Ù:

´Ù¿î·Îµå Çϱâ Àü°ú °°ÀÌ ½ºÅ©¸³Æ®ÀÇ ¿¡·¯°¡ ºÐ¼®µË´Ï´Ù.
¿¡·¯°¡ ¹ß°ßµÇ¸é ÅØ½ºÆ® Ä¿¼°¡ ¹ß°ßµÈ ¿¡·¯ ÁöÁ¡¿¡ À§Ä¡µÇ°í ¿¡µðÅÍ ÅØ½ºÆ® ±¸¿ªÀÇ ¾Æ·¡ÂÊ¿¡ Error
Message ¹Ú½º°¡ ³ªÅ¸³³´Ï´Ù. ¸Þ½ÃÁö´Â ³ë¶õ»ö ÅØ½ºÆ®·Î ¶å´Ï´Ù.
½ºÅ©¸³Æ®¿¡ ÀÌ»óÀÌ ¾øÀ¸¸é, ³ì»ö ÅØ½ºÆ®·Î ÀÌ»óÀÌ ¾ø´Ù´Â ¸Þ½ÃÁö¸¦ ¾Ë·ÁÁÖ´Â ¹Ú½º°¡ ³ªÅ¸³³´Ï´Ù. ¸¶¿ì½º
¹öưÀ¸·Î Ŭ¸¯Çϸé Error Box´Â »ç¶óÁý´Ï´Ù.
Cut, Copy, and paste Text Buttons
[Àß¶ó³»±â, º¹»çÇϱâ, ºÙ¿©³Ö±â ¹öư]
ÀÌ ¼¼ °³ÀÇ ¹öưµéÀº ±âº» Windows ±â´Éó·³ ÀÛµ¿µË´Ï´Ù. ¡°Cut(Àß¶ó³»±â)¡± ¹öưÀº ´ÙÀ½ÀÇ ¾ÆÀÌÄÜÀÔ´Ï´Ù:

¡°Copy(º¹»çÇϱâ)¡± ¹öưÀº ´ÙÀ½ ±×¸²°ú °°½À´Ï´Ù:

¡°Paste(ºÙ¿©³Ö±â)¡± ¹öưÀº ´ÙÀ½ ±×¸²ÀÔ´Ï´Ù.:

Help [µµ¿ò¸»]
ÀÌ ¹öưÀ» ´©¸£¸é ¸ÞÀÎ GUI¿¡¼¿Í °°ÀÌ °¡À̵尡 ¿¸³´Ï´Ù. ÇÑ °¡Áö ´Ù¸¥ Á¡Àº ¸ñÂ÷°¡ ¾Æ´Ï¶ó CMS
ºÎºÐÀÌ ¿¸°´Ù´Â °ÍÀÔ´Ï´Ù. ¾ÆÀÌÄÜÀº ´ÙÀ½°ú °°½À´Ï´Ù:

What¡¯s This? [µµ¿ò¸»2]
Script Editor¿¡´Â ¡°Whats¡¯s This?¡± ¹öưµµ ÀÖ½À´Ï´Ù:

±â´ÉÀº ¸ÞÀÎ GUI¿¡¼¿Í °°½À´Ï´Ù.
Close [Á¾·á]
¡°Close¡± ¹öưÀº CMS Script Editor¸¦ Á¾·á½Ãŵ´Ï´Ù. ¸ÞÀÎ GUIÀÇ Á¾·á ¹öưó·³ »ý°å½À´Ï´Ù:

¸ÞÀÎ GUIÀÇ Close ¹öư°ú ´Ù¸¥ Á¡Àº, GUI¸¦ Á¾·áÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ¿¡µðÅ͸¦ Á¾·áÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
Editor
Screen [ÆíÁý±â ȸé]
ÆíÁý ¿µ¿ªÀÇ ¾Æ·¡ÂÊ¿¡´Â Error Message ¹Ú½º°¡ ÀÖ½À´Ï´Ù. ÀÌ ¹Ú½º´Â Check script
¹öưÀ» »ç¿ëÇÒ ¶§¸¸ º¸ÀÔ´Ï´Ù. üũ°¡ ³¡³ª¸é ½ºÅ©¸³Æ® üũ ÀÛ¾÷ÀÇ »óÅ º¸°í âÀÌ ¶å´Ï´Ù.
¿¡·¯°¡ ¹ß°ßµÇ¸é, ³ë¶õ »öÀÇ ¸Þ½ÃÁö·Î ¾î´À ºÎºÐ¿¡¼ ¿¡·¯°¡ »ý°å´ÂÁö ¾Ë·ÁÁÝ´Ï´Ù. ÆíÁý ȸéÀÇ ÅØ½ºÆ®
Ä¿¼´Â ¿¡·¯°¡ ¹ß»ýÇÑ ÁöÁ¡¿¡ ³õÀÔ´Ï´Ù. ¿¡·¯ ¸Þ½ÃÁö´Â º¸Åë ¸Å¿ì ºÐ¸íÇÏ°í ½ºÅ©¸³Æ®ÀÇ ½ÇÁ¦ ¿¡·¯´Â º¸Åë
Ä¿¼ À§Ä¡(¶Ç´Â ±× ¹Ù·Î ¾Õ)ÀÔ´Ï´Ù.
üũ°¡ ¼º°øÇϸé, ³ì»ö ÅØ½ºÆ®·Î ÇÁ·Î±×·¥ ¿©À¯°ø°£À» ¾ó¸¶³ª »ç¿ëÇÏ¿´´ÂÁö ¾Ë·ÁÁÖ´Â ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù.
ÀÌ ÁÙÀº ´ÙÀ½°ú °°Àº ½ÄÀ¸·Î Ç¥½ÃµË´Ï´Ù:
Script Compiled Okay! P: 100/6144
K: 10/1024
¡°P:¡± ´ÙÀ½ÀÇ °ªÀº ½ºÅ©¸³Æ®°¡ ¾ó¸¶³ª ¸¹Àº ½ºÅ©¸³Æ® ±â¾ï°ø°£À» ÀÌ¿ëÇϰí ÀÖ´ÂÁö¿Í Àüü ½ºÅ©¸³Æ®
±â¾ï°ø°£À» ³ªÅ¸³À´Ï´Ù. À§ÀÇ ¿¹¿¡¼´Â, 6144Å©±âÀÇ ±â¾ï°ø°£ Áß 100¸¸ÅÀ» »ç¿ëÇϰí ÀÖ´Ù´Â ¶æÀÔ´Ï´Ù.
¡°K:¡± ´ÙÀ½ÀÇ °ªÀº ¾ó¸¶³ª ¸¹Àº constant location(°íÁ¤ ±â¾ï°ø°£)À» »ç¿ëÇϰí Àִ°¡¸¦
¶æÇÕ´Ï´Ù. Constant´Â ½ºÅ©¸³Æ®¿¡ ´ÙÀ½°ú °°Àº ÁÙÀ» ÀÔ·ÂÇÏ¸é »ý±é´Ï´Ù:
cms.a1 = 100;
Constant °ªÀº ÀÚµ¿À¸·Î 100À¸·Î ¸¸µé¾îÁý´Ï´Ù. CMS´Â ¶ÇÇÑ ÀÏÁ¤ÇÑ ±â´ÉµéÀ» À§ÇØ ³»ºÎÀûÀ¸·Î
»ç¿ëÇÒ constant¸¦ ÀÚüÀûÀ¸·Î ¸¸µì´Ï´Ù. ¡°K:¡± °ªÀº 1024ÀÇ °¡¿ëÇÑ ±â¾ï°ø°£ Áß¿¡¼ ½ºÅ©¸³Æ®°¡
»ç¿ëÇϰí ÀÖ´Â ¾çÀ» ³ªÅ¸³À´Ï´Ù.
Status Bar
Editor ȸéÀÇ ¾Æ·¡¿¡´Â Status Bar°¡ ÀÖ½À´Ï´Ù. ÀÌ ¹Ù´Â editor Ä¿¼ÀÇ ÇöÀçÀÇ ÁÙ°ú
¿À» º¸¿©ÁÖ´Â µ¥¿¡¸¸ ¾²ÀÔ´Ï´Ù. ÀÌ Á¤º¸´Â ¿¡·¯°¡ ¹ß°ßµÇ¾úÀ» ¶§ ±× À§Ä¡¸¦ ã¾Æ°¡´Âµ¥ À¯¿ëÇÕ´Ï´Ù.
CMS
Script Elements [CMS ½ºÅ©¸³Æ®ÀÇ ±¸¼º ¿ä¼Ò]
Variables [º¯¼ö]
¡°º¯¼ö¡±°¡ CMSÀÇ ¸ðµç °ÍÀ̶ó°í ÇØµµ °ú¾ðÀÌ ¾Æ´Õ´Ï´Ù. º¯¼ö´Â ½ÇÁ¦ ÄÁÆ®·Ñ·¯¿Í CMS ÄÁÆ®·ÑÀÇ ¹öư°ú
ÃàÀ» ³ªÅ¸³»´Âµ¥ ¾²À̸ç, ¸Å°³ÀÇ °á°ú´Â ½ºÅ©¸³Æ®ÀÇ Ã³¸®¿¡ µû¶ó ÀúÀåµË´Ï´Ù.
±âº»ÀûÀ¸·Î µÎ °¡ÁöÀÇ º¯¼ö°¡ Àִµ¥, Çϳª´Â ¾Æ³¯·Î±× º¯¼öÀÌ°í ¶Ç Çϳª´Â Bit º¯¼öÀÔ´Ï´Ù. ÀÌ ºÎºÐ¿¡¼´Â
ÀÌ ±âº» º¯¼öÀÇ Çü½Ä°ú ¿ë·ÊµéÀ» ¼³¸íÇÕ´Ï´Ù.
Analog Variables [¾Æ³¯·Î±× º¯¼ö]
¿ì¼± ±âº»ÀûÀÎ Çü½ÄÀº ¡°¾Æ³¯·Î±×¡± º¯¼öÀÔ´Ï´Ù. ¾Æ³¯·Î±× º¯¼ö´Â ¼öÄ¡°ªÀ» ³ªÅ¸³»´Âµ¥ ¾²ÀÔ´Ï´Ù. ÀÌ °ªÀº
½ÇÁ¦ ÀåÄ¡ÀÇ ÇöÀç Ãà°ª, CMS ÄÁÆ®·Ñ ÃàÀÇ °ª, ¶Ç´Â ½ºÅ©¸³Æ®¿¡¼ Á¤ÀÇÇÑ ¿¬»ê °á°ú µîÀ» ³ªÅ¸³À´Ï´Ù.
¾Æ³¯·Î±× º¯¼ö´Â ¿¬»ê¿¡ ÃæºÐÇϰԲû ¸Å¿ì ³ÐÀº ¿µ¿ªÀ» °¡Áý´Ï´Ù. ±×·¸Áö¸¸, ½ÇÁ¦ ÀåÄ¡ÀÇ Ãà°ªÀº Ç×»ó
0¿¡¼ 255±îÁö ÀÔ´Ï´Ù. Control Manager ͏®ºê·¹ÀÌ¼Ç ÀýÂ÷¿¡¼ ÀÌ °ªÀÌ À¯ÁöµÇ¸ç, ½ÇÁ¦
ÀåÄ¡¿¡¼ ÀÌ °ªµéÀÌ ³ªÅ¸³³´Ï´Ù.
CMS ControlsÀÇ Ãà¿¡ ÇÒ´çµÈ °ªµéµµ Control Manager Device·Î¼ Windows·Î
Àü¼ÛµÇ°Å³ª Up/Down À̳ª À§Ä¡°ªÀ» Àü¼ÛÇϴµ¥ ¾²À̹ǷÎ, ¿ª½Ã °ªÀº 0¿¡¼ 255±îÁö ÀÔ´Ï´Ù.
¾î¶² °æ¿ìµç 0¿¡¼ 255±îÁö°¡ ÃÖ´ë°ªÀÔ´Ï´Ù.
CMS Controls¿¡ °ªÀÌ ÀԷµDZâ Àü¿¡ CMS ½ºÅ©¸³Æ®¿¡¼ °ªÀÌ Àû´çÇÑ ¿µ¿ªÀ¸·Î Á¶Á¤µË´Ï´Ù.
CMS Controls Ãà¿¡ 0 ¹Ì¸¸ÀÇ °ªÀÌ ÇÒ´çµÇ¸é, ±× °ªÀº 0À¸·Î °£Áֵ˴ϴÙ.
°ªÀÌ 255º¸´Ù Å©¸é, 255·Î °£Áֵ˴ϴÙ. ÀÌ ¹ýÄ¢Àº CMS Controls¿¡ ÇÒ´çµÇ¾î ¸Ê¿¡¼ ¾²ÀÏ
°æ¿ì¿¡¸¸ Àû¿ëµÈ´Ù´Â °ÍÀ» ÁÖÀÇÇØÁֽʽÿÀ.
¿¬»êÀ̳ª ±âŸ ´Ù¸¥ ÀÛ¾÷Áß¿¡´Â ¼öÄ¡µéÀÌ ÀÌ °ªÀÇ ¿µ¿ªÀ» ³ÑÀ» ¼öµµ ÀÖ½À´Ï´Ù. ±×·¸Áö¸¸ CMS¿¡ ¹®Á¦¸¦
ÀÏÀ¸Å°Áö´Â ¾Ê½À´Ï´Ù.
JS1.A1°ú °°Àº ½ÇÁ¦ ÄÁÆ®·Ñ·¯ Ãà¿¡¼ º¸¸é, ͏®ºê·¹À̼ÇÀ» ÇÏ´õ¶óµµ Range(°ª ¹üÀ§)³ª Gain(ÀԷ°ª
Á¶Á¤)°ªÀÌ Àû¿ëµÇ±â Àü¿¡ Ç×»ó ½ºÅ©¸³Æ®ÀÇ °ªÀ» ¹Þ½À´Ï´Ù. ÀÌ´Â ½ºÅ©¸³Æ®°¡ ÄÁÆ®·Ñ·¯ Ãà¿¡¼ ¾ÈÁ¤ÀûÀ¸·Î
Àüü ¿µ¿ªÀÇ ºñ·Ê ¼öÄ¡¸¦ °è»êÇÒ ¼ö ÀÖ´Ù´Â °ÍÀ» ¶æÇÕ´Ï´Ù.
ÁöÁ¤µÈ Gain°ú Range ¸Å°³º¯¼öµéÀº CMS Ãà¿¡ Á¦°øµÇ¾î ±×¿¡ ÇØ´çÇÏ´Â CMS Control
Manager Device¿¡ Àü¼ÛµÉ ¶§¿¡¸¸ Àû¿ëµË´Ï´Ù. Gain°ú Range ¸Å°³º¯¼ö´Â CMS ÃàÀÌ
Up/DownÀ̳ª À§Ä¡ °ªÀ» Àü¼ÛÇϴµ¥ ¾²ÀÏ ¶§´Â Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.
Bit Variables [ºñÆ® º¯¼ö]
±×´ÙÀ½ ±âº» Çü½ÄÀº ¡°Bit¡±º¯¼öÀÔ´Ï´Ù. ºñÆ® º¯¼ö´Â TRUE¿Í FALSEÀÇ µÎ °¡Áö °ª¸¸À» °¡Áý´Ï´Ù.
ÀÌ °ªµéÀº ½ÇÁ¦ ÀåÄ¡³ª CMS ControlsÀÇ ¹öư À§Ä¡¸¦ ¶æÇϸç, TRUE´Â ¹öưÀÌ ´¸° °ÍÀ»,
FALSE´Â ¹öưÀÌ ÇØÁ¦µÈ »óŸ¦ ³ªÅ¸³À´Ï´Ù.
ÀÌ °ªµéÀº ½ºÅ©¸³Æ® ÆÄÀÏ¿¡¼ Á¤ÀÇÇÑ ³í¸® ¿¬»ê, °è»ê ºñ±³, ³í¸® ÀåÄ¡ÀÇ Ãâ·Â, ±âŸ TRUE/FASLE
°ªÀÌ ÇÊ¿äÇÑ ±âŸ ´Ù¸¥ ÀÌÀ¯·Î ÀÎÇÏ¿© »êÃâµÉ ¼ö ÀÖ½À´Ï´Ù.
Constants [»ó¼ö]
»ó¼ö´Â ½ºÅ©¸³Æ®¿¡ ¼öÄ¡·Î ÀԷµǴ °ªÀÔ´Ï´Ù. ÀÌ °ªµéÀº ¡°241¡±°ú °°Àº ½ÊÁø¹ýÀÇ ¾Æ³¯·Î±× °ªÀ̳ª ¡°TRUE¡±¿Í
¡°FALSE¡±ÀÇ ºñÆ®°ªÀÌ µÉ ¼öµµ ÀÖ½À´Ï´Ù. »ó¼ö´Â ½ºÅ©¸³Æ®¿¡¼ »ó¼ö°ªÀ» ÇÒ´çÇÒ ¼ö ¾ø´Â °æ¿ì¸¸ ¾Æ´Ï¸é
´Ù¾çÇÑ ¿ëµµ·Î ¾²ÀÔ´Ï´Ù.
»ó¼ö´Â ÇÊ¿äÇÒ ¶§ ½ºÅ©¸³Æ®¿¡¼ Á¤ÀÇµÇ¸ç ¡°¾²±â¡±´Â ºÒ°¡´ÉÇÕ´Ï´Ù. ´Ù¸¥ ¾Æ³¯·Î±× °ª°ú ¸¶Âù°¡Áö·Î, »ó¼ö´Â
½ÇÁ¦ ÀåÄ¡¿¡ ÇÒ´çÇÒ ¼ö ¾ø½À´Ï´Ù.
ÇöÀç ¸ðµå ¼³Á¤¿¡ µû¶ó ¹Ì¸® ÁöÁ¤µÇ¾î¾ß ÇÏ´Â ¸î °¡ÁöÀÇ »ó¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ¼öÄ¡µéÀº ´ÙÀ½ Àåµé¿¡¼
¿©·¯ °¡Áö ¸íĪÀ¸·Î ¼³¸íÇÕ´Ï´Ù.
Varlable Names [º¯¼ö À̸§]
CMS¿¡¼ ¾²ÀÌ´Â ¸ðµç º¯¼öµéÀº Á¤ÇØÁø À̸§ÀÌ ÀÖ½À´Ï´Ù. À̸§µéÀº º¯¼öÀÇ Çü½Ä(¾Æ³¯·Î±×ÀÎÁö ºñÆ®ÀÎÁö),
±×¸®°í º¯¼ö°¡ ¹«¾ùÀ» ³ªÅ¸³»´ÂÁö¿¡ µû¸¨´Ï´Ù. ±× Áß ÈÄÀÚÀÇ °æ¿ì´Â ½ÇÁ¦ ÄÁÆ®·Ñ·¯ÀÇ ÄÁÆ®·Ñ, CMS ControlsÁßÀÇ
Çϳª, ¶Ç´Â CMS¿¡¼ Á¦°øÇÏ´Â ³»ºÎ º¯¼ö µîÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù.
General Naming Conventions [ÀÏ¹Ý ¸í¸í
±ÔÄ¢]
¾Æ³¯·Î±× º¯¼ö´Â ¡°A¡±·Î ½ÃÀÛÇϰí ÇØ´çÇÏ´Â ¾Æ³¯·Î±× º¯¼ö¸¦ ³ªÅ¸³»´Â ¼ýÀÚ°¡ ºÙÀ¸¸ç, ¡°A4¡±¿Í °°Àº
½ÄÀÔ´Ï´Ù. ÀÌ¿Í ºñ½ÁÇϰÔ, ºñÆ® º¯¼öµµ ¡°B¡±·Î ½ÃÀÛÇØ¼ ÇØ´çÇÏ´Â ºñÆ® º¯¼ö¸¦ ³ªÅ¸³»´Â ¼ýÀÚ°¡ ºÙ½À´Ï´Ù.
¡°B14¡±Ã³·³ ¸»ÀÔ´Ï´Ù. ÀÌ ¿øÄ¢Àº ¸ðµç º¯¼öµé¿¡ Àû¿ëµË´Ï´Ù.
Variable Groups [º¯¼ö ±×·ì]
º¯¼öµéÀº ´ë°³ ¸î °³ÀÇ ±×·ì ¾È¿¡ Æ÷ÇԵ˴ϴÙ. ¾î¶² °æ¿ì¿¡´Â º¯¼öÀÇ À̸§ ÀÚü°¡ ÀÏÁ¤ÇÑ ±×·ìÀ» ±¸ºÐÇϱ⵵
ÇÕ´Ï´Ù. ¶Ç ¾î¶² °æ¿ì¿¡´Â º¯¼ö À̸§ÀÌ ÀåÄ¡ À̸§ µÚ¿¡ ¡°.¡±¿Í ÃàÀ̳ª ¹öưÀÇ ID°¡ µÚµû¸£°Ô²û Ç¥½ÃµË´Ï´Ù.
Real Controllers [½ÇÁ¦ ÄÁÆ®·Ñ·¯]
½ÇÁ¦ ÄÁÆ®·Ñ·¯ÀÎ ¸Ê¿¡ ÀÖ´Â CH USB ÀåÄ¡´Â ¡°JS1¡±¿¡¼
JS16¡±±îÁö(¹°·Ð, ¸î °³ÀÇ Á¶À̽ºÆ½À» °¡Áö°í ÀÖ´À³Ä¿¡ µû¶ó)·Î ÁöÁ¤µË´Ï´Ù. ¡°JS1¡± ÄÁÆ®·Ñ·¯´Â
GUIÀÇ ¸Ê¿¡¼ Device TabÀÇ °¡Àå ¿ÞÂÊ¿¡ ÀÖ½À´Ï´Ù(¡°Program Settings¡±ÅÇÀº Á¦¿Ü)
¡°JS2¡±´Â ±× ¿À¸¥ ÂÊ¿¡ ÀÖ°í, ±×·± ½ÄÀ¸·Î ¼ø¼°¡ Á¤ÇØÁý´Ï´Ù.
±× ÄÁÆ®·ÑÀÇ Æ¯Á¤ÇÑ ÄÁÆ®·ÑÀ» ÁöÁ¤Çϱâ À§Çؼ´Â ÄÁÆ®·Ñ·¯ÀÇ ID, ´ÙÀ½¿¡ ¡°.¡±°¡ ºÙ°í ±×´ÙÀ½¿¡ ¾Æ³¯·Î±×
¶Ç´Â ºñÆ® º¯¼ö°¡ ºÙ½À´Ï´Ù. ¿¹¸¦ µé¸é, ¸ÊÀÇ ¸Ç ¿ÞÂÊ ÀåÄ¡ ÅÇÀÌ FighterStickÀ̸é, FighterStickÀÇ
XÃàÀº ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµË´Ï´Ù:
JS1.A1
±×¸®°í ±× ½ºÆ½ÀÇ 7¹ø ¹öưÀº ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
JS1.B7
±× ´ÙÀ½ ¿À¸¥ÂÊ ÅÇÀÇ ÀåÄ¡°¡ Pro ThrottleÀ̶ó¸é, ¸¶ÀÌÅ©·Î ½ºÆ½ÀÇ ¹öưÀº ¡°JS2.B1¡±ÀÌ
µË´Ï´Ù. Ãà°ú ÇÞÀÇ °æ¿ì¿¡´Â Ãà°ú ¹öưÀÌ ½±°Ô ½Äº°µÇÁö´Â ¾Ê½À´Ï´Ù. ÀÌ·± °æ¿ì¿¡´Â GUI°¡ Dialog
Pane¿¡¼ ÀåÄ¡ À̸§¿¡ ÀûÀýÇÑ ÁöÁ¤ÀÚ¸¦ ºÎ¿©Çϸç, ãÀ» ¶§´Â ±×°ÍÀ» ÀÌ¿ëÇÏ¸é µË´Ï´Ù.
¿¹¸¦ µé¸é, CombatStickÀÇ 1¹ø ÇÞÀº, ½ÇÁ¦·Î 7¹ø ¹öưÀÔ´Ï´Ù. À̸¦ GUI¿¡¼´Â ¡°hat
1 Up [B7]¡±À̶ó°í º¸¿©ÁÖ¸ç, ½ºÅ©¸³Æ®¿¡¼´Â B7À» »ç¿ëÇÏ°Ô µË´Ï´Ù.
¸¶Âù°¡Áö·Î, ½º·ÎƲ ÃàÀº ¡°Throttle [A3]¡±À̶ó°í º¸ÀÔ´Ï´Ù.
JSx ÀåÄ¡¿¡¼ ÀÎ½ÄµÈ ÃàµéÀº XÃà¿¡¼ VÃà±îÁö°¡ °¢°¢¡°A1¡±¿¡¼ ¡°A6¡±±îÁö°¡ µË´Ï´Ù. ¹öưÀº ¡°B1¡±¿¡¼
¡°B40¡±±îÁö ÀÔ´Ï´Ù.
»óÇÑÀÎ ¡°B40¡±´Â ¾ÕÀ¸·Î ´õ ´Ã¸± ¼ö ÀÖ°Ô Çϱâ À§ÇÑ °ÍÀÔ´Ï´Ù. ½ÇÁ¦·Î´Â ÄÁÆ®·Ñ·¯°¡ B16 ÀÌ»óÀÇ
¹öưÀº °¡ÁöÁö ¾Ê½À´Ï´Ù.
À§ÀÇ ±ÔÄ¢¿¡ ÇϳªÀÇ ¿¹¿Ü°¡ ÀÖ½À´Ï´Ù. Å×½ºÆ® ȸ鿡¼ ¹öưÀ¸·Î ³ªÅ¸³ªÁö ¾Ê´õ¶óµµ, ½ÇÁ¦ ÀåÄ¡ÀÇ POV
À§Ä¡´Â ¡°B25¡±¿¡¼ ¡°B32¡±±îÁöÀÇ ¹öưÀÌ µË´Ï´Ù.
¡°B25¡±¹öưÀº ¡°POV Up¡±À̰í, °Å±â¼ºÎÅÍ ¼ýÀÚ¼øÀ¸·Î POVÀÇ ½Ã°è¹æÇâ À§Ä¡ ¼ø¼¸¦ ³ªÅ¸³»¾î
¡°B32¡±´Â ¡°POV Up/Left¡±°¡ µË´Ï´Ù. ±×·¯¹Ç·Î, ¿¹¸¦ µé¸é CMS ½ºÅ©¸³Æ®¿¡¼ POV Up
À§Ä¡´Â ¡°JS1.B25¡±°¡ µÇ°í, POV Up/Right À§Ä¡´Â ¡°JS1.B26¡± µîÀÌ µË´Ï´Ù.
ÀÌ À̸§µéÀº POV¸¦ ¾î¶² ¸ðµå·Î ÇÁ·Î±×·¥ÇÏ´ÂÁö¿Í´Â »ó°üÀÌ ¾øÀ¸¸ç, POVÀÇ ¿òÁ÷ÀÓ¿¡ µû¶ó¼ ¼³Á¤µÇ¸ç,
¶Ç´Â ¹öưÀ̳ª ۰ªÀ» Àü¼ÛÇϵµ·Ï ÇÁ·Î±×·¡¹ÖÇÏ¿©µµ CMS ½ºÅ©¸³Æ®¿¡¼ B25¡¦B32ÀÇ À̸§À» »ç¿ëÇÒ ¼ö
ÀÖ½À´Ï´Ù.
ÇÞÀ» POV·Î ¼³Á¤ÇßÀ» ¶§´Â ÀÌ À§Ä¡µéÀº Å×½ºÆ® ȸ鿡¼ º¸ÀÌ´Â À§Ä¡¶ó´Â °ÍÀ» ÁÖÀÇÇØÁֽʽÿÀ. Pro
Throttle¿¡¼´Â, À̰ÍÀÌ ½ÇÁ¦ÀÇ À§Ä¡¿Í ¹Ýµå½Ã ÀÏÄ¡ÇÏÁö´Â ¾Ê½À´Ï´Ù.
ÇÑ ¿¹·Î, ¡°POV Up¡±Àº ½ÇÁ¦·Î´Â ÇÞÀ» ¿À¸¥ÂÊÀ¸·Î ¿òÁ÷ÀÌ´Â °ÍÀÔ´Ï´Ù. ¿©±â¼ºÎÅÍ ½Ã°è¹æÇâ ¼øÀ¸·Î
´Ù¸¥ À§Ä¡µéµµ Á¤ÇØÁý´Ï´Ù.
½ÇÁ¦ ÀåÄ¡ÀÇ Ãà°ú ¹öư¿¡ °ªÀ» ÇÒ´çÇÒ ¼ö´Â ¾ø½À´Ï´Ù. ÀÌ °ªµéÀº ÀåÄ¡ ±× ÀÚü·Î¸¸ Á¦¾îµË´Ï´Ù. ±×¸®°í
ÀÌ °ªµéÀº Àбâ Àü¿ëÀÔ´Ï´Ù.
GUI¿¡¼ ͏®ºê·¹À̼ÇÀÌ Á¤È®È÷ µÇ¾ú´Ù¸é ÄÁÆ®·Ñ¿¡¼ ÀԷµǴ ¾Æ³¯·Î±× °ªÀÇ ¹üÀ§´Â 0¿¡¼ 255±îÁöÀÔ´Ï´Ù.
CMS
Controls [CMS ÄÁÆ®·Ñ]
GUI¿¡¼ ÇÁ·Î±×·¥ÇÑ CMS Controls´Â JSx ÀåÄ¡¿Í ºñ½ÁÇÏ°Ô Ç¥½ÃµÇÁö¸¸, ¡°JSx¡±°¡ ¾Æ´Ï¶ó
¡°CMS¡±¶ó´Â Á¢µÎ»ç°¡ ºÙ½À´Ï´Ù. ¿¹¸¦ µé¸é:
CMS.B1
CMS.A13
¸Ê¿¡¼´Â ÇÑ ¼¼Æ®ÀÇ CMS Controls¸¸ÀÌ ÀÖÀ» ¼ö ÀÖÀ¸¹Ç·Î, ¼ýÀÚ ½Äº°ÀÚ´Â Çʿ䰡 ¾ø½À´Ï´Ù.
CMS¿¡´Â ¡°A1¡±¿¡¼ ¡°A64¡±±îÁöÀÇ 64Ãà°ú, ¡°B1¡±¿¡¼ B128¡±±îÁöÀÇ 128 ¹öưÀÌ Æ÷ÇԵ˴ϴÙ.
ÀÌ °ªµéÀº CMS Controls ÅÇÀÌ ¼±ÅõǾîÀÖÀ» ¶§ GUI¿¡¼ ÇÁ·Î±×·¡¹ÖÇÒ ¼ö ÀÖ´Â Ãà°ú ¹öưµé°ú
ÀÏÄ¡ÇÕ´Ï´Ù. CMS º¯¼ö´Â Àбâ¿Í ¼³Á¤ÀÌ ¸ðµÎ °¡´ÉÇÕ´Ï´Ù.
CMS´Â º¯¼ö°ªÀ» ¼³Á¤ÇÔÀ¸·Î½á CMS ControlÀÇ Ãâ·Â°ªÀ» Á¦¾îÇÕ´Ï´Ù.
JSx º¯¼ö¿Í ¸¶Âù°¡Áö·Î, CMS ¾Æ³¯·Î±× °ªÀÇ ¹üÀ§µµ 0¿¡¼ 255±îÁö ÀÔ´Ï´Ù. ÀÌ °ªÀ» ³ÑÀ»
¼öµµ ÀÖÁö¸¸, ÃʰúµÈ °ªµéÀº Control Manager¿¡ ÀÇÇØ ÃÖ¼Ò°ªÀ̳ª ÃÖ´ë°ªÀ¸·Î ³ª¿É´Ï´Ù.
GUI¿¡¼ CMS Control ÃàÀ» ÁöÁ¤ÇÒ ¶§, ±× ÃàÀº CMSÀÇ ¼³Á¤°ªÀÎ 0¿¡¼ 255±îÁö¸¦ ÃÖ´ë°ª°ú
ÃÖ¼Ò°ªÀ¸·Î °¡Áý´Ï´Ù.
Internal Variables [³»ºÎ º¯¼ö]
CMS´Â ½ºÅ©¸³Æ®¿¡¼ »ç¿ëÇÒ ³»ºÎ ¡°½ºÅ©·¡Ä¡ ÆÐµå¡± º¯¼ö¸¦ Á¦°øÇÕ´Ï´Ù. ÀÌ º¯¼öµéÀº GUI¿¡¼ Á÷Á¢
ÇÁ·Î±×·¥ÇÒ ¼ö´Â ¾øÀ¸¸ç, CMS ControlsÀ¸·Î¸¸ ÇÁ·Î±×·¥ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ º¯¼öµéÀº ÀúÀåÀÛ¾÷ µî¿¡ ¾²ÀÔ´Ï´Ù. CMS Controls·Î Control Manager Device
¹öư°ú ÃàÀ» Á¦¾îÇϰųª ۰ªÀ» Àü¼ÛÇϴµ¥ º¯¼öµéÀÌ ½ÇÁ¦·Î ÇÊ¿äÇÏÁö ¾ÊÀ» ¶§¿¡¸¸ ¾²´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
³»ºÎ º¯¼ö¿¡´Â 256°³ÀÇ ³»ºÎ ¾Æ³¯·Î±× °ªµé°ú 1024°³ÀÇ ºñÆ® °ªÀÌ ÀÖ½À´Ï´Ù. ÀÌ °ªµéÀº ¾î¶² ¡°ÀåÄ¡(device)¡±¿¡µµ
¿¬°áµÇ¾îÀÖÁö ¾ÊÀ¸¹Ç·Î, Á¢µÎ±âÈ£ ¾øÀÌ Ç¥±âµË´Ï´Ù. º¯¼ö À̸§µéÀº ¡°A1¡±¿¡¼ A256¡±±îÁö¿Í, ¡°B1¡±¿¡¼
B1024¡±±îÁöÀÔ´Ï´Ù.
Device Variables [ÀåÄ¡ º¯¼ö]
¡°Device Variables(ÀåÄ¡ º¯¼ö)¡±¶ó°í ÇÏ´Â º¯¼öµéµµ ÀÖ½À´Ï´Ù. ÀÌ º¯¼öµéÀº ½ºÅ©¸³Æ® ¾ð¾î¿¡
¾²ÀÌ´Â ±â´Éµé, ƯÈ÷ ŸÀ̸ÓÀÇ ÇöÀç »óŸ¦ ³ªÅ¸³»´Â ºñÆ® °ªÀÔ´Ï´Ù.
³ªÁß¿¡ Á»´õ ÀÚ¼¼È÷ ¼³¸íÇϰÚÁö¸¸, Áö±ÝÀº ±×·± °ÍÀÌ ÀÖ´Ù´Â Á¤µµ¸¸ ¸»¾¸µå¸®°Ú½À´Ï´Ù. ÀåÄ¡ º¯¼ö¿¡´Â
256°³ÀÇ °ªÀÌ ÀÖÀ¸¸ç, ¡°D1¡±¿¡¼ ¡°D256¡±±îÁö·Î À̸§Áö¾îÁö°í Á¢µÎ±âÈ£´Â ¾ø½À´Ï´Ù.
Special Variables [Ưº° º¯¼ö]
CURRENTMODE¶ó°í ÇÏ´Â ¶Ç ÇϳªÀÇ ³»ºÎ º¯¼ö°¡ ÀÖ½À´Ï´Ù. À̰ÍÀº Control ManagerÀÇ
ÇöÀç ¸ðµå¸¦ ³ªÅ¸³»¸ç, º¸Åë FighterStickÀ̳ª Pro ThrottleÀ» ÅëÇØ ¼³Á¤µË´Ï´Ù.
CURRENTMODE º¯¼ö¿¡ °ªÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ°í, ±×·¯¸é ¸ÊÀº À§ÀÇ ÀåÄ¡µé¿¡¼ ¼³Á¤ÇÏ´Â ´ë·Î ¸ðµå°¡
¹Ù²î°Ô µË´Ï´Ù. ½ºÅ©¸³Æ®´Â ±× ÀåÄ¡µéÀÇ LED Ç¥½Ã±â¿¡ ¿µÇâÀ» ÁÖÁö´Â ¸øÇÏÁö¸¸, ½ºÅ©¸³Æ®¸¦ ÅëÇØ CURRENTMODE¸¦
¼³Á¤Çϸé Control Manager ¸ðµå¿Í Á¶Á¾ÀåÄ¡ÀÇ LED°¡ ¿¬µ¿µË´Ï´Ù.
Predefined Constants [¼± ÁöÁ¤ »ó¼ö]
CURRENTMODE º¯¼ö¸¦ ¼³Á¤Çϰųª üũÇϴµ¥ ¾²ÀÌ´Â ¼¼ °¡ÁöÀÇ ¼± ÁöÁ¤ »ó¼öµéÀÌ ÀÖ½À´Ï´Ù. ÀÌ
°ªµéÀº MODE1, MODE2, MODE3ÀÌ °¢°¢ 0, 1, 2¿¡ ´ëÀÀÇÕ´Ï´Ù.
Operators [¿¬»êÀÚ]
Analog Operators [¾Æ³¯·Î±× ¿¬»êÀÚ]
CMS´Â ¾Æ³¯·Î±×°ª°ú ºñÆ®°ªÀÇ ¡°Operators(¿¬»êÀÚ)¡±¸¦ Á¦°øÇÕ´Ï´Ù. ¾Æ³¯·Î±× °ª¿¡ Áö¿øµÇ´Â ¿¬»êÀÚ´Â
±âº»ÀûÀÎ °è»ê±â´ÉÀ» ÇÏ´Â ¡°+¡±, ¡°-¡°, ¡°*¡±, ¡°/¡± ±âÈ£ÀÔ´Ï´Ù.
JS1.A1 + 100 // Addition
CMS.A1 - A27 // Subtraction
A2 * 5 // Multiplication
JS1.A1 / 2 // Division
À§ ¿¹µéÀº ¸ðµÎ ¾Æ³¯·Î±× °ªÀ¸·Î ÁöÁ¤µÉ ¼ö ÀÖ´Â(JSx º¯¼ö´Â Á¦¿Ü) À¯È¿ÇÑ ¾Æ³¯·Î±× °ªÀ» »êÃâÇÕ´Ï´Ù.
Logical Operators [³í¸® ¿¬»êÀÚ]
³í¸® ¿¬»êÀ» À§Çؼ, CMS´Â AND, OR, NOTÀÇ ±â´ÉÀ» Á¦°øÇÕ´Ï´Ù. ³í¸®¿¬»êÀÚ¿¡ Àͼ÷ÇÏÁö ¾ÊÀº
°æ¿ì¸¦ À§ÇØ, ¿¬»êÀº ¸Å¿ì °£´ÜÇÕ´Ï´Ù.
¿¹¸¦ µé¸é:
JS1.B1 AND JS1.B4
¿©±â¼´Â JS1ÀÇ B1°ú B4°¡ TRUE »óÅÂÀÌ¸é °á°ú°ªÀÌ TRUE°¡ µË´Ï´Ù.
ORµµ ºñ½ÁÇÏ°Ô ¾²ÀÔ´Ï´Ù:
JS1.B1 OR JS1.B4
¿©±â¼´Â JS1ÀÇ B1À̳ª B4°¡ TRUE »óÅÂÀÌ¸é °á°ú°ªÀÌ TRUE°¡ µË´Ï´Ù.
NOT ¿¬»êÀÚ´Â ´Ü¼øÈ÷ ÀÔ·Â »óŸ¦ ¹ÝÀü½ÃŰ´Â °ÍÀÔ´Ï´Ù. º¸±â:
NOT JS1.B1
¿©±â¼´Â JS1.B1ÀÌ FALSE »óŶó¸é TRUE°ªÀÌ µÇ°í, ±× ¹Ý´ëµµ °°½À´Ï´Ù.
Comparison Operators [ºñ±³ ¿¬»êÀÚ]
ºñ±³ ¿¬»êÀÚ´Â ¾Æ³¯·Î±× º¯¼öÀÇ °ªµéÀ» ºñ±³Çϴµ¥ ¾²ÀÔ´Ï´Ù. ¿©±â¿¡´Â ¿©¼¸ °³ÀÇ ¿¬»êÀÚ°¡ ÀÖ½À´Ï´Ù. ´Ü¾î³ª
±âÈ£¸¦ ¸ðµÎ ÇÁ·Î±×·¡¹Ö¿¡ ÀÌ¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ´Ü¾î³ª ±âÈ£µéÀº ¿¬»ê°á°ú°¡ ¼·Î °°½À´Ï´Ù.
| Less Than (¹Ì¸¸) |
"LT" ¶Ç´Â "<" |
| Less Than or Equal To (ÀÌÇÏ) |
"LE" ¶Ç´Â "<=" |
| Equal To (°°´Ù) |
"EQ" ¶Ç´Â "==" ("="¸¦ µÎ¹ø
¾¸) |
| Greater Than or Equal To (ÀÌ»ó) |
"GE" ¶Ç´Â ">=" |
| Greater Than (º¸´Ù Å©´Ù) |
"GT" ¶Ç´Â "<" |
| Not Equal To (°°Áö ¾Ê´Ù) |
"NE" ¶Ç´Â "!=" |
ÀÌ ¿¬»êÀÚµéÀÇ ÀÌ¿ëÀº ½ºÅ©¸³Æ® ÆÄÀÏ ¸¸µé±â ºÎºÐ¿¡¼ ´õ ÀÚ¼¼ÇÏ°Ô ´Ù·ì´Ï´Ù.
Assignment Operator [ÁöÁ¤ ¿¬»êÀÚ]
ÁöÁ¤ ¿¬»êÀÚ´Â ¡°=¡± ±âÈ£ÀÔ´Ï´Ù. ÀÌ ¿¬»êÀÚ´Â º¯¼ö¸¦ ÀÏÁ¤ÇÑ °ªÀ¸·Î ¼³Á¤ÇϰԲû ÇØÁÝ´Ï´Ù. ÀÌ´Â »ó¼ö,
Ãà °ª, ±âŸ ÀúÀåµÈ °ªµéÀÔ´Ï´Ù. ÀÌ ³»¿ëÀº Statements(±¸¹®) ºÎºÐ¿¡¼ ´Ù·ì´Ï´Ù.
Expressions [¿¬»ê½Ä]
¿¬»ê½ÄÀº ±âº»ÀûÀ¸·Î °ªÀ» °¡Áö´Â ¸ðµç °ÍÀ̸ç, ¾Æ³¯·Î±×¿Í ºñÆ®°ª ¸ðµÎ °¡´ÉÇÕ´Ï´Ù. ¸ðµç º¯¼öµéÀº À§¿¡
¼³¸íÇÑ ¿¬»êÀÚµéÀ» ÀÌ¿ëÇÏ¿© ¸¸µé¾îÁö´Â º¹ÀâÇÑ ¿¬»êÀÎ ¿¬»ê½ÄÀÔ´Ï´Ù. ¿¬»ê½Ä¿¡´Â Çʿ信 µû¶ó ¿¬»êµéÀ» ¹¾îÁÖ´Â
°ýÈ£°¡ Æ÷ÇԵ˴ϴÙ. ´ÙÀ½Àº ¿¬»ê½ÄÀÇ ¿¹ÀÔ´Ï´Ù.
JS1.B1 OR JS1.B2
(JS1.A1 + JS1.A2) / 2
(JS1.B1 AND JS1.B2) OR B2 OR (CMS.B1
AND CMS.B2)
¿¬»ê½ÄÀº CMS Controls·Î º¸³»Á®¼ ¸ÊÀÇ ÇöÀç »óŸ¦ Á¤ÀÇÇÏ´Â °ªÀ» ¸¸µå´Âµ¥ ¾²ÀÌ´Â, CMS
½ºÅ©¸³Æ®ÀÇ Ãʼ®ÀÔ´Ï´Ù.
Scripting
Reference [½ºÅ©¸³Æ® Âü°í] -- PART 1
Basic Scripting [±âº» ½ºÅ©¸³Æ® ÀÛ¾÷]
Ç¥ÁØ ½ºÅ©¸³Æ® ¾ð¾î¸¦ ±¸Ã¼ÀûÀ¸·Î ¼³¸íÇϱâ Àü¿¡, ÀÛµ¿¹æ½ÄÀ» °£´ÜÈ÷ ¼³¸íÇϰڽÀ´Ï´Ù. ¿ì¼± »ý°¢ÇÒ °ÍÀº,
½ºÅ©¸³Æ®´Â CMS°¡ Mapped Mode¿¡ ÀÖÀ» ¶§ 󸮡°ÇÒ ÀÏÀÇ ¸ñ·Ï¡±À̶ó´Â °ÍÀÔ´Ï´Ù.
½ºÅ©¸³Æ®´Â µ¥ÀÌÅÍ Àü¼Û, ƯÁ¤ÇÑ ±â´ÉÀÇ Ã³¸® µîÀ» CMS¿¡ ¾Ë¸³´Ï´Ù.
¸ñ·ÏÀÇ °¢ Ç׸ñµé(statement; ¸í·É±¸¹®À̶ó°í ÇÏ´Â)Àº CMS°¡ Á¦°øÇÏ´Â ±â´ÉÀ» ÀÌ¿ëÇÏ¿© ½ÇÇàÇÒ
ÇൿµéÀ» Á¤ÀÇÇÕ´Ï´Ù.
½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀº ±âº»ÀûÀ¸·Î ÇÁ·Î±×·¥ÀÌ µû¶ó¾ß ÇÒ ¹æÇâÀ» ¼³Á¤ÇÏ´Â °ÍÀÔ´Ï´Ù. ÇÊ¿äÇÑ Ç׸ñµéÀ»
¸¸µå´Â °ÍÀº °£È¤ ±î´Ù·Ó±âµµ ÇÏÁö¸¸, ±âº»ÀûÀ¸·Î ÇØÁÖ¾î¾ß ÇÒ ÀÏÀÔ´Ï´Ù.
The Script Loop [½ºÅ©¸³Æ® ·çÇÁ]
Control ManagerÀÇ ÀÛ¾÷Àº ´ÙÀ½°ú °°Àº ¹Ýº¹ÀûÀÎ ¡°loop(Áֱ⼺)¡±ÀÛ¾÷ÀÔ´Ï´Ù.
1. ½ÇÁ¦ ÀåÄ¡¿¡¼ »õ Ãà°ª°ú ¹öư »óŸ¦ ¾ò´Â´Ù.
2. ½ºÅ©¸³Æ®¿¡¼ Á¤ÀÇÇÑ ¹æ¹ý´ë·Î »õ °ªÀ» ó¸®ÇÏ¿©
CMS Controls¿¡¼ ¹öư°ú ÃàÀÇ »õ ¸í·ÉÀ» ¸¸µç´Ù.
3. GUI¿¡¼ ¸¸µé¾îÁø ¸ÊÀ¸·Î »õ CMS ControlÀÇ
¸í·É±¸¹®À» ó¸®ÇÏ¿© Control Manager DeviceÀÇ Ãà°ú ¹öư, ۰ª, ¸¶¿ì½º ¿òÁ÷ÀÓÀ» ¸¸µé¾î³½´Ù.
4. 1´Ü°è·Î µ¹¾Æ°¡¼ À§ °úÁ¤À» ¹Ýº¹ÇÑ´Ù.
·çÇÁ´Â ±âº»ÀûÀ¸·Î ½ÇÁ¦ µ¥ÀÌÅÍÀÇ º¯°æ, Áö³ ·çÇÁ°¡ ¹Ýº¹µÈ ½Ã°£ µîµî ¸î °¡Áö ¿äÀο¡ µû¶ó ÀÏÁ¤ÇϰÔ
Á¤±âÀûÀ¸·Î ½ÇÇàµË´Ï´Ù. ´Ü¼øÇØ º¸ÀÌÁö¸¸, ÁÖÀǰ¡ ÇÊ¿äÇÕ´Ï´Ù.
2´Ü°è°¡ ½ÇÇàÁßÀÏ ¶§, ½ºÅ©¸³Æ®´Â ù° ÁÙ¿¡¼ ½ÃÀÛÇÏ¿© ¸¶Áö¸· ÁÙ±îÁö ó¸®ÇÕ´Ï´Ù. ¿©±â¿¡´Â ¸Å¿ì ÀûÀº
½Ã°£¸¸ÀÌ °É¸®Áö¸¸, ½ºÅ©¸³Æ®ÀÇ ¸í·ÉµéÀº µ¿½Ã¿¡ ¶Ç´Â ÀÓÀÇ·Î ÀÌ·ç¾îÁöÁö ¾Ê°í, ¼ø¼´ë·Î ÀÌ·ç¾îÁý´Ï´Ù.
°°Àº 󸮱Ⱓ Áß¿¡´Â ½ºÅ©¸³Æ® ¸í·É±¸¹®ÀÌ ÀÌÀüÀÇ ½ºÅ©¸³Æ® ³»¿ë¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¸é,
10¹øÂ° ÁÙ¿¡¼ ¹«¾ð°¡°¡ ¹Ù²î¾ú´Ù¸é, ´ÙÀ½¹ø¿¡ ½ºÅ©¸³Æ®°¡ ´Ù½Ã ó¸®µÉ ¶§±îÁö 9¹øÂ° ÁÙ¿¡´Â ¿µÇâÀ» ¹ÌÄ¡Áö
¸øÇÕ´Ï´Ù.
ÀÌ ÀÛ¾÷ 󸮼ӵµ´Â °ÅÀÇ µ¿½Ã¿¡ °¡±õ½À´Ï´Ù.
¶Ç ÇѰ¡Áö, 1´Ü°è¿¡¼ ¾ò¾îÁø ½ÇÁ¦ ÀåÄ¡ÀÇ °ªÀÇ º¯°æÀ» Á¦¿ÜÇϸé, 1,3,4´Ü°è¿¡¼´Â º¯¼öµéÀÇ °ªÀÌ
º¯ÇÏÁö ¾Ê½À´Ï´Ù. 2´Ü°è µ¿¾È¿¡¼¸¸ ½ºÅ©¸³Æ® ¸í·É±¸¹®ÀÇ °á°ú°¡ ¹Ù²ò´Ï´Ù.
A Simple Script [°£´ÜÇÑ ½ºÅ©¸³Æ® ¿¹]
°£´ÜÇÑ ½ºÅ©¸³Æ® ¿¹Á¦°¡ Á¶±Ý ÀÌÇØ¿¡ µµ¿òÀÌ µÉ ¼ö ÀÖÀ» °Í °°½À´Ï´Ù. ¾î¶² ÀÌÀ¯·Î ÇØ¼ ÇϳªÀÇ Á¶À̽ºÆ½¿¡
¸ÊÀ» ¸¸µé·Á°í ÇÑ´Ù°í ÇØº¸°Ú½À´Ï´Ù. Á¶À̽ºÆ½ 2¹ø ¹öưÀÌ ÇØÁ¦µÇ¾úÀ» ¶§ Control Manager
Device 1ÀÌ ´·¯Áö°í ±× ¹Ý´ëµµ °¡´ÉÇϵµ·Ï ÇÏ°í ½Í´Ù°í ÇØ º¾´Ï´Ù.
´Ü¼øÇÑ ¿¹ÀÌÁö¸¸, µ¥ÀÌÅͰ¡ ½Ã½ºÅÛ¿¡¼ ¾î¶»°Ô ¿òÁ÷ÀÌ´ÂÁö¸¦ º¸¿©ÁÝ´Ï´Ù.
À§ÀÇ ³»¿ë¿¡ µû¶ó ½ºÅ©¸³Æ®¸¦ ¸¸µé¸é ÀÌ·± ½ÄÀ¸·Î µÉ °ÍÀÔ´Ï´Ù:
SCRIPT
CMS.B1 = NOT JS1.B2;
ENDSCRIPT
½ºÅ©¸³Æ®´Â ½ÇÁ¦·Î´Â SCRIPT¿Í ENDSCRIPT ¸í·ÉÁÙ »çÀÌÀÇ ÇÑ ÁÙ·Î ÀÌ·ç¾îÁý´Ï´Ù. ¸í·É±¸¹®ÀÇ
³»¿ëÀº ´Ü¼øÈ÷ CMS.B1(CMS ControlsÀÇ Ã¹ ¹øÂ° ¹öư)À» JS1.B2(Á¶À̽ºÆ½ÀÇ 2¹ø ¹öư)ÀÇ
¹Ý´ë·Î ¼³Á¤ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
·çÇÁ°¡ ½ÇÇàµÉ ¶§¸¶´Ù, JS1.B2ÀÇ »óŰ¡ üũµÇ°í ±× ¹Ý´ë°ªÀÌ CMS.B1¿¡ Àü¼ÛµË´Ï´Ù.
CMS.B1Àº Windows¿¡¼ ÀÚµ¿À¸·Î ÀνĵǴ ÀåÄ¡°¡ ¾Æ´Ï¹Ç·Î, GUI¿¡¼ CMS ControlÀÇ
1¹ø ¹öưÀ» ¼±ÅÃÇØ³õ¾Æ¾ß ÇÕ´Ï´Ù. ±× ¹öưÀ» DX Mode·Î ¼³Á¤Çϰí CM Device 1, Button
2·Î ÁöÁ¤ÇÕ´Ï´Ù.
¿©·¯ °³ÀÇ ÀåÄ¡µéÀÌ ±× ¹öưÀ» Á¦¾îÇÏÁö ¾Êµµ·Ï Çϱâ À§ÇØ GUI¿¡¼ ÀÌÀü¿¡ ÀÖ´ø CM Device
1, Button 2ÀÇ ÁöÁ¤°ªÀ» »èÁ¦ÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸ÊÀ» ¼³Á¤ÇÏ°í ´Ù¿î·ÎµåÇϸé, Á¶À̽ºÆ½ÀÇ 2¹ø ¹öưÀ» ÇØÁ¦Çϸé Button 2°¡ ´·¯Áö°í Á¶À̽ºÆ½ ¹öưÀ»
´©¸£¸é Button 2°¡ ÇØÁ¦µÇ´Â °ÍÀ¸·Î ÀÛµ¿ÇÏ°Ô µË´Ï´Ù.
Script Definition [½ºÅ©¸³Æ® Á¤ÀÇ]
¸ÊÀ» »õ·Î ¸¸µé¸é, Control Manager´Â Ç×»ó ±×¿¡ Æ÷ÇÔµÈ ½ºÅ©¸³Æ® ÆÄÀÏÀ» ¸¸µì´Ï´Ù. ½ºÅ©¸³Æ®
ÆÄÀÏÀº ÅØ½ºÆ® ÆÄÀÏÀÔ´Ï´Ù. ¸Ê ÆÄÀϰú ÆÄÀϸíÀº °°Áö¸¸, È®ÀåÀÚ´Â ¡°.MAP¡±ÀÌ ¾Æ´Ï¶ó ¡°.CMS¡±ÀÔ´Ï´Ù.
½ºÅ©¸³Æ®´Â óÀ½¿¡´Â ºñ¾îÀÖ°í, ½ºÅ©¸³Æ®ÀÇ ½ÃÀÛ°ú ³¡À» ¾Ë¸®´Â ¸í·É±¸¹®¸¸ ÀÖ½À´Ï´Ù. ºó ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú
°°½À´Ï´Ù:
SCRIPT
ENDSCRIPT
ºó ½ºÅ©¸³Æ®´Â ¾Æ¹«·± ±â´Éµµ ÇÏÁö ¾Ê½À´Ï´Ù. SCRIPT¿Í ENDSCRIPT ¸í·É±¸¹® »çÀÌ¿¡ ½ÇÇàÇÒ
µ¿ÀÛÀ» Á¤ÀÇÇÏ´Â ½ºÆ®¸³Æ® ¸í·É±¸¹®À» ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.
±×·¸Áö ¾ÊÀ¸¸é, ¸Ê¿¡¼ ½ÇÇàµÇ´Â µ¿ÀÛµéÀº ½ÇÁ¦ ÀåÄ¡¿Í GUI¿¡¼ Á¤ÀÇÇÑ °Í¿¡ µû¸£°Ô µË´Ï´Ù
SCRIPT¿Í ENDSCRIPT »çÀÌ¿¡ µé¾î°¥ ±â´ÉµéÀº ´ÙÀ½ ¸î °³ÀÇ Àå¿¡¼ ´Ù·ì´Ï´Ù. ±× Àü¿¡, ¸î°¡Áö
ÁÖÀÇÇØ¾ß ÇÒ »çÇ×ÀÌ ÀÖ½À´Ï´Ù.
Case Sensitivity [´ë¼Ò¹®ÀÚ ±¸ºÐ]
CMS ½ºÅ©¸³Æ® ¾ð¾î´Â ´ë¼Ò¹®ÀÚ ±¸ºÐÀ» ÇÏÁö ¾ÊÀ¸¸ç, ¡°SCRIPT¡±´Â ¡®script¡±³ª ¡°ScRiPt¡±¸¦
¶È°°ÀÌ ÀνÄÇÕ´Ï´Ù. ¸¶Âù°¡Áö·Î ¡°JS1.A1¡±Àº ¡°js1.a1¡±°ú °°½À´Ï´Ù. Àбâ ÁÁµµ·Ï ´ë¼Ò¹®ÀÚ¸¦
±¸º°Çؼ ¾²´Â °Íµµ ±¦Âú½À´Ï´Ù. ¿¹¸¦ µé¸é, ¡°EXITCASE¡±³ª ¡°exitcase¡±¶ó°í ¾²Áö ¾Ê°í
¡°ExitCase¡±¶ó°í ¾²´Â °Í µîÀÔ´Ï´Ù. ÆÄÀÏ¿¡ ÀÔ·ÂµÈ ¹«¾ùÀ̵çÁö ´ë¼Ò¹®ÀÚ ±¸ºÐ ¾øÀÌ °°Àº °á°ú°¡
Ãâ·ÂµË´Ï´Ù.
Comments [ÁÖ¼® ´Þ±â]
Comment(ÁÖ¼®)´Â ½ºÅ©¸³Æ®ÀÇ ±â´ÉÀ» ¼³¸íÇØÁִ ǥ½ÃÀÔ´Ï´Ù. ²À ÇÊ¿äÇÏÁö´Â ¾ÊÀ¸¸ç ½ºÅ©¸³Æ®ÀÇ ±â´É¿¡
¿µÇâÀ» ¹ÌÄ¡Áöµµ ¾Ê½À´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ¾î´À °÷¿¡³ª ¾µ ¼ö ÀÖ½À´Ï´Ù. Comment´Â ¡°//¡± ±âÈ£¸¦
¾Õ¿¡ ºÙ¿© Ç¥½ÃÇÕ´Ï´Ù. ¡°//¡±À¸·Î ½ÃÀÛÇÏ´Â ¹®ÀåÀº ±× ÁÙÀÇ ³¡±îÁö Àû¿ëµÇ´Â °ÍÀ¸·Î °£Áֵ˴ϴÙ. ¿¹¸¦
µé¸é:
// This is a comment.
Conment´Â ²À ÇÊ¿äÇÑ °ÍÀº ¾Æ´ÏÁö¸¸, »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù. ¿À·¡°£¸¸¿¡ ½ºÅ©¸³Æ® ÀÛ¾÷À» ÇØ¼
½ºÅ©¸³Æ®¿¡ ¾î¶² ±â´ÉÀ» ³Ö¾ú¾ú´ÂÁö Àß ¸ð¸¦ ¶§ µµ¿òÀÌ µÇ¸ç, °£´ÜÇÑ ÁÖ¼®À» ºÙÀ̱⸸ ÇØµµ Å©°Ô µµ¿òÀÌ
µË´Ï´Ù.
Semicolons [¼¼¹ÌÄÝ·Ð]
´ëºÎºÐÀÇ ½ºÅ©¸³Æ® ¸í·É±¸¹®Àº ±× ÁÙÀÇ ½ÇÁ¦ ±â´É ¹®ÀåÀÇ ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀÌ µé¾î°©´Ï´Ù. ¼øÈ¯ Á¦¾î(Flow-control)
¸í·É±¸¹®°ú ¸î°¡Áö ´Ù¸¥ ±â´Éµé¿¡¼´Â ÀÌ ±ÔÄ¢¿¡ ¿¹¿Ü°¡ »ý±â´Âµ¥, ÀÌ´Â Àû´çÇÑ ºÎºÐ¿¡¼ ¼³¸íÇϰڽÀ´Ï´Ù.
¼¼¹ÌÄÝ·ÐÀº comment ºÎºÐÀÇ ¾Õ¿¡ µé¾î°¡¾ß Çϸç, ±×·¸Áö ¾ÊÀ¸¸é commentÀÇ ÀϺηΠ°£Áֵ˴ϴÙ.
º¸±â
CMS.A1 = JS1.A1; // Copy Joystick
1 X Axis to CMS Axis 1
¡°//¡±·Î ½ÃÀ۵Ǵ comment ºÎºÐÀº ±âº»ÀûÀ¸·Î ½ºÅ©¸³Æ®¿¡¼ ¾ø´Â °Í°ú ¸¶Âù°¡Áö¶ó´Â Á¡À» ±â¾ïÇϽʽÿÀ.
Assignment statement [ÁöÁ¤ ¸í·É±¸¹®]
½ºÅ©¸³Æ®¿¡¼ °¡Àå ´Ü¼øÇϸ鼵µ ÈçÈ÷ ¾²ÀÌ´Â ÀÛ¾÷ÀÌ º¯¼öÀÇ °ªÀ» ÇÒ´çÇÏ´Â °ÍÀÔ´Ï´Ù. ÀÌ ÀÛ¾÷Àº ¡°=¡±¸¦
½á¼ ÀÌ·ç¾îÁö¸ç, ¼öÇÐ µî½Äó·³ ¾²ÀÔ´Ï´Ù. ¿¹¸¦ µé¸é:
CMS.A1 = JS1.A2;
¿©±â¼´Â CMSÀÇ 1¹ø ÃàÀÌ JS1 ÀåÄ¡ÀÇ 2¹ø Ãà(YÃà)ÀÇ ÇöÀç °ª°ú °°¾ÆÁö°Ô µË´Ï´Ù. ¸¶Âù°¡Áö·Î(ºñÆ®°ªÀÇ
°æ¿ì):
CMS.B1 = JS1.B5;
¿©±â¼´Â CMS ControlsÀÇ 1¹ø ¹öưÀÌ JS1 ÀåÄ¡ÀÇ 5¹ø ¹öưÀÇ »óÅÂ¿Í °°¾ÆÁý´Ï´Ù.
¡°=¡± ¿ÞÂÊÀÇ º¯¼ö´Â ¼³Á¤ÇÒ ¼ö ÀÖ´Â º¯¼ö¶ó¾ß ÇÕ´Ï´Ù. ¿©±â¿¡´Â °íÀ¯ º¯¼ö(built-in variables)¿Í
CMS º¯¼öµéÀÌ Æ÷ÇԵ˴ϴÙ. ½ºÅ©¸³Æ®·Î´Â ½ÇÁ¦ ÀåÄ¡ÀÇ °ªÀ» ¹Ù²Ü ¼ö ¾ø±â ¶§¹®¿¡, ¡°=¡±ÀÇ ¿ÞÂÊ¿¡ JSx
º¯¼ö¸¦ ³ÖÀ» ¼ö´Â ¾ø½À´Ï´Ù.
¡°=¡±ÀÇ ¿À¸¥ÂÊ¿¡´Â Àû´çÇÑ ½ÄÀ» ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¿©±â¿¡´Â ¼ö½Ä ¿¬»êÀÚ, ³í¸® ¿¬»êÀÚ, °ýÈ£, ±âŸ
µîµî ÇÊ¿äÇÑ ¾î¶² º¯¼öµç ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. ¿¹·Î:
CMS.A1 = JS1.A1 + JS1.A2 + 10;
CMS.B1 = (JS1.B5 OR JS1.B6) AND NOT (JS1.B6 OR JS2.B7);
½ÄÀÌ ¡°;¡±·Î ³¡³ª´Â °Í¿¡ ÁÖÀÇÇϽʽÿÀ. ÀÌ ±âÈ£´Â ¸ðµç ÁöÁ¤ ¸í·É±¸¹®¿¡ µé¾î°¡¾ß ÇÕ´Ï´Ù. ´Ù¸¥ Á¾·ùÀÇ
¸í·É±¸¹®Àº ³ªÁß¿¡ ¼³¸íÇϰÚÀ¸³ª, ´Ù¸¥ °æ¿ìµé¿¡¼´Â ¡°;¡± ±âÈ£°¡ ÇÊ¿äÇÒ ¶§µµ ÀÖ°í ±×·¸Áö ¾ÊÀ» ¶§µµ
ÀÖ½À´Ï´Ù.
ÀÌ ³»¿ëÀº °¢°¢ÀÇ ¸í·É±¸¹® ºÎºÐ¿¡¼ ±â´É°ú ÇÔ²² ¼³¸íÇÕ´Ï´Ù. º¸ÅëÀº, ¡°;¡±´Â ÇÊ¿äÇÏÁö ¾ÊÀº °÷¿¡
»ç¿ëÇÏ´õ¶óµµ ¹®Á¦°¡ ¾øÀ¸¹Ç·Î, ÇÊ¿ä ¿©ºÎ¸¦ Àß ¸ð¸£°ÚÀ¸¸é ±¸¹®ÀÇ ³¡¿¡ ³Ö¾îÁֽʽÿÀ
Arithmetic Comparisons [ºÎµî½Ä]
³í¸®½Ä¿¡´Â ºÎµîÈ£¸¦ ¾µ ¼ö ÀÖ½À´Ï´Ù. ³í¸®½ÄÀº TRUE¿Í FALSE·Î ÀÌ·ç¾îÁý´Ï´Ù. »ç¿ëÇÒ ¼ö ÀÖ´Â
ºÎµîÈ£´Â ¿©¼¸ °³°¡ ÀÖ½À´Ï´Ù.
³í¸® ¿¬»êÀÚ¿Í ¸¶Âù°¡Áö·Î, ÅØ½ºÆ®¿Í ±âÈ£ ¸ðµÎ¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ´ÙÀ½°ú °°½À´Ï´Ù.
| Less Than (¹Ì¸¸) |
"LT" ¶Ç´Â "<" |
| Less Than or Equal To (ÀÌÇÏ) |
"LE" ¶Ç´Â "<=" |
| Equal To (°°´Ù) |
"EQ" ¶Ç´Â "==" ("="¸¦ µÎ¹ø
¾¸) |
| Greater Than or Equal To (ÀÌ»ó) |
"GE" ¶Ç´Â ">=" |
| Greater Than (º¸´Ù Å©´Ù) |
"GT" ¶Ç´Â "<" |
| Not Equal To (°°Áö ¾Ê´Ù) |
"NE" ¶Ç´Â "!=" |
ºÎµîÈ£ÀÓÀ» ³ªÅ¸³»·Á¸é, ´ë°ýÈ£·Î ¹½À´Ï´Ù. ±×·¯¸é ¾ðÁ¦µç ºñÆ® º¯¼ö·Î ÀνÄÀÌ µË´Ï´Ù. ºÎµî½ÄÀº ´ÙÀ½°ú
°°Àº ÇüÅÂÀÔ´Ï´Ù:
[ JS1.A1 > JS2.A1 ]
À̰ÍÀº JS1.A1ÀÌ JS2.A1º¸´Ù Å©¸é TRUE¶ó´Â ¶æÀÔ´Ï´Ù.
ºÎµî½Ä¿¡ °ýÈ£°¡ ÀÖ´õ¶óµµ, ºÎµî½ÄÀº ´ë°ýÈ£ ¾È¿¡ ÀÖ¾î¾ß ÇÑ´Ù´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù. ÀÌ´Â IF/THRN
¸í·É¹®(³ªÁß¿¡ ¼³¸íÇÕ´Ï´Ù)°ú ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
ºÎµî½ÄÀÌ ¾²ÀÌ´Â °æ¿ì¿¡´Â ¸î °¡Áö°¡ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, ½º·ÎƲÀÌ ÀÏÁ¤ À§Ä¡ ÀÌ»ó¿¡ ÀÖÀ» ¶§ WEPÀ»
Ȱ¼ºÈÇϱâ À§ÇÑ °æ¿ì°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.
Ãà°ªÀº 0¿¡¼ºÎÅÍ 255±îÁöÀ̰í, ÃÖ´ë ½º·ÎƲ À§Ä¡´Â ³»ºÎÀûÀ¸·Î´Â ÃÖ¼Ò°ª¿¡ ÇØ´çÇϸç, ½º·ÎƲÀº JS1.A3À̶ó´Â
Á¡À» ±â¾ïÇϽʽÿÀ. ´ÙÀ½ÀÇ ¿¹¿Í °°ÀÌ ¾µ ¼ö ÀÖ½À´Ï´Ù:
SCRIPT
CMS.B1 = [JS1.A3 < 25];
ENDSCRIPT
ÀÌ·¸°Ô Çϸé JS1.A3ÀÌ 90% ÀÌ»óÀÇ À§Ä¡ÀÏ ¶§ CMS.B1ÀÌ ON »óŰ¡ µË´Ï´Ù. ±×¸®°í, WEPÀ»
Á¦¾îÇϴ Ű°ªÀ» Àü¼ÛÇϰųª DX ¹öưÀ» Ȱ¼ºÈÇϰԲû GUI¿¡¼ CMS1.B1 ¹öưÀ» ÇÁ·Î±×·¡¹ÖÇÕ´Ï´Ù.
Conditional Statements [Á¶°Ç ¸í·É±¸¹®]
ÇöÀçÀÇ Ãà °ª°ú ¹öư º¯¼ö¿¡ µû¶ó ÀÏÁ¤ÇÑ Á¶°ÇÀÌ ºÎÇյǸé ÄÚµåÀÇ ÇÑ ºí·ÏÀ» ½ÇÇàÇÏ°í ±×·¸Áö ¾Ê´Ù¸é ´Ù¸¥
ºí·ÏÀ» ½ÇÇàÇÏ°Ô ÇØÁÖµµ·Ï ½ºÅ©¸³Æ®ÀÇ ¼øÈ¯À» Á¦¾îÇÏ´Â Çü½ÄÀÌ ¸î °¡Áö ÀÖ½À´Ï´Ù.
IF/THEN
°¡Àå ±âº»ÀûÀÎ °ÍÀÌ IF/THEN ºí·ÏÀÔ´Ï´Ù. ÀÌ´Â ´ÙÀ½°ú °°Àº Á¦¾î¹ýÀ» °¡Áý´Ï´Ù:
IF ¾î¶² Á¶°ÇÀÌ ÃæÁ·µÇ¸é THEN ¾î¶² ÀÛ¾÷À» ½ÇÇàÇÔ.
IF/THEN ¸í·É±¸¹®Àº ±¸¹® ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀ» ÇÊ¿ä·Î ÇÏÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î, JS1.B4°¡ ON »óÅÂÀÏ ¶§¿¡¸¸ ¹«¾ð°¡¸¦ ÇÏ·Á¸é, ½ºÅ©¸³Æ®ÀÇ ÇÑ ºÎºÐ¿¡ ´ÙÀ½°ú °°ÀÌ
½á³Ö½À´Ï´Ù:
IF( JS1.B4 ) THEN
// Do something
ENDIF
¿©±â¼´Â JS1.B4°¡ TRUE(´©¸¥ »óÅÂ)À̸é THEN°ú ENDIF »çÀÌÀÇ ¸í·É±¸¹®(µé)ÀÌ ½ÇÇàµË´Ï´Ù.
JS1.B4°¡ FALSE(ÇØÁ¦µÈ »óÅÂ)À̸é, ½ºÅ©¸³Æ®ÀÇ ±× ºÎºÐÀº °Ç³Ê¶Ù¾îÁý´Ï´Ù.
IF ±¸¹®ÀÇ °ª¿¡´Â º¹ÀâÇÑ ½ÄÀÌ ¾²ÀÏ ¼öµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é, JS1ÀÇ 1¹ø°ú 2¹ø ¹öưÀÌ µ¿½Ã¿¡
´·¯Á® ÀÖÀ» ¶§ ÇÑ ºí·ÏÀÇ ±¸¹®À» ½ÇÇàÇÏ·Á¸é, ´ÙÀ½°ú °°ÀÌ ½ºÅ©¸³Æ®¸¦ ¸¸µì´Ï´Ù:
IF( JS1.B1 AND JS1.B2 ) THEN
// Do something
ENDIF
IF/THEN/ELSE
½ÄÀÇ °á°ú¿¡ µû¶ó µÑ Áß ÇϳªÀÇ ¸í·É±¸¹® ±×·ìÀ» ½ÇÇàÇÏ°Ô ÇÏ´Â IF/THEN/ELSE Çü½Äµµ ÀÖ½À´Ï´Ù.
ÀÌ ±â´ÉÀº À§¿¡ ¼³¸íÇÑ IF/THEN°ú ºñ½ÁÇÏÁö¸¸ IF ±¸¹®ÀÌ FALSE°¡ µÇ¾úÀ» ¶§ ½ÇÇàÇÒ ½ºÅ©¸³Æ®
¿µ¿ªÀÌ ÁÖ¾îÁý´Ï´Ù. IF/THEN ±¸¹®°ú °°ÀÌ, ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀ» ºÙÀÌÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î, JS1.B4°¡ ´·ÁÀÖÀ» ¶§ ½ºÅ©¸³Æ®ÀÇ ÇÑ ºÎºÐÀ» ½ÇÇàÇÏ°í ±×·¸Áö ¾ÊÀ» ¶§´Â ´Ù¸¥ ºÎºÐÀ»
½ÇÇàÇϰíÀÚ ÇÑ´Ù¸é, ´ÙÀ½°ú °°ÀÌ ½á³Ö½À´Ï´Ù:
IF( JS1.B4 ) THEN
// Do something here if JS1.B4 is TRUE
ELSE
// Do something here if JS1.B4 is FALSE
ENDIF
Nesting IF/THEN and IF/THEN/ELSE
[Áߺ¹µÈ IF/THEN°ú IF/THEN/ELSE ±¸¹®]
IF/THEN°ú IF/THEN/ELSE ºÎºÐÀº ¡°Áߺ¹¡±µÉ ¼ö ÀÖ½À´Ï´Ù. Áï, IF³ª ELSEÀý ¾È¿¡
¶Ç ´Ù¸¥ IFÀýÀÌ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù:
IF( JS1.B4 ) THEN
IF( JS1.B5 ) THEN
// Do thing #1
ELSE
// Do thing #2
ENDIF
ELSE
IF( JS1.B6 ) THEN
// Do thing #3
ELSE
// Do thing #4
ENDIF
ENDIF
Sequences [¼ø¿]
CMS¿¡¼ ÀνÄÇÏ´Â ¶Ç ´Ù¸¥ ¼øÈ¯ Á¦¾î ¹æ½ÄÀº ¡°SEQUENCE(¼ø¿)¡±ÀÔ´Ï´Ù. ¼ø¿Àº ¡°SEQUENCE¡±¶ó´Â
¸í·É¾î·Î ½ÃÀÛÇØ¼ ¡°ENDSEQUENCE¡±¶ó´Â ¸í·É¾î·Î ³¡³³´Ï´Ù.
À̰ÍÀº ±âº»ÀûÀ¸·Î ½ºÅ©¸³Æ®ÀÇ µ¶¸³µÈ ÇÑ ºÎºÐÀÇ ÀÛ¾÷(event)ÀÇ ¼ø¼¸¦ Á¤Çؼ Àüü ½ºÅ©¸³Æ® ³»¿¡¼
½ÇÇàÇϰԲû ÇØÁÖ´Â µ¶Æ¯ÇÑ ¹æ¹ýÀÔ´Ï´Ù. ¼ø¿Àº Á¶°Ç¿¡ ¸Â±â¸¸ ÇÏ¸é ½ºÅ©¸³Æ®ÀÇ °¢ Áֱ⸶´Ù ¼ø¿ÀÇ ±¸¹®
¼ø¼´ë·Î ½ÇÇàµË´Ï´Ù.
¼ø¿ÀÌ ±× Áֱ⿡¼ ´õ ÀÌ»ó ½ÇÇàµÉ ¼ö ¾ø´Â ÁöÁ¡¿¡ À̸£¸é ¹öưÀ» Ŭ¸¯ÇØ¾ß Çϸç, ±×·¯¸é ±× ¼ø¿ ´ÙÀ½
À§Ä¡ÀÇ ½ºÅ©¸³Æ®°¡ ½ÇÇàµË´Ï´Ù.
±×¸®°í ´ÙÀ½ ¼ø¼¿¡´Â ¼ø¿ÀÌ ¸ØÃß¾ú´ø À§Ä¡·Î °¡°Ô µË´Ï´Ù. ¼ø¿ÀÌ ¸ØÃß¾ú´ø Á¶°ÇÀÌ µÇ¸é, ¹öưÀ» ´·¯¾ß
Çß´Ù´Â °ÍÀÌ Ç¥½Ã µÇ°í ±× ÁöÁ¡¿¡¼ºÎÅÍ ´Ù½Ã ¼ø¿ÀÌ ¸ØÃâ ¶§±îÁö °è¼Ó ÁøÇàµË´Ï´Ù. óÀ½ÀÇ ¼ø¿ ÁßÁö
Á¶°ÇÀ» µÎ ¹øÂ° ÁøÇà°úÁ¤¿¡¼ ¸¸³ªÁö ¾Ê´Â´Ù¸é, ¼ø¿ÀÌ °Ç³Ê¶Ù¾îÁö°í ´ÙÀ½ ÁֱⰡ ½ÇÇàµË´Ï´Ù.
¼ø¿Àº ¾à°£ÀÇ ¿¹¿Ü¸¦ Á¦¿ÜÇϸé ÁÖ ½ºÅ©¸³Æ®¿¡¼ ¾²´Â ´ëºÎºÐÀÇ ±¸¹®À» Æ÷ÇÔÇÒ ¼ö ÀÖ½À´Ï´Ù¼ø¿ ³»¿¡¼´Â
SELECT ºí·ÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.
±âº»ÀûÀÎ ±â´É À̿ܿ¡, SEQUENCE ¾È¿¡¼¸¸ ¾µ ¼ö ÀÖ´Â ¼¼ °¡ÁöÀÇ Æ¯¼öÇÑ ±â´ÉÀÌ ÀÖ½À´Ï´Ù.
ÀÌ ±â´ÉµéÀº WAIT, WHILE, DELAY ±¸¹®ÀÔ´Ï´Ù.
WAIT and WHILE
WAIT ±¸¹®°ú WHILE ±¸¹®Àº ÁÖ¾îÁø Á¶°ÇÀÌ TRUE°¡ µÉ ¶§±îÁö ¼ø¿ÀÌ Á¤ÁöÇÑ´Ù´Â Á¡¿¡¼ ¼·Î
¸Å¿ì ºñ½ÁÇÕ´Ï´Ù. µÑÀÇ Â÷ÀÌÁ¡Àº, WAIT ±¸¹®¿¡¼´Â FALSE¿¡¼ TRUE·Î ¹Ù²ð Áú¹®½ÄÀ» ÇÊ¿ä·Î
Çϴµ¥ ºñÇØ, WHILE ±¸¹®Àº ½ÇÇàÁß¿¡ ±¸¹®ÀÌ TRUEÀÎÁö¸¦ üũÇϱ⸸ ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
À̸¦ Á»´õ ¼³¸íÇϱâ À§ÇØ, ´ÙÀ½ÀÇ µÎ ¼ø¿À» ºñ±³Çغ¸°Ú½À´Ï´Ù:
// Sequence 1
//
SEQUENCE
WHILE( JS1.B1 );
B1 = TRUE;
DELAY( 10 );
B1 = FALSE;
DELAY( 10 );
ENDSEQUENCE
// Sequence 2
//
SEQUENCE
WAIT( JS1.B1 );
B1 = TRUE;
DELAY( 10 );
B1 = FALSE;
DELAY( 10 );
ENDSEQUENCE
ù ¹øÂ° ¼ø¿¿¡¼´Â, JS1.B1À» ´©¸£°í ÀÖÀ» ¶§ ¼ø¿ÀÌ °è¼Ó ½ÇÇàµË´Ï´Ù. B1 ºñÆ®°ªÀº JS1.B1ÀÌ
´·ÁÀÖ´Â µ¿¾È ON »óŰ¡ µË´Ï´Ù.
µÎ ¹øÂ° ¼ø¿¿¡¼´Â, JS1.B1ÀÌ Ã³À½ ´ÝÇûÀ» ¶§ ¼ø¿ÀÌ Çѹø ½ÇÇàµË´Ï´Ù. ¼ø¿ÀÌ ´Ù½Ã ½ÇÇàµÇ·Á¸é
JS1.B1À» ¶¼¾ú´Ù ´Ù½Ã ´·¯¾ß ÇÕ´Ï´Ù. JS1.B1À» Çѹø ´©¸¦ ¶§¸¶´Ù B1°ªÀº Çѹø TRUE°¡
µÇ¾ú´Ù°¡ FALSE·Î ¹Ù²ò´Ï´Ù.
DELAY
DELAY ±¸¹®Àº ¹Ì¸® Á¤ÇØÁø ½Ã°£ µ¿¾È ¼ø¿À» Àá½Ã Á¤Áö½Ãŵ´Ï´Ù. DELAY °ªÀº ¼ø¿ ÁֱⰡ ÁßÁöµÇ´Â
۰ª ¹Ýº¹ ½Ã°£(Character-time)À» ³ªÅ¸³À´Ï´Ù. ۰ª ¹Ýº¹ ½Ã°£Àº Control Manager
GUIÀÇ Program Setting ÅÇ¿¡¼ Á¤ÇÑ ¡°Character Rate(۰ª ¹Ýº¹ ¼Óµµ)¡±¿Í
´ëÃæ ºñ½ÁÇÕ´Ï´Ù.
±âº»°ªÀÎ 50Àº delay °ªÀÌ ÇÑ´Ü°è ´Ã¾î³ª¸é delay ½Ã°£ÀÌ 50¹Ð¸®ÃÊ(0.5ÃÊ) ´Ã¾î³´Ù´Â
°ÍÀ» ¶æÇÕ´Ï´Ù.
DELAY ¼ø¿Àº ´ÙÀ½ÀÇ ¿¹¿Í °°½À´Ï´Ù:
// Wait until Button 4 on JS1 is
pressed, then flash Button 1 on the
// CMS Controls 2 times.
//
SEQUENCE
WAIT( JS1.B4 ); // Wait for the JS1 button to get pressed
CMS.B1 = TRUE; // Turn on the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = FALSE; // Turn off the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = TRUE; // Turn on the CMS button
DELAY( 10 ); // Wait about half a second
CMS.B1 = FALSE; // Turn off the CMS Button
ENDSEQUENCE
JS1.B4¸¦ ´©¸¦ ¶§¸¶´Ù CMS.B1ÀÌ Å°°ª ¹Ýº¹¼Óµµ¿¡ µû¶ó¼ ¾à 0.5ÃÊ °£°ÝÀ¸·Î µÎ ¹ø ÄÑÁ³´Ù
²¨Áý´Ï´Ù.
Scripting
Reference [½ºÅ©¸³Æ® Âü°í] -- PART 2
Nesting [°ãÄ¡±â]
SEQUENCE/ENDSEQUENCE ºí·ÏÀº IF/THEN°ú IF/THEN/ELSE ºí·Ï ¾È¿¡ °ãÃÄ
¾µ ¼ö ÀÖ½À´Ï´Ù. IFÀÇ °á°ú¿¡ µû¶ó¼ ±× ºí·ÏÀÌ °Ç³Ê¶Ù¾îÁö¸é ÀÌµé ºí·ÏÀÇ ¾È¿¡ ÀÖ´Â ¼ø¿Àº ÀÌ¹Ì ½ÃÀ۵Ǿú´ø
°ÍÀ̶ó°í ÇØµµ ³¡±îÁö ½ÇÇàµÇÁö ¾Ê´Â´Ù´Â Á¡À» ±â¾ïÇϽʽÿÀ.
½±°Ô ¸»Çϸé IF ÀýÀÌ ÁßÁöµÇ¸é ±× ¾È¿¡ ÀÖ´Â ¼ø¿µµ Á¤ÁöµË´Ï´Ù. ÀÌ´Â »óȲ¿¡ µû¶ó¼ µµ¿òÀÌ µÉ ¼öµµ
ÀÖ°í ±×·¸Áö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.
Logical Device [³í¸® ÀåÄ¡]
³í¸® ÀåÄ¡´Â ŸÀÌ¸Ó µî¿¡ ¾²ÀÔ´Ï´Ù. ³í¸® ÀåÄ¡´Â ¡°D1¡±¿¡¼ ¡°D256¡±±îÁöÀÇ 256°³°¡ °¡¿ëÇÕ´Ï´Ù.
ÀåÄ¡ ±â´ÉÀÌ ½ÇÇàµÉ ¶§ ÁöÁ¤ÀÚ°¡ ÇÒ´çµË´Ï´Ù. ±× ´ÙÀ½¿¡ ±× ±â´ÉÀÇ »óÅ¿¡ µû¶ó ID°¡ ¾²ÀÔ´Ï´Ù.
³× °¡Áö Á¾·ùÀÇ ÀåÄ¡¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ¼¼ °¡Áö´Â ŸÀ̸ÓÀ̰í, ³ª¸ÓÁö´Â ÁÖ¾îÁø Á¶°ÇÀÌ TRUEÀÏ
¶§ ªÀº ÆÞ½º¸¦ »ý¼ºÇϴµ¥ ¾²ÀÔ´Ï´Ù.
Timer Device [ŸÀÌ¸Ó ÀåÄ¡]
ŸÀÌ¸Ó ÀåÄ¡´Â ÇϳªÀÇ ºñÆ® °ª(½ÄÀ¸·Î µÈ)À¸·Î Á¦¾îµË´Ï´Ù. CMS°¡ ÀνÄÇϴ ŸÀ̸ӿ¡´Â ¼¼ °¡Áö Á¾·ù°¡
ÀÖ½À´Ï´Ù. ŸÀ̸ӵéÀº ½Ã°£ °è»ê ±â´ÉÀ» Á¦°øÇϴµ¥ °¡Àå ¸¹ÀÌ ¾²À̸ç, ÇÊ¿äÇÏ´Ù¸é ´Ù¸¥ ÀåÄ¡¿Í °áÇյǾî
´õ¿í Á¤±³ÇÑ ½Ã°£Â÷ ¼ø¿À» ¸¸µé¾î ³¾ ¼öµµ ÀÖ½À´Ï´Ù.
On Delay Timer
ù ¹øÂ° ¼³¸íÇÒ Å¸À̸Ӵ On-Delay ŸÀ̸ÓÀÔ´Ï´Ù. ÀÌ Å¸À̸Ӵ ŸÀ̸Ӹ¦ Á¦¾îÇÏ´Â ½Ä(ÀԷ°ª)ÀÌ
TRUEÀÌ¸é °ü·ÃµÈ ÀåÄ¡ÀÇ º¯¼ö¸¦ ÁöÁ¤µÈ ½Ã°£µ¿¾È TRUE·Î ¼³Á¤ÇÕ´Ï´Ù.
ÀåÄ¡ º¯¼ö°¡ ÀÏ´Ü ¼³Á¤µÇ¸é, ÀԷ°ªÀÌ FALSE°¡ µÉ ¶§±îÁö ±× °ªÀÌ À¯ÁöµË´Ï´Ù. ±×·¯¸é ÀåÄ¡ º¯¼ö°ªÀÌ
FALSE°¡ µÇ°í ŸÀ̸Ӱ¡ Ãʱâȵ˴ϴÙ. ¾î¶² º¯°æÄ¡°¡ ÀÖ´õ¶óµµ ½Ã°£ Áö¿¬°ªÀÌ Ãʱâȵ˴ϴÙ.
¿¹:
TIMER( ONDELAY, D5, 10 ) = JS1.B2;
ù ¹øÂ°ÀÇ º¯¼ö(ONDELAY)´Â ŸÀ̸ÓÀÇ Á¾·ù¸¦ Á¤ÇÕ´Ï´Ù. µÎ ¹øÂ° º¯¼ö(D5)´Â ½ºÅ©¸³Æ®¿¡¼
ÀÌ Å¸À̸Ӹ¦ ÀνÄÇϰԲû Çϱâ À§ÇÑ ÀåÄ¡ º¯¼ö¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ¼¼ ¹øÂ° º¯¼ö(10)´Â GUI Program
Setting ÅÇÀÇ Character Rate ¼³Á¤¿¡ ±âÃÊÇØ¼ ´ÜÀ§ ½Ã°£À» Á¤ÇÕ´Ï´Ù.
JS1.B2´Â ÀÔ·ÂÀåÄ¡ÀÔ´Ï´Ù. À̰ÍÀÌ TRUEÀ̸é, ½Ã°£ÀÌ ½ÃÀ۵˴ϴÙ. JS1.B2´Â ÃÖ¼ÒÇÑ Á¤ÇØÁø
½Ã°£ µ¿¾È °ªÀÌ À¯ÁöµÇ¸ç, ±× ´ÙÀ½ D5°¡ TRUE°¡ µÇ¾î JS1.B2°¡ ÇØÁ¦µÉ ¶§±îÁö TRUE·Î À¯ÁöµË´Ï´Ù.
Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ JS1.B2°¡ ÇØÁ¦µÇ¸é, D5´Â TRUE°¡ µÇÁö ¾Ê½À´Ï´Ù.
ŸÀ̸Ӹ¦ Á¦´ë·Î ¾²·Á¸é, ½ºÅ©¸³Æ®ÀÇ ¾î´À ºÎºÐ¿¡ D5¸¦ ÁöÁ¤ÇØÁÖ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¸é:
SCRIPT
TIMER( ONDELAY, D5, 10 ) = JS1.B2;
CMS.B1 = D5;
ENDSCRIPT
ÀÌ·¸°Ô Çϸé CMS.B1ÀÌ 10 ´ÜÀ§½Ã°£ µ¿¾È ³»Áö JS1.B2°¡ ´·ÁÀÖ´Â »óÅ·Π¾à 0.5ÃÊ ÈÄ¿¡
ÄÑÁý´Ï´Ù. Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ JS1.B2°¡ ÇØÁ¦µÇ¸é ŸÀ̸Ӱ¡ Ãʱâȵǰí CMS.B1¿¡ ¼³Á¤°ªÀÌ Àû¿ëµÇÁö
¾Ê½À´Ï´Ù.
Off Delay Timer
µÎ ¹øÂ°ÀÇ Å¸ÀÌ¸Ó Á¾·ù´Â Off-DelayÀÔ´Ï´Ù. Off Delay ŸÀ̸ӴÂ, ÀԷ°ªÀÌ TRUEÀ̰í
°è¼Ó TRUEÀÎ µ¿¾È ÀåÄ¡ º¯¼ö°¡ Áï½Ã TRUE·Î ¼³Á¤µË´Ï´Ù. ÀԷ°ªÀÌ FALSE°¡ µÇ¸é, ÀÏÁ¤ÇÑ ½Ã°£
Áö¿¬°ªÀÌ ½ÃÀ۵˴ϴÙ. Áö¿¬ ½Ã°£ÀÌ ³¡³ª¸é ÀåÄ¡ º¯¼ö´Â FALSE°¡ µË´Ï´Ù.
ÀåÄ¡ º¯¼ö°¡ FALSE°¡ µÇµµ·Ï Á¤ÇØÁø ½Ã°£ ÀÌÀü¿¡ ÀԷ°ªÀÌ ´Ù½Ã TRUE°¡ µÇ¸é ŸÀ̸Ӱ¡ Ãʱâȵǰí,
ÀԷ°ªÀÌ ´Ù½Ã FALSE°¡ µÇ¸é Áö¿¬ ½Ã°£ÀÌ Ã³À½ºÎÅÍ ´Ù½Ã ½ÃÀ۵˴ϴÙ.
Off-DelayÀÇ ¿ë¹ýÀº On-Delay¿Í ²Ï ºñ½ÁÇÕ´Ï´Ù:
TIMER( OFFDELAY, D3, 20 ) = JS2.B3;
ù ¹øÂ° º¯¼ö´Â OFFDELAY ŸÀ̸Ӷó´Â °ÍÀ» Á¤ÀÇÇϰí, µÎ ¹øÂ° º¯¼ö´Â ÀåÄ¡ º¯¼ö¸¦ ÁöÁ¤Çϸç,
¼¼ ¹øÂ° º¯¼ö´Â Áö¿¬ ½Ã°£ÀÇ ±æÀ̸¦ ¼³Á¤ÇÕ´Ï´Ù. À§ÀÇ ¿¹¿¡¼, JS2.B3À» ´©¸£¸é D3´Â Áï½Ã TRUE°¡
µË´Ï´Ù.
D3´Â JS2.B3°¡ ÇØÁ¦µÉ ¶§±îÁö °è¼Ó TRUEÀ̸ç, JS2.B3°¡ ÇØÁ¦µÇ¸é ¾à 1Ãʰ£ÀÇ Áö¿¬ ½Ã°£ÀÌ
½ÃÀ۵˴ϴÙ. ±× ½Ã°£ÀÌ Áö³ª¸é D3Àº FALSE°¡ µË´Ï´Ù.
ÀÌ ±â´ÉÀº ¿©·¯ °¡Áö ¿ëµµ·Î À¯¿ëÇÕ´Ï´Ù. ¿¹¸¦ µé¸é, ÀüÅõºñÇà ½Ã¹Ä·¹À̼ǿ¡¼ Æ®¸®°Å¸¦ ´ç°åÀ» ¶§
°Ç Ä«¸Þ¶ó¸¦ Ȱ¼ºÈÇϰԲû ÇÏ°í Æ®¸®°Å¸¦ ³õÀº ÈÄ ÀÏÁ¤ ½Ã°£µ¿¾È °Ç Ä«¸Þ¶ó°¡ µ¹¾Æ°¡°Ô²û ÇÒ ¼ö ÀÖ½À´Ï´Ù.
±×·¯ÀÚ¸é ÀÌ·± ½ÄÀ¸·Î ½ºÅ©¸³Æ®¸¦ ¸¸µé ¼ö ÀÖ½À´Ï´Ù:
SCRIPT
TIMER( OFFDELAY, D1, 200 ) = JS1.B1;
CMS.B1 = D1;
ENDSCRIPT
Æ®¸®°Å¸¦ ´ç±â¸é D1°ú CMS.B1ÀÌ TRUE°¡ µÇ¾î, Æ®¸®°Å¸¦ ³õÀº ÈÄ ¾à 10ÃÊ ÈıîÁö °è¼Ó TRUE°¡
µË´Ï´Ù.
´Ü, GUI¿¡¼ Press, Release ¸í·É¾î¸¦ »ç¿ëÇÏ¿© CMS.B1À» ´·¶À» ¶§ ¡°Ä«¸Þ¶ó ½ÃÀÛ¡±¿¡
ÇØ´çÇϴ Ű°ªÀÌ Àü¼ÛµÇ°í CMS.B1ÀÌ ÇØÁ¦µÇ¾úÀ» ¶§ ¡°Ä«¸Þ¶ó ÁßÁö¡± ۰ªÀÌ Àü¼ÛµÇµµ·Ï ÇÁ·Î±×·¡¹ÖÇØ¾ß
ÇÕ´Ï´Ù.
Interval Timer
¼¼ ¹øÂ° ŸÀ̸Ӵ Interval ŸÀ̸ÓÀÔ´Ï´Ù. ÀÌ Å¸À̸Ӵ ±ôºýÀ̿͵µ °°ÀÌ ÀԷ°ªÀÌ TRUEÀÏ ¶§
ÀåÄ¡ º¯¼ö¸¦ °è¼Ó TRUE¿Í FALSE·Î ¹Ýº¹µÇ°Ô ÇÕ´Ï´Ù. ¿ë¹ýÀº On-Delay¿Í Off-Delay¿Í
ºñ½ÁÇÏÁö¸¸, ´ÙÀ½°ú °°ÀÌ µÎ ¹øÂ°ÀÇ ½Ã°£°£°ÝÀ» ÁöÁ¤ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù:
TIMER( INTERVAL, D7, 30, 40 ) = JS2.B4;
óÀ½ÀÇ µÎ º¯¼öµéÀº ŸÀÌ¸Ó Á¾·ù¿Í ÀåÄ¡ º¯¼ö¸¦ Á¤ÀÇÇÕ´Ï´Ù. ³ªÁßÀÇ µÎ º¯¼ö´Â °¢°¢ TRUE ½Ã°£°ú
FALSE ½Ã°£À» Á¤ÀÇÇÕ´Ï´Ù. ÀԷ°ªÀÌ Ã³À½ TRUE°¡ µÇ¸é TRUE ŸÀ̸Ӱ¡ ½ÃÀ۵ǰí, ¾Õ¿¡ Ç¥½ÃµÈ
½Ã°£ µ¿¾È ½Ã°£ÀÌ Áö³ª¸é FALSE°¡ µÇ¸ç, ±× ´ÙÀ½ µÚ¿¡ Ç¥½ÃµÈ ½Ã°£µ¿¾È ŸÀ̸Ӱ¡ ÀÛµ¿ÇÑ ÈÄ TRUE·Î
¹Ù²î´Â °úÁ¤ÀÌ ¹Ýº¹µË´Ï´Ù.
ÀÌ °úÁ¤Àº JS2.B4°¡ ´·ÁÀÖ´Â µ¿¾È °è¼ÓµË´Ï´Ù.
ÀÌ Å¸À̸Ӵ ¿©·¯ ±â´É¿¡ À¯¿ëÇÕ´Ï´Ù. ÇϳªÀÇ ¿¹·Î ¡°¹Ì¼¼ Æ®¸² Á¶Á¾¡± ±â´ÉÀ» µé¾îº¸°Ú½À´Ï´Ù:
SCRIPT
TIMER( INTERVAL, D1, 20, 100 ) = JS1.B2;
TIMER( INTERVAL, D2, 20, 100 ) = JS1.B3;
CMS.B1 = D1;
CMS.B2 = D2;
ENDSCRIPT
À§ÀÇ ¿¹¿¡¼´Â JS1.B2°¡ ´·ÁÀÖ´Â µ¿¾È D1ÀÌ 5ÃÊ °£°ÝÀ¸·Î ±ôºýÀ̰í, JS1.B3ÀÌ ´·ÁÀÖ´Â
µ¿¾È¿¡´Â D2°¡ 5Ãʸ¶´Ù ±ôºýÀÌ°Ô µË´Ï´Ù. GUI¿¡¼ CMS.B1¿¡ ¡°Trim Up¡± ۸¦ ¸ÅÇÎÇϰí
CMS.B2¿¡ ¡°Trim Down¡± ۸¦ ¸ÅÇÎÇϸé, ÀÌ ¹öưµéÀ» ´©¸£°í ÀÖ´Â µ¿¾È Ç×°ø±âÀÇ Æ®¸²ÀÌ ±×ÂÊ
¹æÇâÀ¸·Î ´À¸®°Ô Á¶Á¤µË´Ï´Ù.
Pulse Device
³× ¹øÂ°ÀÇ ÀåÄ¡ Á¾·ù´Â ¡°Pulse¡± ÀåÄ¡ÀÔ´Ï´Ù. óÀ½¿¡´Â ÀԷ°ªÀÌ TRUEÀÏ ¶§ ÀÌ ÀåÄ¡ÀÇ ÀåÄ¡
º¯¼ö°¡ TRUE°¡ µË´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ ´ÙÀ½ ÁֱⰡ ½ÇÇàµÉ ¶§ ÀåÄ¡ º¯¼ö´Â FALSE°¡ µÇ°í °è¼Ó FALSE
»óÅ·Π³²¾ÆÀÖ´Ù°¡ ÀԷ°ªÀÌ FALSE°¡ µÇ¸é ´Ù½Ã TRUE·Î ¹Ù²ò´Ï´Ù.
Pulse ±â´ÉÀº ½ºÅ©¸³Æ®ÀÇ ´Ù¸¥ ºÎºÐ¿¡¼ ¾î¶² ÀÛ¾÷ÀÇ ½ÇÇàÀ» ÀνÄÇÒ Çʿ䰡 ÀÖÀ» ¶§ ¾µ¸ð°¡ ÀÖÁö¸¸,
ÀÛ¾÷ Ç¥½Ã°¡ °è¼Ó ON »óÅ·Π³²¾ÆÀÖÀ¸¸é ¹®Á¦°¡ ¹ß»ýÇÒ ¼öµµ ÀÖ½À´Ï´Ù. Pulse ÀåÄ¡¸¦ ÀνÄÇÏ°Ô ÇÏ·Á¸é,
´ÙÀ½°ú °°Àº Äڵ带 ³Ö½À´Ï´Ù:
PULSE( D2 ) = B1;
À§ÀÇ ¿¹¿¡¼, B1ÀÌ Ã³À½ TRUE·Î ÀÎ½ÄµÈ ½ºÅ©¸³Æ®ÀÇ Á⵿ֱ¾È D2´Â TRUE »óŰ¡ µË´Ï´Ù. ½ºÅ©¸³Æ®ÀÇ
´ÙÀ½ Áֱ⿡¼´Â FLASE·Î µÇµ¹¾Æ°©´Ï´Ù.
Pulse ÀåÄ¡´Â ۰ªÀ» Á÷Á¢ Àü¼ÛÇϴµ¥´Â Àû´çÇÏÁö ¾Ê½À´Ï´Ù. ۰ª ÇÁ·Î¼¼¼°¡ °ªÀ» Á¤È®È÷ ÀνÄÇϱ⿡´Â
Pulse ÀåÄ¡ÀÇ ÀÎ½Ä ÁֱⰡ ³Ê¹« ª½À´Ï´Ù.
ÀÌ·± ¹®Á¦°¡ ÀÖ´Ù¸é, Off-Delay Timer¸¦ »ç¿ëÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù:
SCRIPT
PULSE( D2 ) = B1;
TIMER( OFFDELAY, D3, 10 ) = D2;
CMS.B1 = D3;
ENDSCRIPT
ÀÌ ¿¹¿¡¼´Â, D2 Æ®¸®°ÅÀÇ ÂªÀº ÆÞ½º·Î D3¿¡ Off-Delay°¡ Àû¿ëµË´Ï´Ù. D3ÀÌ TRUE°¡
µÇ°í D2°¡ ´ÙÀ½ Áֱ⿡¼ FLASE°¡ µÇ¸é, D3ÀÇ Å¸À̸Ӱ¡ ÀÛµ¿Çϱ⠽ÃÀÛÇÕ´Ï´Ù. Off-Delay´Â
۰ª ¹Ýº¹¼Óµµ¿Í Á÷Á¢ ¿¬µ¿µÇ¹Ç·Î, ۰ª ÇÁ·Î¼¼¼°¡ °ªÀ» ÃæºÐÈ÷ ÀνÄÇÒ ¼ö ÀÖÀ» ¸¸ÅÀÇ ±æÀÌ·Î º¯¼ö°ªÀÌ
À¯ÁöµË´Ï´Ù.
µ¿ÀÛÀÌ ÀνĵÇÁö ¸øÇϸé, Program Settings¿¡¼ Character Rate¸¦ ´Ã¸®°Å³ª Off-Delay
±¸¹®ÀÇ ½Ã°£ °ªÀ» ´Ã·Áº¸½Ê½Ã¿À.
Scale Function [½ºÄÉÀÏ ±â´É]
¡°SCALE¡± ±â´ÉÀº CMS controls¿Í ½ÇÁ¦ ÄÁÆ®·Ñ·¯·Î ºñÇàÇÒ ¶§ ½ºÄÉÀÏ º¯¼ö¸¦ ¼³Á¤Çϴµ¥ ¾²ÀÔ´Ï´Ù.
ÀÌ ±â´ÉÀº ¡°Centered¡± Ç¥½Ã¸¦ Á¦¿ÜÇÏ¸é ´Ù¸¥ GUIÀÇ ¸ðµç ½ºÄÉÀÏ º¯¼ö ¼³Á¤µéº¸´Ù ¿ì¼±ÇÕ´Ï´Ù.
¿©±â¿¡´Â µ¥µåÁ¸(deadzone), ¹Î°¨µµ(sensitivity), ÀԷ°ª °î¼±(gain curve)
µîµîÀÌ Æ÷ÇԵ˴ϴÙ. º¸ÅëÀº Axis Dialog¿¡¼ ¼³Á¤µË´Ï´Ù. SCALE ±â´ÉÀÇ °á°ú°ªÀº ´Ù¸¥ SCLASE
±â´ÉÀÌ ½ÇÇàµÉ ¶§±îÁö Àû¿ëµË´Ï´Ù.
SCALE ±¸¹®Àº ´ÙÀ½°ú °°½À´Ï´Ù:
SCALE( CMS.A1, 100, 5, GAIN6 );
ù ¹øÂ° º¯¼ö´Â ½ºÄÉÀÏ º¯¼ö°¡ Àû¿ëµÉ ÃàÀ» Á¤Çϸç, ¿©±â¼´Â CMS.A1ÀÔ´Ï´Ù. µÎ ¹øÂ° º¯¼ö´Â
¡°Sensitivity(¹Î°¨µµ)¡±°ªÀ̸ç, -100¿¡¼ 100±îÁöÀÇ °ªÀ» ÆÛ¼¾Æ®·Î ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù.
¼¼ ¹øÂ° º¯¼ö´Â DeadZone º¯¼öÀ̸ç ÀÌ ¿ª½Ã ÆÛ¼¾Æ® °ªÀÔ´Ï´Ù. ¸¶Áö¸· °ªÀº GAIN °ªÀ̸ç, GAIN1¿¡¼
GAIN11±îÁö¸¦ ¾µ ¼ö ÀÖ½À´Ï´Ù.
À̵éÀº °¢°¢ GUI¿¡¼ Àû¿ëÇÒ ¼ö ÀÖ´Â 11°³ÀÇ gain(ÀԷ°ª Á¶Á¤) ¼³Á¤°ú ÀÏÄ¡ÇÕ´Ï´Ù. GAIN6Àº
¼öÆòÀ̸ç, ´Ù¸¥ °ªµéÀº GUIÀÇ Gain ȸéÀÇ ¿ÞÂÊ ¾Æ·¡¿¡¼ ¿À¸¥ÂÊ À§·Î ¿Ã¶ó°¡´Â Á÷¼±ÀÔ´Ï´Ù. GAIN1¿¡¼
GAIN5±îÁö´Â Áß¾ÓÂÊÀÌ ´ú ¹Î°¨ÇÏ°í °¡ÀåÀÚ¸®ÂÊÀÌ ´õ ¹Î°¨ÇÕ´Ï´Ù. GAIN7¿¡¼ GAIN11±îÁö´Â ±×
¹Ý´ë·Î, Áß¾ÓÂÊÀÌ ´õ ¹Î°¨ÇÏ°í ¹Ù±ùÂÊÀÌ ´ú ¹Î°¨ÇÕ´Ï´Ù.
SCALE ¼³Á¤À» ÀÌ¿ëÇÏ¸é ¿©·¯ ¸ðµå¸¦ »ç¿ëÇÏ´Â ÇÁ·Î±×·¥¿¡¼ ¼¼ °¡Áö ¸ðµç ¸ðµåÀÇ gain °ªÀ» ¼³Á¤ÇÒ
¼ö ÀÖ½À´Ï´Ù. ÄÁÆ®·Ñ·¯ÀÇ µ¿ÀÛ(º¸ÅëÀÇ ÀϹÝÀûÀÎ °æ¿ì)¿¡ »ó°ü ¾øÀÌ Æ¯Á¤ÇÑ ¹ÝÀÀÀÌ ÇÊ¿äÇÏ´Ù¸é °£´ÜÈ÷ GUI¿¡¼
¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
SCALE ±¸¹®Àº ¼øÇ×Áß¿¡´Â º¸ÅëÀÇ Á¶Á¾À» Çϰí Âø·ú½Ã¿¡´Â ¹Ì¼¼Á¶Á¾À» ÇÏ°í ½ÍÀ» ¶§¿Í °°ÀÌ ºñÇàÁß¿¡
½ºÆ½ÀÇ ¹ÝÀÀÀ» ¹Ù²Ù°íÀÚ ÇÒ ¶§¿¡¸¸ ÇÊ¿äÇÕ´Ï´Ù. ¿¹Á¦´Â Sample Scripts ºÎºÐÀ» º¸½Ê½Ã¿À.
Select Function [¼±Åà ±â´É]
SELECT ±â´ÉÀº ÇöÀçÀÇ ¾Æ³¯·Î±× º¯¼ö°ª¿¡ ±âÃÊÇØ¼ ¸î °¡Áö ´Ù¸¥ ±â´ÉµéÀ» ½ÇÇàÇÒ ¶§ ¾²ÀÔ´Ï´Ù. ÀÌ
±â´ÉÀº ¼³¸í¼¿¡¼ °¡Àå º¹ÀâÇÑ ºÎºÐÀÌÁö¸¸, ¸Å¿ì ¾µ¸ð°¡ ÀÖ½À´Ï´Ù. ±âº»ÀûÀ¸·Î´Â ¾Æ³¯·Î±× ÀԷ°ªÀ» Àû¿ëÇϰí,
±× °ªÀÇ ¹üÀ§¸¦ ÆÇ´ÜÇØ¼ ±× ¿µ¿ª¿¡ ÁöÁ¤µÈ ÀÛ¾÷À» ½ÇÇàÇÏ´Â °ÍÀÔ´Ï´Ù.
ÀÌ ±¸¹®Àº ´ëºÎºÐÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼ »ç¿ëÇÒ ¼ö ÀÖ´Â ¡°case¡±³ª switch¡± ±¸¹®ÀÇ ¼öÁ¤ÆÇÀ¸·Î
ÀÌÇØÇÒ ¼ö ÀÖ½À´Ï´Ù. SELECT ±â´ÉÀº SEQUENCE ºí·Ï ¾È¿¡¼´Â »ç¿ëÇÒ ¼ö ¾ø´Ù´Â °ÍÀ» ÁÖÀÇÇØ
ÁֽʽÿÀ.
Select ºí·ÏÀÇ ±âº» Çü½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù:
SELECT( INPUTVALUE, TYPE ) OF
// CASE Definitions go here
ENDSELECT
¡°INPUTVALUE¡±´Â ºí·ÏÀ» Á¦¾îÇÏ´Â ¾Æ³¯·Î±× °ªÀ̸ç, ´ÜÀÏ º¯¼ö³ª ¼öÇнÄÀÌ ¾²ÀÏ ¼ö ÀÖ½À´Ï´Ù.
¡°TYPE¡±´Â ¡°POSITION¡±À̳ª ¡°RANGE¡±µÑ Áß ¾î´À °ÍÀ» »ç¿ëÇØµµ µÇ¸ç, select ±¸¹®ÀÇ
ÀÛµ¿¹ýÀ» Á¦¾îÇÕ´Ï´Ù.
±âº»ÀûÀ¸·Î, TYPE°¡ ¡°POSITION¡±À¸·Î µÇ¾î ÀÖÀ¸¸é, Select ±¸¹®Àº ÇöÀç ¿µ¿ªÀ» ¹þ¾î³ª¸é¼
Á¤ÇØÁø °ÍÀ» ½ÇÇàÇÏ°í »õ·Î¿î ¿µ¿ªÀ¸·Î µé¾î°¡¸é¼ Á¤ÇØÁø °ÍÀ» ½ÇÇàÇÔÀ¸·Î½á ÇöÀç ÀԷ°ªÀÇ ¿µ¿ª º¯È¿¡
¹ÝÀÀÇÕ´Ï´Ù.
TYPE°¡ ¡°RANGE¡±·Î ¼±ÅõǾîÀÖ´Ù¸é, Select ±¸¹®Àº ÇöÀç ¿µ¿ª¿¡¼ »õ ¿µ¿ªÀ¸·Î ¿òÁ÷ÀÓ¿¡
µû¶ó ¹ÝÀÀÇÏ´Â °ÍÀº °°Áö¸¸, °¢ ¿µ¿ª »çÀÌÀÇ ¸ðµç ¿µ¿ªµéÀÌ ½ÇÇàµË´Ï´Ù.
¿¹¸¦ µé¾î ÀԷ°ªÀÌ 1¹ø ¿µ¿ª¿¡¼ 3¹ø ¿µ¿ªÀ¸·Î °ð¹Ù·Î ¹Ù²ï´Ù¸é, POSITION Çü½Ä¿¡¼´Â 1¹ø
¿µ¿ªÀ» ºüÁ®³ª°¡ 3¹ø ¿µ¿ªÀ¸·Î µé¾î°¡´Â °ÍÀ¸·Î ÀνÄÇÕ´Ï´Ù.
¹Ý¸é, ¡°RANGE¡± Çü½Ä¿¡¼´Â, 1¹ø ¿µ¿ªÀ» ³ª°¡¼ 2¹ø ¿µ¿ªÀ¸·Î µé¾î°¡°í, ´Ù½Ã 2¹ø ¿µ¿ªÀ» ³ª°¡¼
3¹ø ¿µ¿ªÀ¸·Î µé¾î°¡´Â °ÍÀ¸·Î Àνĵ˴ϴÙ.
¹°·Ð, ¡°POSITION¡± Çü½Ä¿¡¼´Â °ÔÀÓÁß ÀԷ°ªÀÇ ¿òÁ÷ÀÓÀÌ ¾î´ÀÁ¤µµ ºü¸£°Ô ÀÌ·ç¾îÁö¸é 2¹ø ¿µ¿ªÀ»
ÀνÄÇÏÁö ¸øÇϰí 3¹ø ¿µ¿ªÀ¸·Î Áö³ªÄ¡°Ô µÇ¹Ç·Î, ¿òÁ÷ÀÓÀÌ »ó´ëÀûÀ¸·Î ´À¸±¼ö·Ï Á¤È®ÇØÁý´Ï´Ù.
Select ±¸¹®ÀÇ ´ÙÀ½¿¡ ¿À´Â ´Ü¾î´Â ¡°OF¡±ÀÔ´Ï´Ù.
ÀÌ ´Ü¾îÀÇ µÚ¿¡´Â ¡°CASE¡± ±¸¹®µéÀÌ µû¶ó¿À¸ç, ±× °¢°¢Àº ¿µ¿ª ÇѰè¿Í ±× ¿µ¿ªÀ» µé¾î°¡°í ³ª¿Ã
¶§ ½ÇÇàµÉ µ¿ÀÛµéÀ» Á¤ÀÇÇÕ´Ï´Ù. ÀÌ ±¸¹®µéÀº ¡°CASE¡±·Î ½ÃÀ۵Ǹç, ¾ç¼öÀÇ »ó¼ö¿Í ÄݷРǥ½Ã°¡ µÇ¿¡
¿É´Ï´Ù. ¿µ¿ª ÁøÀÔ ÇൿÀº Ç×»ó Á¤ÇØ¾ß ÇÕ´Ï´Ù.
¡°EXITCASE¡±¶ó´Â ´Ü¾î·Î ÁøÀÔ°ú ÀÌÅ» ÇൿÀ» ºÐ¸®ÇÔÀ¸·Î½á ¿µ¿ª ÀÌÅ»½ÃÀÇ Çൿµµ Æ÷ÇÔ½Ãų ¼ö ÀÖÁö¸¸,
EXITCASE´Â ¼±ÅûçÇ×ÀÔ´Ï´Ù. ¸ðµç °æ¿ìÀÇ ¸¶Áö¸·¿¡´Â ¡°BREAK¡± ±¸¹®À» ºÙ¿© Ç¥½ÃÇÕ´Ï´Ù.
Select ºí·ÏÀÇ ¿¹´Â ´ÙÀ½°ú °°½À´Ï´Ù:
SELECT( JS1.A1, RANGE ) OF
CASE 0:
B1 = TRUE;
EXITCASE:
B1 = FALSE;
BREAK;
CASE 64:
B2 = TRUE;
EXITCASE:
B2 = FALSE;
BREAK;
CASE 128:
B3 = TRUE;
EXITCASE:
B3 = FALSE;
BREAK;
CASE 192:
B4 = TRUE;
EXITCASE:
B4 = FALSE;
BREAK;
ENDSELECT
¿©±â¼´Â JS1.A1 ÃàÀÌ 4°³ÀÇ ¿µ¿ªÀ¸·Î ³ª´¹´Ï´Ù. Ç¥ÁØ Ãà ¿µ¿ª(0~255)ÀÌ JS1.A1¿¡
Àû¿ëµÇ¸ç, ÀÌ ¿µ¿ªÀÌ 64, 128, 192ÀÇ °ªÀ§Ä¡¿¡¼ µ¿ÀÏÇÑ Å©±â·Î 4µîºÐµË´Ï´Ù. ÄÁÆ®·ÑÀÌ ÀÌ ¿µ¿ªÀ»
Áö³ª¸é, ÄÁÆ®·ÑÀÇ ¿òÁ÷ÀÓ¿¡ µû¶ó ¸Ç ¾Æ·¡¿¡¼ºÎÅÍ B1ÀÌ ÄÑÁö°í, ±× ´ÙÀ½ B2, B3, ¸¶Áö¸·À¸·Î ¸Ç
À§¿¡¼ B4°¡ ÄÑÁý´Ï´Ù.
ÁöÁ¤µÈ ¿µ¿ªÀº ÇÑ °ª¿¡¼ ´Ù¸¥ °ª±îÁö¶ó´Â Á¡À» ÁÖÀÇÇϽʽÿÀ. Áï, ¡°CASE¡± ´ÙÀ½ÀÇ °ªÀº ¿µ¿ªÀÇ
¾Æ·¡ÂÊ ÇѰèÀ̸ç, À§ÂÊ ÇѰè´Â ÇÑ ´Ü°è ³ôÀº CASE °ªÀÇ -1±îÁö ÀÔ´Ï´Ù.
°¡Àå ³ôÀº °ªÀÇ ¿µ¿ªÀº ±× ¿µ¿ªÀÇ ÃÖ¼Ò°ªº¸´Ù ³ôÀº ¸ðµç °ªÀÔ´Ï´Ù. À§ÀÇ ¿¹¿¡¼´Â, JS1.A1ÀÇ 191
ÀÌ»óÀÇ ¸ðµç °ªµéÀÌ 4¹øÂ° ¿µ¿ªÀÌ µË´Ï´Ù.
°¡Àå ³·Àº ¿µ¿ªÀÇ CASE ±¸¹®ÀÌ 0º¸´Ù Å©´Ù¸é, 0¿¡¼ ÃÖ¼Ò case°ª±îÁö´Â ¡°¾Æ¹«°Íµµ ½ÇÇàµÇÁö
¾Ê´Â¡± ¿µ¿ªÀÌ µË´Ï´Ù. ÀԷ°ªÀÌ Á¤ÀÇµÈ °¡Àå ÀÛÀº °ª ¿µ¿ªº¸´Ù ÀÛÀÚ¸é, ±× ¿µ¿ªÀ¸·Î µé¾î°¡°í ³ª°¥ ¶§
¾Æ¹« °Íµµ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù.
°¢°¢ÀÇ caseµéÀº EXITCASE:¸¦ °¡Áý´Ï´Ù. ÀԷ°ªÀÌ ±× ¿µ¿ª¿¡ µé¾î°¥ ¶§ CASE¿Í EXITCASE
±¸¹® »çÀÌÀÇ Äڵ尡 ½ÇÇàµË´Ï´Ù. ¾Æ³¯·Î±× °ªÀÌ ÀÏÁ¤ÇÑ ¿µ¿ªÀ» ¹þ¾î³ª¸é EXITCASE:¿Í BREAK
±¸¹® »çÀÌÀÇ Äڵ尡 ½ÇÇàµË´Ï´Ù.
CMS´Â ¿µ¿ªÀÌ ¹Ù²î´Â µ¿¾È ۰ª ÇÁ·Î¼¼¼¿ÍÀÇ µ¿½Ã¼ºÀ» À¯ÁöÇϹǷÎ, EXITCASE ±¸¹®ÀÇ Å°°ªÀº
»õ ¿µ¿ªÀÇ CASE ±¸¹®º¸´Ù ¸ÕÀú Àü¼ÛµË´Ï´Ù.
À§¿¡ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ, EXITCASE´Â ¼±ÅûçÇ×ÀÔ´Ï´Ù. Case´Â ´ÙÀ½°ú °°ÀÌ ¾µ ¼öµµ ÀÖ½À´Ï´Ù:
CASE 100:
B1 = TRUE;
BREAK
ÀÌ °æ¿ì¿¡´Â, ÀԷº¯¼ö°¡ óÀ½ 100À» ³ÑÀ¸¸é B1ÀÌ ¼³Á¤µË´Ï´Ù. ´Ü, ÀÌ °æ¿ì¿¡´Â B1À» FALSE·Î
¸¸µå´Â ¼³Á¤ÀÌ ¹öư µî¿¡ ÀÇÇØ¼ ÀÌ·ç¾îÁ®¾ß Çϸç, ±×·¸Áö ¾ÊÀ¸¸é °è¼Ó B1ÀÌ ON »óÅ·ΠÀÖ°Ô µË´Ï´Ù.
Statement in CASE Definitions [CASE
Á¤ÀÇ ³»ÀÇ ±¸¹®]
CASE Á¤ÀÇ ³»¿¡¼´Â ¹®Á¦ ¹ß»ýÀ» ¹æÁöÇϱâ À§ÇØ ¸î °¡Áö Á¾·ùÀÇ ±¸¹®¸¸À» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. »ç¿ëÇÒ
¼ö ÀÖ´Â ±¸¹®µé¿¡´Â IF/THEN, IF,THEN/ELSE, SCALE ±¸¹®µé°ú ±âº» ÁöÁ¤ ÀÛ¾÷ (¡°=¡±)
µîÀÌ ÀÖ½À´Ï´Ù. ¼ø¿Àº »ç¿ëÇÒ ¼ö ¾øÀ¸¸ç, ÀåÄ¡ À̸§Àº ¿Ïº®È÷ ÀÎ½Ä °¡´ÉÇÏÁö¸¸ ÀåÄ¡ Á¤Àǵµ »ç¿ëÇÒ ¼ö
¾ø½À´Ï´Ù.
±×·¸Áö¸¸, Select ºí·Ï¿¡¼ ÀÌ Ç׸ñµéÀ» Á¦¾îÇÒ ¼ö´Â ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ ¿¹¿¡¼´Â, js1.a1ÀÇ
°ªÀÌ 128(Áß¾Ó)º¸´Ù Å©¸é ¼ø¿ÀÌ ½ÇÇàµË´Ï´Ù:
SCRIPT
// First, set it up so B1 is TRUE
when we're above center.
//
SELECT( JS1.A1, POSITION ) OF
CASE 0:
BREAK;
CASE 128:
B1 = TRUE;
EXITCASE:
B1 = FALSE;
BREAK;
ENDSELECT
// Now run a sequence based on B1
(We're not in the
// select block now so anything goes);
//
SEQUENCE
WAIT( B1 ); // Wait for b1
CMS.B1 = TRUE; // Turn on CMS.B1
DELAY( 20 ); // Leave it on for about a second
CMS.B1 = FALSE; // Turn it off
ENDSEQUENCE
ENDSCRIPT
ÀÌ ±â´ÉÀ¸·Î ¹«¾ùÀ» ÇÒ ¼ö ÀÖ´Â Áö¸¦ °£´ÜÇϰԸ¸ ¼³¸íÇßÁö¸¸, ÀÌ ±â´ÉÀ¸·Î ÇÒ ¼ö ÀÖ´Â Àϵé°ú ±â´ÉÀ»
ÀûÇÕÇÏ°Ô Á¶ÇÕÇÏ´Â ¿©·¯ ¹æ¹ýµéÀÌ ÀÖÀ» ¼ö ÀÖ½À´Ï´Ù.
Setting the Mapper Mode [¸ÅÆÛ ¸ðµå ¼³Á¤]
½ºÅ©¸³Æ®¿¡¼ ÇöÀçÀÇ Mapper Mode¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±×·¯ÀÚ¸é, CURRENTMODE º¯¼ö¸¦
¿øÇÏ´Â ¸ðµå·Î ¼³Á¤ÇÏ¸é µË´Ï´Ù:
CURRENTMODE = MODE2;
ÀÌ·¸°Ô Çϸé, ÄÁÆ®·Ñ·¯¿¡ Mode Á¦¾î ±â´ÉÀÌ ¾øÀ» ¶§³ª ÀåÄ¡ÀÇ ¸ðµå Á¦¾î ¹öưÀÌ ¾Æ´Ï¶ó ÀÏ¹Ý ¹öưÀ¸·Î
¸ðµå¸¦ Á¦¾îÇϰíÀÚ ÇÒ ¶§ ½ºÅ©¸³Æ®¸¦ ÀÌ¿ëÇÏ¿© ¸ÅÆÛ ¸ðµå¸¦ Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ü, CMS¿¡¼ ¸ðµå¸¦
¼³Á¤ÇÒ ¶§¿¡´Â ¸ðµå º¯°æ ±â´ÉÀÌ ÀÖ´Â ½ÇÁ¦ ÀåÄ¡ÀÇ ¸ðµå Ç¥½ÃµîÀÌ ÇöÀç ¸ðµå¿¡ ¸Â°Ô Ç¥½ÃµÇÁö ¾Ê´Â´Ù´Â
Á¡¿¡ À¯ÀÇÇϽʽÿÀ.
ÀåÄ¡ÀÇ ¸ðµå Ç¥½ÃµîÀº ÀåÄ¡ÀÇ Mode ¹öưÀ» »ç¿ëÇÏ¿´À» ¶§¿¡¸¸ Á¤»óÀûÀ¸·Î Ç¥½ÃµË´Ï´Ù.
»ç¿ëÇÒ ¼ö ÀÖ´Â ¸ðµå´Â MODE1, MODE2, MODE3À̸ç, ¼ýÀÚ°ª 0,1,2¸¦ ¾µ ¼öµµ ÀÖ½À´Ï´Ù.
±×·¯¸é ¸ðµå º¯°æ ½ºÀ§Ä¡ ÇÁ·Î±×·¡¹ÖÀ» Á»´õ ½±°Ô ÇÒ ¼ö ÀÖ½À´Ï´Ù. ±¸Ã¼ÀûÀÎ ¿¹Á¦¿Í »ç¿ë¹ýÀº Sample
Scripts ºÎºÐÀ» º¸½Ê½Ã¿À.
CMS¿¡¼ Mode¸¦ Á¦¾îÇÏ´Â ¸ÊÀ» ¸¸µé¸é, Control Manager GUIÀÇ ¡°Program
Setting¡±À¸·Î °¡¼ ¡°Mode Control¡±À» CMS Controls¡±·Î ¹Ù²Ù¾î¾ß ÇÕ´Ï´Ù.
±×·¯¸é Dialog Pane¿¡ Mode 2¿Í Mode 3 ÅÇÀÌ È°¼ºÈµÇ´Â ´ë½Å, FighterStickÀ̳ª
ProThrottleÀÇ Mode ¼¼ÆÃ ±â´ÉÀº ºñȰ¼ºÈµË´Ï´Ù.
°¢ ¸ðµåÀÇ ¼³¸íÀº Mapper Modes ºÎºÐÀ» º¸½Ê½Ã¿À.
Miscellaneous
Topics [±âŸ »çÇ×]
Programming
Tips [ÇÁ·Î±×·¡¹Ö ÆÁ]
½ºÅ©¸³Æ® ÀÛ¾÷À» ÇÒ ¶§ÀÇ ¸î °¡Áö ÆÁÀ» ¾Ë·Áµå¸³´Ï´Ù. ÇÁ·Î±×·¡¹ÖÇÏ´Â ¹ýÀº ¾Æ´ÏÁö¸¸, ½ºÅ©¸³Æ®¸¦ ´õ ½±°Ô
¸¸µé°í Å×½ºÆ®ÇÒ ¼ö ÀÖÀ¸¸ç, ³ªÅ¸³¯ ¼ö ÀÖ´Â ¹®Á¦µéÀ» ÇØ°áÇϴµ¥ µµ¿òÀÌ µÇ´Â ¹æ¹ýµéÀÔ´Ï´Ù.
ÆÁ #1 Çѹø¿¡ ÇÑ °¡ÁöÀÇ ±â´É¸¸À» ¸¸µé °Í
Çѹø¿¡ ½ºÅ©¸³Æ®¿¡ ÇѰ¡Áö ±â´É¸¸À» ¸¸µé°í ÃÖ¼ÒÇÑÀÇ ¸ÊÀ» ¸¸µé¾î ±â´ÉÀÌ Á¦´ë·Î ÀÛµ¿ÇÏ´ÂÁö È®ÀÎÇØº¾´Ï´Ù.
Àӽ÷Π¡°ÀÛµ¿ÇÏ´Â ¸Ê¡±À» ¸¸µé¾î ƯÁ¤ÇÑ ±â´ÉÀÌ ÀÛµ¿ÇÏ´ÂÁö¸¦ È®ÀÎÇÏ°í ¿Í ±× ±â´ÉÀ» GUI¿¡¼ ÇÒ´çÇØº¾´Ï´Ù.
±×·¯¸é Å×½ºÆ®¿ëÀ¸·Î ´Ù¿î·ÎµåÇÏ´Â ½Ã°£ÀÌ Àý¾àµÇ¸ç, ¼öÁ¤Çϱ⵵ ½±½À´Ï´Ù.
¸¸µé¾îº» ±â´ÉÀÌ Á¦´ë·Î ÀÛµ¿Çϸé, ½ÇÁ¦·Î »ç¿ëÇÒ ¸Ê¿¡ ºÙ¿©³Ö±â¸¦ ÇØ¼ ÃÖÁ¾ÀûÀÎ Å×½ºÆ®¸¦ ÇÕ´Ï´Ù.
ÆÁ #2 ½ºÅ©¸³Æ® üũ ¹öưÀ» ±â¾ïÇÒ °Í
½ºÅ©¸³Æ® ÆÄÀÏÀ» ´Ù¿î·ÎµåÇϱâ Àü¿¡ CMS ¿¡µðÅÍ¿¡¼ Script Check ¹öưÀ» ÀÌ¿ëÇÏ´Â ½À°üÀ» µéÀ̽ʽÿÀ.
±×·¯¸é ¿ÀŸ¿Í ¿ÀÀÛµ¿À» »¡¸® ã¾Æ³¾ ¼ö ÀÖ°í, ½Ã°£°ú ´Ù½Ã ÆíÁýÀÛ¾÷À» ÇØ¾ß ÇÏ´Â ³ë·ÂÀÌ Àý¾àµË´Ï´Ù.
ÆÁ #3 ¸ÊÀ» ½ÇÇàÇϱâ Àü¿¡ ²À ÀúÀåÇÒ °Í
ÀÌ´Â ¹ö±× ¼öÁ¤À» ÇÒ ¶§ ¸Å¿ì Áß¿äÇÑ »çÇ×ÀÔ´Ï´Ù. ¸ÊÀ» ½ÇÇàÇØ¼ ۰ªÀÌ »êÃâµÇ°Å³ª ¿ÀÀÛµ¿ÀÌ µÇ¸é, ¸ÊÀÌ
¹Ù²î¾î¹ö¸± ¼öµµ ÀÖ½À´Ï´Ù. ÀúÀåÀ» ¸ÕÀú ÇϽʽÿÀ. ±×·¯¸é ¹®Á¦°¡ »ý±â´õ¶óµµ ÀÛ¾÷³»¿ëÀÌ ¸ÁÃÄÁöÁö ¾Ê½À´Ï´Ù.
ÆÁ #4 ¿ì¼± ¡°º¸À̰ԡ± ÇÒ °Í
óÀ½ ¾î¶² ±â´ÉÀ» ¸¸µé ¶§ Æã¼ÇŰ(F1, F2 µî)¿Í °°Àº ¡°º¸ÀÌÁö ¾Ê´Â¡± ۰ªÀ» »ç¿ëÇÏ´Â °ÍÀº ÇÇÇϰí,
±×´ë½Å ¡°a¡±³ª ¡°b¡±Ã³·³ º¸À̴ Ű°ªÀ¸·Î ¸¸µå½Ê½Ã¿À. ¿ÀÀÛµ¿ÀÌ ÀÖÀ» ¶§ ±âº» ۵éÀº Windows
¸Þ´º³ª ±â´ÉÀÌ ½ÇÇàµÇ´Â µîÀÇ ¹®Á¦¸¦ ¹ß»ý½Ãų À§ÇèÀÌ ´õ Àû½À´Ï´Ù.
¶ÇÇÑ Å°°ªÀ» ¸Þ¸ðÀåÀ̳ª ´Ù¸¥ ÅØ½ºÆ® ÆíÁý±â·Î È®ÀÎÇϱ⵵ ½±½À´Ï´Ù. ŰÅ×½ºÆ® À¯Æ¿¸®Æ¼¿¡¼´Â ۸¦ ´©¸£°í
¶¼´Â °ÍÀÌ º¸ÀÌÁö¸¸, ´Ù¸¥ Windows ÇÁ·Î±×·¥¿¡¼´Â º¸ÀÏ ¼öµµ ÀÖ°í º¸ÀÌÁö ¾ÊÀ» ¼öµµ ÀÖ½À´Ï´Ù.
¸Þ¸ðÀåÀ» ÀÌ¿ëÇϸé ۰ª ÀÛµ¿»óŸ¦ Àß ¾Ë¾Æº¼ ¼ö ÀÖ¾î¼, °ÔÀÓ¿¡¼ ¾î¶»°Ô ÀÛµ¿ÇÒÁö¸¦ ´õ Àß È®ÀÎÇÒ
¼ö ÀÖ½À´Ï´Ù. ¸Þ¸ðÀå¿¡¼ ¿øÇÏ´Â ´ë·Î ۰ªÀÌ ³ª¿Â´Ù¸é, ½ºÅ©¸³Æ®·Î µ¹¾Æ°¡¼ ½ÇÁ¦·Î ¿øÇϴ Ű·Î ¹Ù²Ù¾îÁÖ¸é
µË´Ï´Ù.
ÆÁ #5 óÀ½ÀÇ Å×½ºÆ®¿¡´Â Keytest¿Í Test/Calibrate¸¦
ÀÌ¿ëÇÒ °Í
¸ÊÀ» óÀ½ Å×½ºÆ®¸¦ ÇÒ ¶§´Â Test/Calibrate ȸé°ú Keytest À¯Æ¿¸®Æ¼¸¦ ÀÌ¿ëÇϽʽÿÀ.
Ãà, ¹öư, ۰ªÀ» º¸¸é ½ºÅ©¸³Æ®ÀÇ À߸øµÈ ºÎºÐÀ» ½±°Ô ¾Ë ¼ö ÀÖ½À´Ï´Ù. ÀÌ·± À¯Æ¿¸®Æ¼µéÀ» ÀÌ¿ëÇϸé
Control Manager¿¡¼ ºüÁ®³ª°¡¼ °ÔÀÓÀ» ½ÇÇàÇÏ´Â °Íº¸´Ù ÈξÀ ºü¸¨´Ï´Ù.
ÃÖÁ¾ÀûÀ¸·Î´Â °ÔÀÓ¿¡¼ Å×½ºÆ®ÇØ¾ß ÇÏÁö¸¸, GUI¿¡¼ Å×½ºÆ®¸¦ Çϸé Control Manager¿Í °ÔÀÓÀ»
¿Ô´Ù°¬´Ù ÇÏ´Â ¼ö°í¸¦ ´ú ¼ö ÀÖ½À´Ï´Ù. ¿îÀÌ ÁÁ´Ù¸é, ½ÇÁ¦·Î °ÔÀÓ¿¡ µé¾î°¬À» ¶§ ¼öÁ¤ÇÒ »çÇ×ÀÌ º°·Î
¾øÀ» °ÍÀÔ´Ï´Ù.
ÆÁ #6 ½ºÅ©¸³Æ®ÀÇ ¼öÁ¤
Ưº°È÷ ÇÒ ÀÏÀÌ ¾øÀÌ ½ºÅ©¸³Æ®¸¦ ¿¾ú´Ù¸é, µð¹ö±ëÀÇ Ã¹ ¹øÂ° ±ÔÄ¢ ? ¡°ÇÏ·Á°í Çß¾ú´ø °Í¸¸À» Ç϶ó¡±
? À» ¸í½ÉÇϽʽÿÀ.
CMS´Â ¡°»ý°¢¡±À» ÇÏÁö ¾ÊÀ¸¸ç, ½ºÅ©¸³Æ®¿¡¼ Áö½ÃÇÑ °Í¸¸À» ½ÇÇàÇÕ´Ï´Ù. CMS¿¡¼ ¾î¶»°Ô ½ÇÇàµÇ´ÂÁö¸¦
º¸°í, ½ºÅ©¸³Æ®¸¦ º» ÈÄ, ¾îµð¿¡¼ ¾î¶² ¹®Á¦°¡ ½ÇÇàµÇ´ÂÁö¸¦ È®ÀÎÇØº¸½Ê½Ã¿À. º¸ÅëÀº ÀÛµ¿ÇÏ´Â ºÎºÐÀÇ
½ºÅ©¸³Æ® À§Ä¡¸¦ ã´Â °ÍÀÌ ¾î·ÆÁö ¾ÊÀ¸¸ç, ±× ºÎºÐºÎÅÍ º¸¸é µË´Ï´Ù.
ÆÁ #7 ½ÇÇàµÇ°í ÀÖ´Â À߸øµÈ ½ºÅ©¸³Æ®´Â Á¾·áÇÒ °Í
CMS¿¡¼´Â ½ºÅ©¸³Æ®¸¦ ¸¸µå´Â °ÍÀÌ °¡´ÉÇϸç, ¸ÊÀÌ ½ÇÇàµÇ°í ÀÖÀ» ¶§¿¡´Â À̰ÍÀÌ ¹®Á¦°¡ µÉ ¼ö ÀÖ½À´Ï´Ù.
º¸ÅëÀº ½ºÅ©¸³Æ®¸¦ ´Ý´Â ÀÛµ¿Àº ³ªÅ¸³ªÁö ¾Ê±â ¶§¹®¿¡ ۰¡ ´·ÁÀÖ´Â »óŰ¡ ¹ß»ýÇÏ´Â °Í Á¤µµ ÀÌ»óÀÇ ¿ÀÀÛµ¿Àº
º°·Î ¾øÁö¸¸, ±×°ÍÀÌ ¾à°£ÀÇ ¹®Á¦¸¦ ¹ß»ý½Ãų ¼ö´Â ÀÖ½À´Ï´Ù. ±×·² ¶§¸¦ ´ëºñÇÑ ¾à°£ÀÇ ÆÁÀ» ¸»¾¸ µå¸®ÀÚ¸é:
1. GUI¿¡¼ ¼öÁ¤ÀÛ¾÷À» Çϰí ÀÖ´Ù¸é, Direct
Mode ¹öưÀ» Ŭ¸¯Çؼ ¸ÊÀ» ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù.
2. ¾î¶² Ű¿¡ ¹®Á¦°¡ ÀÖ´ÂÁö ¾È´Ù¸é, Űº¸µå·Î
±× ۸¦ ŸÀÌÇÎÇØ¼ ۰ªÀÇ ¿ÀÀÛµ¿À» ¸ØÃâ ¼ö ÀÖ½À´Ï´Ù.
3. ۰ªÀÇ ¿ÀÀÛµ¿À¸·Î ÀÎÇÏ¿© Windows¿¡
¹®Á¦°¡ ¹ß»ýÇϸé Á¶±Ý ´õ ¾î·Æ°Ô µË´Ï´Ù. ¸¶¿ì½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù¸é, ¿ª½Ã Direct Mode·Î °¡¼
¸ÊÀ» ´ÝÀ» ¼ö ÀÖ½À´Ï´Ù.
۰ª ¿ÀÀÛµ¿À¸·Î ÀÎÇØ¼ ½Ã½ºÅÛÀÌ ¾î¶² µ¿ÀÛÀ» ÇÑ´Ù¸é ¹®Á¦°¡ µÉ ¼ö ÀÖ½À´Ï´Ù. ÀÏ·Ê·Î TAB ۰¡ ´·ÁÀÖ´Â
»óŰ¡ µÇ¸é, Ä¿¼°¡ µ¥½ºÅ©Å¾ ÁÖÀ§¸¦ °è¼Ó µ¹°Ô µÇ¸ç, ¸¶¿ì½º¸¦ »ç¿ëÇϱâ Èûµé¾îÁý´Ï´Ù.
±×·± °æ¿ì¿¡´Â, CH USB ÀåÄ¡¸¦ »ÌÀ¸¸é Control
Manager°¡ Direct Mode·Î µ¹¾Æ¿É´Ï´Ù. ÀåÄ¡¸¦ »ÌÀ¸¸é ¹®Á¦°¡ ÇØ°áµÉ °ÍÀÔ´Ï´Ù. Mode°¡
¹Ù²ï ÈÄ¿¡ ÀåÄ¡¸¦ ´Ù½Ã ²ÈÀ» ¼ö ÀÖ½À´Ï´Ù.
¾î¶² ¹®Á¦µéÀº ÇØ°áÇϱâ Èûµé±âµµ ÇÕ´Ï´Ù. ¹®Á¦ ÇØ°áÀÇ ÁÖ¾ÈÁ¡Àº ¾î¶² ¹æ¹ýÀ¸·Îµç Control Manager¸¦
Direct Mode·Î µ¹·Á³õ´Â °ÍÀÔ´Ï´Ù.
ÆÁ #8 ½ÃÀÛ½ÃÀÇ ¹®Á¦ ÇØ°á
Windows ½ÃÀ۽ÿ¡ CMSart À¯Æ¿¸®Æ¼¸¦ ½ÇÇàÇϵµ·Ï ¼³Á¤ÇÏ¿´´Ù¸é, ½ºÅ©¸³Æ® ¼öÁ¤ÀÛ¾÷½Ã¿¡ ¹®Á¦°¡
ÀÖ´Â ¸ÊÀ» ´Ù¿î·ÎµåÇØ³õÁö ¾Êµµ·Ï ÁÖÀÇÇϽʽÿÀ. Windows¸¦ ´Ù½Ã ½ÃÀÛÇÒ ¶§ ¸ÊÀÌ ÀÚµ¿À¸·Î ½ÇÇàµË´Ï´Ù.
±×·¯¸é Windows ½ÃÀÛ°ú µ¿½Ã¿¡ ¹®Á¦°¡ ¹ß»ýÇÒ ¼ö ÀÖ½À´Ï´Ù.
¹°·Ð, CMStart¸¦ ºÒȰ¼ºÈ½ÃŰ°Å³ª Á¦´ë·Î µÈ ¸ÊÀ» ´Ù¿î·ÎµåÇØ¼ ¹®Á¦¸¦ ÇØ°áÇÒ ¼ö ÀÖ½À´Ï´Ù.
½ºÅ©¸³Æ® ¿¹Á¦
#1 Ãà °áÇÕ
ÀÌ Àå¿¡´Â ½ºÅ©¸³Æ® ¿¹Á¦°¡ µé¾îÀÖ½À´Ï´Ù.
¸ðµç °ÍÀ» ´Ù Æ÷ÇÔÇÏÁö´Â ¾ÊÀ¸¸ç ±×´ë·Î »ç¿ëÇϱâ À§ÇÑ °Íµµ
¾Æ´ÏÁö¸¸, ÀڽŸ¸ÀÇ CMS¸¦ ¸¸µå´Âµ¥ µµ¿òÀÌ µÉ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù.
¿¹Á¦Áß ¾î¶² ºÎºÐµéÀº ÁÖ¼®ÀÌ ´Þ·Á Àֱ⠶§¹®¿¡ ¹®ÀåÀÌ ±é´Ï´Ù.
½±°Ô ÀÐÀ¸·Á¸é, ¸í·ÉÁÙÀÌ ´ÙÀ½ ÁÙ·Î ³Ñ¾î°¡¼ È¥¶õµÇÁö ¾Ê°Ô²û Help âÀ» ÃÖ´ë·Î ÇϽʽÿÀ.
ÀÌ ¿¹Á¦´Â CMS¸¦ ÀÌ¿ëÇÏ¿© ÀÏÁ¤ÇÑ Á¶°Ç¿¡¼ ¿©·¯ ÃàµéÀ» ÇϳªÀÇ ÃàÀ¸·Î ¼³Á¤ÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.
ÀÌ ¿¹¿¡¼´Â Åä ºê·¹ÀÌÅ©¸¦ Y Ãà Çϳª·Î °áÇÕÇÕ´Ï´Ù.
ÀÌ ±â´ÉÀº ¾×¼¿·¹ÀÌÅÍ¿Í ºê·¹ÀÌÅ© Æä´ÞÀ» º°µµ·Î Áö¿øÇÏÁö ¾Ê°í ¼¾ÅͰªÀÌ ¾×¼¿°ú ºê·¹ÀÌÅ©ÀÇ ±âº»°ªÀ¸·Î
ÁÖ¾îÁö´Â ·¹ÀÌ½Ì ½Ã¹Ä·¹ÀÌÅÍ¿¡¼ ¾µ¸ð°¡ ÀÖ½À´Ï´Ù.
½ºÅ©¸³Æ®¸¦ ½ÃÀÛÇϱâ Àü¿¡, ¹®Á¦°¡ ¹«¾ùÀÎÁö »ìÆìº¸°í, ÇöÀç »óŸ¦ ÆÄ¾ÇÇϰí, ÇØ°áÇÒ ¹æ¹ýÀ» ãµµ·Ï
ÇÕ´Ï´Ù.
ÀÌ ¿¹Á¦¿¡¼ À¯¿ëÇÑ »ç½ÇÀº ¸ðµç ÃàµéÀº 0¿¡¼ 255±îÁöÀÇ ¹üÀ§¸¦ °¡Áø´Ù´Â °ÍÀÔ´Ï´Ù. À̰ÍÀº ½ÇÁ¦
ÄÁÆ®·Ñ·¯¿¡¼»Ó¸¸ ¾Æ´Ï¶ó CMS Controls¸¦ ÅëÇØ Windows·Î º¸³»Áö´Â °ªµµ ¸¶Âù°¡ÁöÀÔ´Ï´Ù.
¾Ë¾Æ¾ß ÇÒ µÎ ¹øÂ° »ç½ÇÀº, ProPedal¿¡¼ ¿ÞÂÊ Åä ºê·¹ÀÌÅ©´Â A1 ÃàÀÌ¸ç ¿À¸¥ÂÊ Åä ºê·¹ÀÌÅ©´Â
A2 ÃàÀ̶ó´Â °ÍÀÔ´Ï´Ù. Test/Calibration ȸ鿡¼ ÀÌ °ªµé°ú ¹æÇâÀ» ã±â ½¬¿ì¸ç, GUI¿¡µµ
ÀåÄ¡ À̸§ÀÌ ³ª¿É´Ï´Ù.
¸¶Áö¸·À¸·Î ¾Ë¾Æ¾ß ÇÒ »çÇ×Àº °ÔÀÓ¿¡¼ ÇÊ¿äÇÑ µ¿ÀÛÀÔ´Ï´Ù. º¸ÅëÀº 0ÀÌ ÃÖ´ë ½º·ÎƲÀ̰í, 255°¡
ÃÖ´ë ºê·¹ÀÌÅ©, ±×¸®°í 128ÀÌ ½º·ÎƲ°ú ºê·¹ÀÌÅ© ¸ðµÎ ÀÛµ¿ÇÏÁö ¾ÊÀº »óÅÂÀÔ´Ï´Ù. ´Ü, °æ¿ì¿¡ µû¶ó
¹Ù²ð ¼ö ÀÖ½À´Ï´Ù.
¿ä¾àÇÏÀÚ¸é, µÎ°³ÀÇ Åä ºê·¹ÀÌÅ© ÃàÀÌ ÀÖ°í, µÎ ÃàÀº ³õ¾ÒÀ» ¶§ 0°ú ÃÖ´ë·Î ´·¶À» ¶§ 255ÀÇ
°ªÀ» °¡Áý´Ï´Ù. ¿ì¸®°¡ ÇÒ ÀÏÀº ÇϳªÀÇ Æä´ÞÀÌ 0¿¡¼ 128±îÁöÀÇ °ªÀ» »êÃâÇÏ°í ´Ù¸¥ Æä´Þ¿¡¼´Â 128¿¡¼
255±îÁöÀÇ °ªÀ» »êÃâÇϵµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù.
ÀÌ´Â °£´ÜÇÑ »ê¼öÀ̹ǷÎ, ¿ì¸®°¡ ÇÒ Àϵµ °£´ÜÇÕ´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]
ÀÌ ¿¹¿¡¼ ¿ì¸®°¡ »ç¿ëÇÒ GUIÀÇ Ã¹ ¹øÂ° Device TabÀÇ Á¶Á¾ ÇÚµéÀÌ JS1À̶ó°í °¡Á¤ÇÕ´Ï´Ù.
±×¸®°í ProPedalÀº GUIÀÇ µÎ ¹øÂ° Device Tab¿¡ ÀÖ°í JS2¶ó°í °¡Á¤ÇÕ´Ï´Ù. »ç¿ëÀÚ
¿©·¯ºÐÀÇ ÀåÄ¡°¡ ÀÌ¿Í ´Ù¸£´Ù¸é, °¢ÀÚ¿¡ ¸Â°Ô ¹Ù²Ù¾îÁÖ¾î¾ß ÇÕ´Ï´Ù. À§ÀÇ °¡Á¤¿¡ µû¸¥ ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú
°°À» °ÍÀÔ´Ï´Ù:
SCRIPT
CMS.A1 = 128 + (JS2.A2/2) - (JS2.A1/2);
ENDSCRIPT
½ÇÁ¦·Î´Â ´Ü ÇÑ ÁÙÂ¥¸® ½ºÅ©¸³Æ®ÀÔ´Ï´Ù. ÀÌ ½ºÅ©¸³Æ®´Â 128ÀÇ ¼¾ÅͰª¿¡¼ ½ÃÀ۵ǰí, ÇÑÂÊ Àý¹ÝÀº YÃà
°ª, ±×¸®°í ´Ù¸¥ ÇÑÂÊ Àý¹ÝÀº X Ãà °ªÀÌ ´õÇØÁý´Ï´Ù.
±×·¡¼, ¿ì¸®°¡ ¿øÇÏ´Â ´ë·Î ¿À¸¥ÂÊ Åä ºê·¹ÀÌÅ©(A2)¸¦ ´©¸£¸é 128¿¡¼ 255±îÁö °ªÀÌ ´Ã¾î³ª¸ç,
¿ÞÂÊ Åä ºê·¹ÀÌÅ©(A1)À» ´©¸£¸é ÃÖÃÊÀÇ 128¿¡¼ 0ÂÊÀ¸·Î °ªÀÌ ÁÙ¾îµì´Ï´Ù.
¸ÊÀ» ¿Ï¼ºÇÏ·Á¸é, GUI¿¡¼ Ãà ÇÒ´çÀ» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. YokeÀÇ XÃàÀº CM Device 1ÀÇ
XÃàÀ¸·Î ÇÒ´çÇϰí, YokeÀÇ YÃàÀº »ç¿ëÇÏÁö ¾ÊÀ» °ÍÀ̹ǷΠ¡°None¡±À¸·Î ÇÒ´çÇÕ´Ï´Ù. CMS ControlsÀÇ
1¹ø ÃàÀº CM Device 1ÀÇ YÃàÀ¸·Î ÇÒ´çÇÕ´Ï´Ù.
½ºÅ©¸³Æ® ¿¹Á¦
#2 ¸Ê ¸ðµå Á¦¾î
Setting the Mode ºÎºÐ¿¡¼ ¼³¸íÇÑ ´ë·Î, CMSÀÇ CURRENTMODE º¯¼ö·Î ¸Ê ¸ðµå¸¦
Á¦¾îÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¿¹Á¦¿¡¼´Â FighterStick°ú ProTrottleÀÇ Çϵå¿þ¾î ¸ðµå ½ºÀ§Ä¡Ã³·³
ÀÛµ¿ÇÏ´Â ¸ðµå ¼øÈ¯ ½ºÀ§Ä¡¸¦ ¸¸µé °ÍÀÔ´Ï´Ù.
¿©±â¼ ¿ÀÁ÷ Áß¿äÇÑ »ç½Ç ÇѰ¡Áö´Â ¼¼ ¸ðµå¸¦ ¼øÈ¯Çϱâ À§Çؼ CURRENTMODE º¯¼ö¸¦ 0,1,2,
±×¸®°í ´Ù½Ã 0À¸·Î µ¹·Á¾ß ÇÑ´Ù´Â °ÍÀÔ´Ï´Ù.
ÀÌ ¿¹¿¡¼´Â ³»ºÎ ¾Æ³¯·Î±× º¯¼öÁßÀÇ ÇϳªÀÎ A1À» »ç¿ëÇØ¼ ¼³Á¤ÇϰíÀÚ ÇÏ´Â ¸ðµå¸¦ ±â¾ïÇϰԲû ÇÒ °ÍÀÔ´Ï´Ù.
º¯¼ö´Â ¹öưÀ» Çѹø ´©¸¦ ¶§¸¶´Ù Áõ°¡Çϸç, º¯¼ö°¡ 2¸¦ ³ÑÀ» ¶§´Â 0À¸·Î Ãʱâȵ˴ϴÙ. WAIT()
±â´ÉÀ» ÀÌ¿ëÇÏ¸é ¹öưÀ» Ŭ¸¯ÇÒ ¶§±îÁö °úÁ¤À» ¸ØÃâ ¼ö ÀÖÀ¸¹Ç·Î À̸¦ À§ÇØ ¼ø¿ÀÌ °¡Àå ½¬¿î ¹æ¹ýÀ̶ó°í
»ý°¢µË´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]
ÀÌ ¸Ê¿¡¼´Â, ¸Ê¿¡¼ CombatStick¸¸ ÀνÄÇÏ°í ±× ÀåÄ¡ÀÇ Button 2¸¦ ¸ðµå º¯°æ ¹öưÀ¸·Î
¾´´Ù°í °¡Á¤ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µÉ °ÍÀÔ´Ï´Ù:
SCRIPT
SEQUENCE
WAIT( JS1.B2 ); // Wait here until JS1.B2 clicks
A1 = A1 + 1; // Add 1 to our Mode counter
IF( [ A1 > 2 ] ) THEN // If the value is over 2 then
A1 = 0; // set it to 0
ENDIF
CURRENTMODE = A1; // Now copy it to CURRENTMODE
ENDSEQUENCE
ENDSCRIPT
JS1.B2¸¦ Çѹø Ŭ¸¯ÇÒ ¶§¸¶´Ù A1ÀÌ 1¾¿ Áõ°¡ÇÕ´Ï´Ù. A1ÀÌ 2¸¦ ³ÑÀ¸¸é, ´Ù½Ã 0ÀÌ µË´Ï´Ù.
±×·¯¸é °ªÀº 0, 1, 2, 0, 1, 2 µîÀ¸·Î ¼øÈ¯µË´Ï´Ù. ±×·³À¸·Î½á ÀǵµÇß´ø ´ë·Î ¼¼ ¸ðµå°¡ ¼øÈ¯µË´Ï´Ù.
CM Device ÃàÀ̳ª ¹öưÀ» Á¦¾îÇÏ´Â °ÍÀº ¾Æ´Ï¹Ç·Î, ¸Ê°ú Ãæµ¹ÀÌ ÀϾÁö ¾Êµµ·Ï CombatStickÀÇ
Button 2¸¦ »©°í´Â GUI¿¡¼ ¡°None¡±À¸·Î ÇÒ´çÇϵµ·Ï ÇÕ´Ï´Ù.
½ºÅ©¸³Æ® ¿¹Á¦
#3 Æ®¸² Áöµ¿ Á¶Á¤
ÀÌ ¿¹Á¦´Â ÀÚµ¿ Æ®¸²Á¶Á¤ ±â´ÉÀÔ´Ï´Ù. ¿¹Á¦»ó¿¡¼, Á÷¼± ¼öÆòºñÇàÀ» ÇÒ ¶§±îÁö Á¶À̽ºÆ½À» ¿òÁ÷ÀÔ´Ï´Ù.
±× ½ÃÁ¡¿¡¼ ±× À§Ä¡·Î ÃàÀ» °íÁ¤ÇÏ´Â ¹öưÀ» ´©¸¨´Ï´Ù. ¹öưÀ» ´©¸£°í ÀÖÀ¸¸é¼ Á¶À̽ºÆ½À» Áß¾ÓÀ¸·Î ¿øÀ§Ä¡
½ÃŰ°í ¹öưÀ» ¶Á´Ï´Ù.
±×·¯¸é Á¶À̽ºÆ½ÀÌ Áß¾Ó¿¡ ÀÖÀ» ¶§ÀÇ Æ®¸² ¼³Á¤ÀÌ À¯ÁöµÇ¸ç, Á¶À̽ºÆ½À» ¿òÁ÷ÀÌ¸é ±×ÂÊÀ¸·Î ¿òÁ÷ÀÓÀÌ ÁÖ¾îÁý´Ï´Ù.
Æ®¸²À» ÃʱâÈÇÏ·Á¸é, Á¶À̽ºÆ½À» Áß¾Ó¿¡ ³õÀº ä·Î ±× ¹öưÀ» ´Ù½Ã ´©¸¨´Ï´Ù.
ÀÌ ¿ª½Ã °£´ÜÇÑ »ê¼ö¹®Á¦ÀÔ´Ï´Ù. ¿øÇÏ´Â Æ®¸² À§Ä¡ÀÇ °ªÀ» ã°í, ±× ´ÙÀ½¿¡´Â ±× °ª°ú Á¶À̽ºÆ½ÀÌ
Áß¾Ó¿¡ ÀÖÀ» ¶§ÀÇ °ª°úÀÇ Â÷À̸¦ °è»êÇÕ´Ï´Ù.
ÀÌ Â÷À̰¡ ÆÄ¾ÇµÇ¸é ½ÇÁ¦ Á¶À̽ºÆ½ °ª¿¡ ÀÌ ¼öÄ¡¸¦ Ãß°¡ÇÏ¿© ¡°Æ®¸² Á¶Á¤µÈ¡± °ªÀ» ¸¸µé¾î³À´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹Á¦]
ÀÌ ¿¹Á¦¿¡¼´Â ¸Ê¿¡¼ CombatStick ÇѰ¡Áö¸¸ JS1·Î ÀνÄÇϰí, CombatStickÀÇ Button
2¸¦ ¡°Æ®¸²¡± ¹öưÀ¸·Î »ç¿ëÇÑ´Ù°í °¡Á¤ÇÕ´Ï´Ù.
½ºÅ©¸³Æ®´Â µÎ ´Ü°èÀÇ °úÁ¤À¸·Î µÇ¾îÀÖ½À´Ï´Ù. óÀ½¿¡´Â Button 2¸¦ ´·¶À» ¶§ÀÇ Æ®¸²°ªÀ» °è»êÇϰí,
±× ´ÙÀ½¿¡´Â Button 2°¡ ÇØÁ¦µÇ¸é Æ®¸²°ªÀ» Àû¿ëÇÕ´Ï´Ù. XÃà°ú YÃàÀÇ Æ®¸²°ª Â÷À̸¦ ±â¾ïÇϵµ·Ï
°¢°¢ ³»ºÎ º¯¼ö A1°ú A2¸¦ ÀÌ¿ëÇÒ °ÍÀÔ´Ï´Ù.
Á¶À̽ºÆ½ÀÇ Æ®¸²°ªÀº °è¼Ó ¾÷µ¥ÀÌÆ®ÇÏ¿© ¹öưÀÌ ÇØÁ¦µÇ¾îÀÖ´Â µ¿¾È °è¼Ó Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù. ¹Ý¸é, óÀ½
¹öưÀ» Ŭ¸¯ÇßÀ» ¶§¸¸ Æ®¸²°ª Â÷À̸¦ °è»êÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
¾ÕÀÇ »çÇ×À» À§Çؼ´Â IF/ENDIF ºí·ÏÀÌ Àû´çÇϰí, µÚÀÇ »çÇ׿¡´Â SEQUENCE°¡ Àû´çÇÕ´Ï´Ù.
½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µÉ °ÍÀÔ´Ï´Ù:
SCRIPT
IF( NOT JS1.B2 ) THEN // If Button 2 is released then
CMS.A1 = JS1.A1 + A1; // add the X offset to the stick X
value
CMS.A2 = JS1.A2 + A2; // and add the Y offset to the stick
Y value
ENDIF
SEQUENCE
WAIT( JS1.B2 ); // Wait until Button 2 clicks
A1 = JS1.A1 - 128; // Calculate the X offset and save it
in A1
A2 = JS1.A2 - 128; // Calculate the Y offset and save it
in A2
ENDSEQUENCE
ENDSCRIPT
GUI¿¡¼ ¸î °¡Áö ÀåÄ¡ ÇÒ´çÀ» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ¿ì¼±, CombatStickÀÇ X¿Í YÃàÀº °ü°è
¾øÀ¸¹Ç·Î ¡°None¡±À¸·Î ¹Ù²ß´Ï´Ù. ±× ´ÙÀ½, CMS.A1°ú CMS.A2ÀÇ °ªÀ» CM Device 1ÀÇ
XÃà°ú YÃà¿¡ ÇÒ´çÇÏ¿© Windows¿¡¼ ¼öÁ¤µÈ °ªÀÌ Àû¿ëµÇµµ·Ï ÇÕ´Ï´Ù.
½ºÅ©¸³Æ® ¿¹Á¦
#4 »çÀü º¯¼ö ÁöÁ¤
ÀÌ ¿¹Á¦¿¡¼´Â ½ºÅ©¸³Æ®¸¦ óÀ½ ½ÇÇàÇÒ ¶§ ¾î¶² º¯¼ö¸¦ ƯÁ¤ÇÑ °ªÀ¸·Î ¼³Á¤ÇÏ´Â ÇѰ¡Áö ¹æ¹ýÀ» ¼³¸íÇÕ´Ï´Ù.
º¸ÅëÀº, óÀ½ ½ºÅ©¸³Æ®°¡ ½ÃÀÛµÉ ¶§´Â ½ºÅ©¸³Æ®¿¡¼ ¾²´Â ¾Æ³¯·Î±× °ªÀº 0À¸·Î, ¸ðµç ºñÆ® º¯¼öµéÀº FLASE·Î
¼³Á¤µË´Ï´Ù. ´ëºÎºÐÀÇ °æ¿ì¿¡´Â ÀÌ´ë·Î µÎ¾îµµ ÁÁÁö¸¸, ´Ù¸¥ °ªÀÌ ÇÊ¿äÇÒ ¶§µµ ÀÖ½À´Ï´Ù.
ÇѰ¡Áö ¿¹´Â ½º·ÎƲÀ» Á¶Á¤ÇÒ ¶§ÀÔ´Ï´Ù. 0°ªÀº ¡°ÃÖ´ë ½º·ÎƲ¡±À̸ç, ½ºÅ©¸³Æ®°¡ óÀ½ ½ÃÀÛµÉ ¶§ °©ÀÚ±â
ÃÖ´ë ½º·ÎƲ »óŰ¡ µÇ´Â °ÍÀº ÁÁÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù.
¿©±â¼ÀÇ ÇѰ¡Áö ¹æ¹ýÀº ½ºÅ©¸³Æ®°¡ óÀ½ ÁøÇàµÇ´ÂÁö ¾Æ´ÑÁö¸¦ ¾Ë°Ô²û ÇÏ´Â °ÍÀÔ´Ï´Ù. ´ÙÇàÈ÷µµ, ÀÌ´Â
±×¸® ¾î·ÆÁö ¾Ê½À´Ï´Ù. ¿ì¸®´Â ¸ÊÀÌ Ã³À½ ½ÃÀÛµÉ ¶§ ³»ºÎ ¾Æ³¯·Î±× º¯¼öµéÀº 0À¸·Î, ºñÆ® º¯¼öµéÀº FLASE·Î
¼³Á¤µÈ´Ù´Â °ÍÀ» ¾Ë°í ÀÖ½À´Ï´Ù.
µû¶ó¼ ³»ºÎ ºñÆ® º¯¼ö·Î ¡°Ã³À½ ÁøÇࡱÀÌ Ç¥½ÃµÇ´Â ³»ºÎ ºñÆ® º¯¼ö¸¦ ¼±ÅÃÇÏ¸é µË´Ï´Ù. ºñÆ® º¯¼ö°¡
FALSEÀ̸é, ¸ÊÀÌ ÃʱâÈµÈ µÚ óÀ½ ½ÇÇà°úÁ¤¿¡ ÀÖ´Â °ÍÀ̰í À̶§ ¿øÇÏ´Â º¯¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.
±×¸®°í ³ ÈÄ¿¡´Â ¿ì¸®°¡ ¼±ÅÃÇÑ ºñÆ® º¯¼ö¸¦ TRUE·Î ¸¸µé°í ÀÌÈÄ °è¼Ó ±× °ªÀ» TRUE·Î ³²°ÜµÎ¸é
µË´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹¹®]
ÀÌ ¿¹¹®¿¡¼´Â Æ®¸² ÀÚµ¿ Á¶Á¤ ¿¹Á¦¿¡¼¿Í Á¶°ÇÀÌ °°´Ù°í °¡Á¤ÇÕ´Ï´Ù. ¿ì¸®°¡ ¸¸µé °ÍÀº ¸ÊÀÌ ½ÃÀÛµÉ ¶§
CMS.A1°ú CMS.A2°¡ Áß¾Ó¿¡ ÀÖµµ·Ï ÇÏ´Â °ÍÀÔ´Ï´Ù. ³»ºÎ ºñÆ® º¯¼ö B1À» ¡°ÃÖÃÊ ½ÇÇࡱ Ç¥½Ã·Î
»ç¿ëÇÒ °ÍÀ̸ç, ½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
SCRIPT
IF( NOT B1 ) THEN // If our first pass flag is false then
B1 = TRUE; // set flag TRUE so it won't run again
CMS.A1 = 128; // force the values in CMS.A1 and
CMS.A2 = 128; // CMS.A2 to 128.
ENDIF
ENDSCRIPT
ÀÌ ¿¹Á¦¿¡¼´Â, CMS.A1°ú CMS.A2¿¡ ÇÊ¿äÇÑ °ÍÀ» Á¦¿ÜÇϸé GUI¿¡ ¾Æ¹«°Íµµ ÇÒ´çÇÏÁö ¾Ê½À´Ï´Ù.
½ºÅ©¸³Æ® ¿¹Á¦
#5 º¹¼ö ۰ª Àü¼Û
¹öư Çϳª¸¦ ´·¯¼ ¿©·¯ °³ÀÇ Å°°ª ¹®ÀåÀ» º¸³»¾ß ÇÒ ¶§µµ ÀÖ½À´Ï´Ù. Çѹø ´©¸¦ ¶§¸¶´Ù ´ÙÀ½¹ø ¹®ÀåÀÌ
Àü¼ÛµË´Ï´Ù. GUI¿¡¼´Â ÀÌ·± ±â´ÉÀ» ¸¸µé ¼ö ¾øÁö¸¸, CMS¿¡¼´Â È®½ÇÈ÷ °¡´ÉÇÕ´Ï´Ù.
ÀÌ ¿¹Á¦¿¡¼´Â °£´ÜÈ÷ CMS ControlsÀÇ ¸î¸î ¹öưÀ¸·Î °¢°¢ÀÇ ¹öưÀ¸·Î ÇØ´çÇÏ´Â ¹®ÀåµéÀ» GUI¸¦
ÀÌ¿ëÇÏ¿© Àü¼ÛÇϵµ·Ï ÇÁ·Î±×·¡¹Ö ÇÕ´Ï´Ù. ½ºÅ©¸³Æ®´Â Á¤È®ÇÑ ¹öưÀ» ´·¶À» ¶§ ¹®ÀåµéÀ» ¼øÈ¯ÇÕ´Ï´Ù.
The Script [½ºÅ©¸³Æ® ¿¹Á¦]
¸î °¡ÁöÀÇ ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù. °¡Àå °£´ÜÇÑ ¹æ¹ýÀº ¼ø¿À» ÀÌ¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. ¸Ê¿¡¼ CombatStick
Çϳª¸¸À» JS1À¸·Î »ç¿ëÇϰí Button 2¸¦ ¸Þ½ÃÁö ¼øÈ¯¿¡ ¾´´Ù°í °¡Á¤ÇÕ´Ï´Ù.
¶ÇÇÑ, 4°³ÀÇ ¸Þ½ÃÁö°¡ ÀÖ°í À̸¦ CMS.B1¿¡¼ºÎÅÍ CMS.B4±îÁö¿¡ Àû¿ë½ÃŲ´Ù°í °¡Á¤ÇÕ´Ï´Ù ±×·¯¸é
½ºÅ©¸³Æ®´Â ´ÙÀ½°ú °°ÀÌ µË´Ï´Ù:
SCRIPT
SEQUENCE
WAIT(JS1.B2); // Wait the first click
CMS.B1 = TRUE; // Press CMS Controls Button 1
WAIT(JS1.B2); // Wait for the next click
CMS.B1 = FALSE; // Release CMS Control Button 1
CMS.B2 = TRUE; // Press CMS Controls Button 2
WAIT(JS1.B2); // Wait for the next click
CMS.B2 = FALSE; // Release CMS Control Button 2
CMS.B3 = TRUE; // Press CMS Controls Button 3
WAIT(JS1.B2); // Wait for the next click
CMS.B3 = FALSE; // Release CMS Control Button 3
CMS.B4 = TRUE; // Press CMS Controls Button 4
WAIT(JS1.B2); // Wait for the next click
CMS.B4 = FALSE; // Release CMS Control Button 4
ENDSEQUENCE
ENDSCRIPT
¶Ç ´Ù¸¥ ¹æ¹ýÀ¸·Î¼ SELECT ±â´ÉÀ» »ç¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù. SELECT´Â ³»ºÎ ¾Æ³¯·Î±× º¯¼öÁßÀÇ
Çϳª·Î Á¦¾îµÇ¸ç, ÀÌ °ªÀ» JS1.B2·Î Á¦¾îÇÕ´Ï´Ù.
¿ì¼± ¹öưÀÌ Å¬¸¯µÇ±â¸¦ ±â´Ù¸®°í, ±× ´ÙÀ½ »õ °ªÀ» ¼³Á¤ÇÕ´Ï´Ù. SELECT ±¸¹®À¸·Î ÀÌ·¯ÇÑ °úÁ¤À»
¸¸µé ¼ö ÀÖ°í, °¢°¢ÀÇ °æ¿ì¿¡ CMS.BxÁßÀÇ Çϳª¸¦ Ãâ·ÂÇÏ¿© ¹®ÀåÀÌ »êÃâµË´Ï´Ù.
ÀÌ´Â ´ÙÀ½°ú °°ÀÌ ¸¸µé¸é µË´Ï´Ù:
SCRIPT
SEQUENCE
WAIT( JS1.B2 ); // Wait until Button 2 is pressed
A1 = A1 + 1; // Increment our message counter
IF( [ A1 > 3 ] ) THEN // If A1 is over three then
A1 = 0; // Reset A1 to 0
ENDIF
ENDSEQUENCE
SELECT( A1, POSITION ) OF
CASE 0:
CMS.B1 = TRUE; // Set the bit for our first message
EXITCASE:
CMS.B1 = | | |