Просмотр полной версии : Grand's Boot
Grand's Boot относится к классу boot'ов т.е. программ-оболочек TR-DOS, которые предназначены для загрузки других программ. :)
Особенности таковы: Работает максимально в соответствии с правилами операционных систем ZX Spectrum и TR-DOS. Все дисковые олерации реализованы через точку 15635 (#3D13). Поддерживает каталоги Directory System V1.00 (в версиях 2.xDS и 3.x). Запускает BASIC-программы, кодовые блоки и magic-файлы ОС TR-DOS. Может загружать, но не запускать BASIC-программы и кодовые блоки. Для загружаемых/запускаемых программ выставляет выбранную аппаратно-программную конфигурацию компьютера.
Grand's Boot V2.8 - предназначен для любого Spectrum-совместимого компьютера.
https://i.postimg.cc/VNY2cs1s/1.png (https://postimages.org/) https://i.postimg.cc/RCkSxtYM/2.png (https://postimages.org/)
Grand's Boot V3.7 (25.05.2025) - также предназначен для любого Spectrum'а, но при использовании на компьютере Scorpion ZS 256 (GMX, 1024) позволяет просматривать содержимое подразделов и псевдодисков на SMUC HDD, монтировать/размонтировать псевдодиски и запускать файлы копий памяти (ZS snapshot'ы), созданные средствами Теневого монитора.
https://i.postimg.cc/W34R0NfY/3.png (https://postimages.org/)
MD5 хеш-суммы архивов во вложении:
gb28.zip - 3da82bafb33e9029d99616fbda8a2027
gb37.zip - 5b4e48284f351be7794d6dd56701de76
Дополнительные материалы
Grand's Boot V3.7.0.1 - специальная версия с индикацией часов для компьютера Scorpion.
За code-версию отдельное спасибо :v2_dizzy_roll:
К сожалению, сейчас code-версия не поддерживает аппаратно-программную конфигурацию "128K & 128 BASIC". При ее создании я применил уже отлаженную схему как в code-версии TR-DOS Navigator'а (http://zx-pk.ru/threads/2952). Но я предполагаю вернуться к решению этого вопроса, причем в обеих программах.
p.s. Ныне это огоаничение снято.
В новой версии V2.6DS (именно в этой) впервые цвет бордюра устанавливается автоматически исходя из преобладающих краевых атрибутов (paper) фоновой картинки. Хочу спросить пользователей: нужна ли эта возможность?
SoftLight
13.04.2019, 12:59
Я бы делал белый бордюр для краевого цвета жёлтый и белый а для всех остальных цветов - чёрный.
Я бы делал белый бордюр для краевого цвета жёлтый и белый а для всех остальных цветов - чёрный.Давайте опробуем этот вариант.
У меня получилось так;
http://saveimg.ru/thumbnails/13-04-19/bbaaffa85920f3f46c256323974c5a55.png (http://saveimg.ru/show-image.php?id=2a0f9c182d738374bc8cc9b481d908d4)
Мне тоже понравилась эта идея. И процедура подсчета получается короткой и красивой. :) Вероятно, в скором времени выпущу новую версию GB. Есть ли еще какие-нибудь пожелания?
Имена файлов 8 символов это моветон, нужно делать поддержку "длинных имён". В 90х было как минимум 2 бута, которые такое поддерживали. Первый бут от X-Trade, с которым я не разобрался, как там подсовывать свои имена (у меня была и есть одна дискета с играми, там в буте имена длинные), для своих дисков. И второй бут был от Инфоркома. Я его декомпилировал, исправил кое какие ошибки и портировал в +3дос. Этот бут позволяет набивать свои длинные имена, но проблем в нем очень много и его нужно кардинально переделывать. Уж поверьте, но список игр с длинными именами в 100 раз более информативен, нежели ужатые сокращения.
solegstar
15.04.2019, 10:20
Есть ли еще какие-нибудь пожелания?
Поддержка расширенного экрана. Допустим Профи, для начала. Также плюсую за поддержку длинных имен файлов.
В 90х было как минимум 2 бута, которые такое поддерживали. Первый бут от X-Trade,... И второй бут был от Инфоркома....
Я знаю еще один бут, от Mr Adventure (https://zxaaa.ru/view_demo.php?id=3414), из Мариуполя. Длинные названия, правда, можно было писать только для бейсик-файлов. Всё прописывалось в файле самого бута.
Вот, как пример: (https://www.dropbox.com/s/dzyo7hpzsjnw9zk/DEMOS.zip?dl=0&raw=1)
68784
polikarpov76
15.04.2019, 11:52
А по мне так длинные имена нафиг не нужны. У каждой дискеты есть обложка, на ней должен быть список игр. Вот там можно что угодно написать, а каталог на диске нужен только чтобы соотнести запись в каталоге с релизом. И 8 символов чтобы найти нужную игру на дискете более чем достаточно.
цвет бордюра устанавливается автоматически исходя из преобладающих краевых атрибутов (paper) фоновой картинкиОпция интересная, но только предусмотрите возможность принудительной установки цвета по желанию пользователя.
У каждой дискеты есть обложка, на ней должен быть список игр.Дискета может быть не физической, а в виде образа на HDD.
И идея с длинными именами хорошая.
З.Ы. Перехода на шрифт 6x8 не планируется? Не у всех зрение в порядке.
- - - Добавлено - - -
1. Запустил в эмуляторе с диска A.
2. Щелкнул в программе на B:. "Дискеты" там нет.
3. Получил список:
- boot
- A:
- B:
- C:
- D:
4. Щелкнул по boot.
5. Получил ошибку: "R Tape loading error, 1:1"
Длинные названия, правда, можно было писать только для бейсик-файлов. Всё прописывалось в файле самого бута.
Ну это само собой разумеется, для других и не нужно. Кому нужны мейджик копии? Я уже который год делаю свою мегаколлекцию на дискетах, юзаю тот бут с длинными именами, что описал выше. В названии игры ещё бывает можно указать особенность (128К или чей релиз). Кстати. Просто ради инетреса перебрал кучу бутов, почти все ужасный кал, кроме ZYX и ещё пары. Но во всех нужны правки насчёт правильного опроса кемпстона и других ошибок. Такое ощущение, что люди писавшие эти буты были как зомбированные или под гипнозом. Или реально не понимали, зачем нужна эта программа. Кривой опрос клавиш, чем быстрее работает у нас проц тем быстрее там ездит курсор, на 7Мгц уже очень сложно выбрать нужный пункт. Булькание, прыгание какое-то часто, нечитабельный текст, уродливый шрифт. Или вдруг, внезапно только управление от курсора или IF2, почему не сделать несколько параллельно? Или всё более менее норм, но более 20 файлов не понимает, скролла нет. Бут в теме я ещё не смотрел, проверим на предмет таких недоработк.
Имена файлов 8 символов это моветон, нужно делать поддержку "длинных имён". В 90х было как минимум 2 бута, которые такое поддерживали.
Я знаю еще один бут, от Mr Adventure, из Мариуполя.Задумывался над этим когда-то и я. :) В моём варианте длинные имена тоже были только в BASIC-файлах, хранились внутри их и не терялись бы прикопировании.
Так какое же решение сейчас выбрать?
Опция интересная, но только предусмотрите возможность принудительной установки цвета по желанию пользователя.Принято. Сейчас можно только отключить ее, вручную в последнем секторе файла (и code-версии и обычной) прописав необходимые значения.
Последний сектор начинается с идентификатора #FD, #06. Если в байт со смещением +11 (деситич.) записать 0 вместо 1, бордюр будет всегда черным.
А вообще эту фичу я впервые применил в Grand's Screen Viewer V1.12 (http://era-cg.su/grands/zxcreat.htm), только там она отключается в окне настроек.
1. Запустил в эмуляторе с диска A.
...
5. Получил ошибку: "R Tape loading error, 1:1"Так будет и на реале. Не дошли руки исправить этот недочет... :)
Перехода на шрифт 6x8 не планируется?Есть такая задумка. Но когда ее осуществлю - не знаю.
Давным давно шрифт 4x8 был выбран, чтобы получить быструю печать и иметь маленькую площадь окна на фоне картинки. Но сейчас, конечно можно и поработать в другом направлении.
Поддержка расширенного экрана.И такая идея у меня была. Но тут полностью придется переписывать все графические процедуры. :(
- - - Добавлено - - -
Просто ради инетреса перебрал кучу бутов, почти все ужасный кал, ...
Такое ощущение, что люди писавшие эти буты были как зомбированные или под гипнозом. Или реально не понимали, зачем нужна эта программа.Vadim, на мой взгляд, люди не понимали, что boot - это сложная системная программа и должна грамотно взаимодействовать с операционной системой, а для ее написания нужны знания. Я в 1990-е тоже насмотрелся негативных примеров бутовых программ и мне захотелось сделать свой. Первую версию Grand's Boot я сел делать уже имея представления об опериционных системах ZX Spectrum и TR-DOS, но главный опыт все равно пришел при работе над ним.
Бут в теме я ещё не смотрел, проверим на предмет таких недоработк.Буду только рад услышать мнение. :)
- - - Добавлено - - -
4. Щелкнул по boot.
5. Получил ошибку: "R Tape loading error, 1:1"Вообще-то, опция "boot" или "[boot]" на файловой панели это RUN "boot" с текущего устройства. Поэтому, если диска в дисководе нет, то - R Tape loading error.
Так какое же решение сейчас выбрать?
Тут бут от Инфоркома хранит длинные имена на дорожке 0 за каталогом (по памяти не помню какой сектор). Я этот бут портировал в +3ДОС и там такое ессно не прокатывает, пришлось создать файл, в котором лежат соответствия между коротким именем и длинным. Ввод длинного имени по клавише EDIT (CS+1) стоя в строке будта на имени файла. Бут знает короткое имя, юзер вводит длинное. При записи файла на диск ещё происходит "нормализация", проверяем не удалили ли мы какой бейсик файл, если да, то удаляем соотв. строку соответствия и записываем файл.
Так можно сделать и в трдос. сделать файлик и писать в него. Файлик вторым файлом будет идти после boot. Размер пусть ограничен и список заранее ограничить скажем 30-ю позициями. Или 32.
Grand, у Вас, вроде, не выводятся сообщения об ошибках (нет дискеты и т. п.)?
Если не выводятся, то хорошо бы сделать.
Обработка ошибок есть. Выдается окно с системными кодами ошибок. При No disk - сразу осуществляется переход на пустую файловую панель, так как в этом случае окно с одной и той же ошибкой быстро надоедает. :)
http://saveimg.ru/thumbnails/17-04-19/5399d33a945096f3a2ddc15bc9e9facf.png (http://saveimg.ru/show-image.php?id=38cbacd68e119c35be5fcadbba9691bd)
При No disk - сразу осуществляется переход на пустую файловую панель, так как в этом случае окно с одной и той же ошибкой быстро надоедает.
Но в таком случае, пользователь не проинформирован об ошибке и будет полагать, что всё прошло успешно. Просто на диске есть только файл "boot.B". Хотя, может отсутствовать не только этот файл, но и диск вообще.
Но в таком случае, пользователь не проинформирован об ошибке и будет полагать, что всё прошло успешно.Писалось-то для реала. :) Предпологалось, что пользователь обратит внимание на обращение к пустому дисководу, и еще вынужден будет подождать несколько секунд, пока снимется обращение к нему.
Давайте попробуем еще один тестовый вариант. Сделано следующее:
- При отсутствии диска в дисководе выдается окно с сообщением No disk (точнее с кодом).
- Опция "[boot]" на файловой панели блокируется, если та пустая или на диске нет файлов.
- Цвет бордюра устанавливается с учетом краевых атрибутов фоновой картинки: если преобладает paper 6 или 7 - то бордюр белый, для преобладающих других цветов - черный.
В первом сообщении темы выложена версия 2.6.1. Учтены некоторые пожеланий участников нашего Форума. Остальные пожелания я попробою учесть в следующих версиях, если работа будет продолжена. А пока я займусь другими своими проектами. :)
Итоговые изменения следующие: При отсутствии диска в дисководе выдается окно с кодом ощибки. Вывод этого сообщения мохно отключить, если в настроечном секторе (это последний сектор файла на TR-DOS-устройстве) в байте со смещением +11 сбросить бит 1. Цвет бордюра устанавливается с учетом краевых атрибутов фоновой картинки: если преобладает paper 6 или 7 - то бордюр белый, для других - черный (только для V2.6.1DS). Если в настроечном секторе в байте со смещением +11 сбросить бит 0, то цвет бордюра будет браться из байта +12. Опция "boot" или "[boot]" на файловой панели блокируется, если та пустая или на диске нет файлов.
Ниже приведена более полная информация о байтах настроечного сектора.
Смещение Описание,
от нач. [значение по умолчанию]
сектора
-------- -------------------------
+0,+1 Идентификатор [#FD,#06]
+2...+10 Имя и тип файла фоновой картинки [boot_$C]
+11 Если бит 0=1, то разрешена установка цвета бордюра по преобладающим краевым атрибутам фоновой картинки (только для V2.6.1DS); если бит 1=1, то при ситуации No disk выдается окно с соответствующим кодом ошибки [#03]
+12 Цвет бордюра, если в байте +11 бит 0=0 (для V2.6.1 всегда) [#00]
+13 Число шагов до увеличения скорости курсора-стрелки [24]; этот и два следующих параметра влияют только при управлении от клавиатуры
+14 Количество скоростных уровней движения курсорастрелки [#04]
+15 Начальная скорость в пикселах курсора-стрелки [#02]
+16 При значении 0 - полное отключение Kempston mouse [#FF]
+17 Масштаб для Kempston mouse (1...20) [#01]
+18,+19 Экранные координаты X и Y (в стандартных знакоместах) положения главного окна
Остальные байты до конца сектора предназначены для других целей и их изменение недопустимо.
Grand, благодарю!
При отсутствии диска в дисководе выдается окно с кодом ощибки. Лучше, наверно, сделать расшифровку кодов ошибок.
Опция "boot" или "[boot]" на файловой панели блокируется, если та пустая или на диске нет файлов. У Вас в файловой панели возможно выводить текст разными цветами? Если да, то заблокированную опцию можно выводить в другом цвете. Например, ink=0.
В Settings было бы хорошо подкрашивать (инвертировать) опции-флаги при наведении курсора.
Хочу показать те буты, о которых писал выше.
P.S.V. - (выше,я ошибочно про него писал как бут от X-Trade, это не так оказалось, память подвела) с этим бутом не разобрался, привожу образ диска как он у меня был, где хранятся длинные имена я так и не понял. Не искал.
А вот второй образ (в котором игры Firebird), это тот boot, про который я тоже писал. Его пока использую. Он у меня декомпилирован, кое-что я исправил, но многое нужно бы допилить. Пока нет времени и желания.
P.S.V. - (выше,я ошибочно про него писал как бут от X-Trade, это не так оказалось, память подвела) с этим бутом не разобрался, привожу образ диска как он у меня был, где хранятся длинные имена я так и не понял. Не искал.
в 10ом секторе нулевой дорожки.
мне точно встречались ещё два бута с длинными именами, постараюсь найти.
..........
вот один, только там не длинные имена, а возможность добавлять описание к программе
https://zxaaa.ru/DISKI/goroskop1.zip
в 10ом секторе нулевой дорожки.
А ну да. Видимо я искал их уже не в этом образе, а в скопированном, где их не было. Этот образ нашёл только сегодня, всё перерыл, хотел уже дискету искать и считывать, всё были SCL и копии сделанные FAR ом, пофайлово, с плагином.
У Вас в файловой панели возможно выводить текст разными цветами? Если да, то заблокированную опцию можно выводить в другом цвете.Увы, цвета в печати нет, - чтобы максимально упростить процедуру. Но эту идею, как и все нижеследующие, я возьму в "копилку".
Лучше, наверно, сделать расшифровку кодов ошибок.Опять-таки это сделано, чтобы не удлиннять код. При нормальной работе красное окно System error обычно не появляется. Разве-что, если нажать Break при чтении каталога или после останова TR-DOS типа Retry/Abort/Ignore, когда выбрано A. "No disk" - согласен, лучше бы написать, но я опять сэкономил. :)
В Settings было бы хорошо подкрашивать (инвертировать) опции-флаги при наведении курсора.И тут сказалась моя экономия. :) Но целиться именно в переключатель не надо. Можно щелкнуть и по строке его названия.
в 10ом секторе нулевой дорожки.Теперь у нас там Directory System. Но опыт реализации длинных имен изучать конечно надо.
Вообще, свой бут я делал, как системную программу - для работы, а не для дисков с играми, поэтому о длинных именах никогда не думал. Но эта идея интересная.
При нормальной работе красное окно System error обычно не появляется.
У меня такое окно появляется:
BASIC: R
TR-DOS : 6
Я так думаю это вовсе не ошибка Grand's Boot, а ошибка тыр-доса. или особенность((
Может кто растолкует?
* TR-DOS Ver 6.10E *
Это что ж получаеЦЦа, на диЦк "D" нельзя ничего цеплять, он в йём виртуальный?? но все равно некоторые отличия с тем же новым вьювером. Он этот диск как то видит, но ничего не запускает.
целиться именно в переключатель не надо. Можно щелкнуть и по строке его названияЯ имел ввиду именно всю строку: флаг+наименование.
У меня такое окно появляется:
BASIC: R
TR-DOS : 6
No disk. Ошибку выдал сам обработчик 15635. Скорее всего.
Black Cat / Era CG
26.04.2019, 07:38
R это Tape loading error, как известно, а коды обшибок Tr-dos наизусть не знаю :)
BASIC: R
TR-DOS : 6
Я так думаю это вовсе не ошибка Grand's Boot, а ошибка тыр-доса. или особенность((
Может кто растолкует?
* TR-DOS Ver 6.10E *Я, к сожалению с этой TR-DOS не работал (и даже не знал о ее существовании :)), поэтому мне тоже интересна информация от экспертов. Где хотя бы манул почитать можно?
Я имел ввиду именно всю строку: флаг+наименование.Я именно так и понял, и взал эту идею в "копилку".
R это Tape loading error, как известно, а коды обшибок Tr-dos наизусть не знаюИ я многие сразу не назову, пользуюсь шпаргалкой. :)
к сожалению с этой TR-DOS не работал (и даже не знал о ее существовании )
ну довольно известная под(д)елка от mr. Alone из Ryazan sity.
Возможно диск D - только ram disk, и из-за этого такое несоответствие. Но аффтора с нами нет, уточнить не у кого.
Black Cat / Era CG
27.04.2019, 23:59
Все эти версии ск всего на основе 5.03 вроде.
В пятницу появилась у меня идея. Довольно спорной надобности и сложная в реализации.
Добавление к именам файлов эскизов заставок или других изображений.
Например, как эскизы работ с Funtop'98.
https://b.radikal.ru/b15/1904/ea/aeda672816e5.png
Затем вспомнил, что был boot, в котором файлам можно было сопоставить значки. Поискал, это оказалась программа Program Box (описание: Adventurer #09 (http://zxpress.ru/article.php?id=5508))
https://a.radikal.ru/a06/1904/90/9a73c65fbba7.png
Добавление к именам файлов эскизов заставок или других изображений.
Вот я обдумывал, что нужно допилить до того бута, что с длинными именами может работать, в числе прочего была мысль прилепить фоновую картинку с названием сборника. Этого вполне достаточно.
Вот, примерно как в этом буте.
... в настроечном секторе (это последний сектор файла на TR-DOS-устройстве) в байте со смещением ... сбросить бит ...Grand, сделайте настройки программы через меню. Так будет значительно дружественнее.
... появилась у меня идея. Довольно спорной надобности и сложная в реализации.
Добавление к именам файлов эскизов заставок или других изображений.Была у меня идея сделать такое в Grand's Screen Viewer'е. Но до практмческой реализации дело не дошло. :(
Grand, сделайте настройки программы через меню. Так будет значительно дружественнее.Это так, но меня останавливают две вещи. Я пользуюсь GB уже давно. Иногда действительно нужно поменять настройки, предусмотренные в меню Settings. Но ни разу (!) у меня не возникало надобности менять остальные, вручную прописывая байты в сектор настроек. Так что, эта возможновсть, видимо, существует "просто так", потому и не документирована. А вот ее реализация через меню Settings приведет к увеличению длинны программы, а мне ведь холелось сделать boot еще и как можно меньшего размера.
Можно правда сделать отдельную настроечную программу, и ее возможности могут получится во много раз выше теперешнего меню Settings. :)
Вышла новая веасия 3.1 (в первом сообщении)
Ее особенности: Весь функционал программы вызывается через единое меню. На файловой панели показываются трехсимвольные расширения. Поддержка HDD, подключенного к контроллеру SMUC компьютера Scorpion: просмотр содержимого подразделов MFS и псевдодисков, монтирование и размонтирывание последних. Изменена литера "3" в шрифте.
SunFlower
20.09.2019, 21:01
Вышла новая веасия 3.1 (в первом сообщении)
Ее особенности: Весь функционал программы вызывается через единое меню.
Хорошо получилось, особенно если мышь используешь. Спасибо.
Кстати, о мыше. Поддержку Kempston-мыши в GB я делал на реальном ZX Evolution. Сейчас по умолчанию в GB3 левыя кнопка - выбор, правая - меню. Но я заметил, что в эмуляторах (RealSpectrum 0.97.31, UnrealSpeccy 0.37.1, например) кнопки по умолчанию перевернуты. Кто нибудь сталкивался с подобным в GB3 на реале.
Сегодня впервые (впервые!) увидел в действии интерфейс The Viewer от Kpacku, появившегося в начале года. Там тоже трехсимвольные расширения, выравниваемые по правому краю и исчезающицй ползунок... Мистика, какя-то. :)
SunFlower
21.09.2019, 12:17
кнопки по умолчанию перевернуты
В следующей версии GB в настройках программы добавить опцию "Поменять кнопки мыши местами" ("Перевернуть кнопки" и т.д.).
В следующей версии GB в настройках программы добавить опцию "Поменять кнопки мыши местами" ("Перевернуть кнопки" и т.д.).Это возможно будет. Но и сейчас есть способ. В новом Руководстве к GB (файл GBmanual.txt) в разделе "Настройки (Settings)" описано, как можно менять и другие параметры прописывая значения вручную в сектор данных настроек (в т.ч. и "переворот" кнопок).
Впрочем, если кто-то посчитает, что это сложно, я могу сделать персональную настройку GB и выложить эдесь.
Evgeny Muchkin
23.04.2020, 21:37
добавить опцию "Поменять кнопки мыши местами"
А может сделать, чтобы первая нажатая кнопка становилась 'левой' автоматически?
Black Cat / Era CG
30.04.2020, 20:57
И в хелпе написать про это.
Evgeny Muchkin
18.05.2020, 21:28
Хм... Что-то у меня не видно [SMUC HDD:]. А он есть :)
Может быть, нажать что-то надобно?
Конфиг компа в подписи.
В настоящее время ведется работа над новыми версиями Grand's Boot.
Предпологается сделать возможнось монтирования псевдодисков и на Scorpion GMX. Но прежде это необходимо протестировать. Приглашаю владельцев реальных Scorpion GMX принять в этом участие.
Во вложении тестовая версия Grand's Boot X3C. Скопируйте файлы из SCL-образа из ZIP-архива на TR-DOS-диск. Вставьте его в дисковод на реальном Scorpion GMX и запустите файл "GB_X3C.B".
На Scorpion GMX необходимо выяснить следующие:
стабильно ли запускается и работает тестовая версия (а именно: присутствует ли пункт "[SMUC HDD:]" в списке устройств) работает ли просмотр содержимого псевдодисков в TR-DOS-разделах на SMUC HDD (вход в разделы TR-DOS и псевдодиски осуществляется как в подкаталоги) и, главное, происходит ли надежное монтирование псевдодисков на устройства TR-DOS (доступны ли они после этого и в TR-DOS, и в Теневом мониторе) (опция монитора H.Hard disk utility > M.TRDOS mirror должна быть ON).
Чтобы примонтировать псевдодиск нужно войти в него и выбрать опцию "Mount drive" главного меню, либо запустить исполняемый файл (.B или .С). Подробная информация содержится в Руководстве к Grand's Boot V3.1 в первом сообщении темы.
Эту тестовую версию можно запускать и на не Скорпионах, но больше никаких новых возможностей, по сравнению с другими версиями, в ней нет.
Работу этой тестовой версии я проверял только на ZX Evolution в конфигурации Scorpion GMX, но, так как это не совсем то, требуется проверка на реальных Scorpion GMX. :) Сообщайте здесь о результатах. Принимаются любые предложения и замечания.
Просьба - не распространять эту тестовую версию на других сайтах, поскольку она не является законченным программным продуктом.
- - - Добавлено - - -
Хм... Что-то у меня не видно [SMUC HDD:]. А он есть :)
Может быть, нажать что-то надобно?
Конфиг компа в подписи.
Поддержка Scorpion GMX планируется в следующей версии. Смотрите тестовую версию во вложении.
Evgeny Muchkin
19.05.2020, 20:05
стабильно ли запускается и работает тестовая версия (а именно: присутствует ли пункт "[SMUC HDD:]" в списке устройств)
Да. Около часа гонял так сяк, нормально все.
работает ли просмотр содержимого псевдодисков в TR-DOS-разделах на SMUC HDD (вход в разделы TR-DOS и псевдодиски осуществляется как в подкаталоги)
Работает
и, главное, происходит ли надежное монтирование псевдодисков на устройства TR-DOS (доступны ли они после этого и в TR-DOS, и в Теневом мониторе) (опция монитора H.Hard disk utility > M.TRDOS mirror должна быть ON).
Происходит. Доступны.
Если что-то вылезет, сообщу всенепременнейше ;) Пока все ОК.
Из пожеланий:
- русский язык для имен разделов и файлов. ?????? некузяво :)
- при запуске с HDD, чтобы можно было выбрать букву куда монтируется не только мышкой в окне, но и простым нажатием A,B,C или D.
А в чем принципиальное отличие с точки зрения кода версии для GMX и версии для Скорпиона без GMX? ППЗУ же вроде по командам RST8 не отличаются у них...
Немного протестировал на GMX. В целом работает, пункт "[SMUC HDD:]" есть, образы видно и монтируются. Попробовал также монтировать вместо реальных дисководов A и B. Но не всё гладко. Иногда в меню теневого монитора тот вирт. диск, с которого я запускаю GB, почему-то имеет не полное имя. Название коллекции есть, а имени диска в конце нет. И если загрузить командер (HDDCOM), то он пишет что диск с GB уже в формате IS-DOS. Но если перемонтировать то снова ОК. А ещё самый первый диск в коллекции, похоже, порушился. Но может и был плохой раньше, точно не скажу. А имя второго образа в меню GB сдвинулось вправо. Если надо, попробую скриншоты прицепить.
Добавил скрины.
Evgeny Muchkin
19.05.2020, 21:03
Иногда в меню теневого монитора тот вирт. диск, с которого я запускаю GB, почему-то имеет не полное имя. Название коллекции есть, а имени диска в конце нет.
У меня такое есть, когда начинаешь навигацию по HDD, но конкретный образ еще не выбрал. Если в этот момент ткнуть магик, то такая же картина. А если примонтировать в GB диск, то все нормально.
У меня такое есть, когда начинаешь навигацию по HDD, но конкретный образ еще не выбрал. Если в этот момент ткнуть магик, то такая же картина. А если примонтировать в GB диск, то все нормально.
Может, раньше просто не замечал.
Ещё выше я писал что имя второго диска сдвинуто- это просто первой буквы нет. Хотя в теневом мониторе имя целое.
Потом ещё потестирую.
Evgeny Muchkin
19.05.2020, 23:44
Название коллекции есть, а имени диска в конце нет
Проверил еще раз. Есть такое.
В моем случае включена автозагрузка с диска D:, там у меня бутом RealCommander, потом с реального диска А: гружу GB.
Начинаю навигацию по [SMUC HDD:], или монтирую куда-то (A:,B:,C: ) образ. Захожу в теневик и там вижу путь к диску D: в таком, как говорит izzx виде, при этом название коллекции то самое, по которой только что производил навигацию, хотя к букве D: на самом деле примонтирован диск совсем из другой коллекции. Самое смешное, что к диску D: я даже не монтировал ничего :) , а путь к нему отображается некорректно.
Но! По факту, к диску D: остается примонтирован правильный образ, хоть и путь отображается неправильный.
А имя второго образа в меню GB сдвинулось вправо.
Этот вопрос, похоже, снимается. У меня и правда такое имя диска было с пробелом в начале ). Прочитал инструкцию таки, что имена берутся в первую очередь не из имён образов, а из имён дисков.
Ещё попытался воспроизвести ситуацию, когда название коллекции есть, а имени диска в конце нет и даже в мониторе диск уже не виден. Нельзя, скажем, прочитать каталог.
Делаю так: на вирт. Диск D: записываю GB и запускаю его оттуда. Потом монтирую с помощью GB какой-нибудь образ, скажем, на диск B:. Но не запускаю ничего с него, а тут же выбираю диск C: (он раньше был смонтирован) и запускаю что-нибудь с C:. И готово, мастер. Сломал. Диск D отвалился.
- - - Добавлено - - -
Забыл пожелание написать: не лучше бы сделать открытие содержимого дисков в отдельном окне? А то в одном окне если много файлов, то надо скролить вниз, чтобы добраться до букв дисков. Если мышкой, то целых два клика. На клавиатуре, конечно, можно нажать циферки 1..5…
Было б в основном окне только буквы дисков и имена образов SMUC.
Спасибо всем, кто принял участие в тестировании.
Название коллекции есть, а имени диска в конце нет.
... когда начинаешь навигацию по HDD, но конкретный образ еще не выбрал. Если в этот момент ткнуть магик, то такая же картина. А если примонтировать в GB диск, то все нормально.
Но! По факту, к диску D: остается примонтирован правильный образ, хоть и путь отображается неправильный.Попробую объяснить, что происходит. :)
Когда мы входим в подраздел TR-DOS с псевдодисками, то происходит его (подраздела) временное монтирование на устройство D:; это нужно чтобы получить доступ к этому подразделу вызовом RST 8. При этом в сектор эмуляции (по терминологии Vega) ничего не записывается. Поэтому, даже если мы прервем работу GB любым способом, первое же обращение к TR-DOS вернет всё на место (и в GB при работе с TR-DOS используются только вызовы #3D13), Но, если мы зайдем в Теневой монитор до обращения к TR-DOS, то и обнаружим эту "странность". Я придвидел это :) и вставил в Руководство к версии 3.1 предостерехение:
"Во время работы GB не рекомендуется изменять настройки в меню "H.Hard disk utility" Теневого монитора."
Вместо устройства D: можно было бы использовать и любое другое - это выше описанное монтирование происходит прозрачно и только в памяти Теневого монитора.
Ещё выше я писал что имя второго диска сдвинуто- это просто первой буквы нет. Хотя в теневом мониторе имя целое.Дело в том, что GB на файловой панели отображает имена псевдодисков, которые заданы при их инициализации (т.е. из их слухебного сектора), а не из их каталога на HDD. Поэтому имена, которые показывают Теневой монитор и другие программы будут отличаться. :)
Из пожеланий: ...
- при запуске с HDD, чтобы можно было выбрать букву куда монтируется не только мышкой в окне, но и простым нажатием A,B,C или D.Можно добавить выбор только цифровыми клавишами "1"-"4", как при выборе устройства на файловой панели. Потому что "A" - это движение курсора вниз, а "B" - выбор опции.
...
- русский язык для имен разделов и файлов. ?????? некузяво :)Дело в том, что, работая еще над первой версией GB в 1997 году, я специально не сделал русские буквы, чтобы не увеличивать фонт и не удлиннять, программу. Кроме того русские буквы запрещены в именах каталогов по спецификации Directory System 1.00, поэтому я и не возврашался к этому вопросу. Но может быть в будущем версия на русском языке появится. :) Также есть планы сделать версию с другим пазмером шрифта (5x8 или 6x8).
А в чем принципиальное отличие с точки зрения кода версии для GMX и версии для Скорпиона без GMX? ППЗУ же вроде по командам RST8 не отличаются у них...Да разницы похоже нет. Просто работая над версией 3.1, я не тестировал ее даже на ZX Evo GMX и не знал как она на GMX себя поведет, поэтому заблокировал функционал Скорпиона, если версия ПрофПЗУ выше 4.01 (код 97). Сейчас наблюдается возвращение реальных Scorpion GMX, поэтому я вернулся к этому вопросу. :)
Делаю так: на вирт. Диск D: записываю GB и запускаю его оттуда. Потом монтирую с помощью GB какой-нибудь образ, скажем, на диск B:. ... и запускаю что-нибудь с C:. ... Диск D отвалился.Согласен. Это не порядок, когда после просмотра HDD, а за тем чтения диска "A"..."D", остается временное монтирование в Теневом мониторе.
Вставил следующие команды:
LD A,#83
LD C,35 ;автомонтирование на D:
RST 8
DB #81
Теперь при выходе из GB, косда на фаловой панели открыт HDD, а также при чтеннии дисков "A"..."D" лосле HDD, монтирование "D:" восстанавливается.
Но на экране после работы этого вызова появляется пурпурный квадрат. Его можно заметить сразу после выбора устройства монтирования между перересовками экрана. :(
Новая тестовая версия во вложении.
Вот, теперь диск D не отваливается. Пурпурный квадратик и правда мелькает. Тут вроде бы хорошо.
Зато я понял как у меня отваливается самый первый образ в коллекции. У меня имя образа с пробелом…
Делаю так: имя первого образа в первой коллекции без пробела, например “DISK03”. Запускаю GB, монтирую его на диск А – и запускаю файлик. Всё ОК. Теперь отцепляю в мониторе этот образ от диска А: и с помощью SCboot переименовываю образ в “DISK 3”. Тут кстати и примонтированный образ на диске D меняется на другой. Хотя я его не трогал. Но это на про GB вопрос.
Снова запускаю GB, монтирую образ на диск А и запускаю файлик – ошибка чтения сектора 9. И теперь этот образ никак не монтируется даже в мониторе пока не пересоздашь раздел TRDOS.
Может и не только с первым образом будет глючить, если назвать с пробелом, не пробовал.
Evgeny Muchkin
27.05.2020, 10:41
Grand, а часики на экран можно добавить?
я понял как у меня отваливается самый первый образ в коллекции. У меня имя образа с пробелом…Функция монтирования в GB (да и в TR-DOS Navigator'е) такая:
LD DE,path
LD A,%1000
LD C,35
RST 8
DEFB #81
. . .
path DEFM "part\name"
DEFB 0
То есть путь монтирования задается текстовой строкой. Вполне возможно, что в ней не допустимы пробелы (а это означает, что и в именах тоже) - и это приводит к ошибке.
Вообще же в документации по Скорпиону не написано, что можно менять 6-и символьные имена псевдодисков, поэтому эту возможность следует считать недокументированной.
... монтирую образ на диск А и запускаю файлик – ошибка чтения сектора 9.Сообщение выдает обработчик #3D13. Изредка случается такое и у меня (и на реале, и на эмуляторе), правда без фатальных последствий. Видимо, здесь какая-то программная несогласованность работы функций TR-DOS и HDD Теневого монитора. :(
... в одном окне если много файлов, то надо скролить вниз, чтобы добраться до букв дисков.Согласен, неудобство есть. В финальной версии будет доделано меню Settings, а в нем можно будет выбрать отображение только .B-файлов, что сократит список. Сейчас можно перемещаться по страницам списка файлов и если поместить курсор-стрелку ниже или выше этого списка (но не за границей окна) и нажимать "Выбор". Посмотрю, возможно ли сделать "горячие" клавиши "в конец/начало списка".
не лучше бы сделать открытие содержимого дисков в отдельном окне?
а часики на экран можно добавить?К сожалению, это все удлиннит программу. Ведь что должен делать boot: быстро загрузиться сам, предоставть выбрать программу для загрузки и загрузить ее правильно. :)
И готово, мастер. Сломал. Диск D отвалился.
...
И теперь этот образ никак не монтируется даже в мониторе пока не пересоздашь раздел TRDOS.izzx, а может такие рискованные экперименты проводить сначала на эмуляторе? :) Правда эмулятора Scorpionn GMX очевидно не существут, но можно настроить Unreal Speccy для эмуляции Scorpion + ProfROM + образ HDD. Могу здесь опубликовать руководсто, как быстро получить настроенный таким образом эмулятор.
Во вложении новая тестовая версия. В ней сделано: удалось избавиться от артефакта в виде появляющегося квадрата при выполнении функции автомонтирования (но именно, почему он появляется, так и не выяснено :)). сделана обработка ошибки функции монтирования - выдаcтся сообщение "Disk is not available" (однако, выдает ли эта функция ошибку, если в строке пути окажутся пробелы, я не знаю :)). сделаны "горячие" клавиши "1"..."4" в меню "Mount on". сделано чтобы первая нажатая кнопка мыши становилась кнопкой "Выбор" (если кому-то эта функция не понравится, в финальной версии ее можно будет отключать).
Моя аппаратура, на которой ведется работа Scorpion 1024, SMUC V2.0 rev.A + DS12C887 + СF Card 512Mb, NedoPC TSFM, FDD 5,25" "Электроника МС 5350", FDD 3,5" Mitsumi, zst VGA & PAL Converter V1.02 Scorpion ZS 256 Turbo (R), SMUC V2.0 rev.A + DS12B887 + СF Card 256Mb, FDD 5,25" "Электроника МС 5350", FDD 3,5" Mitsumi
Также переодически используется NedoPC ZX Evolution в конфигурации Scorpion GMX от Ewgeny7 (за что ему огромное спасибо)
И теперь этот образ никак не монтируется даже в мониторе пока не пересоздашь раздел TRDOS.
А если убрать пробел из имени образа, то снова монтируется
может такие рискованные экперименты проводить сначала на эмуляторе?
Ничего, у меня же есть копия флешки. Кстати, если удалить и создать раздел TRDOS, то инфа не пропадает. Только имена образов снова становятся disk**.
как быстро получить настроенный таким образом эмулятор
Руководство будет не лишним, если не сложно. Я больше к EmuZWin привык, Unreal не так хорошо знаю.
Версию 5 попробовал, вроде работает как положено.
При монтировании диска с пробелом тоже ругается на сектор 9, но по кнопке Abort успешно возвращается в бут. Который ещё пишет что disk unaviable.
Evgeny Muchkin
31.05.2020, 19:07
Часы удлиннят? :) Байт на 50-100? :) Ерунда ведь совсем. :) Зато как удобно.
Часы удлиннят? :) Байт на 50-100? :) Ерунда ведь совсем. :) Зато как удобно.
У меня отпуск кончается. К релизу не успею, но потом можно вернуться.
Как часы отобразить? В отдельном окошке? :)
Evgeny Muchkin
01.06.2020, 15:39
Как часы отобразить? В отдельном окошке?
Да пусть в уголку тикают, как в виндовсе :) Если никто ничего другого не предложит.
Руководство будет не лишним, если не сложно. ... Unreal не так хорошо знаю.Для тех, у кого нет Скорпиона, или кто хочет проводить "рискованные" эксперименты с HDD, предлагаю сделать себе предустановленный эмулятор UnrealSpeccy.
UnrealSpeccy можно настроить и с использованием его GUI, но тогода эта настройка будет действовать на оден сеанс.
Ниже дана инструкция для быстрого получения этого эмулятора с постоянной настройкой Scorpion + ProfROM + образ HDD.
Скачайте с альтернативного форума (http://dlcorp.nedopc.com/viewforum.php?f=27) из темы (http://dlcorp.nedopc.com/viewtopic.php?f=27&t=1525) архив с UnrealSpeccy 0.39.0 (далее - US). Создайте на диске пустой каталог и распакуйте туда все файлы US из архива. Распакуйте в этот каталог все файлы из моего архива из вложения с заменой одноименных. Запустите файл unreal.exe.
К устройству A: уже будет подключен файл FLOPPY.TRD; к устройству C: будет примонтирован псевдодиск с образа винчестера SMUC.HDD. Поэтому жмите Enter на опции "128 TR-DOS" и дожидитесь загрузки boot'а.
https://i.postimg.cc/f3tN3V17/us.png (https://postimg.cc/f3tN3V17)
Некоторые клавиши в эмуляторе: F1 - help по клавишам; Alt/F1 - меню Emulation Setting; F12 - Reset; Ctrl/F11 - Magic.
В данной конфигурации эмулятора подключается ROM-файл с Теневым монитором V4.01, но я записал и файл scorp39f.rom с Теневым монитором V3.9f; его можно попробовать подключить в меню Emulation Setting.
В качестве примера задан жесткий диск маленького размера. Чтобы его изменить, нужно открыть файл unreal.ini в текстовом редакторе, в группе "HDD" найти строку "CHS0=" и проставить другую "геометрию".
- - - Добавлено - - -
А если убрать пробел из имени образа, то снова монтируетсяЗначит пробел - недопустимый символ. Вероятно, есть и другие. Интересно было бы это выяснить, ведь возможно, что функция переименования псевдодлисков когда-нибудь появится и в TRND...
... ругается на сектор 9, но по кнопке Abort успешно возвращается в бут. Который ещё пишет что disk unaviable.Так и должно быть: GB полностью перехватывает обработку ошибок системы ZX Spectrum. :)
удалось избавиться от артефакта в виде появляющегося квадрата ... (но именно, почему он появляется, так и не выясненоС этой "Ошибкой пурпурного квадрата" удалось разобраться. Оказалось, что функция 35 дисковой подсистемы Теневого монитора из-за внутренней ошибки независимо от операции всегда устанавливает бит 4 в байте по адресу на который указывает HL. Пурпурный квадрат и появлялся от того, что перед вызовом этой функции в HL оказывался адрес, относящийся к экранной области; это и помоголо обнаружить ошибку. Чтобы решить эту проблему нужно перед вызовом этой функции записать в HL
адрес какой-либо свободной области или вовсе адрес, указывающий на ПЗУ. Например так:
LD DE,path
LD A,%1000
LD C,35
LD H,C
RST 8
DEFB #81
. . .
path DEFM "part\name"
DEFB 0
В финальной версии GB будут сделаны соответствующие исправления, поэтому релиз ненадолго отложен.
Спасибо! А где вложение?Не вложилось. :)
Поправил.
В первом сообщении темы размещены выщедшие новые версии Grand's Boot: V2.7(DS) и V3.2.
Некоторые особенности V2.7(DS): Изменен вид пиктограммы меню Settings; для его вызова могут использоваться и "горячие" клавиши EXT MODE и EDIT. При отсустствии диска выдается сообщение с текстом "Disk is not available", а на файловую панели не выводится опция "boot". Возможность сброса NedoPC NeoGS перед загрузкой программы. Упразднена установка цвета бордюра по преобладающим краевым атрибутам фоновой картинки (это оставлено только в версиях 3.x).
Некоторые особенности V3.2 Улучшена работа процедур SMUC HDD. Улучшено отображение трехсимвольных расширений; сделана возможность отключения этого отображения в Settings. Добавлена возможность сброса NedoPC NeoGS перед загрузкой программы (соответствующий выключатель в Settings). В Settings добавлена опция Cancel. Добавлены "горячие" клавиши в диалоговое окно Mount on.
а сам не можош проверить свою софтварь?
тут опять же отображается только хх хх $20
мало того пробел игнорируется и идет вырвиглазное выравнивание по правому краю
https://jpegshare.net/images/37/ba/37ba37f7ac686c796a553762eb9a8bfd.png
- - - Добавлено - - -
trdn
https://jpegshare.net/images/05/5f/055fcf1616391626f2c8d8f38d6bce71.png
- - - Добавлено - - -
как у меня
https://jpegshare.net/images/78/be/78be5403d202530e5303ad3faf25741a.png
чот не помню как именно у меня обрезается расширения
возможно для упрощения у меня признак конца вообще любой невалидный символ
Сам я конечно проверил. Но интересно и мнение других. :)
В тестовых версиях у меня расширение не выравнивалось по правому краю, но в условиях окна GB мне это показалось еще "вырвиглазней".
Алгоритм формирования в GB трехсимвольных расширений сложный, сложней чем в TRDN. Думаю,в будущем, когда у меня будет больше свободного времени, мы его обсудим. :)
NEO SPECTRUMAN
11.12.2020, 06:08
В тестовых версиях у меня расширение не выравнивалось по правому краю, но в условиях окна GB мне это показалось еще "вырвиглазней".
ну вырвиглазен именно малораспространенный 2-х символьный вариант
на фоне односимвольных и двусимвольных он выглядит крайне тупо
я у себя вообще не закладывал в "дизайн" 3-х символьные расширения
я подобрал на глаз набор пробелов между расширением и размером файла чтоб более менее было смотрибельно
а они сами ВНЕЗАПНО в него вписались :v2_lol:
немного вырвиглазного концепт арта :v2_dizzy_wall:
https://jpegshare.net/images/69/a4/69a406ceb159aa65d454ff40a99763eb.png
https://jpegshare.net/images/cf/ff/cfff12c846a07f80200036b08a6da3c0.png https://jpegshare.net/images/50/96/509640417e46508b2b2d6bb1464cd233.png
https://jpegshare.net/images/95/ae/95aeedc44bb0e6151e66098ff46246d6.png
вообще тихий ужас
https://jpegshare.net/images/5f/f3/5ff3c585b29459d0d65381cefdcd2f13.png
только не ясно почему
вроде ж обычное расширение сразу после имени
немного вырвиглазного концепт артаНу, я бы так не сказал. Единая оболочка с возможностью смены дизайна по минимуму, выбор отображения. Верно?
Directory System ей не хватает
:)
- - - Добавлено - - -
А вот у меня: 1068360. Впрочем, это только демонстрация.
NEO SPECTRUMAN
11.12.2020, 09:16
Единая оболочка с возможностью смены дизайна по минимуму, выбор отображения. Верно?
не
это процесс перехода к текущему типу дизайну :)
изза того что нужно было добавить *****е 4\8 кнопок
но которые категорически отказались вписываться в предудищий типо дизайн :)
- - - Добавлено - - -
Directory System ей не хватает
там нужный функционал не влазит
нет места не под выбор диска
не под кнопку reflesh
не под какую либо менюшку с настройками...
...хотя эта *****я менюшка за неимения другой
теперь будет висеть и в других моих поделках
в которых место может и быть
Но вернемся к трехсимвольным расширением. Если вспомнить правила верстки текста, то равный правый край считается не эстетичным. Вот и Total Commander на IBM PC в кратком режиме отображения выравнивает расширения по правому краю, а в подробном - нет, поскольку расширение не последнее в строке.
NEO SPECTRUMAN
11.12.2020, 10:46
Если вспомнить правила верстки текста
лучше не вспоминать
иначе вспоминается такое
https://lurkmore.so/images/6/67/Publish_mudaki_5.png
хотя єто еще так слегка...
Выпущены новые версии Grand's Boot'а (в первом сообщении темы): V2.8, V2.8DS и V3.3, а также их code-версии.
Особенности. Если загрузка GB осуществляется с временного дисковода, то после его старта дисководы будут остановлены (для code-версии, как и прежде, дисководы останавливаются всегда). Перед запуском загружаемой программы в аппаратно-программных конфигурациях "48K mode" и "128K mode & 48 BASIC" в регистр микропроцессора I заносится #3F. Процедура снятия выбора дисковода работает и в TR-DOS V5.02. Возможность отключения вывода сообщения "Catalogue data is corrupt".
В настоящее время работа над программой продолжается. Возможен выход версии, например, с часами.
Grand, а часики на экран можно добавить?Это было не просто. :)
Но все же, во вложении тестовый вариант Grand's Boot'a с часами. Часы индицируются в нижней части файлового окна только на компьютере Scorpion с контроллером SMUC и микросхемой RTC с ПрофПЗУ от V3.97.
GB отсчитывает время без использования второго режима прерываний - пока на экране отображается стрелка. Если листаются страницы файлового окна, часы будут отставать. После дисковых операций часы корректируются - считывается аппаратное время компьютера.
Как и раньше, первая нажатая кнопка мыши - выбор.
К сожалению, это все удлиннит программу.Файл GB стал длиннее на два сектора.
P.S. В конечном счете, в результате оптимизации V3.3.0.1 стала длиннее V3.3 только на один сектор.
Вложение удалено после 16-и просмотров.
Смотрите окончательную версию в следующем сообщении.
Выпущена окончательная версия с индикацией часов V3.3.0.1.
Немного улучшена точность индикации и сделана оптимизация, в результате которой файл на диске V3.3.0.1 стал длиннее V3.3 только на один сектор.
https://i.postimg.cc/P59gK7bK/gbx61.png (https://postimages.org/)
Во вложении новая версия V3.7.0.1 (25.05.2025).
MD5 хеш-сумма архива:
0496c1e1ae51da4091745be43246624a
Grand, может быть лучше будет выводить часы в нижнем правом углу экрана?
Grand, может быть лучше будет выводить часы в нижнем правом углу экрана?Я пошел по пути наименьшего сопротивления. :) Так оказалось легче сделать.
Grand, можно сделать boot для Scorpion'ов, резидентно находящийся в памяти и вызываемый нажатием Magic?
Как boot в демо Anamnesis (https://vtrd.in/demoz/demoz/CC999.ZIP).
резидентно находящийся в памяти и вызываемый нажатием Magic
тогда уж по хорошему нужно предусмотреть выход из бута в теневой сервис монитор.
Более интересным видится перехват "теплого" ресета.
З.Ы. и то, и то вполне реализуемо.
З.Ы2 Хотя... не факт на счет ресета в данной постановке задачи. Надо глянуть что там и как.
boot для Scorpion'ов, резидентно находящийся в памяти и вызываемый нажатием Magic?
и добавить другой функционал от MagOS - сохранение снапов запущенных программ в RAM'е, и переключение между снапами. и будем вообще шикардос.
В этом году Grand's Boot'у исполняется 25 лет - это самая старейшая, по сей день развивающаяся, системная программа на Спектруме. :) И конечно же идеи по более тесной интеграции со Скорпионом у меня были. Пока сделана поддержка HDD. Может в будущем дойдут руки и до чего-то еще. :)
Grand, еще идея для Scorpion'а:
запуск прямо из boot'a файлов "скинутых" на диск(ету) Scorpion'овским Magic'ом.
Grand, еще идея для Scorpion'а:
запуск прямо из boot'a файлов "скинутых" на диск(ету) Scorpion'овским Magic'ом.Была у меня и такая мысль.:)
Но я еще не разбирался с форматом скорпионовского magic'a. Может где-то есть публикация на эту тему?
- - - Добавлено - - -
Как его отличить от обычного <C>-файла?
Запуск Scorpion'овского файла - руководство по SMUC (глава "3.4.3 Автозагрузка IsDOS").
Как его отличить от обычного <C>-файла?
Оставить выбор пользователю, что у него в *.C файле.
При щелчке по файлу *.C выдавать меню (например, как в HC):
- Start @-Magic;
- Start ZS-Magic;
- Load (адрес).
Запуск Scorpion'овского файла - руководство по SMUC (глава "3.4.3 Автозагрузка IsDOS").
Эти мануалы по SMUC и ПрофПЗУ от авторов, тот еще квест. И это живой пример.
функция rst 8: db #8B нигде и никак не документирована, но тем не менее в выше означенном пункте идет косвенная ссылка на неё.
CityAceE
28.05.2022, 07:01
Но я еще не разбирался с форматом скорпионовского magic'a. Может где-то есть публикация на эту тему?
Вот, как раз в тему очень полезная информация (https://zx-pk.ru/threads/34309-dizassembler-profpzu-scorpion.html?p=1154069&viewfull=1#post1154069) от уважаемого LW подоспела.
Немного дополню.
В ПрофПЗУ есть функция rst 8: db #8B
О ней косвенно упоминалось кажется в инструкции к SMUC в разделе о загрузке is-dos с винчестера.
формат вызова такой:
для загрузки снапа с именем по умолчанию (bootm)
ld a,n ;номер дисковода [0..3]
rst 8
db #8B
db 0
но она также поддерживает расширенный вариант:
rst 8
db #8B
db "имяфайла",#00 ("имяфайла"имя в формате [Drive:]filename[.type] если дисковод не указан, используется текущий в понимании монитора, Drive = [A..D]/[a..d]/[0..3])
Запустить Scorpion snap не проблема. Я раньше выпускал тестовые версии TRDN именно в таком виде и снабжал их загрузчиком.
Сейчас GB определяет code-файл по стартовому адресу от #6000 и предлагает пользователю его запусть.
https://i.postimg.cc/6pGG65q6/2022-05-29-10-39-54.png (https://postimages.org/)
Хочется как-то детектировать и C-файл Scorpion snap.
Grand, еще идея для Scorpion'а:
запуск прямо из boot'a файлов "скинутых" на диск(ету) Scorpion'овским Magic'ом.
Во вложении тестовая версия, в которой сделан запуск файлов альтернативного magic'а (или, иначе, ZS snapshot). Приглашаются все желающие, владельцы компьютера Scorpion, принять участие в тестировании.
Тестовая версия предназначена только для компьютера Scorpion. Запускать ZS snap'ы возможно, если имеется ПрофПЗУ версий 3.97 - G5.00. Если у вас нет своих ZS snap'ов, их можно взять здесь.
Детектирование файлов ZS snap'ов происходит автоматически, но по косьвенным признакам. Сначала отбираются файлы с параметрами START=0, мл.байт LENGTH=0 и больше 1Кб. Потом считывается первый сектор, и в нем смотрятся байты +#00 и +#01 (подробности в сообщении от LW). Загрузка осуществляется функцией RST 8 \ DB #8B. Если при ее работе возникают ошибки, то останов происходит в Теневом мониторе с выдачей текстового сообщения. При возникновении такой ситуации, я рекомендую нажать Left + Reset.
Еще одно нововведение: по клавише H вызывается страница помощи.
Вложение удалено после 9-и просмотров
Завершены работы по встраиванию функции загрузки ZS snap'ов на компьютере Scorpion с ПрофПЗУ.
В первом сообщении финальная версия V3.4.
В этом сообщении версия V3.4.0.1 с часами для компьютера Scorpion. Также в этой версии сделана краткая страница помощи - клавиша "H".
версия V3.4.0.1
Что-то у меня не запускает снап. Сразу мусор на экране.
Если что, вот тут лежит файлик GMXCOM-ROM.trd
https://drive.google.com/drive/folders/19-O-MY2XkgRUmUUZ98xZ83juCuaBe32I?usp=sharing
Что-то у меня не запускает снап.
Этот ZS-snap сделан на Scorpion GMX, а у меня нет этого реального компьютера. Но я запускал его на эмуляторе (от сюда), и там он нормально стартует. Так что, выяснить мне мало что удалось.
В будущем может быть удасться сделать проверку, чтобы snap'ы от Scorpion GMX нельзя было запускать на "обычных" Scorpion'ах. Уже есть проверка, чтобы не запускались 128-256К snap'ы в 48К. Теневой монитор, перед загрузкой snap'ов таких проверок не делает.
В будущем может быть удасться сделать проверку, чтобы snap'ы от Scorpion GMX нельзя было запускать на "обычных" Scorpion'ах.
Интересно это вообще возможно определить? В заголовке снапа признаков указывающих на GMX не увидел...
- - - Добавлено - - -
Что-то у меня не запускает снап
А штатная загрузка запускает?
Если не подключен SMUC или винчестер, GMX Commander не запустится.
А штатная загрузка запускает?
Да, из монитора запускает.
Я всё понял. В эмуляторе попробовал. Если запускать с диска A-B, то работает. А C-D - нет. Я на реальном как раз с диска D запускал.
Для тестов лучше брать эмулятор с настроенным смуком, файлик "Unreal_ZS_GMX_Turbo_123872t.zip"
И да, разве оно другое для GMX? Должно быть без разницы.
И главное добавить эту функцию в TRDN.
Grand, При отсутствии SMUC`а или винчестера, снапы не отображаются в каталоге(по фильтру) и не запускаются.
- - - Добавлено - - -
А C-D - нет. Я на реальном как раз с диска D запускал.
На обычном скорпионе тоже с C-D не запускает.
- - - Добавлено - - -
Grand, Можешь показать п/п загрузки снапа (можно в личку). Попробую разобраться что не так с загрузкой с дисков C/D. Пока вижу зависание на распаковке RAM2. Вечером покопаю поглубже.
Оказывается, оно и с A-B не запускает, если это смук. А с дискетки - пожалуйста.
Разобрался в чем проблема именно с этим снапом.
Скажу сразу, это не ошибка бута. Ошибка (вернее даже не ошибка, а скорее недальновидность разработки) сидит в ПрофПЗУ.
При чтении и распаковке (на незапакованные снапы эта ошибка скорее всего не распространится, да и не на всех запакованных она проявляется) страницы снапа, нехватает области памяти выделенной под стэк, и он наползает на переменную в которой хранится оставшееся количество незагруженных секторов, в итоге портится большая часть(если не вся) 8й страницы со всеми вытекающими.
При загрузке же штатными средствами такого не происходит только потому, что стэк при входе в монитор по NMI располагается в другом месте чем при входе по rst #8.
Разобрался в чем проблема именно с этим снапом
А почему с дискеты работает?
Меньше вызовов процедур, меньше сохранений регистров на стэке. При работе с винчестером стэк нагружается поболее чем при работе с флопиком.
При отсутствии SMUC`а или винчестера, снапы не отображаются в каталоге(по фильтру) и не запускаются.
Там по замыслу работа со снапами должна разрешаться только если в Скорпионе ПрофПЗУ. Может что то сломалось. Но я все провнрял на реальном Скорпионе 1024. Прямо сейчас у меня нет возможности проверить, я не дома.
На обычном скорпионе тоже с C-D не запускает.Я тестил у себя со всех устройств. Но это были мои же снапы :)
Grand, Можешь показать п/п загрузки снапа...У меня была мысль опубликовать. Сделаю когда смогу.
Интересно это вообще возможно определить? В заголовке снапа признаков указывающих на GMX не увидел...Я только предполагаю. По каким-то косьвенным признакам. Что включен расширенный экран или используется расширенная память. Что-то подобное должно быть в заголовке.
У меня была мысль опубликовать. Сделаю когда смогу.
уже не актуально. Я думал проблема в буте, а тут вон оно что.
- - - Добавлено - - -
Что включен расширенный экран или используется расширенная память. Что-то подобное должно быть в заголовке.
Конкретно в этом снапе нет ничего. но может быть izzx сможет сделать снап с активным расширенным экраном... Тогда можно будет посмореть.
Конкретно в этом снапе нет ничего.А как же тогда включается расширенный экран? Я этот снап на эмуляторе GMX запускал.
Посмотрел пзу GMX в той области где лежат процедуры сохранения/загрузки снапов. В общем они те же самые, что и в обычном ПрофПЗУ. Соответственно в снапе сохраняется только 256k памяти, и нет сохранения расширенной конфигурации GMX. Да и тот же GMX Commander сохраненный во время работы, после загрузки как минимум не восстанавливает расширенный экран, насколько он корректно будет работать это вообще вопрос.
- - - Добавлено - - -
А как же тогда включается расширенный экран?
Тут снап сохранен грамотно. Точка входа в него это собственно процедура инициализации режимов и переменных.
- - - Добавлено - - -
Скорее всего сделан сразу после отработки загрузчика.
Соответственно в снапе сохраняется только 256k памятиЭтого то я боялся. Значит MOA не успел сделать это в далеких 90-х... Но тогда упрощается нам работа, раз формат снапов везде один.
И главное добавить эту функцию в TRDN.Чёт тяжело все пошло. Я просто скопировал логику работы из Руководства (там где описывается загрузка снапов из BASIC), и уже проблемы.
Тут снап сохранен грамотно.Тогда да. Обсолютно верно... :)
- - - Добавлено - - -
нехватает области памяти выделенной под стэк, ... , в итоге портится большая часть(если не вся) 8й страницы со всеми вытекающими.LW имеется ввиду, что мне перед вызовом RST 8 \ DB #8B следует выставить SP на адрес #C000 или ниже?
Да, пытаться сохранить прогу с включенным расширенным экраном дело неблагодарное. Поскольку монитор это дело не поддерживает. Но вот конкретно GMXCOM можно так: зайти в монитор кнопкой CS+M и делать снап. И он потом даже работает, только может придётся обновить каталог кнопкой R в каждой панели. А то по два курсора появляется и инфа не актуальная ).
Но тот снап я делал в эмуляторе, чистый, перед стартом.
перед вызовом RST 8 \ DB #8B следует выставить SP на адрес #C000 или ниже?
Нет. Это косяк ПЗУ. При вызове функции по rst 8 монитор, на время работы функции, устанавливает стэк в 8й странице для версии 4.01 это #E38D. Пользователю это никак не исправить. Спасёт только правка ПЗУ.
Нет. Это косяк ПЗУ.Тогда придется вставить в Руководство по GB примерно такое предупреждение.
В силу спецефических особенностей загрузки, не всякий снап, будучи запущенный средствами ТМ, запустится с помощью GB.
В общем, печалька. :(
Дополню. Сжатый снап при загрузке с подмонтированного образа дискеты.
При отсутствии SMUC`а или винчестера, снапы не отображаются в каталоге(по фильтру) и не запускаются....Может что то сломалось.Починил.
В первом сообщении обновленная версия V3.4.1.
В этом сообщении версия V3.4.1.1 с часами.
Вышла в свет версия 3.5.
На очереди версия с индикацией времени.
Выпущены версия с часами и code-версия.
В новых версиях сделано: фоновая картинка преобразовывается так, чтобы на ней был виден курсор-стрелка если GB запущен на Scorpion'е с ПрофПЗУ версий 3.9f...G5.00, то номер текущего HDD (master/slave) берется из соотетствующей переменной Теневого монитора поддержана версия Монитора, разрабатываемая LW; процедура подсчета CRC сектора монтирования - собственная
Выпущены версии 3.6 и 3.6.0.1.
Сделаны улучшения: Проведена внутренняя оптимизация Если разрешена смена света бордюра, исходя из краевых цветов фоновой картинки, то это происходит сразу же при ее выводе.
Выпущены улучшенные версии 3.6.1 и 3.6.1.1, в которых сделана поддержка Теневого монитора by LW v6.xx (код 101) для компьютера Scorpion GMX. Правда работа с HDD по-прежнему происходит только с первым разделом MFS.
Выпущена новая версия V3.7. Смотрите первое сообщение.
Сделано следующее:
Поддержана будущая Directory System V1.01.
Поддержан Теневой монитор v6.xx (код версии 101) by PLM aka LW. Однако, работа все-еще происходит только с первым разделом MFS на HDD.
Улучшена работа колеса Kempston-мыши.
Возможность отображения имен каталогов Directory System по схеме 8+3.
Изменен дизайн окна Settings.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot