[#1] Colanto Kickstart 45.61 (3.x) i expansion.library
Witam w tym kickstarcie jest nowsza expansion.library i chciałbym ją wyciągnąć, aby dodać do mojego własnego kicka. Od razu mówię , że remusem się nie da - komunikat unsupported rom. Jak to zrobić ?


Ostatnia aktualizacja: 04.08.2016 22:49:16 przez HanSolo
[#2] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@HanSolo, post #1

Możesz podać numer wersji tej biblioteki? Mam na myśli

version full expansion.library

Może da się ją gdzieś znaleźć...

Spróbowałbym jeszcze jednej rzeczy: zrób swój customowy ROM, bez żadnych patchy, i sprawdź, czy jesteś w stanie wydobyć expansion.library z Twojego ROMu edytorem heksadecymalnym, i czy dostaniesz binarnie identyczny plik. Nie wiem, jak Remus dokładnie buduje Kickstart, ale zawsze to jakaś szansa...
[#3] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@Cedrat, post #2

expansion.library 40.3 (03.10.09)
[#4] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@Cedrat, post #2

Lipa.
"Unfortunately there is no automatic way for extraction. Modules in ROM are absolute address relocated (=they only work if they are in exact same position in ROM image. You could try to insert it in exact same position in your custom rom but I don't think there are any ready made tools for it..), to make it loadable module, someone needs to find all addresses that need relocation and create normal relocation entries. Original relocation data is gone.

This is how for example romsplit (that comes with remus) works, it has manually created relocation tables for known module versions."

Może dałoby się przechwycić i zapisać tą bibliotekę z RAMu gdy jest wczytywana z kickstartu. Nawet pakiet MMULib może remapować ją z chip ramu do fast ramu...
[#5] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@HanSolo, post #4

"Original relocation data is gone" - rzeczywiście, trochę lipa - miałem nadzieję, że moduły kickstartu pisze się jako kod niezależny od adresu. Z drugiej strony, ma to sens; adresowanie bezpośrednie jest szybsze na chyba każdym procesorze.

OK, trzeba te dane odtworzyć, ale bez znajomości assemblera się, niestety, nie obejdzie :( Zaznaczam, że nie znam assemblera 68k, ale (jeśli chcesz się za to zabrać - uprzedzam, sporo pracy przed Tobą), to jako programista mogę coś-niecoś podpowiedzieć:

1. Spróbuj poszukać na Aminecie jakiegoś narzędzia, które pokazuje strukturę plików wykonywalnych (format hunk). Weź expansion.library wyciągnięte z kickstartu 3.1 i sprawdź, jakie masz tam sekcje, i jak duża jest sekcja z danymi o relokacji - to da Ci jakiś pogląd, ile roboty Cię czeka (nie sądzę, żeby poprawiona wersja zawierała nie wiadomo jakie zmiany).

2. Musisz zlokalizować moduł w kickstarcie Cloanto i czymś go zdeassemblować (zdaje się, że najpopularniejszy program do tego celu na Amidze to IRA)

3. Poszukaj kursu podstaw assemblera 68k - interesują Cię przede wszystkim tryby adresowania. Będziesz musiał zidentyfikować wszelkie bezwzględne (bezpośrednie) adresowania i (zapewne) podać je odtworzonej w sekcji relokacji.

4. Poszukaj specyfikacji plików hunk. O ile dobrze pamiętam, to nie jest skomplikowany.

5. Mozolnie odtwórz sekcję relokacji. prawdopodobnie będziesz musiał jeszcze wydzielić sekcję z danymi, ale to już powinno być proste.

Ostatnia aktualizacja: 05.08.2016 11:32:44 przez Cedrat
[#6] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@HanSolo, post #1

Kickstart 3.x (45.61) występuje w kilku wersjach w zależności od tego, do jakiego modelu Amigi ma być przeznaczony. Więcej informacji o jego zawartości na mojej stronie.

Napisałem program, który potrafi wydobywać moduły rezydentne z różnych wersji Kickstartu. Otrzymany w ten sposób plik binarny zawiera wszystkie dane, począwszy od nagłówka modułu (bajty $4AFC), aż do adresu wskazującego na jego koniec. Może to Wam ułatwić sprawę przy tworzeniu własnego Kickstartu.
[#7] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@RomanWorkshop, post #6

Ok udało mi się wyodrębnić zarówno expansion.library jak i poprawiony ram-handler 44.24 z tego romu. Niestety expansion.library ma tylko kilka bajtów, a ram-handler ok 9kb czyli ok.Co potem należało by zrobić, aby te moduły wrzucić remusem do własnego kickstartu. Remus wyświetla komunikat "Is not a chunk file".
[#8] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@RomanWorkshop, post #6

Najnowszy ROM Cloanto do A1200 jest w wersji 45.062.
[#9] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@RomanWorkshop, post #6

Zwróć tylko uwagę, że moduł expansion powinien być razem z modułem diag init.
[#10] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@Cedrat, post #9

Ok, są wyodrębnione 2 moduły. Co teraz ? Ich disasemblacja ?


@pong
Nie bardzo wiadomo co tam zmienili bo dalej w treści jest wymieniona wersja 45.061.

Ostatnia aktualizacja: 05.08.2016 21:41:48 przez HanSolo
[#11] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@HanSolo, post #10

Był problem, że na niektórych konfiguracjach sprzętowych nie działała stacja dysków. W WinUAE nie występował ten problem. Na ekranie startowym pojawia się napis 45.062.
[#12] Re: Colanto Kickstart 45.61 (3.x) i expansion.library

@Cedrat, post #9

Każdy moduł jest traktowany oddzielnie nawet, jeśli zawiera tylko sam nagłówek (Resident Module Tag). Głównym przeznaczeniem tego programu jest sprawdzanie obrazów Kickstartu, a opcja podglądu zawartości i wyciągania modułów jest tylko dodatkiem.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem