Akku und Speicher am 6502 auf Gleichheit überprüfen

#7058697
Lesenswert?

Hallo,
ich habe mir einen kleinen 6502-Computer zusammengebastelt und möchte 
eine Tastatur mit Tastaturmatrix mittles eines 6522 anschließen, soweit 
so gut.

Allerdings muss ich um die Tastatur auszulesen den Akku mit einer 
Speicheradresse vergleichen und zu einer neuen Adresse springen, wenn 
Akku und Speicher gleich sind. Wie mache ich das am elegantesten? Ich 
hätte es jetzt mit dem BIT-Befehl probiert und dann die einzelnen Flags 
ausgelesen, aber das erscheint mir etwas zu kompliziert für eine 
eigentlich so einfache Aufgabe und dann müsste ich ja auch noch alle 
Flags wieder löschen.

MfG,
Tim
Beitrag #7059330 wurde von einem Moderator gelöscht.
Gast #7059363
Lesenswert?

RISC schrieb:

> 6502 war schon RISC als noch keiner den Begriff RISC kannte :-)

Das waren damals Glaubenskriege. Der 6502 mit simplen Befehlen und einem 
Buszyklus pro Taktzyklus, d.h. ein 3 byte-Befehl braucht nur drei Takte 
zur Ausführung, und auf der anderen Seite der Z80 mit seinem Mikrocode 
und seinen T-states. 4 MHz Z80 (CISC) entsprachen 1 MHz 6502 (RISC).
Gast #7059449
Lesenswert?

> Ich würde Befehle wie
>    ADC (00,x)
>    ADC (00),y
> nicht wirklich als simpel betrachten.

Die haben ja auch 6 und 7 Takte gebraucht.

Der 6502 war vermutlich so effizient weil er nicht als voll synchrones 
Design geplant wurde, sondern mit einigen eher schmutzigen Tricks wie 
dass einige Signale "dynamisch" gespeichert wurden, d.h. einfach durch 
die Kapazität eines Stücks einer Verbindung. Deswegen hatte der 
ursprüngliche 6502 einen Mindest-Takt. Erst spätere Versionen waren dann 
voll synchron und konnten beliebig langsam getaktet werden.
Gast #7059564
Lesenswert?

Christoph db1uq K. schrieb im

> da gab es einen üblen Trick für Apple II, um die Zugriffe auf das
> Grafik-RAM mit dem Videosynchronimpuls zu synchronisieren. Irgendeine
> Speicherstelle hatte noch kapazitiv diese Info gespeichert und konnte
> vom Programm ausgelesen werden.

Das hatte aber nichts mit dem 6502 zu tun. Man hat einfach eine 
Speicheradresse gelesen, wo nichts angeschlossen war. Damit hatte man 
dann einen Schatten des letzten der Videologik gelesenen Bytes, das 
durch die Leitungskapazität des Datenbusses gehalten wurde.
#7059849
Lesenswert?

Hach ja
Da gab es noch einen Trick um die horizontale Auflösung der Hires-Grafik 
zu verdoppeln. Die Phasenverschiebung der Farbpixel wurde irgendwie dazu 
genutzt, um doppelt so viele SW-Pixel zu bekommen. War irgendwo im 
"Peeker" aus Heidelberg veröffentlicht. Ich habe damals angefangen damit 
ein Fax- oder ähnliches Empfangsprogramm zu bauen.
Das alles geht natürlich nicht mit irgendwelchen Emulatoren.
(Firma: S-C-I DATA GbR) #7059870
Lesenswert?

Apple Interfacer schrieb:
> Apple II (und IIGS) und Assembler, ach waren das schöne Zeiten.

Ja der IIGs so einen habe ich heute noch im betrieb und ein Apple-BOX
Auf den bin ich richtig stolz, da gab's nämlich nicht sehr viele :-)

hex-fan schrieb:
> Leider bisher erfolglos. Unklar warum.

Wiso hast du Interesse?

Ich habe irgend wo ein lauffähiges VHDL für einen Apple IIGs rumliegen, 
müsste mal schauen wo die Files sind ;-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren