- ДОЗУ СМК-512
-
? S_V_B@ - 21.12.2017 17:30
Подскажите правильно ли я понял:
чтобы подключить 1ю страницу ДОЗУ СМК в 120 режиме нужно
mov #6,@#177130
mov #2120,@#177130 ; (0ю не трогаем. соответсвенно 2ю- #124, 3ю -#2124 и.т.д согласно приложения)
mov #0,@#177130
.................
¤
и еще можно ли в качестве эксперимента загрузить туда РОМ Басика из эмулятора gid (bk11_198_basic1.rom,..2, ...3)
со 100000?
-
? BD - 21.12.2017 19:03
мда, эксперименты с эмулятором продолжаются.. ))
насчет бейсика, запусти хотя б из МК-ДОС файлик BASIC11M + .OVL загрузится. доставай MIRAGE и посмотри, как это было сделано еще в 91 году. ПЗУ бейсика не надо было на 11м для доступа к дискете ))
PS насчет СМК рано начал "грузиться" ))
-
? S_V_B@ - 22.12.2017 05:39
Почему с эмулятором? С эмулятором как раз не очень получается. Буду пробовать на железке.
СМК-512 есть в наличии, в обоих 11х БКшках нет ПЗУ Бэйсика.
Меня собственно не очень интересуют внутренности бэйсика. С вашей же подачи начал разбираться с СМК-512.
-
? S_V_B@ - 22.12.2017 05:48
PS насчет СМК рано начал "грузиться" ))
¤
"грузиться" никогда не рано и ничего "военного" в СМК не заметил.
конечно документации маловато и написана она для экстрасенсов.
¤
Вопрос как раз в том возможно ли образ ПЗУ из эмулятора gid записать в 11м без ПЗУ бэйсика и запустить его.
может быть образ ПЗУ инверсный и в обратном порядке
или еще нужны какие нибудь предварительные танцы: очистка памяти, переключение режимов СМК или запись "волшебного" слова по секретному адресу..
поэтому и спрашиваю.
-
? BD - 22.12.2017 06:16
-------
Вопрос как раз в том возможно ли образ ПЗУ из эмулятора gid записать в 11м без ПЗУ бэйсика и запустить его.
--------
без камментов ))
--------
запусти хотя б из МК-ДОС файлик BASIC11M + .OVL загрузится.
-
? S_V_B@ - 22.12.2017 06:32
Я поэтому и спрашиваю, возможно уважаемый gid просветит по этому поводу.
-
? S_V_B@ - 22.12.2017 06:34
(запусти хотя б из МК-ДОС файлик BASIC11M + .OVL загрузится.)
и чего я этим добьюсь?
Меня же интересует работа с доп. памятью СМК, а бэйсик ради интересного примера.
-
? BD - 22.12.2017 07:00
в ДОЗУ СМК бейсик не получится, посмотри хоть как память организована в СМК ))
начни с чего попроще, например, попробуй монтировать с CF на дисковод логические диски.
-
? S_V_B@ - 22.12.2017 07:06
Почему невозможно?
120 режим вроде самое оно?
-
? S_V_B@ - 22.12.2017 07:13
(начни с чего попроще, например, попробуй монтировать с CF на дисковод логические диски.)
Это вы считаете попроще? Издеваетесь..
скажите еще что CF в ext2.. :))))
¤
Я же спрашивал про простой пример... скопировать блок и перейти по адресу.. все
Если невозможно объяснить почему, неужели так сложно.
-
? BD - 22.12.2017 07:17
зачем тебе бейсик кусками, который никогда не запустишь? ))
-
? S_V_B@ - 22.12.2017 07:22
я так понял что блоки по 4к в странице 32к. так?
если блоки последовательно расположены (120реж) неужели они не адресуются линейно?
Скажите тогда как с ними работать. Только RTFM не нужно, там этого нет.
-
? BD - 22.12.2017 08:43
да не в этом дело. бейсик на 11м переключает страницы для доступа к БОС. и делает он это не через 177130 ))
на БК11М с СМК можно попробовать 10чный бейсик грузить, с монитором, естественно (который со 100000).
-
? S_V_B@ - 22.12.2017 09:04
Ну хотя бы так.
Но вопрос опять не в этом. Я спрашивал уважаемых знатоков правильно ли я делаю и про образы ПЗУ которые у gid в эмуляторе.
-
? S_V_B@ - 22.12.2017 09:07
В идиале - "да можно но при этом нужно сделать то-то и то-то"
-
? gid - 22.12.2017 10:06
[Подскажите правильно ли я понял:]
Правильно. Но если нет дисковода, последняя команда (mov #0,@#177130) необязательна, она просто выключает мотор и светодиод дисковода, которые могут включаться при переключении страниц.
¤
[и еще можно ли в качестве эксперимента загрузить туда РОМ Басика из эмулятора gid (bk11_198_basic1.rom,..2, ...3)]
Нельзя. ПЗУ бейсика не может работать из ОЗУ СМК, т.к. рассчитано на организацию памяти БК, а не СМК. Вам об этом уже сказали.
¤
[БК11М с СМК можно попробовать 10чный бейсик грузить, с монитором, естественно (который со 100000).]
Это возможно только в режиме 20, при этом надо отключить регистры дисковода по чтению, потому что третья ПЗУ бейсика занимает адреса 160000-177600.
В результате получим БК10, которой требуется магнитофон для работы, т.к. ПЗУ бейсика БК10 работает только с ним. А любая ОС, перехватывающая EMT36 при этом будет недоступна, т.к. бейсик займёт всё адресное пространство.
¤
[правильно ли я делаю и про образы ПЗУ которые]
Про образы ПЗУ неправильно и бессмысленно. Всякое ПО надо использовать так и там, для чего оно предназначено. Либо писать своё.
-
? S_V_B@ - 22.12.2017 11:00
Спасибо за исчерпывающий ответ. Я же только учусь и это только эксперименты. Записать-прочитать ячейку не интересно, а забить такой объем чем-нибудь осмысленным долго.
Поэтому и возникла мысль на такой тест. Абсолютно ради интереса.
Т.е. образы из эмулятора загрузить не получится? Тогда не подскажите где найти подходящий дамп?
(отключить регистры дисковода по чтению) -это "+4"?
-
? S_V_B@ - 22.12.2017 11:45
я правильно понимаю, что БК11м можно использовать только режимы (All,Std11,ОЗУ11,Hlt11)
Из них более-менее это режим All(20) но у него порядок сегментов 4,5,6,7,0,1,2,3.
т.е копировать блоки между 7 и 0 нужно по частям.
-
? S_V_B@ - 22.12.2017 12:07
сильно не пинайте, я вчера вечером впервые в жизни "скрижали" по СМК увидел.
-
? gid - 22.12.2017 12:42
Использовать можно все режимы, просто некоторые из них неэффективны, некоторые неудобны в плане использования.
Порядок сегментов имеет значение лишь тогда, когда нужен упорядоченный доступ к очень большому объёму данных.
-
? S_V_B@ - 22.12.2017 13:03
допустим в режиме 20 мне нужно записать блок в адреса 137770 по 140060 нужно будет сначала скопировать с 137770 по 137777 а потом еще хвостик с 140000 по 140060.
где преход между 7 и 0м сегментом, а в остальных все линейно?
-
? S_V_B@ - 22.12.2017 13:05
или страница закольцована?
-
? gid - 22.12.2017 13:42
[допустим в режиме 20 мне нужно записать блок в адреса 137770 по 140060]
Значит вы плохо продумали работу с доп.ОЗУ СМК и сами себе злой буратино, мучайтесь теперь.
Небольшое количество грамотных людей разрабатывают ПО с учётом аппаратных возможностей и особенностей железа. Остальные старательно пытаются натянуть сову на глобус.
¤
[или страница закольцована?]
С какой стати? обычное линейное ОЗУ, только разбито на страницы, которые разбиты на сегменты, чтобы на БК, с не очень удобной организацией памяти, можно было хоть как-то к ним доступ иметь.
-
? S_V_B@ - 22.12.2017 13:51
137770 по 140060 я для примера перехода между 7м и 0м сегментом.
не могу же я сразу записать со 100000 все 32к.
И вовсе я не хочу сову на глобус :)
-
? S_V_B@ - 22.12.2017 13:58
Это память в СМК похожа на клочки совы на глобусе :))))
-
? S_V_B@ - 22.12.2017 14:18
Скажите как нужно работать с памятью СМК, чтобы сов поберечь.
У меня есть две бумажки на одной табличка на другой в тексте тоже есть упоминание о "косоруких" и некорректных программистах.
Все должно быть не так уж и сложно со временем я методом тыка это пойму, но вы же прошли уже по этим граблям.
¤
Например я хочу записать блок спрайтов 32к.
¤
1. Устанавливаю режим (20)
2. Копирую блоками по 4к или как? или как выше спрашивал?
3. как читать? линейно или блоками?
¤
как только это у меня в башке оформится так можно уже думать как писать и как использовать.
а вы сразу обзываться сова, буратино. Я ж эти куклы первый раз вижу.
¤
Ладно бы это было на каждом углу написано и мне было лень прочитать...
-
? Дмитрий - 22.12.2017 14:35
>> не могу же я сразу записать со 100000 все 32к.
Как раз запросто, емнип, кроме 177000+(8). Данные пишутся в сегмент, подключенный к определенному окну в адресном пространстве. Что не так?
¤
>> 2. Копирую блоками по 4к или как? или как выше спрашивал?
>> 3. как читать? линейно или блоками?
Линейно, как и в любой другой области памяти.
-
? gid - 22.12.2017 14:44
Выравнивать данные по границам сегмента, оставляя неиспользуемые куски памяти в конце сегмента.
Линейно читать/писать можно, но в пределах сегмента или группы сегментов. Можно даже выполнять подпрограммы непосредственно из памяти СМК.
-
? S_V_B@ - 22.12.2017 15:07
т.е. в 20м режиме записать со 100000 32к можно только в два приема как я и говорил в начале.
а прочитать тоже в два приема?
весьма противоречивые ответы от Дмирия.
-
? S_V_B@ - 22.12.2017 16:13
Попробовал на эмуляторе режимы 20 и 120 - все вроде линейно пишется читается (20000 слов писал со 100000 потом для. наглядности в экран)
мозг наружу.
где мой глобус.. тащите сову.
-
? S_V_B@ - 22.12.2017 16:22
Ни у кого нет исходников тестов СМК?
При прочтении доки на память СМК меня насторожила ремарка о "некорректных программистах".
Хотелось бы хоть одним глазком взглянуть как правильные и продуманные пишут.
-
? Дмитрий - 22.12.2017 16:35
>> весьма противоречивые ответы от Дмирия.
Я на память СМК переделывал стандартный RAM-диск из комплекта МК-ДОС. Работало. Было удобнее, поскольку RAM-диск портился при запуске игр для 11(М), использующих доп. память. Память читал/писал линейно - точно также как и подключенную доп. 11М (то бишь подключив в окна 40000(8) и 100000(8) страницы памяти 11М мог обнулить всю память с 1000(8) до 137777(8) за один цикл) без каких-либо шаманств... Хотя нет, шаманства с СМК были в плане странно (я бы сказал идиотски) подключаемых сегментов памяти.
-
? S_V_B@ - 22.12.2017 17:00
В чем шаманство?
Как обходили.
Я уже целый день как гестаповец у красных комиссаров выпытываю страшную тайну советской страны.
-
? S_V_B@ - 22.12.2017 17:02
Сейчас с работы приду буду на железном СМК пробовать.
И еще вопрос как вернуть все обратно т.е. отключить СМК от адресного пространства?
-
? BD@ - 22.12.2017 20:36
------
Я на память СМК переделывал стандартный RAM-диск из комплекта МК-ДОС. Работало.
-------
повторишь? есть исходник VD.SYS дизассемлированный, но окультуренный.
-
? BD@ - 22.12.2017 22:20
собственно вот
https://yadi.sk/d/yuoAArbJ3QsG4E
там место для второго экрана нового MC на БК11м зарезервировано
https://yadi.sk/d/wHEVsXye3QsG62
-
? Дмитрий - 24.12.2017 21:30
>> Как обходили.
>> повторишь?
Хоть стреляй - не помню. Давно было. И довольно долго мучился, пока заработало. А вот как - не помню.
- << Форум