-
- ? Дмитрий
- 24.01.2018 21:59
>> А то опять запилил очередной велосипед: Распаковку МК Досовского диска на файлы
Terra емнип писал и выкладывал подобное, вместе с сырцами.
- ? Дмитрий
- 22.01.2018 21:22
>> Если бросить все имеющиеся силы на создание среды разработки программ БК на PC-совместимых компьютерах
>> А я о чем..
Все это высказывалось тут неоднократно. В ответ - тишина. И до сих пор тишина. Выходит нафик никому не надо. gid сделал ассемблер из турбо8М, я себе сделал ассемблер. И все. Есть отличный компилятор ACK (Amsterdam Compiler Kit) - https://github.com/davidgiven/ack . Есть Си, Паскаль, Бейсик, Фортран. Взять и переделать. Да, не совершенство. Можно переделать backend pdp11 к gcc под бкшный вариант. Можно написать backend к llvm. Но никто не берется - 99% вероятности, что неохота тратить время на работу с неизвестными перспективами. А просто так терять время 100% никто не будет - все взрослые люди, времени и так мало - семьи, работа, хобби.
¤
ММ готов делать железо без ПО - ПО делать никто не хочет и не будет. А без ПО железо нафик не уперлось. И все повисает в воздухе в виде разговоров который год.
- ? Дмитрий
- 22.01.2018 17:09
Забыл дописать: и будете на ней ваять новое и интересное для БКшников.
- ? Дмитрий
- 22.01.2018 17:08
>> Ну PowerPC плохой камень?
А чем ARM плох? Берите его и ваяйте новую БК, с dimm, sata, pci-ex, usb, ethernet'ом и прочим. Будет новая БК+. Но это будет только название, сам комп уже будет совершенно другим.
- ? Дмитрий
- 22.01.2018 16:52
>> Амижники тоже все идейные однако не против ATI Radeon
Так Амижники уже давно новый комп сделали, мамку с чипсетом, память DIMM, PCI-Ex, SATA, ОС "а-ля винда". Но от Амиги осталось тока название - это уже другой комп, другая архитектура, другой набор команд.
- ? Дмитрий
- 22.01.2018 14:33
Видеокарта на COM-порт - такого сроду не видывали...
- ? Дмитрий
- 22.01.2018 14:32
Хм, а если модифицировать ЕМТ 16 в мониторе БК для вывода символа/символов не на экран, а в COM-порт, добавить управляющие коды типа установки курсора по координатам. Получится фактически терминал. А что, может и взлетит.
- ? Дмитрий
- 22.01.2018 14:28
>> 1. Запустили редактор-эмулятор-ЕМТ16 на каком-нибудь orange-Pi, подключенном к современному ТВ по HDMI.
А куда будет подключена ПИшка? И, главное, каким интерфейсом? Или предлагается городить COM-2-МПИ?
- ? Дмитрий
- 22.01.2018 11:17
Я уже делал и выкладывал. С тех пор - молчание. Подошло, не подошло - я хз...
- ? Дмитрий
- 19.01.2018 14:44
>> Ну тогда почему же вы в такой простой и ерундовой вещи как АОН "плаваете"?
Вот вы опять чушь пишите. Плаваете вы не зная как согласовать уровни ТТЛ (если не ошибаюсь) порта БК и сигналы с телефонной линии.
- ? Дмитрий
- 19.01.2018 14:37
Нет. Меня в свое время интересовал асм. Все ассемблеры были неудобные, мало памяти под текст, часто несовместимы по псевдокомандам. Из серьезного я писал транслятор, без редактора, который бы понимал тексты редактора Vortex. Была мысль оформить транслятор как модуль к Vortex. Работа до конца не была завершена - спалил БК и винт. Потом забросил, появился РС и стал программировать на нем. Потом узнал про этот сайт, ув. Воланд анонсировал новую БК (БК12), но работы заглохли на стадии бустера для 11(М). Сейчас разбираюсь с эмулятором ув. gid и хочу написать симулятор БК12 такой, какой я ее вижу. Мб когда-нибудь потом кто-нибудь возьмется реализовать ее в железе. Система команд уже готова, полностью совместима с БК, добавлены префиксы, 32-разрядные регистры.
- ? Дмитрий
- 19.01.2018 14:25
Ну пишите тогда. Вас же никто не связывает по рукам и ногам и не твердит "ни в коем случае не пиши! ни в коем случае!"
- ? Дмитрий
- 19.01.2018 14:19
>> А чем БК плох для этой цели?
Недостаточное быстродействие.
- ? Дмитрий
- 19.01.2018 14:19
Ждем вопросов типа "как считать последовательность с порта" и "как рисовать осциллограмму в реальном времени"
- ? Дмитрий
- 19.01.2018 14:15
>> Хотя я по началу тут тоже чушь писал
К сожалению вы ее продолжаете писать.
- ? Дмитрий
- 19.01.2018 14:07
>> Какой еще "преобразователь"!
60В с линии вы будете прямо на порт совать? Ну удачи чо... Прочитайте на досуге про преобразователи сигналов.
- ? Дмитрий
- 19.01.2018 14:02
Чушь написана вами от незнания. Вы мне напоминаете Незнайку - че там учиться? дергай ручки, крути руль.
- ? Дмитрий
- 19.01.2018 13:57
>> На плате БК этих деталей нет.
Воот! Мы пришли к тому, что для работы БК с линией нужен некий адаптер, который принимает сигналы с линии, оцифровывает и передает на выход, в свою очередь принимает сигналы от устройства управления (БК) и преобразует их в понятные АТС.
¤
>> Но зато в первых АОНах стояло то, что было на платах БК.
АОНа у вас нет, есть БК. А теперь внимание вопрос - что вам потребуется для работы с телефонной линией?
¤
Продолжим про перечисленные вами детали. Чтобы ваше устройства было подключено к, как вы выразились, "к портам", а внешних портов у БК ровно один - 177714 (УП). Можно подключить к нему, но нужен некий "контроллер", который преобразует сигналы в понятный программисту байт. Возможно вы намерены сделать контроллер, который "сядет" на шину БК (будет подключаться к МПИ), займет свободный адрес в диапазоне 177700-177777, будет принимать сигналы из вашей программы и перенаправлять их собранному вами преобразователю для работы с телефонной линией. А также возможно понадобится адрес "порта" для выдачи преобразованных сигналов от вашего преобразователя. Из этого делаем вывод, что вы понятия не имеете об устройстве БК.
- ? Дмитрий
- 19.01.2018 13:43
>> Подключаете все это к портам БК, загружаете прогу - вот вам и аон)
Замечательно. А теперь найдите все перечисленные детали на плате БК, без которых ваша софтина бесполезна от слова "совсем".
- ? Дмитрий
- 19.01.2018 13:37
>> А теперь скажите мне что такое микропроцессорное ядро, разрядность системной шины, адресное пространство и системма команда МП?
А теперь просьба связать это все с работой с телефонной линией. А то по вашим рассуждениям получается "в огороде - бузина, а в Киеве - дядька".
- ? Дмитрий
- 19.01.2018 13:36
>> зато БК умеет считать) в частности перемножать квдратурные каналы и определять максимально вероятную частоту)
>> даже не знаю какую вам книжку посоветовать для прочтения....
БК много чего умеет, но не умеет работать с линией без доп. оборудования. Без этого доп. оборудования даже комп, с которого вы пишете ерунду, не умеет работать с линией/АТС. Я даже не знаю что вам советовать почитать - начните с азов: что такое процессор, что такое модем, материнка и прочее.
- ? Дмитрий
- 19.01.2018 13:26
>> расскажите нам что такое АОН и чем он радикально отличается от БК
Раз вы просите: сам БК не умеет работать с телефонной линией и АТС на ее конце без дополнительного железа, АОН - умеет.
- ? Дмитрий
- 19.01.2018 13:02
>> А вам куда память экономить, для других процессов?
Попробуйте напишите что-нибудь объемное, а не "hello world" - быстро столкнетесь с нехваткой памяти. И расточительство в виде раздутого знакогенератора и таблицы адресов символов (которые внезапно!! занимают память, которую можно было использовать в других целях) покажется грубой ошибкой. Древнюю версию unix'а тоже переписали на БК - едва влезла в память, запускать в ней нечего - нет памяти для процессов.
¤
>> "Выигрываешь в скорости - теряешь в памяти"
К сожалению неприменимо для БК - мало и памяти, и скорости.
- ? Дмитрий
- 19.01.2018 12:39
>> нелогичности
Нелогичность в Вашем рассуждении считать, что софт на БК загрузил и поехала БК АОНом работать. А то, что самого АОНа нет - это мелочи, главное программа есть...
¤
>> сделать таблицу заранее вычисленных адресов
Таблица будет занимать гораздо больше, чем код вычисления - на каждый байт экономили из-за нехватки памяти.
- ? Дмитрий
- 19.01.2018 10:25
АОНы были и на Z80. И даже какие-то стационарные телефоны были на Z80 или подобных. Софт под них писался исключительно под Спектрум? То, что проц в компе и АОНе один и тот же совершенно не значит, что софт для АОНа писали под комп. То, что напихано в АОН формально отсутствует в компе. Порты есть, но в компе они никуда не подключены, а в АОНе используются в своих целях. Скорее всего была тестовая приставка-прототип АОНа к компу, софт писали на компе под эту тестовую приставку, с использованием специфичных портов, которые приставка использовала. Затем залили ее в АОН и понеслась. Так вот этот софт без приставки на компе работать не будет - не с чем. А приставки нет - ее надо делать. Причем не факт, что имеющаяся в свободном доступе схема приставки-АОНа для компа будет совместима с тем самым софтом. Так что Ваши 99% - это догадки, основанные на незнании.
- ? Дмитрий
- 19.01.2018 09:18
>> А чем Вам не начинка та, что в самой БКшке?
А где там начинка АОНа? Одной программы недостаточно. А делать начинку никто не будет - неактуально.
- ? Дмитрий
- 18.01.2018 21:49
>> Пожените их на благо людям
Это никому не надо, ибо уже давно бы сделали. Да и писать под этот тандем также некому.
- ? Дмитрий
- 18.01.2018 17:14
>> Интересно а для БК такая прога существует?
А какой смысл в ней без начинки АОНа и подключения к телефонной сети?
- ? Дмитрий
- 18.01.2018 09:37
>> Зачем ему воровать сайты
Затем, что ЦРУ не зовет к себе, помахивая котлетой баксов. Вот и ворует. :)
- ? Дмитрий
- 18.01.2018 09:34
>> хочу его сразу 2х битным сделать
А для чего? Он отлично на лету преобразуется.
¤
>> функцию вывода переделать не по ASCIZ, а по длине строки.
На 10-ке EMT 20 умеет выводить строку указанной длины и до символа-ограничителя. На 11 умеет только до 0 или 200(8).
- ? Дмитрий
- 15.01.2018 21:55
>> в чем её глобальность?
Глобальная метка "действует" во всем исходнике. Локальная метка действует и существует до глобальной. Т.е.
¤
ABC: ...
...
0: ...
...
BR 0 <- правильно
XYZ: ...
...
BR 0 <- ошибка, локальная метка "0" уже не существует
- ? Дмитрий
- 15.01.2018 11:05
>> Так что будет содержаться в R0 число 255 или 65535
65535 из-за 7 бита (знакового) байта. Поэтому если далее надо выполнять какие-то действия над байтом, то дописывают сброс старшего байта командой BIC #177400,R0.
- ? Дмитрий
- 14.01.2018 21:52
>> Интересно, какие впечатления у Вас при этом возникнут ;-)
Когда-то давно прочитал сей документ и впечатления возникли только унылые. Чтобы вывести изображение на экран требуется такое кол-во телодвижений, что расхотелось придумывать дальше. :)
- ? Дмитрий
- 13.01.2018 19:51
>> Тогда зачем делать железки если потом для них ничего не писать.
Так их никто пока и не делает. Бустер есть только в виде пары-тройки тестовых образцов. На том все и заглохло (года 2 назад). Про БК12 я вообще молчу...
- ? Дмитрий
- 13.01.2018 16:52
>> единственный выход допиливать библиотеки для gcc
Пробуйте, мб что-то и выйдет. Но к тому времени нужно ли это будет кому-нибудь?
- ? Дмитрий
- 13.01.2018 16:27
Да и MS-DOS некому писать - энтузиастов осталось раз-два и обчелся. Нужен нормальный компилятор Си, которого нет и вряд ли кто-то возьмется написать - на одном асме далеко не уедешь. Хотя мне асм на БК нравится больше - заставляет думать и изворачиваться.
- ? Дмитрий
- 13.01.2018 16:14
>> сам Бустер должен разгружать БК
Никакой разгрузки там нет. Память будет подключаться страницами по аналогии с доп. памятью 11(М). Точнее расскажет ув. TheGWBV как владелица тестового образца Бустера.
- ? Дмитрий
- 13.01.2018 16:09
А такого ждать до следующего тысячелетия https://www.youtube.com/watch?v=Ish4ReOjdIw
- ? Дмитрий
- 13.01.2018 16:06
"Высоких уровней" еще нет никаких, какая ОС?? До нее как до Китая ползком... С черепашьей скоростью БК ее удел - примитивный аналог win 3.11 (типа этого https://www.youtube.com/watch?v=fPJMl49_k7A), который сожрет всю основную память.
- ? Дмитрий
- 13.01.2018 15:26
>> все равно придется переделывать
Там все придется переделывать. Только меня не "улыбает" факт, что придется 32 метра бустера сотнями мелких страниц адресовать.
- ? Дмитрий
- 13.01.2018 12:54
Кстати, мельком поглядел код - не увидел работу с LFN.
- ? Дмитрий
- 13.01.2018 12:40
>> Вот ссылка на архив, когда-то скачанный с гитхаба
Уже нашел. https://github.com/alemorf/
- ? Дмитрий
- 12.01.2018 21:57
Все бы ничего, но ссылка на его проект на гитхабе мертва...
- ? Дмитрий
- 12.01.2018 21:02
>> Пытаюсь gcc для pdp-11 настроить, пока с переменным успехом.
Ув. Vslav это уже сделал. Я скачивал gcc для PDP, который он выкладывал, но там все не очень удобно. Т.е. код он в машкод переводит, но никакие include не катят, только код и только asm/obj.
¤
>> Чтобы Си-шную библиотеку от AVR-а перевести в понятный нам с БКашкой ассемблер
Есть же fat lib http://ultra-embedded.com/fat_filelib/ , которой для работы нужны только две процедуры - дисковые чтение и запись.
¤
>> есть RT-11 (ОС-БК) со всеми вытекающими... трансляторами из Си в ассемблер PDP-11
С жутко древним диалектом без каких-либо удобностей - фактически это все равно что сравнивать masm c бкшным турбо.
- ? Дмитрий
- 09.01.2018 17:43
>> При запуске из монитора -- попадёт. Такие адреса это паранойя в общем-то.
У меня в давние времена несколько раз автозапуск игр не срабатывал при адресе 760(8). Пришлось менять на 732(8). С ним работало всегда.
- ? Дмитрий
- 07.01.2018 17:16
Пропустил главное: 177710 -- Реверсивный счётчик. Доступен по чтению, запись в регистр игнорируется.
Но назначение регистров 177700-177704 не понятно.
- ? Дмитрий
- 07.01.2018 17:08
Непонятка возникла с CCPU::SetSysRegs: там видим, что m_pSysRegs[n] = (m_pSysRegs[n] & ~m_pSysRegsMask[n]) | (value & m_pSysRegsMask[n]). Маска для m_pSysRegsMask[SYS_REG_177710] = 0. Допустим, для 177710 старое значение m_pSysRegs[n] = 100000. Получается непонятно что пишем - вроде хотим MOV #177777,@#177710 из программы, но получается NOP, ибо (100000 & ~0) = 100000 (не меняется), а (value & m_pSysRegsMask[n]) соответственно (177777 & 0) = 0. В итоге 100000 | 0 = 100000. А мы писали 177777. Для чего эти маски для 177700..177712? Не проще было проверить адреса и для 177706 и 177710 выполнить запись слова, а для 177712 - байта, отказавшись от ненужных масок? И для чего инициализировать в m_pSysRegs[SYS_REG_177712] = 0177400 старший байт единицами, если нужен только младший? Правильнее m_pSysRegs[SYS_REG_177712] = 0.
- ? Дмитрий
- 07.01.2018 16:26
Для автозапуска нужно записать не 2 байта адреса, а больше, т.к. мы не знаем, какой указатель стека был в момент вызова. Поэтому
¤
.WORD 1000,1000,1000,1000,1000,1000,1000,1000
MOV #103,R0
Q: EMT 16
BR Q
¤
и грузить такую программу надо на адрес 760(8). Но не факт, что указатель стека попадет в диапазон 760-776. Поэтому для верности адрес загрузки брали 732(8) или 720(8) и заполняли адресом запуска до кода программы.
- ? Дмитрий
- 07.01.2018 14:57
Монитор БК не знает ни о каких бинарниках и их форматах, понятия не имеет об адресе в заголовке программы. Выполнена загрузка программы, происходит выход обратно в монитор. Если был автозапуск (подменен адрес возврата на адрес запуска программы), то произойдет запуск программы.
- ? Дмитрий
- 06.01.2018 21:45
>> ну как мне из вот этих цифр "00 02" сляпать : "00000010 00000000"
Не понял - что из чего для чего? Для передачи нужно брать чистый код, без заголовка BIN.
¤
>> кроме этого хотелось бы автозапуск без ввода "S". какой начальный адрес указать и вообще возможно ли это?
Автозапуск подразумевает предварительно записать адрес запуска перед кодом и грузить файл надо не на 1000(8) адрес, а на 760(8) - значит код предварить 8 словами 1000(8). Или взять 720 адрес для верности - тогда 24 слова 1000(8). И грузить командой L<адрес>. В этом случае после загрузки произойдет автозапуск загруженного. Автозапуск таким образом подменяет в стеке адрес возврата на нужный нам.
¤
Но данный способ не сработает, если код будет загружаться не с адреса 1000, а, скажем, с 20000(8).
-
«
1 | ... | 4 | 5 | 6 | ... | 9 | »
?