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 >
Assembly Source File  |  1988-09-01  |  3KB  |  1 lines

  1. ¢*------ 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¢