diff --git a/index.html b/index.html
index 018da3f..f6bdf54 100644
--- a/index.html
+++ b/index.html
@@ -40,7 +40,7 @@
-
+
diff --git a/src/js/main.js b/src/js/main.js
index cb00c6d..5b44650 100644
--- a/src/js/main.js
+++ b/src/js/main.js
@@ -11,6 +11,8 @@ terminalElement.style.display = 'none';
serial.style.display = 'block';
let progressTicks = 0;
+window.started = false;
+
const emulator = new window.V86({
wasm_path: '/v86/v86.wasm',
screen_container: serial,
@@ -25,7 +27,6 @@ const emulator = new window.V86({
},
filesystem: {
basefs: '/contents.json',
- baseurl: '/flat',
},
autostart: true,
disable_keyboard: true,
@@ -40,16 +41,17 @@ if (import.meta.env.DEV) {
emulator.add_listener('serial0-output-byte', (byte) => {
const char = String.fromCharCode(byte);
- if (char === '$' || char === '#') {
- emulator.serial_adapter.term.write('\r\n');
-
- terminalElement.style.display = 'block';
- serial.style.display = 'none';
- state.textContent = '';
-
- loadAddons(emulator.serial_adapter.term);
- registerUploadFilesModal({ emulator });
- terminalElement.focus();
+ if (char === '$' || char === '#' || char === ':') {
+ if (!window.started) {
+ window.started = true;
+ terminalElement.style.display = 'block';
+ serial.style.display = 'none';
+ state.textContent = '';
+
+ loadAddons(emulator.serial_adapter.term);
+ registerUploadFilesModal({ emulator });
+ terminalElement.focus();
+ }
}
});
diff --git a/src/js/upload-files.js b/src/js/upload-files.js
index 07c517f..4f7d286 100644
--- a/src/js/upload-files.js
+++ b/src/js/upload-files.js
@@ -58,7 +58,7 @@ const registerUploadFilesModal = ({ emulator }) => {
if (fileInput && selectedFilenameSpan) {
fileInput.addEventListener('change', () => {
if (fileInput.files.length > 0) {
- selectFileButton.textContent = Array.from(fileInput.files).reduce(
+ selectedFilenameSpan.textContent = Array.from(fileInput.files).reduce(
(acc, file, i) => {
const separator = i === 0 ? '' : ', ';
return `${separator}${file.name}`;
@@ -66,7 +66,7 @@ const registerUploadFilesModal = ({ emulator }) => {
);
Array.from(fileInput.files).forEach((_file) => {
const reader = new FileReader();
- const path = `/${_file.name}`;
+ const path = `/daiplg/${_file.name}`;
reader.onload = (f) => {
const data = new Uint8Array(f.target.result);
return emulator.create_file(path, data);