atari-home.de - Foren
Hardware => Hardware (Classic 16-/32-Bit) => Thema gestartet von: czietz am Fr 27.09.2019, 08:41:29
-
Hallo,
gibt es irgendwo ein Image der Bootroms, die bei Verwendung einer PAK/3 auf dem Mainboard notwendig sind (waren?), wenn man kein deutsches PAK-TOS einsetzt? Ich vermute, sie enthalten nur die korrekte Startadresse der ROMs auf der PAK, würde es mir aber gerne einmal im Original ansehen.
-
Bist du sicher daß es nur ein Problem bei nicht-deutschen TOS Versionen ist? Ich denke daß es generell das Problem ist, wenn das eingebaute TOS bei $fc0000 gemappt wird.
-
Ja, ich bin mir sicher. Sonst würde ich das nicht schreiben! Etliche mit deutschem PAK-TOS so laufende PAKs beweisen es. Bitte lies meine E-Mail auf der emutos-devel-Liste für die technische Erklärung, warum es (nur!) mit deutschem PAK-TOS funktioniert:
https://sourceforge.net/p/emutos/mailman/message/36772320/
-
Schreib doch mal Holger an! Wenn er sie nicht hat? Wer sonst ?
-
Bist du sicher daß es nur ein Problem bei nicht-deutschen TOS Versionen ist? Ich denke daß es generell das Problem ist, wenn das eingebaute TOS bei $fc0000 gemappt wird.
For all but the German version of PAK-TOS, boot roms on the mainboard are necessary. These must contain the address of the PAK-TOS ($FEE00000) as the start PC in the second 4 bytes (usually the address $00FC0000). The German version of PAK-TOS does not need any boot roms (but there must be some roms on the mainboard) because a trick is used when reading the TOS start address. Unfortunately this has not yet been tested sufficiently in the "heart and soul" of the other country-specific versions.
-
Theoretisch ein Tos2.06 aber ohne Adressdekoder!
-
Ja, das ist was ich meine. Dieser "Trick" müsste eigentlich auch bei anderen ROM-Versionen funktionieren, wird aber wohl wimre bei tospatch nur für deutsche ROMs unterstützt.
-
So wie ich die Kommentare in TOSPATCH verstehe, passt es bei deutschem TOS halt zufällig so, dass nur unwichtige Bytes einer GEM-Resource durch das Einpatchen des Sprungs zerstört werden. Bei anderen Sprachversionen ist das u.U. nicht der Fall?
-
Müsste nochmal nachschauen, aber zumindest bei der 512k version wird meine ich die komplette Resource in die zweite Hälfte des ROMs geschoben, mit ein paar paar Bytes Platz am Anfang um Raum für den Patch zu schaffen.
-
EDIT: ich weiß schon, wovon ich schreibe. Für die öffentlich verfügbare Version der PAK-Patches gilt:
;* Für PAK-Trick um mit FC-TOS auf Mainboard in die PAK-ROMs hochzukommen
;* liegt leider mitten in der AES-RSC.
;* Dadurch werden beim betroffenen Objekt obstate und obflags zerstört.
;* Flags und States werden jedoch vor Verwendung des Dialoges (es ist der
;* rohe Alert) unseres Wissens alle gesetzt, daher sollte es keine Probleme
;* geben (bei der deutschen Version).
EDIT: Das mag später von Holger noch verbessert/geändert worden sein.
Davon abgesehen: Können wir bitte beim Thema bleiben? Boot-ROMs für die PAK gesucht.
-
EDIT: ich weiß schon, wovon ich schreibe. Für die öffentlich verfügbare Version der PAK-Patches gilt:
;* Für PAK-Trick um mit FC-TOS auf Mainboard in die PAK-ROMs hochzukommen
;* liegt leider mitten in der AES-RSC.
;* Dadurch werden beim betroffenen Objekt obstate und obflags zerstört.
;* Flags und States werden jedoch vor Verwendung des Dialoges (es ist der
;* rohe Alert) unseres Wissens alle gesetzt, daher sollte es keine Probleme
;* geben (bei der deutschen Version).
EDIT: Das mag später von Holger noch verbessert/geändert worden sein.
So ist es! Die öffentliche Version ist total veraltet. Anbei der aktuelle Patch:
- Funktioniert mit originalem TOS 1.xx auf dem Mainboard
- Funktioniert mit den Ländervarianten FRG, USA, UK, FRA
- Das RSC wird sauber verschoben, um Platz für den Einsprung zu schaffen
Im Code wird erklärt, wie es funktioniert..
;******************************************************************************
; Trick, damit die PAK auch mit TOS 1.xx auf dem Mainboard startet
; Kein Konflikt mehr, da der RSC-Bereich nach hinten verschoben wird
; Zim 20.12.2011
;
; - CPU l„dt nach Reset $00FC0030 als StartAdr (aus TOS 1.xx auf dem Mainboard)
; - Bei Zugriff auf $00FC0030 wird das PAK-TOS angesprochen, falls enabled
; - Adresse, die die PAK-ROMs sehen:
; F C 0 0 3 0 ; diese Adresse liegt am AdrBus an (hex)
; 1111 1100 0000 0000 0011 0000 ; (bin)
; xxxx x100 0000 0000 0011 0000 ; diese Adr sieht das ROM (512 kBytes, bin)
; x 4 0 0 3 0 ; (hex)
_SWITCH .NATION
_CASE .FRG:
.INSTALL_RSC = 20336 ; Verweise auf RSC-Bereich
.RSC_TAB = 3ED2E ; Beginn des RSC-Bereichs
.RSC_END = 46232 ; Ende des RSC-Bereichs
.TOSINFO_OFS = 1A4A ; Offset zum TOS-Info-Dialog ab RSC_TAB
_CASE .USA, .UK:
.INSTALL_RSC = 202DC ; -5A
.RSC_TAB = 3ECA2 ; -8C
.RSC_END = 46134 ; -FE
.TOSINFO_OFS = 1A8B
_CASE .FRA:
.INSTALL_RSC = 20354 ; +1E
.RSC_TAB = 3ED68 ; +3A
.RSC_END = 464F0 ; +2BE
.TOSINFO_OFS = 1B71
_DEFAULT:
_ERROR "P_INIT4: Nation wird nicht untersttzt"
_ENDSWITCH
_FILL .RSC_TAB,40030,$FF ; Alten RSC-Bereich bis Boot-Patch l”schen
40030 $4E,F9,00,E0,00,30 ; jmp os_main
.RSC_TAB: ; ~ in Variable speichern
; Neuen RSC-Bereich ab hier einrichten
_SWITCH .NATION
_CASE .FRG:
~ RSC_FRG.B ; Deutsches RSC-File
_CASE .USA, .UK:
~ RSC_USA.B ; Amerikanisches RSC-File
_CASE .FRA:
~ RSC_FRA.B ; Franz”sisches RSC-File
_ENDSWITCH
_EVEN $FF ; Damit nachfolgender Code ausfhrbar bleibt
.ROMTOP: ; ~ in Variable speichern
.TOS_INFO = .RSC_TAB + .TOSINFO_OFS ; zeigt auf TOS Info Dialog
.INSTALL_RSC+ A $.RSC_TAB+.BASE.L
.INSTALL_RSC+5A $.RSC_TAB+.BASE.L
!40036 .. .ROMTOP ; Im RSC/NEWDESK.INF nicht relozieren.
Davon abgesehen: Können wir bitte beim Thema bleiben? Boot-ROMs für die PAK gesucht.
Da kann ich Dir nicht helfen: Es gibt keine speziellen Boot-ROMs für die PAK, s.o.
-
Da kann ich Dir nicht helfen: Es gibt keine speziellen Boot-ROMs für die PAK, s.o.
Muss es aber mal gegeben haben, oder? Die Anleitung jedenfalls sagt:
-
Da kann ich Dir nicht helfen: Es gibt keine speziellen Boot-ROMs für die PAK, s.o.
Muss es aber mal gegeben haben, oder? Die Anleitung jedenfalls sagt:
Steht nicht in der Anleitung auch wie Start-ROMs auszusehen habe? Zumindest verstehe ich es so das in den ersten vier Bytes $FEE00000 stehen soll. Der Rest ist dann wohl egal.