home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Syzygy Magazine 6
/
Syzygy_Magazine_6_1999___pl_Disk_2_of_3_Side_A.atr
/
bugs.arc
/
BUGS.ASM
next >
Wrap
Assembly Source File
|
1999-06-19
|
2KB
|
1 lines
* Programik sprawdza bledy 6502¢* - ADC w trybie dziesietnym¢* - BRK z przerwaniem NMI¢* - JMP posredniego¢* napisal Fox/Tqa¢¢ opt 37¢ org $8000¢¢tstk equ $8200¢¢sp equ $f0¢¢begn dta h(*) Bledny jmp pobiera to¢ lda #$ff ... i skacze tutaj¢ jmp cont¢¢start equ * Tu zaczynamy zabawe¢¢* Sprawdz blad ADC¢ sed¢ lda #$99 BCD 99+01=00¢ clc¢ adc #1¢ cld¢ beq *+4 Z ustawiony: bez bledu¢ lda #$ff¢ ldx <adct¢ jsr prin¢¢* Sprawdz blad BRK¢ tsx Moze to glupie¢ stx sp zapamietywac stos¢ ldx #0 ale za to kulturalne¢sstk lda $100,x¢ sta tstk,x¢ inx¢ bne sstk¢ sei¢ inc $d40e¢ lda #$fe Zabieramy¢ sta $d301 przerwania¢ lda <nmi¢ sta $fffa¢ lda <irq Przerwanie BRK¢ sta $fffe wskazuje na BRK, hehe¢ lda >*¢ sta $fffb¢ sta $ffff¢ lsr $d40e Wlaczamy VBL¢irq brk ... w kolko BRK ...¢nmi inc $d301 ... az wystapi VBL¢ cli¢ pla¢ pla¢ eor <irq Adres powrotny na BRK¢ beq *+4 to nie ma bledu¢ lda #$ff¢ ldx <brkt¢ jsr prin¢ ldx #0 Zwracamy stos¢lstk lda tstk,x¢ sta $100,x¢ inx¢ bne lstk¢ ldx sp¢ txs¢¢* Sprawdz blad JMP¢ jmp (jmpp)¢¢cont ldx <jmpt¢¢* Wypisz wynik¢* (A=$ff:blad 0:nie, X=<cmdt)¢prin pha¢ lda #11 Pisz 3 literki¢ ldy #3 - nazwe rozkazu¢ jsr cali¢ ldx <nobt¢ pla¢ beq *+4¢ ldx <bugt¢ lda #9 Pisz do EOLa¢ ldy #$ff - czy jest blad¢¢* Wywolaj komende "E:"¢* (A=cmd, X=<buf, Y=len)¢cali sta $342¢ stx $344¢ lda >*¢ sta $345¢ sty $348¢ ldx #0¢ stx $349¢ jmp $e456¢¢adct dta c'ADC'¢brkt dta c'BRK'¢jmpt dta c'JMP'¢bugt dta c' bug detected!',b($9b)¢nobt dta c' bug NOT detected.',b($9b)¢¢ org begn+$ff¢jmpp dta a(jmp1)¢¢jmp1 lda #0 Nie ma bledu JMP¢ jmp cont¢¢ org $2e0¢ dta a(start)¢ end¢