Ich habe gestern Abend den Schaltplan des Moduls im Eagle teilweise erstellt. Die Adresslogik habe ich im Logik-Simulator skizziert. Der Speicherbaustein ist ein M48T35 timekeeper SRAM. Dieser hat eine Speicherkapazität von 32kb. Der CBM2 kann an seinem Cartridgeport allerdings nur 3 Bänke zu je 8kb ansprechen. Deswegen wird es einen Schalter geben, mit dem man zwischen Bank 3 und Bank 4 umschalten kann.
Die Uhrzeit befindet sich BCD codiert im obersten Bereich der Bank 4, ebenso wie das dementsprechende Controllregister. Falls irgendein CBM-Programm die Bank 3 komplette benötigt (keine Ahnung, ob es ein solches Programm gibt), muß der Wahlschalter auf Bank 3 stehen, da in Bank 4 die Register der Echtzeituhr stören würden.
Den Anschluß /G des Speicherchips habe ich dauerhaft auf low gelegt. /E kann nur auf low gezogen werden, wenn PHI2 auf high ist. Hier mal die Skizzen. Für Verbesserungen/Anregungen/Ergänzungen bin ich natürlich dankbar..
Hier erstmal in inaktivem Zustand. Die Glühbirnen bei A13 müsst ihr euch als eine einzige vorstellen, ich konnte die irgendwie nicht koppeln.
Bank 1 aktiv. Wenn PHI2 high ist und CSBank1 low, geht enable auf low. Die untersten 8kb können nun adressiert werden.
Bank 2 aktiv. Wenn PHI2 high ist und CSBank2 low, geht enable auf low und Adressbit 13 auf high. Die nächsten 8kb können nun adressiert werden.
Bank 3 aktiv. Wenn PHI2 high ist und CSBank3 low, geht enable auf low und Adressbit 14 auf high. Die nächsten 8 kb können nun adressiert werden.
Mehr kann der Commodore an dieser Stelle nicht adressieren. So sollten die 3 Bänke ansprechbar sein und durch die Synchronisation mit PHI2 das timing auch stimmen. Zu guter Letzt noch das Schaltbild, wenn in Bank3 seitens des Commodores die letzten 8kb (inkl Uhr) verwendet werden sollen. Ich nenne sie einfach mal Bank4.
Bank 4 aktiv. Wenn PHI2 high ist und CSBank3 low, geht enable auf low und Adressbit 14 auf high. Der Wahlschalter ist eingeschaltet, durch ein weiteres UND-Gatter sind jetzt Adressbit 13 und 14 auf high. Es können jetzt weitere 8kb verwendet werden und eine batteriegepufferte Echtzeituhr.
Gruß Jan