JsOS-Team / JsOS-emu

JsOS application emulator
1 stars 1 forks source link

Хочу помочь #1

Open PROPHESSOR opened 6 years ago

PROPHESSOR commented 6 years ago

Можешь дать доступ, плс?

purplesyringa commented 6 years ago

Ой, конечно. Немного завис, чинил brainfuck.

PROPHESSOR commented 6 years ago

??)

purplesyringa commented 6 years ago

Отправил приглашение.

purplesyringa commented 6 years ago

Есть небольшая проблема с реализацией. Пока не понятно, как читать программу. Same origin все ломает - не работает на локальных файлах.

purplesyringa commented 6 years ago

Можно запулить локальный NodeJS сервер (http+websocket), который будет тупо проксировать результат в браузер, а выполнять на сервере.

PROPHESSOR commented 6 years ago

В каком смысле "читать программу"?

PROPHESSOR commented 6 years ago

Аа

PROPHESSOR commented 6 years ago

Ну смотри... Пока давай без сервера... Механизм выполнения можно посмотреть в https://github.com/PROPHESSOR/JsOS/tree/master/js/service/appman

PROPHESSOR commented 6 years ago

Чисто подключить некий program.js файл Когда будет готова база - можно будет делать node сервер с watch функцией и т.п.

purplesyringa commented 6 years ago

Не понятно все равно. Нужно переопределять require, а без чтения файла не получится. Сервер запилить можно быстро.

PROPHESSOR commented 6 years ago

А, ну это да... require... Проблема есть... На вскидку 2 идеи:

  1. Делать отладчик на node
  2. Делать отладчик на node и отправлять в браузер по сокетам
purplesyringa commented 6 years ago

Кстати, что такое $$?

PROPHESSOR commented 6 years ago

$$ - глобальная переменная (объект), куда монтируются все модули, что бы можно было получить к ним доступ из любого места

PROPHESSOR commented 6 years ago

Предлагаю пока сделать верстку... Как раз будет время, что бы подумать над реализацией

purplesyringa commented 6 years ago

Сделал сервер HTTP, остался WebSocket.

purplesyringa commented 6 years ago

@PROPHESSOR Где-то есть стандартный цвета консоли в RGB? Чтобы было похоже на JsOS.

PROPHESSOR commented 6 years ago

@imachug да, в graphics-mode есть палитра

PROPHESSOR commented 6 years ago

@imachug Upgrade Required

purplesyringa commented 6 years ago

Странно. Старая версия?

PROPHESSOR commented 6 years ago

@imachug старая версия чего? Только что склонировал, Chrome последний, node последняя LTS

purplesyringa commented 6 years ago

Где Upgrade Required?

purplesyringa commented 6 years ago
$ node .
Listening on port 2968

Открываю в браузере gui/index.html. Вписываю 2968.

Сейчас работаю над тем, чтобы обойтись без того, чтобы самому вписывать порт.

purplesyringa commented 6 years ago

Сделал запуск без gui/index.html. Теперь просто node . открывает браузер.

PROPHESSOR commented 6 years ago

@imachug в браузере

PROPHESSOR commented 6 years ago

Эх... Мы одновременно сделали открытие браузера и задание порта...

purplesyringa commented 6 years ago

В консоли? Можно скриншот? (и стектрейс)

PROPHESSOR commented 6 years ago

@imachug со скриншотом на гитхабе проблемы... Сейчас исправлю конфликты (если что, git revert)

PROPHESSOR commented 6 years ago

В общем, получается полная ерунда... Вместо инструмента для простой отладки, получился инструмент для демонстрации консоли через вебсокеты...

PROPHESSOR commented 6 years ago

Можно оформить это изобретение в виде JsOS пакета для демонстрации экрана и начинать сначала...

purplesyringa commented 6 years ago

В виде пакета? JsOS же websocket не поймет.

PROPHESSOR commented 6 years ago

@imachug На сколько я вижу, сокеты используют стандартные платформо-независимые библиотеки... Так что, по-идее, на JsOS должно запуститься

purplesyringa commented 6 years ago

Это конечно хорошо, но во внешний мир как пробросить?

PROPHESSOR commented 6 years ago

Это, as far as I know, было сделано ещё в runtime.js

purplesyringa commented 6 years ago

Видимо, придется сделать фиксированный порт.

purplesyringa commented 6 years ago

Можно будет сделать нормальный debug, есть пробросить ошибки в браузер из Node.JS.

PROPHESSOR commented 6 years ago

Ну это да... Но в идеале нужно достать исходники node debug protocol... Что бы можно было в chrome (about:inspect) отлаживать, как ноду

purplesyringa commented 6 years ago

2018-04-16_07-42-44

Вроде нормально отлаживается.

PROPHESSOR commented 6 years ago

Точно! Не подумал