These notes have been taken from the Official Microsoft Download Center page for Small Basic 1.2, and were not originally included in the blog post announcing Small Basic 1.2. The copy of the announcement blog post can be found here.
-
Kinect for Small Basic – Small Basic 1.2 introduces three Kinect objects:
KinectBodyList
,KinectFaceList
, andKinectWindow
. With these objects, you can program with the Microsoft Kinect Sensor and the information that it captures. You can:- Show the color, infrared, depth, body index, and body sensor data.
- Capture images from the color, infrared, depth, and body index sensors.
- Replace the background behind people in the foreground with another image (this is similar to chroma key compositing or "green screen" processing).
- Get the position and orientation of 26 different "joints" in up to 6 human bodies in both 3D space and on the screen.
- Get the open/closed state of the hands of up to 6 humans in front of the sensor.
- Get the lean angle of up to 6 humans in front of the sensor.
- Get the position and orientation of the faces of up to 6 humans in front of the sensor.
-
Dictionary Object: Expanded Languages – In Small Basic 1.0, the
Dictionary
object supported the following languages (where you enter a word in the first language and the definition is displayed in the second language):EnglishToEnglish
,EnglishToFrench
, andFrenchToEnglish
. We expanded our support to these languages:EnglishToGerman
,GermanToEnglish
EnglishToItalian
,ItalianToEnglish
EnglishToJapanese
,JapaneseToEnglish
EnglishToKorean
,KoreanToEnglish
EnglishToSimplifiedChinese
,SimplifiedChineseToEnglish
EnglishToTraditionalChinese
,TraditionalChineseToEnglish
EnglishToSpanish
,SpanishToEnglish
- Dictionary Object (1.0-12) – The Dictionary site changed their
API, which broke the
Dictionary
Object for Small Basic 1.0 and 1.1. This has been fixed for Small Basic 1.2. - Language Improvements – We made thorough reviews and updated the
UI text for these languages: Chinese (Simplified), Chinese (Traditional),
Czech, Dutch, French, German, Hebrew, Italian, Japanese, Portuguese (Brazil),
Portuguese (Portugal), Russian, Spanish, and Turkish. We also had some logged
errors that were fixed in this pass:
- Hebrew Errors (1.0-D03) – Hebrew translation errors in the IDE are fixed.
- French Errors (1.0-D05, D06, D07) – French translation errors in the IDE are fixed.
- Japanese Errors (1.0-D01, D12-28) – Japanese translation errors in the IDE are fixed.
GraphicsWindow.GetPixel
Crash (1.0-14) – In Small Basic 1.0/1.1, theGraphicsWindow.GetPixel
method crashed if the coordinates were outside the window (such asx < 0
). This crash is eliminated in 1.2.Turtle.Show()
Issue (1.0-02) – In Small Basic 1.0/1.1, theTurtle.Show()
method didn't show the Turtle after you usedGraphicswindow.Clear()
orTurtle.Hide()
. This has been fixed for 1.2.Textwindow.Show
Crash (1.0-15) – In Small Basic 1.0/1.1, hiding and showing aTextWindow
crashed (Windows 8.1) and deleted content (Windows 7). This crash is eliminated in 1.2.- Setup Needs .NET Framework 3.5 SP1 (1.1-01) – In Small Basic 1.1, the
Small Basic Setup (
SmallBasic.en_us.msi
) requires you to have .NET Framework 3.5 SP1 installed. This is inconsistent because Small Basic v1.1 moves to the requirement of .NET Framework 4.5 instead. This has been fixed for 1.2. Shapes.AddText()
Error (1.0-05) – In Small Basic 1.0/1.1, if you use theShapes.AddText()
method at the top of your program, Small Basic shows an exception thrown by the target. The exception is no longer thrown in 1.2.Math
Object Crashes (1.0-03) – In Small Basic 1.0/1.1, variousMath
object errors caused unhandled exceptions. The crashes were fixed for 1.2.- Divide By Zero Produces Zero (1.0-22) – In 1.0/1.1, if you divide by
zero (
0
), you get the result of zero (0
), even though in math this isn't possible (and should result in an error). In 1.2, you receive an error when you attempt to divide by zero. - IDE Documentation Updates – We made several improvements to keep the
documentation in the UI as accurate as possible:
Math.Floor
andMath.Ceiling
(1.0-D04) – Clarified how these return the largest integer.Control.Add*()
Methods (1.0-D08) – Updated to mention how they require the position coordinates not the width/height.Network
Object (1.0-D09) – Clarified that it is a helper class, not a private helper.Sound.PlayMusic
(1.0-D10) – Updated "MML" to write out as "Music Macro Language".
There are no new breaking changes introduced in Small Basic 1.2. However, there are two breaking changes from Small Basic 1.1 that break Small Basic 1.0:
- Windows XP – Due to the upgrade to .NET Framework 4.5, Small Basic 1.1/1.2 does not work on Windows XP and older operating systems. We will continue to offer Small Basic 1.0 for users of Windows XP and older operating systems.
- 1.0 Extensions – All extensions built for Small Basic 1.0 will need to be recompiled on Small Basic 1.1/1.2 and re-released. Extensions built on 1.1 will work fine on 1.2.
- .NET Framework 4.5 – We upgraded to .NET Framework 4.5 from 3.5. Although this causes some breaking changes (see below), it's necessary in order to build out new objects that take advantage of new devices, operating systems, and capabilities.
- Modernized UX: Controls – The design of the program controls (button,
scroll bar, arrows on the control bar) in the
GraphicsWindow
is now flat/modernized. This includes blue and dark gray borders around the text boxes. And the window title font is also updated. - Language Downloads – You can now directly download your language from the Download Center. See the Download Center Page.
Flickr
Object (1.0-17) – Flickr changed their API, which broke theFlickr
Object. This has been fixed for Small Basic 1.1.- Find + Arrow Keys Crash (1.0-21) – In 1.0, the Small Basic environment hangs up (shows "Not Responding") when pushing arrow keys while text finding when you have multiple edit windows open. This issue is fixed in 1.1 and can no longer be reproduced.