Важная информация

User Tag List

Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 20

Тема: Интернет дали!

  1. #1
    Member
    Регистрация
    08.12.2023
    Адрес
    г. Жуковский
    Сообщений
    196
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Cool Интернет дали!

    Приветики!

    Специально для криворуких типа меня, я попробовал сделать загрузчик программ в РК через Интернет.

    Это когда очень хочется дописать игру, но девайс для загрузки с SD-карты собрать не получается, программаторы не подходят, да и ещё последний в доме мультиметр сдох... Магнитофонный вход конечно выручает, но меееедленно...

    Мой вариант максимально простой. На основе ESP32C3. Состоит он из куска макетной платы, разъёма, ESP32C3 и 10-ти резисторов, но можно и без них, если очень хочется. Да и разъём можно заменить пучком проводов

    Устройство работает через параллельный порт по команде "R". Слушаем младший бит адреса (PB0), и старший (PC7) бит адреса. Если старший низкий, значит началась передача данных. Если младший изменился, значит в порт ESP32C3 (выводы 0-7) надо выдать очередной байт загруженной программы.

    Чтобы не было проблем с хитрыми компиляторами, всё написано в Arduino IDE. А так же есть один PHP файл, если вы хотите разместить загрузчик у себя на сервере, а если не хотите, то можно использовать для тестов временный. После загрузки файла на сайте, вы увидите, с какими параметрами использовать команду "R". Затем включаете РК, девайс присасывается к WiFi. Если светодиод на ESP32C3 перестал мигать, значит можно вводить команду "R". Бац, программа загружена!

    Вариантов развития такого картриджа много. Можно его и без интернета использовать, как RAM диск. На данный момент к нему пишется программная оболочка с красивостями и использованием файловой системы МК. Но! В одно лицо очень тяжело отлавливать баги. Поэтому предлагаю желающим повторить схему. Она простая:

    0 через резистор 1к PA0
    1 через резистор 1к PA1
    2 через резистор 1к PA2
    3 через резистор 1к PA3
    4 через резистор 1к PA4
    5 через резистор 1к PA5
    6 через резистор 1к PA6
    7 через резистор 1к PA7

    10 через резистор 1к PB0
    20 через резистор 1к PC6
    21 через резистор 1к PC7

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

    Резисторы - это мой колхозный вариант защиты, чтобы ничего не выгорело, если подвиснет РК или ESP32C3. Они могут оба сработать на вывод данных, тогда будет нехорошо. Но я несколько дней работал без резисторов и диода, и ничего не сгорело.

    В настройках ESP32C3 надо выставить 160 мГц. Работает и на 80 мГц, но проскакивают ошибки.

    Если кто-то озаботится отрисовкой платы, будет вообще хорошо т.к. меня такой способ загрузки вполне устраивает. Купил бы несколько плат. Пожелания: ESP32C3 должна быть повёрнута мордой к юзеру, USB шнур для прошивки втыкать с правой стороны. Выход с питанием на i2c для подключения экрана или джойстиков. Очень хочется wii nunchuk задействовать.

    Код и фотки: ESP32_86RK_Simple.zip

    Нажмите на изображение для увеличения. 

Название:	kMcaGNgF4Fc.jpg 
Просмотров:	197 
Размер:	76.1 Кб 
ID:	80641

    Нажмите на изображение для увеличения. 

Название:	B4uqlYtewMU.jpg 
Просмотров:	153 
Размер:	77.1 Кб 
ID:	80642
    Последний раз редактировалось Hammer; 14.04.2024 в 01:02. Причина: Изменения в коде программ

  2. Эти 10 пользователя(ей) поблагодарили Hammer за это полезное сообщение:

    Alikberov (05.06.2024), Beaver (12.04.2024), Black Cat / Era CG (12.04.2024), CodeMaster (12.04.2024), Kakos_nonos (13.04.2024), L Juriy (13.11.2024), Pluto (12.04.2024), Pyk (11.04.2024), Shaos (12.04.2024), svofski (12.04.2024)

  3. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  4. #2
    Member
    Регистрация
    08.12.2023
    Адрес
    г. Жуковский
    Сообщений
    196
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Апдейт по проекту!

    Теперь девайс после включения мигает светодиодом, пока не подключится к вайфаю, потом запускает локальный вебсервер по адресу: http://radio-86rk.local/

    Там вы увидите форму для загрузки файлов. После загрузки своего файла вы увидите с какими параметрами вызывать директиву R.

    Если программа стартует с нулевого адреса, можно использовать команду R,7FFF - программа загрузится с автозапуском.

    Если сразу после включения вызвать директиву R,7FFF - загрузится дисковая операционная система "МИР", сокращённое рабочее название "PEACE-DOS". В данном случае операционка ничего не делает. Уже написано несколько версий этой системы, есть поддержка I2C ногодрыгом и другие фишки, но релизить пока не готов. В этой версии предполагается, что операционка будет давать команды WiFi девайсу и забирать запрошенную информацию.

    Пока можно смело вместо PEACE-DOS положить, например, свою любимую игру, в исходнике это легко сделать.

    Буду рад отзывам. Лично я SD-приводом практически перестал пользоваться за ненадобностью.

    ESP32_86RK_WS.zip

    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	_DSC8153.jpg 
