home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Serious Magazine 12
/
Serious_Magazine_12_2003_01_07_Dial_pl_Side_B.atr
/
stuff1.arc
/
MORA.ASM
< prev
next >
Wrap
Assembly Source File
|
1988-09-01
|
3KB
|
1 lines
¢*------ MORA ---------¢*¢* RUN $9F00¢* MEMHI $9F00¢* ESC - powrot do QA¢*¢*---------------------¢ opt %10101¢¢pocz equ $9F00¢¢dosrun equ $0A¢clock equ $12 (+2)¢ekrv equ $58 (+1)¢¢addr equ $CB CC¢help equ $CD¢¢dlptrs equ $230 (+1)¢colfs0 equ $2C4¢kbcods equ $2FC¢iocb equ $340¢¢colbak equ $D01A¢prior equ $D01B¢wsync equ $D40A¢vcount equ $D40B¢rand equ $D20A¢ciov equ $E456¢reset equ $E474¢clear equ $F420¢*--------------¢ org pocz¢¢bgn jsr init¢¢start equ *¢¢ ldy ekrv * Pobierz Adr. Ekranu¢ ldx ekrv+1¢ sty addr¢ stx addr+1¢¢ ldy #0¢¢l1 lda rand * Pobierz wartosc losowa¢ and #$0F * nie wieksza niz 15¢ sta help * wpisz do pomocy¢¢l2 lda help * pobierz pomoc¢ dec help * zmniejsz pomoc¢ bmi l1 * Gdy pomoc mniejsza od 0 do l1¢ asl @ * Przesun do starszej¢ asl @ * polowy bajtu¢ asl @¢ asl @¢ ora help * do mlodszej wstaw¢¢ dec help * zmniejsz pomoc¢ bpl l3 * Gdy pomoc mniejsza od 0¢ lda rand * pobierz wartosc losowa¢ and #$0F¢ sta help * wpisz do pomocy¢l3 sta (addr),y * wyslij na ekran¢ iny * gdy w Y nie 0¢ bne l2 * wroc do l2¢¢ inc addr+1 * Zwieksz MSB Adr.Ekr.¢¢ lda addr+1 * Czy koniec ekranu¢ cmp #$C0¢ bne l2 * nie koniec¢¢loop equ * * Petla zmieniajaca kolory¢¢ lda clock+1¢ and #1¢ ora clock+2¢ bne lp0¢ cmp clock+2¢ beq *-2¢¢ lda lp2 * Gdy clock+1=0¢ eor #$80¢ sta lp2 * adc eor #$80=Sbc¢¢lp0 lda vcount¢ asl @¢ clc¢lp2 adc clock+2 * adc/sbc¢ and #%11110000¢ beq lp3¢ sta colbak * do rejestru tla ekr.¢lp3 sta wsync * poczekaj na zmiane linii¢¢sk jsr spk¢ cmp #$21 * gdy spacja¢ beq start * wroc do start¢ cmp #$1C * gdy nie Esc¢ bne loop * wykonuj petle¢¢jret jsr close * wyjscie¢ jmp reset * do warm reset¢¢*-áס∩Σ≡≥∩τ≥βϕ∙¢¢spk lda kbcods * Sprawdz klawisz¢ cmp #$FF¢ beq spe¢ ldy #$FF¢ sty kbcods¢spe rts¢¢*--áחמחקá--¢¢Init Equ *¢¢ jsr open¢¢ lda #0¢ tax¢in1 sta addr,x¢ inx¢ cpx #3¢ bne in1¢¢ rts¢¢*-Open Gr.9¢¢open equ * * otwarcie ekranu Gr.9¢¢ ldx #$60¢ lda #3 | open¢ sta iocb+2,x | do iocom¢ lda <s | LSB nazwy¢ sta iocb+4,x | do ioadr¢ lda >s | MSB nazwy¢ sta iocb+5,x | do ioadr+1¢ lda #12 | +16 gdy okno¢ sta iocb+10,x¢ lda #9 |Nr. trybu Gr.¢ sta iocb+11,x¢ jsr ciov¢ lda #$11 | dla plot i drawto¢ sta iocb+2,x¢ jmp ciov¢¢close equ *¢¢ ldx #$60¢ lda #12¢ sta iocb+2¢ jmp ciov¢¢s dta c'S:',b($9B)¢¢ org $2E0¢ dta a(bgn)¢*------------¢ end of file¢