User Tag List

Страница 4 из 5 ПерваяПервая 12345 ПоследняяПоследняя
Показано с 31 по 40 из 62

Тема: ZX MIDI player

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

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

    Регистрация
    28.08.2023
    Адрес
    г. Брест, Беларусь
    Сообщений
    142
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Евгений, так сказать, на правах одного из первых пользователей версии 3.0 (да, так получилось, что я случайно скачал её, может быть, даже до «официального» анонса) имею несколько вопросов.

    Во-первых, работает отлично «на» FUSE

    Во-вторых, а можно для старых любителей экзотики добавить, хотя бы как compile time option, поддержку +3 DOS? Готов прислать патч, просто пока не разобрался, как там дисковая абстракция устроена.

    В-третьих, расскажите, пожалуйста, а есть какие-то тонкости в режиме DivMMC? Там какой-то определённый FAT нужен или что-то ещё? Я загружаю main.tap, оно там что-то играет (нет, правда играет). Я выхожу в Settings, выбираю DivMMC ON, появляется "A:", нажимаю на него и... красный бордюр. Это, конечно, FUSE с DivMMC, FAT16, esxdos 0.8.9, но само по себе оно загружается и работает, я на нём всё тестирую.

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

  3. #2

    Регистрация
    18.05.2020
    Адрес
    г. Белгород
    Сообщений
    527
    Спасибо Благодарностей отдано 
    170
    Спасибо Благодарностей получено 
    637
    Поблагодарили
    201 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Chwe Посмотреть сообщение
    Во-вторых, а можно для старых любителей экзотики добавить, хотя бы как compile time option, поддержку +3 DOS?
    Я не знаком с этой системой, можете посоветовать хорошие доки для разработчика для ознакомления? Ну и в ближайшее время точно не обещаю

    Цитата Сообщение от Chwe Посмотреть сообщение
    Готов прислать патч, просто пока не разобрался, как там дисковая абстракция устроена.
    Присылайте конечно, буду рад :-)
    Там - это в плеере или в +3DOS? Если в плеере - то посмотрите файл disk.asm начиная со строки 336 (ссылка) - методы disk_entry_is_directory, disk_file_load, disk_directory_load, disk_directory_menu_generator. Эти функции прыгают на конкретную реализацию - TR-DOS или FAT (IDE и MMC), настройка этих функций происходит в disk_change начиная со строки 404 (ссылка). Все функции оперируют с номером файла (порядковый номер записи) в каталоге.

    Цитата Сообщение от Chwe Посмотреть сообщение
    В-третьих, расскажите, пожалуйста, а есть какие-то тонкости в режиме DivMMC? Там какой-то определённый FAT нужен или что-то ещё? Я загружаю main.tap, оно там что-то играет (нет, правда играет). Я выхожу в Settings, выбираю DivMMC ON, появляется "A:", нажимаю на него и... красный бордюр. Это, конечно, FUSE с DivMMC, FAT16, esxdos 0.8.9, но само по себе оно загружается и работает, я на нём всё тестирую.
    Поддерживается только FAT32. На поддержку FAT16 я не увидел смысла тратить время и силы. Да и не только я, в WildPlayer тоже FAT16 не поддерживается, как и (вроде бы) в Z-Player.

  4. #3

    Регистрация
    28.08.2023
    Адрес
    г. Брест, Беларусь
    Сообщений
    142
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Uzix Посмотреть сообщение
    Я не знаком с этой системой, можете посоветовать хорошие доки для разработчика для ознакомления? Ну и в ближайшее время точно не обещаю

    [skip]

    Поддерживается только FAT32. На поддержку FAT16 я не увидел смысла тратить время и силы. Да и не только я, в WildPlayer тоже FAT16 не поддерживается, как и (вроде бы) в Z-Player.
    zx midi player'а абстракции, неточно выразился. Ну, теперь отправная точка есть, попробую.

    Из док там я и сам пока использую только фирменное руководство (Part 26, Part 27), да Next'овое API и, соотвественно, Next'овые исходники. Вряд ли оно того стоит, Вам голову забивать, сильно оно экзотично для наших широт. Я сам пока попробую

    FAT32 и esxdos, подтверждаю, работает Оказывается, почему-то, esxdos хотело ещё и образ не менее 4Gb. После этого, вроде, заработало. Спасибо.

  5. #4

    Регистрация
    28.08.2023
    Адрес
    г. Брест, Беларусь
    Сообщений
    142
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Uzix Посмотреть сообщение
    Присылайте конечно, буду рад :-)
    Ну, честно говоря, у меня уже есть прототип. И, даже, вроде как, работает: https://dai.ly/x8zp204

    Но, так как я только учусь, там есть масса тонкостей, которые хотелось бы прояснить. Вот, как уточню все тонкости (или допилю сам, без ансамбля ) -- поделюсь кодом.

  6. #5

    Регистрация
    28.08.2023
    Адрес
    г. Брест, Беларусь
    Сообщений
    142
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    54
    Поблагодарили
    33 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    TL;DR: есть знатоки +3 DOS, которые хотят послушать MIDI?

    Значит, при переносе на +3 проблем там вылезло несколько, кратко можно их изложить как «+3 DOS это вам не TR-DOS, она подгребает под себя всю свободную память». То есть, без дополнительных прыжков, там места только на код, куда грузить данные, не говоря уже о собственно MIDI файлах -- решительно непонятно. Это нас не остановит, работающая версия, как я уже показывал, есть, дело в «proper» оформлении нужных решений.

    В странице 7 (на? мне как-то «банк» привычнее), куда у Вас загружаются шаблоны экранов, там просто нет для них места, потому что именно в странице 7 +3 DOS держит все свои переменные. Это никак обойти нельзя, насколько я понимаю, сколько там есть места, столько и есть. Ещё бы выяснить, сколько именно...

    Дальше, страницы 1, 3, 4 и 6 тоже (внезапно!) используются +3 DOS для кэша диска и RAM диска. Теоретически и то и другое отключаемо, но освободить (хотя бы частично) страницу 1 мне пока не удалось. 3, 4, 6 -- запросто, а чем затык с 1-й, непонятно.

    Да, я там задавал вопросы на SC (не знаю, может, я недооцениваю количество +3 знатоков тут?), но там пока откликнулись только писатели.

    В принципе, проблема может быть на данном этапе решена «в лоб», путём более эффективного сжатия экранов. Например, при использовании zx0, места в 7-й странице остаётся достаточно для +3 DOS. Но это очень усложняет сборку. Может, это и к лучшему, см. ниже.

    И, да, проблема детектирования +3 DOS. Хотя, на мой взгляд, это не проблема. +3 DOS не с чем не совместима, ничего не может быть включено с ней одновременно, поэтому для +3 нужна отдельная сборка. Бонус -- можно не компилировать FAT32 и все интерфейсы для SD.

    Ещё в +3e может быть до двух дисководов и до двух разделов жёсткого диска, причем, назначенных на произвольные устройства. Как эту информацию получить из системы, я, кажется, понял. А вот как в ZX MIDI Player отобразить произвольный набор устройств, я ещё даже и не смотрел.

    - - - Добавлено - - -

    Приехал я домой, подключил MT-32pi к Sizif'у и, что-то, не работает оно с максимальной скоростью процессора. В режиме +3, другие пока не пробовал. Определяет скорость правильно, а вот на выходе, похоже, мусор, что-то не совпадает. На 7MHz, вроде, живёт. Анализатор я куда-то засунул, пока посмотреть, что там выходит не могу. В теории на Sizif все частоты процессора поддерживаются?

  7. #6

    Регистрация
    18.05.2020
    Адрес
    г. Белгород
    Сообщений
    527
    Спасибо Благодарностей отдано 
    170
    Спасибо Благодарностей получено 
    637
    Поблагодарили
    201 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Chwe Посмотреть сообщение
    Приехал я домой, подключил MT-32pi к Sizif'у и, что-то, не работает оно с максимальной скоростью процессора. В режиме +3, другие пока не пробовал. Определяет скорость правильно, а вот на выходе, похоже, мусор, что-то не совпадает. На 7MHz, вроде, живёт. Анализатор я куда-то засунул, пока посмотреть, что там выходит не могу. В теории на Sizif все частоты процессора поддерживаются?
    То же, что и у Эвы - на 14 МГц у Сизифа есть вейтстейты - пропуски тактов грубо говоря. Выход миди сделан согласно заветам Клайва, т.е. ногодрыгом, а значит любые отклонения частоты процессора критичны.

    - - - Добавлено - - -

    Цитата Сообщение от Chwe Посмотреть сообщение
    Дальше, страницы 1, 3, 4 и 6 тоже (внезапно!) используются +3 DOS для кэша диска и RAM диска. Теоретически и то и другое отключаемо, но освободить (хотя бы частично) страницу 1 мне пока не удалось. 3, 4, 6 -- запросто, а чем затык с 1-й, непонятно.
    Так первая и не используется кажись в плеере нигде.

    - - - Добавлено - - -

    Цитата Сообщение от Chwe Посмотреть сообщение
    И, да, проблема детектирования +3 DOS. Хотя, на мой взгляд, это не проблема. +3 DOS не с чем не совместима, ничего не может быть включено с ней одновременно, поэтому для +3 нужна отдельная сборка. Бонус -- можно не компилировать FAT32 и все интерфейсы для SD.
    Не понял почему +3 DOS ни с чем несовместима. +3e вполне может крутиться на IDE/MMC, рядом с FAT32 разделами, разве нет? https://worldofspectrum.org/zxplus3e/sharingdisks.html
    Последний раз редактировалось Uzix; 07.06.2024 в 20:15.

  8. #7

    Регистрация
    03.12.2021
    Адрес
    г. Санкт-Петербург
    Сообщений
    670
    Спасибо Благодарностей отдано 
    472
    Спасибо Благодарностей получено 
    197
    Поблагодарили
    135 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Chwe Посмотреть сообщение
    можно не компилировать FAT32 и все интерфейсы для SD.
    +3 и DivMMC - не редкая история

  9. #8

    Регистрация
    18.05.2020
    Адрес
    г. Белгород
    Сообщений
    527
    Спасибо Благодарностей отдано 
    170
    Спасибо Благодарностей получено 
    637
    Поблагодарили
    201 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Chwe Посмотреть сообщение
    А вот как в ZX MIDI Player отобразить произвольный набор устройств, я ещё даже и не смотрел.
    Как писал в прошлый раз, начинать с disk_change - https://github.com/UzixLS/zx-midipla.../disk.asm#L379
    По номеру диска disk_change доступается к элементу массива var_disks.all и подгружает оттуда ряд параметров в var_disk. Так же он вносит в var_disks.current_n номер текущего выбранного диска, а в var_disks.current_ptr - указатель на текущий диск из var_disks.all.
    Тип диска определяется по var_disk.driver - если он = 0, то TR-DOS, иначе если старший бит 1 - то IDE, если 0 - то MMC.
    Драйвер TR-DOS выбирает номер дисковода исходя из текущего номера диска var_disks.current_n (предполагается, что диски TR-DOS идут всегда первыми - от 0 до 3).
    Драйвер IDE (MMC) выборает контроллер (DivIDE, NEMO, SMUC и т.д.) по оставшимся битам var_disk.driver. Притом для IDE самый младший бит - master/slave диск, для MMC - первая/вторая карта.
    Нужно будет модифицировать эту схему. Например, для выбора драйвера использовать два старших бита: 00 - TR-DOS, 01 - IDE, 10 - MMC, 11 - +3DOS.

    Так же при запуске/переконфигурации нужно, собственно, заполнить var_disks. Делает это disks_init - https://github.com/UzixLS/zx-midipla.../disk.asm#L229 - он же и должен детектировать +3DOS и занести количество найденных дисков в var_disks.count. Вот только в плеере сейчас подразумевается буква диска = 'A' + номер диска в списке, в +3DOS же, насколько знаю, буквы произвольно назначаются - нужно будет переделывать. Буквы дисков фигурируют только при выводе на экран в меню - этим занимается disks_menu_generator - https://github.com/UzixLS/zx-midipla.../disk.asm#L475 . Он дёргается из main_menu_generator нужное количество раз - по количеству дисков var_disks.count. Можно добавить поле с буквой диска в disk_t и доступаться к этому полю из disks_menu_generator.
    Последний раз редактировалось Uzix; 07.06.2024 в 20:52.

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

    Chwe(07.06.2024)

  10. #9

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

    По умолчанию

    У меня на Эве при 14 Мгц Мультисаунд миди не играет. Тишина. А должен? Вижу, в инструкции написано, что не гарантируется. На 3.5 и 7 хорошо играет.

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


    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
    [свернуть]

  11. #10

    Регистрация
    18.05.2020
    Адрес
    г. Белгород
    Сообщений
    527
    Спасибо Благодарностей отдано 
    170
    Спасибо Благодарностей получено 
    637
    Поблагодарили
    201 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    izzx, не должен т.к. на 14 МГц у Эвы есть вейтстейты - пропуски тактов грубо говоря. Выход миди на Мультисаунде сделан согласно заветам Клайва, т.е. ногодрыгом, а значит любые отклонения частоты процессора критичны.

Страница 4 из 5 ПерваяПервая 12345 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Z-Player for GS v4.0 (+FAT32)
    от Evgeny Muchkin в разделе Софт
    Ответов: 82
    Последнее: 12.05.2025, 15:25
  2. AVR-AY player
    от Zloy в разделе Софт
    Ответов: 375
    Последнее: 04.12.2024, 00:03
  3. Z-PLAYER for GS v3.4
    от Evgeny Muchkin в разделе Софт
    Ответов: 27
    Последнее: 24.12.2020, 17:03
  4. AY Player
    от tiboh в разделе Софт
    Ответов: 24
    Последнее: 28.10.2011, 20:18

Ваши права

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