Перейти к содержанию
AUTO TECHNOLOGY

Kolo

Активные пользователи
  • Постов

    106
  • Зарегистрирован

  • Посещение

Информация о Kolo

Старые поля

  • Автомобиль
    Nexia

Информация

  • Пол
    Мужчина
  • Город
    Москва

Посетители профиля

727 просмотров профиля

Достижения Kolo

Newbie

Newbie (1/14)

0

Репутация

  1. Непонятен вопрос. Посчитал AFR, сохранил. Потом копию MAP_f_IDLE_VE сохранил в byte_2D9. Зачем? Будет ясно из того, как используется byte_2D9. Щас у меня иды нет под рукой, посмотреть не могу.
  2. Там в одном случае расчет идет при старте т.е. после включения зажигания, во втором уже в главном цикле. А MAP_f_VE =MAP_f_IDLE_VE / 2 это только до $C0 seg004:9D29 000 81 C0 cmpa #$C0 * 'L' * Compare accumulator with memory seg004:9D2B 000 22 03 bhi loc_9D30 * Branch if > (unsigned) seg004:9D2B seg004:9D2D 000 44 lsra * Logical shift right поэтому и колонок по MAP_f_VE всего 11. Что там у тебя в таблице непонятно. Расчет кпа для 1-барного идет так МАП_АЦП*0.373+10.4, а у тебя непонятно как. И на ряды по оборотам там внимательней посмотри :)
  3. Нет, это не проверка на ошибку.. byte_8015 это похоже байт какой-то комплектации. И идет проверка его битов. А перед этим был расчет аргумента для VE на ХХ (MAP_f_IDLE_VE) MAP_f_IDLE_VE = ( MAP_АЦП - $1A)*($97/$100)*2 = (MAP_АЦП-26)*1.27 Если отрицательное (MAP_АЦП Если пересчитать все значения MAP_f_IDLE_VE кратные $10 обратно в MAP_АЦП, получишь правильные значения для оси по давлению в таблицах, где он используется.
  4. Все расписывать не буду. Слишком долго. Да и не туда ты полез. Хотя для расширения кругозора и освоения арифметки полезно... Выборка из 2D: pshb - сначала сохраняем B в стеке, чтобы потом вернуть, т.е. функция B не меняет ldab #$10 - здесь надеюсь все понятно :) mul - тоже самое, что и сдвиг влево на 4 бита. В A теперь старшая тетрада, в B младшая, умноженная на $10. pshb - сохраняем младшую в стеке, она понадобится позже для аппроксимации tab - старшую в B abx - смещаем IX в нужную точку ldd 0,x - грузим из нее в A, из следующей в B sba - берем разность между ними для аппроксимации, заодно и определяем наклон кривой ( вверх/вниз) дальше сам ... :)
  5. Это просто подпограммы умножения. Использоваться могут где угодно. Первая 16битХ16бит (значение IX на значение D), вторая 16битX8бит (слово адресуемое через IX на A). Possible можно давно уже убрать :) Молодец что многое осили сам! MAP_f_IDLE_VE заранее подготовленный аргумент по МАПу для выборки наполнения на холостых. В твоем бине многие аргументы заранее высчитываются, потом используются. Это оптимальнее. А у меня например аргументы высчитываются каждый раз перед использованием. Причем многие одинаково. И нигде не хранится. DATA XREF-обращение к этому адресу из данных CODE XREF-обращение к этому адресу из кода т.е. сразу видно где оно явно используется Про RTI читай даташит на процессор.
  6. Я тот xdf толком и не смотрел. Мне то он не нужен :) Не лезь сразу в 3D. Начни с простого. Например с расчета оборотов холостых от температуры.
  7. RPM_12_5 и RPM_25 это обороты деленые на 12.5 и 25 соответственно. МАП_45 мое обозначение. :) Функция от MAP. У меня оно по адресу $45 лежит. Это аргумент многих таблиц. Посмотри, как оно вычисляется. Получишь правильные оси по давлению.
  8. Может и я неправильно выразился. Первые два байта в заголовке, это ограничения для аргументов соответственно рядов и колонок снизу. Т.е. аргумент равный им или меньший считается одинаковым. Выборка для все них будет производиться из нулевого ряда или колонки. Например если там стоит $40, значит из нулевой колонки будет выборка для от 0 до $40, следующие $50,$60 и так далее. Эти $40 просто будут вычтены из аргумента, отрицательный результат будет заменен нулем. Где там какой RPM я не вижу :) FSM - текущее положение IAC ( регулятора холостого хода). SSM - нужное или вычисленное. Вроде бы это общепринятые аббревиатуры...
  9. Бин в памяти лежит начиная с адреса $8000. Значит к адресам в бине добавляешь $8000 и получаешь правильный адрес в адресном пространстве процессора. Про 1 карту не понял. Что подробнее?
  10. Посмотри как работает функция выборки из 3D, хотя бы начало, и все поймешь. Официально структура врядли где опубликована :)
  11. Не, мне боши не интересны. У меня GM :) 3 байта перед 3D это так называемый заголовок: начальные смещения аргумента рядов, аргумента колонок и количество колонок. Т.е. в случае с VE - первый ряд по оборотам начинается с $10x25=400. Все что меньше тоже попадет в этот ряд. По давлению с нуля, но аргумент там не АЦП МАПа напрямую, а производное от него. И $B - 11колонок по давлению. А вот шаги по осям задаются уже при подготовке аргументов. Могут быть и переменной величины. Но это обычно никто не разбирает, адрес нашли и ладно. Шаги заполняют от балды, поэтому все коммерческие редакторы для такого ПО, которые я видел крутят на самом деле не ту режимную точку :) Кстати в твоем бине впервые увидел однобайтовый заголовок у 2D. Для чего он я понял, а вот словами объяснить трудно... Что-то типа вес для шага аргумента. Кстати VE помойму 17х11.
  12. Я asm11 использую. Только асм из под Иды он напрямую не берет. Нужно напильником допиливать.
×
×
  • Создать...
Яндекс цитирования