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

User Tag List

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 21 по 30 из 37

Тема: Надёжное и элегантное автоматическое опознание модели спектрума

  1. #21
    Guru Аватар для SoftLight
    Регистрация
    28.02.2005
    Адрес
    Москва
    Сообщений
    2,082
    Спасибо Благодарностей отдано 
    736
    Спасибо Благодарностей получено 
    451
    Поблагодарили
    250 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Soplik Посмотреть сообщение
    В принципе, АТМ можно попытаться определить, написав на экране большими буквами что-то обидное для АТМ-щиков.
    Если человек со злости ударит по клавиатуре -- значит, АТМ.
    Этот же способ годится для определения некоторых других моделей.
    Да и опросить сколько кнопок одновременно было нажато. Это ближе к методу который Вы в соседней теме предложили с нажатием цифры изображенной на экране.

  2. #22
    Activist Аватар для Soplik
    Регистрация
    02.04.2005
    Адрес
    Минск
    Сообщений
    378
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А если серьезно -- а может, пускай юзер сам в сетупе выбирает модель из полусотни вариантов, а тест только на тонкие различия смотрит?
    Сферический ламер в вакууме

  3. #23
    Banned
    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    надо уходить от четкой логики к нечеткой там можно и пзу применить, и все что хочешь. и даже отмазаться, что вот 99%, что у вас скорпион, а не 100%

  4. #24
    Veteran
    Регистрация
    03.07.2007
    Адрес
    Мариуполь-Киев
    Сообщений
    1,112
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    14
    Поблагодарили
    13 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SoftLight Посмотреть сообщение
    А если серьезно, то надо делать три теста для более менее правдоподобного определения модели:
    1) CRC16 ПЗУ (и соотв. где-то под рукой иметь табличку собранных заранее значений);
    2) Длина INT
    3) Порты
    И крайне желательно предусмотреть ручной выбор, на случай если неправильно определит автоматом или попадется неизвестный зверь. Тем более что:
    1) уже писали (хотя можно попытаться определять не CRC или не только его, а отдельные куски кода или например надписи)
    2) длительность инта на многих клонах пытались (доработками или настройками)
    3) Многи порты (особенно память) на разных клонах могут пересекаться или дублироваться

    ---------- Post added at 16:45 ---------- Previous post was at 16:30 ----------

    Цитата Сообщение от SoftLight Посмотреть сообщение
    Ну а если кто ПЗУ своего клона перепрошил - тут как бы сам виноват. Вся табличко займет 100 байт
    Если не бОльшая часть, то очень многие такие ПЗУ давно заменены на стандартные

    ---------- Post added at 16:51 ---------- Previous post was at 16:45 ----------

    А вообще, imho, задача сильно упрощается если определиться для чего это определение нужно. Для многих задач достаточно не достоверно определить модель, а определить определенные параметры модели или их совокупность.
    Последний раз редактировалось alvis; 19.09.2013 в 17:37.

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


    Profi 6.2 Rev.B / 1024
    Profi v5.02 /1024/палитра/FDD3,5"/FDD5,25"/HDD130/XT-Keyb/Covox
    Profi v4.00 /1024
    АТМ Turbo /512/ - собран но еще не запускался
    ATM Turbo 2+ v7.10 - собран на 80%
    Pentagon 128 - в планах восстановить (раскуроченная плата)
    ZXMC20/NemoIDE/AT-Keyb (by Caro)
    Revers U8EP3C
    Speccy2010, r2
    [свернуть]

  5. #25
    Master
    Регистрация
    25.03.2013
    Адрес
    г. Лондон, Великобритания
    Сообщений
    948
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alvis Посмотреть сообщение
    И крайне желательно предусмотреть ручной выбор, на случай если неправильно определит автоматом или попадется неизвестный зверь. Тем более что:
    1) уже писали (хотя можно попытаться определять не CRC или не только его, а отдельные куски кода или например надписи)
    2) длительность инта на многих клонах пытались (доработками или настройками)
    3) Многи порты (особенно память) на разных клонах могут пересекаться или дублироваться
    А вообще, imho, задача сильно упрощается если определиться для чего это определение нужно. Для многих задач достаточно не достоверно определить модель, а определить определенные параметры модели или их совокупность.
    Лично меня в первую очередь интересуют точные временные параметры кадра (бордер и/или мультиколор). К сожалению, варианты с ручным выбором далеко не всегда реалистичны, просто в силу усложнения итогового кода и ограниченных возможностей спектрума как машины. Более реалистично, с моей т.зр. оказывается поддержать фиксированный набор хорошо изученных и распространённых моделей.

    1. Тесты ПЗУ я не считаю элегантными и, по возможности, стараюсь их избегать, т.к. они, в каком-то смысле, косвенные. Т.е. если мы видим ПЗУ как у оригинального Спектрума, это не означает, что это Спектрум оригинальный. Если мы видим ПЗУ отличное от оригинального Спектрума, это не значит, что интересующие меня времянки не совпадут с оригиналом. Не очень ясно в таком случае, как относиться к любым итоговым результатам таких тестов - в любом случае, решение придётся принять на основании чего-то ещё, так зачем плодить сущности? Примерно по тому же принципу, определение TR-DOS по системным переменным - возможно, но не очень-то и надёжно.

    2. Длительность инта. Кстати, неудачное название теста, т.к. под этим некоторые люди понимают число тактов между кадровыми прерываниями, а некоторые - собственно, саму продолжительность сигнала кадрового прерывания поступающего на процессор. В моём понимании, это отличный тест, т.к. его легко сделать компактным по памяти, и т.к. этот тест позволяет чётко отличить некоторые модели спектрумов, в частности пентагон и зелёный скорпион, а также спектрумы от Amstrad.

    3. Именно из-за того, что порты пересекаются, дублируются и, зачастую, из-за неполной дешифрации, ещё и откликаются на чужие имена, я и просил людей поделиться своми наработками в этом плане.

    4. У себя в программе я остановился на 2 основных тестах: кол-во тактов на фрейм + вариант кол-ва тактов на фрейм завязанный на медленной памяти, так что можно отличать компьютеры с вейтами от компьютеров без вейтов, а ещё и сортировать по видам вейтов. Кроме этого, я написал дополнительный определитель по портам, но им я совершенно недоволен, т.к. он далеко не всегда отлавливает то, что мне хотелось бы отловить.
    Последний раз редактировалось introspec; 19.09.2013 в 18:45.
    "introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.

  6. #26
    Activist Аватар для Soplik
    Регистрация
    02.04.2005
    Адрес
    Минск
    Сообщений
    378
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если временные параметры, то что мешает запилить сетуп, в котором юзер курсорными клавишами подгоняет простенький бордюрный эффект под метку на экране?
    Сферический ламер в вакууме

  7. #27
    Master
    Регистрация
    25.03.2013
    Адрес
    г. Лондон, Великобритания
    Сообщений
    948
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SoftLight Посмотреть сообщение
    А если серьезно, то надо делать три теста для более менее правдоподобного определения модели:
    1) CRC16 ПЗУ (и соотв. где-то под рукой иметь табличку собранных заранее значений);
    2) Длина INT
    3) Порты

    Только вот какой смысл? Такой полноценный тест как раз и займет большую часть ОЗУ в 16k модели. Лучше заранее затачивать свои разработки на кол-во строк в экране Pentagon/Original - все остальное лесом.
    Согласен, кроме ПЗУ, по причинам изложенным выше. Проверять ПЗУ по-настоящему есть смысл только в том случае, если планируется именно что использование ПЗУ. По-настоящему, я надеялся услышать какие-то идеи относительно 3, т.е. о проверенных в деле последовательностях для тестирования моделей по портам.

    ---------- Post added at 15:44 ---------- Previous post was at 15:40 ----------

    Цитата Сообщение от Soplik Посмотреть сообщение
    Если временные параметры, то что мешает запилить сетуп, в котором юзер курсорными клавишами подгоняет простенький бордюрный эффект под метку на экране?
    Мешает то, что есть очень много различных подводных камней, которые можно обойти в случае знания конкретной модели спектрума, и которые нельзя обойти "простеньким бордюрным эффектом". Разные виды задержек памяти и процессора. Разное положение int относительно экрана.
    "introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.

  8. #28
    Activist Аватар для Soplik
    Регистрация
    02.04.2005
    Адрес
    Минск
    Сообщений
    378
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Разное положение int относительно экрана.
    А что тут сложного? Пауза больше -- пауза меньше.
    Разные виды задержек памяти и процессора
    Мда, согласен.
    Сферический ламер в вакууме

  9. #29
    Master
    Регистрация
    25.03.2013
    Адрес
    г. Лондон, Великобритания
    Сообщений
    948
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Soplik Посмотреть сообщение
    А что тут сложного? Пауза больше -- пауза меньше.
    Ммм... давай сделаем так, запрограммируюй что-нибудь в этом роде, работающее одновременно хотя бы на 48к оригинале, 128к+3 от Amstrad, Пентагоне и, для пущего веселья, на Ленинграде-1, и приходи сюда снова, обсудим.
    "introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.

  10. #30
    Activist Аватар для Soplik
    Регистрация
    02.04.2005
    Адрес
    Минск
    Сообщений
    378
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ммм... давай сделаем так, запрограммируюй что-нибудь
    Ко мне больше подходит вот это. Я не кодер.
    Сферический ламер в вакууме

Страница 3 из 4 ПерваяПервая 1234 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программный детект модели IDE
    от SAM style в разделе Программирование
    Ответов: 5
    Последнее: 14.02.2007, 13:57
  2. Автоматическое включение компьютеров
    от Wladimir Bulchukey (500:95/462) в разделе Зарубежные компьютеры
    Ответов: 0
    Последнее: 17.02.2006, 03:15
  3. Достал грохот жесткого диска ...есть элегантное решение
    от Orionsoft в разделе Несортированное железо
    Ответов: 1
    Последнее: 27.07.2005, 18:36

Ваши права

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