Illegaler Opcode

Aus C64-Wiki
Zur Navigation springenZur Suche springen

Ein illegaler Opcode ist ein Opcode, der nicht in der offiziell Beschreibung des Prozessors vorkommt. Da nicht explizit spezifiziert ist, was diese illegalen Opcodes bewirken, kann man sich nie sicher sein, dass diese wirklich so funktionieren, wie man glaubt. Beispielsweise kann ein funktionsgleicher Prozessor eines anderen Herstellers andere Funkionalität für die Opcodes bereitstellen. Es kann sogar sein, dass ein und der selbe Prozessor bei zweimaliger Ausführung ein und desselben illegalen Opcodes unterschiedliche Ergebnisse liefert.

Im Falle des Prozessors des C64 (MOS 6510) und des, im Hinblick auf die Opcodes funktionsgleichen Vorgängers MOS 6502), gibt es 104 illegale Opcodes. Viele der Opcodes machen nichts, sind also lediglich Varianten des NOP-Befehls. Bei einigen Opcodes stürzt der Computer ab (genauer landet die Befehlsausführung in einer Endlosschleife, die nicht mehr unterbrochen werden kann). Andere Opcodes, wie beispielsweise LAX, haben hingegen mehr oder minder nützliche Funktionalität.

Weblinks[Bearbeiten | Quelltext bearbeiten]