Просмотров:	510 
Размер:	17.2 Кб 
ID:	81554  

  5. Эти 3 пользователя(ей) поблагодарили Hammer за это полезное сообщение:

    Aleks1985 (14.11.2024), Pyk (13.11.2024), SoftLight (18.11.2024)

  6. #3
    Activist Аватар для cy6
    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    423
    Спасибо Благодарностей отдано 
    290
    Спасибо Благодарностей получено 
    61
    Поблагодарили
    35 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hammer Посмотреть сообщение
    использовать команду R,7FFF
    Занимательный диапазон адресов.
    Как раз в системную область, видео-ОЗУ и стек.
    wtf

  7. #4
    Member
    Регистрация
    08.12.2023
    Адрес
    г. Жуковский
    Сообщений
    196
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

    Игры в которые я играю, и которые я сам пишу, к этому относятся вполне лояльно.

    В любом случае, после загрузки файла вы увидите правильный вариант директивы R - запускайте удобным вам способом.



    Забыл написать, есть один известный глюк. Существует версия Монитора, в котором из кода директивы R вырезано обслуживание ROM диска. С этой версией Монитора девайс работать не будет.

    Всем рекомендую брать Монитор из дистрибутива EMU-80.
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	wifiex.jpg 
Просмотров:	594 
Размер:	21.3 Кб 
ID:	81558  

  8. #5
    Activist Аватар для cy6
    Регистрация
    27.04.2015
    Адрес
    г. Пенза
    Сообщений
    423
    Спасибо Благодарностей отдано 
    290
    Спасибо Благодарностей получено 
    61
    Поблагодарили
    35 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hammer Посмотреть сообщение
    в результате затирания стека при выходе из подпрограммы происходит переход в начало памяти
    Происходит переход по адресу, считанного из указателя стека. ноль там будет или нет.

    Даже если бы было так, переменные Монитора примут случайные значения, синхра поедет (если попадут байты > 80h).
    Стандарт конечного адреса, это 75FFh, в конфигурации без РК ДОС.
    wtf

  9. #6
    Member
    Регистрация
    26.11.2021
    Адрес
    г. Санкт Петербург
    Сообщений
    151
    Спасибо Благодарностей отдано 
    26
    Спасибо Благодарностей получено 
    121
    Поблагодарили
    61 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hammer Посмотреть сообщение
    Забыл написать, есть один известный глюк. Существует версия Монитора, в котором из кода директивы R вырезано обслуживание ROM диска. С этой версией Монитора девайс работать не будет.
    Всем рекомендую брать Монитор из дистрибутива EMU-80.
    Ага, внезапно выяснилось что обрезанный Барсиком монитор, не работает с ром диском. Поэтому все существующие версии пальмиры работать с этим не будут.
    Радио86 рк (Пальмира), Электроника кр04, Поиск 1

  10. #7
    Member
    Регистрация
    08.12.2023
    Адрес
    г. Жуковский
    Сообщений
    196
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от cy6 Посмотреть сообщение
    Происходит переход по адресу, считанного из указателя стека. ноль там будет или нет.
    Абсолютно верно!

    Цитата Сообщение от cy6 Посмотреть сообщение
    Даже если бы было так, переменные Монитора примут случайные значения, синхра поедет (если попадут байты > 80h).
    Они примут случайные значения только если вы сами в исходнике сделаете генерацию случайных значений. А можете туда поместить дамп нужных вам переменных Монитора.

    Я туда пробовал картинку вставлять, но она очень быстро исчезает. Была бы видеопамять в начальных адресах, было бы очень красиво!

    А можете использовать директиву R с другими аргументами, не затирая ничего из того, что вам не хочется затирать.

    Очень всё гибко и удобно по принципу работы ROM диска!

  11. #8
    Member Аватар для Alikberov
    Регистрация
    11.04.2023
    Адрес
    г. Ташкент, Узбекистан
    Сообщений
    139
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    23 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hammer Посмотреть сообщение
    Если программа стартует с нулевого адреса, можно использовать команду R,7FFF - программа загрузится с автозапуском.
    Значит «R1,0» или «R1,» так и не отладилось?
    Электроника КР-03; ZX-Spectrum "Ленинград-48"; Atari-130XE; Поиск-1...

  12. #9
    Member
    Регистрация
    08.12.2023
    Адрес
    г. Жуковский
    Сообщений
    196
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    81
    Поблагодарили
    26 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alikberov Посмотреть сообщение
    Значит «R1,0» или «R1,» так и не отладилось?
    Я пока до этого просто не дошёл.

  13. #10
    Junior
    Регистрация
    14.10.2022
    Адрес
    г. Мурманск
    Сообщений
    26
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Так че там? на пальмире будет работать?

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Интернет на спектруме ?
    от AAA в разделе Разный софт
    Ответов: 27
    Последнее: 09.11.2015, 01:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •