OUT-CLUB.RU

OUT-CLUB.RU (https://out-club.ru/board/index.php)
-   Outlander XL 2007 - 2012 г.в. - Электроника, мультимедиа, навигация (https://out-club.ru/board/forumdisplay.php?f=271)
-   -   Исследование механизма работы ПО MMCS (https://out-club.ru/board/showthread.php?t=37735)

AS21 25.02.2014 15:13

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1636605)
Моя версия такая - все кроме навигации - это AVUnit.

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

vadimus_ca 26.02.2014 17:42

Re: Исследование механизма работы ПО MMCS
 
А вот подскажите мне знатоки японских MMCS, что у нас региональным кодом DVD происходит? Прошил J-01 американской прошивкой, появилась поддержка региона 1, при этом сохранилась поддержка родного японского региона 2.
Как бы туда добавить остальные регионы, или поменять японский на какой-то еще?

MadLord 27.02.2014 07:57

Re: Исследование механизма работы ПО MMCS
 
кстати, у кого есть DVD в PAL с американски регионом?....мне бы исошник...

vadimus_ca 27.02.2014 17:52

Re: Исследование механизма работы ПО MMCS
 
Почему именно PAL, японки всеядные вроде?

MadLord 28.02.2014 08:10

Re: Исследование механизма работы ПО MMCS
 
есть или нет?...

PUSHIK 28.02.2014 10:37

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1638689)
Почему именно PAL, японки всеядные вроде?

Нет ,экран ntsc

vadimus_ca 28.02.2014 22:16

Re: Исследование механизма работы ПО MMCS
 
А европейки?

AS21 01.03.2014 00:37

Re: Исследование механизма работы ПО MMCS
 
Вот свет в конце тоннеля:
Так я планирую экспорт dll и восстановление таблицы RELOC
Пример: rsaenh.dll
Размещение секции Reloc в dll при экспорте:
e32_vbase => ImageBase = 10 000 000h
При экспорте приволим к этому знаменателю
При импорте дельту высчитываем между vbase (e32_vbase) – ImageBase;
rawAdrSec: Raw Adress (PointerToRawData) файловое смещение, откуда брать исходные данные для секции при отображении
rawSizeSecReloc: Raw Size (SizeOfRawData) размер, VirtualSize - выровненный на SectionAlignment.
rawSizeSecReloc = Utils.alignLenLong(e32_unit_5_size, fileAlign);
e32_unit_5_size = сумма SizeOfBlock
IMAGE_BASE_RELOCATION = VirtualAddress + SizeOfBlock (8h)
После этого заголовка следует массив 16-битовых описателей настройки. Количество таких описателей равно
NN = (SizeOfBlock - IMAGE_SIZEOF_BASE_RELOCATION) / 2
Item (описатель) = 16-бит = :
Каждый описатель настройки в 4-х старших битах (тип 3 = HIGHLOW)содержит тип настройки, а в 12 младших битах – смещение от начального RVA до настраиваемых данных
Реальное RVA = VirtualAddres (сhunk) + 12 младших бит (item)
Таблица настройки заканчивается блоком, у которого заголовок IMAGE_BASE_RELOCATION заполнен нулями - ABSOLUTE.
Последний сhunk – ABSOLUT – не имеет
Т.е. в SizeOfBlock каждого сhunk (кроме последнего) входит ABSOLUTE
Список всех настраиваемых RVA и способ их настройки как раз и содержится в таблице настройки, которая представляет собой набор блоков (chunks).
сhunk = Каждый блок содержит настройки для 4 Кб данных и начинается с заголовка IMAGE_BASE_RELOCATION и заканчиваеся ABSOLUTE (00 00)

Если есть у кого дополнения жду до завтра и начинаю писать

vadimus_ca 03.03.2014 01:40

Re: Исследование механизма работы ПО MMCS
 
Никто не в курсе - какой модуль отвечает за радио? Сообщения RDS принимаются, в настройках TMC их видно, но названия радиостанций и прочая информация не отображаются.
TMC при этом полнотью работает.

https://out-club.ru/board/attachment...jntr9fqvdg.jpg

https://out-club.ru/board/attachment...exg7umqpys.jpg

Добавлено через 5 часов 29 минут
Похоже, это AVUnit

Выложите кто-нибудь европейский лоадинг, пожалуйста.

Althouse 03.03.2014 09:35

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1640806)
Выложите кто-нибудь европейский лоадинг, пожалуйста.

