Compare commits

...

12 Commits

Author SHA1 Message Date
e95d29286a 0.7.5 2016-12-22 23:12:46 -08:00
14d50810cb Bump pxt-core to 0.7.9 2016-12-22 23:12:43 -08:00
250e21b5c9 fixed toolbox color 2016-12-22 22:41:13 -08:00
98eab3672f updated css breakpoints 2016-12-22 22:36:06 -08:00
360e2b7ba6 0.7.4 2016-12-22 21:14:29 -08:00
f255e1a903 Bump pxt-core to 0.7.8 2016-12-22 21:14:27 -08:00
d4762cc5b5 deploy 0.7.3 to web 2016-12-22 10:05:52 +01:00
749b5266cb 0.7.3 2016-12-20 16:30:40 -08:00
bbd23f6d26 Bump pxt-core to 0.7.5 2016-12-20 16:30:38 -08:00
4bef7d50bd 0.7.2 2016-12-16 15:01:13 -08:00
bf423ca037 Bump pxt-core to 0.6.4 2016-12-16 15:01:05 -08:00
7556796eb6 merging more memory fixes 2016-12-16 14:57:16 -08:00
7 changed files with 32 additions and 21 deletions

View File

@ -1,3 +1,3 @@
{ {
"appref": "v0.5.89" "appref": "v0.7.3"
} }

View File

