-
- ? Alexander "Sandro" Tishin
- 12.09.2023 23:09
Это какая их проблемных версий болдера? Я в них запутался уже, мне страшно чинить поддержку болдеров ;)
¤
На самом дела на реале в такой ситуации код должен глючить, но таки ловить нажатие примерно в 60% случаев. Так как проверка прерываний происходит при чтении очередного опкода, кто не успел -- ждёт следующей команды. А за время декодирования опкода битик в порту может и перекинуться ...
¤
Но так делать с флагом как бы некорректно. Я бы лично наоборот выставлял прерывание после битика с задержкой на команду. Или даже на две. ИМХО, так корректней.
- ? Alexander "Sandro" Tishin
- 12.09.2023 10:11
> Экспериментальные изменения со сбросом бита готовности в 177660, он теперь сбрасывается через некоторое время после чтения регистра 177662.
¤
¤
А каков смысл этого? Реальное железо сбрасывает сразу.
- ? Alexander "Sandro" Tishin
- 01.06.2022 18:16
Обновление: http://sandro.pdp-11.ru/bin/bk2010-0.6-alpha8.zip
¤
Теперь есть антифликер -- подавитель мерцания 50 Гц. Для демок, использующих смешение кадров для новых цветов. Включается в меню Modes & Colors.
- ? Alexander "Sandro" Tishin
- 30.04.2022 20:14
По указанной информации причиной почти наверняка является залипание бита удержания клавиши (маска 100 в регистре 177716). Он там своеобразно формируется. Я бы проверил компоненты R3, R4, C3, C4 -- это они формируют задержку его включения и выключения.
¤
Номиналы: 180k, 100k, 0,33 мкФ, 0,47 мкФ. Но могло и просто что-то отвалиться в их подключении.
- ? Alexander "Sandro" Tishin
- 05.02.2022 17:53
Забыл добавить -- с ключом -flc происходит видеозапись в этом формате
- ? Alexander "Sandro" Tishin
- 05.02.2022 17:51
Обновление: http://sandro.pdp-11.ru/bin/bk2010-0.6-alpha7.zip
¤
Не очень большое, из заметного -- починена мышь, починен таймер -- там был косяк с байтовой записью, который ломал новогоднюю демку.
- ? Alexander "Sandro" Tishin
- 19.09.2021 08:26
ДН> В SVN это делается жмаком мыши в пункт меню "Update to revision" и указанием нужной ревизии.
¤
А вот и нет. В SVN это делается консольной командой svn update. Жмаканье мышкой -- это в графической оболоче. Которые для Git тоже есть, например Tortiose Git. И заодно интеграция во все современные IDE. Которой у SVN нет и скоро совсем не будет.
¤
ДН> И уж точно нет ничего проще "SVN Update" и "SVN Commit". В последнем правда да, придётся пораскинуть мозгами и сочинить или не сочинить текстовое описание правок.
¤
Самокат проще автомобиля. Предложи любому автовладельцу поменять автомобиль на самокат. предсказываю, узнаешь о себе много разного.
¤
ДН>GIT слишком замудрён, ИМХО.
¤
Нет, это SVN слишком убог. К примеру, как в нём поменять точку закрепления ветки? в Git это одна команда: git rebase. А как это сделать в SVN? Правильный ответ: НИКАК!!!
Лично я, когда мне после нескольких лет работы под Git пришлось что-то сделать в SVN -- исплевался весь. Какой же он корявый, неудобный, и лишён необходимейших вещей. Хоть того же rebase. Кстати, bisect в SVN завезли, или нет ещё?
¤
Ну и вообще, накто не мешает использовать git в SVN-образном режиме. Просто это как купить мультул и использовать его только для заточки карандашей. Опять же есть Mercurial, который попроще и с меньшим порогом перехода с SVN, базовые вещи работают так же. Но и в нём есть вся мощь DVCS, которой в SVN нет по определению, она же однопользовательская.
- ? Alexander "Sandro" Tishin
- 15.09.2021 07:09
Хотя насчёт того, что не пользуюсь -- git внутри позволяет очень много всего. Включая восстановление скрытой истории. Напрмер сделал ты rebase, но не на то, или не так. Зная работу потрохов git, можно сделать обратно. Но для этого уже действительно надо хорошо понимать, как он работает.
- ? Alexander "Sandro" Tishin
- 15.09.2021 06:59
А чего там уметь? Ты же не Линус Торвальдс, чтобы заводить пронкты с тысячей веток разного состояния готовности.
¤
А а так -- всё, что нужно:
¤
git init/clone/pull/push (создание и синхронизация репо)
git status (что у нас происходит вообще?)
git diff (чего это я тут намутил?)
git show (... и уже успел сохранить в репо?)
git add (добавляем файлы в очередной коммит)
git commit
git commit --amend (для случаев забывчивости ;))
git checkout/reset (важно знать разницу!)
¤
git tag (ну надо же оставлять отметки в истории)
¤
git stash save/pop/apply (очень полезная команда!)
¤
ну и ветки:
git branch
git checkout [branch]
git merge
git merge --rebase (для линеаризации истории)
git merge --onto (для хохмы ;) ну и для ленивцев)
git cherry-pick (фигурное перемещение коммитов)
¤
Собственно, это всё. Я больше почти ничем в git и не пользуюсь.
- ? Alexander "Sandro" Tishin
- 13.09.2021 20:23
Переходи на git. Он реально удобнее. И умнее.
- ? Alexander "Sandro" Tishin
- 13.09.2021 09:59
А не надо в новом софте вообще применять что-то, кроме юникода. От реликтовых кодировок проблем больше, чем пользы.
¤
Ну, наши любимые эмулируемые машины -- это особый случай, разумеется. КОИ неизбежен, как Третья Мировая Война :D
- ? Alexander "Sandro" Tishin
- 22.08.2021 18:31
Ну зачем ты ругаешься?
- ? Alexander "Sandro" Tishin
- 10.08.2021 15:10
Прошу прощения за такую большую задержку. Обновление!
¤
http://sandro.pdp-11.ru/bin/bk2010-0.6-alpha6.zip
¤
Улучшен экран, исправлены некоторые баги. SMK пока ещё не работает, хотя часть функций есть.
- ? Alexander "Sandro" Tishin
- 20.06.2021 22:24
Потому, что переменная A -- число с плавающей запятой, а A% -- целочисленная.
Плавучка находится в самом конце третьей ПЗУ бейсика, там и проблемы. То есть поломана память либо по адресам 160000+, либо только 170000+, хватит и этого.
То есть, память там таки отображается неправильно...
- ? Alexander "Sandro" Tishin
- 18.06.2021 21:40
А если так -- заработает?
¤
10 FOR A%=0 TO 10
20 NEXT А%
30 PRINT "text"
- ? Alexander "Sandro" Tishin
- 12.03.2021 18:30
Не прошло и года ...
¤
Времени делать особо не было, зато было время подумать. Так что я несколько передумал. В в первую очередь критична поддержка старого софта (игр в первую очередь) с возможностью раскрасить с минимальным вмешательством в код. Буквально пару недель мне в голову пришла мысль, как это сделать, так что я нарисовал упрощённую версию. Теперь произвольно выбирать 3 из 64 нельзя, зато можно править код почти людой ишроы без изменгения размера и вообще без вставок; сохраняется вариант 3 из 8 в любом сочетании, программное переключение в 512 точек, 4 оттенка серого или любого другого из 7 цветов, и это ещё не всен палитры.
Резать на плате ничего не надо, припаиваемся шлейфом к разъёму МПИ и ещё к 5 точкам на плате. Но лучше к 6 для нормального сброса, если у кого кнопка есть ;)
¤
Более строго:
* Заменяются 3 цвета, чёрный остаётся чёрным
* 8 базовых цветов
* 512 базовых палитр
* Градиенты в 4 уровня яркости (включая чёрный)
* Программное переключение между режимами 256 и 512 точек на строку
* Совместимость с БК-0010 и БК-0011М (пока без поддержки штатных палитр)
* Совместимость с имеющимся ПО
* Обратная совместимость нового и адаптированного ПО с исходной машиной
* Модификация большинства игр без изменения размера и функциональности машинного представления
* Блок подключается к шине МПИ и нескольким точкам на плате
* Никаких модификаций самой БК не требуется
¤
* Не более 15 ИС малой степени интеграции
¤
Уже нарисовал тракт данных, вышло ровно 10 корпусов мелкоты. Ещё пара на управление -- и всё. Осталось свести всё на одном листе, разложить управление на вентили, и можно делать пробную разводку цифры.
¤
Не факт, что это имеет смысл пускать в серию, но я всё же хочу довести проект до логического завершения.
¤
Да, полная карта палитр вот: http://sandro.pdp-11.ru/palext/bkpals1k.png
- ? Alexander "Sandro" Tishin
- 03.03.2021 13:58
Оба-на! Да, нашёл косяк. Спасибо за .ini, без него бы дольше возился. Починю. Но немного попозже, OK?
- ? Alexander "Sandro" Tishin
- 03.03.2021 09:46
Не могу воспроизвести. На моей конфигурации работает. А предыдущая версия как? Есть отладчик?
¤
Или вообще старта нет? Я не совсем понял.
- ? Alexander "Sandro" Tishin
- 23.02.2021 22:18
А как это отмонтирует? Файл закрывает? Так этого не нужно. Достаточно передать HANDLE файла, и всё. Разрешение на запись выдаётся хэндлу, а не процессу, насколько я помню.
- ? Alexander "Sandro" Tishin
- 10.02.2021 21:33
Перезалил версию с правильной версией игрового поля, а то оно было инверсное ;)
- ? Alexander "Sandro" Tishin
- 10.02.2021 16:12
... можно скачать по адресу http://sandro.pdp-11.ru/bin/desolate01.zip
¤
Там загрузочный диск и крайне непричёсанные исходники. Основой послужил порт Никиты Зимина для УКНЦ. Оригинал был написан ещё в 2004 (?) году для программируемого калькулятора TI-83 Plus (очень мощная штука, кстати говоря).
¤
Управление -- стрелки, пробел/ввод -- действие, Q переключает стрельбу/исследование, I - инвентарь, P - пауза/меню. Сохранений нет и в исходной игре никогда не было. Это хоррор, в нём убивают навсегда. Коды к замкам при повторном прохождении не подходят (кроме замков первого уровня).
Не забываем читать все записи, которые находим. Карту рисовать надо, игра большая.
- ? Alexander "Sandro" Tishin
- 01.02.2021 22:06
Мне тоже не приходило. Поэтому при старте просто всё обнулялось, кроме PSW, куда писалось 340. Ну и начальный PC, само собой.
- ? Alexander "Sandro" Tishin
- 31.01.2021 15:45
gid, а это ничего, что у БК инверсная шина? Надо всё же смотреть схему. Потом посмотрю.
¤
В любом случае, выложил версию с мелкими правками:
¤
Добавлены ключи -nohud (не показывать оверлей эмулятора), -trace [address] (выводить трассу исполнения команд после срабатывания ловушки по адресу address, либо сразу), при загрузке с ключом -bin запрещены таймерные прерывания.
Если ничего из этого не нужно, то можно не обновляться.
http://sandro.pdp-11.ru/
¤
-nohud гасит оверлей только полсле получения первого отрендеренного кадра; это сделано на случай, если эмулятор зависнет при старте.
-trace пишет трассу в файл cputrace.log в текстовом виде, с дизассемблером. Параметр -- ловушка PC, после которой начинается вывод. Чтобы не дампить начальную инициализацию и т.д. Если не указано или ноль, то трасса выводится с самого начала.
Места на диске нужно МНОГО. На 11М загрузка ANDOS до появления вращающейся надписи занимает примерно 40МБ.
- ? Alexander "Sandro" Tishin
- 30.01.2021 19:31
Когда я отлаживал начальную версию эмулятора, то так и сделал. Текстовый мегадамп с полным отчётом на каждую команду. В принципе, код где-то там ещё жив, и его даже можно активировать.
¤
Кстати, совсем не нужно сравнивать снимки до и после исполнения команды. Достаточно всего лишь протоколировать изменения наблюдаемого состояния машины. То есть записи в память, в регистры (включая PSW), результаты чтения памяти/устройств, ход времени, прерывания.
И это в общем-то всё, в БК даже ПДП нету.
- ? Alexander "Sandro" Tishin
- 30.01.2021 19:25
Кстати, если кому интересна мышь, то просьба проверить корректность её работы. Сейчас она сделана несколько хакнутым образом, но если всех устраивает -- то так и останется на неограниченное сверху время.
- ? Alexander "Sandro" Tishin
- 30.01.2021 19:08
Потому, что косяк. :(
¤
Когда делал поддержку 11М, то схемы под рукой не было, так что писалось по официальной доке и по наитию. Потом перепроверить забыл.
¤
Завтра буду чинить всё.
¤
Эх, надо бы полный макет БК на Verilog собрать, и сомнительные места проверять на нём. Заодно и нормальную Э3 надо бы нарисовать и отконвертить в общечитаемый формат вроде svg. Мечты, мечты ...
- ? Alexander "Sandro" Tishin
- 30.01.2021 07:04
А, всё понял. Таймер-то при старте разрешён. MTPS #0 и поехали по таймерному прерыванию на рестарт.
- ? Alexander "Sandro" Tishin
- 30.01.2021 06:46
А нет, стек при опции -bin таки ставится куда надо. Сам же сделал и забыл уже. Буду смотреть более детально. Но не сейчас.
- ? Alexander "Sandro" Tishin
- 30.01.2021 06:32
Именно в этом и причина. Сейчас при загрузке через -bin машина не инициализирована никак. Соответственно SP = 0. Отчего любые попытки писать в стек приводят к Trap to 4.
¤
Если грузить из монитора командой L, то TRAPTST работает.
¤
Сделаю SP = 1000, пожалуй. Пусть будет.
¤
Выложу завтра, наверное. Сейчас мне через два часа на работу.
- ? Alexander "Sandro" Tishin
- 30.01.2021 00:42
А зачем его как-то документировать? Это же стандартная инструкция PDP-11, от EMT отличается только опкодом и вектором.
¤
Вот соответствующие фрагменты кода эмулятора:
¤
//регистрация опкодов при инициализации декодера команд
// ...
register_opcode(0104000, MASK_BRANCH, OP_EMT);
register_opcode(0104400, MASK_BRANCH, OP_TRAP);
// ...
¤
// Интерпретация декодированных команд
// ...
case OP_BPT:
trap(014);
break;
case OP_IOT:
trap(020);
break;
case OP_EMT:
trap(030);
break;
case OP_TRAP:
trap(034);
break;
// ...
¤
Неясно, отчего бы ему не работать? Кстати, десяточный бейсик не работал бы, он же весь на TRAP сделан, если я правильно помню. (Или это бейсик от DEC так сделан? Подзабыл уже.)
¤
В общем, можно минимальный, 10..20 команд, тест?
- ? Alexander "Sandro" Tishin
- 26.01.2021 00:50
Чтобы не тянуть резину, выложил 0.6-alpha4
¤
Основное:
1) Джойстик теперь, как в JoyVox, но только один. Заодно переназначил гашетки на более анатомические позиции, теперь первая -- это 0/., вторая - +/Enter. Select, Start -> /, *.
2) Мышь. Пока отключить никак нельзя. В младшем байте, то есть поверх джойстика. Захват -- щелчок в окно эмулятора, отпустить -- Ctrl+щелчок. Поддерживаются две кнопки.
3) При использовании ключа -bin в режиме 11М размещение ОЗУ соответствует MOV #5000, @#177716
4) Теперь есть скриншот в Clipboard (Ctrl+F12).
¤
Ну и всякие мелочи.
¤
На очереди теперь полноэкранный режим, исправление синхронизации кадров, SMK, и запись видео. Уж не знаю, в каком порядке получится.
¤
http://sandro.pdp-11.ru/
- ? Alexander "Sandro" Tishin
- 24.01.2021 19:54
Спасибо, понятно. Ну, значит, пока что SMK будет работать так, как в документации. Кто не спрятался -- я не виноват. С мышью я сейчас экпериментирую -- да, есть странности разные с опросом в разных программах. Пока сделал так, чтобы ксидос работал, ну и всё остальное вроде бы понимает. Чтобы не летало, сделал множитель скорости 0,2 -- приемлемо, на мой вкус. Надо будет потом вынести в конфигурацию. А так, похоже, мало кто толком понимал, как опрашивать мышь.
¤
Ну пусть будет эквивалент MOV #5000, @#177716. Один фиг при штатном пуске это ни на что не влияет.
¤
Мне очень не хочется выносить в .ini настройки, потенциально ломающие эмуляцию (стартовый адрес и т.д.). Кто-нибудь обязательно запишет туда ерунду, всё поломается, и ура ;(
¤
Ключи -- это другое дело. Они же на виду.
¤
А рулон, например, в реале при загрузке может оказаться в любом положении. Я бы не стал на него полагаться. Лучше инициализировать ручками. То же самое касается страниц и т.д.
В общем случае, нам всё равно ничего не гарантируется. Такая вот печаль.
- ? Alexander "Sandro" Tishin
- 13.01.2021 02:54
И было спрошено, а зачем это, кроме как для написания нескольких демок. Вопрос, разумеется, грубый. Но справделивый. Поскольку, зачем?
¤
И вот возник у меня вопрос: а может, взять все осмысленные комбинации 3 цветов + чёрный, м забать их в таблицу, да и так и спользовать, поддердиая овместимость с 11М?
¤
Так вот по моим подсчётам, что выходит. Приходится пожертвовать фиолетовым, правда, но остальных интересных комбинаций цветов всего 20 штук. Причём этот набор сильно пресекается с набором палитр 11М, в 5 бит всё влазит, и ещё остаётся место для окрашенных 1-бит режимов.
¤
Вся модификация для БК-0011М -- другая прошивка для 556РТ4, пара корпусов мелочи, несколько порезов и проводков.
¤
Все старые игрушки перекрашиваются мелкой правкой кода. Без изменения размера.
¤
Но, для вкуса можно спрайты перецветить.
- ? Alexander "Sandro" Tishin
- 13.01.2021 02:41
Я вот думал про красивое устройство для палитр. Думал, думал, и написал сюда на форум один из вариантов.
- ? Alexander "Sandro" Tishin
- 13.01.2021 02:34
Извините, что ругаюсь, тут в реале оптом на меня кирпичи посыпались. Больно!
¤
В любом случае:
1) Первый джойстик из Joyvox со всеми кнопками будет. Со вторым вопрос, куда мапить. Реальный джойстик из просто джавы недоступен. Выделять блок клавиш? Собственно, это ещё выше обсуждалось, я пробовал кодить -- очень грязно выходит.
2) Полноэкранный режим. Надо? Есть опять же грязный код, но ... в общем, кто не спрятался, я не виноват.
3) Есть грязный мышехак. Надо найти физическую Марсианку, и восстановить реальную схему на всякий случай. Мышь у меня была, но судьба коробок, валявшихся более 20 лет ... или хак пройдёт?
4) Кстати, несмотря на те же биты мышь от джойстика отличается в один момент. Джою плевать на бит сброса передвижения. Но кто одно устройство на другое решил наложить -- наркоман.
5) Мышь можно проверять без писка в Covox. Догадайтесь, почему.
6.1) SMK, етить. Кто-нибудь может XTCKJDTXTCRBV ZPSRJV объяснить, как же у него на самом деле работает отображение памяти?
6.2) SMK, продолжение -- физического устройства для проверки у меня нет. Официальная документация написана ретикулянцами. Есть человеческое описание или хотя бы HDL модель?
¤
(далее совсем жесть)
- ? Alexander "Sandro" Tishin
- 13.01.2021 02:10
Будет сделано. на 40000 будет вешаться страница с кодом выбора 1, на 100000 страница с кодом выбора 2. Не номерам из руководства по бк, а по кодам.
¤
Кто эти непонятные номера страниц выдумал -- не знаю, но надеюсь, что в аду для него заготовлен особый лабиринт с надписями на выходах из комнат, которые всегда ведут не туда (за вычетом надписи "начало").
¤
Кстати, ММ надо подвергнуть пыткам и вызнать из него все имена и фамилии виновных. Он же сам себя показывает главным свидетелем и соучастником преступления.
¤
(сейчас буду постепенно озверевать)
¤
Джойстик будет сделан, как в одинарной версии Joyvox. Манве сотоворащи выставляется претензия за недостойное отношение к документированию собственных достижений труда.
¤
Двухканальная версия Joyvox зачем сделана так? Чтобы убить совместиместь с принтером и прочей периферией?
¤
Порт 177715 для кого не использован? Для аигрека? Так он нам очень мало неиспользован.
¤
Мышь. Это отдельный печальный вопрос. Потом ...
¤
Кстати, о моём присутствии в telegram-чате. Дуровские телеграфисты меня очень быстро забанили без объяснения причин. В прямом смысле без объяснения -- запросы в техподдержку игнорируются. Борцы за свободу слова на мировом уровне, х.ле...
¤
Никогда не верил всем этим "борцам за мир во всём мире" всех сортов и мастей. И им тоже. Только ради БКшников зарегался, только с БКшниками и общался и вот на тебе. Я даже и не удивлён.
¤
Кстати, после бана сторонниками свободного общения ты не можешь узнать, с кем и о чём говорил. Ребята, киньте пожалуйста историю мне почтой, продолжим как-то иначе, разговоры повисли же.
¤
(продолжим чуть далее для систематичности изложения)
- ? Alexander "Sandro" Tishin
- 03.01.2021 11:29
... но в Telegram-чат я таки добавился. Так что на https://t.me/bk0010_11m я (теоретически) доступен.
- ? Alexander "Sandro" Tishin
- 03.01.2021 11:24
Да нет там никаких плясок, просто по команде перемещения головки делается компиляция физического образа дорожки. И если была запись, то анализ структуры и преобразование в образ диска. У меня так сделано.
¤
Кстати, это один из способов отличить эмулятор от реала -- читается не обязательно то, что пишется на диск.
- ? Alexander "Sandro" Tishin
- 03.01.2021 11:20
Был неправ -- физическое железо у Макса есть! Даже на продажу предлагает ;)
¤
Но в любом случае, там ещё копать и копать.
- ? Alexander "Sandro" Tishin
- 31.12.2020 12:20
Adam, насколько я понимаю, хочется чего-то вроде интеграции эмулятора на манер IDE, с запуском новой программы по кнопке?
¤
Тогда так:
1) Эмулятор НИЧЕГО не запоминает из состояния дисков хозяйской машины. Поэтому прибиты гвоздями до следующего рестарта только ПЗУ.
2) .bin каждый раз читаются заново. Собственно, я так софт у себя и отлаживаю.
3) .bkd не загружаются, а монтируются. Синхронизация образа в памяти эмулятора и файла образа происходит по каждой команде перемещения блока головок. Можно сделать по выключению-выключению мотора и даже по таймауту. Наверное, даже нужно.
В любом случае, проблема синхронизации связана исключительно с тем, что почти все ОС для БК хранят в памяти копии таблиц файловой системы. Так-то образ можно править на лету, без проблем.
4) Нужна возможность программно инициировать загрузку .bin или рестарт БК? Хм, мысли на эту тему есть.
5) Какие именно предложения KUVO являются киллерфичей? Если честно, перечитал историю сообщений и несколько не понял. :(
¤
И ещё: у меня ВКонтактика нету. Собственно, у меня он забанен по IP за неприлично навязчивую рекламу, к тому же и жрущую трафик безмерно. Есть какие-то другие способы? Не очень хотелось бы его разбанивать, так как-то спокойнее.
¤
PS: Кажется, окончательно понял, с чего скроллы дрожат больше нужного. Думаю, как устранить малой кровью. Но это точно не сейчас, тут нужно МНОГО тестов писать на разные случаи. Дня на два возни, и чтобы меня не отвлекал никто.
- ? Alexander "Sandro" Tishin
- 31.12.2020 11:40
Эмулятор забрасывать не собираюсь. Собственно, у меня есть планы написать кой-чего для БК, так что эмулятор нужен самому. С временем вот сложно. Чуть DiHalt не пропустил, надо бы хоть чего-то туда отправить.
¤
Прежде, чем что-то называть стандартом, его неплохо бы выложить на всеобщее обозрение. ;) Где именно в интернете находится стандарт на Joyvox?
¤
Указанная схема -- это джойстик из из поставки БК-0011 с добавленными кнопками. До 1989 года его не было физически, все паяли джойстики по собственному вкусу. Ok, пусть будет такая разпайка. Правда, это ещё и распайка мыши, подключенной по "прямой" схеме. Но при известном умении (и оригинальном желези либо точной эмуляции) мышь и джойстик можно читать одновременно ЕМНИМС. Надо по схеме уточнить.
А правильной была бы схема с мышью через блок КМ, т.е. в старшем байте. Но увы, так сложилось исторически ...
¤
Впрочем, в автомате можно распознать и её. С известной долей уверенности.
- ? Alexander "Sandro" Tishin
- 31.12.2020 11:01
gid, не надо прибедняться ;) Все мы зачастую делаем, как проще, а не как лучше.
¤
1. А надо. "Распространённость нарушения не оправдывает нарушителя". Какой-то метод обнаружения должен быть. Кстати, это и к JoyVox относится тоже.
TurboSound -- мрак. Вот чего уж точно не стоит клонировать из-за специфической микросхемы FM синтезатора. Её вообще возможно сейчас купить?
¤
2. "Так всегда делали" -- тоже не аргумент. В 177714 всё пихали по историческим причинам и по лени. В релультате у гас там принтер, мышь, джойстик и Covox на одних и тех же битах, и всё конфликтует друг с другом. Этот бардак надо как-то разгрести. И уж точно усугублять его не надо. Можно было бы, например, дополнительно для AY и Covox выделить отдельный порт, ну а из старого адреса подсматривать для совместимости. Ну и раз уж навешивать железо, можно было бы сделать сепаратор команд для AY на 177714/15 порту.
¤
3-5. "SuperMax этим уже занялся и всё сделал" -- ??? Макс только НАЧАЛ делать. И меет смысл, пока ещё не поздно, написать нормальную спецификацию, а не хзчто.
¤
Так что надо бы нормально подойти к вопросу. Во избежание.
¤
PS: Пункта z у Макса нет вовсе. А надо бы, раз уж там доппамять.
- ? Alexander "Sandro" Tishin
- 27.12.2020 11:22
Несколько вопросов:
¤
1) Как программа должна распознавать наличие AY и их количество?
2) Почему опять 177714? Адресное пространство закончилось?
3) Кстати, может и Covox нормальный сделать на отдельном порту?
4) АЦП хотя бы 8-бит моно? (У AY есть два параллельных порта, кстати говоря)
5) Почему именно AY? Меандр наше всё?
...
z) На дворе уже 2020 год. Пять дней до 2021. Может, хоть нормальный цифровой синтезатор сделаем? Можно даже на радость ММ сделать исторически-реконструкторскую версию с логикой на 556РТ1 :P
- ? Alexander "Sandro" Tishin
- 27.12.2020 11:21
Прошу прощения -- с октября месяца работаю по 6 дней в неделю, на эмулятор просто не остаётся времени. :(
¤
29 декабря, по идее, должны сдатавть работу, так что после этого время будет. Я надеюсь.
¤
Попробую что-нибудь из доработок собрать в ближайшее время.
¤
Да, про загрузку .bin -- я подумал, пришёл к выводу, что их всё же надо грузить в подготовленный снапшот и никак иначе. Сжатый снапшот занимает несколько КБ, можно даже в бинарник встроить.
- ? Alexander "Sandro" Tishin
- 10.09.2020 13:15
Понятно. В эмуляторе там будет по адресу 040000 страница с кодом выбора 1, т.е. второй экран, далее ПЗУ. Ну можно далее ещё ОЗУ отобразить. Даже надо было бы как раз для таких случаев.
¤
При загрузке из БОС там может быть какая угодно страница ОЗУ. Хоть нулевая ещё раз.
¤
Думаю, проще будет сделать известные страницы ОЗУ до 140000, чем пихать что-то в командную строку. Сойдёт?
- ? Alexander "Sandro" Tishin
- 10.09.2020 10:34
Попробую угадать. Наверное, имеется в виду, что хочется автоматически загружать и запускать программу в какой-то подготовленной конфигурации машины, так? Иначе в этой идее мало смысла, БОС же сразу при старте пропишет своё значение.
¤
Тогда речь идёт скорее о реализации механизма снимков состояния машины (снапшотов), который действительно нужен. Но лучше его делать не так...
- ? Alexander "Sandro" Tishin
- 17.08.2020 00:56
Я, увы, занят. Именно сейчас заполночь пишу.
¤
Есть проект в тетрадке. Общественности представлять пока рано.
- ? Alexander "Sandro" Tishin
- 16.08.2020 12:03
Всегда пожалуйста.
¤
А в какой версии эмулятора производится проверка? Я в последней версии эмулятора поправил положение кадрового прерывания, может, в ней проверить?
¤
Если смотреть на железо, то правильный вариант -- wait/mov. Возможноб дело в реализации Wait, надо будет проверить.
- ? Alexander "Sandro" Tishin
- 25.07.2020 20:59
Забыл предупредить, у меня там косяк -- при повороте вектор укорачивается в 4 раза. Где-то с позицией дробной части ошибся. Просто сейчас нет времени разбираться. Потом починю.
¤
Но раз была просьба выложить посмотреть -- поэтому и выложил.
- ? Alexander "Sandro" Tishin
- 25.07.2020 18:51
Прошу прощения, упал в полный загруз, было не до того.
¤
В общем, сшил чудо Франкенштейново из кусков, которые у меня нашлись. Оно глючное, но работает как-то ;)
¤
https://yadi.sk/d/6oQGmhbUm43skw
¤
Убегаю опять...
-
1 | 2 | 3 | 4 | »
?