Просмотр полной версии : Орион-ПРО. Софтверные дела
ksanf(138)
10.09.2016, 13:49
Да по любасу железяка. На прерывания грешу. Потому как сбой происходит уже опосля операции.
Типо- делаешь DIR, выводится каталог, промт ОС, курсорчик мырг-мырг и пропадает... Могут несколько точек на экране появится в любом месте.
Ну и всякое такое. А возможно ли по быстренькому прерывания в Альтаире вообще выключить?
Даже как-то неудобно прерывать серьезные разговоры, но я все же вклинюсь.
Историческое событие - теперь есть второй рейкастер для i8080. Первый - Ambal3D для вектора. К сожалению, там есть трудноустранимые погрешности, поэтому давно было желание написать новый рейкастер.
За основу взял этот (http://lodev.org/cgtutor/raycasting.html) вариант (самый простой, без текстурирования). Переписал на матлабе, перевел в целочисленный вид. При этом алгоритм несколько модифицировался и стал более похож на классические варианты.
Потом переделал для i8080. На данный момент там еще очень многое можно оптимизировать, а хотелось посмотреть в динамике на ретрокомпе уже сейчас. И решил попробовать на про, у которого сравнительно быстрый проц и удобные видеорежимы. Можно побродить, посмотреть. Клавиши управления - курсор и пробел (выход в про-дос).
Повторюсь, код рейкастера только 8080 (хотя на z80 было бы заметно удобнее), можно перенести на любой комп с 580ВМ80. Единственная команда z80, которая есть в реализации для про - переключение типа прерывания.
Error404
12.09.2016, 22:29
чота не работает
чота не работает
На реале в про-дос? И что, просто черный экран после запуска? В emu, понятное дело, работает.
ksanf(138)
13.09.2016, 11:23
Работает, работает. Монстрюг туда ишо и пушку герою. И всё, Дум готов!:v2_dizzy_army:
- - - Добавлено - - -
https://drive.google.com/open?id=0B46M0QmHIF5jZzJYMVZjT3F6Y1U
Там архив ,в архиве образ HDD c Альтаир Дос IDE-RTC Орион Про.
Так, на всякий случай.
В эмуляторе не работает. Проходит тест ОЗУ и пишет инопланетными иероглифами что то...
Error404
13.09.2016, 12:10
В эмуляторе не работает. Проходит тест ОЗУ и пишет инопланетными иероглифами что то...
Пишет "BDOS Error : bad sector"
Такое и у меня было на каком-то промежуточном этапе (переменная в BIOS где "диск по умолчанию", т.е. на момент загрузки, отчего-то не инициализировалась, соответственно до ASSIGN обращения улетали на несуществующий диск), потом вроде пофиксил. может в Гитхаб не закоммитил? Не помню. Сейчас в эмуляторе у меня ОС нормально работает (как раз эмулятор и позволяет быстро протрассировать и найти такие баги). А вот программа Дум - не работает. На Альтаир просто сразу же выносит всю систему, а на ПРо-ДОС отрисовывает первый вид на лабиринт и висит не реагирует на клавиатуру. На реале не пробовал, т.к. дисковода нет и не планирую его делать (соответственно, ПРО-ДОС в топку).
- - - Добавлено - - -
Потом переделал для i8080. На данный момент там еще очень многое можно оптимизировать, а хотелось посмотреть в динамике на ретрокомпе уже сейчас. И решил попробовать на про, у которого сравнительно быстрый проц и удобные видеорежимы. Можно побродить, посмотреть. Клавиши управления - курсор и пробел (выход в про-дос).
За что ты ж ты так обычный Орион не любишь? На нем хотя бы ОС имеется выбор в отличие от авторских поделий для ПРО. Ну ладно по религиозным соображениям можно не использовать АльтаирДОС, но есть же питерская ACPM, все лучше чем ПРО-ДОС. Раз тем более там код 8080 (а с Z80 - разгоняемо). Видеорежимы там такие же как на ПРО (кроме особо экзотических), так в этом и мастерство программера, чтобы впихнуть фантазии в конкретную платформу. Такой код и на ПРО тоже пойдет. А сейчас - только Про, только дисковод, только ПРО-ДОС
- - - Добавлено - - -
В смысле ОС на этапе отладки наверное лучше вообще выпускать версию для ОРДОС. Как некий примитивный контейнер. Тупо код работающий в нулевой странице (он же там, раз работа с графикой?) с удобного адреса. А уж в свою ОС (которая в других страницах) каждый перенесет запросто. Для этого есть готовый инструментарий или загрузчики типа LORD, ORD2COM, в Альтаире у меня загрузчик игр так и вообще с упаковщиком и распаковкой на лету при переброске в требуемую страницу.
За что ты ж ты так обычный Орион не любишь?
Обычный орион - это авторский 128? Там мне не хватает как минимум прерываний с кадровой частотой, ну и диспетчер памяти неудобный. Орион с zcard заметно лучше, но диспетчер памяти хоть и удобнее, чем в оригинале, но хуже чем в про. Ну и проц не такой быстрый.
Видеорежимы там такие же как на ПРО (кроме особо экзотических)
В про есть режимы 384/512x256 16 цветов/точку, да еще и палитра на мультикарте (хотя конкретно в rc4 ни то ни другое не используется). Это очень здорово и превращает для меня про в некоторое подобие турбо-вектора.
А сейчас - только Про, только дисковод, только ПРО-ДОС
Это из за лени. Все собираюсь делать и для альтаира, но как-то пока не собрался.
Error404
13.09.2016, 15:19
Обычный орион - это авторский 128? Там мне не хватает как минимум прерываний с кадровой частотой, ну и диспетчер памяти неудобный. Орион с zcard заметно лучше, но диспетчер памяти хоть и удобнее, чем в оригинале, но хуже чем в про. Ну и проц не такой быстрый.
Обычный в моем понимании, это Орион-128 с Z80 (тоже привык к прерываниям), наличие и вид диспетчера памяти - уже дело пристрастий.
В целом, комбинируя диспетчер 16к с одним окном и штатный страничный с окном 60к - уже можно довольно гибко выстраивать код.
Конечно, удобнее три по 16к плюс страничный (как на ПРО), но в большинстве случаев вообще без диспетчеров можно обойтись.
В про есть режимы 384/512x256 16 цветов/точку, да еще и палитра на мультикарте (хотя конкретно в rc4 ни то ни другое не используется).
Вот, и я об этом: я так и понял что аппаратные изыски не используется (пока), а получается что посмотреть не могу как уже которую твою программу.
А цвет каждая точка своим цветом - это будет дико тормозно (четырьмя плоскостями ворочать). Такой режим что он есть, что его нет - только для статических картинок. Для динамических надо применять чанки (групповой цвет с различающейся плотностью "макроточек" или вообще монохром с чанками где за cчет плотности ч/б точек имитируются градации) - такой подход позволяет рисовать только в одной плоскости, т.е. в 4 раза быстрее.
- - - Добавлено - - -
Пишет "BDOS Error : bad sector"
Такое и у меня было на каком-то промежуточном этапе (переменная в BIOS где "диск по умолчанию", т.е. на момент загрузки, отчего-то не инициализировалась, соответственно до ASSIGN обращения улетали на несуществующий диск), потом вроде пофиксил. может в Гитхаб не закоммитил? Не помню. Сейчас в эмуляторе у меня ОС нормально работает (как раз эмулятор и позволяет быстро протрассировать и найти такие баги).
Не, все нормально. Коммит ничего существенного в репозиторий не добавил. Похоже просто у ksanf(138) не последняя версия с Github (а борьба с "BDOS Error : bad sector" при загрузке driver.sys была одной из последних правок - в BIOS2.MAC в процедуре COLDINIT)
Заодно закоммитились правки в DRIVER.SYS - устранение глюков с оконными функциями (проявлялось при очистке экрана и скроллинге) возникших после сдвига экрана вправо для режима ПРО, плюс сделал для режима ПРО аналог программных прерываний в ОС (как от Монитора-3 Ориона-128). Теперь на ПРО (на 128 то с Монитором3 оно и раньше работало, и по сей день) резидентные программы можно вызывать "из бэкграунда в фореграунд" по комбинации клавиш ctrl+shift+"key". Например, для AY-плеера unipl28.com это комбинация "ctrl+shift+Y", для теневого монитора MSHELL30.COM это "ctrl+shift+J", для диспетчера процессов dprocess.com это "ctrl+shift+tab", для аварийного рестарта qboot.com(exit.com) это "ctrl+shift+СТР" (ЕМНИП).
В ПРО Монитор F800 предельно убог: много "вкусностей" описанных в авторской книжке по ПРО не реализовано, или реализовано криво, или вообще по другим точкам входа (и не то что описано). В тоже время полезнейших вещей типа программного прерывания по клавиатурной комбинации они реализовать забыли. Вот его то я и добавил (только для режима ПРО, драйвер один и тот же для 128/ПРО, внутри своего кода доделывает по необходимости)
Error404
14.09.2016, 20:21
Плюс, я поправил еще одну ошибку в ODI.WCX, по файлу от b2m - файлы размером более 512кб у меня паковались не ограничивая поле экстент (EX, FCB+12) по модулю 32 с переносом в S2, а инкрементировался EX вплоть до 255 (видимо, из соображений простой человеческой логики :) ).
Все вложения плагина ODI/OHI WCX из сообщений удаляю. Актуальные на GitHub (https://github.com/serge-404/OriZEmu/tree/master/UTILS/OdiWcx-OhiWcx). Сегодня закоммитил туда версию "в помощь разработчикам ОС" - теперь в образе диска или партиции кроме Юзеров(каталогов CPM) еще есть спецкаталог где в виде виртуального файла можно копировать в обе стороны из/в системные дорожки (правка в ODI.WCX). И аналогично есть доступ к MBR (OНI.WCX). Копирование из образа копирует "как есть", а копирование в образ проверяет и по необходимости сохраняет системные области (в MBR это информация о разделах, в системе - DPB, VolLabel, UserNames, FileDates), делает проверки на переполнение (чтобы не грохнуть каталог) и т.п.
Т.е. под Виндой компильнули mbrboot.bin или dos.bin, затем плагином (Тотал командером) закинули в образ. Раньше мне приходилось делать sysgen под CP/M power-ом или fdisk-ом (там в принципе все аналогично, но более муторно), как дело дошло до многочисленных правок ОС, стало понятно что надо что-то делать для облегчения себе жизни. :)
Вот это по прежнему актуально:
перед запуском TC/DC надо удалить все старые - odi.wcx, odi.wcx0, odi.wcx1, odi.wcx2, odi.wcx3
- - - Добавлено - - -
Похоже просто у ksanf(138) не последняя версия с Github (а борьба с "BDOS Error : bad sector" при загрузке driver.sys была одной из последних правок - в BIOS2.MAC в процедуре COLDINIT)
Кстати, киданул плагином актуальную версию dos.bin с репозитория прям в образ ksanf(138) - и о чудо, все грузится в эмуляторе без всяких "BDOS Error : bad sector". Не понятно другое - как оно на реале грузилось непоправленное. :)
Дмитрий2012
14.09.2016, 22:35
А загрузку с IDE не пробовал?
С ПЗУ *321* из этого же каталога на ГитХаб?
Я в эмуляторе пока что делаю. На реале столько перекомпиляций и проверок сделать не реально. Но в выходные буду пробовать.
Я так и не понял, на реале кто-нибудь пробовал загрузку с IDE из ПЗУ *321*? у всех что ли все работает?
У меня не грузит, тогда может кто выложит эту сборочку на дискетке?
ksanf(138)
15.09.2016, 00:39
Как это не пробовал? Уж как месяц почти пробуем... И всё работает.
Образ.. Образ потом, сейчас не могу, только завтра. Если никто не сподобится ,выложу.
Кстати в теме периферия есть "старые" мои образы дискет. Ну у меня работало..
- - - Добавлено - - -
2 Error/
Да, действительно как это-на реале работает , в эмуле нет. Плохой реал, плохой! ))))))
Error404
15.09.2016, 01:23
Я так и не понял, на реале кто-нибудь пробовал загрузку с IDE из ПЗУ *321*? у всех что ли все работает?
У меня не грузит, тогда может кто выложит эту сборочку на дискетке?
Сейчас попробовал. Ушло чуть больше получаса - прошил 2 ПЗУ с гихаба, слил образ с гуглдрайва (https://drive.google.com/file/d/0B3S0wVWNPLrwVHZuT2dEUkd4X1k/view) - с штатной загрузкой c IDE (биосом ПРО с дип-выключателями "HDD","ModePRO") по включению питания нормально грузится с HDD, все работает. Только driver.sys в том образе заменил на более свежий с github. CF-ка ранее подобранная на 64М на которой работают обе схемы (PRO,8255).
Проверенный на реале образ для дискетки не имею (т.к. нет дисковода), а что собрал (dosfdd.bin на github), в эмуляторе подглюкивает при обращении к HDD - видимо надо проверять (прошагать) как при старте с дискетки инициализируется HDD (но пока что руки не дошли).
Дмитрий2012
15.09.2016, 07:08
Кстати в теме периферия есть "старые" мои образы дискет. Ну у меня работало..
Эти дискеты я пробовал. Альтаир стартует. FDISK работает. Диск С видится системой, но при обращении к нему получаем "BDOS Error : bad sector"
CF-ка ранее подобранная на 64М на которой работают обе схемы (PRO,8255).
Тогда я ничего не понимаю:(, что не нравится моей CF флешке? Пишется и читается на нее все без проблем.
С дискеты то Альтаир загружается, диск С системой видится, а загрузка из ПЗУ даже до "счетчика памяти" не доходит. Процесс загрузки зависает с надписью на экране SECTOR 25. В чем различие загрузчиков системы c дискеты и из ПЗУ? может какая команда моей CF карте не нравится?
PS: проверял на двух платах ПРО-шки, на обоих система не грузится с загрузчиком из ПЗУ.
Можно сделать на ПРО из чистой CF по порту F600 загрузочную? Из дискеты развернуть систему на IDE?
Error404
15.09.2016, 18:59
Эти дискеты я пробовал. Альтаир стартует. FDISK работает. Диск С видится системой, но при обращении к нему получаем "BDOS Error : bad sector"
Вот и в эмуляторе такое же при использовании дискетной версии - "BDOS Error : bad sector". Надо посмотреть дебагером, все таки что-то там не то.
Тогда я ничего не понимаю:(, что не нравится моей CF флешке? Пишется и читается на нее все без проблем.
С дискеты то Альтаир загружается, диск С системой видится, а загрузка из ПЗУ даже до "счетчика памяти" не доходит. Процесс загрузки зависает с надписью на экране SECTOR 25. В чем различие загрузчиков системы c дискеты и из ПЗУ? может какая команда моей CF карте не нравится?
SECTOR 25. - это значит MBR и BOOT-загрузчик считались корректно и загрузчик прочитал все сектора системы. Далее управление передается прочитанной системе, она делает инициализации портов и устройств описанные в BIOS2.MAC (подпрограмма COLDINIT, она по выполнению отличается в зависимости от того с чего загрузились, т.к. загрузочное устройство уже не надо инитить, а остальные - надо), в конце COLDINIT запускается тест памяти.
PS: проверял на двух платах ПРО-шки, на обоих система не грузится с загрузчиком из ПЗУ.
Странно это. Прошивки ПЗУ и образ HDD точно последние? В них была правка чтобы п/п F834 Монитора ПРО при загрузке с HDD возвращала код устройства 57h чтобы далее в COLDINIT в зависимости от этого сделать "ветвление". Архив образа HDD должен называться uzix-pro2.zip
- - - Добавлено - - -
Эти дискеты я пробовал. Альтаир стартует. FDISK работает. Диск С видится системой, но при обращении к нему получаем "BDOS Error : bad sector"
Тогда я ничего не понимаю:(, что не нравится моей CF флешке? Пишется и читается на нее все без проблем.
Можно сделать на ПРО из чистой CF по порту F600 загрузочную? Из дискеты развернуть систему на IDE?
Касательно системы загружаемой с дисковода.
Пока не отлаживал, но опытным путем обнаружил что баг с "BDOS Error : bad sector" при доступе к абсолютно нормальному разделу проявляется только в дисководной версии и только если в config.sys были строчки ASSIGN монтирования несуществующих IDE-дисков.
В репозитории добавил систему для загрузки с FDD (образ дискетки (https://github.com/serge-404/AltairDOS/blob/master/man/sysgen.zip)), грузить можно как из MBOOT, так и непосредственно из BIOS ПРО (hint: для этого надо чтобы на DIP-switch стоял режим "FDD","NOMENU","PRO" и со смещением +2Fh от начала диска/образа было значение 01h - рабочая страница ОЗУ). Там же картинки по шагам как имея дискетную версию сделать версию для загрузки непосредственно с IDE (для тех кто почему-то не делает это буквально в два копирования в образе на Винде).
- - - Добавлено - - -
Т.е. имея эти две версии (дискетную и IDE) откуда грузиться можно выбирать с DIP-switch (первый и второй переключатели) и вообще обходиться без Ордос, без меню, а сразу про включению питания попадать в ОС - как и задумывалось авторами.
Задержка в несколько секунд при старте ОС - это оно отсутствующий SD-card инициализирует. Выкидывать это не стал, т.к. еще планирую этот контроллер спаять.
- - - Добавлено - - -
Тупанул я чота. Вопрос то был про версию для 8255 (это я картинки в соседней теме узрел).
Обновил архив на гите (https://github.com/serge-404/AltairDOS/blob/master/man/sysgen.zip), теперь там две версии скомпилированные - для PRO и для 8255. Картинки howto одинаковые в обоих случаях. С CF по схеме на 8255 надо грузиться из MBOOT, стандартный БИОС такую схему подключения IDE не знает.
MBOOT на ромдиске есть
А какой биос знает?
Дмитрий2012
15.09.2016, 19:32
Странно это. Прошивки ПЗУ и образ HDD точно последние? В них была правка чтобы п/п F834 Монитора ПРО при загрузке с HDD возвращала код устройства 57h чтобы далее в COLDINIT в зависимости от этого сделать "ветвление". Архив образа HDD должен называться uzix-pro2.zip
Да, все прошивки и образ диска последние с гитхаб.
В репозитории добавил систему для загрузки с FDD (образ дискетки), грузить можно как из MBOOT, так и непосредственно из BIOS ПРО (hint: для этого надо чтобы на DIP-switch стоял режим "FDD","NOMENU","PRO" и со смещением +2Fh от начала диска/образа было значение 01h - рабочая страница ОЗУ). Там же картинки по шагам как имея дискетную версию сделать версию для загрузки непосредственно с IDE (для тех кто почему-то не делает это буквально в два копирования в образе на Винде).
Вот с дискетки все прекрасно грузится и винт работает отлично:) с одним НО!!! если из программы FDISK выходить нажав кнопку Q или А у меня сейчас происходит сброс компа.
Немного погонял комп, по запускал проги с винта, больше пока глюков в работе с CF картой не заметил. Не понятно почему ОС не хочет грузится загрузчиком из ПЗУ...
Кстати, можно в ордосовскую программу MBOOT$ ввести еще вариант загрузки с ПРО-шечного IDE? Хочу проверить, будет ли из ОРДОС грузится Альтаир с CF карты. Сейчас вроде такой возможности нет или я чего то упустил?
Error404
15.09.2016, 23:04
MBOOT на ромдиске есть
А какой биос знает?
БИОС умеет загружаться с IDE по схеме контроллера IDE-RTC (http://zx-pk.ru/threads/25327-periferiya-quot-orionpro-quot.html?p=814900&viewfull=1#post814900)
- - - Добавлено - - -
Кстати, можно в ордосовскую программу MBOOT$ ввести еще вариант загрузки с ПРО-шечного IDE? Хочу проверить, будет ли из ОРДОС грузится Альтаир с CF карты. Сейчас вроде такой возможности нет или я чего то упустил?
Сделаю такой режим в MBOOT, чуть попозже.
Fdisk не должен вроде вылетать. У меня на реале на этой же версии (но загруженной с HDD PRO) выходит нормально - в приглашение ОС (как и должно, в коде же просто завершение процедуры main).
Я вот думаю - может проще трассировку стартупа какую-нить встроить в ОС? Между загрузкой и тестом памяти.
Error404
16.09.2016, 17:04
Кстати, можно в ордосовскую программу MBOOT$ ввести еще вариант загрузки с ПРО-шечного IDE? Хочу проверить, будет ли из ОРДОС грузится Альтаир с CF карты. Сейчас вроде такой возможности нет или я чего то упустил?
Сделал. (https://github.com/serge-404/AltairDOS/tree/master/App/source/mboot)
Пункт 5.
Дмитрий2012
16.09.2016, 18:04
Сделал.
Пункт 5.
Все тоже самое, загрузка останавливается на SECTOR 25.
Бред какой-то. Ведь должно все работать. Даже не знаю, где искать ошибку...
Я вот думаю - может проще трассировку стартупа какую-нить встроить в ОС? Между загрузкой и тестом памяти.
Хорошо бы выяснить на каком этапе "затык" происходит. Ведь с дискеты то все грузится нормально, винт определяется и с ним можно работать.
Error404
16.09.2016, 18:58
Все тоже самое, загрузка останавливается на SECTOR 25.
Бред какой-то. Ведь должно все работать. Даже не знаю, где искать ошибку...
Хорошо бы выяснить на каком этапе "затык" происходит. Ведь с дискеты то все грузится нормально, винт определяется и с ним можно работать.
Вот как проходит загрузка. https://youtu.be/LTSNWidG9yg причем в режиме Орион-128 на экране появляется мусор, в режиме Орион-ПРО мусора нет.
Во вложении система с трейсом - в ячейке памяти 1:00FF меняется значение от 0(JMP из бутсектора в систему) до 8(начало теста памяти).
Как система зависнет - стопом выйти в монитор-ПРО (через меню) и посмотреть содержимое страницы памяти 1 (считая с нуля) с адреса 0000
- - - Добавлено - - -
По видео, конкретный "улет" кода с пропилом памяти. В каком состоянии у тебя сейчас доработки связанные с расширением функционала порта 0FBh?
Дмитрий2012
16.09.2016, 19:40
Как система зависнет - стопом выйти в монитор-ПРО (через меню) и посмотреть содержимое страницы памяти 1 (считая с нуля) с адреса 0000
Что за стоп? Reset? и как посмотреть содержимое страницы памяти 1 с нуля? не соображу что-то... ведь если смотреть в мониторе ПРО, с 0000 по 1FFFh будут отображаться коды биос ПЗУ
По видео, конкретный "улет" кода с пропилом памяти. В каком состоянии у тебя сейчас доработки связанные с расширением функционала порта 0FBh?
Сейчас проверяю на плате без доработанного порта 0FBh.
Error404
16.09.2016, 19:47
Что за стоп? Reset? и как посмотреть содержимое страницы памяти 1 с нуля? не соображу что-то... ведь если смотреть в мониторе ПРО, с 0000 по 1FFFh будут отображаться коды биос ПЗУ
Как все сложно на этом ПРО :)
Да, ресетом. К слову, на клаве МС7007 это была кнопка СТОП.
В вложении версия ведущая трейс в ячейке 1:4001h, в каких местах какие значения можно посмотреть в BIOS2.MAC по фразе DEBUGINIT
Дмитрий2012
16.09.2016, 20:08
В вложении версия ведущая трейс в ячейке 1:4001h
Предварительно обнулил ячейки памяти с 4000-41FFh. После зависона загрузки нажал сброс. И ничего в памяти не изменилось. Как были нули так и остались. Вроде все делал правильно.
Error404
16.09.2016, 20:18
Предварительно обнулил ячейки памяти с 4000-41FFh. После зависона загрузки нажал сброс. И ничего в памяти не изменилось. Как были нули так и остались. Вроде все делал правильно.
попробуй этй память не занулить, а заполнить например FF. Может хотя бы 0 оно туда пишет? Или оно вообще из бутсектора никуда не выходит?
"SECTOR 25" пишет бутсектор, сразу за этим делает JMP на фрагмент, который в 1:4001 должен записать 0.
Дмитрий2012
16.09.2016, 20:40
попробуй этй память не занулить, а заполнить например FF. Может хотя бы 0 оно туда пишет?
я вот что обнаружил... если во время зависания светодиод на контроллере не гаснет, то в ячейку 4001 ничего не пишется, а если светодиод не горит, то в ячейку 4001h пишется 07, но это бывает редко. В основном, во время зависания светодиод горит постоянно.
видимо придется мне постоянно грузится с дискетки:( все, беру перерыв. мозг уже отказывается что-либо понимать)))
Error404
16.09.2016, 22:16
я вот что обнаружил... если во время зависания светодиод на контроллере не гаснет, то в ячейку 4001 ничего не пишется, а если светодиод не горит, то в ячейку 4001h пишется 07, но это бывает редко. В основном, во время зависания светодиод горит постоянно.
видимо придется мне постоянно грузится с дискетки:( все, беру перерыв. мозг уже отказывается что-либо понимать)))
Очень странно что не доходит до 8. Т.к. между стадиями 7 и 8 всего лишь запись в память нескольких констант. Правда, константы эти в области F3F0..F3FF. А ниже F3F0 сидят системные переменные Монитора (в Орионе-128 они до F3F0 не доходили). Может в ПРО там есть что-то существенное - ХЗ (авторы это не описывают). Но у других работает, и в дисководной версии они тоже инициализируются.
Проверь еще что читается в память бут-загрузчиком начиная с адреса 1:A8F3 (монитором ПРО по ресету после зависа) - должно совпадать с тем что в файле dos.bin со смещением +500h
А если в эмуляторе настроить на использующиеся прошивки и образ диска - какие эффекты?
Дмитрий2012
17.09.2016, 00:45
Проверь еще что читается в память бут-загрузчиком начиная с адреса 1:A8F3 (монитором ПРО по ресету после зависа) - должно совпадать с тем что в файле dos.bin со смещением +500h
Похоже ерунда какая то читается с CF карты вместо dos.bin файла. Есть совпадения кода и есть много мусора. Бывает проскакивает много байт E5 E5 E5...
Непонятно, почему с дисководной версией тогда карта работает. Программы запускаются, работают с диском С.
А если в эмуляторе настроить на использующиеся прошивки и образ диска - какие эффекты?
В эмуляторе все работает четко.
Сергей, а доработки какие-нибудь делал на плате контроллера о которых ksanf(138) писал?
ksanf(138)
17.09.2016, 01:18
Стоп-стоп! Я все доработки убрал нахрен. Только вход дешифратора /WR пустил с выхода регистра /BWR и всё.
Весь глюк был из-за кондёра на /IORQ на материнке (доработка), кондёр убрал, 1834вв55 поставил вместо 580ых.
Кондёры эти... )))))))))))))
Дмитрий2012
17.09.2016, 09:26
Стоп-стоп! Я все доработки убрал нахрен.
А резисторную сборку на 2,2к оставили?
Error404
17.09.2016, 11:57
Непонятно, почему с дисководной версией тогда карта работает. Программы запускаются, работают с диском С.
В эмуляторе все работает четко.
Это загадка. Но я так и думал, что кривизна с чтением. Код загрузчика MBOOT и код BIOS любой из версий CP/M (загрузки с HDD или с FDD) в части низовых подпрограмм (init/read/write) работы с IDE совпадает. Код загрузчика в ПЗУ ROM1 и подпрограммы F834 (readsec) в ROM2 чуть сокращеннее чем в CP/M (в ПЗУ места мало), но ничего критического оттуда не убиралось. Должно работать, по крайней мере с MBOOT (там максимум проверок регистра статуса в процессе операций с HDD).
Мелкосущественная деталь (на что бы такое подумать?) - в CP/M между чтениями секторов будут паузы бОльшие (там логики много) чем в загрузчиках где сектора читаются прям один за другим.
Сергей, а доработки какие-нибудь делал на плате контроллера о которых ksanf(138) писал?
Нет, не делал совсем ничего, только спаял. Вот CF-карту подбирал.
И еще есть мысль - раз там дело в гонках, сравнить бы серии МСХ контроллера IDE-RTC: у кого на каких работает и не работает. Про свой помню такое:
555ИД7, 555АП6, 1531ИР22, две 1531ИР23, остальные не помню (но или 555 или 1533)
Дмитрий2012
17.09.2016, 12:30
Мелкосущественная деталь (на что бы такое подумать?) - в CP/M между чтениями секторов будут паузы бОльшие (там логики много) чем в загрузчиках где сектора читаются прям один за другим.
А можно такой вариант загрузчика MBOOT сделать с паузами между чтениями секторов? чтобы хоть проверить эту версию, изменится что либо или нет.
И еще есть мысль - раз там дело в гонках, сравнить бы серии МСХ контроллера IDE-RTC: у кого на каких работает и не работает. Про свой помню такое:
555ИД7, 555АП6, 1531ИР22, две 1531ИР23, остальные не помню (но или 555 или 1533)
Я пробовал несколько карт, которые нормально работали в IDE на ВВ55 и c которыми нет задвоения с прошечным IDE. Результат одинаковый, не грузится ОС с помощью MBOOT с карты, ни загрузчиком в ПЗУ ROM1.
Контроллер у меня собран полностью на КР1533 серии кроме одной микрухи 555АП6.
Error404
17.09.2016, 16:31
А можно такой вариант загрузчика MBOOT сделать с паузами между чтениями секторов? чтобы хоть проверить эту версию, изменится что либо или нет.
Вот попробуй из вложения. Я код загрузчика для ПРО привел в полное соответствие с версией CPM и одна из MBOOT с задержкой, другая - без
Дмитрий2012
17.09.2016, 16:54
Вот попробуй из вложения.
Отлично, все заработало. Спасибо!!! теперь все грузится с задержкой и без. Даже перестал ребутится комп, когды выходишь из программы FDISK.
Думаю загрузчик с задержкой можно удалять, как неактуальный:)
Эх, теперь бы разобраться с глюком нортона. Я уже как-то писал об этом. Иногда когда в нем копируешь файлы из одной директории в другую. После копирования не все файлы отображаются в панеле. как будто ничего не было скопировано. А если выйти из нортона в ДОС и оттуда посмотреть по директиве DIR, то видно, что скопированные файлы на диске присутствуют.
Error404
17.09.2016, 17:12
Отлично, все заработало. Спасибо!!! теперь все грузится с задержкой и без. Даже перестал ребутится комп, когды выходишь из программы FDISK.
Думаю загрузчик с задержкой можно удалять, как неактуальный:)
Здорово.
Загрузчик в MBOOT более полный (делает больше проверок и установок регистров) чем в ROM-BIOS (там чуть поправленный авторский), подумаю можно ли туда все это впихнуть (места там мало, почти нет).
Эх, теперь бы разобраться с глюком нортона. Я уже как-то писал об этом. Иногда когда в нем копируешь файлы из одной директории в другую. После копирования не все файлы отображаются в панеле. как будто ничего не было скопировано. А если выйти из нортона в ДОС и оттуда посмотреть по директиве DIR, то видно, что файлы на диске присутствуют.
Это оттого, что система поддерживает 512 файлов на раздел, а нортон - только 256. Посмотрю что можно сделать, но это не очень быстро.
Дмитрий2012
17.09.2016, 17:56
Посмотрю что можно сделать, но это не очень быстро.
мы никуда не торопимся, главное потом не забыть поправить;)
А что за ROM диск F монтируется в системе, к которому нет доступа?
Error404
17.09.2016, 19:10
А что за ROM диск F монтируется в системе, к которому нет доступа?
Это доработка на пяти проводниках (http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=882456&viewfull=1#post882456) когда на место 27512 (64к) ПЗУ ROM2 ставится 27080 (1024к) ПЗУ ROM2, и выше 64к размещается CP/M. С такой ПЗУ можно грузиться (MBOOT), а можно просто обращаться в нее за CPM-файлами если загрузился с другого носителя. Т.е. общий смысл одинаковый что был на ревизии512, что теперь на ПРО: в первых 64к ROMDISK/авторскийBIOS а выше - расширения. И в конфиге ОС это расширение описывается единообразно для обоих платформ - как устройство ROM.
- - - Добавлено - - -
А вообще, не хватает картотеки ПО и доработок как на Векторе. Или темы-путеводителя тупо с набором ссылок на посты. Трудно находить что-то что сам же написал какое-то время назад. А уж чужие сообщения - вообще запаришься искать.
- - - Добавлено - - -
Вообще, в этом и вся задумка: чтобы образ CP/M был единым что для ревизии512, что для ПРО. Т.е. одна и та же СF-карта (или одна и та же дискета) при схожем наборе внешних устройств грузилась на обоих платформах одинаково без каких-либо правок даже конфигов (не говоря уже о перезаписи ядра). Пока что так оно и получается. И на этом "движке" дальше я вкручу UZIX, который будет еще более абстрактен т.к. по сути будет приложением CP/M используя ее как BIOS для общения с железкой.
Дмитрий2012
17.09.2016, 19:51
Это доработка на пяти проводниках
точно, что-то совсем из головы вылетело...
А вообще, не хватает картотеки ПО и доработок как на Векторе. Или темы-путеводителя тупо с набором ссылок на посты.
Согласен, действительно не хватает. Темы уже так разрослись, что сложно в них становится ориентироваться. Раньше хоть поиск на форуме прилично работал, а сейчас что-то с этим совсем плохо стало. Да и в темах по сборке, в первых постах уже много неактуальной информации, что еще больше запутывает новичков.
У меня вопрос... решил я в редакторе SED отредактировать файл config.sys , чтобы нортон сам запускался во время загрузки. Так вот, при сохранении файла редактор SED портит его. Добавляет в текст куски какого-то другого файла и мусор. У всех так или я неправильно им пользуюсь? текст сохраняю выходя по ESC из редактора, соглашаясь с предложением сохранить текст.
Я в СР/М новичок. Есть ли еще какие-нибудь не глючные простенькие редакторы текста для СР/М?
Error404
17.09.2016, 21:19
т
У меня вопрос... решил я в редакторе SED отредактировать файл config.sys , чтобы нортон сам запускался во время загрузки. Так вот, при сохранении файла редактор SED портит его. Добавляет в текст куски какого-то другого файла и мусор. У всех так или я неправильно им пользуюсь? текст сохраняю выходя по ESC из редактора, соглашаясь с предложением сохранить текст.
Я в СР/М новичок. Есть ли еще какие-нибудь не глючные простенькие редакторы текста для СР/М?
Редакторов то куча, но я всегда пользовался SED. :) Вроде делаешь все верно: править, затем выход с сохранением. Единственно, после правки перед сохранением уйти со строки которую правил (на всякий случай). И еще полезно предварительно удалить sed.sys где бы на диске он не находился (обычно в текущем юзере и в 15) - в нем могут быть ошметки старых сохранений переменных sed ХЗ с каких времен.
Надо посмотреть что там еще есть из приличных редакторов. Навскидку - хороший редактор в паскале (Jet.com) и совпадает по кнопкам управления с SED (все как в TurboPascal), но он открывает только то что влезает в ОЗУ (примерно до 30кб текста).
Дмитрий2012
17.09.2016, 21:49
И еще полезно предварительно удалить sed.sys где бы на диске он не находился (обычно в текущем юзере и в 15) - в нем могут быть ошметки старых сохранений переменных sed ХЗ с каких времен.
удалил все sed.sys (один был в папке games-zx). Все равно после редактирования портится файл. В эмуляторе также. Может в образе диска файл редактора битый?
OrionExt
17.09.2016, 22:02
Все может быть. Если программа ведет себя не адекватно, я образ перезаливаю. Портить программы старые компы могут на ура. В то время никто не гарантировал сохранность данных на носителе. Разве что на магнитной ленте)
Error404
17.09.2016, 22:46
удалил все sed.sys (один был в папке games-zx). Все равно после редактирования портится файл. В эмуляторе также. Может в образе диска файл редактора битый?
Или операционка косячит. Файл портится по границе в 2 килобайта.
Вроде же не было такого раньше. По крайней мере до доработки для больших файлов.
Я попробовал еще один редактор (http://techtinkering.com/2008/10/21/installing-zde-1-6-a-programmers-editor-for-cpm/) - там такой же эффект.
OrionExt
17.09.2016, 23:00
Это уже статистика. Как же ОС портит?) Тогда ОС все (или почти все) должна портить:v2_eek:
Error404
18.09.2016, 10:01
ХЗ как, но в случае конкретно с редактированием CONFIG.SYS размером 2120 байт, происходит только запись 2048 байт, а "хвостик" в сотню байт не пишется. Но размер указывается верным. Соответственно позже при чтении этого файла в последнем 128-байтном секторе (который не записался но входит в размер файла) лежит мусор от файла который был раньше на этом месте (до CONFIG.SYS). В БДОС этот глюк или в BIOS (flush есть и там и там), я пока не понимаю. Как и не понятно когда он возник (что-то я не помню такого бага). Надо дебажить, а это долго и грустно.
Error404
19.09.2016, 00:45
Надо дебажить, а это долго и грустно.
Вроде нашел и поправил ошибку. Проверяем. Как обычно было - "лучшее - враг хорошего". :)
На гите все обновления (см *.bin) (https://github.com/serge-404/AltairDOS), я обновил и образы для загрузочных дискеток обоих вариантов контроллера IDE (https://github.com/serge-404/AltairDOS/blob/master/man/sysgen.zip). Во вложении образ для загрузки с IDE для ПРО (IDE-RTC) кому надо такой же для загрузки с 8255 сделайте сами (там в одно действие: тупо копирнуть DOS-8255.BIN (https://github.com/serge-404/AltairDOS/blob/master/dos-8255.bin) плагином в образ на системные треки и образ уже записывать на носитель). В образ во вложении киданул несколько текстовых редакторов, все с описаниями. AW - спецом орионовский шыдевр, остальные (включая SED и ТурбоПаскаль с его классным редактором) - универсальные CP/M-овские. Это так, на скорую руку, у меня еще есть (и это не считая монструозных текстовых процессоров типа SuperText).
Дмитрий2012
19.09.2016, 19:08
Вроде нашел и поправил ошибку. Проверяем. Как обычно было - "лучшее - враг хорошего".
Проверил:) На первый взгляд вроде все ок, после сохранения редактируемый файл не портится. Будем тестить дальше.
А в чем было дело? это как то связано с доработкой для больших файлов?
Тут у меня еще вопросик имеется. Хотелось бы получить более подробную информации как правильно подключить плагин ohi.wcx в тотал командере. С подключением плагина odi.wcx проблем не возникает. Непонятно что должно быть прописано в файле ohi.ini при инсталляции плагина. Дело в том, что у меня всегда при подключении это плагина в ohi.ini файле прописывается строчка OScode=C:\Borland\Delphi5\Projects\_OriZEmu\UTILS\ OdiWcx-OhiWcx\system.hdd которую приходится постоянно править ручками. И какие еще файлы должны лежать в папке плагина кроме system.hdd ?
Error404
19.09.2016, 19:45
Проверил:) На первый взгляд вроде все ок, после сохранения редактируемый файл не портится. Будем тестить дальше.
А в чем было дело? это как то связано с доработкой для больших файлов?
Не, большие файлы и связанная с ним дороботка BDOS тут ни причем. Дело было в BIOS: там идет буферизация на чтение и запись связанная с тем, что CPM 2.2 работает сектором в 128 байт, а на IDE пишется сектором в 512 байт. И в одной из доделок интерфейса с IDE там где идет запись (и чтобы записать 128б надо сначала прочитать 512б поверх которых кладется требуемое и результат пишется) я сделал установку номера сектора (LBA) только перед чтением, рассчитывая что при последующей записи (она гаратированно идет в этот же сектор сразу после чтения) все регистры сохранились. Но почем-то это не так, и теперь когда я и перед записью выставляю номер сектора, то все ОК. Возможно дело тут в обращении к регистру головки, который еще и выборку устройства подтверждает.
Тут у меня еще вопросик имеется. Хотелось бы получить более подробную информации как правильно подключить плагин ohi.wcx в тотал командере. С подключением плагина odi.wcx проблем не возникает. Непонятно что должно быть прописано в файле ohi.ini при инсталляции плагина. Дело в том, что у меня всегда при подключении это плагина в ohi.ini файле прописывается строчка OScode=C:\Borland\Delphi5\Projects\_OriZEmu\UTILS\ OdiWcx-OhiWcx\system.hdd которую приходится постоянно править ручками. И какие еще файлы должны лежать в папке плагина кроме system.hdd ?
Параметр OSCode используется только когда архив создается с нуля (по Alt+F5). Почему он перезаписывается (если это так) - ХЗ, я обычно использую уже имеющиеся имиджи и этот режим проверялся уже давным давно. А в имеющийся имидж систему установить из внешнего файла можно простым копированием в спецпапку (http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=885236&viewfull=1#post885236), которое плагин "на лету" перенаправляет в копирование на системные треки (с чтением аналогично). Также в образ диска копируется и бинарный MBR - в спецпапку.
Кстати, вот еще такая мысль: параметр OSCode считывается при старте, и записывается плагином по завершении работы из текущего значения в его памяти. Поэтому если его исправить самим тоталом (плагин уже в памяти) то это значение перезапишется при закрытии Тотала в то, что было при его запуске. Надо исправить INI при незапущенном коммандере.
Файлы должны быть: ohi.wcx, odi.wcx, ohi.ini, odi.ini. Остальные - опциональные (в т.ч. и файлы с кодом ОС). В принципе даже INI опциональные (плагин их пересоздаст если не найдет в домашнем каталоге - откуда запущен), но он их создаст не настроенными.
Разъясните мне пожалуйста один момент.
Орион-ПРО в режиме Орион-128 работает как Орион-128 с Z80card, т.е. адаптированные программы и игры со Спектрума будут работать? И вообще, насколько полная совместимость Ориона-128 и ПРО?
Error404
19.09.2016, 21:44
Разъясните мне пожалуйста один момент.
Орион-ПРО в режиме Орион-128 работает как Орион-128 с Z80card, т.е. адаптированные программы и игры со Спектрума будут работать? И вообще, насколько полная совместимость Ориона-128 и ПРО?
Авторы ПРО съэкономили две микросхемы серии 1533 (а всего скорее сделали это на зло Чистякову с мотивом "наш стандарт стандартнее") и не внедрили полную совместимость по порту FB. Только один бит в этом порту совместим с Z80card - включение прерываний. Из-за этого только ~20% игр ZX работают на ПРО. Причем эта частичная совместимость сделала хуже чем если бы ее не было вообще (или она была бы на другом порту): документировав только один бит они в своих программах тупо ставят все прочие биты в 0, а так нельзя делать на полной реализации порта FB (там при неиспользовании диспетчера по 16к, бит D7 должен быть 1, а не 0), поэтому ПО для ПРО начинает глючить на полной аппаратной реализации порта FB и такой софт надо патчить (мне например мало охота ковыряться в тех программах). Причем они не вынесли управление прерываниями в BIOS как например у меня в Альтаире где это правится условно "в одном месте" (уж в 27512 можно было найти место для подпрограммки и потом ее использовать), а тупо делают это в каждой программе использующей прерывания, прямо по железу, да не по одному разу. По конкретному списку игр которые начинают работать после доделки порта FB может подсказать Дмитрий2012.
- - - Добавлено - - -
Проверил:) На первый взгляд вроде все ок
Еще такой вопрос. Как мы убедились, более подробные подпрограммы IDE в MBOOT грузятся стабильнее чем сокращенные из BIOS ПРО. А не расширился ли с MBOOT список CF-карт/IDE-дисков с которыми ПРО в принципе работает?
Дмитрий2012
19.09.2016, 22:09
У меня с новым образом жесткого диска комп опять стал зависать или сбрасываться при выходе из программы FDISK. С предыдущим образом, где портились файлы было все ОК, специально еще 2 раза проверил. Непонятно, почему так происходит.
А не расширился ли с MBOOT список CF-карт/IDE-дисков с которыми ПРО в принципе работает?
Нет, как не грузились карты с "задвоением" так и не грузятся. IDE диски не проверял, у меня их нет. Да и не интересны они мне из-за шумности и больших габаритов.
По конкретному списку игр которые начинают работать после доделки порта FB может подсказать Дмитрий2012.
Приложил список игр, которые проверил на работоспособность с доработанным портом FB на Орионе-ПРО.
Error404
20.09.2016, 00:49
У меня с новым образом жесткого диска комп опять стал зависать или сбрасываться при выходе из программы FDISK. С предыдущим образом, где портились файлы было все ОК, специально еще 2 раза проверил. Непонятно, почему так происходит.
Такое ощущение что это нортон глючит (не отрабатывает резидентный возврат в нортон, причем после второго запуска чего угодно). Из командного режима все нормально запускается и выходит, хоть fdisk хоть что угодно. Странно что это раньше не воспроизводилось.
Киньте в меня, пожалуйста, приличный турбопаскаль под альтаирдос :)
Error404
06.10.2016, 16:14
Киньте в меня, пожалуйста, приличный турбопаскаль под альтаирдос :)
Вот в этом образе (http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=885635&viewfull=1#post885635) есть (но сам образ под IDE-RTC). Борландовский Турбопаскаль, он под любую CP/M с драйвером VT52 (какой и есть в альтаирдос).
Еще кладу во вложении AY-плеер ASM,SND,STM,ST файлов для портов ПРО (это unipl2 поправленный Дмитрием2012) если еще сам не нашел такой ранее по треду.
Какой-то интересный JET-PASCAL... Нигде не нашел про него упоминания. А те паскали, что на дискетах для ПРО, получается под Альтаиром не идут?
Error404
06.10.2016, 19:07
Какой-то интересный JET-PASCAL... Нигде не нашел про него упоминания.
Это ж класcика - Borland Turbo pascal 3.1 (есть полный аналог для MS-DOS). Это из этих паскалей и вырос Delphi.
А те паскали, что на дискетах для ПРО, получается под Альтаиром не идут?
В свою очередь спрошу: а это что?
В свою очередь спрошу: а это что?
Куча разных версий паскаля, но под продос...
Error404
06.10.2016, 19:25
Куча разных версий паскаля, но под продос...
Есть образ где можно посмотреть? И описание есть ли?
Ну навскидку вот:
58453
58454
58455
И знаю, что в завалах еще образы валяются... По крайней мере для ПРО образы дискет как раз со средами разработки.
Error404
06.10.2016, 20:04
Посмотрел Turbopro.rar - то же самое (Borland Turbo pascal 3.x) только с драйвером, который вместо инверсии делает покраску букв (а для этого пришлось использовать 4-цветный режим, буквы то 6 битов в ширину а не 8).
Турбо128 - тоже самое, только для Ориона-128 (казалось бы какая разница, ведь и там и там CP/M? ан нет)
- - - Добавлено - - -
Дистрибутив для VT52 будет работать на любом VT52, в отличие от.
А в остальном все то же самое.
- - - Добавлено - - -
Диск с Паскалем МТ-плюс что-то какой-то попорченный, но сам пакет знакомый, тоже классика CP/M (но очень тяжеловесный в сравнении с ТурбоПаскалем)
Ну значит завтра залью JET :)
Попробую перенести AYPLAY в Альтаир ДОС, но это будет не скоро. Я не знаю как обращаться к дисками в СР/М .
А если как вариант пока сделать передачу файла как аргумента для программы?
Добавил во вложении исходник PLAY. Там прикольно реализована работа с файлами...
58466
Дмитрий2012
11.10.2016, 20:15
Вроде на Орион-ПРО проигрывателя файлов формата .PT2 еще нет. Немного поправил плеер Чистякова (под Альтаир ДОС порт 3Е..3F), для проигрывания .PT2 файлов. Надеюсь ничего не поломал. По позже попробую еще сделать плеер для проигрывания файлов формата .PT3
---Добавлено--- 23.10.2016
Заменил файл. Добавил бегущую строку, поправил код для работы на Орионе-ПРО с доработанным портом 0FBH.
В эмуляторе погонял - поёт ;), завтра на реал залью. Может тогда уже перелопатить PLAY под форматы pt2 и pt3, как основные использующиеся форматы трекерной музыки, причесать внешний вид (название в окне программы не в тему)... но это уже так, хотелки...
- - - Добавлено - - -
Ну или только pt3, тогда на ПРО можно сразу заливать несколько тысяч треков
- - - Добавлено - - -
Ну или только pt3, и на ПРО можно сразу заливать несколько тысяч треков :)
Error404
11.10.2016, 22:03
Вроде на Орион-ПРО проигрывателя файлов формата .PT2 еще нет. Немного поправил плеер Чистякова (под Альтаир ДОС порт 3Е..3F), для проигрывания .PT2 файлов. Надеюсь ничего не поломал. По позже попробую еще сделать плеер для проигрывания файлов формата .PT3
На правах автора исходного play - мифического персонажа из группы BCinc - задам свой обычный вопрос: исходники поправленного будут выложены? :rolleyes:
А ведь на Орионе не хватает хорошего проигрывателя трекерной музыки. Понятно, что сам pro tracker никто портировать не будет, но хороший проигрыватель думаю вдохнул бы вторую жизнь... Открыть для всех так сказать музыкальную сторону Ориона :)
Error404
11.10.2016, 22:48
Нет никакой музыкальной стороны Ориона (в том смысле что нет ни оригинальных аппаратных решений, ни оригинальных музыкальных файлов, как нет и музыкантов). Сделать нестандартные порты - это не оригинальность, это чудачество (мягко говоря). :)
Я не про это... Просто имея проигрыватель pt2 я могу теперь слушать на ОрионеПРО 5447 треков, что нашел у себя в архивах на PC. По крайней мере стало доступно то, что делалось на спектруме. А pt3 звучит еще круче...
Дмитрий2012
11.10.2016, 23:20
А ведь на Орионе не хватает хорошего проигрывателя трекерной музыки.
Согласен. Не хватает именно универсального проигрывателя, хотя бы поддерживающего форматы .PT2 и .PT3 с загрузкой файлов с дисковода и жесткого диска. Я написать такой проигрыватель пока не способен, может позже (если раньше кто-нибудь нас не порадует подобным софтом), что-то напишу, и то сомневаюсь в своих силах. Я не программист, опыта совсем нет. По мере возможности потихоньку изучаю ассемблер и пытаюсь, что-то писать. Дается все с трудом:(
На правах автора исходного play - мифического персонажа из группы BCinc - задам свой обычный вопрос: исходники поправленного будут выложены?
Исходники перевел в ТАSМ, мне как-то проще в нем писать. Ссылку на них отправлю в личку. Здесь выкладывать не хочу. Там такое понаписал … что до сих пор удивляюсь как это еще заработало)))
Error404
12.10.2016, 14:07
я могу теперь слушать на ОрионеПРО 5447 треков
Фигассе :v2_dizzy_aaaaa: , десять лет надо чтобы все PT2 послушать. А выложи куда-нибудь? А то на большинстве ресурсов оно все как-то разрозненно лежит.
А ведь кроме PT2/PT3 (и уже звучавших на орионе ST/STM/SND/ASM) еще куча форматов - AY,YM,PSG, еще какие-то. Интересно, есть ли ресурс где можно Z80 плееры в исходниках для этих форматов поиметь?
http://bulba.untergrund.net/music.htm
На этом сайте лежат и исходники в том числе, вместе с описаниями форматов. Так что вот ;)
Надо выкачать этот сайт, а то потом он исчезнет и "привет".
OrionExt
12.10.2016, 16:58
VGMPlay для MSX (https://bitbucket.org/grauw/vgmplay-msx). Формат файлов - VGM и VGZ. Не знаю насколько распространенный формат, зато поддерживает куча специфический музыкальный чипов. Так сказать с заделом на будущее.
Error404
12.10.2016, 17:15
http://bulba.untergrund.net/music.htm
На этом сайте лежат и исходники в том числе, вместе с описаниями форматов. Так что вот ;)
Я там был. В исходники смотрел (несколько лет назад, правда) - там у автора исходники его плеера на Дельфи, т.е. исходники GUI. А собственно проигрыватели которые от Z80 - в машкоде, выполняются внутри Дельфи/Паскаль кода в простецком(с ошибками) эмуляторе процессора Z80. Надо при случае еще раз сходить глянуть, конечно. А муз файлы я оттуда вчера пытался взять, PT2 там нет вообще, часть ссылок на ресурсы дохлые, кое-какие PT2 нашел по ссылке на ZXTUNES, но на нем крайне убогий каталогизатор, например возможности отфильтровать по типу кодирования нет вовсе, ковыряйся по авторам. Что, не тот формат? ну, не повезло, смотри следующего. :)
Ну как же нет PT2?
58492
В этом архиве и есть... Из 23000 треков 5500 и есть pt2...
А в архиве PTxTools.7z исходники спектрумовских проигрывателей
Дмитрий2012
12.10.2016, 21:54
Выкладываю для теста проигрыватель .PT3 файлов для Альтаир ДОС. При кодинге столкнулся с некоторыми проблемами. Плеер работал нестабильно, подглючивал. С помощью Сергея (Error404) надеюсь все ошибки удалось устранить. Спасибо ему за консультации. До реала еще не добрался и на нем проигрыватель не тестировал.
Добавлено:
Заменил файл. Теперь плеер работает и с доработанным портом FBH на Орион-ПРО. Убрал часики с экрана при старте плеера, так они все равно не работают при воспроизведении файла. Добавил бегущую строку с информацией из тегов файла. Также убрал лишний код из плеера, оставшийся от оригинальной версии.
Протестировал play-pt3 на реале, всё нормально поётся. Можно замечание одно... Желательно добавить внизу программы (где про чистякова) вывод полного названия трека из тегов, как это сделано в ayplayer. Восьми букв названия трека реально мало...
- - - Добавлено - - -
Ну и длительность бы впилить... ;)
Error404
18.10.2016, 21:13
Все вложения плагина ODI/OHI WCX из сообщений удаляю. Актуальные на GitHub (https://github.com/serge-404/OriZEmu/tree/master/UTILS/OdiWcx-OhiWcx). Сегодня закоммитил туда версию "в помощь разработчикам ОС" - теперь в образе диска или партиции кроме Юзеров(каталогов CPM) еще есть спецкаталог где в виде виртуального файла можно копировать в обе стороны из/в системные дорожки (правка в ODI.WCX). И аналогично есть доступ к MBR (OНI.WCX). Копирование из образа копирует "как есть", а копирование в образ проверяет и по необходимости сохраняет системные области (в MBR это информация о разделах, в системе - DPB, VolLabel, UserNames, FileDates), делает проверки на переполнение (чтобы не грохнуть каталог) и т.п.
Т.е. под Виндой компильнули mbrboot.bin или dos.bin, затем плагином (Тотал командером) закинули в образ. Раньше мне приходилось делать sysgen под CP/M power-ом или fdisk-ом (там в принципе все аналогично, но более муторно), как дело дошло до многочисленных правок ОС, стало понятно что надо что-то делать для облегчения себе жизни. :)
Вот это по прежнему актуально:
Сообщение от Error404 Посмотреть сообщение
перед запуском TC/DC надо удалить все старые - odi.wcx, odi.wcx0, odi.wcx1, odi.wcx2, odi.wcx3
Поправил плагин на GitHub (https://github.com/serge-404/OriZEmu/tree/master/UTILS/OdiWcx-OhiWcx).
Во-первых избавился от необходимости перезапускать ТоталКомандер при работе с несколькими образами hdd (*.OHI) - все перевел на динамические переменные.
Во-вторых, теперь им можно управлять содержимым прошивок "расширенных ROM" - когда в Ромдиске Ориона-128 или в микро-ромдиске в РОМ2 Орион-ПРО выше 64к расположена CP/M (для больших ПЗУ типа 27080/27801). Можно:
- удалять/копировать содержащиеся в прошивке файлы CP/M,
- смотреть информацию (занято/свободно и т.п.)
- заливать или читать систему CP/M с системных дорог,
- удалять/копировать тамошние файлы Ордос для обоих вариантов 128/ПРО.
Последние 2 пункта - через спец.подкаталог "UseThis_ToAccess_SystemTracks" - там и система в виде файла, и подкаталог с ордосовским барахлом.
Настраиватся аналогично прочим форматам: выбираете в настройках плагинов Тотала какое расширение (я настроил себе "ROM") обрабатывать плагином ODI.WCX, ну и перезаписываете плагины на новые (оба, удалив все старые *.WCX*).
Вот тут для примера ромдиск для Ориона-128 (https://drive.google.com/file/d/0B3S0wVWNPLrwOFNvX0FaMldnUzA/view?usp=sharing) (в нем Альтаир-ДОС для схемы на ВВ55) и ромдиск для Ориона-ПРО (https://drive.google.com/file/d/0B3S0wVWNPLrwNlg2dWcwZHRYNFk/view?usp=sharing) (в нем Альтаир-ДОС для схемы на IDERTC)
OrionExt
18.10.2016, 22:51
Вот тут для примера ромдиск для Ориона-128 (https://drive.google.com/file/d/0B3S0wVWNPLrwOFNvX0FaMldnUzA/view?usp=sharing) (в нем Альтаир-ДОС для схемы на ВВ55)
Да уж. Не такая уже тривиальная задача вышла собрать имидж ром-диска с исходников АльтаирДОС. Особенно если учесть что с АльтаирДОС я особо и не разбирался. Мое ознакомление с АльтаирДОС, остановилось на уровне запуска программ.
Сборка в процессе…
Свежачок:) Вот же лень моя! Завтра потестю на реале. Спасибо.
- - - Добавлено - - -
Еще будет повод проверить УФ стиралку за 2$.
Заменил файл. Теперь плеер работает и с доработанным портом FBH на Орион-ПРО. Убрал часики с экрана при старте плеера, так они все равно не работают при воспроизведении файла. Добавил бегущую строку с информацией из тегов файла. Также убрал лишний код из плеера, оставшийся от оригинальной версии.
В эмуляторе при воспроизведении виснет. Или это не показатель и на реале нормально работает?
Дмитрий2012
23.10.2016, 11:27
или на реале нормально работает?
Проверял на реале с доработанным портом FBH и без доработки. Все работает. В эмуляторе emu тоже все работает, а вот в Оrion/Z эмулятор у меня почему то плеер виснет во всех конфигурациях (Orion-Pro v3.10 и Orion-Pro v3.20).
---Добавлено---
Заменил файл плеера .PT2файлов. http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=888197&viewfull=1#post888197
А просмотрщик картинок под АльтаирДОС есть?
Error404
23.10.2016, 18:14
А что, на Орионе есть картинки?
Я даже так спрошу: на Орионе есть графика где имеется смысл в картинках?
:)
- - - Добавлено - - -
Разве что ivagor что-нибудь напишет под графику ПРО.
Меня вопросы графики не интересовали никогда за исключением игр, но в играх с Z80 серьезная графика возможна только на видеоадаптере "с прибамбасами" (а это явно не про Орион), либо в небольшом окошечке (с размером экрана примерно как у Спека).
- - - Добавлено - - -
Проверял на реале с доработанным портом FBH и без доработки. Все работает. В эмуляторе emu тоже все работает, а вот в Оrion/Z эмулятор у меня почему то плеер виснет во всех конфигурациях (Orion-Pro v3.10 и Orion-Pro v3.20).
Вроде же на более ранних версиях PLAY-PT2 не зависало? При случае посмотрю что за фигня с эмулятором.
Вообще, там плееры используют недокументированные команды с половинками индексных регистров, может в этом дело...
Заменил файл плеера .PT2файлов. http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=888197&viewfull=1#post888197
Кстати, вот в этом архиве:
http://bulba.untergrund.net/PTxTools.7z
есть как отдельные плееры для PT2, PT3, так и плеер PTx, который по заявлению автора универсальный и проигрывает оба формата (PT2, PT3), единственно - при инициализации битик выставить какой из форматов подаем на вход проигрывателя (можно тупо по расширению файла его выставлять, либо в том же архиве есть исходник детектора типа файла по сигнатурам внутри файла - UniSearch). Может, запилишь универсальный PLAY-PTx? В идеале чтобы еще и на тип схемы включения AY настраиваться (3E..3F / BFFD..FFFD).
Кстати, там еще описан бит при инициализации, ставя который можно или зациклить мелодию, или проигрыватель возвращает управление по завершении паттернов исходного файла. Т.е. можно сделать переход к следующему файлу по завершении текущей мелодии, т.е. получится плеер. Можно даже обойтись без плейлистов - тупо накидал нужных файлов в определенный User, да и проигрывай один за другим.
Дмитрий2012
23.10.2016, 20:16
Вроде же на более ранних версиях PLAY-PT2 не зависало? При случае посмотрю что за фигня с эмулятором.
Да, все работало и не зависало. После того, как вставил в обработчик прерывания печать бегущей строки на экран, прога стала зависать в Оrion/Z эмуляторе, но в emu и на реале все работает нормально.
Кстати, вот в этом архиве:
http://bulba.untergrund.net/PTxTools.7z
есть как отдельные плееры для PT2, PT3, так и плеер PTx, который по заявлению автора универсальный и проигрывает оба формата (PT2, PT3), единственно - при инициализации битик выставить какой из форматов подаем на вход проигрывателя (можно тупо по расширению файла его выставлять, либо в том же архиве есть исходник детектора типа файла по сигнатурам внутри файла - UniSearch). Может, запилишь универсальный PLAY-PTx? В идеале чтобы еще и на тип схемы включения AY настраиваться (3E..3F / BFFD..FFFD).
Не, на такой подвиг я еще не готов, маловато знаний и опыта в программировании. К универсальному плееру PLAY-PTx уже присматривался :) пока не удается его заставить работать. Как правильно переписать код под ТАSM (The Telemark Assembler http://www.ticalc.org/archives/files/fileinfo/250/25051.html ) пока не соображу. А самое непонятное для меня обращение к подпрограмме PTDECOD, в которой прописано JP #C3C3. Куда этот переход делается ...?
OrionExt
23.10.2016, 20:54
А самое непонятное для меня обращение к подпрограмме PTDECOD, в которой прописано JP #C3C3. Куда этот переход делается ...?
Очевидно безусловный переход на $C3C3:)
Этот код попахивает ZX-ом. Там как раз с $C000 страницы память переключаются. С адреса $C000 – это любимое место для ау-плеера. Плеер тот живет в какой-то (не помню) странице выше $FFFF.
- - - Добавлено - - -
Можно исходник?
Дмитрий2012
23.10.2016, 21:00
Очевидно безусловный переход на $C3C3
это все понятно. А вод куда этот переход делается, что там за код по этому адресу и откуда он берется?
Можно исходник?
Выше ссылка уже была http://bulba.untergrund.net/PTxTools.7z интересует плеер из папки PTxPlay. В ней листинги под разные компиляторы. Хотелось бы код под TASM (The Telemark Assembler http://www.ticalc.org/archives/files...250/25051.html )переделать:)
OrionExt
23.10.2016, 21:35
Ага.
Помню ради интереса в IDA один такой плеер работающий с $С000, разобрал. И катал его по всей памяти 0000…FFFF. Если не вдаваться в подробности кодирования формата муз. файла, это просто.
- - - Добавлено - - -
Это уже завтра, посмотрю:)
- - - Добавлено - - -
На вскидку. Ничего интересного в подпрограмме PTDECOD не нашел.
PTDECOD AND A …
Может в этом проблема понимания - run in RAM only (self-modified code). С такими подходами не один ассемблер не поможет.
Error404
23.10.2016, 21:46
А самое непонятное для меня обращение к подпрограмме PTDECOD, в которой прописано JP #C3C3. Куда этот переход делается ...?
насколько я помню, автор просто имеет слабость к числу C3. Часто там где самомодифицирующийся код, он в регистры как бы загружает C3, C3C3, JP делает на этот на адрес С3С3. На самом, при выполнении деле адрес и константы в этих местах уже будут другими - такими которые туда сам плеер заранее подставит. Это легко понять по тому что перед тем оператором стоит
BLABLA .equ $+1 # текущий адрес компиляции +1
jp C3C3
а где-то ниже (или выше) по тексту, но раньше по времени выполнения:
ld hl, address # реальный адрес перехода
ld (BLABLA), hl
с константами аналогично
- - - Добавлено - - -
Там есть более другие интересные вещи, например загрузка в менонике в 8-битный регистр 16-битного значения ( ld a, address). Или например выражение
.db 1, 2, 1234h, address
где оба раза address - 16битное число (ну и 1234h, понятно, тоже)
М80 например не позволяет такого делать уже на этапе компиляции (надо писать ld a,byte, или DW, а DB - только для байтов и строк и т.п.), не говоря уж о том что там может быть при выполнении после компилера который такое позволяет.
OrionExt
23.10.2016, 22:24
Ага. Еще автор заныкал self-modifie (возможно. надо с трансляцией кода запускать). Ну да ладно. Кодеры 90г. А теперь кому интересно. Мучаются. Да и старичкам это не орех в дверном косяке расколоть:v2_dizzy_botan:
Дмитрий2012
23.10.2016, 22:25
Мда, как все сложно…
Если ничего не получится с универсальным плеером PTxPlay, тогда для проигрывания .PT2 и .PT3 файлов придется писать прогу используя уже проверенные проигрыватели .PT2 и .PT3 файлов. Анализировать, какой файл грузим в память (.PT2 или .PT3) и после запускать соответствующий плеер. При этом немного вырастит объем кода, но это не страшно.
Но все же хотелось бы иметь и универсальный PTxPlay:)
OrionExt
23.10.2016, 22:35
BLABLA .equ $+1
Видимо так и ныкал. Асм не хитрый язык.
- - - Добавлено - - -
Выход. Есть. Я тут ссылку давал на экзотический плеер для мсх. Тама все красиво написано на асме(сам не разбирался). Так сказать почувствуй себя гуру.
Error404
23.10.2016, 22:39
Но все же хотелось бы иметь и универсальный PTxPlay:)
там же в архиве есть уже странслированный на C000 бинарь. Можно во-первых попробовать его запустить как проигрыватель (для проверки, сам по себе он на этих адресах не слишком удобен - нужна возможность транслировать на любые адреса), а во-вторых этот код можно использовать для сравнения истинности компиляции другими ассемблерами: добиваешься компилируемости "в принципе" (т.е. без ошибок), транслируешь на С000, сравниваешь по содержимому с Бульбовским, если побайтно не совпало разбирашься почему (где-то используемый ассемблер странслировал не как Бульбовский), подгоняешь.
Как то так.
OrionExt, Error404, игрушки-это хорошо, но стоило отметить, что версия для ориона-z (или как он там правильно называется), а не для про. Возможно будет работать в доработанном (порт FB) про, но, например, emu такое не поддерживает (в итоге запустил в конфиге орион-sd).
Error404
26.10.2016, 09:34
OrionExt, Error404, игрушки-это хорошо, но стоило отметить, что версия для ориона-z (или как он там правильно называется), а не для про. Возможно будет работать в доработанном (порт FB) про, но, например, emu такое не поддерживает (в итоге запустил в конфиге орион-sd).
То так. Отцепил сообщения по Licence To Kill / James в ветку для Ориона-128.
Дмитрий2012
28.10.2016, 18:54
Оставлю это здесь, вроде еще не выкладывал на форуме. Пропатчил под порты ПРО 2 демки - DEMO MUSIC MSX1 и DEMO MUSIC MSX2. Запускал из OSDOS, в PRODOS не работает, так как используется другая страница памяти.
А вот такой вопрос... Когда разрабатывался ПРО, какая операционка планировалась для hdd? Так понимаю кроме АльтаирДОС вариантов больше нет?
OrionExt
06.11.2016, 23:24
А не как=) Это у хозяев ПРО можно было бы спросить. Это 90 годы...
- - - Добавлено - - -
Исторически ПРО интересна. Но на то время убога…. Это честно. АТM – был круче не порядок=)
- - - Добавлено - - -
Тут называют радио любительским РК-86. Не фига. Орион был первым любительским компьютером для страны в тот не долгий период. С год. Который можно было купить (собрать) на радио рынке (любом). Потом ZX и все понеслось.
Ну как то так=)
Может кому-то пригодится в творчестве :) Код преобразования атрибутов цвета ZX -> Орион:
; ПРЕОБРАЗОВАНИЕ АТРИБУТОВ
LDAX D
ANI 21H
MOV C,A
LDAX D
RAL
ANI 94H
ORA C
MOV C,A
RRC
RRC
RRC
RRC
ANI 08H
ORA C
MOV C,A
LDAX D
RRC
ANI 02H
ORA C
MOV C,A
LDAX D
RLC
RLC
ANI 40H
ORA C
На входе в рег. паре [DE] адрес ячейки с ZX-атрибутами, на выходе в [A] переконвертированный вариант в Орионовский. Код унипроцессорный (i8080/Z80).
Собственно, преобразование следующее:
D0 -> D0
D1 -> D2
D2 -> D1
D3 -> D4
D4 -> D6
D5 -> D5
D6 -> D3 -> D7
Ссылки по теме:
https://ru.wikipedia.org/wiki/Видеорежимы_ZX_Spectrum
http://www.wikiznanie.ru/wikipedia/index.php/Устройство_ZX_Spectrum#.D0.98.D0.B7.D0.B E.D0.B1.D1.80.D0.B0.D0.B6.D0.B5.D0.BD.D0.B8.D0.B5
Можно немного сократить и ускорить.
atrzx2o - используются те же регистры, что и в оригинале
atrzx2o2 - используется еще и B, на байт длиннее atrzx2o, но еще чуть быстрее.
Если не оформлять в виде процедур, а инлайнить, то очевидно нужно убрать завершающий ret, а условный возврат заменить на jp
Просмотрщик спековских картинок для PRODOS (для альтаира тоже собираюсь, но пока не сделал). Запускать из командной строки с названием картинки, например
zxview mminer.scr
Реализована пара фишек:
1. Поддерживается мигание (FLASH)
2. На время просмотра правится палитра на предмет градаций черного (актуально для мультикарты и эмулятора), перед выходом восстанавливается дефолтная. Т.е. не нужно дополнительно запускать перед просмотром blackfix
Для примера приложены 3 картинки с миганием.
Код не очень, но на первый взгляд работает.
Не прошло и полгода и я сделал "универсальный" вариант пары msxных игрушек (http://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=880373&viewfull=1#post880373) - теперь запускаются (по крайней мере в эмуляторе) и из PRODOS и из AltairDOS. Надеюсь на реале тоже все ОК
Кое-кто тут попросил для моего эмулятора конфиг Ориона-Про с поддержкой TurboSound - получите и распишитесь: 60859
Но, господа! Слушать AY/TurboSound лучше всё-таки не в эмуляторе!
Эмулятор никогда не передаст всех тонкостей реальной микросхемы.
З.Ы. не сразу нашёл загрузочный диск с Альтаир-ДОС для Ориона-Про, на всякий случай ссылка: sysgen.zip (https://github.com/serge-404/AltairDOS/blob/master/man/sysgen.zip)
OrionExt
02.05.2017, 21:42
Смешно. Ведать луна в инверсии)))
Хотя пора Орион переводить с рельс 3 шт. PPI.
Дмитрий2012
09.06.2017, 20:17
Оставлю это здесь. Может кого то заинтересует данный девайс.
Приобрел себе вот такую штуковину от TS-Labs http://forum.tslabs.info/viewtopic.php?f=6&t=687 Проект потихоньку развивается. По ссылке все доступно расписано, что может данная карта и что планируется сделать.
Написал для Ориона-ПРО конфигуратор карты. Благодаря помощи TS-Labs сделал возможность обновлять прошивки для карты прямо на Орион-ПРО без всяких программаторов. За что ему огромное спасибо.
Выкладываю для сравнения записи как звучит карта на Орион-ПРО, на пентеве и записи с реальных чипов. Качество моих записей не важное. Есть помехи в виде шумов, гула. Не могу избавиться от наводок, которые появляются когда вставляю аудиокабель в аудиокарту на PC. https://drive.google.com/file/d/0B7xjYWTXlb9mV1hpUDl4SVYyUjA/view?usp=sharing осторожно, архив 1,5 гига.
Дмитрий2012
24.12.2017, 21:16
Оставлю это здесь...
Проигрыватель pt2, pt3 файлов и просмотрщик картинок с ZX-SPECTRUM в формате .scr для ORDOS V7. Приложил образ жесткого диска с ORDOS V7 и небольшим софтом на нем. Кому интересно как работает ORDOS V7 можно посмотреть в эмуляторе от b2m. данные для моего диска в конфиге эмулятора drive[0].geometry=980C8H32S, хотя можно оставить и по умолчанию, просто объем диска будет меньше.
Образ диска https://drive.google.com/file/d/1p6To8Jx0F8xhLT-QLsy0S-xoy5oOt13S/view?usp=sharing
+Добавлено+
Также оставлю здесь просмотрщик картинок формата .O32 с HDD под ORDOS V7. Наличие мультикарты обязательно!!!
https://www.youtube.com/watch?v=zOH9WG5b9Mw&t=6s
Error404
24.12.2017, 22:50
Оставлю это здесь...
Проигрыватель pt2, pt3 файлов и просмотрщик картинок с ZX-SPECTRUM в формате .scr для ORDOS V7. Приложил образ жесткого диска с ORDOS V7 и небольшим софтом на нем. Кому интересно как работает ORDOS V7 можно посмотреть в эмуляторе от b2m. данные для моего диска в конфиге эмулятора drive[0].geometry=980C8H32S, хотя можно оставить и по умолчанию, просто объем диска будет меньше.
Образ диска https://drive.google.com/file/d/1p6To8Jx0F8xhLT-QLsy0S-xoy5oOt13S/view?usp=sharing
Как будет Ордос v7, v8, vX работать и так понятно - двухпанелька и ордосовские файлы, только носитель другой подложен. В этом смысле у Denn поинтереснее сделано. Ты лучше скажи, сорцы проигрывателей/просмотрщиков будут? Или версия для CP/M. Но лучше сорцы. И вообще, заведи себе страничку на github, у тебя же уже программ явно больше одной.
Ну, в-общем сделал те правки для PRO-шного IDE, в эмуляторе работает.
Пока что на условной компиляции (т.е. или IDE8255 на порту F600 или IDE-RTC от PRO). Универсально (чтобы оба одновременно) - слишком долго, но по прежнему в планах.
Образ диска для загрузки тут (https://drive.google.com/file/d/0B3S0wVWNPLrwVHZuT2dEUkd4X1k/view?usp=sharing)
Исходники ОС и ROM-ы для ПЗУ1 и ПЗУ2 с последними правками на GitHUB (https://github.com/serge-404/AltairDOS)
IDEBDOS там тоже поправленный - от ksanf(138)
Можно ли как-то получить исходники ROM1? Перекопал всю тему, ссылки битые...
PS: Нужно для отладки своего варианта железа - вылезли косяки, пытаюсь выяснить причину пошагово. Результат декомпила в IDA не радует кучей переменных в памяти и хз какими функциями :) Всё это додумывать самому при доступных сырцах - мазохизм...
Error404
04.08.2018, 23:49
Можно ли как-то получить исходники ROM1? Перекопал всю тему, ссылки битые...
PS: Нужно для отладки своего варианта железа - вылезли косяки, пытаюсь выяснить причину пошагово. Результат декомпила в IDA не радует кучей переменных в памяти и хз какими функциями :) Всё это додумывать самому при доступных сырцах - мазохизм...
Полный исходник я не помню был ли у меня. Помнится был какой-то кусочек с загрузчиком с HDD, но я его тут где-то брал, выкладывал кто-то из форумчан. А ROM1 и ROM2 я правил прямо в бинарнике вприглядку в тот кусочек исходника и в свои наброски. Думаю, на диске ОрионПРОшного софта от CHRV были те исходники в полном виде.
Полный исходник я не помню был ли у меня. Помнится был какой-то кусочек с загрузчиком с HDD, но я его тут где-то брал, выкладывал кто-то из форумчан. А ROM1 и ROM2 я правил прямо в бинарнике вприглядку в тот кусочек исходника и в свои наброски. Думаю, на диске ОрионПРОшного софта от CHRV были те исходники в полном виде.
Если не сложно - можешь кинуть образ или ссылку? Я-то в душе не чаю, что за образ такой даже =/
Пока вот нашел свой косяк в реализации логики ПРОшки - уже исправил и копаю дальше. ПОка что цель - полноценная работа ROM1-BIOS. Только после этого буду дальше крутить платы. Не охота потом сидеть со скальпелем и паяльником...
http://orion128.in.ua/page05.htm
http://orion128.in.ua/page05.htm
Спасибо за ссылку, качаю. А то самому долго додумывать всё это :)
MSXная версия игрушки yazzie (https://zx-pk.ru/threads/31173-yazzie-msx.html?p=1039074&viewfull=1#post1039074) с яндексовского конкурса почти работает в imsx. Что не работает: нет звука и не видно заставки. Поэтому после старта просто нажимаем пробел, пока не перейдем к игровому процессу. За всю игру не скажу, а первый уровень я прошел.
Дмитрий2012
15.12.2019, 18:18
Дошел с ходу до 9 уровня. Подтормаживает, но играбельно. "Газку" бы немного прибавить и звук, было бы вообще шикарно.
Звуков, к сожалению, не будет, игрушка в основном пишет в порты AY напрямую, мимо bios, ее надо хакать для звука.
Насчет скорости - я собирался сделать отдельную ускоренную версию без цвета, вернее с 3 цветами: фон, тайлы и спрайты. Когда-нибудь может дособерусь, но там своя проблема - картинка будет бедная, для yazzie вряд ли подойдет. И эта версия будет только для мультикарты с палитрой.
Дмитрий2012
15.12.2019, 19:51
ivagor, может видел уже... Тут https://zx-pk.ru/threads/31172-yazzie-48-128-pentagon.html DenisGrachev выложил исходники для спектрума. Используя их сложно сделать версию для прошки с мультикартой? Я так понял в игре используется "мультиколор"?
Я склоняюсь к тому, чтобы хакнуть msxную версию, это будет намного быстрее и проще, чем переделывать спековскую. Заставка и звук будут, а вот скорость останется как есть, увы.
Black Cat / Era CG
15.12.2019, 21:21
Попросите, он скорее всего и исходники этой версии может дать для таких дел.
Хакнул yazzie, заставки и звук теперь есть. Музыку на заставке слушать тяжело, т.к. медленно. Но игровой процесс со звуком все же веселее.
Звук хакнул только под AY Пушкова, без спековских портов. Если когда-нибудь сделаю еще версию imsx, то скорее всего уберу из него поддержку спековских портов.
Убрал старую версию, новая здесь (https://zx-pk.ru/threads/13744-orion-pro-emulyator-imsx.html?p=1039227&viewfull=1#post1039227)
- - - Добавлено - - -
Название архива неудачное, собирался сделать корректную версию, чтобы только с вызовами BIOS без out, а в итоге сделал версию только для ПРО, на msx работать не будет.
Дмитрий2012
15.12.2019, 22:09
Музыку на заставке слушать тяжело, т.к. медленно. Но игровой процесс со звуком все же веселее.
Да, с музыкой тяжеловато играть. Она еще ведь в самой игре воспроизводится. Со звуками играть намного интереснее стало:) А музыку никак нельзя отключить (хакнуть), оставив только звуки? Может у Дениса исходники попросить версии для MSX?
Black Cat / Era CG говорит, есть шанс, что он их даст.
А музыку никак нельзя отключить (хакнуть), оставив только звуки?
Т.е. музыку отключить и на заставке и в процессе игры, а звуковые эффекты во время игры оставить? С исходниками возможно было бы проще, но скорее всего такую штуку я и без них смогу.
- - - Добавлено - - -
Просто мне самому композиция на заставке показалась неслушабельной в таком медленном темпе, а музычка в процессе игры вроде приемлемо.
Дмитрий2012
16.12.2019, 08:21
Т.е. музыку отключить и на заставке и в процессе игры, а звуковые эффекты во время игры оставить? С исходниками возможно было бы проще, но скорее всего такую штуку я и без них смогу.
Да, оставить только звуки. Музыка довольно сильно подтармаживает, и это немного "напрягает". Идеальным вариантом было бы по клавише например, "М" отключать и включать музон.
Название архива неудачное, собирался сделать корректную версию, чтобы только с вызовами BIOS без out, а в итоге сделал версию только для ПРО, на msx работать не будет.
Подскажите, как её запустить на ОРИОН-ПРО ?
Смотрю содержимое файла:
https://sun9-20.userapi.com/c857428/v857428347/1280a4/Nv4qyIgCq5c.jpg
не понимаю, в начале точно не исполняемый код...
По каким адресам загружать файл в ОЗУ ПРК и с какого адреса запускать?
Для запуска нужно использовать эмулятор imsx (https://zx-pk.ru/threads/13744-orion-pro-emulyator-imsx.html?p=632359&viewfull=1#post632359)
- - - Добавлено - - -
И я только сейчас сообразил, что постил не в ту тему, обещаю исправиться.
И я только сейчас сообразил, что постил не в ту тему, обещаю исправиться.
Т.е. она не для Ориона?
В это сложно поверить, но я забыл, что создавал отдельную тему про imsx, это склероз.
Хакнутая (с заставкой и звуком) версия yazzie только для ориона-про, не для msx, но для запуска все равно нужен imsx.
Давайте попробуем адаптировать под ОРИОН (реал)! Хочется чего-то новенького, под ёлку)
(реал)
imsx на реале (про) работает, Дмитрий2012 выкладывал ролики на youtube
imsx на реале (про) работает, Дмитрий2012 выкладывал ролики на youtube
Дима, стрелки на тебя) Научи как готовить! ;)
DenisGrachev
16.12.2019, 17:26
Black Cat показал тему, парни если нужны мсх исходники пишите в личку, там баг нашёлся я пока правлю. Потом в паблик выложу всё
Дмитрий2012
16.12.2019, 21:16
Дима, стрелки на тебя) Научи как готовить!
Да нечего там собственно готовить...
Берешь диск с эмулятором и играми. Загружаешь диск в режиме Орион-ПРО (PRODOS). Затем из командной строки запускаешь эмулятор с игрушкой.
Например, эмулятор с поддержкой мультикарты imsxmc yazzie.rom, если версия эмулятора без поддержки мультикарты, то imsx yazzie.rom
Да нечего там собственно готовить...
Берешь диск с эмулятором и играми. Загружаешь диск в режиме Орион-ПРО (PRODOS). Затем из командной строки запускаешь эмулятор с игрушкой.
Например, эмулятор с поддержкой мультикарты imsxmc yazzie.rom, если версия эмулятора без поддержки мультикарты, то imsx yazzie.rom
Честно говоря, пока не очень понял. Дим, это всё речь про эмулятор на писи, не про реал, верно?
Дмитрий2012
16.12.2019, 22:39
Дим, это всё речь про эмулятор на писи, не про реал, верно?
Этот образ с эмулятором MSX и играми я на реале эмулятору дисковода "скармливаю" в другом формате.:)
Вот здесь посмотри как запускать игрушки из под оболочки NC https://youtu.be/SDTL4Vp0VQo?list=PLdFW4zCZuvJeMOJY-XFYK2Xp9VAapdtnV&t=631
Образ диска, который я выложил ранее можешь на писи в эмуляторе запустить.
Дмитрий2012
11.01.2020, 12:50
Оставлю это здесь, может кого-то еще заинтересует…
[LEFT]Подключил SD контроллер от vinxru к Орион-ПРО. Вроде работает. Конечно, по скорости не сравнится с IDE контроллером, но зато можно полноценно работать с файлами (из своего софта), записанными на SD карту на РС. От ОРДОС 6,7 пришлось отказаться. Очень сырая и глючная вышла система. А самой главный минус в том, что диск отформатированный в ОРДОС 6,7 не видится на РС. Полноценный обмен файлами через диск между РС и Орионом не возможен.
SD контроллер подключил к D4, расположенной на мультикарте. В архиве находится папочка BOOT с файлами (shell, sdbios и boot), которую необходимо закинуть в корень SD карты, а также начальный загрузчик LD-ROM$.BRU , который необходимо записать на ROM диск. Еще вложил в архив программу для просмотра картинок со спектрума.
PS: sdbios грузится с адреса 0B400H, BiosEntry - точка входа в sdbios 0B545h
Для тех, кто захочет использовать данный контроллер в своих программах о функциях SD BIOS можно почитать здесь http://alemorf.ru/comps/specialist_lin/sd.html
Имя файла или папки должно быть не более 8 символов, не содержать точку.
+ 18.01.2020 Добавил в архив AY PLAYER для проигрывания файлов форматов .pt2, .pt3
Конечно, по скорости не сравнится с IDE контроллером
А что мешает подключить SD-карту к IDE через копеешный китайский конвертер? ;)
Полноценный обмен файлами через диск между РС и Орионом не возможен.
А зачем он нужен, если есть возможность обмена через COM-порт?
Дмитрий2012
11.01.2020, 16:10
А что мешает подключить SD-карту к IDE через копеешный китайский конвертер?
И что я буду делать с этой картой? софта для работы с FAT16, FAT32 нет ...
Ты наверно не понял, о каком контроллере идет речь. Вот почитай http://alemorf.ru/comps/specialist_lin/sd.html
Он содержит драйвер файловой системы FAT16 , FAT32.
А зачем он нужен, если есть возможность обмена через COM-порт?
где я буду брать этот COM-порт после очередного апгрейда своей РС? :v2_conf2:
И что я буду делать с этой картой? софта для работы с FAT16, FAT32 нет ...
Если принципиально требуется работа с писишным форматом записи, то да, тут сложно.
Если требуется хранение файлов, то этот вопрос решён.
где я буду брать этот COM-порт после очередного апгрейда своей РС? :v2_conf2:
https://yandex.ru/search/?clid=9582&text=адаптер%20usb%20com%209%20pin&l10n=ru&lr=2
Error404
11.01.2020, 23:02
И что я буду делать с этой картой? софта для работы с FAT16, FAT32 нет ...
Вообще-то есть (https://zx-pk.ru/threads/29892-sd-karta-i-sdos-dlya-8i-bitnykh-pk.html?highlight=sdos). Мультиплатформенный (Орион, Галаксия, Специалист, и куча разных других) и для множества типов контроллеров SD: N8VEM, MSX, ИР24, ВВ55 двух вариантов (т.е. в случае Ориона где есть ВВ55, для подключения надо полдюжины резисторов и два диода). Единственное ограничение - только FAT16 (некому допилить математику), т.е. карточку надо соответствующе форматнуть. Как раз для Ордос (что мне малоинтересно почему и не использую).
Дмитрий2012
13.01.2020, 13:52
Кто бы адаптировал эту ось под контроллер IDE ...
Сам я не соображу как это сделать, а хотелось бы ее перенести на прошку.
Правильно ли я понял, что драйвер FAT в этой ось не умеет создавать, перемещать, удалять файлы (папки) на диске?
Error404
13.01.2020, 14:25
Кто бы адаптировал эту ось под контроллер IDE ...
Надо обдумать эту тему
Правильно ли я понял, что драйвер FAT в этой ось не умеет создавать, перемещать, удалять файлы (папки) на диске?
Создавать и премещать - да не умеет. А удалять наверное умеет или можно доделать, вроде не должно это сложно быть? А оно надо ли - удалять при невозможности создавать?
Дмитрий2012
13.01.2020, 20:36
А оно надо ли - удалять при невозможности создавать?
Ну да, если невозможно создавать то и удалять незачем:)
С записью файлов на карту кажется понял. Сначала видимо на РС надо на карту записать файл, а потом писать данные в этот файл на Орионе ...
А читать последовательно данные из файла большого размера (более 64к) этот драйвер может? и как работать с драйвером из своей программы не понял. Видимо с этими вопросами надо идти в ветку "SD карта и SDOS"...
Адаптировал маленький шедевр Alone Codera, запускать в OSDOS. Можно побродить, посмотреть по сторонам.
Error404
30.01.2020, 18:59
Адаптировал маленький шедевр Alone Codera, запускать в PRODOS. Можно побродить, посмотреть по сторонам.
Прикольно. Написал бы что да как делал. Хотя бы что оно использует - какие-то диспетчеры, какие конкретно окна. Чтобы понять зачем оно для ПРО. Оно пакованное? Загружает блок в некое ОЗУ с переходом туда "навсегда"? Как обрабатываешь экран - перекодировщик массива по прерыванию или правил оригинальный код вывода в видео-ОЗУ?
В конце концов мы же сюда в-основном пообщаться ходим. Вот и давай общаться, тема благодатная. :)
На 3,5 реального такта (Обычной Орион с Z80 turbo5wait) ходит так же бодро, как и на Прошных 7 Мгц (turbo10wait)
Разрешение конечно глаза сломаешь, но кратковременный вау-эффект есть. Вот бы еще покрасить и геймплей добавить. Жалко что Алоне его бросил.
А был вроде еще какой-то Вольф от Алоне, где стрелять можно?
- - - Добавлено - - -
Даже на 2.5 Мгц терпимо. Т.е. на 7 Мгц (turbo10wait) резерва столько, что была бы "конфетка" если бы полностью реализовать.
Кнопки неудобно замаплены, "1-2" надо по смыслу поменять с "влево-вправо "
Да почти ничего не делал, только хаки для экрана и клавиатуры.
Диспетчер про использует, тем более я сначала планировал другой видеорежим. Но когда уже сделал, понял, что можно было и для z80-card II сделать.
Спековская часть пакованная (и даже лишнего, для вектора я уже поменьше взял), мои хаки - нет.
Полноценная игрушка от Alone Codera - wolf2004 (https://www.youtube.com/watch?v=s2EO57BI0SY)
- - - Добавлено - - -
Кнопки неудобно замаплены, "1-2" надо по смыслу поменять с "влево-вправо "
Тут я следовал за автором, ASDW перенес на курсор, OP на 12. Мне самому повороты на курсоре тоже больше нравятся, но я в шутеры не играю, может так принято.
- - - Добавлено - - -
Ну и да, для ориона-про можно заметно круче сделать. Не совсем так (https://youtu.be/SJQm-5qAL2g?t=78), но промежуточный вариант.
Error404
31.01.2020, 11:45
я сначала планировал другой видеорежим.
Цветной? Оригинал в цвете или тоже ЧБ? Если ЧБ, то оно же вроде сходное что у ПРО что у 128?
когда уже сделал, понял, что можно было и для z80-card II сделать.
В-общем, как и в других проектах. ;) А использовал бинарную кодовую часть ZX или компилировал исходники? Я слышал, что от этой демки вроде Алоне исходники расшарил.
Хак для экрана - перекодирование "массивZX->массивПРО" по прерыванию?
Цветной? Оригинал в цвете или тоже ЧБ? Если ЧБ, то оно же вроде сходное что у ПРО что у 128?
В оригинале атрибуты используются для крупноблочной маскировки пола и потолка. Сначала думал сделать аналогично, потом все же склонился к монохромному варианту. У про использовал "псевдоцветной" режим, для cardII будет зеленое на черном.
А использовал бинарную кодовую часть ZX или компилировал исходники? Я слышал, что от этой демки вроде Алоне исходники расшарил.
Так там не скомпилируешь - не запустишь. Хотя вроде выкладывали готовый sna, но использовать чужой снапшот, скомпилированный с неизвестными параметрами, я не решился.
Хак для экрана - перекодирование "массивZX->массивПРО" по прерыванию?
Перекодирование, но не по прерыванию, а после построения очередного спековского экрана.
Скорее всего я сделаю две новые максимально унифицированные версии для про и cardII.
1. Пересобрал wolf с максимальным разрешением области отображения (256x192), чуть ли не "HD версия". Хака экрана пошустрее, из векторовского порта, что отчасти компенсирует замедление связанное с большим разрешением.
2. Версия "универсальная", для про- (OSDOS или PRODOS) и z80-cardII (Альтаир/Best dos).
Дмитрий2012
31.01.2020, 20:48
2. Версия "универсальная", для про- (PRODOS) и z80-cardII (Альтаир/Best dos).
В эмуляторе emu на Орион-ПРО в PRODOS не запускается:( На реале пока не пробовал.
В эмуляторе emu на Орион-ПРО в PRODOS не запускается
Пробовал в emu, система OSDOS V4.10. Почему-то я называл ее PRODOS, может что-то спутал.
Дмитрий2012
31.01.2020, 21:02
Пробовал в emu, система OSDOS V4.10.
В OSDOS все окей, шустренько все двигается, но ч\б версия смотрелась симпатичней:)
PS: OSDOS V4.10. и PRODOS в прошке работают в разных страницах памяти.
Дмитрий2012, спасибо за багрепорт, заменил на доработанную версию совместимую и с OSDOS и с PRODOS (на про-) и с Aльтаир/Best dos (z80 cardII)
Sancho45
31.01.2020, 22:47
2. Версия "универсальная",z80-cardII (Альтаир/Best dos).
На железном орионе-512 z80card проверил, полет нормальный, скорость вполне
Error404
02.02.2020, 00:34
Дмитрий2012, спасибо за багрепорт, заменил на доработанную версию совместимую и с OSDOS и с PRODOS (на про-) и с Aльтаир/Best dos (z80 cardII)
Попробовал в эмуляторе с Альтаир ДОС. Выйти за черную стену (слишком черная кстати, туда бы текстур) в чисто поле где стоит группа Гитлеров - это предусмотрено? :) А где была цветная версия? Любопытно. v3 что я скачал - ЧБ
Попробовал в эмуляторе с Альтаир ДОС. Выйти за черную стену (слишком черная кстати, туда бы текстур) в чисто поле где стоит группа Гитлеров - это предусмотрено?
Так в оригинале, это задумка режиссера.
Есть малозаметный почтибаг (и в оригинале и в портах) с краем стены в одном месте. Пробовал пересобирать с разными опциями - одна из комбинаций помогла, но тогда появляются проблемы со спрайтами, в итоге оставил как есть. И на солнце есть пятна.
А где была цветная версия?
Цветной не было, Дмитрию черно-зеленый вариант понравился меньше черно-белого. Как обычно я уже после выкладывания сообразил, как можно было сравнительно просто сделать чб и в универсальной версии.
Проба трекерной музыки со спека, играет через AY. Композиция Astral Combat, автор Yerzmyey. Работает из PRODOS и OSDOS, возврата в дос нет, извините. Пробел - стоп, потом можно снова играть нажав Enter. Играет медленнее и ниже, чем на спеке, но на мой взгляд это особо не портит впечатление.
Sancho45
02.03.2020, 23:20
Для Про онли ?
Дмитрий2012
02.03.2020, 23:56
Проба трекерной музыки со спека, играет через AY. Композиция Astral Combat, автор Yerzmyey.
Крутяк:) Если интересно, вот запись с реала https://drive.google.com/file/d/1RTCX1W7LS5RS8ZaMBHpj-QMsSwGewcy1/view?usp=sharing Правда вместо AY у меня сейчас установлена карта AYX-32. Если интересно, могу сделать запись и с реального чипа. Мелодий бы побольше;)
Для Про онли ?
Да, к сожалению. Проблема в торможении проца при частотах >2.5 МГц, реальные варианты не эмулируются на данный момент, и это плохо скажется на звучании музыки, если не выровнять, то будет довольно неприятный звук. А выровнять вслепую довольно сложно (тем более точных растактовок z80 card II для 5 МГц я не знаю, знаю только для турборежима ПРО) и проверить результат в эмуляторе не могу.
Дмитрий2012, спасибо за запись с реала! Скорее всего еще что-нибудь такое сделаю.
- - - Добавлено - - -
Посмотрел, AYX-32 может играть XM, с такими возможностями трекерные модули со спека смотрятся не очень круто.
- - - Добавлено - - -
Хотя я не совсем понял - XM уже поддерживается или планируется. Но даже без XM там очень много всего.
Дмитрий2012
03.03.2020, 11:22
Хотя я не совсем понял - XM уже поддерживается или планируется. Но даже без XM там очень много всего.
У Ts-labs xm только в планах. На сайте давно уже нет новостей по карте. Как будто все заглохло.
Недавно появилась альтернативная прошивка от robus, но у него судя по видео модули грузятся в карту c PC. Такой вариант совсем не интересен. С таким же успехом ХМки можно слушать на РС.
Насчет много чего в карте...
Там пока не все релизовано как описано на сайте. Я пока использую только возможности Turbo sound.
Насколько понял, может и ошибаюсь... карту можно использовать и как полноценный covox. Не надо городить его на LPT порт на плате компа.
Недавно появилась альтернативная прошивка от robus, но у него судя по видео модули грузятся в карту c PC. Такой вариант совсем не интересен. С таким же успехом ХМки можно слушать на РС.
Тут я не совсем понял. Вроде такой план и был: загрузка XM в AYX-32 и проигрывание средствами самой карты. Ну а откуда грузить - с "большого" компа или с ориона, это уже не принципиально.
карту можно использовать и как полноценный covox.
Судя по описанию там "суперковокс" с буфером. Т.е. туда грузишь семпл и он сам играет с заданной частотой. Но опять не понятно - это план или уже работает? Но даже если работает, то нет поддержки в эмуляторах.
Не надо городить его на LPT порт на плате компа.
У меня на эту тему вопрос. Порты ВВ55 принтера 00-03 в ПРО аналогичны каким-то портам классического ориона (F600-F6FF)? Или стандарта на подключение принтера (и ковокса) к ориону-128 не было?
Error404
03.03.2020, 15:52
У меня на эту тему вопрос. Порты ВВ55 принтера 00-03 в ПРО аналогичны каким-то портам классического ориона (F600-F6FF)? Или стандарта на подключение принтера (и ковокса) к ориону-128 не было?
На классике порт принтера - это ВВ55 F600.
Но если есть возможность повесить ковокс (а это всего 8 бит на вывод, верно?) на ВВ55 F500 ROM-диска или ВВ55 F400 клавиатуры (по аналогии с тем как делал Denn) то имхо это более лучший вариант, т.к. оставляет ВВ55 F600 для IDE (которому нужны все 24 линии порта). Ковокс ведь надо откуда-то прогружать, верно?
Не понял про трекерную музыку (а посмотреть не могу - сижу в чебурнете где всё кроме zx.pk.ru запрещено). Это что-то отличающееся от STx,ASM,PTx и тому подобных музыкальных файлов, уже проигрываемых Орионовскими плеерами?
Не понял про трекерную музыку (а посмотреть не могу - сижу в чебурнете где всё кроме zx.pk.ru запрещено). Это что-то отличающееся от STx,ASM,PTx и тому подобных музыкальных файлов, уже проигрываемых Орионовскими плеерами?
С одной стороны и то и другое - трекерная музыка, но Astral Combat - это пример "настоящей" трекерной музыки, в которой инструменты семпловые/семплерные (соответственно совершенно произвольные в рамках имеющейся памяти). Это типа MOD, STM, S3M, XM и т.п., только пожиже - каналов поменьше (тут только 3, на амиге начали с 4) и эффектов почти нет. Но технические возможности не всегда обеспечивают преимущество, творческая сила в музыке пожалуй важнее. Слушал спековские 4х канальные модули и они мне не особо нравились, а вот Yerzmyey в 3х каналах сделал здорово.
Думал еще сделать проигрывание БКшных модулей (они попроще, там как бы 2.5 канала) на классике, но классического стандарта на ковокс получается нет, можно ограничиться ПРОшными возможностями (AY и ковокс на месте принтера, если не будет хватать).
Но если есть возможность повесить ковокс (а это всего 8 бит на вывод, верно?) на ВВ55 F500 ROM-диска или ВВ55 F400 клавиатуры (по аналогии с тем как делал Denn) то имхо это более лучший вариант
Лучший вариант - это ковокс со своей ВВ55 в правильном месте - F7xx.
Дмитрий2012
03.03.2020, 19:02
Тут я не совсем понял. Вроде такой план и был: загрузка XM в AYX-32 и проигрывание средствами самой карты. Ну а откуда грузить - с "большого" компа или с ориона, это уже не принципиально.
Я имел ввиду, что мне интересен вариант загрузки XM в AYX-32 с дискеты, диска, SD Card. Также не исключаю вариант загрузки через Wi Fi. Только не провода:)
Судя по описанию там "суперковокс" с буфером. Т.е. туда грузишь семпл и он сам играет с заданной частотой. Но опять не понятно - это план или уже работает? Но даже если работает, то нет поддержки в эмуляторах.
Посмотрел переписку с TS Labs, оказывается я уже в 2017 году спрашивал его о covox…
Вот что он мне тогда ответил:
«Да, есть там "ковокс". Тот самый DAC, со своим фифо и произвольной частотой дискретизации. Правда, пока вейвсинтез в стадии разработки, он еще не работает, как надо.»
Как с ним работать (программировать) надо у него уточнять.
Как с ним работать (программировать) надо у него уточнять.
Из краткой справки примерно понятно, но в любом случае нужна поддержка в эмуляторе.
Этот суперковокс меняет принцип работы основной программы почти на современный. Программа пишет в локальный буфер, потом проверяет, есть ли место в буфере DAC, если есть - пересылает, потом продолжает заниматься своими делами. Замечательно то, что это убирает жесткую привязку к точным таймингам проца, лишь бы быстродействия хватало. Еще лучше было бы с DMA, но большинство 8битных ретрокомпов не смогут отдать управление доступом памятью наружу, поэтому решение с буфером вероятно лучший компромиссный вариант.
Error404
03.03.2020, 22:37
Крутяк:) Если интересно, вот запись с реала https://drive.google.com/file/d/1RTCX1W7LS5RS8ZaMBHpj-QMsSwGewcy1/view?usp=sharing Правда вместо AY у меня сейчас установлена карта AYX-32. Если интересно, могу сделать запись и с реального чипа. Мелодий бы побольше;)
Послушал дома. Замечу, звучит приятнее и богаче классического скрипа AY. Но прослушивается какая-то "постоянная составляющая" в виде какого-то фонового гула. Как если бы выходной конденсатор, отсекающий постоянку, не поставили. :) Это издержки синтеза "инструментов"?
Но прослушивается какая-то "постоянная составляющая" в виде какого-то фонового гула.
Если я правильно понимаю о чем речь, то это шум квантования, все же бит/отсчет маловато, AY не ковокс.
Error404
04.03.2020, 10:36
Если я правильно понимаю о чем речь, то это шум квантования, все же бит/отсчет маловато, AY не ковокс.
Да, оно. Если с этим совсем-совсем ничего не поделать (типа за счет увеличения частот чипов и Ориона или установки двух AY), то конечно это сильно заметно. Такая ложка дегтя в бочке меда, долго не послушаешь. С другой стороны, стандартная музыка AY вообще неприятная, только для эффектов в игры годится.
С другой стороны, стандартная музыка AY вообще неприятная, только для эффектов в игры годится.
Целое фанатское направление существует! Народ до сих пор слушает, и даже пользуют в современных играх для (мобильных девайсов). У AY прикольное звучание, очень характерная "фишка".
Если с этим совсем-совсем ничего не поделать
Это лечится ковоксом с числом бит >=7-8, надо бы такую версию тоже сделать
Это лечится ковоксом с числом бит >=7-8, надо бы такую версию тоже сделать
Есть 12-битный проект. К сожалению, он изначально был под Орион-128 @ 2,5МГц, у которого оказалась "кишка тонка". На ПРО'шке в режиме "10 МГц" скорее всего должно хватить ресурсов, но пока нет времени этим заняться...
Есть 12-битный проект. К сожалению, он изначально был под Орион-128 @ 2,5МГц, у которого оказалась "кишка тонка".
Тут смотря для чего. Если для трекерных модулей, то соглашусь, на 12-битный ковокс (с задействованием всех бит) у классического ориона с ВМ80 скорости маловато, для 8-битного хватает (для БКшных модулей). Правда если сочинять модули конкретно для ориона, а не брать готовые, то можно попробовать поменять частоту на битность.
А если играть wavы, то скорости хватает, но памяти маловато.
...можно попробовать поменять частоту на битность.
И так всё на пределе. Уменьшать частоту нельзя, звучание становится непотребным и затея теряет всякий практический смысл.
А если играть wavы, то скорости хватает, но памяти маловато.
А МР3 Орион не потянет, даже с клоком 100 МГц :)
В диапазоне от PCM до MP3 есть разные промежуточные решения. Но чем они круче, то сильнее потребность в чем-то вроде ковоксной части AYX-32 для нормального проигрывания.
Error404
04.03.2020, 21:56
сильнее потребность в чем-то вроде ковоксной части AYX-32 для нормального проигрывания.
AYX-32 и сама вполне может воспроизводить с SD-карты, зачем ей Орион, на порядок (или больше?) более слабый? :)
Дмитрий2012
07.03.2020, 14:44
Надо обдумать эту тему
Оставлю здесь.
Спасибо PVV, он адаптировал SDOS под IDE контроллер прошки. Программы будут запускаться размером не более 42кб.
Исходники Виталий выложит в своей теме SD карта и SDOS для 8и битных ПК (https://zx-pk.ru/threads/29892-sd-karta-i-sdos-dlya-8i-bitnykh-pk.html?p=1050685&viewfull=1#post1050685)
https://youtu.be/g1K4t8Hmgeo
24.09.2025 - добавил просмоторщик картинок в формате .О32 ( клавиша F4 - выход в меню )
Error404
07.03.2020, 22:10
Что за игра такая - "1942"? Не припоминаю
Дмитрий2012
07.03.2020, 22:22
Что за игра такая - "1942"? Не припоминаю
Со спектрума перенесли, нашел в архивах Пушкова.
https://www.youtube.com/watch?v=GZaBDxnxMb0&t=39s
Error404
08.03.2020, 11:27
Со спектрума перенесли, нашел в архивах Пушкова.
А там рядышком еще не было что-то, чего нет в моем сборнике? (Интересует главным образом от ZX, ордосовские я в курсе что у меня не все есть, но они и не особо интересны, разве что есть что-то совсем уж интересное)
Дмитрий2012
08.03.2020, 20:36
Интересует главным образом от ZX
От ZX есть еще несколько простеньких игрушек в ордосовском формате.
https://www.youtube.com/watch?v=hphc1XV10Hc
https://www.youtube.com/watch?v=9yP3fYU0XPE
https://www.youtube.com/watch?v=zNmkH8xodYA
https://www.youtube.com/watch?v=NanaN6_vGWw
https://www.youtube.com/watch?v=PwsNeedKaWg
Порт эксолона на про. Отличия от варианта Adelaide для z80 card II
1. Это версия для ПРО :)
2. Правильные цвета.
3. Музыка через AY на заставке (в процессе игры и там и тут через AY + совсем немного бипера).
4. При редактировании клавиш можно выбрать управление курсором.
5. Убрал лишние пункты в меню.
Есть один минус - при одинаковой частоте эта версия медленнее "классической", но на 10 МГц работает с приемлемой скоростью.
Большое спасибо Дмитрию2012 за тестирование на реале! Он долго и упорно тестировал, в итоге нашлись и были устранены две проблемы - одна программная, чтение порта 1Ah на реале и в emu дает различающиеся результаты; и одна аппаратная - оказывается эксолон можно использовать как тест процессора, если он запустится на 10 МГц, то проц скорее всего годный.
Upd 22.04.2020: Во второй версии исправлен баг со "смертельным подпрыгиванием" который был унаследован из спековской версии и чуть ускорено обновление экрана.
Error404
15.04.2020, 10:19
Есть один минус - при одинаковой частоте эта версия медленнее "классической", но на 10 МГц работает с приемлемой скоростью.
Большое спасибо Дмитрию2012 за тестирование на реале! Он долго и упорно тестировал, в итоге нашлись и были устранены две проблемы - одна программная, чтение порта 1Ah на реале и в emu дает различающиеся результаты; и одна аппаратная - оказывается эксолон можно использовать как тест процессора, если он запустится на 10 МГц, то проц скорее всего годный.
Т.е. эта версия медленнее в 2-3 раза? А в связи с чем? Экран перекодируется на прерываниях?
Т.е. эта версия медленнее в 2-3 раза? А в связи с чем? Экран перекодируется на прерываниях?
Ну в 3 раза это перебор, раза в 1.5-2 (при одинаковом быстродействии проца). ПРО на 10 МГц как раз примерно во столько раз быстрее z80 card II на 5 МГц, в итоге скорость игры близкая. Экран перекодируется, но не по прерываниям (прерывания все время запрещены) а по каждому циклу обновления спековского экрана.
чтение порта 1Ah на реале и в emu дает различающиеся результаты
А подробнее?
Если совсем подобно, то надо делать тест, а если коротко, то при всех трех ненажатых клавишах оттуда похоже читается не FF. В биосе делают in a,(1Ah) потом or 1Fh, я сделал аналогично.
Ну дык кто его знает, что последний раз писалось в биты 0-3, да и с магнитофона не обязательно еденица придёт. А что, на реале FF?
На реале как раз не FF при ненажатых клавишах. Может я путаю, но вроде магнитофонного входа у ПРО нет?
Как можно потестить. Запускаем из доса (те три клавиши не трогаем), читаем из 1Ah сначала как есть, потом пишем 98h в 1Bh (как bios) и еще раз читаем 1Ah.
Такой тестик могу сделать.
Собственно тестик с исходником (в мнемониках 8080, но тут без разницы). Считаю, что в младшей половине должны быть нули (хотя бы после задания режима). Насчет 4го бита не уверен, если бы не он, можно было бы и без теста обойтись.
Error404
15.04.2020, 23:52
Ну в 3 раза это перебор, раза в 1.5-2 (при одинаковом быстродействии проца). ПРО на 10 МГц как раз примерно во столько раз быстрее z80 card II на 5 МГц, в итоге скорость игры близкая.
Но фокус в том, что эксолон ЕМНИП идет и на штатных Орионовских 2.5М (что втрое медленнее ПРОшных 10М+Wait экивалентных реальным 7М..7,5М). За счет того, что Спектрум 3.5М на самом деле почти равен Oриону 2.5М за счет того что в спеке WAIT, а в орионе на 2,5М "прозрачное ОЗУ" (с Z80 card II)
Экран перекодируется, но не по прерываниям (прерывания все время запрещены) а по каждому циклу обновления спековского экрана.
Прерывания все время запрещены - так и у Аделаидчиков было? А как же синхронизироваться, игра на разной скорости проца будет "убегать". Это не векторовский эксолон адаптировался?
Аделаидовский на 2.5 тормозит, а "мой" тормозит сильнее. Эти эксолоны на любой частоте работать будут, никакой синхронизации ни с чем нет.
Спек (48) на 3.5 МГц не равен 2.5 без тормозов, у него тормоза только в области 4000-7FFF. В эксолоне часть критичного кода в быстрой памяти, часть в медленной.
Орион на 10 МГц с доработкой на стабильность по моим оценкам ближе к "эквивалентной частоте" 6.5-6.7 МГц. Но это цифры в среднем по больнице, все зависит от используемых команд. "Эквивалентные частоты": для ld (adr),rp/ ld rp,(adr) - примерно 5.3 МГц; push - 5.5 МГц; pop - 5.6 МГц; add a,d8 и т.п./ ld r,(rp)/ ld (rp),r - 5.8 МГц; ld r,r/ add a,r и т.п. - 6.7; inc rp/dec rp - 7.5; add rp,rp - 7.9
Векторовский эксолон я очень медленно копаю, это не он, это спековский с хаками.
И насчет 5 МГц. Про z80 card II не знаю, а у ПРО при 5 МГц "средняя по больнице эквивалентная частота" совершенно точно >=3.8 и ближе к 4 МГц или еще больше.
Error404
16.04.2020, 13:52
И насчет 5 МГц. Про z80 card II не знаю, а у ПРО при 5 МГц "средняя по больнице эквивалентная частота" совершенно точно >=3.8 и ближе к 4 МГц или еще больше.
Вот тут интересно. Я подзабыл схемотехнику ПРО, разве там на 5МГц используется WAIT при доступе к ОЗУ? Почему 3.8? Столько на Орионе-128 в схеме с 5+WAIT
У ПРО на 5 МГц на каждое обращение к памяти (но не к портам) добавляется один такт ожидания. Подробные растактовки здесь (https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=845379&viewfull=1#post845379)
Error404
16.04.2020, 23:45
У ПРО на 5 МГц на каждое обращение к памяти (но не к портам) добавляется один такт ожидания. Подробные растактовки здесь (https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=845379&viewfull=1#post845379)
Это очень странно. По логике и истории орионостроения должно бы быть наоборот (т.е. вейтить тормозные порты ВВ55 из которых на 5М не работало процентов 30-40, а не РУ7 - рекомендованные для ПРО серии в этом не нуждаются, после отбора они и в ТурбоXT работали {over 8MHz}, в редких случаях ОЗУ нужна "стабилизирующая" сдвигающая цепочка как в доработке ПРО). Даже РУ5 на 5МГц работают (не все буквы конечно, но те буквы уже по сути отбраковки), 5М без wait в 90-х было немало Орионов, грелись правда как утюги (из-за зачастую двойной выборки ВГ), но то такое.
Могу только предположить, что это связано с тем, что у z80 в циклах обращения к портам и так уже есть дополнительный такт (по сравнению с обращением к памяти). Наверно посчитали, что этого достаточно для 5 МГц.
Дмитрий2012
20.04.2020, 21:13
Собственно тестик с исходником (в мнемониках 8080, но тут без разницы). Считаю, что в младшей половине должны быть нули (хотя бы после задания режима). Насчет 4го бита не уверен, если бы не он, можно было бы и без теста обойтись.
Запускал на плате без магнитофонного вх. Если надо, могу прогнать и на плате с магнитофонным входом.
Заменил эксолон (https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=1057048&viewfull=1#post1057048) на доработанную версию.
Всем привет. Собрал контроллер HDD (плата IDE-RTC) для "Орион-Про". Тестирование проходит, при выборе в меню "Орион-Про" считывается начало диска в область с 0xB000. Нужен образ HDD (простой бинарный дамп с диска), который можно записать на диск и загружиться. Если у кого-нибудь есть такой образ - поделитесь, пожалуйста.
Error404
30.06.2020, 19:08
Всем привет. Собрал контроллер HDD (плата IDE-RTC) для "Орион-Про". Тестирование проходит, при выборе в меню "Орион-Про" считывается начало диска в область с 0xB000. Нужен образ HDD (простой бинарный дамп с диска), который можно записать на диск и загружиться. Если у кого-нибудь есть такой образ - поделитесь, пожалуйста.
Есть вот такой образ:
https://drive.google.com/file/d/0B3S0wVWNPLrwVHZuT2dEUkd4X1k/view?usp=sharing
в эмуляторе работает. Я даже загрузил бессмертную Nether Earth и чутка погонял :)
пробовал с BIOS ROMx-321
Есть вот такой образ:
https://drive.google.com/file/d/0B3S0wVWNPLrwVHZuT2dEUkd4X1k/view?usp=sharing
в эмуляторе работает. Я даже загрузил бессмертную Nether Earth и чутка погонял :)
пробовал с BIOS ROMx-321
Огромное спасибо! Залил образ на CF - сразу без проблем загрузился и определились часы, которые не определялись при загрузке с дискеты. Altair DOS заинтересовал, есть ли по нему информация для пользователей и программистов?
Игры не работают, но у меня ещё сам компьютер нужно исправлять.
Кстати, то, что сам DOS пишет текст красным цветом на чёрном фоне - нормально? Сперва, при загрузке, SELECT BOOT PARTITION пишется белым по синему, а потом счётчик памяти и всё, что дальше - красным по чёрному. Трудно читать, хотя, подозреваю, у меня проблемы с видеосистемой...
Error404
30.06.2020, 21:52
Огромное спасибо! Залил образ на CF - сразу без проблем загрузился и определились часы, которые не определялись при загрузке с дискеты. Altair DOS заинтересовал, есть ли по нему информация для пользователей и программистов?
Описания есть тут, кое-что есть по системным вызовам (как базовой CP/M так и Альтаир-Дос):
https://github.com/serge-404/AltairDOS/tree/master/man
Сама ветка ОС:
https://github.com/serge-404/AltairDOS/
там если смотреть от начала ветки - лежат исходники ОС, а уже в подкаталогах драйвер (через него ОС делает вывод на экран, ввод с клавиатуры, часы, обработку прерываний), приложения, описания. Большая часть приложений с исходниками, которые могут быть использованы как пример прогрммирования.
Игры не работают, но у меня ещё сам компьютер нужно исправлять.
Кстати, то, что сам DOS пишет текст красным цветом на чёрном фоне - нормально? Сперва, при загрузке, SELECT BOOT PARTITION пишется белым по синему, а потом счётчик памяти и всё, что дальше - красным по чёрному. Трудно читать, хотя, подозреваю, у меня проблемы с видеосистемой...
Нет, цвета несовсем правильные.
Загрузка ОС (выбор загрузочного раздела где может быть до 4 primary MBR разделов) должен выводиться "белым по синему" если загрузка из режима ПРО и "зеленым по черному" если загрузка из режима Орион-128(из MBOOT$). Т.к. начальный загрузчик MBR (в котором меню партиций) и загрузчик из bootsector-а ОС (в котором счетчик секторов) настройку порта цветности никак не меняют - работают тем что уже было установлено.
Счетчик памяти всегда "зеленым по черному", т.к. первое что делает вторичный загрузчик это сброс регистров номера экрана и режима цветности (в монохром):
XOR A
OUT (PF8),A
OUT (PFA),A
После загрузки ОС в конце config.sys командой "COLOR 0 0" тоже ставится режим цветности "монохром" и всё должно отображаться "зеленым по черному". Команда NC (коммандер) должна нарисовать бело-синие панели с зелено-черной строкой подсказки и строкой команд. Можно поэкспериментировать в ОС с командой
color цвет фон
color 4 15 ; красным по белому
color ; обратно в монохром
Код цвета Цвет
0 черный black
1 голубой blue
2 зеленый green
3 синий cyan
4 красный red
5 малиновый magenta
6 коричневый ?? brown
7 белый white
8 серый gray
9 светло-голубой lightblue
10 светло-зеленый lightgreen
11 светло-синий lightcyan
12 светло-красный lightred
13 светло-малиновый lightmagenta
14 желтый ?? yellow
15 интенсивно-белый brightwhite
Дмитрий2012
04.11.2021, 12:11
Может кто подскажет, под Орион-ПРО драйвера для принтера существуют в природе? от Ориона-128 они я так понимаю не подойдут на прошку, схемы подключения принтера ведь разные...
Error404
04.11.2021, 14:40
Может кто подскажет, под Орион-ПРО драйвера для принтера существуют в природе? от Ориона-128 они я так понимаю не подойдут на прошку, схемы подключения принтера ведь разные...
А что, натурально будет принтер подключен? Они еще встречаются живые? :) А какой?
К разным принтерам теоретически драйвера разные. Если порт принтера известен и использоваться принтер будет в CP/M, то драйвер принтера можно сделать легко самому - там ведь всего-то задача взять с вектора CP/M байт и кинуть в порт, и в обратку через другой вектор транслировать статус BUSY. К примеру в Альтаир-дос это можно сделать из драйвера из примера в описании (https://github.com/serge-404/AltairDOS/blob/master/man/dos-prof_cp1251.txt) (в конце статьи) - в примере он подзвучивает вывод символа в консоль сидя на векторе CONOUT, и надо пересадить его на LPTOUT (константу поправить), добавить по аналогии LPTSTATUS и поправить целевую подпрограмму на IN/OUT с соответствующим портом. Если нужна перекодировка, то тут уже надо добавлять таблицы.
Дмитрий2012
04.11.2021, 16:02
А что, натурально будет принтер подключен? Они еще встречаются живые? :) А какой?
Да, хочу принтер подключить:) Попался мне в руки наш струйник MS6312 https://red-innovations.su/index/photos_c/6312.html
Восстановил его. Пришлось микруху заменит 580ГФ24 и кондеры по питанию высохли, пульсации дикие были. Доработал для установки печатающих головок от HP 51604A. Вроде завелся, в автономном режиме тестовую страницу печатает. Принтер прикольный, такой компактный и печатает прилично, я думал будет хуже.
Подключил его к прошке как рекомендуют, интерфейс типа CENTRONIX (ИРПР-М) Нашел к ORDOS программку Print Master с драйверами принтера (описана в журнале Радио №10-11 1993г.) Попробовал что-нибудь распечатать и тишина..
К разным принтерам теоретически драйвера разные. Если порт принтера известен и использоваться принтер будет в CP/M, то драйвер принтера можно сделать легко самому - там ведь всего-то задача взять с вектора CP/M байт и кинуть в порт, и в обратку через другой вектор транслировать статус BUSY. К примеру в Альтаир-дос это можно сделать из драйвера из примера в описании (https://github.com/serge-404/AltairDOS/blob/master/man/dos-prof_cp1251.txt) (в конце статьи) - в примере он подзвучивает вывод символа в консоль сидя на векторе CONOUT, и надо пересадить его на LPTOUT (константу поправить), добавить по аналогии LPTSTATUS и поправить целевую подпрограмму на IN/OUT с соответствующим портом. Если нужна перекодировка, то тут уже надо добавлять таблицы.
В прошке известны:
01H - данные принтера, инверсные (запись);
02H - управляющие сигналы принтера (чтение, запись);
03H - регистр управления для портов 00H..02H;
А в драйверах к программе Print Master используются порты F601, F602, F603. По идее должно работать на Орионе-ПРО ?
Сначала бы убедиться, что сам принтер полностью рабочий, может в нем еще что-то полетело… Видимо придется разбираться с логикой работы и тестовую программку какую-то писать и отслеживать сигналы на разъеме принтера. Это уже сложней )))
В прошке известны:
01H - данные принтера, инверсные (запись);
02H - управляющие сигналы принтера (чтение, запись);
03H - регистр управления для портов 00H..02H;
А в драйверах к программе Print Master используются порты F601, F602, F603. По идее должно работать на Орионе-ПРО ?
Дима, привет. Нет, не будет работать. В ПРОшке адресация портов по IN/OUT, а порты F60x в О-128 адресуются, как память (LDA/STA).
Можно попробовать дизассемблировать драйвер и переделать под ПРО. Только ещё надо бы как-то понять, так ли устроен порт на битовом уровне, и что за "инверсные данные" в описании порта 01h ?
Error404
05.11.2021, 01:29
Что за ПринтМастер? Если это что-то самодельное радиолюбительское из Ордос, то к такому понятие "драйвер" обычно малоприменимо - там все обычно шарашит прямо по железу. В лучшем случае как драйвер может быть отдельно выделенный/подгружаемый кусок кода, для разных принтеров отличающийся, но такое обычно авторами не документировалось и если не лень и надо сделать аналогичное для неподдерживаемого принтера (и не дай бог с графикой), то дизассемблер в помощь (чтобы узнать чего оно делает в своем оригинальном "драйвере") и датащиты на принтер (чтобы понять к какому виду надо приводить оригинальный протокол). Это в общем виде. Что до конкретного принтера, то он достаточно древний чтобы быть поддержанным "искаропки" если повезет. :)
Доработал для установки печатающих головок от HP 51604A.
Может не по теме, дайте описание переделок.
Имею такой же принтер.
Любопытно.
Дмитрий2012
05.11.2021, 10:19
Дима, привет. Нет, не будет работать. В ПРОшке адресация портов по IN/OUT, а порты F60x в О-128 адресуются, как память (LDA/STA).
Можно попробовать дизассемблировать драйвер и переделать под ПРО. Только ещё надо бы как-то понять, так ли устроен порт на битовом уровне, и что за "инверсные данные" в описании порта 01h ?
Привет! Плохо, что придется переделывать… По идее порт принтера Орион-ПРО должны были сделать совместим, с портом принтера Орион-128. Тем более уже существовал софт от Орионсофт.
По поводу инверсии, я думаю это связано с инверторами на выходах 580ВВ55, у принтера в моем случае на входе также установлены инверторы посмотри схему в архиве по ссылке, которую я приложил ниже для kovdry. Тут видимо придется экспериментировать с драйвером, может придется данные инвертировать, надо разбираться.
Нашел описание подпрограммы PRINT, надо попробовать хоть один символ вывести на печать. Если заработает, придется разбираться и адаптировать имеющийся софт для работы с принтером.
Подпрограмма PRINT (0F821H) предназначена для обслуживания печатающего устройства и выполняет две функции.
Если входное значение регистра A=0, то подпрограмма PRINT выводит символ с кодом, указанным в регистре C, на печать. В регистре A на выходе возвращается байт состояния печатающего устройства со следующими значениями битов:
D0 – отсутствие бумаги в принтере,
D1 – признак ошибки ERROR,
D2 – признак отсутствия готовности BUSY,
D3..D7 – нули.
Таким образом, признаком готовности принтера является выходное значение A=0.
При входном значении регистра A=1 подпрограмма PRINT выдает байт состояния принтера (как и при печати символа).
Что за ПринтМастер? Если это что-то самодельное радиолюбительское из Ордос
Print Master под ORDOS с драйверами принтера в виде отдельных файлов под названием LPT (описана в журнале Радио №10-11 1993г.) Разработана фирмой «ОРИОНСОФТ» программку приложил в архив к сообщению в папке USER2.
Может не по теме, дайте описание переделок.
Имею такой же принтер.
Там ничего сложного, для головки от HP надо повысить напряжение. Кто-то пишет необходимо увеличить напряжение до 24V, в брошюрах в архиве написано до 23V. Не стал рисковать, у себя пока сделал 23V. Дополнительный стабилитрон между точек 1 и 2 по описанию в листках не стал устанавливать. Заменил стабилитрон на Д814Д, и подрегулировал напряжение подстроечным резистором. В инете есть информация.
Ссылка на архив https://dropmefiles.com/dotwS
На днях обзавелся матричным EPSON LQ-630, работает, имеет параллельный порт. Прям даже интересно его куда-нибудь присобачить. Вот только Far Cry 6 и Elite Legend всё время свободное отнимают :)
https://i.ibb.co/C2SGHGn/Orion-PRO-Print.png (https://ibb.co/M6J0C0R)
В принципе, в выводе байта на принтер нет ничего сложного, на сколько помню, если без анализа всех сигналов от принтера:
1) Ждем пока BUSY упадет в "0"
2) Выставляем байт данных
3) Формируем Strobe
4) Ждем от принтера ASK
5) Убираем strobe
6) Повторяем, пока есть, что слать.
Помню, что можно было упростить и вместо п 3,4,5 просто сформировать Strobe определенной длительности ( 100 мкс, например)
Что меня смущает, это то, что в Орионе на выходе порта стоит инветор с ОК, это нормально, но отсутсвтуют резисторы подляжки к +5. Я могу и ошибаться, но когда я разбирал плату мультикарты (были такие с портами COM|LPT|IDE для PC) я там видел и резисторы подтяжки и маленькие емкости, типа 1n на землю на каждом выводе данных, видимо, для гашения выбросов.
Привет! Плохо, что придется переделывать…
Имхо, всё не так сложно, как кажется.
надо попробовать хоть один символ вывести на печать. Если заработает, придется разбираться и адаптировать имеющийся софт для работы с принтером.
Не знаю почему, но мне кажется, что если просто выводить на принтер ASCII-коды, то он будет их распечатывать в текстовом виде, безо всяких драйверов.
По крайней мере было бы странно, если это не так, кмк.
Надо попробовать на живом принтере)
Ну да, Denn, должен. Я посмотрел, похоже он и по камандам обычный Epson совместимый принтер. Единственное, на что нужно обратить внимание, что он может работать как в режиме ИРПР, так и ИРПР-М (Centronics), в инструкции написано где перемычку поставить, ну Дмитрий2012 и так это уже сделал. Подтягивающие резисторы на стороне принтера установлены. То что у принтера на входе инверторы, думаю не важно, раз он Centronics совместим, значит софт принтера учитывает эту инверсию. На стороне Ориона, надо учитывать наличие инверторов и перед выводом данных в порт ВВ55, инвертировать байт данных.
А вот код для печати на принтере, как вы думаете, где я его взял?
PORT_01_PRNT_DAT EQU 0x01
PORT_02_PRNT_CTL EQU 0x02
PORT_03_CTL EQU 0x03
; Программирование портов ВВ55
LD A,0x98
OUT (PORT_03_CTL),A ; DIP SW, PRINTER
; ----------------------------------------------
; Печать
; Вход:
; 1. A !=0 - чтение статуса PRINT
; 2. A = 0 - печать символ
; C = символ для печати
; Выход:
; A = 0 - символ принят
; A != 0 - принтер не готов
; D0=1 - неисправность (ERROR)
; D1=1 - занят (BYSY)
; ----------------------------------------------
PRINT
AND A
JR Z,WPRT1
STATU
PUSH BC
LD B,0x5
NOP
IN A,(PORT_02_PRNT_CTL)
RLCA
RLCA
RLCA
XOR B
AND 0x7
POP BC
RET
; ----------------------------------------------
; Печать символа из регистра С
; ----------------------------------------------
WPRT1 PUSH BC
PUSH DE
PUSH HL
WPRT2
CALL STATU
JR NZ,WPEND
LD A,C
CPL
OUT (PORT_01_PRNT_DAT),A
LD A,1 ; STROBE -\_
OUT (PORT_02_PRNT_CTL),A
NOP
NOP
XOR A
OUT (PORT_02_PRNT_CTL),A ; STROBE _/-
CALL STATU
WPEND
POP HL
POP DE
POP BC
RET
Ну да, это код той самой подпрограммы BIOS Ориона 0xF821 (PRINT), ничего сложного и необычного.
Romych, команда CPL как бы намекает на пред-коррекцию в виде инверсии данных. Но с другой стороны, Дима писал про то, что внутри принтера также есть инверсия сигналов ШД, стало быть в итоге до мозгов принтера данные доходят в прямом виде. Не понятно.
В любом случае, вышеприведённый код показывает, что "драйвер" просто закидывает байты в интерфейс, и никаких преобразований кроме инверсии там нет.
В общем, сваять такой драйвер на ассме под конкретную ситуацию (платформу, ОС и т.п.) - дело пяти минут :)
Скорее всего любой принтер с печатью под DOS должен подойти ,HP 5L 6L и подобные ,не только матричники и струйники .
Дмитрий2012 поднял интересный вопрос - отличия околоотечественных (российских/украинских/белорусских) клонов z80 от оригинала. Набросал тестик, Дмитрий проверил на реале (за что ему большое спасибо!) и оказалось, что есть отличия во флагах после outi. У Дмитрия Thesys Z80H, если у кого-то есть другие наши клоны z80 или U880 (которые скорее всего совпадают по флагам), а также возможность и желание проверить на реале, то я выложу тест. Тест для практически любого варианта cp/m, в принципе подойдет не только про, но если другой комп, то надо уточнить какой, чтобы out не попал во что-нибудь жизненно-важное.
Дмитрий2012
16.12.2022, 12:56
Оставлю здесь, может кому пригодится. Просмоторщик картинок с ZX Spectrum и AY Player с поддержкой файлов формата .pt2, .pt3 и .pt3 Turbo Sound. Работают только в SDOS c поддержкой HDD.
https://youtu.be/vam6301AQxc
Дмитрий2012
20.02.2023, 15:39
Может кто подскажет, под Орион-ПРО драйвера для принтера существуют в природе? от Ориона-128 они я так понимаю не подойдут на прошку, схемы подключения принтера ведь разные...
Может кому пригодится. Нашел все-таки софт и драйвер принтера для Орион-ПРО. Программа находится на диске в USER1 и называется PM (Print Master V1.0). Как написано в описании работает только в OSDOS не ниже V2.6Х в первой странице ОЗУ.
Теперь имея нормальный драйвер, думаю и к ORDOS-совскому софту получится его прикрутить.
Добавил программу PRINT MASTER под ORDOS c исходниками драйверов принтера для Орион-ПРО. Проверено в работе с принтером MS6312.
RUSSIABEAR
20.02.2023, 16:21
а где можно посмотреть как подключен TURBO SOUND ?
Дмитрий2012
20.02.2023, 16:52
а где можно посмотреть как подключен TURBO SOUND ?
Насколько я знаю для Ориона никто карты с Turbo Sound не разрабатывал, видимо никому не интересно. Поэтому приходиться подключать внешние карты вместо AY.
Я попробовал 2 варианта, и оба вроде работают, но никакой гарантии не дам, что у других заработает.
1 - карта AYX-32 https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=915982&viewfull=1#post915982
2 - карта Turbo Sound FM PRO http://www.nedopc.com/TURBOSOUND/ts-fm-pro.php
https://pic.maxiol.com/thumbs2/1676900408.2152318320.turbofm.jpg (https://pic.maxiol.com/?v=1676900408.2152318320.turbofm.jpg&dp=2)
RUSSIABEAR
20.02.2023, 17:05
т.е. надо просто взять turbo sound и воткнуть вместо ay. AY Player уже учитывает порты по которым идет обращение ко второму Ay или надо еще какието железные правки вносить ?
Дмитрий2012
20.02.2023, 17:15
т.е. надо просто взять turbo sound и воткнуть вместо ay. AY Player уже учитывает порты по которым идет обращение ко второму Ay или надо еще какието железные правки вносить ?
Ну да, берется карта, которая устанавливается на место AY и все, никаких железных правок делать не надо, софт все делает. Плеер который выкладывал выше, заточен под порты Орион-ПРО. Под другие порты AY нужно корректировать софт.
автор этого треда выкладывал исходники в этом сообщении https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=755286&viewfull=1#post755286
как водится, за давностью времени, по ссылке ничего не открывается.
остался ли у кого-нибудь архив, выложенный автором? поделитесь пож.
АлександрПП
09.06.2024, 00:27
Видимо, вот это:
https://disk.yandex.ru/d/8Ku_jZqWreTDtw
автор этого треда выкладывал исходники в этом сообщении https://zx-pk.ru/threads/24285-orion-pro-softvernye-dela.html?p=755286&viewfull=1#post755286
как водится, за давностью времени, по ссылке ничего не открывается.
остался ли у кого-нибудь архив, выложенный автором? поделитесь пож.
ссылка на "orion_soft.7z":
https://disk.yandex.ru/d/qJqMrG0WZHVZaw
ссылка на архив cd-rom Вячеслава Сугоняко:
https://disk.yandex.ru/d/HbwS4X600h1FbQ
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot