015
04.01.2009, 14:06 Uhr
holm
|
Forschung soweit beendet. Der RAM U215 bildet einen relativ einfachen Schreibschutz für den RAM auf der Platine, ob der auch für externe RAM K arten funktioniert müßte ich noch nachsehen, ich glaube es aber nicht, weil das /WE Signal der RAMS auf der Platine aus dem negierten /RD gebildet wird, normalerweise führt man solche Schweinereien nicht nach außen auf den BUS... Das RAM hängt mit seinem Dateneingang an A0, die Adressen A15-A10 des Prozessors gehen auf die Adressleitungen des RAMS, die restlichen Aresseingänge sind totgelegt oder parallelgeschaltet. Eine Ausgabe auf 0x8c oder 0x8d erzeugt eine Schreiboperation auf den RAM, so das bei 0x8c eine 0 und bei 0x8d eine 1 in den RAM geschrieben werden. Der Datenausgang wird mit dem negierten /MREQ Signal NAND verknüpft und das Ergebnis bildet mit wieder einer NAND Vernküpfung mit /RD das /WE Signal für die DRAMS. Eine 1 im U215 bedeutet also inaktives /WE Signal für die DRAMS, eine 0 gibt es frei.
Das Stückchen Code hier:
Quellcode: | START: ;0000 LD BC,8CH ST01: ;0003 OUT (C),B DJNZ ST01 ;3 LD SP,STACKTOP ;0FFFEH LD HL,RAMSTART ;0C000H LD (HL),0FFH ;Zelle loeschen PUSH HL POP DE INC DE LD BC,03FFF ;Laenge 16K LDIR ; Block loeschen
|
Stand am Anfang ders ersten U555 auf der Platine, es schaltet also in der Schleife den Schreibschutz für jedes einzelne Kilobyte des Speichers aus und löscht danach den RAM der von 0xc000 - 0xffff reicht.
Die Wickelbrücken auf der Platine dienen der Einstellung der IO Basisadresse der Karte, die bei beiden meiner Platinen auf 0x80 steht. Wenn die Steckverbinder unten sind, ist die unterste der 4 Brücken A7 und die oberste A4, auf der linken Seite liegt jeweils das Adreßbit und darüber das negierte Adreßbit an welche von den 4 Pins auf der rechten Seite zu einem 7430 gehen und die Adreßfreigabe bewerkstelligen.
Danach liegen in folgendem Offsett der CTC, die PIO und der Schreibschutz:
(Korrigiert!!)
80+00 CTC Kanal 0 80+01 CTC Kanal 1 80+02 CTC Kanal 2 80+03 CTC Kanal 3 80+04 PIO A Daten 80+05 PIO B Daten 80+06 PIO A Control 80+07 PIO B Control ... 80+0C Schreibschutz Aus 80+0D Schreibschutz Ein.
Jetzt könnte man noch die Lötbrücken für den RAM Adreßdekoder erforschen und die Anschlußbelegung des Koppelbusses herausklingeln wobei ich hier eigentlich überzeugt bin, das der der K2521 entspricht.
Frage: Wollte das hier Jemand wissen?
Gruß,
Holm -- float R,y=1.5,x,r,A,P,B;int u,h=80,n=80,s;main(c,v)int c;char **v; {s=(c>1?(h=atoi(v[1])):h)*h/2;for(R=6./h;s%h||(y-=R,x=-2),s;4<(P=B*B)+ (r=A*A)|++u==n&&putchar(*(((--s%h)?(u<n?--u%6:6):7)+"World! \n"))&& (A=B=P=u=r=0,x+=R/2))A=B*2*A+y,B=P+x-r;} Dieser Beitrag wurde am 04.01.2009 um 21:29 Uhr von holm editiert. |