Ungereimtheit im 800XL-Schaltplan ?!?


Ungereimtheit im 800XL-Schaltplan ?!?

von Dietrich » Mo 17. Mär 2003, 19:57
Hallo,

ich hab gerade (zwecks Einbau einer SRAM-Erweiterung) den Schaltplan des 800XL unter die Lupe genommen (sieht ja recht einfach aus). Dabei ist mir folgende Ungereimtheit (Fehler ?) aufgefallen:

Wenn man (mit POKE $C000,0) bei eingeschaltetem OS-ROM in den ROM-Bereich schreibt, schaltet der 6502 seinen Datenleitungen auf Ausgang, belegt also den Datenbus. Da das R/W-Signal nicht an die MMU angeschlossen ist, wird aber auch das OS-ROM durch die MMU aktiviert. Somit wird der Datenbus auch durch das OS-ROM belegt und kollidiert damit mit der CPU. Schadet das dem ATARI (oder hab ich da was übersehen) ?

Gruß
Dietrich

von mega-hz » Fr 18. Aug 2006, 22:44
Hi,

interessant!

Sollte und darf eigentlich nicht sein!
Werde ich mit einfliessen lassen, in dem ... :-)

ROM Bereiche sollten nie beschreibbar sein!
Ich werde mal ein kleines Progrämmchen schreiben und es
auf nem "Testrechner" ne Woche laufen lassen, mal sehen,
ob sich was verabschiedet! :-)

Gruß,
Wolfram.

von Gast » So 20. Aug 2006, 23:16
Schreibt er dann vielleicht in den darunterliegenden RAM? :?

Edith: ich meine natürlich den bei ausgeschaltetem OS-ROM auf der selben Adresse liegenden RAM.

von mega-hz » So 20. Aug 2006, 23:35
nein, wenn man sich das GAL-Listing der MMU anschaut, wird man
feststellen, daß das ChipSelect-Signal fürs Basic und fürs OS
nicht mit R/W verknüpft sind! Demnach ist es also möglich, ins
Rom zu schreiben! Unter dem OS ist RAM, aber dann ist das ROM
nicht selektiert.

Gruß,
Wolfram.

von Gast » So 20. Aug 2006, 23:41
Das wäre dann sehr unsauber implementiert...

Ich habs grade mal bei meinem XL ausprobiert. Poke 49152,0 ergibt nichts. Alles funktioniert noch.

Edith: ? peek (49152) gibt immer 17 aus. Wie zu erwarten war. Schade, kann ich mir doch kein neues OS zurechtPOKEn. :lol:

von mega-hz » Di 22. Aug 2006, 01:52
ich denke mal, wenn man es in assembler macht, und als dauertest,
wird schon irgendwas warm werden, habs noch nicht getestet!
Kommt aber irgendwann noch....

von Gast » Di 22. Aug 2006, 17:45
Was ist der maximale Stromfluß, den die ROMs und die CPU verkraften und wie viel fließt bei einem Kurzschluß? Da könnten schon ein paar hundertstel Watt Abwärme enstehen... 8O

von HiassofT » Mi 23. Aug 2006, 12:44
Also: so 100% sauber ist das mit dem R/W und dem OS nicht. Für zukünftige (OS-) Erweiterungen sollte man das berücksichtigen und "richtig" machen.

Schaden sollte der Atari bei wiederholten POKEs ins OS-ROM allerdings auch keinen nehmen. Vor einiger Zeit hatte ich eine Diskussion mit Bernhard Engl, er hat mir gesagt daß man bei ICs die in NMOS gefertigt sind (und das sind alle ICs im Atari) gefahrlos einen Ausgang auf Low ziehen kann. Das machen auch die originalen Freezer mit dem Refresh-Ausgang des ANTIC um die internen Atari RAMs/ROMs zu deaktivieren.

Der Strom, der dabei fließt, ist auch nur recht gering. NMOS ICs (genauso wie zB die TTL ICs) können bei einem High-Pegel am Ausgang nur einen recht kleinen Strom liefern. Deshalb (und da der High-Pegel typischerweise bei Belastung nur etwa 3V beträgt) schließt man LEDs auch zwischen +5V und dem Ausgang eines TTL ICs an und betreibt die TTL ICs in aktive-low Logik.

Bei ICs in CMOS Technik (quasi alle aktuellen RAMs und ROMs) sieht's anders aus, da sollte man das alles lieber nicht machen. Ich bin leider auch kein Chip-Designer so wie Bernhard, im Zweifelsfall sollte aber ein Blick ins Datenblatt helfen um den maximalen Kurzschluss-Strom rauszufinden.

so long,

Hias

von Gast » Mi 23. Aug 2006, 14:45
Vielleicht ist das der Grund, warum das so unsauber implementiert wurde.

@HiassofT: jetzt weiß ich woher du mir ein Begriff bist! Ich nutze gelegentlich dein Programm ATARIDSK. Vielen Dank dafür, das hat mir schon so manches mal sehr geholfen! Gibt es davon eigentlich eine aktuelle Version?

von HiassofT » Mi 23. Aug 2006, 15:27
Faullenzer hat geschrieben:@HiassofT: jetzt weiß ich woher du mir ein Begriff bist! Ich nutze gelegentlich dein Programm ATARIDSK. Vielen Dank dafür, das hat mir schon so manches mal sehr geholfen! Gibt es davon eigentlich eine aktuelle Version?

Die letzte aktuelle Version (V1.2) gibt's auf meiner Homepage http://www.horus.com/~hias/atari/ zum Download. Ist aber auch schon ein paar Jährchen alt :-)

Da AtariDsk gut und stabil läuft habe ich daran auch nicht mehr weiterprogrammiert.

Schau' Dir aber einfach mal WriteAtr an (ebenfalls auf meiner Homepage), damit kannst Du 130k - 1.44MB Disks direkt am PC lesen und schreiben (Achtung: 130k funktioniert nicht mit allen PCs).

so long,

Hias

von Gast » Mi 23. Aug 2006, 16:32
Danke! 8)