Hi!
My cartridge programs.
Hallo Besucher, der Thread wurde 9,1k mal aufgerufen und enthält 26 Antworten
letzter Beitrag von spacer am
Cartridgeheader und Struktur für C16 und Plus/4 ?
- cbmhardware
- Erledigt
-
-
Danke, aber da steige ich nicht durch.
Gruss
-
http://www.cbmhardware.de/show…ction%20ROM%20Lo%20Source
Hier ist ein Source-Auszug des originale 3Plus1. Da sind der Programm-Rucksack und die Texteinblendungen mit drin. Das wird original in Bank $0c eingeblendet, also als internes Function-ROM.
Daraus muss dann Bank $02 werden, wie hier: http://www.cbmhardware.de/show…/C16%20Cartridge%20Source . Da werden dann auch noch ein paar Vektoren initialisiert.Wenn Du dieses Prinzip verstanden hast, vergleichst Du das mit dem Quelltext von gerryke im Monitor.
Das Einblenden eines Moduls ist beim Plus/4 ein Flickwerk aus Einschleifen ins System, Jump-Code ins Modul und ggf. den Texteinblendungen mit anschließender Sys-Zeile.
-
Der 3-plus-1-Header ist universal und erkennt selbsttätig, auf welchem Steckplatz (in welcher Bank) das ROM sitzt. Genauer gesagt wird diese Info von dem Kernal-'ROM Walk' hinterlegt, wenn es beim Systemstart die ROMs eins nach dem anderen initialisiert. IIRC würde das sogar mit mehreren ROMs funktionieren, die dann auf verschiedene F-Tasten gelegt und wahlweise gestartet werden.
-
-
Der 3-plus-1-Header ist universal und erkennt selbsttätig, auf welchem Steckplatz (in welcher Bank) das ROM sitzt. Genauer gesagt wird diese Info von dem Kernal-'ROM Walk' hinterlegt, wenn es beim Systemstart die ROMs eins nach dem anderen initialisiert. IIRC würde das sogar mit mehreren ROMs funktionieren, die dann auf verschiedene F-Tasten gelegt und wahlweise gestartet werden.
Im 3plus1 steht wie in jedem anderen Modul die Bank, die von der Initialisierung des Rechners in eine Tabelle geschrieben und in Reihenfolge abgearbeitet werden. Die Nummer der F-Taste wird dann variabel vergeben.
Da sind einige ROMs per F-Tasten wählbar wenn die Header wie im 3plus1 verwendet wird. Wahrscheinlich einmal intern und zwei mal extern (mit Kernal). F1: intern, F2: extern 1, F3: extern 2. Und dann natürlich noch in kuriosen Bank-Mischungen.spacer: den Rest musst Du Dir schon selbst erarbeiten.
-
Danke für die Info.
Kann man mein Programm nicht irgendwo da Plazieren damit es läuft ?
Danke.
GRuss