User Tag List

Показано с 1 по 8 из 8

Тема: ОС для ZS GMX

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию ОС для ZS GMX

    Делаю многозадачную ОС для Scorpion GMX. Рабочее название ZOS или OSZ.
    https://github.com/izzx-git/OSZ
    На облаке в папке OSZ:
    https://drive.google.com/drive/folde...2I?usp=sharing

    Первый ролик:

    Скрытый текст

    [свернуть]


    Уже под ней работают кролик и радио.
    На гитхабе сейчас лежит версия, которая запускает два процесса - системный и радио. Нужна карта zxwifi.
    Можно запустить в эмуле.

    Из описания:
    Поддерживается SMUC и ZC, FAT32 (то, что умеет монитор).
    Прошивка нужна свежая от LW/PLM, версии примерно 40 и выше.
    Одновременно может быть запущено до 8 процессов,
    открыто до 8 файлов.
    Используется ОЗУ 2 Мб.

    Запуск:
    Скопировать папку "OSZ" на диск FAT32 и запустить файл hobeta "os.$c"
    через навигатор или автозапуск.
    Или запустить образ дискеты OS.TRD.

    Управление:
    Ss + Enter - Переключение задач
    Cs + 1 - Rus/Lat
    Cs + 2 - CapsLock

    В планах:
    Поддержка TR-DOS дисков (сейчас только FAT).
    Монтирование TR-DOS образов и запуск программ.
    Возврат в ОС по кнопке сброс.
    Портирование приложений (уже работает Moon Rabbit).
    Монопольный режим
    Работа процессов реального времени (каждое прерывание). Например, плеер AY (уже есть).
    Многозадачная работа с сетью через ESP.
    Удобная работа с большими объёмами информации в памяти (>2 страниц).
    Удалённый терминал
    Сетевые папки
    Поддержка мыши


    ------------------------------------
    Информация для программиста.
    Системные вызовы описаны в "os_defs.asm".
    Система использует вызовы теневого монитора для работы с дисками.
    Система находится в странице 0, вместо ПЗУ.
    Страницы 1-4, 6 - зарезервированы для монопольного режима одного приложения.
    Обычные процессы используют окна памяти #8000 и #c000.
    Каждому процессу даётся 4 страницы и можно запрашивать дополнительные.
    Две страницы под буфер экрана. Экран по умолчанию расширенный 640*200.
    Используется аппаратный скрол экрана.
    В консоль процессы могут выводить текст в любое время.
    Получать коды нажатых клавиш может только процесс в фокусе.
    Планируется монопольный режим для одного приложения, которому будет доступна
    память от #4000 и страницы 0-7.
    Доступ к открытым файлам по их ID имеет только тот процесс, который их открыл.
    Но нет защиты от того, что этот же файл откроет другой процесс.
    Процесс имеет доступ только к своим страницам памяти,
    а также к видео страницам 5, 7, 39, 3a.

    Процессам рекомендуется:
    использовать системные вызовы ОС

    Процессам не рекомендуется:
    Менять прерывания
    Менять адрес стека
    Переключать страницы памяти напрямую
    Обращаться к дискам напрямую или через монитор

    В теневой монитор по кнопке выходить можно, но после файловых операций в нём
    и возврата в систему может что-то пойти не так.


    Использован код авторства:
    LW/PLM (опрос клавиатуры и др.)
    S.V.Bulba (pt плеер)
    Kulich (radio)
    Nihirash (Moon Rabbit)
    и прочие библиотеки/куски кода, какие удалось найти ).
    Источник вдохновения NedoOS (Alone Coder).
    Последний раз редактировалось izzx; 16.11.2024 в 20:15.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

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

    2vachek(07.02.2025), Beaver(25.07.2025), Black Cat / Era CG(18.11.2024), CodeMaster(12.12.2024), Cooper(27.05.2025), Djoni(17.11.2024), Evgeny Muchkin(28.11.2024), Frago(17.11.2024), Grand(20.11.2024), kolobokru(24.07.2025), Kulich(12.12.2024), LW(16.11.2024), marinovsoft(16.11.2024), Outcast(14.12.2024), Romych(09.02.2025), Sergey(24.04.2025), SERGEY256(17.11.2024), Xela(16.11.2024)

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

  3. #2

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пару недель думал как сделать в режиме многозадачности работу с модемчиком ESP. Решил, что это безнадёжное дело.
    Так то сокеты, или соединения, до 5 штук оно умеет, и даже работает вроде. Но валит в одну кучу свои ответы типа OK, Ready, не указывая про какое соединение идёт речь. Не понятно как их отсортировать.
    Отправляешь пакет, ждёшь сообщение SEND ОК. А вместо этого приходит очередной пакет для другого сокета..
    К тому же буфер для отправки и приёма всего один. Памяти мало. Сложна.

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

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

  4. #3

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для проверки как будет работать приложение в графическом режиме, написал тетрис.
    Пришлось дорабатывать очередь задач, чтобы не мельтешили спрайты. Сделал так, чтобы приложение в фокусе выполнялось первым после прерывания.
    Но при этом после него все остальные процессы тоже выполнялись.
    Тетрис получился не особо динамичным, но играть можно.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

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

    Cooper(27.05.2025), Djoni(08.02.2025), Evgeny Muchkin(12.02.2025), Grand(08.02.2025), LW(10.02.2025), Sergey(24.04.2025)

  5. #4

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ещё добавил пару приложений:
    Update - обновляет ОС с сервера через интернет.
    ArtView - показывает картинки с сайта zxart.
    Можно одновременно слушать AY музыку с инета и смотреть картинки. Когда ещё такое было через ESP?
    На самом деле приложения качают файлики в порядке живой очереди, но это детали.
    Теперь три самых главных приложения есть (ещё radio).
    Спасибо Kulich и LW. А так же тестерам-добровольцам.
    https://github.com/izzx-git/OSZ/tree/main/Release

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

    Этот пользователь поблагодарил izzx за это полезное сообщение:

    LW(27.05.2025)

  6. #5

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    С помощью добрых людей частично портировал плеер GP. Вернее его версию из одной игры.
    Только часть для проигрывания OPL до версии 3. То есть, поддержана карта BomgeMoon.
    На сколько правильно теперь играет точно не скажу, надо проверять на реале. Я пока запускал только в эмуле.



    Играет пока только файлы VGM. Но можно эти файлы сделать из VGZ, распаковав обычным архиватором.
    Вот тут их больше тыщи штук одним файлом можно скачать:
    https://opl.wafflenet.com

    ЗЫ. На мунсаунде наверное тоже должно заиграть.

    upd. Проверили на двух реальных компах. Пока что работает, после корректировки плеера. И порт на карте надо сделать двойной (#24-27, #C4-C7). Спасибо Alex, тестировал это всё несколько дней.
    https://zx-pk.ru/threads/36279-bomge...=1#post1216840

    upd2. Всё-таки добавил поддержку VGZ. Хорошо, что памяти с запасом, всего лишь одна-две композиции не влезает из тех, что мне попадались.
    486 HEART ON FIRE.vgz - в распакованном виде почти 3 мега.
    Последний раз редактировалось izzx; 07.08.2025 в 12:07.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

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

    Djoni(29.07.2025), Grand(27.07.2025), kolobokru(24.07.2025), SERGEY256(26.07.2025)

  7. #6

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот ещё видео как играет бомжемун:



    Кстати пока что возможно перекрытие буфера приёма ESP и адреса распаковщика файла VGZ. Распаковщик работает в монопольном режиме и занимает адреса начиная с #4000. Если в это время какой-то процесс качает что-то из инета, возможен конфликт. Потом подумаю как решить вопрос.
    Последний раз редактировалось izzx; 11.10.2025 в 19:13.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

    Этот пользователь поблагодарил izzx за это полезное сообщение:

    Grand(11.10.2025)

  8. #7

    Регистрация
    14.06.2005
    Адрес
    г. Калуга
    Сообщений
    10,141
    Спасибо Благодарностей отдано 
    216
    Спасибо Благодарностей получено 
    769
    Поблагодарили
    417 сообщений
    Mentioned
    23 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от izzx Посмотреть сообщение
    Вот ещё видео как играет бомжемун:
    youtube как бы заблокирован. Так что мало кто может посмотреть твои ролики.
    Сайт поддержки моих изделий - http://micklab.ru/
    Группа ВКонтакте - https://vk.com/micklab

  9. #8

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    902
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    338
    Поблагодарили
    181 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Mick Посмотреть сообщение
    youtube как бы заблокирован
    об этом я не подумал.
    А вчера ко мне подошёл знакомый с телефоном и говорит: а что я не могу ролик на телефоне посмотреть? Он оказался вообще не в курсе, что юпуп заблокирован.

    Вот сюда ещё ролик положил:
    https://drive.google.com/drive/folde..._Aw0ZtqripoXVy
    Последний раз редактировалось izzx; 11.10.2025 в 20:30.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

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

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

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

Похожие темы

  1. Puzzle Bobble для ZS GMX
    от izzx в разделе Игры
    Ответов: 4
    Последнее: 22.08.2024, 21:03
  2. Видео для ZS GMX
    от izzx в разделе Разный софт
    Ответов: 132
    Последнее: 05.01.2024, 20:55
  3. Edge Grinder для ZS GMX
    от izzx в разделе Игры
    Ответов: 86
    Последнее: 09.09.2021, 20:36
  4. GMX
    от drbars в разделе Изображение
    Ответов: 3
    Последнее: 29.07.2007, 01:49
  5. GMX
    от spensor в разделе Scorpion
    Ответов: 43
    Последнее: 25.03.2007, 11:49

Ваши права

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