Auf der Seite 87 von the Game Boy CPU Manual wird behauptet, dass die CP n
Anweisung das Übertragsflag setzt, wenn es keinen Kredit gab und dass es bedeutet, dass A < n
. Dies scheint sich zu widersprechen, da das Übertrags-Flag gesetzt ist, wenn A > n
.Wie verhält sich das Carry-Flag für CP auf einem Game Boy?
Ein Beispiel: Wenn A=0
und B=1
, CP B
setzt die Flaggen wie SUB A, B
, die auf 0 - 1. Dies wird 0 + 255 = 255 und der Carry-Flag nicht gesetzt ist, obwohl A < B
.
Ich stieß auf das gleiche Problem in anderen Z80-Dokumenten, so glaube ich nicht, dass dies ein Tippfehler ist.
Bin ich falsch verstanden, wie borg und SUB
arbeiten oder gibt es noch etwas anderes? Ist SUB
ungleich ADD
mit Zweierkomplement in Bezug auf Flags?