лоадинг от E-06 https://www.dropbox.com/s/6rfnmhkvoq...261EM_6203.rar

AS21 03.03.2014 12:47

Re: Исследование механизма работы ПО MMCS
 
Нужна помощь:
ищу:
Платформ Билдер
Вин це 3

vadimus_ca 03.03.2014 16:36

Re: Исследование механизма работы ПО MMCS
 
Это оно? http://www.microsoft.com/en-ca/downl...s.aspx?id=4862
http://discovertheexperience.blogspo...ithout_31.html

AS21 03.03.2014 17:45

Re: Исследование механизма работы ПО MMCS
 
Вроде да
Спасибо

vadimus_ca 03.03.2014 17:57

Re: Исследование механизма работы ПО MMCS
 
При замене AVUnit - нужно менять еще какие-то модули?

AS21 03.03.2014 18:00

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641300)
При замене AVUnit - нужно менять еще какие-то модули?

да, но под каждый случай разные

vadimus_ca 03.03.2014 18:04

Re: Исследование механизма работы ПО MMCS
 
Как получить список?

Добавлено через 1 минуту
Есть какой-то аналог tdump?

AS21 03.03.2014 18:06

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641308)
Как получить список?

На сколько срочно, у меня есть пару примеров, но их надо искать, системы пока нет

vadimus_ca 03.03.2014 18:07

Re: Исследование механизма работы ПО MMCS
 
Если это отвлекает от риаллока и прочего, то не очень срочно :)

AS21 03.03.2014 18:07

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641308)
Есть какой-то аналог tdump?

расшифруй или пример

Добавлено через 1 минуту
[quote="vadimus_ca;1641247"]
Это только апдейт.
Нужен стартовый

Цитата:

Сообщение от vadimus_ca (Сообщение 1641313)
то отвлекает от риаллока и прочего

Да отвлекает немного, надо искать и мозги немного повернуть

vadimus_ca 03.03.2014 18:13

Re: Исследование механизма работы ПО MMCS
 
Сам билдер или образ СЕ3?

AS21 03.03.2014 18:15

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641322)
Сам билдер или образ СЕ3?

нужен билдер под Win Ce 3
там сидит библиотека на архивацию и разархивацию + методы, порядок их вызова
У меня неустойчиво работает эта функция, не могу понять причину
По-этому нужен первоисточник

vadimus_ca 03.03.2014 18:21

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от AS21 (Сообщение 1641314)
расшифруй или пример

tdump tdump.exe
Код:

Turbo Dump  Version 6.4.1.0 Copyright (c) 1988-2011 Embarcadero Technologies, Inc.
                    Display of File tdump.exe

Old Executable Header

DOS File Size                                      79800h  (497664. )
Load Image Size                                      210h  (  528. )
Relocation Table entry count                          0000h  (    0. )
Relocation Table address                              0040h  (    64. )
Size of header record      (in paragraphs)            0004h  (    4. )
Minimum Memory Requirement (in paragraphs)            000Fh  (    15. )
Maximum Memory Requirement (in paragraphs)            FFFFh  ( 65535. )
File load checksum                                    0000h  (    0. )
Overlay Number                                        001Ah  (    26. )

Borland TLINK Version 2.01

Initial Stack Segment  (SS:SP)                          0000:00B8
Program Entry Point    (CS:IP)                          0000:0000


Portable Executable (PE) File

Header base: 00000200

