🎁 TENYO 2026 BUNDLE
💰 ON SALE
🚚 Shipping from 12 USD

Objects

Event - onEvent

To handle events in MagiScript, such as button presses, accelerometer data, or Bluetooth connections, simply implement the onEvent function. This function will automatically receive and manage all incoming events for you.

				
					function onEvent(event) {
  console.log(event.value, event.type, event.source, event.sourceId);
}
				
			

For more information, see our events documentation.

Device

Atom can connect to other devices, like PeekSmith or SB Watch. You can query the list of connected devices with the devices.list() function, or with device specific functions like ps.list() or sbwatch.list().

				
					const devs = devices.list();
for (let i = 0; i < devs.length; devs++) {
  console.log(dev.id, dev.type, dev.battery, dev.isActive);
}
				
			

We have some magic related JavaScript objects we support, like a time or card object. You will get them from functions, or pass them to functions. Expect more objects and functions coming.

Time - parseTime

Time has 4 properties: hours, minutes, seconds and text.

				
					let time = parseTime('714');
console.log(time.text, time.hours, time.minutes, time.seconds);
				
			

You can use the string representation to set the time on an SB Watch, for example:

				
					sbwatch.setTime(time.text);
				
			

Or display it on a PeekSmith:

				
					ps.print(time.text);
				
			

Card - parseCard

Card has many properties: pos, name, code, color, value.

				
					let card = parseCard('QH'); 
  console.log(card.pos); // 37 - pos in "simple" stack 
  console.log(card.code); // 37 - pos in "simple" stack 
  console.log(card.name); // QH 
  console.log(card.value); // 11 - Queen 
  console.log(card.color); // 2 - Hearts
				
			

The name property (‘4C’ in this case) can be sent to PeekSmith and it will recognize it as a poker card when Smart Text is ON. The code is the position of the card in the “simple” stack (color * 13 + value).

Devices & MagiScript

⚛️ Atom Remote

🔢 Quantum Calculator

🤹‍♂️ MagiScript Language

🤹‍♂️ MagiScript Examples

🤹‍♂️ MagiScript Tutorials

General

📃 First Steps

MagiScript Editor

📃 Basics

📃 Keyboard Shortcuts

📃 Running Your First Program

📃 App Store

📃 Atom Settings (Editor)

📃 Debugging Techniques

Input/Output

📃 Buttons

📃 Vibration Motor

📃 RGB LED

📃 Devices

📃 PeekSmith

📃 Quantum

📃 Teleport

📃 Spotted Dice

📃 SB Watch

📃 IARVEL Watch

📃 Fossil Watch

📃 Cosmos Printer

📃 PeriPage Printer

📃 ATC Remote

📃 Labco Scrabble

📃 Bluetooth Keyboard

📃 Bluetooth Mouse

📃 Timers

📃 Database

📃 Events

📃 System (exit, sleep, rand)

📃 Objects (card, time)

Language

📃 Summary

📃 Comments

📃 Variable Declarations

📃 Operators

📃 Control Flow

📃 Functions

📃 Numbers

📃 Strings

📃 Arrays

📃 Objects

📃 Uint8Array