@ -1,5 +1,5 @@
{ {
"bluetooth": "Support for additional Bluetooth services.", "bluetooth": "Support for additional Bluetooth services.\n\nSupport for additional Bluetooth services.",
"bluetooth.onBluetoothConnected": "Register code to run when the micro:bit is connected to over Bluetooth", "bluetooth.onBluetoothConnected": "Register code to run when the micro:bit is connected to over Bluetooth",
"bluetooth.onBluetoothConnected|param|body": "Code to run when a Bluetooth connection is established", "bluetooth.onBluetoothConnected|param|body": "Code to run when a Bluetooth connection is established",
"bluetooth.onBluetoothDisconnected": "Register code to run when a bluetooth connection to the micro:bit is lost", "bluetooth.onBluetoothDisconnected": "Register code to run when a bluetooth connection to the micro:bit is lost",

View File

@ -26,7 +26,7 @@
"String.substr": "Return substring of the current string.", "String.substr": "Return substring of the current string.",
"String.substr|param|length": "number of characters to extract", "String.substr|param|length": "number of characters to extract",
"String.substr|param|start": "first character index; can be negative from counting from the end, eg:0", "String.substr|param|start": "first character index; can be negative from counting from the end, eg:0",
"basic": "Provides access to basic micro:bit functionality.", "basic": "Provides access to basic micro:bit functionality.\n\nProvides access to basic micro:bit functionality.",
"basic.clearScreen": "Turn off all LEDs", "basic.clearScreen": "Turn off all LEDs",
"basic.color": "Converts the color name to a number", "basic.color": "Converts the color name to a number",
"basic.forever": "Repeats the code forever in the background. On each iteration, allows other codes to run.", "basic.forever": "Repeats the code forever in the background. On each iteration, allows other codes to run.",

View File

@ -79,7 +79,7 @@ namespace pxt {
intcheck(vtable->methods[0] == &RefRecord_destroy, ERR_SIZE, 3); intcheck(vtable->methods[0] == &RefRecord_destroy, ERR_SIZE, 3);
intcheck(vtable->methods[1] == &RefRecord_print, ERR_SIZE, 4); intcheck(vtable->methods[1] == &RefRecord_print, ERR_SIZE, 4);
void *ptr = ::operator new(vtable->numbytes); void *ptr = ::operator new(vtable->numbytes);
RefRecord *r = new (ptr) RefRecord(PXT_VTABLE_TO_INT(vtable)); RefRecord *r = new (ptr) RefRecord(PXT_VTABLE_TO_INT(vtable));
memset(r->fields, 0, vtable->numbytes - sizeof(RefRecord)); memset(r->fields, 0, vtable->numbytes - sizeof(RefRecord));
@ -117,7 +117,6 @@ namespace pxt {
void RefObject::destroy() { void RefObject::destroy() {
((RefObjectMethod)getVTable()->methods[0])(this); ((RefObjectMethod)getVTable()->methods[0])(this);
delete this;
} }
void RefObject::print() { void RefObject::print() {
@ -245,6 +244,7 @@ namespace pxt {
this->data[i] = 0; this->data[i] = 0;
} }
this->data.resize(0); this->data.resize(0);
delete this;
} }
void RefCollection::print() void RefCollection::print()
@ -278,6 +278,7 @@ namespace pxt {
void RefLocal::destroy() void RefLocal::destroy()
{ {
delete this;
} }
PXT_VTABLE_CTOR(RefLocal) { PXT_VTABLE_CTOR(RefLocal) {
@ -296,6 +297,7 @@ namespace pxt {
void RefRefLocal::destroy() void RefRefLocal::destroy()
{ {
decr(v); decr(v);
delete this;
} }
PXT_VTABLE_BEGIN(RefMap, 0, RefMapMarker) PXT_VTABLE_BEGIN(RefMap, 0, RefMapMarker)
@ -310,6 +312,7 @@ namespace pxt {
data[i].val = 0; data[i].val = 0;
} }
data.resize(0); data.resize(0);
delete this;
} }
int RefMap::findIdx(uint32_t key) { int RefMap::findIdx(uint32_t key) {
@ -334,7 +337,7 @@ namespace pxt {
for(std::set<RefObject*>::iterator itr = allptrs.begin();itr!=allptrs.end();itr++) for(std::set<RefObject*>::iterator itr = allptrs.begin();itr!=allptrs.end();itr++)
{ {
(*itr)->print(); (*itr)->print();
} }
printf("\n"); printf("\n");
} }
#else #else
@ -347,16 +350,16 @@ namespace pxt {
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
map<pair<int, int>, Action> handlersMap; map<pair<int, int>, Action> handlersMap;
MicroBitEvent lastEvent; MicroBitEvent lastEvent;
// We have the invariant that if [dispatchEvent] is registered against the DAL // We have the invariant that if [dispatchEvent] is registered against the DAL
// for a given event, then [handlersMap] contains a valid entry for that // for a given event, then [handlersMap] contains a valid entry for that
// event. // event.
void dispatchEvent(MicroBitEvent e) { void dispatchEvent(MicroBitEvent e) {
lastEvent = e; lastEvent = e;
Action curr = handlersMap[{ e.source, e.value }]; Action curr = handlersMap[{ e.source, e.value }];
if (curr) if (curr)
runAction1(curr, e.value); runAction1(curr, e.value);
@ -389,7 +392,7 @@ namespace pxt {
create_fiber((void(*)(void*))runAction0, (void*)a, fiberDone); create_fiber((void(*)(void*))runAction0, (void*)a, fiberDone);
} }
} }
void error(ERROR code, int subcode) void error(ERROR code, int subcode)
{ {
@ -441,10 +444,10 @@ namespace pxt {
// unique group for radio based on source hash // unique group for radio based on source hash
// ::touch_develop::micro_bit::radioDefaultGroup = programHash(); // ::touch_develop::micro_bit::radioDefaultGroup = programHash();
// repeat error 4 times and restart as needed // repeat error 4 times and restart as needed
microbit_panic_timeout(4); microbit_panic_timeout(4);
int32_t ver = *pc++; int32_t ver = *pc++;
checkStr(ver == 0x4209, ":( Bad runtime version"); checkStr(ver == 0x4209, ":( Bad runtime version");
@ -473,6 +476,6 @@ namespace pxt {
{ {
exec_binary((int32_t*)functionsAndBytecode); exec_binary((int32_t*)functionsAndBytecode);
} }
} }
// vim: ts=2 sw=2 expandtab // vim: ts=2 sw=2 expandtab

View File

@ -1,6 +1,6 @@
{ {
"name": "pxt-calliope", "name": "pxt-calliope",
"version": "0.7.1", "version": "0.7.5",
"description": "calliope target for PXT", "description": "calliope target for PXT",
"keywords": [ "keywords": [
"JavaScript", "JavaScript",
@ -34,6 +34,6 @@
"semantic-ui-less": "^2.2.4" "semantic-ui-less": "^2.2.4"
}, },
"dependencies": { "dependencies": {
"pxt-core": "0.6.2" "pxt-core": "0.7.9"
} }
} }

View File

@ -289,8 +289,16 @@
], ],
"invertedMenu": true, "invertedMenu": true,
"invertedToolbox": true, "invertedToolbox": true,
"monacoToolbox": false,
"simAnimationEnter": "rotate in", "simAnimationEnter": "rotate in",
"simAnimationExit": "rotate out", "simAnimationExit": "rotate out",
"blocklyOptions": { } "blocklyOptions": {
"grid": {
"spacing": 45,
"length": 7,
"colour": "rgba(189, 195, 199, 0.30)",
"snap": false
}
}
} }
} }

View File

@ -103,7 +103,7 @@
} }
/* Mobile */ /* Mobile */
@media only screen and (max-width: @largestMobileScreen) { @media only screen and (max-width: @largestMobileEditorBreakpoint) {
.blocklyTreeLabel { .blocklyTreeLabel {
font-size: 0.5rem !important; font-size: 0.5rem !important;
} }
@ -113,7 +113,7 @@
} }
/* Tablet */ /* Tablet */
@media only screen and (min-width: @tabletBreakpoint) and (max-width: @largestTabletScreen) { @media only screen and (min-width: @tabletEditorBreakpoint) and (max-width: @largestTabletEditorBreakpoint) {
.organization { .organization {
top: auto; top: auto;
} }
@ -125,7 +125,7 @@
} }
/* Small Monitor */ /* Small Monitor */
@media only screen and (min-width: @computerBreakpoint) and (max-width: @largestSmallMonitor) { @media only screen and (min-width: @computerEditorBreakpoint) and (max-width: @largestSmallMonitorEditorBreakpoint) {
.organization { .organization {
top: auto; top: auto;
} }
@ -140,7 +140,7 @@
} }
/* Large Monitor */ /* Large Monitor */
@media only screen and (min-width: @largeMonitorBreakpoint) { @media only screen and (min-width: @largeMonitorEditorBreakpoint) {
.blocklyTreeRow { .blocklyTreeRow {
width: 230px; width: 230px;
} }