home *** CD-ROM | disk | FTP | other *** search
/ Serious Magazine 12 / Serious_Magazine_12_2003_01_07_Dial_pl_Side_B.atr / stuff1.arc / TOTO.ASM < prev    next >
Assembly Source File  |  1988-09-01  |  4KB  |  2 lines

  1. ¢*---- TOTO ----¢*¢* RUN   - $9980¢* MEMHI - $9900¢*--------------¢¢     opt %10101¢¢pocz  equ $9980¢¢clock equ $12 13 14¢ekrv  equ $58 59¢ktab  equ $79 7A¢¢colfs0 equ $2C0¢kbcods equ $2FC¢¢rand  equ $D20A¢clear equ $F420¢¢*-Wlasne¢¢byte equ $F0¢addr equ $F1 F2¢word equ $F3 F4¢help equ $F5¢¢*----------------¢   org pocz¢¢begin equ *¢¢   jsr init¢¢bg0 jsr spkey¢¢   cmp #$1B¢   bne bg1¢¢   jmp exit¢¢bg1 cmp #$31   * Czy 1 - 6¢    bcc bg0¢   cmp #$37¢   bcs bg0¢   and #7¢   tax¢   dex¢   stx flx     * Ktore losowanie¢   lda ile,x   * Ile liczb jest potrzebne¢   sta fly¢   lda max,x   * najwieksza liczba¢   sta fmax¢   lda ilos,x  * Ile losowan¢   sta byte¢¢   jsr clear¢¢   ldy ekrv¢   ldx ekrv+1¢   sty word¢   stx word+1¢¢   ldy #word¢   lda #$50¢   jsr inad¢   ldy #0¢   sty help¢¢    ldx flx¢bg2 ldy #0¢    dex¢    bmi wyp¢bg3 iny¢    inc help¢   cpy #$1A¢   bne bg3¢   beq bg2¢¢wyp clc       * Wypisz nazwe losowania¢    lda help¢   adc #6¢   tax¢    ldy #$0A¢wp1 lda nap1,x¢    sta (word),y¢   inx¢   iny¢   cpy #$1E¢   bne wp1¢¢   ldy #word¢   lda #$50¢   jsr inad¢¢   ldx byte¢¢loop equ *¢¢   stx byte¢¢*-Wypelnienie tablicy¢¢l0 ldy fly¢l1 lda rand¢   beq l1¢   cmp fmax¢   bcs l1¢   sta ktabl,y¢   dey¢   bne l1¢¢*-Sortowanie przez wstawianie¢¢sort equ *¢¢   ldx flx¢   cpx #5¢   beq pisz¢¢   ldy #2¢s0 tya¢   tax¢   dex¢   lda ktabl,y¢   sta help¢s1 lda ktabl,x¢   cmp help¢   bcc s2¢   beq l0¢   sta ktabl+1,x¢   dex¢   bne s1¢s2 lda help¢   sta ktabl+1,x¢   iny¢   cpy fly¢   bne s0¢¢*-Pisz liczby DEC¢¢pisz equ *¢¢   ldx flx¢   lda fny,x  * pozycja do wypisu¢   tay¢   ldx fly¢   dex¢p1 lda #0¢   sta help¢   sed¢p2 lda help¢   adc #1¢   sta help¢   dec ktabl,x¢   bne p2¢   cld¢   jsr phex¢   dey¢   dex¢   bne p1¢¢   ldy #word¢   lda #$50¢   jsr inad¢¢   ldx byte¢   dex¢   bpl loop¢¢   ldy #word¢   lda #$28¢   jsr inad¢¢   ldx #0¢   ldy #2¢p5 lda nap7,x¢   sta (word),y¢   iny¢   inx¢   cpx #$18¢   bne p5¢¢sk jsr spkey¢   cmp #$1B¢   bne sk¢¢   jmp begin¢¢exit equ *¢¢   jsr clear¢   jmp ($0A)¢¢*-Sprawdz key¢¢spkey equ *¢¢   lda kbcods¢   cmp #$FF¢   beq spkey¢   ldy #$FF¢   sty kbcods¢   tay¢   lda (ktab),y¢   rts¢¢*-Dodaj Adr. Str.0¢¢inad equ *¢¢   clc¢   adc 0,y¢   sta 0,y¢   lda 1,y¢   adc #0¢   sta 1,y¢   rts¢¢*-Wyswietl liczby¢¢phex equ *¢¢   pha¢   jsr pxd¢   pla¢   lsr @¢   lsr @¢   lsr @¢   lsr @¢¢pxd and #$0F¢    ora #$10¢   cmp #$1A¢   bcc pxd1¢     adc #6¢pxd1 sta (word),y¢     dey¢   rts¢¢*--áחמחקá--¢¢init equ *¢¢   jsr clear¢¢   ldy ekrv¢   ldx ekrv+1¢   sty word¢   stx word+1¢¢   ldx #$1B    * Wypisz tytul¢    ldy #$49¢in1 lda nap0,x¢    sta (word),y¢   dey¢   dex¢   bpl in1¢¢   ldy #word¢   lda #$7F¢   jsr inad¢¢   ldy <nap1¢   ldx >nap1¢   sty addr¢   stx addr+1¢¢   ldx #6       * Wypisz info¢in2 ldy #0¢in3 lda (addr),y¢    sta (word),y¢   iny¢   cpy #$1A¢   bne in3¢   tya¢   ldy #addr¢   jsr inad¢   ldy #word¢   lda #$50¢   jsr inad¢   dex¢   bpl in2¢¢   rts¢¢   brk¢¢*-Napis¢¢nap0 dta d'⑤ìáקנקIJכחםIJקנפáצסנפקנתךáÄò
  2. '¢nap1 dta d'[1] - Duzy Lotek          '¢nap2 dta d'[2] - Express Lotek       '¢nap3 dta d'[3] - Zaklady specjalne   '¢nap4 dta d'[4] - Multi Lotek         '¢nap5 dta d'[5] - Szczesliwy numerek A'¢nap6 dta d'[6] - Szczesliwy numerek B'¢nap7 dta d' ףד≤π§ - Exit             '¢¢*-Tablice¢¢flx  dta b($00) * Ktore losowanie¢fly  dta b($00) * Rej. ILE¢fmax dta b($00) * Rej. MAX¢¢*-Ile liczb do losowania zwiekszone o 1.¢¢ile  dta b($07),b($06),b($06)¢     dta b($0B),b($05),b($02)¢¢*-Najwieksza dopuszczalna liczba.¢¢max  dta b($31),b($2A),b($2D)¢     dta b($50),b($2D),b($24)¢¢*-Ilosc  losowan zmiejszona o 1.¢¢ilos dta b($07),b($07),b($07)¢     dta b($02),b($00),b($00)¢¢*-pozycja do wypisu liczb¢¢fny  dta b($19),b($17),b($19)¢     dta b($20),b($19),b($14)¢¢*-Tablica dla losowanych liczb.¢¢ktabl dta d'                '¢¢   org $2E0¢   dta a(begin)¢¢*--------------¢     end¢¢