Обещать не буду, но постараюсь... я уже давно не программировал :)
---------- Post added at 15:58 ---------- Previous post was at 15:57 ----------
Блин... уже и 10Мгц mega48 в дипе исчезли :(
Вид для печати
V-10 означает, что эти чипы гарантированно работают на 10 МГц при напряжении питания выше 2.7 Вольта.Цитата:
Сообщение от Alex_NEMO
На 5-ти вольтах они работают даже лучше чем их 20-ти МГц братья :)
caro, Я поддерживаю идею сделать, если возможно, версию для atmega8, ибо что-то у нас с другими дикий дефицит :(
Исправил прошивку под работу с ATMega8.
Как ни прискорбно, один чип ATMega8L-8PI, который у меня был в наличии
не захотел работать на частоте 20 МГц.
Завелся с кварцем на 12 МГц, но это к сожалению слишком медленно,
что бы обеспечить работу контроллера в noWAIT режиме.
Завтра куплю ATMega8A, которые гарантированно работают до 16 МГц при 4.5 Вольта,
думаю на них 20 МГц можно будет обеспечить.
2Alex_NEMO - проверь со своим кристаллом.
Ну, что, господа-товарищи-коллеги!
Докладаю о проведенных испытаниях. Итак, участники теста:
1. Моя плата KAY-1024 v2010;
2. Кварцы "лодочка" (усеченный HC-49) на 20 МГц и 25 МГц (с паленой ПЦ-мамки);
3. Кондеры "обвязки" кварца - 2х18пФ, SMD типоразмара 0805:
4. Пять контроллеров ATmega8-16PI/PU(3 шт.) и ATmega8L-8PI(2шт.)
Первый тест, кварц 20.0 МГц:
все 5 контроллеров запустились и нормально работали. В режиме ТУРБО, в 48 Бейсике "прощелкал" все кнопки, СБРОСил ПринтСкрином, попереключал ТУРБО/неТУРБО.
Второй тест, кварц 25.0 МГц - тут интереснее:
1. Контроллер ATmega8-16PI, datacode 0549I - не завелся - черный экран - глубокий зависон, даже наплатный RESET не помог;
2. Контроллер ATmega8-16PU, datacode 0929G - не завелся - черный экран - глубокий зависон, даже наплатный RESET не помог. Контроллер приобретался у всем печально известного Andrews'a;
3. Контроллер ATmega8-16PU, datacode 0929G - робкие попытки запуститься - но не пошел, возможно, на 22...24 Мгц завелся бы. Контроллер приобретался у всем печально известного Andrews'a;
4. Контроллер ATmega8L-8PI, datacode 0423G - чуть более явные попытки запуститься, да же картинку показал, но ни на одну клавишу не реагировал;
5. Гвоздь программы! Контроллер ATmega8L-8PI, datacode 0403. Запустился и прекрасно(!) работал в ТУРБЕ! В режиме ТУРБО, в 48 Бейсике "прощелкал" все кнопки, СБРОСил ПринтСкрином, попереключал ТУРБО/неТУРБО. Работал, гад! На сколько помню, сдернул его года 4-ре назад с умершего ламинатора "Felowes" или как его там...
Вот такие пироги! Т.е. по идее, любая Мега8(A) должна завестись на 20МГц и СТАБИЛЬНО работать! На большей частоте (до 24 МГц) - как повезет! Пробуйте! Всем удачи и огромная благодарность Камилю за оперативность! Так держать!!! :v2_thumb:
Проверил ROM-Switcher на КАЕ - работает! "Склеил" прошивки:
1. Прошивка от ЛАСа, датированая 2002 годом;
2. Прошивки для Феникса. ПЗУ TR DOS версии 5.03. Штатная(базовая) версия ПЗУ, без излишеств.
3. ПЗУ TR-DOS 6.11P + Fatall 0.23 Сборка by Keeper. Экспериментальная сборка с копировщиком Fatall 0.23 by savelij в свободной странице ПЗУ.
4. ПЗУ TR-DOS 6.11P + WDC 1.3 Сборка by Keeper. Экспериментальная сборка с копировщиком WDC 1.3 by Budder в свободной странице ПЗУ.
Все пашет, только есть один момент - 1-я прошивка стартует при J5, установленном в положение 11-12. Остальные стартуют, если J5 в 10-11. Как сделать что бы было "все едино"? Перелопатить последовательность страниц ПЗУ в прошивке ЛАСа? В какой последовательности? Сохранится ли функционал прошивки?
Я именно такие резонаторы и использую.Цитата:
Сообщение от zst
Только в ZXMC приходится ставить HC-49, поскольку нужны частоты дробные,
а ZTT в продаже только с целыми значениями частот.
Сохранится.
---------- Post added at 12:56 ---------- Previous post was at 12:50 ----------
Описание лежит на старом ноутбучном винте, там же, где весь остальной zx-архив 200x-2008 года. Некуда воткнуть его, чтобы прочитать.
Что конкретно по крамису интересует?
Лас, спасибо, что откликнулся! Интересует все, что есть по Крамису и собственно по KAY-1024. Вроде, есть какой-то мануал по собственно KAY-1024. Со временем очень бы хотелось свести все в кучу, обобщить. Сделать мануалку - как подготовить винт, как сделать автозапуск iS-DOS и т.д.
А как их "перелопатить"? А их уже "порезал" WinHEX'ом на 4-ре равных куска.
http://witchcraft.org.ua/mnuspeccy/18-kay
Откуда я знаю, что вы хотите сделать. "Перелопатить" - это слишком общая задача.
Alex_NEMO, попробуй просто первые 32к и вторые местами поменять... если не ошибаюсь - в этом разница.
---------- Post added at 13:48 ---------- Previous post was at 13:35 ----------
По-малеху переделываю НЕГлюк под кай-1024. получается не очень быстро, ибо 1 - давно не кодил на асме, но еще и не все забыл :) 2 - слишком много в глюке завязано, причем жестко, на порты Пня, АТМ и Эвы... Уже заработала функция создания рам-диска для стандартной каевской тыр-досины и каевской памяти, но надо лишние пункты повыкидывать, т.к. в кае эл.диск создается начиная со страницы 24 и направлением вверх, а в пне - от последней страницы вниз, т.е. наоборот, поэтому, считаю создание рам-диска размером отличным от 640КБ действием лишним.
В оригинальной ПЗУ от NEMO расположение страниц следующее:Цитата:
Alex_NEMO, попробуй просто первые 32к и вторые местами поменять... если не ошибаюсь - в этом разница.
#0000- #3FFF Service
#4000- #7FFF TR-DOS
#8000- #BFFF BASIC 128
#C000- #FFFF BASIC 48
При этом положение перемычки по умолчанию 10-11. Если поставить перемычку в положение 11-12 то при ресете стартует крамис и в его меню можно выйти в tr-dos.
Если запустить прошивку ЛАСА то нормальным положением становится позиция 11-12, а при положении 10-11 и старте крамиса выйти в tr-dos уже не получается.
Во-во, и я про тоже! Попробую привести прошивку ЛАС'а к такой раскладке
Дима, спасибо, вечерком попробую.
Это очень обнадеживает и радует! Ждем результатов!!! Удачи в работе!!!
Mayor, описал что надо, и я сам, наверное, смогу решить проблему "перестановки" банок ПЗУ, если в самом коде ничего править НЕ придется.
Не желает ли кто-нибудь сделать полезное дело? нарисовать логотип Кая, желательно анимированный, 3*3 знакоместа, дабы вставить в неглюк, вместо кошака.
Для затравочки:
Alex_NEMO, обсчитался (что значит давно не кодил - 0, это значащая цЫфра), 10 фаз. Инверсию не надо, видимо она делалась для разных фонов - белый/черный. у нас только черный.
Итак, прошивка ЛАСа имеет след. последовательность "банок":
#0000- #3FFF Basic 128
#4000- #7FFF Basic 48
#8000- #BFFF Service KRAMIS v.03
#C000- #FFFF TR-DOS v5.04T
И как правильно сказал Дмитрий:
Во вложениях - два файла - "перевернутая" версия ЛАСа, для работы при J5, установленном в 10-11. 2-й файл - моя сборка для ROM-Switcher'а (2Мбит), включаящая в себя:
1. "Перевернутая" прошивка от ЛАСа, датированая 2002 годом (см. выше);
2. Прошивки для Феникса. ПЗУ TR DOS версии 5.03. Штатная(базовая) версия ПЗУ, без излишеств.
3. ПЗУ TR-DOS 6.11P + Fatall 0.23 Сборка by Keeper. Экспериментальная сборка с копировщиком Fatall 0.23 by savelij в свободной странице ПЗУ.
4. ПЗУ TR-DOS 6.11P + WDC 1.3 Сборка by Keeper. Экспериментальная сборка с копировщиком WDC 1.3 by Budder в свободной странице ПЗУ.
Подробности тут.
Кому надо - пробуйте - я завтра продолжу тестирование...
Малость расскажу о том, чего уже добился и чего хочется еще сделать, а так же некоторые грабли:
- создается рам-диск в формате кая, т.е. под его родную прошивку тр-дос, а именно 9901;
- можно переприсвоить рам-диску другую букву, по умолчанию С (штатная прошива это позволяет делать);
Но тут есть ограничение - переопределение действует до следующей реинициализации переменных тр-дос. Другими словами, если программа сделает JP 0 в странице TR-DOS (или переход в TR-DOS из 128го меню). После этого рам-диск снова станет на букву С. Тут ничего не могу поделать - разве что патчить тыр-дос, но это уже не ко мне...
Сейчас веду работу над контролем Turbo/Normal. Тут надо перелопатить процедуры работы с часами... что касается часов... че с ними делать-то? У кая родных часов нет, поэтому тут может быть гибрид какой угодно - от ZXMC до SMUC-а, пентоглючные часы вряд ли кто-то будет цеплять. С другой стороны в новых каях вряд ли будет ZXMC, т.к. контроллер клавы имеется онбортовый, а при наличии SMUC вряд ли кто будет юзать что либо кроме ПрофПЭ, а значит НЕГлюк отпадает... в общем я в растерянности... Можно конечно обойтись без часов, но иногда полезно сохранить настройки ремапа рам-диска или турбы (я его редко вообще включал в свое время, только когда играл в Stunt Car Racers).
В планах - сделать копирование образа на рам-диск, как в новых сервис-ромах Эвы. На счет обратного копирования - не факт что осилю, хотя хотелось бы.
Насколько мне известно, формат рам-диска кая 1024 никогда не менялся.
-------------
Несколько замечаний по поводу прошивки 2002 года:
Если при СБРОСЕ удерживать Symbol Shift - запуск загрузчика is-dos с жесткого диска (как в предыдущих каевских прошивках).
Если же при СБРОСЕ удерживать Caps Shift, то если в 7 банке обнаружен отладчик STS - вход в него (без очистки памяти) иначе вход в сервис-ПЗУ (запуск Kramis).
А если при ПЕРВОМ входе в тр-дос удерживать Symbol Shift, то инициализируется не диск А, как обычно, а диск C (рам-диск).
---------------------
Про порядок банок пзу от кая - это старая тема десятилетней давности.
Жонглирование половинками пзу (по 32кб) началось с кая-1024.
Рекомендую почитать вот это: http://dlcorp.ucoz.ru/forum/24-491-1
Лас, но менялось управление назначением буквы рамдиску.
Если надо, я могу сделать прошивку контроллера клавиатуры КАЯЦитата:
Сообщение от Дмитрий
с возможностью записи/чтения ячеек EEPROM ATMega через порт клавиатуры.
Это как минимум 256 байт энергонезависимой памяти, правда с не стандартным доступом.
caro, если рессурсов достаточно, то думаю было бы не плохо!
но тогда надо будет сделать на макетке сей девайс для проверки.
Дима, ты - молодец! А можно ли совместить все три варианта?!! Т.е. и ZXMC и SMUC и то, о чем говорит Камиль:
Ну, или хотя бы последние два пункта.
ЛАС, а последний пункт реально интересен!!! Спасибо за инфу!
Сейчас по СБРОСу при удержании Caps Shift, я выхожу в КРАМИС в.03, по СБРОСу при удержании Symbol Shift у меня как-бы происходит переход в 48 Бейсик с характерным "сбросом", потом все подвисает, черное поле "СБРОСа" постепенно портится со скроллированием вверх. Пока гоняю "голую" плату КАЯ - в слоты NEMO Bus ничего не вставлено. Т.е. из написсаного выше тобою надо поставить плату Nemo HDD и соотв. образом "приготовить" HDD для запуска загрузчика is-dos с жесткого диска.
Да, Камиль, если не сложно - было бы здорово. Я готов тестировать! Вечерами в будни и весь день в выходные и праздники.
Думаю можно выложить обкаточную версию.
Сделал еще руление турборежимом и убрал залочивание >128KB памяти, т.к. в кае этого нет. Исправил глюки с часами, т.к. при их отсутствии изменение режимов турбы и памяти приводило к выпаду в басик48. С турбо режимом следующая петрушка - если прога знает про порт 1ffd, она уже при тесте памяти обнуляет бит турбы и соответственно включает форсаж :) Поэтому во многих программах эта функция бесполезна :( Тут Nemo как-то прогадал, в скорпах такой номер не проходит, ибо там сделано с оглядкой на криворуких программеров.
при определенном количестве времени, терпения и свободной памяти - можно :) только что делать, если вдруг будет стоять и ZXMC и SMUC и то, о чем говорит Камиль? :)
---------- Post added at 09:21 ---------- Previous post was at 09:19 ----------
Кстати говоря - в SMUC бы я особо не лазил без надобности, т.к. если вздумается поиграться с проф-пзу, то все ее настройки полетят к чертям, я допустим не знаю что там хранит ПрофПЗУ :) Хотя у нее там подстраховочный вариант - nvram. Но не знаю-не знаю :)
В ZXMC такой же доступ к EEPROM тоже можно встроить.Цитата:
Сообщение от Дмитрий
В ZXMC вроде бы есть доступ к ОЗУ часов? или там только регистры часов сохраняются, а остальные нет?
---------- Post added at 10:28 ---------- Previous post was at 10:27 ----------
он у меня был подключен через смук и юзался в профпэ :) Сейчас ничего не подключено, ибо все никак в корпус не затолкаю.
---------- Post added at 10:35 ---------- Previous post was at 10:28 ----------
а где хранить этот выбор? после рестарта надо откуда-то читать инфу, а откуда? или оставлять сигнатуру в то устройство, которое было выбрано в качестве энергонезависимой памяти, а затем, если находим эту сигнатуру в памяти какого-то устройства, то доверяем ему? в принципе можно сделать так. Тока надо для обкатки где-то взять ZXMC... я когда-то ее даже далал, но остановился на прошивке ATF-ки, пока еще не запустил.
В ZXMC ОЗУ часов отображается на EEPROM, и регистры времени и вся остальное пространство ОЗУ часов.Цитата:
Сообщение от Дмитрий
Все изменения со стороны компьютера модифицируют и информацию в часах (только ячейки времени) и в EEPROM.
Тоесть структуру распределения нижней части EEPROM можно сохранить одинаковой.
Можно даже регистры часов сэмулировать в контроллере клавиатуры.
А если подумать, то и батарейку к контроллеру подцепить, что бы время тикало :)
э-э-э... что массы скажут? нужно ли это кому-нибудь? если нужно - предлагайте рычаги управления, я добавлю в неглюк их.
---------- Post added at 11:16 ---------- Previous post was at 11:09 ----------
caro, суть часов в чем? думаю для FAT-устройств они полезны, т.к. корректная дата доступа к файлу будет прописываться, если же программа про такие часы не знает, то смысл в часах теряется. сейчас я знаю 2 программы для работы с фат - fatal и wdc, что первая, что вторая давно не видели новых версий, значит новые часы поддержаны не будут, и тогда толку в них 0. Это мое имхо, если народ скажет что хорошо бы быть часам в контроллере клавиатуры - я не против и даже встрою их поддержку в неглюк.
Что касается энергонезависимой памяти в контроллере для сохранения настроек, и тем более малой кровью достающаяся, то это очень полезная фича!