CPU type                80386
Flags                    30E [ executable backwards 32bit nodebug ]
DLL flags                0000 [ ]
Linker Version          5.0
Time stamp              4EE784AD : Tue Dec 13 12:00:29 2011
O/S Version              4.0
User Version            0.0
Subsystem Version        4.0
Subsystem                0003 [ Windows character ]
Object count            00000008
Symbols offset          00000000
Symbols count            00000000
Optional header size    00E0
Magic #                  10B
Code size                00052000
Init Data size          00034000
Uninit Data size        00000000
Entry RVA                00001108
Image base              00400000
Code base                00001000
Data base                00053000
Object/File align        00001000/00000200
Reserved                00000000
Image size              00093000
Header size              00000600
Checksum                00000000
Stack reserve/commit    00100000/00002000
Heap reserve/commit      00100000/00001000
Number interesting RVAs  00000010
Name                  RVA      Size 
------------------  --------  --------
Exports            0008A000  00000069
Imports            00089000  00000932
Resources          0008B000  00000200
Exceptions          00000000  00000000
Security            00000000  00000000
Fixups              0008C000  00006110
Debug              00000000  00000000
Description        00000000  00000000
Global Ptr          00000000  00000000
TLS                00088000  00000018
Callbacks          00000000  00000000
Bound Imports      00000000  00000000
Import Addr Table  00000000  00000000
Delayed Imports    00000000  00000000
COM Runtime        00000000  00000000
reserved            00000000  00000000

Object table:
#  Name      VirtSize    RVA    PhysSize  Phys off  Flags 
--  --------  --------  --------  --------  --------  --------
01  .text    00052000  00001000  00051600  00000600  60000020 [CER]
02  .data    00034000  00053000  00020800  00051C00  C0000040 [IRW]
03  .tls      00001000  00087000  00000200  00072400  C0000040 [IRW]
04  .rdata    00001000  00088000  00000200  00072600  50000040 [IRS]
05  .idata    00001000  00089000  00000A00  00072800  40000040 [IR]
06  .edata    00001000  0008A000  00000200  00073200  40000040 [IR]
07  .rsrc    00001000  0008B000  00000200  00073400  40000040 [IR]
08  .reloc    00007000  0008C000  00006200  00073600  50000040 [IRS]

Key to section flags:
  C - contains code
  E - executable
  I - contains initialized data
  R - readable
  S - shareable
  W - writeable

******************************************************************************
Section:            Import
File Offset:        00072800 (468992)
  ImportLookUpTblRVA:0008903C
  Time Stamp:        00000000
  Forwarder Chain:  00000000 (index of first forwarder reference)

Imports from KERNEL32.DLL
                  CloseHandle
                  CreateFileA
                  CreateFileMappingA
                  DeleteFileA
                  DuplicateHandle
                  EnterCriticalSection
                  ExitProcess
                  FileTimeToDosDateTime
                  FileTimeToLocalFileTime
                  FindClose
                  FindFirstFileA
                  FindNextFileA
                  FlushConsoleInputBuffer
                  GetACP
                  GetCPInfo
                  GetCommandLineA
                  GetConsoleMode
                  GetConsoleScreenBufferInfo
                  GetCurrentProcess
                  GetCurrentProcessId
                  GetCurrentThreadId
                  GetDriveTypeA
                  GetEnvironmentStrings
                  GetFileAttributesA
                  GetFileSize
                  GetFileType
                  GetFullPathNameA
                  GetLargestConsoleWindowSize
                  GetLastError
                  GetLocalTime
                  GetLocaleInfoA
                  GetModuleFileNameA
                  GetModuleHandleA
                  GetNumberOfConsoleInputEvents
                  GetOEMCP
                  GetProcAddress
                  GetProcessHeap
                  GetStartupInfoA
                  GetStdHandle
                  GetStringTypeA
                  GetStringTypeW
                  GetSystemDefaultLangID
                  GetTimeZoneInformation
                  GetUserDefaultLCID
                  GetVersion
                  GetVersionExA
                  GetVolumeInformationA
                  HeapAlloc
                  HeapFree
                  IsDBCSLeadByteEx
                  IsDebuggerPresent
                  IsValidLocale
                  LCMapStringA
                  LeaveCriticalSection
                  LoadLibraryA
                  MapViewOfFile
                  MultiByteToWideChar
                  OpenFileMappingA
                  RaiseException
                  ReadConsoleInputA
                  ReadFile
                  RtlUnwind
                  SetConsoleCtrlHandler
                  SetConsoleMode
                  SetConsoleScreenBufferSize
                  SetConsoleWindowInfo
                  SetFilePointer
                  SetHandleCount
                  SetLastError
                  SetStdHandle
                  SetThreadLocale
                  Sleep
                  TlsAlloc
                  TlsFree
                  TlsGetValue
                  TlsSetValue
                  UnmapViewOfFile
                  VirtualAlloc
                  VirtualFree
                  VirtualQuery
                  WideCharToMultiByte
                  WriteConsoleInputA
                  WriteFile

