Programowanie: Jak stwierdzić typ procesora
From Atariki
Revision as of 12:35, 15 gru 2013; view current revision
←Older revision | Newer revision→
←Older revision | Newer revision→
Procedura sprawdzająca, czy zamontowany w komputerze procesor to 6502, 65C02 czy 65C816. Niepublikowane rozkazy 6502 nie są używane.
.816 lda #$99 ;W 6502 dodawanie dziesiętne 99+1 clc ;daje w wyniku zero, ale znacznik Z sed ;ma stan taki, jak po dodawaniu binarnym. adc #$01 ;W 65C02 poprawiono to. cld beq cmos lda #$00 ;ustawia znacznik Z jak należy rts cmos rep #$02 ;CPU to co najmniej 65C02. Rozkaz REP #$02 bne c816 ;ustawia Z=0 w 65C816, a na 65C02 nie robi nic. inc rts c816 lda #$02 ;Mamy 65C816. rts
Po wykonaniu procedury w akumulatorze jest 0 dla procesora 6502, 1 dla 65C02 oraz 2 dla 65C816.