diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..a8049fc31a704cd2a74158e97ab80766f3e712d8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,113 @@ + +# Created by https://www.gitignore.io/api/c++,linux,macos,windows +# Edit at https://www.gitignore.io/?templates=c++,linux,macos,windows + +### C++ ### +# Prerequisites +*.d + +# Compiled Object files +*.slo +*.lo +*.o +*.obj + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod +*.smod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### macOS ### +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### Windows ### +# Windows thumbnail cache files +Thumbs.db +Thumbs.db:encryptable +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# End of https://www.gitignore.io/api/c++,linux,macos,windows + +# gitignore patterns specific to Microbit development with Yotta +build +yotta_targets +yotta_modules diff --git a/.yotta.json b/.yotta.json new file mode 100644 index 0000000000000000000000000000000000000000..49df55591ff284f61db43167d6d1f343f3348a39 --- /dev/null +++ b/.yotta.json @@ -0,0 +1,5 @@ +{ + "build": { + "target": "bbc-microbit-classic-gcc,*" + } +} diff --git a/.yotta_ignore b/.yotta_ignore new file mode 100644 index 0000000000000000000000000000000000000000..fe3f55b120761f16864d938cba55e6eb14d2104d --- /dev/null +++ b/.yotta_ignore @@ -0,0 +1 @@ +source/examples diff --git a/module.json b/module.json new file mode 100644 index 0000000000000000000000000000000000000000..df7b43ce0809bc5d9b782b95bd73fff07b8a879a --- /dev/null +++ b/module.json @@ -0,0 +1,11 @@ +{ + "name": "microbit-samples", + "version": "2.1.1", + "description": "The micro:bit runtime common abstraction with examples.", + "license": "MIT", + "dependencies": { + "microbit": "lancaster-university/microbit#v2.1.1" + }, + "targetDependencies": {}, + "bin": "./source" +} diff --git a/source/main.cpp b/source/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..11c6c172cb00280d8de4d02dcd62ae1340697487 --- /dev/null +++ b/source/main.cpp @@ -0,0 +1,42 @@ +/* +The MIT License (MIT) + +Copyright (c) 2016 British Broadcasting Corporation. +This software is provided by Lancaster University by arrangement with the BBC. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sublicense, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. +*/ + +#include "MicroBit.h" + +MicroBit uBit; + +int main() +{ + // Initialise the micro:bit runtime. + uBit.init(); + + // Insert your code here! + uBit.display.scroll("HELLO WORLD! :)"); + + // If main exits, there may still be other fibers running or registered event handlers etc. + // Simply release this fiber, which will mean we enter the scheduler. Worse case, we then + // sit in the idle task forever, in a power efficient sleep. + release_fiber(); +}