Imports from USER32.DLL
                  EnumThreadWindows
                  MessageBoxA
                  wsprintfA

******************************************************************************
Section:            Exports
File Offset:        00073200 (471552)
  Flags:            00000000
  Time Stamp:        00000000
  Major Version:    0000
  Minor Version:    0000

Exports from tdump.exe
  2 exported name(s), 2 export addresse(s).  Ordinal base is 1.
  Sorted by Name:
    RVA      Ord. Hint Name
    -------- ---- ---- ----
    00001161    1 0000 __GetExceptDLLinfo
    000530AC    2 0001 ___CPPdebugHook

******************************************************************************
Section:            Resources
File Offset:        00073400 (472064)
  Flags:            00000000
  Time Stamp:        4EE784AD : Tue Dec 13 12:00:29 2011
  Major Version:    0000
  Minor Version:    0000

Resources:
Type          Name                  Lang Id
--------------------------------------------
[0 named entries, 1 ID entries]
type: RCData (10)  (next directory @00000018)

              [1 named entries, 0 ID entries]
              DVCLAL  (next directory @00000030)

                                    [0 named entries, 1 ID entries]
                                    type: Unknown (0)  (data @00000048)
                                        Offset:    0008B068
                                        Size:      00000010
                                        Code Page: 00000000
                                        Reserved:  00000000

Секция Import

Добавлено через 3 минуты
Цитата:

Сообщение от AS21 (Сообщение 1641325)
нужен билдер под Win Ce 3

4.2 не подойдет?
http://rutracker.org/forum/viewtopic.php?t=2844126

AS21 03.03.2014 18:34

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641334)
4.2 не подойдет?

Все ошибку нашел
Вопрос снимается

Цитата:

Сообщение от vadimus_ca (Сообщение 1641334)
Секция Import

Я правильно понял - нужна расшифровка PE Format?

vadimus_ca 03.03.2014 18:38

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от AS21 (Сообщение 1641340)
Я правильно понял - нужна расшифровка PE Format?

Да, для конкретной версии avunit.exe. Import ведь содержит названия всех используемых модулей?

AS21 03.03.2014 18:41

Re: Исследование механизма работы ПО MMCS
 
Сделай dump для конректного UNIT loading.kwi - см. в файлах txt - там все это есть
Будут вопросы по структуре - спрашивай

vadimus_ca 04.03.2014 07:10

Re: Исследование механизма работы ПО MMCS
 
Кто-нибудь fontlib.dll менял?

Добавлено через 21 час 31 минуту
Поменял fontlib.dll на взятый из русского лоадинга. Не помогло, по-прежнему кракозяблы.

MadLord 05.03.2014 07:25

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1641608)
Поменял fontlib.dll на взятый из русского лоадинга. Не помогло, по-прежнему кракозяблы.

как это сделал без релока?...

vadimus_ca 05.03.2014 07:34

Re: Исследование механизма работы ПО MMCS
 
Я думал риаллок нужен был для загрузки чего-то постороннего.

Потому просто импортировал dll из русского донора.

AS21 05.03.2014 09:23

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1642361)
Я думал риаллок нужен был для загрузки чего-то постороннего.

Если vbase и vsize - совпадает у *.dll - риалок не нужен
Это бывает у *.dll, расположеных вначале
Сортировка по индексу, как у нас сейчас
Риалок я написал, уже тестирую
Но в данном случае не факт, что fontlib.dll - нормально сел, мы просто не занем толком где он задействован, по-этому нет проверки на его работу или не работу

vadimus_ca 05.03.2014 17:32

