문제

나는 어제 이것에 대한 답을 썼다 :당신이 보거나 한 가장 멋진 핵은 무엇입니까?그리고 나는 6502 회의를 기억하기 위해 정말로 열심히 노력했고, 나는 내 인생을 위해 인생을 기억할 수 없었습니다.

  :1
  lda $C010
  cmp #$80
  bcc :1  ; branch if less than? I forget how to do that.
  lda $C000
  jsr $FDF0   ;output the accumulator value to the screen

지시가 무엇인지 아는 사람 있나요? BNE와 BEQ는 동일하고 BCC는 캐리를위한 것이었고 CMP는 기본적으로 SBC이며 캐리에 영향을 미치지 만 해당 경우에 작동하는지 확실하지 않습니다.

도움이 되었습니까?

해결책

BCC는 더 적은 경우 지점입니다; BCS는 더 크거나 같으면 지점입니다. 좋은 튜토리얼이 있습니다 여기.

그러나 STU의 코드는 CMP없이 더 간결하게 작성할 수 있습니다.

BIT $C010     ;clear the keyboard strobe
:1
LDA $C000     ;check for a keypress
BPL :1        ;taken if no keypress
JSR $FDFO     ;print the key

다른 팁

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top