diff --git a/boards/default_src/micropython/blocks/display_onboard.js b/boards/default_src/micropython/blocks/display_onboard.js
index 5215a56e..48702dd4 100644
--- a/boards/default_src/micropython/blocks/display_onboard.js
+++ b/boards/default_src/micropython/blocks/display_onboard.js
@@ -91,6 +91,23 @@ export const display_scroll_string_delay = {
}
};
+export const display_scroll_way = {
+ init: function () {
+ this.setColour(DISPLAY_ONBOARD_HUE);
+ this.appendDummyInput()
+ .appendField(Blockly.Msg.MIXLY_SETTING + Blockly.Msg.MIXLY_DISPLAY_SCROLL_WAY)
+ .appendField(new Blockly.FieldDropdown([
+ [Blockly.Msg.MIXLY_GAME_UP,"0"],
+ [Blockly.Msg.MIXLY_GAME_DOWN,"1"],
+ [Blockly.Msg.MIXLY_GAME_RIGHT,"2"],
+ [Blockly.Msg.MIXLY_GAME_LEFT,"3"]
+ ]),"way");;
+ this.setPreviousStatement(true, null);
+ this.setNextStatement(true, null);
+ this.setInputsInline(true);
+ }
+};
+
export const onboard_tft_scroll_string_delay = {
init: function () {
this.setColour(DISPLAY_ONBOARD_HUE);
diff --git a/boards/default_src/micropython/generators/display_onboard.js b/boards/default_src/micropython/generators/display_onboard.js
index 09795ec8..080a0ba7 100644
--- a/boards/default_src/micropython/generators/display_onboard.js
+++ b/boards/default_src/micropython/generators/display_onboard.js
@@ -110,6 +110,14 @@ export const display_scroll_string_delay = function (_, generator) {
return code;
}
+export const display_scroll_way = function (_, generator) {
+ var version = Boards.getSelectedBoardKey().split(':')[2];
+ generator.definitions_['import_' + version + '_onboard_matrix'] = "from " + version + " import onboard_matrix";
+ var way = this.getFieldValue('way');
+ var code = "onboard_matrix.scroll_way(" + way + ")\n";
+ return code;
+}
+
export const onboard_tft_scroll_string_delay = function (_, generator) {
var version = Boards.getSelectedBoardKey().split(':')[2];
generator.definitions_['import_' + version + '_onboard_tft'] = "from " + version + " import onboard_tft";
diff --git a/boards/default_src/micropython_esp32c2/template.xml b/boards/default_src/micropython_esp32c2/template.xml
index c7223af8..236cb7f9 100644
--- a/boards/default_src/micropython_esp32c2/template.xml
+++ b/boards/default_src/micropython_esp32c2/template.xml
@@ -1827,6 +1827,7 @@
+
diff --git a/boards/default_src/micropython_esp32s2/template.xml b/boards/default_src/micropython_esp32s2/template.xml
index fbecb5c3..531e9c4a 100644
--- a/boards/default_src/micropython_esp32s2/template.xml
+++ b/boards/default_src/micropython_esp32s2/template.xml
@@ -1702,6 +1702,7 @@
+
diff --git a/common/msg/blockly/en.js b/common/msg/blockly/en.js
index 881c2493..38015eba 100644
--- a/common/msg/blockly/en.js
+++ b/common/msg/blockly/en.js
@@ -3990,5 +3990,5 @@ En.MIXLY_TEXT_BYTES = 'bytes';
En.MIXLY_TEXT_BYTE_ARRAY = 'bytearray';
En.MIXLY_MICROPYTHON_SOCKET_READLINE = 'Readline';
En.MIXLY_MICROPYTHON_SOCKET_READLINE_TOOLTIP = 'Read a line of data, ending with a newline character.';
-
+En.MIXLY_DISPLAY_SCROLL_WAY = 'direction of scrolling';
})();
diff --git a/common/msg/blockly/zh-hans.js b/common/msg/blockly/zh-hans.js
index b033dc8e..52e01ee1 100644
--- a/common/msg/blockly/zh-hans.js
+++ b/common/msg/blockly/zh-hans.js
@@ -4149,5 +4149,5 @@ ZhHans.MIXLY_TEXT_BYTES = '字节串';
ZhHans.MIXLY_TEXT_BYTE_ARRAY = '字节数组';
ZhHans.MIXLY_MICROPYTHON_SOCKET_READLINE = '接收套接字的一行数据';
ZhHans.MIXLY_MICROPYTHON_SOCKET_READLINE_TOOLTIP = '读取一行数据,以换行符结尾。';
-
+ZhHans.MIXLY_DISPLAY_SCROLL_WAY = '滚动显示方向';
})();
\ No newline at end of file
diff --git a/common/msg/blockly/zh-hant.js b/common/msg/blockly/zh-hant.js
index 4d46ad15..8f62333c 100644
--- a/common/msg/blockly/zh-hant.js
+++ b/common/msg/blockly/zh-hant.js
@@ -4144,5 +4144,5 @@ ZhHant.MIXLY_TEXT_BYTES = '位元組字串';
ZhHant.MIXLY_TEXT_BYTE_ARRAY = '位元組數組';
ZhHant.MIXLY_MICROPYTHON_SOCKET_READLINE = '接收套接字的一行資料';
ZhHant.MIXLY_MICROPYTHON_SOCKET_READLINE_TOOLTIP = '讀取一行數據,以換行符號結尾。 ';
-
+ZhHant.MIXLY_DISPLAY_SCROLL_WAY = '滾動顯示方向';
})();