Re: Исследование механизма работы ПО MMCS
 
Можно сделать принудительную проверку/коррекцию всех контрольных сумм?

Вроде как вручную, hexedit'ом поменял лоадинг, а потом исправил контрольные суммы в измененных регионах?

AS21 05.03.2014 18:35

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от vadimus_ca (Сообщение 1642800)
Можно сделать принудительную проверку/коррекцию всех контрольных сумм

Можно - проверь потом JRemaker - через MAP - красным будут места, где KS - порушено
Или просто поправь что нужно в ручную, а потом пересобери loading.kwi JRemaker, чем искать регионя высчитываь и затем в обратноли порядке в нужном месте в ручную записывать

vadimus_ca 06.03.2014 02:47

Re: Исследование механизма работы ПО MMCS
 
С моей N-05 шла забавная табличка, случайно нашел в коробке:

https://out-club.ru/board/attachment...3nqpxrxslt.png

muss 06.03.2014 17:03

Re: Исследование механизма работы ПО MMCS
 
Номер Е-06 8750А327, внесите в описание.

Zux 09.03.2014 00:28

Re: Исследование механизма работы ПО MMCS
 
Loading от J-05 ещё актуален?

vadimus_ca 09.03.2014 01:06

Re: Исследование механизма работы ПО MMCS
 
Да, пришли мне, пожалуйста.

Добавлено через 1 час 0 минут
Запустил на J-01 европейский лоадинг.
В отличие от американского, он подхватил приемник TMC, но сам лоадинг получился корявый - постоянно подвисал, ни в одну менюшку из источников зайти так и не смог.

MadLord 17.03.2014 07:38

Re: Исследование механизма работы ПО MMCS
 
еще пара успешных экспериментов:
1. angel_dust сообщил о новом способе обновления файла loading.kwi на hdd без обесточивания навигации...я проверил - работает...
2. попробовал подмену MLD модуля в заголовке лоадинга без прописывания нового модуля - работает...т.е. можно вместо вставки нового модуля просто сменить название (а лучше целиком описание) нужного MLD модуля...остальные модули трогать не надо...
3. поэкспериментировал с номером модуля - заменил его на произвольное число 12345678 - все работает...т.е. номер модуля больше нигде, кроме как в заголовке лоадинга не используется...можно использовать его в своих целях (например шифровать там версии экспериментов или еще что)....

to AS21
как дела с тестированием релока?....

AS21 17.03.2014 10:29

Re: Исследование механизма работы ПО MMCS
 
Цитата:

to AS21
как дела с тестированием релока?....
Скоро
Релок сделал
Заканчивааю импорт модуля из внешнего файла (не DONOR)
И надо закончить редакцию реестра
Остальное все сделал

Добавлено через 5 минут
Настала пора снова обновлять шапку, пока есть такие предложения:

muss
Номер Е-06 → 8750А327, внесите в описание.

Обновление loading.kwi — без снятия клемы:
Нажать и удерживать SET + NAVI
На экране выбрать Versions Indication
Нажать и удерживать MENU
На экране выбрать HDD Load

File 17.03.2014 15:17

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от MadLord (Сообщение 1650110)
еще пара успешных экспериментов:
1. angel_dust сообщил о новом способе обновления файла loading.kwi на hdd без обесточивания навигации...я проверил - работает...

О новом способе обновления без обесточивания?
Да вроде как все, кто в теме, много лет этим способом пользуются.

AS21 17.03.2014 15:20

Re: Исследование механизма работы ПО MMCS
 
Цитата:

Сообщение от File (Сообщение 1650369)
много лет этим способом пользуются.

Совершенно верно, новое - хорошо забытое старое

MadLord 18.03.2014 06:39

Re: Исследование механизма работы ПО MMCS
 
я знал про этот метод, но не знал, что им можно пользоваться при обновлении прошивки прямо с винта и что при этом сохраняться настройки, в отличии от "Memory Initialization"....


Текущее время: 12:15. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.10
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot
Использование материалов сайта разрешается только при условии размещения активной ссылки на OUT-CLUB.RU
Copyright ©2006 - 2025, WWW.OUT-CLUB.RU