b2m, А чего всего 7 страниц RAM диска а не 32
не реализован порт 39 ?
port[39]=00
b2m, А чего всего 7 страниц RAM диска а не 32
не реализован порт 39 ?
port[39]=00
А оно надо? Мне несложно (пару изменений в конфиге).
Только учти, что нужно дождаться конца тестирования RAM-диска, иначе будет использованы только 128Кб.
Последний раз редактировалось b2m; 11.08.2011 в 17:13.
ну собственно когда оно рисует # оно как раз и проверяет наличие/исправность памяти
и потом говорит сколько получилось
Можно ли реализовать возможность выбора? В том же конфиге, например.
Собственно о чём я и говорил. О возможных форматах дисков написано в МПСиС за 1990г. №6.
Оно?Код:port38 : Register { read[3-7]=05
А теперь вопросики...
1. Кто присвоил имена дискам? Система или...
Смущает, что RAM-диску присвоена буква А.
Если мне не изменяет память, то на экране должно быть следующее.
48K BIOS ver.XX XX-XX-XX XX tps XX.
Mini-floppy - drive A,B
RAM-disk - drive D
А в случае наличия МСИ.
48K BIOS ver.XX XX-XX-XX XX tps XX.
Mini-floppy - drive A,B
Floppy - drive E,F
RAM-disk - drive D
Здесь "Floppy - drive E,F" - дисководы подобные ГМД-70.
drive C зарезервирован за ROM-диском.
В общем, вопрос?
2. Как я понял, "физика" работы памяти как была не прозрачна (я о конфиге), так и осталась.
В своём конфиге (без КНГМД) я описал память по другому.
Здесь и ВИДЕО на месте и логика работы понятна. mem1 и mem2 - соответственно 2-ая и 1-ая страницы. Лучше не смог придумать, хэлпа то до сих пор нет.Код:mem1 : Memory { size=10000 } mem2 : Memory { size=10000 } mm : MemMap { map[0][0000-1FFF]=bootm[0000] map[0][2000-3FFF]=conout[0000] map[0][4000-7FFF]=mem1[4000] map[0][8000-BFFF]=mem1[8000] map[0][C000-FFFF]=mem1[0000] map[2][0000-3FFF]=mem1[C000] map[2][4000-7FFF]=mem1[4000] map[2][8000-BFFF]=mem1[8000] map[2][C000-FFFF]=mem1[0000] map[1][0000-3FFF]=mem1[C000] map[1][4000-7FFF]=mem2[0000] map[1][8000-BFFF]=mem1[8000] map[1][C000-FFFF]=mem2[4000] map[3][0000-3FFF]=mem1[C000] map[3][4000-7FFF]=mem2[8000] map[3][8000-BFFF]=mem1[8000] map[3][C000-FFFF]=mem2[C000] } vid : Irisha-Video { mem=mem1[0000] }
С последним тоже больше вопросов, чем ответов.
Как я понял 1802ИР1 реализован упрощённо (порты 24-27).
То есть, если я захочу "описать" свой вариант РЕ3 с другими страницами и окнами, то наступлю на грабли. Это нужно для экспериментов.
Хотелось бы увидеть вариант для общего случая. А то я такие кренделя с этими фрэймами накручу.
3. Если пошёл разговор об эмуляторе здесь, то спрошу: когда можно будет увидеть реализацию "дополнительного ПЗУ"? Тоже очень надо.
P.S. МСИ делать будем? А то я уже загрузчик... почти нашёл.
---------- Post added at 23:05 ---------- Previous post was at 21:43 ----------
b2m, исправил твой конфиг на свой лад. Сделал так.
Работает.Код:mm : MemMap { map[0][0000-3FFF]=bios[0000] map[0][4000-7FFF]=mem1[4000] map[0][8000-BFFF]=mem1[8000] map[0][C000-FFFF]=mem1[0000] map[2][0000-3FFF]=mem1[C000] map[2][4000-7FFF]=mem1[4000] map[2][8000-BFFF]=mem1[8000] map[2][C000-FFFF]=mem1[0000] map[1][0000-3FFF]=mem1[C000] map[1][4000-7FFF]=win1 map[1][8000-BFFF]=mem1[8000] map[1][C000-FFFF]=win2 map[3][0000-3FFF]=mem1[C000] map[3][4000-7FFF]=win3 map[3][8000-BFFF]=mem1[8000] map[3][C000-FFFF]=win4 } vid : Irisha-Video { mem=mem1[0000] }
P.S. Ошибочки были:
map[2][0000-FFFF]=mem1[0000]
map[3][0000-FFFF]=mem1[0000]
Последний раз редактировалось KokaF77; 11.08.2011 в 23:21. Причина: исправил очепятки...
Разыскиваю всё, что связано с ПЭВМ "Ириша".
кое что я могу ответить
это код в пзу который выводит версию
Код:RAM:5A53 loc_5A53: ; CODE XREF: RAM:59E5j RAM:5A53 ; RAM:59FBj ... RAM:5A53 ld hl, aE@48kBiosVer_2 ; "\x1BE\x1B@\n48K BIOS ver.20 27-03-89 " RAM:5A56 call _PutString0 RAM:5A59 ld hl, msg_TPS ; "40 tps DS.\r\n\n\xFF" RAM:5A5C call _PutString0 RAM:5A5F ld hl, aMiniFloppyBDRa ; "\r\nMini-floppy - B,D\r\nRAM-disk - A\r\n" RAM:5A62 call _PutString0т.е. "48K BIOS ver.20 27-03-89 "Код:RAM:5B76 aE@48kBiosVer_2:.ascii '\x1BE\x1B@\n' ; DATA XREF: RAM:59A7o RAM:5B76 ; RAM:loc_5A53o RAM:5B76 .ascii '48K BIOS ver.20 27-03-89 ',0 RAM:5B96 a40TpsDs_: .ascii '40 tps DS.\r\n' ; DATA XREF: RAM:59CEo RAM:5B96 .ascii '\n',0 RAM:5BA4 aMiniFloppyBDRa:.ascii '\r\n' ; DATA XREF: RAM:59ADo RAM:5BA4 ; RAM:5A5Fo RAM:5BA4 .ascii 'Mini-floppy - B,D\r\n' RAM:5BA4 .ascii 'RAM-disk - A\r\n',0
и
'Mini-floppy - B,D\r\n'
'RAM-disk - A\r\n',0
это прямо из пзу печатаем
а формат диска копируем в озу и модифицируем и уже из рам печатаем
без вариантов
p.s. а что такое mini-floppy/floppy
Дисководы, которые подключаются через МСИ. Похоже в этой версии немного по другому. В предыдущей версии версии (на WD2793) выводится именно так, как я описал выше.
P.S. esl, я уже спрашивал, повторюсь. Не поделитесь своими изысканиями, я по поводу ИДЫ, а то у меня уже мозги закипают. Всё не успеваю.
Разыскиваю всё, что связано с ПЭВМ "Ириша".
особых изысканий и нету
все что увидел - уже сделал b2m и написано в сканах
в смысле поделиться idb ?
Это и так понятно.
Если плотно не копал, то нет смысла. Потихоньку ковыряюсь.
---------- Post added 12.08.2011 at 00:07 ---------- Previous post was 11.08.2011 at 23:55 ----------
Просто я не ПРОГРАММИСТ, в нормальном смысле этого слова. И некоторые моменты мне не совсем понятны.
Разыскиваю всё, что связано с ПЭВМ "Ириша".
Могу только разных конфигов настряпать.
Угу. Описания джамперов нигде не нашёл, подобрал методом тыка, плюс посмотрел, какие биты анализируются (см. пост esl).
Зашито в БИОСе. Есть возможность переназначить буквы, но эти байты никто не трогает.
Логические номера флоппи-дисков БИОСе 0,1, номер RAM-диска 3, что соответствует такому раскладу. Но в БИОСе переназначено, чтобы можно было без дисков загружаться (после холодной загрузки идёт обращение к A: ).
БИОС разбит на две части: драйвер в ПЗУ и "клей" в верхней памяти. Вот эта вторая часть при наличии МСИ может быть другой.
Для 64Кб RAM-диска можно и так, а для большего объёма приходится выкручиваться (в соответствии с разными битами портов).
В данном случае - не принципиально.
mem1 - память на контроллере ТВ (64Кб)
mem2 - память на контроллере НГМД, RAM-диск (в описании 128Кб)
Окна можно добавить аналогично, хоть все 16. Только куда ты их все будешь через РЕ3 мапить? Фактически, аналогом РЕ3 в конфиге является mm : MemMap.
Я общий случай и сделал. А конфиг с фреймами я сделал только для esl и выложил только тут.
Как только разберусь
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)