Важная информация

User Tag List

Страница 125 из 202 ПерваяПервая ... 121122123124125126127128129 ... ПоследняяПоследняя
Показано с 1,241 по 1,250 из 2014

Тема: Sprinter. Второе пришествие

  1. #1241
    Guru
    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Александр Бухаров Посмотреть сообщение
    Можно ссыль?

    Эмулятор - я понимаю замена хардварная, тоесть выкидываем ВГ93 ставим плис, все работает
    То есть емуль ВГ93 для реального физического дисковода.
    Именно так. Автор Pentagon 2.666 сидит здесь: Алексей Жабин <KingOfEvil yandex.ru>
    Взносы в призовой фонд конкурса "Твоя игра 5" принимаются с помощью PaуPal, ЯндексДенег или перевода на карту Сбербанка (см. http://ti5.retropc.ru)

  2. #1242
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Давненько меня тут не было. Много работы и всё такое. Спринтер мой пока ещё у Жижа, но я его заберу. если восстановить не получится, буду собирать на новой плате (есть место где есть ещё одна пустая). А пока нет железного Спринтера, используя эмулятор zxmak2 (Спасибо за плугин Дмитрию, хотя плугинчик не допиленный) накидал пару обновлений на местную дос. есть два обновления - 1.62.11 и 1.62.16.
    в чём отличие между 1.60 (1.61.8) и новыми?
    Основное отличие в том, что в старой системе все файловые операции были построены на основе индексных регистров, в первую очередь iy, в котором хранился адрес текущего файлового дескриптора. В новых версиях iy не используется, алгоритм работы с дескрипторами изменился. Изменил процедуру деления (div32) воткнув её из Профинской PQ-DOS. Был ещё один осадочек - при чтении и/или записи система постоянно (зачем то) пыталась залезать в биос с вызовом открытия девайса и сразу следом делала чтение bpb с последующим разбором. Присёк это безобразие. Василий с соседнего форума помог с тестирование обновлений на реальной системе (за что ему отдельное Спасибо!).
    В обновлении 1.62.16 добавил две функции и две утилиты. В общих чертах - эта версия является попыткой заставить дос работать с драйверами в кэше. Для Спринтера 97 была такая утилита - cachedos.exe, которая помещала в кэш драйвера дисковых устройств (кусок биоса). Но на Спринтере 200x эта утилита не работает, да и не может работать. Поскольку железного Спринтера у меня нет, оценить производительность в кэше я не могу. Утилита timer.exe запущенная Василием на его Спринтере показала, что код помещённый в кэш даёт немалый прирост производительности на некоторых операциях (примерно в 4 раза относительно кода в озу, т.к. код в озу тупит из-за пачки вэйтов, я подумал, что в кэше вэйтов явно должно быть меньше). Timer.exe показала, что код исполняющийся в озу исполняется примерно на частоте 8 или 9 мгц. код из кэша на частоте почти 21мгц (там 20.9мгц). Поэтому я накарячил 16й билд куда воткнул ecache.exe для включения кэша (вызывает функцию 0ch из доса, там одна страница памяти помечется как занятая, код страницы помещается в переменную (флаг) bios_cache и возвращается в утилиту, а потом кусок биоса копируется в 0е окно процессора в кэш, в заказанную страницу помещается на адрес c100h переключатель пзу/кэш) и dcache.exe (выключает кэш, сбрасывает флаг, возвращает ранее занятую страницу).
    Тесты показали, что в старой версии 1.60 или 1.61.8 копирование в FN файла размером 1.43мб с диска C на диск D производится за 60сек. На 1.62.11 этот же файл на тех же дисках та же операция показала уже 24сек. В 1.62.16 при включённом кэш показывает 21сек. Да, к сожалению прироста при включении кэша оказалось минимум. Тем не менее прирост есть. Все подробности на соседнем форуме.
    сам архив с обновлением тут.
    Последний раз редактировалось Sayman; 23.09.2014 в 11:46.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  3. #1243
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Есть два "камрипа" с эмулятора при проверке 11го билда. на реале конечно тупее, но думаю можно получить примерно похожую производительность.
    раз, два.
    Последний раз редактировалось Ewgeny7; 23.09.2014 в 14:46.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  4. #1244
    Master
    Регистрация
    11.04.2006
    Адрес
    Novosibirsk
    Сообщений
    966
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    Был ещё один осадочек - при чтении и/или записи система постоянно (зачем то) пыталась залезать в биос с вызовом открытия девайса и сразу следом делала чтение bpb с последующим разбором. Присёк это безобразие.
    Напрасно пресекли. Таким образом в "больших" системах распознается обычно факт смены диска. Если открыть файл на запись, и в промежутке между открытием и записью/закрытием сменить диск операция чтения вам вернет что ей под руку попалось, а операция записи вам распашет всю файловую систему. Просто это все обычно завязано еще на признаки DOOR_OPEN и REMOVABLE_MEDIA. Биос BPB не перечитывает если носитель несьемный, или на сьемном дверца/лоток не открывалась, а просто возвращает управление. А если детектит факт смены диска, то дает ошибку "носитель был сменен". Не знаю реализована ли такая фича в биосе спринтера.

    Но просохатить BPB никак нельзя. Можно убить диск.
    Последний раз редактировалось ram_scan; 23.09.2014 в 16:02.

  5. #1245
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Факт смены диска на несъёмных носителях крайне сомнителен. на дискетах да, знаю про смену. пока если пишем на дискету или читаем с дискеты, при смене дискету можно запороть. с винтом такое не прокатит. этот момент я помню, доработаю уже когда будет железный спринтер.

    ещё пока ехал домой, вспомнил такой момент - какой адекватный человек, будучи в здравом уме, решит во время записи дискеты её же вытащить и вставить другую? на дискетах-то да, отслеживать смену диска нужно. как это работает сейчас - загрузились с дискеты. пишем c:\fn\fn (просто для примера). тут будет вызвана процедура open_dsk которой передан аргумент с кодом диска C. Процедура сравнит диск текущий (а это будет диск А) и код диска в аргументе. не совпадают, значит нужно перечитать. а если у нас уже диск C текущий и мы вызвали какую-то прогу с того же диска, смысла перечитывать нет. Есть резон перечитать диск если была операция записи.
    Последний раз редактировалось Sayman; 23.09.2014 в 18:34.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  6. #1246
    Master
    Регистрация
    11.04.2006
    Адрес
    Novosibirsk
    Сообщений
    966
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    Факт смены диска на несъёмных носителях крайне сомнителен. на дискетах да, знаю про смену. пока если пишем на дискету или читаем с дискеты, при смене дискету можно запороть. с винтом такое не прокатит. этот момент я помню, доработаю уже когда будет железный спринтер.
    Квотить все не стал. Я не напрасно упомянул про атрибут REMOVABLE_MEDIA. Процедура смены носителя актуальна только для сменных и сетевых девайсов (для сетевых правда другой атрибут есть, там свои заморочки). Ну это раз.

    А что касается "извлечь диск во время записи", так существует туча программ, которые постоянно в файл не пишут, но в процессе работы держат его открытым. Например большинство виденных мной текстовых редакторов, которые способны работать с документами которые не лезут целиком в память. При отсутствии контроля за сменой носителя можно открыть файл, извлечь диск, вставить другой, и успешно сохраниться и файл закрыть. Что произойдет с файловой структурой при этом обьяснять не надо. Это два.

    Так что постоянное ощупывание BPB сделано не просто так. И ощупывать это дело необходимо. Даже для носителей доступных только на чтение. Иначе можно прочитать не то что собирался.

    Я опять-же не могу утверждать как это сделано в CP/M, но в MS-DOS которая из этой CP/M многими ногами растет файл через FCB можно открыть не только с текущего диска.

    Вся засада не в том что BPB ощупывается, а в том как определить момент когда BPB потерял актуальность чтобы дать по рогам операции чтения/записи. Можно на каждый чих его перечитывать и сравнивать не поменялось ли чо, и если поменялось то слать всех лесом. Тут все от контроллера устройства зависит, способен ли он сказать что пока он ничонеделал он из готовности выходил.
    Последний раз редактировалось ram_scan; 23.09.2014 в 21:15.

  7. #1246
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #1247
    Guru Аватар для Sayman
    Регистрация
    16.02.2006
    Адрес
    Новосибирск
    Сообщений
    3,277
    Спасибо Благодарностей отдано 
    17
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    54 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ram_scan Посмотреть сообщение
    Квотить все не стал...
    как и я. всё сильно проще, чем ты думаешь. открыв файл и не закрыв его и после сменив дискету. ну что же, сам виноват в порче дискеты. в любом случае, отслеживать такие вещи просто. в досе там в open_dsk достаточно добавить пару строк. ну ещё в Func_14 тоже там одну строчку ввести почти в начале. всё банально - если диск сменный, то перечитать bpb. если диск не сменный и диск текущий == диску в аргументе, но была запись (есть изменения, стоит dirty флаг), то перечитать bpb. не сложно и не долго. непосредственно аппаратно выявлять смену дискеты, то на спринтере скорей всего не прокатит. не уверен я. ситуация с редактором тобой описанная несколько не корректна. корректно всё-таки файл закрывать. в крайнем случае при операциях чтения (т.е. когда файл большой и весь не влезает и мы его читаем кусками) это допустимо. если пользователь внёс в файл изменения и начинает писать, то лучше всего файл закрыть и открыть его по новой. кроме того. если проводить аналогий с мс-дос, то мс-дос позволяет открывать несколько раз один и тот же файл. соответственно ничто нам не мешает этот файл при записи открыть повторно, сделать запись и эту копию закрыть. перед закрытием получить текущее положение внутри файла, закрыть файл, передвинуть указатель в ранее открытом для чтения файле используя свежие данные и перечитать кусок. хотя наверно можно и не перечитывать. в итоге данная манипуляция спасает от тех, кто прочитав файл с одной дискеты, начинает тут же записывать его на другую дискету и потом бегает и кричит, что его дискета здохла, а твой редактор нехороший...
    что-то мы сильно ушли куда-то. подобные большие темы лучше через личку проводить или в отдельной теме, чтобы тут сильно не захламлять.
    и да, кстати, на спринтере нет цпм. его дос даже примерно не совместим с цпм. там есть эмулятор, но он глючный. можно сказать, что не рабочий.
    Последний раз редактировалось Sayman; 23.09.2014 в 22:04.
    0A заповедей:
    I. Не удаляй каталог свой.
    II. Не удаляй до времени ни одного файла.
    III. Не кради файлы.
    IV. Не желай программы ближнего своего.
    V. Почитай BDOS и BIOS как родителей своих ...
    ---
    Sprinter resurrect:
    Telegram
    Discord
    Repo
    Forum

  9. #1248
    Member
    Регистрация
    15.02.2012
    Адрес
    г. Минск
    Сообщений
    129
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Всем привет. Приехал вчера Acex, запаял я его, но Спринтер работать не хочет. В связи с этим вопрос знающим людям. Китайцы по доброте душевной вместо EP1K30QC208 положили EP1K50QC208-3N. Собственно, заметил, когда уже припаял Так вот, может быть кто-то знает, насколько это критично.
    Непропаев/соплей нет, элементы исправные, частота 14М есть, прошивка EPM7064 - sp2, 10K_CLK и 10K_DAT0 есть, на выходе 10K_CNFD постоянно 0, на nSTATUS периодичные короткие отрицательные импульсы, судя по описанию процесса загрузки - Acex устанавливает его в 0 при ошибке CRC, чем вызывает сброс процессора.

    Скрытый текст


    OLD SCHOOL:
    Leningrad-1 48K
    Baltik-48
    Корвет 8010
    МС 0511
    Поиск-1 512К
    Хобби ПК8000
    Вектор-06Ц
    MC 1502

    REMAKES:
    Орион-128 rev.512
    Pentagon-128 [512] release 2012
    Scorpion ZS 1024 turbo+
    ZXM-Phoenix rev05.1+ZXM SoundCard Lite+ZXM SoundCard Extreme+ZXM GS
    ATM Turbo 2+ ver 7.10
    Радио-86РК
    ЮТ-88 Minimal

    [свернуть]

  10. #1249
    Master
    Регистрация
    27.11.2013
    Адрес
    г. Санкт-Петербург
    Сообщений
    829
    Спасибо Благодарностей отдано 
    34
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    108 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andy150677 Посмотреть сообщение
    Всем привет. Приехал вчера Acex, запаял я его, но Спринтер работать не хочет. В связи с этим вопрос знающим людям. Китайцы по доброте душевной вместо EP1K30QC208 положили EP1K50QC208-3N. Собственно, заметил, когда уже припаял Так вот, может быть кто-то знает, насколько это критично.
    Непропаев/соплей нет, элементы исправные, частота 14М есть, прошивка EPM7064 - sp2, 10K_CLK и 10K_DAT0 есть, на выходе 10K_CNFD постоянно 0, на nSTATUS периодичные короткие отрицательные импульсы, судя по описанию процесса загрузки - Acex устанавливает его в 0 при ошибке CRC, чем вызывает сброс процессора.
    Это "доброта" приводит к не соответствию "прошивки" ПЛИСы к её фактическому статусу.
    Иными словами для EP1K50QC208-3N нужна другая прошивка.
    До кучи ещё важно чтобы "прошивка" соответствовала speed grade конкретной ПЛИС.
    В Ваше случае требуется "найти" прошивку именно для EP1K50QC208-3 (объём 50 и скорость -3). Подсказка: сию прошивку можно "попросить" у автора "оригинальной прошивки".

  11. #1250
    Veteran Аватар для SKcorp.
    Регистрация
    01.01.2009
    Адрес
    Leningrad, USSR
    Сообщений
    1,954
    Записей в дневнике
    33
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    18
    Поблагодарили
    16 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andy150677 Посмотреть сообщение
    Всем привет. Приехал вчера Acex, запаял я его, но Спринтер работать не хочет. В связи с этим вопрос знающим людям. Китайцы по доброте душевной вместо EP1K30QC208 положили EP1K50QC208-3N. Собственно, заметил, когда уже припаял Так вот, может быть кто-то знает, насколько это критично.
    Непропаев/соплей нет, элементы исправные, частота 14М есть, прошивка EPM7064 - sp2, 10K_CLK и 10K_DAT0 есть, на выходе 10K_CNFD постоянно 0, на nSTATUS периодичные короткие отрицательные импульсы, судя по описанию процесса загрузки - Acex устанавливает его в 0 при ошибке CRC, чем вызывает сброс процессора.
    Даташит говорит о некой дополнительной совместимости по 5 Вольтовым операциям с PCI 2.2 1 скоростных чипов против 3. Хотя оба умеют 2.5, 3.3 и 5 Вольт.

    http://images.ihscontent.net/vipimag...TES00335-1.pdf

Страница 125 из 202 ПерваяПервая ... 121122123124125126127128129 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Sprinter
    от lvd в разделе Sprinter
    Ответов: 42
    Последнее: 12.07.2015, 20:18
  2. Sprinter resurrection
    от WingLion в разделе Sprinter
    Ответов: 52
    Последнее: 10.01.2009, 00:32
  3. Sprinter или монитор?
    от newart в разделе Sprinter
    Ответов: 1
    Последнее: 03.02.2007, 09:45

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •