nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 11:30



Reply to topic  [ 116 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next
Эмуляторы I8080/КР580ВМ80A и Радио-86РК на JavaScript 
Author Message
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
ОБНОВЛЕНИЕ / 09.03.2021


Наконец написал какое-то подобие документации. Документ будет обновляться.

Раздел про консоль пока пустой, но именно там есть чего описать.


08 Mar 2021 13:54
Profile
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
Добавил в документацию пример цикла разработки, когда код компилируется локально, но запускается в эмуляторе на rk86.ru.

Пример вполне работоспособный.


09 Mar 2021 06:30
Profile
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
ОБНОВЛЕНИЕ / 10.03.2021

Добавлена поддержка светового пера.

Добавил в эмулятор поддержку пера - демонстрационная программа.

Когда эмулятор запустится, сказать "G0", потом "N" в бейсике, и потом "RUN 1000".


09 Mar 2021 12:14
Profile
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
Кстати, еще раз о звуке.

Случайно нашел показательный пример, оказывается играет очень даже ничего.

Только надо сразу после запуска страницы эмулятора включить галочку звука в левом нижем углу.


09 Mar 2021 12:27
Profile
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
ОБНОВЛЕНИЕ / 10.03.2021

Добавленая поддержка загрузки локальных файлов в эмулятор.


10 Mar 2021 09:16
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
Мoжно добавить поддержку конфигурации/сценария?
Типа чтобы через «file=https://gist.githubusercontent.com/………/my_config.cfg» загружался сначала файл конфигурации, откуда можно указать ссылки ещё догружаемых файлов.

Чтобы не грузить все 64 Кб для демонстрации светового пера, а загрузить сначала Монитор, затем Бейсик, а затем отправить в эмулятор последовательность клавиш из третьего файла - симулировать набор листинга.
(Временно применяю трюк: В Бейсике по адресу 0354 заменяю F803 на свою подпрограмму и выдаю через неё текст из «db '...'», после чего возвращаю на место вектор F803. Костыльно, но облегчает разработку…)

Спасибо!


10 Mar 2021 10:54
Profile WWW
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
ОБНОВЛЕНИЕ от 10.03.2021

Полностью переписан полноэкранный режим, через Fullscreen API браузера.

Проверялось на Chrome 88+, Firefox 85+, Safari 14+, Opera 74+.

Выглядит так:


15 Mar 2021 10:35
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
Скорость скроллинга приличная.
Можно уже и полный ПДП-цикл реализовывать… :roll:


16 Mar 2021 11:40
Profile WWW
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
ОБНОВЛЕНИЕ от 20.03.2021

Поддержка снапшотов.

Примеры снапшотов:


19 Mar 2021 17:26
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
begoon wrote:
ОБНОВЛЕНИЕ от 20.03.2021

Поддержка снапшотов.

Примеры снапшотов:
У меня в Хроме не работало (дамп), так как проглатывалась первая буква.
Заработало вот так.
Но «УС+C» не срабатывал стабильно, если последний в очереди событий…


19 Mar 2021 19:36
Profile WWW
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
Paguo-86PK wrote:
У меня в Хроме не работало (дамп), так как проглатывалась первая буква.
Заработало вот так.
Но «УС+C» не срабатывал стабильно, если последний в очереди событий…

Увы, техника подсовывания кодов клавиш в эмулятор очень зависит от задержек, ибо эмулятор выполняет команды пачками, тактирусь по 10мс интервалам, поэтому малые задержки могут приводить к тому, что выполняемая программа не успевает увидеть нажатие или отпускание клавиши.

По хорошему, лучше вообще не использовать подсовывания кнопок или использовать минимально. Проще привести все в полностью запущенное состояние и сделать снапшоп. И не надо ничего уже подсовывать.

У меня постоянно сообщения от этого форума отправляются гуглом в спам. Прямо очень грустно их оттуда вылавливать ;-)


21 Mar 2021 02:47
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
begoon wrote:
Увы, техника подсовывания кодов клавиш в эмулятор очень зависит от задержек, ибо эмулятор выполняет команды пачками, тактирусь по 10мс интервалам, поэтому малые задержки могут приводить к тому, что выполняемая программа не успевает увидеть нажатие или отпускание клавиши.

По хорошему, лучше вообще не использовать подсовывания кнопок или использовать минимально. Проще привести все в полностью запущенное состояние и сделать снапшоп. И не надо ничего уже подсовывать.
Нa LCC-Win32 когда эмулятор РК писал в 2000-х, тоже на клавиатуру код писал с восьмиричными таблицами, где клавиша «Q» - код 061₈, где 0 - «УС/СС/РУС», 6 - «PA6», 1 - «PB1», чтобы на PC-раскладке не вспоминать тонкости клавиатуры РК. И из буфера обмена в очередь подсовывать код очередной клавиши, когда код драйвера, соответственно, на ППА активирует соответствующие биты.
По-моему - так проще…


21 Mar 2021 10:21
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22411
Location: Silicon Valley
Reply with quote
Запустил я тут chars.bin - он есть в составе обоих rk86.ru и rk86.net - и он выводит не совсем правильный шрифт как мне кажется:

Attachment:
Screenshot from 2023-01-29 21-13-45.png
Screenshot from 2023-01-29 21-13-45.png [ 2.76 KiB | Viewed 2918 times ]


Например вместо яблока тут написано СП (по-моему это где-то обсуждалось - то ли тут, то ли на "соседнем форуме") и нету одного из восьми символов пседографики с кодом #07:
Code:
X X
O X


И вообще коды 1x как-то сдвинуты влево - вертикальной палочки нет вовсе - вот для сравнения "классический" шрифт из журнала:

Attachment:
radio86rk-magazine.jpg
radio86rk-magazine.jpg [ 162.34 KiB | Viewed 2918 times ]

_________________
:dj: https://mastodon.social/@Shaos


29 Jan 2023 22:52
Profile WWW
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
Shaos wrote:
Запустил я тут chars.bin - он есть в составе обоих rk86.ru и rk86.net - и он выводит не совсем правильный шрифт

Да, выглядит неверно, но судя по файлу шрифта, сам шрифт (https://raw.githubusercontent.com/begoon/rk86-js/master/src/rk86_font.bmp) правильный. Там все символы на месте, включая ту вертикальную палку.

Видимо, проблема в самой программе https://github.com/begoon/rk86-maximite/blob/master/programs/chars/chars.asm, а именно в том, что она выводит символы через Монитор.

Уверен, что если отображать символы напрямую через экранную область, то все будет отображать верно.

Надо будет исправить программу.


30 Jan 2023 03:03
Profile
Senior

Joined: 22 Aug 2012 17:06
Posts: 144
Location: 188.220.42.216
Reply with quote
А, конечно. Вертикальная палка, или 0x1B (27) - это начало ESC-последовательности. Поэтому этот символ и съедается. Надо его добавить в программу как неотображаемый. Или полностью переписать программу, чтобы писала напрямую в экранную область вместе вызова Монитора. Тогда можно не проверять на неотображаемость.


30 Jan 2023 05:19
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 116 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7, 8  Next

Who is online

Users browsing this forum: vital72 and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.